@atomist/clj-editors
Version:
We build a node module `@atomist/clj-editors` here. This allows us to construct clojure editors using `rewrite-cljs`. After adding this dependency, the node application will have access to javascript functions transpiled from clojurescript.
1,445 lines (1,237 loc) • 288 kB
JavaScript
// Compiled by ClojureScript 1.9.946 {:target :nodejs}
goog.provide('cljs.core.async');
goog.require('cljs.core');
goog.require('cljs.core.async.impl.protocols');
goog.require('cljs.core.async.impl.channels');
goog.require('cljs.core.async.impl.buffers');
goog.require('cljs.core.async.impl.timers');
goog.require('cljs.core.async.impl.dispatch');
goog.require('cljs.core.async.impl.ioc_helpers');
cljs.core.async.fn_handler = (function cljs$core$async$fn_handler(var_args){
var G__12381 = arguments.length;
switch (G__12381) {
case 1:
return cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
break;
case 2:
return cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
break;
default:
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
}
});
cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$1 = (function (f){
return cljs.core.async.fn_handler.call(null,f,true);
});
cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$2 = (function (f,blockable){
if(typeof cljs.core.async.t_cljs$core$async12382 !== 'undefined'){
} else {
/**
* @constructor
* @implements {cljs.core.async.impl.protocols.Handler}
* @implements {cljs.core.IMeta}
* @implements {cljs.core.IWithMeta}
*/
cljs.core.async.t_cljs$core$async12382 = (function (f,blockable,meta12383){
this.f = f;
this.blockable = blockable;
this.meta12383 = meta12383;
this.cljs$lang$protocol_mask$partition0$ = 393216;
this.cljs$lang$protocol_mask$partition1$ = 0;
});
cljs.core.async.t_cljs$core$async12382.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_12384,meta12383__$1){
var self__ = this;
var _12384__$1 = this;
return (new cljs.core.async.t_cljs$core$async12382(self__.f,self__.blockable,meta12383__$1));
});
cljs.core.async.t_cljs$core$async12382.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_12384){
var self__ = this;
var _12384__$1 = this;
return self__.meta12383;
});
cljs.core.async.t_cljs$core$async12382.prototype.cljs$core$async$impl$protocols$Handler$ = cljs.core.PROTOCOL_SENTINEL;
cljs.core.async.t_cljs$core$async12382.prototype.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1 = (function (_){
var self__ = this;
var ___$1 = this;
return true;
});
cljs.core.async.t_cljs$core$async12382.prototype.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1 = (function (_){
var self__ = this;
var ___$1 = this;
return self__.blockable;
});
cljs.core.async.t_cljs$core$async12382.prototype.cljs$core$async$impl$protocols$Handler$commit$arity$1 = (function (_){
var self__ = this;
var ___$1 = this;
return self__.f;
});
cljs.core.async.t_cljs$core$async12382.getBasis = (function (){
return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"f","f",43394975,null),new cljs.core.Symbol(null,"blockable","blockable",-28395259,null),new cljs.core.Symbol(null,"meta12383","meta12383",264447517,null)], null);
});
cljs.core.async.t_cljs$core$async12382.cljs$lang$type = true;
cljs.core.async.t_cljs$core$async12382.cljs$lang$ctorStr = "cljs.core.async/t_cljs$core$async12382";
cljs.core.async.t_cljs$core$async12382.cljs$lang$ctorPrWriter = (function (this__8503__auto__,writer__8504__auto__,opt__8505__auto__){
return cljs.core._write.call(null,writer__8504__auto__,"cljs.core.async/t_cljs$core$async12382");
});
cljs.core.async.__GT_t_cljs$core$async12382 = (function cljs$core$async$__GT_t_cljs$core$async12382(f__$1,blockable__$1,meta12383){
return (new cljs.core.async.t_cljs$core$async12382(f__$1,blockable__$1,meta12383));
});
}
return (new cljs.core.async.t_cljs$core$async12382(f,blockable,cljs.core.PersistentArrayMap.EMPTY));
});
cljs.core.async.fn_handler.cljs$lang$maxFixedArity = 2;
/**
* Returns a fixed buffer of size n. When full, puts will block/park.
*/
cljs.core.async.buffer = (function cljs$core$async$buffer(n){
return cljs.core.async.impl.buffers.fixed_buffer.call(null,n);
});
/**
* Returns a buffer of size n. When full, puts will complete but
* val will be dropped (no transfer).
*/
cljs.core.async.dropping_buffer = (function cljs$core$async$dropping_buffer(n){
return cljs.core.async.impl.buffers.dropping_buffer.call(null,n);
});
/**
* Returns a buffer of size n. When full, puts will complete, and be
* buffered, but oldest elements in buffer will be dropped (not
* transferred).
*/
cljs.core.async.sliding_buffer = (function cljs$core$async$sliding_buffer(n){
return cljs.core.async.impl.buffers.sliding_buffer.call(null,n);
});
/**
* Returns true if a channel created with buff will never block. That is to say,
* puts into this buffer will never cause the buffer to be full.
*/
cljs.core.async.unblocking_buffer_QMARK_ = (function cljs$core$async$unblocking_buffer_QMARK_(buff){
if(!((buff == null))){
if((false) || ((cljs.core.PROTOCOL_SENTINEL === buff.cljs$core$async$impl$protocols$UnblockingBuffer$))){
return true;
} else {
if((!buff.cljs$lang$protocol_mask$partition$)){
return cljs.core.native_satisfies_QMARK_.call(null,cljs.core.async.impl.protocols.UnblockingBuffer,buff);
} else {
return false;
}
}
} else {
return cljs.core.native_satisfies_QMARK_.call(null,cljs.core.async.impl.protocols.UnblockingBuffer,buff);
}
});
/**
* Creates a channel with an optional buffer, an optional transducer (like (map f),
* (filter p) etc or a composition thereof), and an optional exception handler.
* If buf-or-n is a number, will create and use a fixed buffer of that size. If a
* transducer is supplied a buffer must be specified. ex-handler must be a
* fn of one argument - if an exception occurs during transformation it will be called
* with the thrown value as an argument, and any non-nil return value will be placed
* in the channel.
*/
cljs.core.async.chan = (function cljs$core$async$chan(var_args){
var G__12388 = arguments.length;
switch (G__12388) {
case 0:
return cljs.core.async.chan.cljs$core$IFn$_invoke$arity$0();
break;
case 1:
return cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
break;
case 2:
return cljs.core.async.chan.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
break;
case 3:
return cljs.core.async.chan.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
break;
default:
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
}
});
cljs.core.async.chan.cljs$core$IFn$_invoke$arity$0 = (function (){
return cljs.core.async.chan.call(null,null);
});
cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1 = (function (buf_or_n){
return cljs.core.async.chan.call(null,buf_or_n,null,null);
});
cljs.core.async.chan.cljs$core$IFn$_invoke$arity$2 = (function (buf_or_n,xform){
return cljs.core.async.chan.call(null,buf_or_n,xform,null);
});
cljs.core.async.chan.cljs$core$IFn$_invoke$arity$3 = (function (buf_or_n,xform,ex_handler){
var buf_or_n__$1 = ((cljs.core._EQ_.call(null,buf_or_n,(0)))?null:buf_or_n);
if(cljs.core.truth_(xform)){
if(cljs.core.truth_(buf_or_n__$1)){
} else {
throw (new Error(["Assert failed: ","buffer must be supplied when transducer is","\n","buf-or-n"].join('')));
}
} else {
}
return cljs.core.async.impl.channels.chan.call(null,((typeof buf_or_n__$1 === 'number')?cljs.core.async.buffer.call(null,buf_or_n__$1):buf_or_n__$1),xform,ex_handler);
});
cljs.core.async.chan.cljs$lang$maxFixedArity = 3;
/**
* Creates a promise channel with an optional transducer, and an optional
* exception-handler. A promise channel can take exactly one value that consumers
* will receive. Once full, puts complete but val is dropped (no transfer).
* Consumers will block until either a value is placed in the channel or the
* channel is closed. See chan for the semantics of xform and ex-handler.
*/
cljs.core.async.promise_chan = (function cljs$core$async$promise_chan(var_args){
var G__12391 = arguments.length;
switch (G__12391) {
case 0:
return cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$0();
break;
case 1:
return cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
break;
case 2:
return cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
break;
default:
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
}
});
cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$0 = (function (){
return cljs.core.async.promise_chan.call(null,null);
});
cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$1 = (function (xform){
return cljs.core.async.promise_chan.call(null,xform,null);
});
cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$2 = (function (xform,ex_handler){
return cljs.core.async.chan.call(null,cljs.core.async.impl.buffers.promise_buffer.call(null),xform,ex_handler);
});
cljs.core.async.promise_chan.cljs$lang$maxFixedArity = 2;
/**
* Returns a channel that will close after msecs
*/
cljs.core.async.timeout = (function cljs$core$async$timeout(msecs){
return cljs.core.async.impl.timers.timeout.call(null,msecs);
});
/**
* takes a val from port. Must be called inside a (go ...) block. Will
* return nil if closed. Will park if nothing is available.
* Returns true unless port is already closed
*/
cljs.core.async._LT__BANG_ = (function cljs$core$async$_LT__BANG_(port){
throw (new Error("<! used not in (go ...) block"));
});
/**
* Asynchronously takes a val from port, passing to fn1. Will pass nil
* if closed. If on-caller? (default true) is true, and value is
* immediately available, will call fn1 on calling thread.
* Returns nil.
*/
cljs.core.async.take_BANG_ = (function cljs$core$async$take_BANG_(var_args){
var G__12394 = arguments.length;
switch (G__12394) {
case 2:
return cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
break;
case 3:
return cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
break;
default:
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
}
});
cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$2 = (function (port,fn1){
return cljs.core.async.take_BANG_.call(null,port,fn1,true);
});
cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$3 = (function (port,fn1,on_caller_QMARK_){
var ret = cljs.core.async.impl.protocols.take_BANG_.call(null,port,cljs.core.async.fn_handler.call(null,fn1));
if(cljs.core.truth_(ret)){
var val_12396 = cljs.core.deref.call(null,ret);
if(cljs.core.truth_(on_caller_QMARK_)){
fn1.call(null,val_12396);
} else {
cljs.core.async.impl.dispatch.run.call(null,((function (val_12396,ret){
return (function (){
return fn1.call(null,val_12396);
});})(val_12396,ret))
);
}
} else {
}
return null;
});
cljs.core.async.take_BANG_.cljs$lang$maxFixedArity = 3;
cljs.core.async.nop = (function cljs$core$async$nop(_){
return null;
});
cljs.core.async.fhnop = cljs.core.async.fn_handler.call(null,cljs.core.async.nop);
/**
* puts a val into port. nil values are not allowed. Must be called
* inside a (go ...) block. Will park if no buffer space is available.
* Returns true unless port is already closed.
*/
cljs.core.async._GT__BANG_ = (function cljs$core$async$_GT__BANG_(port,val){
throw (new Error(">! used not in (go ...) block"));
});
/**
* Asynchronously puts a val into port, calling fn0 (if supplied) when
* complete. nil values are not allowed. Will throw if closed. If
* on-caller? (default true) is true, and the put is immediately
* accepted, will call fn0 on calling thread. Returns nil.
*/
cljs.core.async.put_BANG_ = (function cljs$core$async$put_BANG_(var_args){
var G__12398 = arguments.length;
switch (G__12398) {
case 2:
return cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
break;
case 3:
return cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
break;
case 4:
return cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));
break;
default:
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
}
});
cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2 = (function (port,val){
var temp__4655__auto__ = cljs.core.async.impl.protocols.put_BANG_.call(null,port,val,cljs.core.async.fhnop);
if(cljs.core.truth_(temp__4655__auto__)){
var ret = temp__4655__auto__;
return cljs.core.deref.call(null,ret);
} else {
return true;
}
});
cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$3 = (function (port,val,fn1){
return cljs.core.async.put_BANG_.call(null,port,val,fn1,true);
});
cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$4 = (function (port,val,fn1,on_caller_QMARK_){
var temp__4655__auto__ = cljs.core.async.impl.protocols.put_BANG_.call(null,port,val,cljs.core.async.fn_handler.call(null,fn1));
if(cljs.core.truth_(temp__4655__auto__)){
var retb = temp__4655__auto__;
var ret = cljs.core.deref.call(null,retb);
if(cljs.core.truth_(on_caller_QMARK_)){
fn1.call(null,ret);
} else {
cljs.core.async.impl.dispatch.run.call(null,((function (ret,retb,temp__4655__auto__){
return (function (){
return fn1.call(null,ret);
});})(ret,retb,temp__4655__auto__))
);
}
return ret;
} else {
return true;
}
});
cljs.core.async.put_BANG_.cljs$lang$maxFixedArity = 4;
cljs.core.async.close_BANG_ = (function cljs$core$async$close_BANG_(port){
return cljs.core.async.impl.protocols.close_BANG_.call(null,port);
});
cljs.core.async.random_array = (function cljs$core$async$random_array(n){
var a = (new Array(n));
var n__8825__auto___12400 = n;
var x_12401 = (0);
while(true){
if((x_12401 < n__8825__auto___12400)){
(a[x_12401] = (0));
var G__12402 = (x_12401 + (1));
x_12401 = G__12402;
continue;
} else {
}
break;
}
var i = (1);
while(true){
if(cljs.core._EQ_.call(null,i,n)){
return a;
} else {
var j = cljs.core.rand_int.call(null,i);
(a[i] = (a[j]));
(a[j] = i);
var G__12403 = (i + (1));
i = G__12403;
continue;
}
break;
}
});
cljs.core.async.alt_flag = (function cljs$core$async$alt_flag(){
var flag = cljs.core.atom.call(null,true);
if(typeof cljs.core.async.t_cljs$core$async12404 !== 'undefined'){
} else {
/**
* @constructor
* @implements {cljs.core.async.impl.protocols.Handler}
* @implements {cljs.core.IMeta}
* @implements {cljs.core.IWithMeta}
*/
cljs.core.async.t_cljs$core$async12404 = (function (flag,meta12405){
this.flag = flag;
this.meta12405 = meta12405;
this.cljs$lang$protocol_mask$partition0$ = 393216;
this.cljs$lang$protocol_mask$partition1$ = 0;
});
cljs.core.async.t_cljs$core$async12404.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = ((function (flag){
return (function (_12406,meta12405__$1){
var self__ = this;
var _12406__$1 = this;
return (new cljs.core.async.t_cljs$core$async12404(self__.flag,meta12405__$1));
});})(flag))
;
cljs.core.async.t_cljs$core$async12404.prototype.cljs$core$IMeta$_meta$arity$1 = ((function (flag){
return (function (_12406){
var self__ = this;
var _12406__$1 = this;
return self__.meta12405;
});})(flag))
;
cljs.core.async.t_cljs$core$async12404.prototype.cljs$core$async$impl$protocols$Handler$ = cljs.core.PROTOCOL_SENTINEL;
cljs.core.async.t_cljs$core$async12404.prototype.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1 = ((function (flag){
return (function (_){
var self__ = this;
var ___$1 = this;
return cljs.core.deref.call(null,self__.flag);
});})(flag))
;
cljs.core.async.t_cljs$core$async12404.prototype.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1 = ((function (flag){
return (function (_){
var self__ = this;
var ___$1 = this;
return true;
});})(flag))
;
cljs.core.async.t_cljs$core$async12404.prototype.cljs$core$async$impl$protocols$Handler$commit$arity$1 = ((function (flag){
return (function (_){
var self__ = this;
var ___$1 = this;
cljs.core.reset_BANG_.call(null,self__.flag,null);
return true;
});})(flag))
;
cljs.core.async.t_cljs$core$async12404.getBasis = ((function (flag){
return (function (){
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"flag","flag",-1565787888,null),new cljs.core.Symbol(null,"meta12405","meta12405",192443021,null)], null);
});})(flag))
;
cljs.core.async.t_cljs$core$async12404.cljs$lang$type = true;
cljs.core.async.t_cljs$core$async12404.cljs$lang$ctorStr = "cljs.core.async/t_cljs$core$async12404";
cljs.core.async.t_cljs$core$async12404.cljs$lang$ctorPrWriter = ((function (flag){
return (function (this__8503__auto__,writer__8504__auto__,opt__8505__auto__){
return cljs.core._write.call(null,writer__8504__auto__,"cljs.core.async/t_cljs$core$async12404");
});})(flag))
;
cljs.core.async.__GT_t_cljs$core$async12404 = ((function (flag){
return (function cljs$core$async$alt_flag_$___GT_t_cljs$core$async12404(flag__$1,meta12405){
return (new cljs.core.async.t_cljs$core$async12404(flag__$1,meta12405));
});})(flag))
;
}
return (new cljs.core.async.t_cljs$core$async12404(flag,cljs.core.PersistentArrayMap.EMPTY));
});
cljs.core.async.alt_handler = (function cljs$core$async$alt_handler(flag,cb){
if(typeof cljs.core.async.t_cljs$core$async12407 !== 'undefined'){
} else {
/**
* @constructor
* @implements {cljs.core.async.impl.protocols.Handler}
* @implements {cljs.core.IMeta}
* @implements {cljs.core.IWithMeta}
*/
cljs.core.async.t_cljs$core$async12407 = (function (flag,cb,meta12408){
this.flag = flag;
this.cb = cb;
this.meta12408 = meta12408;
this.cljs$lang$protocol_mask$partition0$ = 393216;
this.cljs$lang$protocol_mask$partition1$ = 0;
});
cljs.core.async.t_cljs$core$async12407.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_12409,meta12408__$1){
var self__ = this;
var _12409__$1 = this;
return (new cljs.core.async.t_cljs$core$async12407(self__.flag,self__.cb,meta12408__$1));
});
cljs.core.async.t_cljs$core$async12407.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_12409){
var self__ = this;
var _12409__$1 = this;
return self__.meta12408;
});
cljs.core.async.t_cljs$core$async12407.prototype.cljs$core$async$impl$protocols$Handler$ = cljs.core.PROTOCOL_SENTINEL;
cljs.core.async.t_cljs$core$async12407.prototype.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1 = (function (_){
var self__ = this;
var ___$1 = this;
return cljs.core.async.impl.protocols.active_QMARK_.call(null,self__.flag);
});
cljs.core.async.t_cljs$core$async12407.prototype.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1 = (function (_){
var self__ = this;
var ___$1 = this;
return true;
});
cljs.core.async.t_cljs$core$async12407.prototype.cljs$core$async$impl$protocols$Handler$commit$arity$1 = (function (_){
var self__ = this;
var ___$1 = this;
cljs.core.async.impl.protocols.commit.call(null,self__.flag);
return self__.cb;
});
cljs.core.async.t_cljs$core$async12407.getBasis = (function (){
return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"flag","flag",-1565787888,null),new cljs.core.Symbol(null,"cb","cb",-2064487928,null),new cljs.core.Symbol(null,"meta12408","meta12408",1113914571,null)], null);
});
cljs.core.async.t_cljs$core$async12407.cljs$lang$type = true;
cljs.core.async.t_cljs$core$async12407.cljs$lang$ctorStr = "cljs.core.async/t_cljs$core$async12407";
cljs.core.async.t_cljs$core$async12407.cljs$lang$ctorPrWriter = (function (this__8503__auto__,writer__8504__auto__,opt__8505__auto__){
return cljs.core._write.call(null,writer__8504__auto__,"cljs.core.async/t_cljs$core$async12407");
});
cljs.core.async.__GT_t_cljs$core$async12407 = (function cljs$core$async$alt_handler_$___GT_t_cljs$core$async12407(flag__$1,cb__$1,meta12408){
return (new cljs.core.async.t_cljs$core$async12407(flag__$1,cb__$1,meta12408));
});
}
return (new cljs.core.async.t_cljs$core$async12407(flag,cb,cljs.core.PersistentArrayMap.EMPTY));
});
/**
* returns derefable [val port] if immediate, nil if enqueued
*/
cljs.core.async.do_alts = (function cljs$core$async$do_alts(fret,ports,opts){
var flag = cljs.core.async.alt_flag.call(null);
var n = cljs.core.count.call(null,ports);
var idxs = cljs.core.async.random_array.call(null,n);
var priority = new cljs.core.Keyword(null,"priority","priority",1431093715).cljs$core$IFn$_invoke$arity$1(opts);
var ret = (function (){var i = (0);
while(true){
if((i < n)){
var idx = (cljs.core.truth_(priority)?i:(idxs[i]));
var port = cljs.core.nth.call(null,ports,idx);
var wport = ((cljs.core.vector_QMARK_.call(null,port))?port.call(null,(0)):null);
var vbox = (cljs.core.truth_(wport)?(function (){var val = port.call(null,(1));
return cljs.core.async.impl.protocols.put_BANG_.call(null,wport,val,cljs.core.async.alt_handler.call(null,flag,((function (i,val,idx,port,wport,flag,n,idxs,priority){
return (function (p1__12410_SHARP_){
return fret.call(null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [p1__12410_SHARP_,wport], null));
});})(i,val,idx,port,wport,flag,n,idxs,priority))
));
})():cljs.core.async.impl.protocols.take_BANG_.call(null,port,cljs.core.async.alt_handler.call(null,flag,((function (i,idx,port,wport,flag,n,idxs,priority){
return (function (p1__12411_SHARP_){
return fret.call(null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [p1__12411_SHARP_,port], null));
});})(i,idx,port,wport,flag,n,idxs,priority))
)));
if(cljs.core.truth_(vbox)){
return cljs.core.async.impl.channels.box.call(null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.deref.call(null,vbox),(function (){var or__7878__auto__ = wport;
if(cljs.core.truth_(or__7878__auto__)){
return or__7878__auto__;
} else {
return port;
}
})()], null));
} else {
var G__12412 = (i + (1));
i = G__12412;
continue;
}
} else {
return null;
}
break;
}
})();
var or__7878__auto__ = ret;
if(cljs.core.truth_(or__7878__auto__)){
return or__7878__auto__;
} else {
if(cljs.core.contains_QMARK_.call(null,opts,new cljs.core.Keyword(null,"default","default",-1987822328))){
var temp__4657__auto__ = (function (){var and__7866__auto__ = cljs.core.async.impl.protocols.active_QMARK_.call(null,flag);
if(cljs.core.truth_(and__7866__auto__)){
return cljs.core.async.impl.protocols.commit.call(null,flag);
} else {
return and__7866__auto__;
}
})();
if(cljs.core.truth_(temp__4657__auto__)){
var got = temp__4657__auto__;
return cljs.core.async.impl.channels.box.call(null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"default","default",-1987822328).cljs$core$IFn$_invoke$arity$1(opts),new cljs.core.Keyword(null,"default","default",-1987822328)], null));
} else {
return null;
}
} else {
return null;
}
}
});
/**
* Completes at most one of several channel operations. Must be called
* inside a (go ...) block. ports is a vector of channel endpoints,
* which can be either a channel to take from or a vector of
* [channel-to-put-to val-to-put], in any combination. Takes will be
* made as if by <!, and puts will be made as if by >!. Unless
* the :priority option is true, if more than one port operation is
* ready a non-deterministic choice will be made. If no operation is
* ready and a :default value is supplied, [default-val :default] will
* be returned, otherwise alts! will park until the first operation to
* become ready completes. Returns [val port] of the completed
* operation, where val is the value taken for takes, and a
* boolean (true unless already closed, as per put!) for puts.
*
* opts are passed as :key val ... Supported options:
*
* :default val - the value to use if none of the operations are immediately ready
* :priority true - (default nil) when true, the operations will be tried in order.
*
* Note: there is no guarantee that the port exps or val exprs will be
* used, nor in what order should they be, so they should not be
* depended upon for side effects.
*/
cljs.core.async.alts_BANG_ = (function cljs$core$async$alts_BANG_(var_args){
var args__9056__auto__ = [];
var len__9049__auto___12418 = arguments.length;
var i__9050__auto___12419 = (0);
while(true){
if((i__9050__auto___12419 < len__9049__auto___12418)){
args__9056__auto__.push((arguments[i__9050__auto___12419]));
var G__12420 = (i__9050__auto___12419 + (1));
i__9050__auto___12419 = G__12420;
continue;
} else {
}
break;
}
var argseq__9057__auto__ = ((((1) < args__9056__auto__.length))?(new cljs.core.IndexedSeq(args__9056__auto__.slice((1)),(0),null)):null);
return cljs.core.async.alts_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__9057__auto__);
});
cljs.core.async.alts_BANG_.cljs$core$IFn$_invoke$arity$variadic = (function (ports,p__12415){
var map__12416 = p__12415;
var map__12416__$1 = ((((!((map__12416 == null)))?((((map__12416.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__12416.cljs$core$ISeq$)))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__12416):map__12416);
var opts = map__12416__$1;
throw (new Error("alts! used not in (go ...) block"));
});
cljs.core.async.alts_BANG_.cljs$lang$maxFixedArity = (1);
cljs.core.async.alts_BANG_.cljs$lang$applyTo = (function (seq12413){
var G__12414 = cljs.core.first.call(null,seq12413);
var seq12413__$1 = cljs.core.next.call(null,seq12413);
return cljs.core.async.alts_BANG_.cljs$core$IFn$_invoke$arity$variadic(G__12414,seq12413__$1);
});
/**
* Puts a val into port if it's possible to do so immediately.
* nil values are not allowed. Never blocks. Returns true if offer succeeds.
*/
cljs.core.async.offer_BANG_ = (function cljs$core$async$offer_BANG_(port,val){
var ret = cljs.core.async.impl.protocols.put_BANG_.call(null,port,val,cljs.core.async.fn_handler.call(null,cljs.core.async.nop,false));
if(cljs.core.truth_(ret)){
return cljs.core.deref.call(null,ret);
} else {
return null;
}
});
/**
* Takes a val from port if it's possible to do so immediately.
* Never blocks. Returns value if successful, nil otherwise.
*/
cljs.core.async.poll_BANG_ = (function cljs$core$async$poll_BANG_(port){
var ret = cljs.core.async.impl.protocols.take_BANG_.call(null,port,cljs.core.async.fn_handler.call(null,cljs.core.async.nop,false));
if(cljs.core.truth_(ret)){
return cljs.core.deref.call(null,ret);
} else {
return null;
}
});
/**
* Takes elements from the from channel and supplies them to the to
* channel. By default, the to channel will be closed when the from
* channel closes, but can be determined by the close? parameter. Will
* stop consuming the from channel if the to channel closes
*/
cljs.core.async.pipe = (function cljs$core$async$pipe(var_args){
var G__12422 = arguments.length;
switch (G__12422) {
case 2:
return cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
break;
case 3:
return cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
break;
default:
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
}
});
cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$2 = (function (from,to){
return cljs.core.async.pipe.call(null,from,to,true);
});
cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$3 = (function (from,to,close_QMARK_){
var c__12335__auto___12468 = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (c__12335__auto___12468){
return (function (){
var f__12336__auto__ = (function (){var switch__12169__auto__ = ((function (c__12335__auto___12468){
return (function (state_12446){
var state_val_12447 = (state_12446[(1)]);
if((state_val_12447 === (7))){
var inst_12442 = (state_12446[(2)]);
var state_12446__$1 = state_12446;
var statearr_12448_12469 = state_12446__$1;
(statearr_12448_12469[(2)] = inst_12442);
(statearr_12448_12469[(1)] = (3));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12447 === (1))){
var state_12446__$1 = state_12446;
var statearr_12449_12470 = state_12446__$1;
(statearr_12449_12470[(2)] = null);
(statearr_12449_12470[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12447 === (4))){
var inst_12425 = (state_12446[(7)]);
var inst_12425__$1 = (state_12446[(2)]);
var inst_12426 = (inst_12425__$1 == null);
var state_12446__$1 = (function (){var statearr_12450 = state_12446;
(statearr_12450[(7)] = inst_12425__$1);
return statearr_12450;
})();
if(cljs.core.truth_(inst_12426)){
var statearr_12451_12471 = state_12446__$1;
(statearr_12451_12471[(1)] = (5));
} else {
var statearr_12452_12472 = state_12446__$1;
(statearr_12452_12472[(1)] = (6));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12447 === (13))){
var state_12446__$1 = state_12446;
var statearr_12453_12473 = state_12446__$1;
(statearr_12453_12473[(2)] = null);
(statearr_12453_12473[(1)] = (14));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12447 === (6))){
var inst_12425 = (state_12446[(7)]);
var state_12446__$1 = state_12446;
return cljs.core.async.impl.ioc_helpers.put_BANG_.call(null,state_12446__$1,(11),to,inst_12425);
} else {
if((state_val_12447 === (3))){
var inst_12444 = (state_12446[(2)]);
var state_12446__$1 = state_12446;
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_12446__$1,inst_12444);
} else {
if((state_val_12447 === (12))){
var state_12446__$1 = state_12446;
var statearr_12454_12474 = state_12446__$1;
(statearr_12454_12474[(2)] = null);
(statearr_12454_12474[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12447 === (2))){
var state_12446__$1 = state_12446;
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_12446__$1,(4),from);
} else {
if((state_val_12447 === (11))){
var inst_12435 = (state_12446[(2)]);
var state_12446__$1 = state_12446;
if(cljs.core.truth_(inst_12435)){
var statearr_12455_12475 = state_12446__$1;
(statearr_12455_12475[(1)] = (12));
} else {
var statearr_12456_12476 = state_12446__$1;
(statearr_12456_12476[(1)] = (13));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12447 === (9))){
var state_12446__$1 = state_12446;
var statearr_12457_12477 = state_12446__$1;
(statearr_12457_12477[(2)] = null);
(statearr_12457_12477[(1)] = (10));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12447 === (5))){
var state_12446__$1 = state_12446;
if(cljs.core.truth_(close_QMARK_)){
var statearr_12458_12478 = state_12446__$1;
(statearr_12458_12478[(1)] = (8));
} else {
var statearr_12459_12479 = state_12446__$1;
(statearr_12459_12479[(1)] = (9));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12447 === (14))){
var inst_12440 = (state_12446[(2)]);
var state_12446__$1 = state_12446;
var statearr_12460_12480 = state_12446__$1;
(statearr_12460_12480[(2)] = inst_12440);
(statearr_12460_12480[(1)] = (7));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12447 === (10))){
var inst_12432 = (state_12446[(2)]);
var state_12446__$1 = state_12446;
var statearr_12461_12481 = state_12446__$1;
(statearr_12461_12481[(2)] = inst_12432);
(statearr_12461_12481[(1)] = (7));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12447 === (8))){
var inst_12429 = cljs.core.async.close_BANG_.call(null,to);
var state_12446__$1 = state_12446;
var statearr_12462_12482 = state_12446__$1;
(statearr_12462_12482[(2)] = inst_12429);
(statearr_12462_12482[(1)] = (10));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
return null;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
});})(c__12335__auto___12468))
;
return ((function (switch__12169__auto__,c__12335__auto___12468){
return (function() {
var cljs$core$async$state_machine__12170__auto__ = null;
var cljs$core$async$state_machine__12170__auto____0 = (function (){
var statearr_12463 = [null,null,null,null,null,null,null,null];
(statearr_12463[(0)] = cljs$core$async$state_machine__12170__auto__);
(statearr_12463[(1)] = (1));
return statearr_12463;
});
var cljs$core$async$state_machine__12170__auto____1 = (function (state_12446){
while(true){
var ret_value__12171__auto__ = (function (){try{while(true){
var result__12172__auto__ = switch__12169__auto__.call(null,state_12446);
if(cljs.core.keyword_identical_QMARK_.call(null,result__12172__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__12172__auto__;
}
break;
}
}catch (e12464){if((e12464 instanceof Object)){
var ex__12173__auto__ = e12464;
var statearr_12465_12483 = state_12446;
(statearr_12465_12483[(5)] = ex__12173__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_12446);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e12464;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__12171__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__12484 = state_12446;
state_12446 = G__12484;
continue;
} else {
return ret_value__12171__auto__;
}
break;
}
});
cljs$core$async$state_machine__12170__auto__ = function(state_12446){
switch(arguments.length){
case 0:
return cljs$core$async$state_machine__12170__auto____0.call(this);
case 1:
return cljs$core$async$state_machine__12170__auto____1.call(this,state_12446);
}
throw(new Error('Invalid arity: ' + (arguments.length - 1)));
};
cljs$core$async$state_machine__12170__auto__.cljs$core$IFn$_invoke$arity$0 = cljs$core$async$state_machine__12170__auto____0;
cljs$core$async$state_machine__12170__auto__.cljs$core$IFn$_invoke$arity$1 = cljs$core$async$state_machine__12170__auto____1;
return cljs$core$async$state_machine__12170__auto__;
})()
;})(switch__12169__auto__,c__12335__auto___12468))
})();
var state__12337__auto__ = (function (){var statearr_12466 = f__12336__auto__.call(null);
(statearr_12466[(6)] = c__12335__auto___12468);
return statearr_12466;
})();
return cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped.call(null,state__12337__auto__);
});})(c__12335__auto___12468))
);
return to;
});
cljs.core.async.pipe.cljs$lang$maxFixedArity = 3;
cljs.core.async.pipeline_STAR_ = (function cljs$core$async$pipeline_STAR_(n,to,xf,from,close_QMARK_,ex_handler,type){
if((n > (0))){
} else {
throw (new Error("Assert failed: (pos? n)"));
}
var jobs = cljs.core.async.chan.call(null,n);
var results = cljs.core.async.chan.call(null,n);
var process = ((function (jobs,results){
return (function (p__12485){
var vec__12486 = p__12485;
var v = cljs.core.nth.call(null,vec__12486,(0),null);
var p = cljs.core.nth.call(null,vec__12486,(1),null);
var job = vec__12486;
if((job == null)){
cljs.core.async.close_BANG_.call(null,results);
return null;
} else {
var res = cljs.core.async.chan.call(null,(1),xf,ex_handler);
var c__12335__auto___12657 = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (c__12335__auto___12657,res,vec__12486,v,p,job,jobs,results){
return (function (){
var f__12336__auto__ = (function (){var switch__12169__auto__ = ((function (c__12335__auto___12657,res,vec__12486,v,p,job,jobs,results){
return (function (state_12493){
var state_val_12494 = (state_12493[(1)]);
if((state_val_12494 === (1))){
var state_12493__$1 = state_12493;
return cljs.core.async.impl.ioc_helpers.put_BANG_.call(null,state_12493__$1,(2),res,v);
} else {
if((state_val_12494 === (2))){
var inst_12490 = (state_12493[(2)]);
var inst_12491 = cljs.core.async.close_BANG_.call(null,res);
var state_12493__$1 = (function (){var statearr_12495 = state_12493;
(statearr_12495[(7)] = inst_12490);
return statearr_12495;
})();
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_12493__$1,inst_12491);
} else {
return null;
}
}
});})(c__12335__auto___12657,res,vec__12486,v,p,job,jobs,results))
;
return ((function (switch__12169__auto__,c__12335__auto___12657,res,vec__12486,v,p,job,jobs,results){
return (function() {
var cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__ = null;
var cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____0 = (function (){
var statearr_12496 = [null,null,null,null,null,null,null,null];
(statearr_12496[(0)] = cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__);
(statearr_12496[(1)] = (1));
return statearr_12496;
});
var cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____1 = (function (state_12493){
while(true){
var ret_value__12171__auto__ = (function (){try{while(true){
var result__12172__auto__ = switch__12169__auto__.call(null,state_12493);
if(cljs.core.keyword_identical_QMARK_.call(null,result__12172__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__12172__auto__;
}
break;
}
}catch (e12497){if((e12497 instanceof Object)){
var ex__12173__auto__ = e12497;
var statearr_12498_12658 = state_12493;
(statearr_12498_12658[(5)] = ex__12173__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_12493);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e12497;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__12171__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__12659 = state_12493;
state_12493 = G__12659;
continue;
} else {
return ret_value__12171__auto__;
}
break;
}
});
cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__ = function(state_12493){
switch(arguments.length){
case 0:
return cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____0.call(this);
case 1:
return cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____1.call(this,state_12493);
}
throw(new Error('Invalid arity: ' + (arguments.length - 1)));
};
cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__.cljs$core$IFn$_invoke$arity$0 = cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____0;
cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__.cljs$core$IFn$_invoke$arity$1 = cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____1;
return cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__;
})()
;})(switch__12169__auto__,c__12335__auto___12657,res,vec__12486,v,p,job,jobs,results))
})();
var state__12337__auto__ = (function (){var statearr_12499 = f__12336__auto__.call(null);
(statearr_12499[(6)] = c__12335__auto___12657);
return statearr_12499;
})();
return cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped.call(null,state__12337__auto__);
});})(c__12335__auto___12657,res,vec__12486,v,p,job,jobs,results))
);
cljs.core.async.put_BANG_.call(null,p,res);
return true;
}
});})(jobs,results))
;
var async = ((function (jobs,results,process){
return (function (p__12500){
var vec__12501 = p__12500;
var v = cljs.core.nth.call(null,vec__12501,(0),null);
var p = cljs.core.nth.call(null,vec__12501,(1),null);
var job = vec__12501;
if((job == null)){
cljs.core.async.close_BANG_.call(null,results);
return null;
} else {
var res = cljs.core.async.chan.call(null,(1));
xf.call(null,v,res);
cljs.core.async.put_BANG_.call(null,p,res);
return true;
}
});})(jobs,results,process))
;
var n__8825__auto___12660 = n;
var __12661 = (0);
while(true){
if((__12661 < n__8825__auto___12660)){
var G__12504_12662 = type;
var G__12504_12663__$1 = (((G__12504_12662 instanceof cljs.core.Keyword))?G__12504_12662.fqn:null);
switch (G__12504_12663__$1) {
case "compute":
var c__12335__auto___12665 = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (__12661,c__12335__auto___12665,G__12504_12662,G__12504_12663__$1,n__8825__auto___12660,jobs,results,process,async){
return (function (){
var f__12336__auto__ = (function (){var switch__12169__auto__ = ((function (__12661,c__12335__auto___12665,G__12504_12662,G__12504_12663__$1,n__8825__auto___12660,jobs,results,process,async){
return (function (state_12517){
var state_val_12518 = (state_12517[(1)]);
if((state_val_12518 === (1))){
var state_12517__$1 = state_12517;
var statearr_12519_12666 = state_12517__$1;
(statearr_12519_12666[(2)] = null);
(statearr_12519_12666[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12518 === (2))){
var state_12517__$1 = state_12517;
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_12517__$1,(4),jobs);
} else {
if((state_val_12518 === (3))){
var inst_12515 = (state_12517[(2)]);
var state_12517__$1 = state_12517;
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_12517__$1,inst_12515);
} else {
if((state_val_12518 === (4))){
var inst_12507 = (state_12517[(2)]);
var inst_12508 = process.call(null,inst_12507);
var state_12517__$1 = state_12517;
if(cljs.core.truth_(inst_12508)){
var statearr_12520_12667 = state_12517__$1;
(statearr_12520_12667[(1)] = (5));
} else {
var statearr_12521_12668 = state_12517__$1;
(statearr_12521_12668[(1)] = (6));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12518 === (5))){
var state_12517__$1 = state_12517;
var statearr_12522_12669 = state_12517__$1;
(statearr_12522_12669[(2)] = null);
(statearr_12522_12669[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12518 === (6))){
var state_12517__$1 = state_12517;
var statearr_12523_12670 = state_12517__$1;
(statearr_12523_12670[(2)] = null);
(statearr_12523_12670[(1)] = (7));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12518 === (7))){
var inst_12513 = (state_12517[(2)]);
var state_12517__$1 = state_12517;
var statearr_12524_12671 = state_12517__$1;
(statearr_12524_12671[(2)] = inst_12513);
(statearr_12524_12671[(1)] = (3));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
return null;
}
}
}
}
}
}
}
});})(__12661,c__12335__auto___12665,G__12504_12662,G__12504_12663__$1,n__8825__auto___12660,jobs,results,process,async))
;
return ((function (__12661,switch__12169__auto__,c__12335__auto___12665,G__12504_12662,G__12504_12663__$1,n__8825__auto___12660,jobs,results,process,async){
return (function() {
var cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__ = null;
var cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____0 = (function (){
var statearr_12525 = [null,null,null,null,null,null,null];
(statearr_12525[(0)] = cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__);
(statearr_12525[(1)] = (1));
return statearr_12525;
});
var cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____1 = (function (state_12517){
while(true){
var ret_value__12171__auto__ = (function (){try{while(true){
var result__12172__auto__ = switch__12169__auto__.call(null,state_12517);
if(cljs.core.keyword_identical_QMARK_.call(null,result__12172__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__12172__auto__;
}
break;
}
}catch (e12526){if((e12526 instanceof Object)){
var ex__12173__auto__ = e12526;
var statearr_12527_12672 = state_12517;
(statearr_12527_12672[(5)] = ex__12173__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_12517);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e12526;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__12171__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__12673 = state_12517;
state_12517 = G__12673;
continue;
} else {
return ret_value__12171__auto__;
}
break;
}
});
cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__ = function(state_12517){
switch(arguments.length){
case 0:
return cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____0.call(this);
case 1:
return cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____1.call(this,state_12517);
}
throw(new Error('Invalid arity: ' + (arguments.length - 1)));
};
cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__.cljs$core$IFn$_invoke$arity$0 = cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____0;
cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__.cljs$core$IFn$_invoke$arity$1 = cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____1;
return cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__;
})()
;})(__12661,switch__12169__auto__,c__12335__auto___12665,G__12504_12662,G__12504_12663__$1,n__8825__auto___12660,jobs,results,process,async))
})();
var state__12337__auto__ = (function (){var statearr_12528 = f__12336__auto__.call(null);
(statearr_12528[(6)] = c__12335__auto___12665);
return statearr_12528;
})();
return cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped.call(null,state__12337__auto__);
});})(__12661,c__12335__auto___12665,G__12504_12662,G__12504_12663__$1,n__8825__auto___12660,jobs,results,process,async))
);
break;
case "async":
var c__12335__auto___12674 = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (__12661,c__12335__auto___12674,G__12504_12662,G__12504_12663__$1,n__8825__auto___12660,jobs,results,process,async){
return (function (){
var f__12336__auto__ = (function (){var switch__12169__auto__ = ((function (__12661,c__12335__auto___12674,G__12504_12662,G__12504_12663__$1,n__8825__auto___12660,jobs,results,process,async){
return (function (state_12541){
var state_val_12542 = (state_12541[(1)]);
if((state_val_12542 === (1))){
var state_12541__$1 = state_12541;
var statearr_12543_12675 = state_12541__$1;
(statearr_12543_12675[(2)] = null);
(statearr_12543_12675[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12542 === (2))){
var state_12541__$1 = state_12541;
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_12541__$1,(4),jobs);
} else {
if((state_val_12542 === (3))){
var inst_12539 = (state_12541[(2)]);
var state_12541__$1 = state_12541;
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_12541__$1,inst_12539);
} else {
if((state_val_12542 === (4))){
var inst_12531 = (state_12541[(2)]);
var inst_12532 = async.call(null,inst_12531);
var state_12541__$1 = state_12541;
if(cljs.core.truth_(inst_12532)){
var statearr_12544_12676 = state_12541__$1;
(statearr_12544_12676[(1)] = (5));
} else {
var statearr_12545_12677 = state_12541__$1;
(statearr_12545_12677[(1)] = (6));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12542 === (5))){
var state_12541__$1 = state_12541;
var statearr_12546_12678 = state_12541__$1;
(statearr_12546_12678[(2)] = null);
(statearr_12546_12678[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12542 === (6))){
var state_12541__$1 = state_12541;
var statearr_12547_12679 = state_12541__$1;
(statearr_12547_12679[(2)] = null);
(statearr_12547_12679[(1)] = (7));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_12542 === (7))){
var inst_12537 = (state_12541[(2)]);
var state_12541__$1 = state_12541;
var statearr_12548_12680 = state_12541__$1;
(statearr_12548_12680[(2)] = inst_12537);
(statearr_12548_12680[(1)] = (3));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
return null;
}
}
}
}
}
}
}
});})(__12661,c__12335__auto___12674,G__12504_12662,G__12504_12663__$1,n__8825__auto___12660,jobs,results,process,async))
;
return ((function (__12661,switch__12169__auto__,c__12335__auto___12674,G__12504_12662,G__12504_12663__$1,n__8825__auto___12660,jobs,results,process,async){
return (function() {
var cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__ = null;
var cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____0 = (function (){
var statearr_12549 = [null,null,null,null,null,null,null];
(statearr_12549[(0)] = cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__);
(statearr_12549[(1)] = (1));
return statearr_12549;
});
var cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____1 = (function (state_12541){
while(true){
var ret_value__12171__auto__ = (function (){try{while(true){
var result__12172__auto__ = switch__12169__auto__.call(null,state_12541);
if(cljs.core.keyword_identical_QMARK_.call(null,result__12172__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__12172__auto__;
}
break;
}
}catch (e12550){if((e12550 instanceof Object)){
var ex__12173__auto__ = e12550;
var statearr_12551_12681 = state_12541;
(statearr_12551_12681[(5)] = ex__12173__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_12541);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e12550;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__12171__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__12682 = state_12541;
state_12541 = G__12682;
continue;
} else {
return ret_value__12171__auto__;
}
break;
}
});
cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__ = function(state_12541){
switch(arguments.length){
case 0:
return cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____0.call(this);
case 1:
return cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____1.call(this,state_12541);
}
throw(new Error('Invalid arity: ' + (arguments.length - 1)));
};
cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__.cljs$core$IFn$_invoke$arity$0 = cljs$core$async$pipeline_STAR__$_state_machine__12170__auto____0;
cljs$core$async$pipeline_STAR__$_state_machine__12170__auto__.cljs$core$IFn$_invoke$arity$1 = cljs$core$async$pipeline_ST