CrossClj

org.clojure/clojurescript cljs.closure 1.10.312

SourceDocs



RECENT
    VARS
    -closure-lib? IPersistentMap
    -closure-lib? JavaScriptFile
    -closure-lib? String
    -compile
    -compile File
    -compile PersistentList
    -compile PersistentVector
    -compile String
    -compile URL
    -find-sources
    -find-sources File
    -find-sources PersistentList
    -find-sources PersistentVector
    -find-sources String
    -find-sources URL
    -foreign? IPersistentMap
    -foreign? JavaScriptFile
    -foreign? String
    -paths
    -paths File
    -paths String
    -provides IPersistentMap
    -provides JavaScriptFile
    -provides String
    -relative-path IPersistentMap
    -relative-path JavaScriptFile
    -relative-path String
    -requires IPersistentMap
    -requires JavaScriptFile
    -requires String
    -source-map
    -source-map JavaScriptFile
    -source-url
    -source-url JavaScriptFile
    -source IPersistentMap
    -source JavaScriptFile
    -source String
    -url IPersistentMap
    -url JavaScriptFile
    -url String
    absolute-parent
    absolute-path?
    add-converted-source
    add-core-macros-if-cljs-js
    add-dep-string
    add-dependencies
    add-dependency-sources
    add-externs-sources
    add-goog-base
    add-header
    add-implicit-options
    add-js-sources
    add-preloads
    add-source-map-link
    add-wrapper
    alive?
    aot-cache-core
    build
    build-modules
    build-provides
    check-cache-analysis-format
    check-level
    check-node-target
    check-npm-deps
    check-output-dir
    check-output-to
    check-output-wrapper
    check-preloads
    check-source-map
    check-source-map-path
    check-unprovided
    cljs-dependencies
    cljs-dependents-for-macro-namespaces
    cljs-source-for-namespace
    Compilable
    compile
    compile-dir
    compile-file
    compile-form-seq
    compile-from-jar
    compile-loader
    compile-sources
    compile-task
    compiled-file
    compute-upstream-npm-deps
    constants-filename
    constants-javascript-file
    convert-js-modules
    deps-file
    emit-optimized-source-map
    ensure-cljs-base-module
    ensure-module-opts
    expand-libs
    find-cljs-dependencies
    find-jar-sources
    foreign-deps-str
    foreign-source?
    get-closure-sources
    get-compiled-cljs
    get-data-readers
    get-data-readers*
    get-js-root
    get-source-files
    get-upstream-deps
    get-upstream-deps*
    handle-js-modules
    in-same-dir?
    index-node-modules
    index-node-modules-dir
    Inputs
    ISourceMap
    jar-file-to-disk
    javascript-file
    javascript-name
    js-dependencies
    js-source-file
    js-transforms
    known-opts
    lang-key->lang-mode
    lib-rel-path
    load-data-reader-file
    load-data-readers!
    load-externs
    make-closure-compiler
    make-convert-js-module-options
    make-options
    make-preamble
    map->javascript-file
    mark-cljs-ns-for-recompile!
    maybe-install-node-deps!
    module-entries
    name-chars
    node-file-seq->libs-spec
    node-file-seq->libs-spec*
    node-inputs
    node-module-deps
    optimize
    optimize-modules
    output-deps-file
    output-directory
    output-main-file
    output-modules
    output-one-file
    output-unoptimized
    parallel-compile-sources
    parse-js-ns
    path-from-jarfile
    path-relative-to
    pipe
    preamble-from-paths
    preloads
    preprocess-js
    process-js-modules
    random-char
    random-string
    read-js
    rel-output-path
    report-failure
    same-or-subdirectory-of?
    set-options
    shim-process?
    source-for-namespace
    source-on-disk
    src-file->goog-require
    src-file->target-file
    string->charset
    target-file-for-cljs-ns
    to-absolute-path
    to-charset
    warning-types
    watch
    write-javascript
    write-js?

    ');\\n\" \"\\n\")))]\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" preload-str syms))))\n\n\"ç@_output-main-file\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@doutput-main-fileç@/fun/cljs.closure/output-main-file.html\"\n \"Output an entry point. In the non-modules case, opts is simply compiler\n options. When emitting a module entry point, opts must contain :module-name.\"\n [opts]\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :module-name))\n (get (:modules opts) (:module-name opts)))\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Module \" (:module-name opts) \" does not exist\"))\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [module (\"ç@agetç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_get\" (:modules opts) (:module-name opts))\n asset-path (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (:asset-path opts)\n (\"ç@autil/output-directoryç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_output-directory\" opts))\n closure-defines (\"ç@ajson/write-strç@/ns/org.clojure/data.json/0.2.6/clojure.data.json.html#_write-str\" (:closure-defines opts))]\n (\"ç@acaseç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_case\" (:target opts)\n :nodejs\n (\"ç@poutput-one-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_output-one-file\"\n (\"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\" opts\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" module\n {:output-to (:output-to module)}))\n (\"ç@padd-headerç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-header\" opts\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" module) (= :cljs-base (:module-name opts)))\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"var path = require(\\\"path\\\");\\n\"\n \"try {\\n\"\n \" require(\\\"source-map-support\\\").install();\\n\"\n \"} catch(err) {\\n\"\n \"}\\n\"\n \"require(path.join(path.resolve(\\\".\\\"),\\\"\" asset-path \"\\\",\\\"goog\\\",\\\"bootstrap\\\",\\\"nodejs.js\\\"));\\n\"\n \"require(path.join(path.resolve(\\\".\\\"),\\\"\" asset-path \"\\\",\\\"cljs_deps.js\\\"));\\n\"\n \"goog.global.CLOSURE_UNCOMPILED_DEFINES = \" closure-defines \";\\n\"\n (\"ç@aapplyç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_apply\" \"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@ppreloadsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_preloads\" (:preloads opts)))))\n (\"ç@aapplyç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_apply\" \"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\"\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [entry]\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"goog.require(\\\"\" (\"ç@acomp/mungeç@/ns/org.clojure/clojurescript/1.10.312/cljs.compiler.html#_munge\" entry) \"\\\");\\n\"))\n (\"ç@aif-letç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_if-let\" [entries (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" module (:entries module))]\n entries\n [(:main opts)])))\n \"goog.require(\\\"cljs.nodejscli\\\");\\n\")))\n (\"ç@poutput-one-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_output-one-file\"\n (\"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\" opts\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" module\n {:output-to (:output-to module)}))\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" module) (= :cljs-base (:module-name opts)))\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"var CLOSURE_UNCOMPILED_DEFINES = \" closure-defines \";\\n\"\n \"var CLOSURE_NO_DEPS = true;\\n\"\n \"if(typeof goog == \\\"undefined\\\") document.write('');\\n\"\n \"document.write('');\\n\"\n \"document.write('');\\n\"\n \"document.write('');\\n\"\n (\"ç@aapplyç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_apply\" \"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@ppreloadsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_preloads\" (:preloads opts) :browser))))\n (\"ç@aapplyç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_apply\" \"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\"\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [entry]\n (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" \"goog\" entry)\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"document.write('');\\n\")))\n (\"ç@aif-letç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_if-let\" [entries (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" module (:entries module))]\n entries\n (\"ç@awhen-letç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-let\" [main (:main opts)]\n [main])))))))))\n\n\"ç@_output-modules\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@doutput-modulesç@/fun/cljs.closure/output-modules.html\"\n \"Given compiler options, original IJavaScript sources and a sequence of\n module name and module description tuples output module sources to disk.\n Modules description must define :output-to and supply :source entry with\n the JavaScript source to write to disk.\"\n [opts js-sources modules]\n (\"ç@adoseqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_doseq\" [[name {:keys [output-to source foreign-deps] :as module-desc}] modules]\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" output-to))\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Module \" name \" does not define :output-to\"))\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" source))\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Module \" name \" did not supply :source\"))\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [fdeps-str (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" (\"ç@aempty?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_empty%3F\" foreign-deps)\n (\"ç@pforeign-deps-strç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_foreign-deps-str\" opts foreign-deps))\n sm-name (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (:source-map opts)\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" output-to \".map\"))\n out-file (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" output-to)]\n (\"ç@autil/mkdirsç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_mkdirs\" out-file)\n (\"ç@aspitç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_spit\" out-file\n (\"ç@aas->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_as-%3E\" source source\n (if (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" name :cljs-base)\n (\"ç@padd-headerç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-header\" opts source)\n source)\n (if fdeps-str\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" fdeps-str \"\\n\" source)\n source)\n (if sm-name\n (\"ç@padd-source-map-linkç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-source-map-link\"\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" opts\n :output-to output-to\n :source-map sm-name)\n source)\n source)))\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (:source-map opts)\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [sm-json-str (:source-map-json module-desc)\n sm-json (\"ç@ajson/read-strç@/ns/org.clojure/data.json/0.2.6/clojure.data.json.html#_read-str\" sm-json-str :key-fn \"ç@akeywordç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_keyword\")]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@atrue?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_true%3F\" (:closure-source-map opts))\n (\"ç@aspitç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_spit\" (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" (:source-map-name module-desc)) sm-json-str))\n (\"ç@pemit-optimized-source-mapç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_emit-optimized-source-map\" sm-json js-sources sm-name\n (\"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\" opts\n {:source-map sm-name\n :preamble-line-count\n (if (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" name :cljs-base)\n (\"ç@a+ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%2B\" (\"ç@a-ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-\" (\"ç@acountç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_count\" (\"çç@.splitç@docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html#split-java.lang.CharSequence-int-\" #\"\\r?\\n\" (\"ç@pmake-preambleç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_make-preamble\" opts) -1)) 1)\n (if (:output-wrapper opts) 1 0))\n 0)\n :foreign-deps-line-count\n (if fdeps-str\n (\"ç@a-ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-\" (\"ç@acountç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_count\" (\"çç@.splitç@docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html#split-java.lang.CharSequence-int-\" #\"\\r?\\n\" fdeps-str -1)) 1)\n 0)})))))))\n\n\"ç@_lib-rel-path\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dlib-rel-pathç@/fun/cljs.closure/lib-rel-path.html\" [{:keys [lib-path url provides] :as ijs}]\n (if (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" lib-path)\n (\"ç@autil/ns->relpathç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_ns-%3Erelpath\" (\"ç@afirstç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_first\" provides) \"js\")\n (if (.endsWith lib-path \".js\")\n (\"ç@autil/get-nameç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_get-name\" url)\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [path (\"ç@autil/pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_path\" url)\n lib-path (\"ç@autil/normalize-pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_normalize-path\" lib-path)]\n (\"ç@asubsç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_subs\" path (\"ç@a+ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%2B\" (\"ç@aincç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_inc\" (\"çç@.lastIndexOfç@docs.oracle.com/javase/8/docs/api/java/lang/String.html#lastIndexOf-int-int-\" path lib-path)) (\"çç@.lengthç@docs.oracle.com/javase/8/docs/api/java/lang/String.html#length--\" lib-path)))))))\n\n\"ç@_rel-output-path\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" ^String \"ç@drel-output-pathç@/fun/cljs.closure/rel-output-path.html\"\n \"Given a IJavaScript which points to a .js file either in memory, in a jar file,\n or is a foreign lib, return the path relative to the output directory.\"\n ([js]\n (\"ç@prel-output-pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_rel-output-path\" js\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"\n (:options @\"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"))))\n ([js opts]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [url (\"ç@adeps/-urlç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-url\" js opts)]\n (\"ç@acondç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond\"\n url\n (\"ç@acondç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond\"\n (\"ç@adeps/-closure-lib?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-closure-lib%3F\" js) (\"ç@plib-rel-pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_lib-rel-path\" js)\n (\"ç@adeps/-foreign?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-foreign%3F\" js) (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@adeps/-relative-pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-relative-path\" js opts)\n (\"ç@autil/relative-nameç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_relative-name\" url))\n :else (\"ç@ppath-from-jarfileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_path-from-jarfile\" url))\n\n (\"ç@astring?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_string%3F\" js)\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@autil/content-shaç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_content-sha\" js 7) \".js\")\n\n :else (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@prandom-stringç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_random-string\" 5) \".js\")))))\n\n\"ç@_get-source-files\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dget-source-filesç@/fun/cljs.closure/get-source-files.html\" [js-modules opts]\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [lib]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [file (\"ç@aif-letç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_if-let\" [file-min (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (#{:advanced :simple} (:optimizations opts))\n (:file-min lib))]\n file-min\n (:file lib))]\n (\"ç@pjs-source-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_js-source-file\" file (\"ç@adeps/-sourceç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-source\" lib))))\n js-modules))\n\n\"ç@_make-convert-js-module-options\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dmake-convert-js-module-optionsç@/fun/cljs.closure/make-convert-js-module-options.html\" [opts]\n (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" opts\n (\"ç@aselect-keysç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_select-keys\"\n [:closure-warnings :closure-extra-annotations :pretty-print\n :language-in :language-out :closure-module-roots :rewrite-polyfills])\n (\"ç@aassoc-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc-in\" [:closure-warnings :non-standard-jsdoc] :off)\n (\"ç@pset-optionsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_set-options\" (CompilerOptions.))))\n\n\"ç@_get-js-root\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dget-js-rootç@/fun/cljs.closure/get-js-root.html\" [closure-compiler]\n (.getSecondChild (.getRoot closure-compiler)))\n\n\"ç@_get-closure-sources\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dget-closure-sourcesç@/fun/cljs.closure/get-closure-sources.html\"\n \"Gets map of source file name -> Node, for files in Closure Compiler js root.\"\n [closure-compiler]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [source-nodes (.children (\"ç@pget-js-rootç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_get-js-root\" closure-compiler))]\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" {} (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@ajuxtç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_juxt\" #(.getSourceFileName ^Node %) \"ç@aidentityç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_identity\") source-nodes))))\n\n\"ç@_add-converted-source\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dadd-converted-sourceç@/fun/cljs.closure/add-converted-source.html\"\n [closure-compiler result-nodes opts {:keys [file-min file] :as ijs}]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [processed-file (\"ç@aif-letç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_if-let\" [min (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (#{:advanced :simple} (:optimizations opts))\n file-min)]\n min\n file)\n processed-file (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" processed-file \"\\\\\" \"/\")]\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" ijs :source\n (.toSource closure-compiler ^Node (\"ç@agetç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_get\" result-nodes processed-file)))))\n\n\"ç@_convert-js-modules\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dconvert-js-modulesç@/fun/cljs.closure/convert-js-modules.html\"\n \"Takes a list JavaScript modules as an IJavaScript and rewrites them into a Google\n Closure-compatible form. Returns list IJavaScript with the converted module\n code set as source.\"\n [js-modules opts]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [^\"çç@Listç@docs.oracle.com/javase/8/docs/api/java/util/List.html\" externs '()\n ^\"çç@Listç@docs.oracle.com/javase/8/docs/api/java/util/List.html\" source-files (\"ç@pget-source-filesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_get-source-files\" js-modules opts)\n ^CompilerOptions options (\"ç@adotoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_doto\" (\"ç@pmake-convert-js-module-optionsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_make-convert-js-module-options\" opts)\n (.setProcessCommonJSModules true)\n (.setTransformAMDToCJSModules\n (\"ç@abooleanç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_boolean\" (\"ç@asomeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_some\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [{:keys [module-type]}]\n (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" module-type :amd)) js-modules)))\n (.setLanguageIn (\"ç@plang-key->lang-modeç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_lang-key-%3Elang-mode\" :ecmascript6))\n (.setLanguageOut (\"ç@plang-key->lang-modeç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_lang-key-%3Elang-mode\" (:language-out opts :ecmascript3))))\n _ (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" (:target opts) :nodejs)\n (.setPackageJsonEntryNames options ^\"çç@Listç@docs.oracle.com/javase/8/docs/api/java/util/List.html\" '(\"module\", \"main\")))\n closure-compiler (\"ç@adotoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_doto\" (\"ç@pmake-closure-compilerç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_make-closure-compiler\")\n (.init externs source-files options))\n _ (.parse closure-compiler)\n _ (\"ç@preport-failureç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_report-failure\" (.getResult closure-compiler))\n root (.getRoot closure-compiler)]\n (.process (Es6RewriteModules. closure-compiler)\n (.getFirstChild root) (.getSecondChild root))\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@apartialç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_partial\" \"ç@padd-converted-sourceç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-converted-source\"\n closure-compiler (\"ç@pget-closure-sourcesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_get-closure-sources\" closure-compiler) opts)\n js-modules)))\n\n\"ç@_js-transforms\"(\"ç@adefmultiç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defmulti\" \"ç@djs-transformsç@/fun/cljs.closure/js-transforms.html\"\n \"Takes an IJavaScript with the source code set as source, transforms the\n source code and returns an IJavascript with the new code set as source.\"\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [ijs opts]\n (:preprocess ijs)))\n\n(\"ç@adefmethodç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defmethod\" js-transforms :default [ijs opts]\n (\"ç@aana/warningç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_warning\" :unsupported-preprocess-value @\"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\" ijs)\n ijs)\n\n\"ç@_write-javascript\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dwrite-javascriptç@/fun/cljs.closure/write-javascript.html\"\n \"Write or copy a JavaScript file to output directory. Only write if the file\n does not already exist. Return IJavaScript for the file on disk at the new\n location.\"\n [opts js]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [out-dir (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" (\"ç@autil/output-directoryç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_output-directory\" opts))\n out-name (\"ç@prel-output-pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_rel-output-path\" js opts)\n out-file (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" out-dir out-name)\n res (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (:url js) (:source-file js))\n js-module? (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" res out-dir\n (.startsWith (\"ç@autil/pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_path\" res) (\"ç@autil/pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_path\" out-dir))) ;; We already Closure processed it and wrote it out\n ijs (\"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\"\n {:requires (\"ç@adeps/-requiresç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-requires\" js)\n :provides (\"ç@adeps/-providesç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-provides\" js)\n :group (:group js)}\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" js-module?)\n {:url (\"ç@adeps/to-urlç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_to-url\" out-file)\n :out-file (\"çç@.toStringç@docs.oracle.com/javase/8/docs/api/java/io/File.html#toString--\" out-file)}))]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" js-module?)\n (or (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"çç@.existsç@docs.oracle.com/javase/8/docs/api/java/io/File.html#exists--\" out-file))\n (and res (\"ç@autil/changed?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_changed%3F\" out-file res))))\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" res (or \"ç@aana/*verbose*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_*verbose*\" (:verbose opts)))\n (\"ç@autil/debug-prnç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_debug-prn\" \"Copying\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" res) \"to\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" out-file)))\n (\"ç@autil/mkdirsç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_mkdirs\" out-file)\n (\"ç@aspitç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_spit\" out-file (\"ç@adeps/-sourceç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-source\" js))\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" res\n (\"çç@.setLastModifiedç@docs.oracle.com/javase/8/docs/api/java/io/File.html#setLastModified-long-\" ^\"çç@Fileç@docs.oracle.com/javase/8/docs/api/java/io/File.html\" out-file (\"ç@autil/last-modifiedç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_last-modified\" res))))\n (if (\"ç@amap?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map%3F\" js)\n (\"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\" js ijs)\n ijs)))\n\n\"ç@_write-js?\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dwrite-js?ç@/fun/cljs.closure/write-js%3F.html\"\n \"Returns true if IJavaScript instance needs to be written/copied to output\n directory. True when in memory, in a JAR, or if foreign library.\"\n [js]\n (try\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [url ^\"çç@URLç@docs.oracle.com/javase/8/docs/api/java/net/URL.html\" (\"ç@adeps/-urlç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-url\" js)]\n (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" url)\n (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" (\"çç@.getProtocolç@docs.oracle.com/javase/8/docs/api/java/net/URL.html#getProtocol--\" url) \"jar\")\n (\"ç@adeps/-closure-lib?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-closure-lib%3F\" js)\n (\"ç@adeps/-foreign?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-foreign%3F\" js)))\n (catch \"çç@Throwableç@docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html\" t\n (throw (Exception. (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Could not write JavaScript \" (\"ç@apr-strç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_pr-str\" js)))))))\n\n\"ç@_source-on-disk\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dsource-on-diskç@/fun/cljs.closure/source-on-disk.html\"\n \"Ensure that the given IJavaScript exists on disk in the output directory.\n Return updated IJavaScript with the new location if necessary.\"\n [opts js]\n (if (\"ç@pwrite-js?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_write-js%3F\" js)\n (\"ç@pwrite-javascriptç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_write-javascript\" opts js)\n ;; always copy original ClojureScript sources to the output directory\n ;; when source maps enabled\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [source-url (:source-url js)\n out-file (\"ç@awhen-letç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-let\" [ns (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (:source-map opts)\n source-url\n (\"ç@afirstç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_first\" (:provides js)))]\n (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" (\"ç@autil/output-directoryç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_output-directory\" opts))\n (\"ç@autil/ns->relpathç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_ns-%3Erelpath\" ns (\"ç@autil/extç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_ext\" source-url))))]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" out-file source-url\n (or (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"çç@.existsç@docs.oracle.com/javase/8/docs/api/java/io/File.html#exists--\" ^\"çç@Fileç@docs.oracle.com/javase/8/docs/api/java/io/File.html\" out-file))\n (\"ç@autil/changed?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_changed%3F\" (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" source-url) out-file)))\n (do\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" \"ç@aana/*verbose*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_*verbose*\" (:verbose opts))\n (\"ç@autil/debug-prnç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_debug-prn\" \"Copying\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" source-url) \"to\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" out-file)))\n (\"ç@autil/mkdirsç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_mkdirs\" out-file)\n (\"ç@aspitç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_spit\" out-file (\"ç@aslurpç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_slurp\" source-url))\n (\"çç@.setLastModifiedç@docs.oracle.com/javase/8/docs/api/java/io/File.html#setLastModified-long-\" ^\"çç@Fileç@docs.oracle.com/javase/8/docs/api/java/io/File.html\" out-file (\"ç@autil/last-modifiedç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_last-modified\" source-url))))\n js)))\n\n(\"ç@acommentç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comment\"\n (write-javascript {} \"goog.provide('demo');\\nalert('hello');\\n\")\n ;; write something from a jar file to disk\n (source-on-disk {}\n {:url (io/resource \"goog/base.js\")\n :source (with-open [reader (io/reader (io/resource \"goog/base.js\"))]\n (slurp reader))})\n ;; doesn't write a file that is already on disk\n (source-on-disk {} {:url (io/resource \"cljs/core.cljs\")})\n )\n\n\"ç@_output-unoptimized\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@doutput-unoptimizedç@/fun/cljs.closure/output-unoptimized.html\"\n \"Ensure that all JavaScript source files are on disk (not in jars),\n write the goog deps file including only the libraries that are being\n used and write the deps file for the current project.\n\n The deps file for the current project will include third-party\n libraries.\"\n [{:keys [modules] :as opts} & sources]\n ;; this source-on-disk call is currently necessary for REPLs - David\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [disk-sources (\"ç@adoallç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_doall\"\n (\"ç@aremoveç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_remove\" #(\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" (:group %) :goog)\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" #(\"ç@psource-on-diskç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_source-on-disk\" opts %) sources)))\n goog-deps (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" (\"ç@autil/output-directoryç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_output-directory\" opts) \"goog\" \"deps.js\")\n main (:main opts)\n output-deps #(\"ç@poutput-deps-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_output-deps-file\"\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" opts :output-to\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@autil/output-directoryç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_output-directory\" opts)\n File/separator \"cljs_deps.js\"))\n disk-sources)]\n (\"ç@autil/mkdirsç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_mkdirs\" goog-deps)\n (\"ç@aspitç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_spit\" goog-deps (\"ç@aslurpç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_slurp\" (\"ç@aio/resourceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_resource\" \"goog/deps.js\")))\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (:debug-inputs opts)\n (\"ç@autil/debug-prnç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_debug-prn\" \"DEBUG: all compiler inputs\")\n (\"ç@autil/debug-prnç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_debug-prn\" (\"ç@apr-strç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_pr-str\" sources)))\n (\"ç@acondç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond\"\n modules\n (do\n (output-deps)\n (\"ç@adoallç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_doall\"\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\"\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [[module-name _]]\n (\"ç@poutput-main-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_output-main-file\"\n (\"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\" opts\n {:module-name module-name})))\n modules)))\n\n main\n (do\n (output-deps)\n (\"ç@poutput-main-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_output-main-file\" opts))\n\n :else (\"ç@poutput-deps-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_output-deps-file\" opts disk-sources))))\n\n(\"ç@acommentç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comment\"\n\n ;; output unoptimized alone\n (output-unoptimized {} \"goog.provide('test');\\ngoog.require('cljs.core');\\nalert('hello');\\n\")\n ;; output unoptimized with all dependencies\n (apply output-unoptimized {}\n (add-dependencies {}\n \"goog.provide('test');\\ngoog.require('cljs.core');\\nalert('hello');\\n\"))\n ;; output unoptimized with external library\n (apply output-unoptimized {}\n (add-dependencies {:libs [\"closure/library/third_party/closure\"]}\n \"goog.provide('test');\\ngoog.require('cljs.core');\\ngoog.require('goog.dom.query');\\n\"))\n ;; output unoptimized and write deps file to 'out/test.js'\n (output-unoptimized {:output-to \"out/test.js\"}\n \"goog.provide('test');\\ngoog.require('cljs.core');\\nalert('hello');\\n\")\n )\n\n\n\"ç@_get-upstream-deps*\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dget-upstream-deps*ç@/fun/cljs.closure/get-upstream-deps*.html\"\n \"returns a merged map containing all upstream dependencies defined\n by libraries on the classpath.\"\n ([]\n (\"ç@pget-upstream-deps*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_get-upstream-deps*\" (. (\"çç@Thread/currentThreadç@docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#currentThread--\") (getContextClassLoader))))\n ([classloader]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [upstream-deps (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" #(\"ç@aread-stringç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_read-string\" (\"ç@aslurpç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_slurp\" %))\n (\"ç@aenumeration-seqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_enumeration-seq\" (. classloader (getResources \"deps.cljs\"))))]\n (\"ç@aapplyç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_apply\" \"ç@amerge-withç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge-with\"\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [a b]\n (if (\"ç@amap?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map%3F\" a)\n (\"ç@amerge-withç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge-with\" #(\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" #{%1} #{%2}) a b)\n (\"ç@aconcatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_concat\" a b)))\n upstream-deps))))\n\n\"ç@_get-upstream-deps\"(def \"ç@dget-upstream-depsç@/fun/cljs.closure/get-upstream-deps.html\" (\"ç@amemoizeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_memoize\" \"ç@pget-upstream-deps*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_get-upstream-deps*\"))\n\n\"ç@_add-header\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dadd-headerç@/fun/cljs.closure/add-header.html\" [opts js]\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@pmake-preambleç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_make-preamble\" opts) js))\n\n\"ç@_foreign-deps-str\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dforeign-deps-strç@/fun/cljs.closure/foreign-deps-str.html\" [opts sources]\n (\"ç@aletfnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_letfn\" [(to-js-str [ijs]\n (\"ç@aif-letç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_if-let\" [url (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (#{:advanced :simple} (:optimizations opts))\n (:url-min ijs))\n (:url ijs))]\n (\"ç@aslurpç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_slurp\" url)\n (throw (IllegalArgumentException.\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Foreign lib \" ijs \" does not exist\")))))]\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@astring/joinç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_join\" \"\\n\" (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" to-js-str sources)) \"\\n\")))\n\n\"ç@_add-wrapper\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dadd-wrapperç@/fun/cljs.closure/add-wrapper.html\" [{:keys [output-wrapper] :as opts} js]\n (if output-wrapper\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \";(function(){\\n\" js \"\\n})();\\n\")\n js))\n\n\"ç@_add-source-map-link\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dadd-source-map-linkç@/fun/cljs.closure/add-source-map-link.html\" [{:keys [source-map output-to] :as opts} js]\n (if source-map\n (if (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" output-to :print)\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" js \"\\n//# sourceMappingURL=\" source-map \"\\n\\n\")\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" js \"\\n//# sourceMappingURL=\" (\"ç@ppath-relative-toç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_path-relative-to\" (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" output-to) {:url source-map}) \"\\n\\n\"))\n js))\n\n\"ç@_absolute-path?\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dabsolute-path?ç@/fun/cljs.closure/absolute-path%3F.html\" [path]\n (\"çç@.isAbsoluteç@docs.oracle.com/javase/8/docs/api/java/io/File.html#isAbsolute--\" (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" path)))\n\n\"ç@_absolute-parent\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dabsolute-parentç@/fun/cljs.closure/absolute-parent.html\" [path]\n (\"çç@.getParentç@docs.oracle.com/javase/8/docs/api/java/io/File.html#getParent--\" (\"çç@.getAbsoluteFileç@docs.oracle.com/javase/8/docs/api/java/io/File.html#getAbsoluteFile--\" (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" path))))\n\n\"ç@_in-same-dir?\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@din-same-dir?ç@/fun/cljs.closure/in-same-dir%3F.html\" [path-1 path-2]\n \"Checks that path-1 and path-2 are siblings in the same logical directory.\"\n (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" (\"ç@pabsolute-parentç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_absolute-parent\" path-1)\n (\"ç@pabsolute-parentç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_absolute-parent\" path-2)))\n\n\"ç@_same-or-subdirectory-of?\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dsame-or-subdirectory-of?ç@/fun/cljs.closure/same-or-subdirectory-of%3F.html\" [dir path]\n \"Checks that path names a file or directory that is the dir or a subdirectory there of.\"\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [dir-path (\"çç@.getAbsolutePathç@docs.oracle.com/javase/8/docs/api/java/io/File.html#getAbsolutePath--\" (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" dir))\n path-path (\"çç@.getAbsolutePathç@docs.oracle.com/javase/8/docs/api/java/io/File.html#getAbsolutePath--\" (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" path))]\n (\"çç@.startsWithç@docs.oracle.com/javase/8/docs/api/java/lang/String.html#startsWith-java.lang.String-\" path-path dir-path)))\n\n\"ç@_check-output-to\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dcheck-output-toç@/fun/cljs.closure/check-output-to.html\" [{:keys [output-to] :as opts}]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :output-to)\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@astring?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_string%3F\" output-to)\n (= :print output-to))\n (\"ç@aformatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_format\" \":output-to %s must specify a file or be :print\"\n (\"ç@apr-strç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_pr-str\" output-to))))\n true)\n\n\"ç@_check-output-dir\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dcheck-output-dirç@/fun/cljs.closure/check-output-dir.html\" [{:keys [output-dir] :as opts}]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :output-dir)\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@astring?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_string%3F\" output-dir)\n (\"ç@aformatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_format\" \":output-dir %s must specify a directory\"\n (\"ç@apr-strç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_pr-str\" output-dir))))\n true)\n\n\"ç@_check-source-map\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dcheck-source-mapç@/fun/cljs.closure/check-source-map.html\" [{:keys [output-to source-map output-dir optimizations] :as opts}]\n \"When :source-map is specified in opts, \"\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :source-map)\n (:source-map opts)\n (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" optimizations :none)))\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :output-to)\n (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :modules))\n (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :output-dir))\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \":source-map cannot be specified without also specifying :output-dir \"\n \"and either :output-to or :modules if optimization setting applied\"))\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" (:output-to opts)) (:modules opts) (\"ç@astring?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_string%3F\" source-map))\n (\"ç@aformatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_format\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \":source-map %s must specify a file in the same directory \"\n \"as :output-to %s if optimization setting applied\")\n (\"ç@apr-strç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_pr-str\" source-map)\n (\"ç@apr-strç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_pr-str\" output-to)))\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" (:output-to opts)) (:modules opts) (\"ç@pin-same-dir?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_in-same-dir%3F\" source-map output-to))\n (\"ç@aformatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_format\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \":source-map %s must specify a file in the same directory as \"\n \":output-to %s if optimization setting applied\")\n (\"ç@apr-strç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_pr-str\" source-map)\n (\"ç@apr-strç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_pr-str\" output-to)))\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" (:output-to opts)) (:modules opts) (\"ç@psame-or-subdirectory-of?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_same-or-subdirectory-of%3F\" (\"ç@pabsolute-parentç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_absolute-parent\" output-to) output-dir))\n (\"ç@aformatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_format\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \":output-dir %s must specify a directory in :output-to's \"\n \"parent %s if optimization setting applied\")\n (\"ç@apr-strç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_pr-str\" output-dir)\n (\"ç@apr-strç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_pr-str\" (\"ç@pabsolute-parentç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_absolute-parent\" output-to)))))\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :source-map)\n (= optimizations :none))\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@autil/boolean?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_boolean%3F\" source-map)\n (\"ç@aformatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_format\" \":source-map must be true or false when compiling with :optimizations :none but it is: %s\"\n (\"ç@apr-strç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_pr-str\" source-map))))\n true)\n\n\"ç@_check-source-map-path\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dcheck-source-map-pathç@/fun/cljs.closure/check-source-map-path.html\" [{:keys [source-map-path] :as opts}]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :source-map-path)\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@astring?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_string%3F\" source-map-path)\n (\"ç@aformatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_format\" \":source-map-path %s must be a directory\"\n source-map-path))\n (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" (:optimizations opts) :none)\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :output-to)\n (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :source-map))\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \":source-map-path cannot be specified without also specifying \"\n \":output-to and :source-map if optimization setting applied\"))))\n true)\n\n\"ç@_check-output-wrapper\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dcheck-output-wrapperç@/fun/cljs.closure/check-output-wrapper.html\" [{:keys [output-wrapper optimizations]}]\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" output-wrapper (= :whitespace optimizations)))\n \":output-wrapper cannot be combined with :optimizations :whitespace\"))\n\n\"ç@_check-node-target\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dcheck-node-targetç@/fun/cljs.closure/check-node-target.html\" [{:keys [target optimizations] :as opts}]\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" target :nodejs) (= optimizations :whitespace)))\n (\"ç@aformatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_format\" \":nodejs target not compatible with :whitespace optimizations\"))\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" target :nodejs) (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" optimizations :none) (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :main))))\n (\"ç@aformatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_format\" \":nodejs target with :none optimizations requires a :main entry\")))\n\n\"ç@_check-preloads\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dcheck-preloadsç@/fun/cljs.closure/check-preloads.html\" [{:keys [preloads optimizations] :as opts}]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@asome?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_some%3F\" preloads)\n (\"ç@anot=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not%3D\" preloads '[process.env])\n (\"ç@anot=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not%3D\" optimizations :none))\n (\"ç@abindingç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_binding\" [*out* \"ç@a*err*ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_*err*\"]\n (\"ç@aprintlnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_println\" \"WARNING: :preloads should only be specified with :none optimizations\"))))\n\n\"ç@_check-cache-analysis-format\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dcheck-cache-analysis-formatç@/fun/cljs.closure/check-cache-analysis-format.html\" [{:keys [cache-analysis cache-analysis-format] :as opts}]\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" cache-analysis\n ((\"ç@acomplementç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_complement\" #{:edn :transit}) cache-analysis-format)\n (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" cache-analysis-format))))\n (\"ç@aformatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_format\" \":cache-analysis format must be :edn or :transit but it is: %s\"\n (\"ç@apr-strç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_pr-str\" cache-analysis-format))))\n\n\"ç@_check-npm-deps\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dcheck-npm-depsç@/fun/cljs.closure/check-npm-deps.html\" [{:keys [npm-deps]}]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [{ups-npm-deps :npm-deps} (\"ç@pget-upstream-depsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_get-upstream-deps\")\n conflicts (\"ç@afilterç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_filter\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [[dep v]]\n (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@acoll?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_coll%3F\" v) (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" npm-deps dep))))\n ups-npm-deps)]\n (\"ç@abindingç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_binding\" [*out* \"ç@a*err*ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_*err*\"]\n (\"ç@adoseqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_doseq\" [[dep versions] conflicts]\n (\"ç@aprintlnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_println\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"WARNING: NPM dependency \" (\"ç@anameç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_name\" dep)\n \" conflicts between versions \"\n (\"ç@autil/conjunction-strç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_conjunction-str\" versions)\n \". Specify a version in :npm-deps or the latest will be installed.\"))))))\n\n\"ç@_foreign-source?\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dforeign-source?ç@/fun/cljs.closure/foreign-source%3F.html\" [js]\n (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@asatisfies?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_satisfies%3F\" \"ç@adeps/IJavaScriptç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_IJavaScript\" js)\n (\"ç@adeps/-foreign?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-foreign%3F\" js)))\n\n\"ç@_expand-libs\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dexpand-libsç@/fun/cljs.closure/expand-libs.html\"\n \"EXPERIMENTAL. Given a set of libs expand any entries which only name\n directories into a sequence of lib entries for all JS files recursively\n found in that directory. All other options will be shared with the original\n entry. The computed :provides assumes the specified directory is on the\n classpath.\"\n [libs]\n (\"ç@aletfnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_letfn\" [(prep-path [p root]\n (\"ç@asubsç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_subs\" (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" (\"ç@asubsç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_subs\" p 0 (\"ç@a-ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-\" (\"ç@acountç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_count\" p) 3)) root \"\") 1))\n (path->provides [p]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [p' (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" p File/separator \".\")]\n (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" [p']\n (\"ç@astring/includes?ç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_includes%3F\" p' \"_\")\n (\"ç@aconjç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_conj\" (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" p' \"_\" \"-\")))))\n (expand-lib* [{:keys [file] :as lib}]\n (\"ç@aif-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_if-not\" file\n [lib] ;; foreign-lib override case - David\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [root (\"çç@.getAbsolutePathç@docs.oracle.com/javase/8/docs/api/java/io/File.html#getAbsolutePath--\" (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" file))\n dir (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" file)]\n (if (\"çç@.isDirectoryç@docs.oracle.com/javase/8/docs/api/java/io/File.html#isDirectory--\" dir)\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" []\n (\"ç@acompç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comp\"\n (\"ç@afilterç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_filter\" #(\"çç@.endsWithç@docs.oracle.com/javase/8/docs/api/java/lang/String.html#endsWith-java.lang.String-\" (\"çç@.getNameç@docs.oracle.com/javase/8/docs/api/java/io/File.html#getName--\" ^\"çç@Fileç@docs.oracle.com/javase/8/docs/api/java/io/File.html\" %) \".js\"))\n (\"ç@afilterç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_filter\" #(\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"çç@.isHiddenç@docs.oracle.com/javase/8/docs/api/java/io/File.html#isHidden--\" ^\"çç@Fileç@docs.oracle.com/javase/8/docs/api/java/io/File.html\" %)))\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\"\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [^\"çç@Fileç@docs.oracle.com/javase/8/docs/api/java/io/File.html\" f]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [p (\"çç@.getPathç@docs.oracle.com/javase/8/docs/api/java/io/File.html#getPath--\" f)\n ap (\"çç@.getAbsolutePathç@docs.oracle.com/javase/8/docs/api/java/io/File.html#getAbsolutePath--\" f)]\n (\"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\" lib\n {:file p :provides (path->provides (prep-path ap root))})))))\n (\"ç@afile-seqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_file-seq\" dir))\n [lib]))))]\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" [] (\"ç@amapcatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_mapcat\" expand-lib* libs))))\n\n(\"ç@adeclareç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_declare\" \"ç@dindex-node-modulesç@/fun/cljs.closure/index-node-modules.html\")\n\n\"ç@_compute-upstream-npm-deps\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dcompute-upstream-npm-depsç@/fun/cljs.closure/compute-upstream-npm-deps.html\"\n ([]\n (\"ç@pcompute-upstream-npm-depsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_compute-upstream-npm-deps\"\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"\n (:options @\"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"))))\n ([{:keys [npm-deps]}]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [{ups-npm-deps :npm-deps} (\"ç@pget-upstream-depsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_get-upstream-deps\")]\n (\"ç@areduceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_reduce\"\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [m [dep v]]\n (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" m\n (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" npm-deps dep))\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" dep (if (\"ç@acoll?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_coll%3F\" v)\n (\"ç@alastç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_last\" (\"ç@asortç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_sort\" v))\n v))))\n {} ups-npm-deps))))\n\n\"ç@_ensure-module-opts\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@densure-module-optsç@/fun/cljs.closure/ensure-module-opts.html\" [opts]\n (\"ç@aupdateç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update\" opts :modules\n #(\"ç@pensure-cljs-base-moduleç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_ensure-cljs-base-module\" % opts)))\n\n\"ç@_shim-process?\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dshim-process?ç@/fun/cljs.closure/shim-process%3F.html\"\n [{:keys [target process-shim] :as opts}]\n (if (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" :nodejs target)\n (\"ç@atrue?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_true%3F\" process-shim)\n (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@afalse?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_false%3F\" process-shim))))\n\n\"ç@_add-implicit-options\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dadd-implicit-optionsç@/fun/cljs.closure/add-implicit-options.html\"\n [{:keys [optimizations output-dir]\n :or {optimizations :none\n output-dir \"out\"}\n :as opts}]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [opts (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" opts\n (\"ç@pshim-process?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_shim-process%3F\" opts)\n (-> (\"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:preloads] (\"ç@afnilç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fnil\" \"ç@aconjç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_conj\" []) 'process.env)\n (cond->\n (\"ç@anot=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not%3D\" :none optimizations)\n (\"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:closure-defines 'process.env/NODE_ENV] (\"ç@afnilç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fnil\" \"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"production\"))))\n\n (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (:closure-defines opts) (\"ç@pshim-process?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_shim-process%3F\" opts))\n (\"ç@aupdateç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update\" :closure-defines\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [defines]\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" {}\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [[k v]]\n [(if (\"ç@asymbol?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_symbol%3F\" k) (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@acomp/mungeç@/ns/org.clojure/clojurescript/1.10.312/cljs.compiler.html#_munge\" k)) k) v])\n defines))))\n (:browser-repl opts)\n (\"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:preloads] (\"ç@afnilç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fnil\" \"ç@aconjç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_conj\" []) 'clojure.browser.repl.preload))\n {:keys [libs foreign-libs externs]} (\"ç@pget-upstream-depsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_get-upstream-deps\")\n emit-constants (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" optimizations :advanced)\n (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@afalse?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_false%3F\" (:optimize-constants opts))))\n (:optimize-constants opts))]\n (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\"\n (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" opts\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\"\n :optimizations optimizations\n :output-dir output-dir\n :ups-libs libs\n :ups-foreign-libs (\"ç@pexpand-libsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_expand-libs\" foreign-libs)\n :ups-externs externs\n :emit-constants emit-constants\n :cache-analysis-format (:cache-analysis-format opts :transit))\n (\"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:preamble] #(\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" % []) [\"cljs/imul.js\"])))\n\n (:target opts)\n (\"ç@aassoc-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc-in\" [:closure-defines (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@acomp/mungeç@/ns/org.clojure/clojurescript/1.10.312/cljs.compiler.html#_munge\" 'cljs.core/*target*))]\n (\"ç@anameç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_name\" (:target opts)))\n\n (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" optimizations :none)\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\"\n :cache-analysis (:cache-analysis opts true)\n :source-map (:source-map opts true))\n\n (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" optimizations :advanced)\n (cond->\n (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@afalse?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_false%3F\" (:static-fns opts))) (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" :static-fns true)\n (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@afalse?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_false%3F\" (:optimize-constants opts))) (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" :optimize-constants true))\n\n (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" (\"ç@afindç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_find\" (:closure-warnings opts) :check-types))\n (\"ç@aassoc-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc-in\" [:closure-warnings :check-types] :off)\n\n (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" (\"ç@afindç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_find\" (:closure-warnings opts) :check-variables))\n (\"ç@aassoc-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc-in\" [:closure-warnings :check-variables] :off)\n\n (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" (:closure-module-roots opts))\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" :closure-module-roots [])\n\n (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" opts :modules)\n (\"ç@pensure-module-optsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_ensure-module-opts\"))))\n\n\"ç@_alive?\"(\"ç@adefn-ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn-\" \"ç@dalive?ç@/fun/cljs.closure/alive%3F.html\" [proc]\n (try (.exitValue proc) false (catch \"çç@IllegalThreadStateExceptionç@docs.oracle.com/javase/8/docs/api/java/lang/IllegalThreadStateException.html\" _ true)))\n\n\"ç@_pipe\"(\"ç@adefn-ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn-\" \"ç@dpipeç@/fun/cljs.closure/pipe.html\" [^\"çç@Processç@docs.oracle.com/javase/8/docs/api/java/lang/Process.html\" proc in ^\"çç@Writerç@docs.oracle.com/javase/8/docs/api/java/io/Writer.html\" out]\n ;; we really do want system-default encoding here\n (\"ç@awith-openç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_with-open\" [^\"çç@java.io.Readerç@docs.oracle.com/javase/8/docs/api/java/io/Reader.html\" in (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" in InputStreamReader. BufferedReader.)]\n (\"ç@aloopç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_loop\" [buf (\"ç@achar-arrayç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_char-array\" 1024)]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@palive?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_alive%3F\" proc)\n (try\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [len (\"çç@.readç@docs.oracle.com/javase/8/docs/api/java/io/Reader.html#read-char:A-\" in buf)]\n (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" (\"ç@aneg?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_neg%3F\" len)\n (\"çç@.writeç@docs.oracle.com/javase/8/docs/api/java/io/Writer.html#write-char:A-\" out buf 0 len)\n (\"çç@.flushç@docs.oracle.com/javase/8/docs/api/java/io/Writer.html#flush--\" out)))\n (catch \"çç@IOExceptionç@docs.oracle.com/javase/8/docs/api/java/io/IOException.html\" e\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@palive?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_alive%3F\" proc) (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"çç@.containsç@docs.oracle.com/javase/8/docs/api/java/lang/String.html#contains-java.lang.CharSequence-\" (\"çç@.getMessageç@docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html#getMessage--\" e) \"Stream closed\")))\n (\"çç@.printStackTraceç@docs.oracle.com/javase/8/docs/api/java/io/IOException.html#ng.Throwable.printStackTrace--\" e \"ç@a*err*ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_*err*\"))))\n (recur buf)))))\n\n\"ç@_maybe-install-node-deps!\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dmaybe-install-node-deps!ç@/fun/cljs.closure/maybe-install-node-deps%21.html\"\n [{:keys [npm-deps verbose] :as opts}]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [npm-deps (\"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\" npm-deps (\"ç@pcompute-upstream-npm-depsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_compute-upstream-npm-deps\" opts))]\n (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" (\"ç@aempty?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_empty%3F\" npm-deps)\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [pkg-json (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" \"package.json\")]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" \"ç@aana/*verbose*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_*verbose*\" verbose)\n (\"ç@autil/debug-prnç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_debug-prn\" \"Installing Node.js dependencies\"))\n (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" (\"çç@.existsç@docs.oracle.com/javase/8/docs/api/java/io/File.html#exists--\" pkg-json)\n (\"ç@aspitç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_spit\" pkg-json \"{}\"))\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [proc (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" (ProcessBuilder.\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" (\"ç@acond->>ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E%3E\" [\"npm\" \"install\" \"@cljs-oss/module-deps\"]\n \"ç@autil/windows?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_windows%3F\" (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" [\"cmd\" \"/c\"]))\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [[dep version]] (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@anameç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_name\" dep) \"@\" version)))\n npm-deps))\n .start)\n is (\"çç@.getInputStreamç@docs.oracle.com/javase/8/docs/api/java/lang/Process.html#getInputStream--\" proc)\n iw (StringWriter. (\"ç@a*ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_*\" 16 1024 1024))\n es (\"çç@.getErrorStreamç@docs.oracle.com/javase/8/docs/api/java/lang/Process.html#getErrorStream--\" proc)\n ew (StringWriter. (\"ç@a*ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_*\" 1024 1024))\n _ (do (\"çç@.startç@docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#start--\"\n (Thread.\n (\"ç@abound-fnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_bound-fn\" [] (\"ç@ppipeç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_pipe\" proc is iw))))\n (\"çç@.startç@docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#start--\"\n (Thread.\n (\"ç@abound-fnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_bound-fn\" [] (\"ç@ppipeç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_pipe\" proc es ew)))))\n err (\"çç@.waitForç@docs.oracle.com/javase/8/docs/api/java/lang/Process.html#waitFor-long-java.util.concurrent.TimeUnit-\" proc)]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@azero?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_zero%3F\" err)) (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"çç@.isAliveç@docs.oracle.com/javase/8/docs/api/java/lang/Process.html#isAlive--\" proc)))\n (\"ç@aprintlnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_println\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" ew)))))\n true)))\n\n\"ç@_node-module-deps\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dnode-module-depsç@/fun/cljs.closure/node-module-deps.html\"\n \"EXPERIMENTAL: return the foreign libs entries as computed by running\n the module-deps package on the supplied JavaScript entry point. Assumes\n that the `@cljs-oss/module-deps` NPM package is either locally or globally\n installed.\"\n ([entry]\n (\"ç@pnode-module-depsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_node-module-deps\" entry\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"\n (:options @\"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"))))\n ([{:keys [file]} {:keys [target] :as opts}]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [code (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" (\"ç@aslurpç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_slurp\" (\"ç@aio/resourceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_resource\" \"cljs/module_deps.js\"))\n (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" \"JS_FILE\" (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" file \"\\\\\" \"\\\\\\\\\"))\n (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" \"CLJS_TARGET\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"\" (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" target (\"ç@anameç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_name\" target)))))\n proc (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" (ProcessBuilder. [\"node\" \"--eval\" code])\n .start)\n is (\"çç@.getInputStreamç@docs.oracle.com/javase/8/docs/api/java/lang/Process.html#getInputStream--\" proc)\n iw (StringWriter. (\"ç@a*ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_*\" 16 1024 1024))\n es (\"çç@.getErrorStreamç@docs.oracle.com/javase/8/docs/api/java/lang/Process.html#getErrorStream--\" proc)\n ew (StringWriter. (\"ç@a*ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_*\" 1024 1024))\n _ (do (\"çç@.startç@docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#start--\"\n (Thread.\n (\"ç@abound-fnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_bound-fn\" [] (\"ç@ppipeç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_pipe\" proc is iw))))\n (\"çç@.startç@docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#start--\"\n (Thread.\n (\"ç@abound-fnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_bound-fn\" [] (\"ç@ppipeç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_pipe\" proc es ew)))))\n err (\"çç@.waitForç@docs.oracle.com/javase/8/docs/api/java/lang/Process.html#waitFor-long-java.util.concurrent.TimeUnit-\" proc)]\n (if (\"ç@azero?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_zero%3F\" err)\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" []\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [{:strs [file provides]}] file\n (\"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\"\n {:file file\n :module-type :es6}\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" provides\n {:provides provides}))))\n (\"ç@anextç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_next\" (\"ç@ajson/read-strç@/ns/org.clojure/data.json/0.2.6/clojure.data.json.html#_read-str\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" iw))))\n (do\n (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" (\"çç@.isAliveç@docs.oracle.com/javase/8/docs/api/java/lang/Process.html#isAlive--\" proc)\n (\"ç@abindingç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_binding\" [*out* \"ç@a*err*ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_*err*\"]\n (\"ç@aprintlnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_println\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" ew))))\n [])))))\n\n\"ç@_node-inputs\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dnode-inputsç@/fun/cljs.closure/node-inputs.html\"\n \"EXPERIMENTAL: return the foreign libs entries as computed by running\n the module-deps package on the supplied JavaScript entry points. Assumes\n that the `@cljs-oss/module-deps` NPM package is either locally or globally\n installed.\"\n ([entries]\n (\"ç@pnode-inputsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_node-inputs\" entries\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"\n (:options @\"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"))))\n ([entries opts]\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" [] (\"ç@adistinctç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_distinct\" (\"ç@amapcatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_mapcat\" #(\"ç@pnode-module-depsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_node-module-deps\" % opts) entries)))))\n\n\"ç@_index-node-modules\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dindex-node-modulesç@/fun/cljs.closure/index-node-modules.html\"\n ([modules]\n (\"ç@pindex-node-modulesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_index-node-modules\"\n modules\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"\n (:options @\"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"))))\n ([modules opts]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [node-modules (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" \"node_modules\")]\n (if (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@aempty?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_empty%3F\" modules)) (\"çç@.existsç@docs.oracle.com/javase/8/docs/api/java/io/File.html#exists--\" node-modules) (.isDirectory node-modules))\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [modules (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" #{} (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" \"ç@anameç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_name\") modules)\n deps-file (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" (\"ç@autil/output-directoryç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_output-directory\" opts) \"cljs$node_modules.js\")\n old-contents (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"çç@.existsç@docs.oracle.com/javase/8/docs/api/java/io/File.html#exists--\" deps-file)\n (\"ç@aslurpç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_slurp\" deps-file))\n new-contents (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [sb (StringBuffer.)]\n (\"ç@arun!ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_run%21\" #(\"çç@.appendç@docs.oracle.com/javase/8/docs/api/java/lang/StringBuffer.html#append-float-\" sb (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"require('\" % \"');\\n\")) modules)\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" sb))]\n (\"ç@autil/mkdirsç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_mkdirs\" deps-file)\n (\"ç@aif-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_if-not\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" old-contents new-contents)\n (do\n (\"ç@aspitç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_spit\" deps-file new-contents)\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [transitive-js (\"ç@pnode-inputsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_node-inputs\" [{:file (\"çç@.getAbsolutePathç@docs.oracle.com/javase/8/docs/api/java/io/File.html#getAbsolutePath--\" deps-file)}] opts)]\n (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\")\n (\"ç@aswap!ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_swap%21\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\" \"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [::transitive-dep-set]\n \"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" modules transitive-js))\n transitive-js))\n (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\")\n (\"ç@aget-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_get-in\" @\"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\" [::transitive-dep-set modules]))))\n []))))\n\n\"ç@_node-file-seq->libs-spec*\"(\"ç@adefn-ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn-\" \"ç@dnode-file-seq->libs-spec*ç@/fun/cljs.closure/node-file-seq-%3Elibs-spec*.html\"\n [module-fseq]\n (\"ç@aletfnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_letfn\" [(package-json? [path]\n (\"ç@abooleanç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_boolean\" (\"ç@are-findç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_re-find\" #\"node_modules[/\\\\](@[^/\\\\]+?[/\\\\])?[^/\\\\]+?[/\\\\]package\\.json$\" path)))]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [pkg-jsons (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" {}\n (\"ç@acompç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comp\"\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" #(.getAbsolutePath %))\n (\"ç@afilterç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_filter\" package-json?)\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [path]\n [path (\"ç@ajson/read-strç@/ns/org.clojure/data.json/0.2.6/clojure.data.json.html#_read-str\" (\"ç@aslurpç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_slurp\" path))])))\n module-fseq)]\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" []\n (\"ç@acompç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comp\"\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" #(.getAbsolutePath %))\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [path]\n (\"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\"\n {:file path\n :module-type :es6}\n (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" (package-json? path)\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [pkg-json-main (\"ç@asomeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_some\"\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [[pkg-json-path {:strs [main name]}]]\n (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" main)\n ;; should be the only edge case in\n ;; the package.json main field - Antonio\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [main (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" main\n (.startsWith main \"./\")\n (\"ç@asubsç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_subs\" 2))\n main-path (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" pkg-json-path\n (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" #\"\\\\\" \"/\")\n (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" #\"package\\.json$\" \"\")\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" main))]\n (\"ç@asomeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_some\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [candidate]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" candidate (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" path #\"\\\\\" \"/\"))\n name))\n (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" [main-path]\n (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" (\"ç@are-findç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_re-find\" #\"\\.js(on)?$\" main-path))\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" [(\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" main-path \".js\") (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" main-path \".json\")]))))))\n pkg-jsons)]\n {:provides (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [module-rel-name (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" (\"ç@asubsç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_subs\" path (.lastIndexOf path \"node_modules\"))\n (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" #\"\\\\\" \"/\")\n (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" #\"node_modules[\\\\\\/]\" \"\"))\n provides (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" [module-rel-name (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" module-rel-name #\"\\.js(on)?$\" \"\")]\n (\"ç@asome?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_some%3F\" pkg-json-main)\n (\"ç@aconjç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_conj\" pkg-json-main))\n index-replaced (\"ç@astring/replaceç@/ns/org.clojure/clojurescript/1.10.312/clojure.string.html#_replace\" module-rel-name #\"[\\\\\\/]index\\.js(on)?$\" \"\")]\n (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" provides\n (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@abooleanç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_boolean\" (\"ç@are-findç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_re-find\" #\"[\\\\\\/]index\\.js(on)?$\" module-rel-name))\n (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@asomeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_some\" #{index-replaced} provides)))\n (\"ç@aconjç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_conj\" index-replaced)))}))))))\n module-fseq))))\n\n\"ç@_node-file-seq->libs-spec\"(def \"ç@dnode-file-seq->libs-specç@/fun/cljs.closure/node-file-seq-%3Elibs-spec.html\" (\"ç@amemoizeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_memoize\" \"ç@pnode-file-seq->libs-spec*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_node-file-seq-%3Elibs-spec*\"))\n\n\"ç@_index-node-modules-dir\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dindex-node-modules-dirç@/fun/cljs.closure/index-node-modules-dir.html\"\n ([]\n (\"ç@pindex-node-modules-dirç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_index-node-modules-dir\"\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"\n (:options @\"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"))))\n ([opts]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [module-fseq (\"ç@autil/module-file-seqç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_module-file-seq\")]\n (\"ç@pnode-file-seq->libs-specç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_node-file-seq-%3Elibs-spec\" module-fseq))))\n\n\"ç@_preprocess-js\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dpreprocess-jsç@/fun/cljs.closure/preprocess-js.html\"\n \"Given js-module map, apply preprocessing defined by :preprocess value in the map.\"\n [{:keys [preprocess] :as js-module} opts]\n (\"ç@acondç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond\"\n (\"ç@akeyword?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_keyword%3F\" preprocess)\n (\"ç@pjs-transformsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_js-transforms\" js-module opts)\n\n (\"ç@asymbol?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_symbol%3F\" preprocess)\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [ns (\"ç@anamespaceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_namespace\" preprocess)\n _ (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" ns)\n (throw\n (\"ç@aex-infoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_ex-info\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Preprocess symbol \" preprocess \" is not fully qualified\")\n {:file (:file js-module)\n :preprocess preprocess})))\n preprocess-ns (\"ç@asymbolç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_symbol\" ns)]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@afind-nsç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_find-ns\" preprocess-ns))\n (try\n (\"ç@alockingç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_locking\" \"ç@aana/load-mutexç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_load-mutex\"\n (\"ç@arequireç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_require\" preprocess-ns))\n (catch \"çç@Throwableç@docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html\" t\n (throw (\"ç@aex-infoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_ex-info\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Cannot require namespace referred by :preprocess value \" preprocess)\n {:file (:file js-module)\n :preprocess preprocess}\n t)))))\n\n (try\n ((\"ç@afind-varç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_find-var\" preprocess) js-module opts)\n (catch \"çç@Throwableç@docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html\" t\n (throw (\"ç@aex-infoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_ex-info\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Error running preprocessing function \" preprocess)\n {:file (:file js-module)\n :preprocess preprocess}\n t)))))\n\n :else\n (do\n (\"ç@aana/warningç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_warning\" :unsupported-preprocess-value @\"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\" js-module)\n js-module)))\n\n\"ç@_to-absolute-path\"(\"ç@adefn-ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn-\" \"ç@dto-absolute-pathç@/fun/cljs.closure/to-absolute-path.html\" [^\"çç@Stringç@docs.oracle.com/javase/8/docs/api/java/lang/String.html\" file-str]\n (\"çç@.getAbsolutePathç@docs.oracle.com/javase/8/docs/api/java/io/File.html#getAbsolutePath--\" (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" file-str)))\n\n\"ç@_process-js-modules\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dprocess-js-modulesç@/fun/cljs.closure/process-js-modules.html\"\n \"Given the current compiler options, converts JavaScript modules to Google\n Closure modules and writes them to disk. Adds mapping from original module\n namespace to new module namespace to compiler env. Returns modified compiler\n options where new modules are passed with :libs option.\"\n [opts]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [;; Modules from both :foreign-libs (compiler options) and :ups-foreign-libs (deps.cljs)\n ;; are processed together, so that files from both sources can depend on each other.\n ;; e.g. commonjs module in :foreign-libs can depend on commonjs module from :ups-foreign-libs.\n js-modules (\"ç@afilterç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_filter\" :module-type (\"ç@aconcatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_concat\" (:foreign-libs opts) (:ups-foreign-libs opts)))]\n (if (\"ç@aseqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_seq\" js-modules)\n (\"ç@autil/measureç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_measure\" (:compiler-stats opts)\n \"Process JS modules\"\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [_ (\"ç@awhen-letç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-let\" [unsupported (\"ç@afirstç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_first\" (\"ç@afilterç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_filter\" (\"ç@acomplementç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_complement\" #{:es6 :commonjs :amd})\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" :module-type js-modules)))]\n (\"ç@aana/warningç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_warning\" :unsupported-js-module-type @\"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\" unsupported))\n ;; Load all modules - add :source so preprocessing and conversion can access it\n js-modules (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" []\n (\"ç@acompç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comp\"\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [lib]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [js (\"ç@adeps/load-foreign-libraryç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_load-foreign-library\" lib)]\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" js :source (\"ç@adeps/-sourceç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-source\" js opts)))))\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [js]\n (if (:preprocess js)\n (\"ç@ppreprocess-jsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_preprocess-js\" js opts)\n js)))\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [js]\n (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" (\"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" js [:file] \"ç@pto-absolute-pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_to-absolute-path\")\n (\"ç@asome?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_some%3F\" (:file-min js))\n (\"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:file-min] \"ç@pto-absolute-pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_to-absolute-path\")))))\n js-modules)\n js-modules (\"ç@pconvert-js-modulesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_convert-js-modules\" js-modules opts)]\n ;; Write modules to disk, update compiler state and build new options\n (\"ç@areduceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_reduce\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [new-opts {:keys [file module-type] :as ijs}]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [ijs (\"ç@pwrite-javascriptç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_write-javascript\" opts ijs)\n module-name (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" (\"ç@adeps/load-libraryç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_load-library\" (:out-file ijs)) \"ç@afirstç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_first\" :provides \"ç@afirstç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_first\")]\n (\"ç@adoseqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_doseq\" [provide (:provides ijs)]\n (\"ç@aswap!ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_swap%21\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"\n #(\"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" % [:js-module-index] \"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" provide {:name module-name\n :module-type module-type})))\n (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" new-opts\n (\"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:libs] (\"ç@acompç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comp\" \"ç@avecç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_vec\" \"ç@aconjç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_conj\") (:out-file ijs))\n ;; js-module might be defined in either, so update both\n (\"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:foreign-libs]\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [libs]\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" []\n (\"ç@aremoveç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_remove\" #(\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" (\"ç@pto-absolute-pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_to-absolute-path\" (:file %)) file))\n libs)))\n (\"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:ups-foreign-libs]\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [libs]\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" []\n (\"ç@aremoveç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_remove\" #(\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" (\"ç@pto-absolute-pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_to-absolute-path\" (:file %)) (\"ç@pto-absolute-pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_to-absolute-path\" file)))\n libs))))))\n opts js-modules)))\n opts)))\n\n\"ç@_load-data-reader-file\"(\"ç@adefn-ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn-\" \"ç@dload-data-reader-fileç@/fun/cljs.closure/load-data-reader-file.html\" [mappings ^\"çç@java.net.URLç@docs.oracle.com/javase/8/docs/api/java/net/URL.html\" url]\n (\"ç@awith-openç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_with-open\" [rdr (\"ç@areaders/input-stream-push-back-readerç@/ns/org.clojure/tools.reader/1.3.0-alpha3/clojure.tools.reader.reader-types.html#_input-stream-push-back-reader\" (\"çç@.openStreamç@docs.oracle.com/javase/8/docs/api/java/net/URL.html#openStream--\" url))]\n (\"ç@abindingç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_binding\" [*file* (\"çç@.getFileç@docs.oracle.com/javase/8/docs/api/java/net/URL.html#getFile--\" url)]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [new-mappings (\"ç@areader/readç@/ns/org.clojure/tools.reader/1.3.0-alpha3/clojure.tools.reader.html#_read\" {:eof nil :read-cond :allow} rdr)]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@amap?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map%3F\" new-mappings))\n (throw (\"ç@aex-infoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_ex-info\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Not a valid data-reader map\")\n {:url url})))\n (\"ç@areduceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_reduce\"\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [m [k v]]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@asymbol?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_symbol%3F\" k))\n (throw (\"ç@aex-infoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_ex-info\" (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Invalid form in data-reader file\")\n {:url url\n :form k})))\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@acontains?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_contains%3F\" mappings k)\n (\"ç@anot=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not%3D\" (mappings k) v))\n (throw (\"ç@aex-infoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_ex-info\" \"Conflicting data-reader mapping\"\n {:url url\n :conflict k\n :mappings m})))\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" m k v))\n mappings\n new-mappings)))))\n\n\"ç@_get-data-readers*\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dget-data-readers*ç@/fun/cljs.closure/get-data-readers*.html\"\n \"returns a merged map containing all data readers defined by libraries\n on the classpath.\"\n ([]\n (\"ç@pget-data-readers*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_get-data-readers*\" (. (\"çç@Thread/currentThreadç@docs.oracle.com/javase/8/docs/api/java/lang/Thread.html#currentThread--\") (getContextClassLoader))))\n ([classloader]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [data-reader-urls (\"ç@aenumeration-seqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_enumeration-seq\" (. classloader (getResources \"data_readers.cljc\")))]\n (\"ç@areduceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_reduce\" \"ç@pload-data-reader-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_load-data-reader-file\" {} data-reader-urls))))\n\n\"ç@_get-data-readers\"(def \"ç@dget-data-readersç@/fun/cljs.closure/get-data-readers.html\" (\"ç@amemoizeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_memoize\" \"ç@pget-data-readers*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_get-data-readers*\"))\n\n\"ç@_load-data-readers!\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dload-data-readers!ç@/fun/cljs.closure/load-data-readers%21.html\" [compiler]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [data-readers (\"ç@pget-data-readersç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_get-data-readers\")\n nses (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@acompç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comp\" \"ç@asymbolç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_symbol\" \"ç@anamespaceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_namespace\") (\"ç@avalsç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_vals\" data-readers))]\n (\"ç@aswap!ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_swap%21\" compiler \"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:cljs.analyzer/data-readers] \"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\" (\"ç@pget-data-readersç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_get-data-readers\"))\n (\"ç@adoseqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_doseq\" [ns nses]\n (try\n (\"ç@alockingç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_locking\" \"ç@aana/load-mutexç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_load-mutex\"\n (\"ç@arequireç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_require\" ns))\n (catch \"çç@Throwableç@docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html\" _)))))\n\n\"ç@_add-externs-sources\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dadd-externs-sourcesç@/fun/cljs.closure/add-externs-sources.html\" [opts]\n (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" opts\n (:infer-externs opts)\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" :externs-sources (\"ç@pload-externsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_load-externs\" (\"ç@adissocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_dissoc\" opts :infer-externs)))))\n\n\"ç@_handle-js-modules\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dhandle-js-modulesç@/fun/cljs.closure/handle-js-modules.html\"\n \"Given all Cljs sources (build inputs and dependencies in classpath)\n\n - index all the node node modules\n - process the JS modules (preprocess + convert to Closure JS)\n - save js-dependency-index for compilation\"\n [{:keys [npm-deps target] :as opts} js-sources compiler-env]\n ;; Find all the top-level Node packages and their files\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [top-level (\"ç@areduceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_reduce\"\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [acc m]\n (\"ç@areduceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_reduce\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [acc p] (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" acc p m)) acc (:provides m)))\n {} (\"ç@pindex-node-modules-dirç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_index-node-modules-dir\"))\n requires (\"ç@asetç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_set\" (\"ç@amapcatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_mapcat\" \"ç@adeps/-requiresç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-requires\" js-sources))\n ;; Select Node files that are required by Cljs code,\n ;; and create list of all their dependencies\n node-required (\"ç@aset/intersectionç@/ns/org.clojure/clojurescript/1.10.312/clojure.set.html#_intersection\" (\"ç@asetç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_set\" (\"ç@akeysç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_keys\" top-level)) requires)\n expanded-libs (\"ç@pexpand-libsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_expand-libs\" (:foreign-libs opts))\n output-dir (\"ç@autil/output-directoryç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_output-directory\" opts)\n opts (\"ç@aupdateç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update\" opts :foreign-libs\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [libs]\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" (if (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" target :nodejs)\n []\n (\"ç@pindex-node-modulesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_index-node-modules\" node-required))\n (\"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" expanded-libs\n (\"ç@pnode-inputsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_node-inputs\" (\"ç@afilterç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_filter\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [{:keys [module-type]}]\n (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@asome?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_some%3F\" module-type)\n (\"ç@anot=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not%3D\" module-type :amd)))\n expanded-libs))))))\n opts (if (\"ç@asomeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_some\"\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [ijs]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [dest (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" output-dir (\"ç@prel-output-pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_rel-output-path\" (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" ijs :foreign true) opts))]\n (\"ç@autil/changed?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_changed%3F\" (\"ç@adeps/-urlç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_-url\" ijs opts) dest)))\n (:foreign-libs opts))\n (\"ç@pprocess-js-modulesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_process-js-modules\" opts)\n (:options @compiler-env))]\n (\"ç@aswap!ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_swap%21\" compiler-env (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [cenv]\n (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" cenv\n ;; we need to also track the whole top level - this is to support\n ;; cljs.analyze/analyze-deps, particularly in REPL contexts - David\n (\"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\" {:js-dependency-index (\"ç@adeps/js-dependency-indexç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_js-dependency-index\" opts)})\n (\"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:node-module-index] (\"ç@afnilç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fnil\" \"ç@aintoç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into\" #{})\n (if (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" target :nodejs)\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" \"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" node-required)\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" \"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@akeysç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_keys\" top-level)))))))\n opts))\n\n\"ç@_build\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dbuildç@/fun/cljs.closure/build.html\"\n \"Given a source which can be compiled, produce runnable JavaScript.\"\n ([source opts]\n (\"ç@pbuildç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_build\" source opts\n (\"ç@aif-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_if-not\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\")\n \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"\n (\"ç@aenv/default-compiler-envç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_default-compiler-env\"\n ;; need to dissoc :foreign-libs since we won't know what overriding\n ;; foreign libspecs are referring to until after add-implicit-options\n ;; - David\n (\"ç@padd-externs-sourcesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-externs-sources\" (\"ç@adissocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_dissoc\" opts :foreign-libs))))))\n ([source opts compiler-env]\n (\"ç@aenv/with-compiler-envç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_with-compiler-env\" compiler-env\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [opts (\"ç@padd-implicit-optionsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-implicit-options\" opts)\n ;; we want to warn about NPM dep conflicts before installing the modules\n _ (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (:install-deps opts)\n (\"ç@pcheck-npm-depsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_check-npm-deps\" opts)\n (\"ç@aswap!ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_swap%21\" compiler-env \"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:npm-deps-installed?]\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [installed?]\n (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" installed?\n (\"ç@pmaybe-install-node-deps!ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_maybe-install-node-deps%21\" opts)))))\n\n compiler-stats (:compiler-stats opts)\n checked-arrays (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (:checked-arrays opts)\n \"ç@aana/*checked-arrays*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_*checked-arrays*\")\n static-fns? (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" (:optimizations opts) :advanced)\n (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"ç@afalse?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_false%3F\" (:static-fns opts))))\n (:static-fns opts)\n \"ç@aana/*cljs-static-fns*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_*cljs-static-fns*\")\n sources (\"ç@p-find-sourcesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_-find-sources\" source opts)]\n (\"ç@pcheck-output-toç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_check-output-to\" opts)\n (\"ç@pcheck-output-dirç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_check-output-dir\" opts)\n (\"ç@pcheck-source-mapç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_check-source-map\" opts)\n (\"ç@pcheck-source-map-pathç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_check-source-map-path\" opts)\n (\"ç@pcheck-output-wrapperç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_check-output-wrapper\" opts)\n (\"ç@pcheck-node-targetç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_check-node-target\" opts)\n (\"ç@pcheck-preloadsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_check-preloads\" opts)\n (\"ç@pcheck-cache-analysis-formatç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_check-cache-analysis-format\" opts)\n (\"ç@aswap!ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_swap%21\" compiler-env\n #(\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" %\n (\"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:options] \"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\" opts)\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" :target (:target opts))\n ;; Save the current js-dependency index once we have computed opts\n ;; or the analyzer won't be able to find upstream dependencies - Antonio\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" :js-dependency-index (\"ç@adeps/js-dependency-indexç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_js-dependency-index\" opts))\n ;; Save list of sources for cljs.analyzer/locate-src - Juho Teperi\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" :sources sources)))\n (\"ç@abindingç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_binding\" [comp/*recompiled* (\"ç@awhen-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-not\" (\"ç@afalse?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_false%3F\" (:recompile-dependents opts))\n (\"ç@aatomç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_atom\" #{}))\n ana/*checked-arrays* checked-arrays\n ana/*cljs-static-fns* static-fns?\n ana/*fn-invoke-direct* (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" static-fns?\n (:fn-invoke-direct opts))\n \"ç@aana/*fn-invoke-direct*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_*fn-invoke-direct*\")\n *assert* (\"ç@anot=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not%3D\" (:elide-asserts opts) true)\n ana/*load-tests* (\"ç@anot=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not%3D\" (:load-tests opts) false)\n ana/*cljs-warnings*\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [warnings (opts :warnings true)]\n (\"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\"\n \"ç@aana/*cljs-warnings*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_*cljs-warnings*\"\n (if (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@atrue?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_true%3F\" warnings)\n (\"ç@afalse?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_false%3F\" warnings))\n (\"ç@azipmapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_zipmap\"\n [:unprovided :undeclared-var\n :undeclared-ns :undeclared-ns-form]\n (\"ç@arepeatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_repeat\" warnings))\n warnings)))\n ana/*verbose* (:verbose opts)]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [one-file? (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (:main opts)\n (#{:advanced :simple :whitespace} (:optimizations opts)))\n source (if one-file?\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [main (:main opts)\n uri (:uri (\"ç@pcljs-source-for-namespaceç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_cljs-source-for-namespace\" main))]\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" uri (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"No file for namespace \" main \" exists\"))\n uri)\n source)\n compile-opts (if one-file?\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" opts :output-file (:output-to opts))\n opts)\n _ (\"ç@pload-data-readers!ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_load-data-readers%21\" compiler-env)\n ;; reset :js-module-index so that ana/parse-ns called by -find-sources\n ;; can find the missing JS modules\n js-sources (\"ç@aenv/with-compiler-envç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_with-compiler-env\" (\"ç@adissocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_dissoc\" @compiler-env :js-module-index)\n (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" (\"ç@p-find-sourcesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_-find-sources\" source opts)\n (\"ç@padd-dependency-sourcesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-dependency-sources\" compile-opts)))\n opts (\"ç@phandle-js-modulesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_handle-js-modules\" opts js-sources compiler-env)\n _ (\"ç@aswap!ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_swap%21\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\" \"ç@aupdate-inç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_update-in\" [:options] \"ç@amergeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_merge\" opts)\n js-sources (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" js-sources\n \"ç@adeps/dependency-orderç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_dependency-order\"\n (\"ç@pcompile-sourcesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_compile-sources\" compiler-stats compile-opts)\n (#(\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" \"ç@padd-core-macros-if-cljs-jsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-core-macros-if-cljs-js\" %))\n (\"ç@padd-js-sourcesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-js-sources\" opts)\n (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" :nodejs (:target opts)) (\"ç@aconcatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_concat\" [(\"ç@p-compileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_-compile\" (\"ç@aio/resourceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_resource\" \"cljs/nodejs.cljs\") opts)]))\n \"ç@adeps/dependency-orderç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_dependency-order\"\n (\"ç@padd-preloadsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-preloads\" opts)\n \"ç@padd-goog-baseç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-goog-base\"\n (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" :nodejs (:target opts)) (\"ç@aconcatç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_concat\" [(\"ç@p-compileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_-compile\" (\"ç@aio/resourceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_resource\" \"cljs/nodejscli.cljs\") opts)]))\n (\"ç@a->>ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E%3E\" (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" #(\"ç@psource-on-diskç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_source-on-disk\" opts %)) \"ç@adoallç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_doall\")\n (\"ç@pcompile-loaderç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_compile-loader\" opts))\n _ (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (:emit-constants opts)\n (\"ç@acomp/emit-constants-table-to-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.compiler.html#_emit-constants-table-to-file\"\n (::ana/constant-table @\"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\")\n (\"ç@pconstants-filenameç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_constants-filename\" opts)))\n _ (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (:infer-externs opts)\n (\"ç@acomp/emit-inferred-externs-to-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.compiler.html#_emit-inferred-externs-to-file\"\n (\"ç@areduceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_reduce\" \"ç@autil/map-mergeç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_map-merge\" {}\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@acompç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comp\" :externs \"ç@asecondç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_second\")\n (\"ç@agetç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_get\" @compiler-env ::ana/namespaces)))\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@autil/output-directoryç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_output-directory\" opts) \"/inferred_externs.js\")))\n optim (:optimizations opts)\n ret (if (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" optim (\"ç@anot=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not%3D\" optim :none))\n (do\n (\"ç@awhen-letç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-let\" [fname (:source-map opts)]\n (\"ç@aassertç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assert\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" (:output-to opts)) (:modules opts) (\"ç@astring?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_string%3F\" fname))\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \":source-map must name a file when using :whitespace, \"\n \":simple, or :advanced optimizations with :output-to\")))\n (if (:modules opts)\n (\"ç@a->>ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E%3E\"\n (\"ç@autil/measureç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_measure\" compiler-stats\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Optimizing \" (\"ç@acountç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_count\" js-sources) \" sources\")\n (\"ç@aapplyç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_apply\" \"ç@poptimize-modulesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_optimize-modules\" opts js-sources))\n (\"ç@poutput-modulesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_output-modules\" opts js-sources))\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [fdeps-str (\"ç@pforeign-deps-strç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_foreign-deps-str\" opts\n (\"ç@afilterç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_filter\" \"ç@pforeign-source?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_foreign-source%3F\" js-sources))\n opts (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" opts\n :foreign-deps-line-count\n (\"ç@a-ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-\" (\"ç@acountç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_count\" (\"çç@.splitç@docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html#split-java.lang.CharSequence-int-\" #\"\\r?\\n\" fdeps-str -1)) 1))]\n (\"ç@a->>ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E%3E\"\n (\"ç@autil/measureç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_measure\" compiler-stats\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Optimizing \" (\"ç@acountç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_count\" js-sources) \" sources\")\n (\"ç@aapplyç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_apply\" \"ç@poptimizeç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_optimize\" opts\n (\"ç@aremoveç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_remove\" \"ç@pforeign-source?ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_foreign-source%3F\" js-sources)))\n (\"ç@padd-wrapperç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-wrapper\" opts)\n (\"ç@padd-source-map-linkç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-source-map-link\" opts)\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" fdeps-str)\n (\"ç@padd-headerç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_add-header\" opts)\n (\"ç@poutput-one-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_output-one-file\" opts)))))\n (\"ç@aapplyç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_apply\" \"ç@poutput-unoptimizedç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_output-unoptimized\" opts js-sources))]\n ;; emit Node.js bootstrap script for :none & :whitespace optimizations\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" (:target opts) :nodejs)\n (\"ç@anot=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not%3D\" (:optimizations opts) :whitespace))\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [outfile (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" (\"ç@autil/output-directoryç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_output-directory\" opts)\n \"goog\" \"bootstrap\" \"nodejs.js\")]\n (\"ç@autil/mkdirsç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_mkdirs\" outfile)\n (\"ç@aspitç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_spit\" outfile (\"ç@aslurpç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_slurp\" (\"ç@aio/resourceç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_resource\" \"cljs/bootstrap_node.js\")))))\n ret))))))\n\n(\"ç@acommentç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comment\"\n ;; testing modules\n (build \"samples/hello/src\"\n {:optimizations :advanced\n :output-dir \"samples/hello/out\"\n :source-map true\n :modules\n {:hello\n {:output-to \"samples/hello/out/hello.js\"\n :entries '#{cljs.reader hello.core}}}})\n\n (require '[cljs.externs :as externs])\n\n (externs/parse-externs\n (js-source-file \"cljs/externs.js\" (io/file \"src/main/cljs/cljs/externs.js\")))\n )\n\n\"ç@_target-file-for-cljs-ns\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" ^File \"ç@dtarget-file-for-cljs-nsç@/fun/cljs.closure/target-file-for-cljs-ns.html\"\n [ns-sym output-dir]\n (\"ç@autil/to-target-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_to-target-file\"\n (\"ç@autil/output-directoryç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_output-directory\" {:output-dir output-dir})\n {:ns ns-sym}))\n\n\"ç@_mark-cljs-ns-for-recompile!\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dmark-cljs-ns-for-recompile!ç@/fun/cljs.closure/mark-cljs-ns-for-recompile%21.html\"\n [ns-sym output-dir]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [s (\"ç@ptarget-file-for-cljs-nsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_target-file-for-cljs-ns\" ns-sym output-dir)]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"çç@.existsç@docs.oracle.com/javase/8/docs/api/java/io/File.html#exists--\" s)\n (\"çç@.setLastModifiedç@docs.oracle.com/javase/8/docs/api/java/io/File.html#setLastModified-long-\" s 5000))))\n\n\"ç@_cljs-dependents-for-macro-namespaces\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dcljs-dependents-for-macro-namespacesç@/fun/cljs.closure/cljs-dependents-for-macro-namespaces.html\"\n [state namespaces]\n (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" :name\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [namespaces-set (\"ç@asetç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_set\" namespaces)]\n (\"ç@afilterç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_filter\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [x] (\"ç@anot-emptyç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not-empty\"\n (\"ç@aset/intersectionç@/ns/org.clojure/clojurescript/1.10.312/clojure.set.html#_intersection\" namespaces-set (\"ç@a->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_-%3E\" x :require-macros \"ç@avalsç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_vals\" \"ç@asetç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_set\"))))\n (\"ç@avalsç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_vals\" (:cljs.analyzer/namespaces @state))))))\n\n\"ç@_watch\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dwatchç@/fun/cljs.closure/watch.html\"\n \"Given a source directory, produce runnable JavaScript. Watch the source\n directory for changes rebuilding when necessary. Takes the same arguments as\n cljs.closure/build in addition to some watch-specific options:\n - :watch-fn, a function of no arguments to run after a successful build.\n - :watch-error-fn, a function receiving the exception of a failed build.\"\n ([source opts]\n (\"ç@pwatchç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_watch\" source opts\n (\"ç@aif-notç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_if-not\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\")\n \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"\n (\"ç@aenv/default-compiler-envç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_default-compiler-env\" opts))))\n ([source opts compiler-env]\n (\"ç@pwatchç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_watch\" source opts compiler-env nil))\n ([source opts compiler-env quit]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [opts (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" opts\n (\"ç@a=ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_%3D\" (:verbose opts :not-found) :not-found)\n (\"ç@aassocç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_assoc\" :verbose true))\n paths (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" #(\"çç@Paths/getç@docs.oracle.com/javase/8/docs/api/java/nio/file/Paths.html#get-java.lang.String-java.lang.String:A-\" (.toURI %)) (\"ç@p-pathsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_-paths\" source))\n path (\"ç@afirstç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_first\" paths)\n fs (.getFileSystem path)\n srvc (.newWatchService fs)]\n (\"ç@aletfnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_letfn\" [(buildf []\n (try\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [start (\"çç@System/nanoTimeç@docs.oracle.com/javase/8/docs/api/java/lang/System.html#nanoTime--\")]\n (\"ç@pbuildç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_build\" source opts compiler-env)\n (\"ç@aprintlnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_println\" \"... done. Elapsed\"\n (/ (\"ç@aunchecked-subtractç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_unchecked-subtract\" (\"çç@System/nanoTimeç@docs.oracle.com/javase/8/docs/api/java/lang/System.html#nanoTime--\") start) 1e9) \"seconds\")\n (\"ç@aflushç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_flush\"))\n (\"ç@awhen-letç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-let\" [f (:watch-fn opts)]\n (f))\n (catch \"çç@Throwableç@docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html\" e\n (\"ç@aif-letç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_if-let\" [f (:watch-error-fn opts)]\n (f e)\n (\"ç@abindingç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_binding\" [*out* \"ç@a*err*ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_*err*\"]\n (\"ç@aprintlnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_println\" (Throwables/getStackTraceAsString e)))))))\n (watch-all [^\"çç@Pathç@docs.oracle.com/javase/8/docs/api/java/nio/file/Path.html\" root]\n (\"çç@Files/walkFileTreeç@docs.oracle.com/javase/8/docs/api/java/nio/file/Files.html#walkFileTree-java.nio.file.Path-java.util.Set-int-java.nio.file.FileVisitor-\" root\n (\"ç@areifyç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_reify\"\n FileVisitor\n (preVisitDirectory [_ dir _]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [^\"çç@Pathç@docs.oracle.com/javase/8/docs/api/java/nio/file/Path.html\" dir dir]\n (. dir\n (register srvc\n (\"ç@ainto-arrayç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into-array\" [StandardWatchEventKinds/ENTRY_CREATE\n StandardWatchEventKinds/ENTRY_DELETE\n StandardWatchEventKinds/ENTRY_MODIFY])\n (\"ç@ainto-arrayç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_into-array\" [SensitivityWatchEventModifier/HIGH]))))\n FileVisitResult/CONTINUE)\n (postVisitDirectory [_ dir exc]\n FileVisitResult/CONTINUE)\n (visitFile [_ file attrs]\n FileVisitResult/CONTINUE)\n (visitFileFailed [_ file exc]\n FileVisitResult/CONTINUE))))]\n (\"ç@aprintlnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_println\" \"Building ...\")\n (\"ç@aflushç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_flush\")\n (buildf)\n (\"ç@aprintlnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_println\" \"Watching paths:\" (\"ç@aapplyç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_apply\" \"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@ainterposeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_interpose\" \", \" paths)))\n (\"ç@adoseqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_doseq\" [path paths]\n (watch-all path))\n (\"ç@aloopç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_loop\" [key nil]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" quit) (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" @quit))\n (or (\"ç@anil?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_nil%3F\" key) (. ^\"çç@WatchKeyç@docs.oracle.com/javase/8/docs/api/java/nio/file/WatchKey.html\" key reset)))\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [key (. srvc (poll 300 TimeUnit/MILLISECONDS))\n poll-events-seq (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" key (\"ç@aseqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_seq\" (.pollEvents key)))]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" key\n (\"ç@asomeç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_some\"\n (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [^\"çç@WatchEventç@docs.oracle.com/javase/8/docs/api/java/nio/file/WatchEvent.html\" e]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [fstr (\"ç@a..ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_..\" e context toString)]\n (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (. fstr (endsWith \"cljc\"))\n (. fstr (endsWith \"cljs\"))\n (. fstr (endsWith \"clj\"))\n (. fstr (endsWith \"js\")))\n (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (. fstr (startsWith \".#\"))))))\n poll-events-seq))\n (\"ç@awhen-letç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when-let\" [clj-files (\"ç@aseqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_seq\" (\"ç@akeepç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_keep\" (\"ç@afnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_fn\" [^\"çç@WatchEventç@docs.oracle.com/javase/8/docs/api/java/nio/file/WatchEvent.html\" e]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [ctx (\"çç@.contextç@docs.oracle.com/javase/8/docs/api/java/nio/file/WatchEvent.html#context--\" e)\n fstr (\"çç@.toStringç@docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--\" ctx)]\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@aorç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_or\" (. fstr (endsWith \"cljc\"))\n (. fstr (endsWith \"clj\")))\n (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (. fstr (startsWith \".#\"))))\n ctx)))\n poll-events-seq))]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [^\"çç@Pathç@docs.oracle.com/javase/8/docs/api/java/nio/file/Path.html\" dir (.watchable key)\n file-seq (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" #(\"çç@.toFileç@docs.oracle.com/javase/8/docs/api/java/nio/file/Path.html#toFile--\" (\"çç@.resolveç@docs.oracle.com/javase/8/docs/api/java/nio/file/Path.html#resolve-java.nio.file.Path-\" dir %)) clj-files)\n nses (\"ç@amapç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_map\" (\"ç@acompç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comp\" :ns \"ç@aana/parse-nsç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_parse-ns\") file-seq)]\n (\"ç@adoseqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_doseq\" [ns nses]\n (\"ç@arequireç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_require\" ns :reload))\n (\"ç@adoseqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_doseq\" [ns (\"ç@pcljs-dependents-for-macro-namespacesç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_cljs-dependents-for-macro-namespaces\" compiler-env nses)]\n (\"ç@pmark-cljs-ns-for-recompile!ç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_mark-cljs-ns-for-recompile%21\" ns (:output-dir opts)))))\n (\"ç@aprintlnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_println\" \"Change detected, recompiling ...\")\n (\"ç@aflushç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_flush\")\n (buildf))\n (recur key))))))))\n\n(\"ç@acommentç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comment\"\n (watch \"samples/hello/src\"\n {:optimizations :none\n :output-to \"samples/hello/out/hello.js\"\n :output-dir \"samples/hello/out\"\n :cache-analysis true\n :source-map true\n :verbose true\n :watch-fn\n (fn []\n (println \"Success!\"))})\n )\n\n;; =============================================================================\n;; Utilities\n\n;; for backwards compatibility\n\"ç@_output-directory\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@doutput-directoryç@/fun/cljs.closure/output-directory.html\" [opts]\n (\"ç@autil/output-directoryç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_output-directory\" opts))\n\n\"ç@_parse-js-ns\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@dparse-js-nsç@/fun/cljs.closure/parse-js-ns.html\" [f]\n (\"ç@adeps/parse-js-nsç@/ns/org.clojure/clojurescript/1.10.312/cljs.js-deps.html#_parse-js-ns\" (\"ç@aline-seqç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_line-seq\" (\"ç@aio/readerç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_reader\" f))))\n\n\"ç@_src-file->target-file\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" ^File \"ç@dsrc-file->target-fileç@/fun/cljs.closure/src-file-%3Etarget-file.html\"\n ([src]\n (\"ç@psrc-file->target-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_src-file-%3Etarget-file\" src\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" \"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"\n (:options @\"ç@aenv/*compiler*ç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_*compiler*\"))))\n ([src opts]\n (\"ç@autil/to-target-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_to-target-file\"\n (\"ç@awhenç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_when\" (:output-dir opts)\n (\"ç@autil/output-directoryç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_output-directory\" opts))\n (\"ç@aana/parse-nsç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_parse-ns\" src))))\n\n\"ç@_src-file->goog-require\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" ^String \"ç@dsrc-file->goog-requireç@/fun/cljs.closure/src-file-%3Egoog-require.html\"\n ([src] (\"ç@psrc-file->goog-requireç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_src-file-%3Egoog-require\" src {:wrap true}))\n ([src {:keys [wrap all-provides macros-ns] :as options}]\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [goog-ns\n (\"ç@acaseç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_case\" (\"ç@autil/extç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_ext\" src)\n (\"cljs\" \"cljc\") (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [ns-str (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" (\"ç@acomp/mungeç@/ns/org.clojure/clojurescript/1.10.312/cljs.compiler.html#_munge\" (:ns (\"ç@aana/parse-nsç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_parse-ns\" src))))]\n (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" ns-str\n (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" macros-ns (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" (\"çç@.endsWithç@docs.oracle.com/javase/8/docs/api/java/lang/String.html#endsWith-java.lang.String-\" ns-str \"$macros\")))\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"$macros\")))\n \"js\" (\"ç@acond->ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_cond-%3E\" (:provides (\"ç@pparse-js-nsç@/ns/org.clojure/clojurescript/1.10.312/cljs.closure.html#_parse-js-ns\" src))\n (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" all-provides) \"ç@afirstç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_first\")\n (throw\n (IllegalArgumentException.\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"Can't create goog.require expression for \" src))))]\n (if (\"ç@aandç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_and\" (\"ç@anotç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_not\" all-provides) wrap)\n (if (:reload options)\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"goog.require(\\\"\" goog-ns \"\\\", true);\")\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"goog.require(\\\"\" goog-ns \"\\\");\"))\n (if (\"ç@avector?ç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_vector%3F\" goog-ns)\n goog-ns\n (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" goog-ns))))))\n\n\"ç@_aot-cache-core\"(\"ç@adefnç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_defn\" \"ç@daot-cache-coreç@/fun/cljs.closure/aot-cache-core.html\" []\n (\"ç@aletç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_let\" [base-path (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" \"src\" \"main\" \"cljs\" \"cljs\")\n src (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" base-path \"core.cljs\")\n dest (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" base-path \"core.aot.js\")\n cache (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" base-path \"core.cljs.cache.aot.edn\")\n tcache (\"ç@aio/fileç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.java.io.html#_file\" base-path \"core.cljs.cache.aot.json\")]\n (\"ç@autil/mkdirsç@/ns/org.clojure/clojurescript/1.10.312/cljs.util.html#_mkdirs\" dest)\n (\"ç@aenv/with-compiler-envç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_with-compiler-env\" (\"ç@aenv/default-compiler-envç@/ns/org.clojure/clojurescript/1.10.312/cljs.env.html#_default-compiler-env\" {:infer-externs true})\n (\"ç@acomp/compile-fileç@/ns/org.clojure/clojurescript/1.10.312/cljs.compiler.html#_compile-file\" src dest\n {:source-map true\n :source-map-url \"core.js.map\"\n :output-dir (\"ç@astrç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_str\" \"src\" File/separator \"main\" File/separator \"cljs\")})\n (\"ç@aana/write-analysis-cacheç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_write-analysis-cache\" 'cljs.core cache src)\n (\"ç@aana/write-analysis-cacheç@/ns/org.clojure/clojurescript/1.10.312/cljs.analyzer.html#_write-analysis-cache\" 'cljs.core tcache src))))\n\n(\"ç@acommentç@/ns/org.clojure/clojure/1.10.0-alpha4/clojure.core.html#_comment\"\n (time\n (do (aot-cache-core) nil))\n\n (time\n (do (ana/analyze-file \"cljs/core.cljs\") nil))\n\n (println (build '[(ns hello.core)\n (defn ^{:export greet} greet [n] (str \"Hola \" n))\n (defn ^:export sum [xs] 42)]\n {:optimizations :simple :pretty-print true}))\n\n ;; build a project with optimizations\n (build \"samples/hello/src\" {:optimizations :advanced})\n (build \"samples/hello/src\" {:optimizations :advanced :output-to \"samples/hello/hello.js\"})\n ;; open 'samples/hello/hello.html' to see the result in action\n\n ;; build a project without optimizations\n (build \"samples/hello/src\" {:output-dir \"samples/hello/out\" :output-to \"samples/hello/hello.js\"})\n ;; open 'samples/hello/hello-dev.html' to see the result in action\n ;; notice how each script was loaded individually\n\n ;; build unoptimized from raw ClojureScript\n (build '[(ns hello.core)\n (defn ^{:export greet} greet [n] (str \"Hola \" n))\n (defn ^:export sum [xs] 42)]\n {:output-dir \"samples/hello/out\" :output-to \"samples/hello/hello.js\"})\n ;; open 'samples/hello/hello-dev.html' to see the result in action\n )\n");