Created
August 6, 2011 05:34
-
-
Save fmw/1129048 to your computer and use it in GitHub Desktop.
core.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
goog.provide('cljs.core'); | |
goog.require('goog.string'); | |
goog.require('goog.string.StringBuffer'); | |
goog.require('goog.object'); | |
goog.require('goog.array'); | |
/** | |
* Internal - do not use! | |
*/ | |
cljs.core.truth_ = (function truth_(x){ | |
return (x != null && x !== false); | |
}); | |
/** | |
* Internal - do not use! | |
*/ | |
cljs.core.type_satisfies_ = (function type_satisfies_(p,x){ | |
var or__3576__auto____1991 = (p[goog.typeOf.call(null,x)]); | |
if(cljs.core.truth_(or__3576__auto____1991)) | |
{return or__3576__auto____1991; | |
} else | |
{var or__3576__auto____1992 = (p["_"]); | |
if(cljs.core.truth_(or__3576__auto____1992)) | |
{return or__3576__auto____1992; | |
} else | |
{return false; | |
} | |
} | |
}); | |
/** | |
* When compiled for a command-line target, whatever | |
* function *main-fn* is set to will be called with the command-line | |
* argv as arguments | |
*/ | |
cljs.core._STAR_main_cli_fn_STAR_ = null; | |
/** | |
* Returns a javascript array, cloned from the passed in array | |
*/ | |
cljs.core.aclone = (function aclone(array_like){ | |
return Array.prototype.slice.call(array_like); | |
}); | |
/** | |
* Creates a new javascript array. | |
* @param {...*} var_args | |
*/ | |
cljs.core.array = (function array(var_args){ | |
return Array.prototype.slice.call(arguments); | |
}); | |
/** | |
* Returns the value at the index. | |
*/ | |
cljs.core.aget = (function aget(array,i){ | |
return array[i]; | |
}); | |
/** | |
* Sets the value at the index. | |
*/ | |
cljs.core.aset = (function aset(array,i,val){ | |
return (array[i] = val); | |
}); | |
/** | |
* Returns the length of the Java array. Works on arrays of all types. | |
*/ | |
cljs.core.alength = (function alength(array){ | |
return array.length; | |
}); | |
cljs.core.ICounted = {}; | |
cljs.core._count = (function _count(coll){ | |
if(cljs.core.truth_((function (){var and__3574__auto____1993 = coll; | |
if(cljs.core.truth_(and__3574__auto____1993)) | |
{return coll.cljs$core$ICounted$_count; | |
} else | |
{return and__3574__auto____1993; | |
} | |
})())) | |
{return coll.cljs$core$ICounted$_count(coll); | |
} else | |
{return (function (){var or__3576__auto____1994 = (_count[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____1994)) | |
{return or__3576__auto____1994; | |
} else | |
{return (_count["_"]); | |
} | |
})().call(null,coll); | |
} | |
}); | |
cljs.core.IEmptyableCollection = {}; | |
cljs.core._empty = (function _empty(coll){ | |
if(cljs.core.truth_((function (){var and__3574__auto____1995 = coll; | |
if(cljs.core.truth_(and__3574__auto____1995)) | |
{return coll.cljs$core$IEmptyableCollection$_empty; | |
} else | |
{return and__3574__auto____1995; | |
} | |
})())) | |
{return coll.cljs$core$IEmptyableCollection$_empty(coll); | |
} else | |
{return (function (){var or__3576__auto____1996 = (_empty[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____1996)) | |
{return or__3576__auto____1996; | |
} else | |
{return (_empty["_"]); | |
} | |
})().call(null,coll); | |
} | |
}); | |
cljs.core.ICollection = {}; | |
cljs.core._conj = (function _conj(coll,o){ | |
if(cljs.core.truth_((function (){var and__3574__auto____1997 = coll; | |
if(cljs.core.truth_(and__3574__auto____1997)) | |
{return coll.cljs$core$ICollection$_conj; | |
} else | |
{return and__3574__auto____1997; | |
} | |
})())) | |
{return coll.cljs$core$ICollection$_conj(coll,o); | |
} else | |
{return (function (){var or__3576__auto____1998 = (_conj[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____1998)) | |
{return or__3576__auto____1998; | |
} else | |
{return (_conj["_"]); | |
} | |
})().call(null,coll,o); | |
} | |
}); | |
cljs.core.IIndexed = {}; | |
cljs.core._nth = (function() { | |
var _nth = null; | |
var _nth__2003 = (function (coll,n){ | |
if(cljs.core.truth_((function (){var and__3574__auto____1999 = coll; | |
if(cljs.core.truth_(and__3574__auto____1999)) | |
{return coll.cljs$core$IIndexed$_nth; | |
} else | |
{return and__3574__auto____1999; | |
} | |
})())) | |
{return coll.cljs$core$IIndexed$_nth(coll,n); | |
} else | |
{return (function (){var or__3576__auto____2000 = (_nth[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2000)) | |
{return or__3576__auto____2000; | |
} else | |
{return (_nth["_"]); | |
} | |
})().call(null,coll,n); | |
} | |
}); | |
var _nth__2004 = (function (coll,n,not_found){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2001 = coll; | |
if(cljs.core.truth_(and__3574__auto____2001)) | |
{return coll.cljs$core$IIndexed$_nth; | |
} else | |
{return and__3574__auto____2001; | |
} | |
})())) | |
{return coll.cljs$core$IIndexed$_nth(coll,n,not_found); | |
} else | |
{return (function (){var or__3576__auto____2002 = (_nth[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2002)) | |
{return or__3576__auto____2002; | |
} else | |
{return (_nth["_"]); | |
} | |
})().call(null,coll,n,not_found); | |
} | |
}); | |
_nth = function(coll,n,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return _nth__2003.call(this,coll,n); | |
case 3 : | |
return _nth__2004.call(this,coll,n,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return _nth; | |
})() | |
; | |
cljs.core.ISeq = {}; | |
cljs.core._first = (function _first(coll){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2006 = coll; | |
if(cljs.core.truth_(and__3574__auto____2006)) | |
{return coll.cljs$core$ISeq$_first; | |
} else | |
{return and__3574__auto____2006; | |
} | |
})())) | |
{return coll.cljs$core$ISeq$_first(coll); | |
} else | |
{return (function (){var or__3576__auto____2007 = (_first[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2007)) | |
{return or__3576__auto____2007; | |
} else | |
{return (_first["_"]); | |
} | |
})().call(null,coll); | |
} | |
}); | |
cljs.core._rest = (function _rest(coll){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2008 = coll; | |
if(cljs.core.truth_(and__3574__auto____2008)) | |
{return coll.cljs$core$ISeq$_rest; | |
} else | |
{return and__3574__auto____2008; | |
} | |
})())) | |
{return coll.cljs$core$ISeq$_rest(coll); | |
} else | |
{return (function (){var or__3576__auto____2009 = (_rest[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2009)) | |
{return or__3576__auto____2009; | |
} else | |
{return (_rest["_"]); | |
} | |
})().call(null,coll); | |
} | |
}); | |
cljs.core.ILookup = {}; | |
cljs.core._lookup = (function() { | |
var _lookup = null; | |
var _lookup__2014 = (function (o,k){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2010 = o; | |
if(cljs.core.truth_(and__3574__auto____2010)) | |
{return o.cljs$core$ILookup$_lookup; | |
} else | |
{return and__3574__auto____2010; | |
} | |
})())) | |
{return o.cljs$core$ILookup$_lookup(o,k); | |
} else | |
{return (function (){var or__3576__auto____2011 = (_lookup[goog.typeOf.call(null,o)]); | |
if(cljs.core.truth_(or__3576__auto____2011)) | |
{return or__3576__auto____2011; | |
} else | |
{return (_lookup["_"]); | |
} | |
})().call(null,o,k); | |
} | |
}); | |
var _lookup__2015 = (function (o,k,not_found){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2012 = o; | |
if(cljs.core.truth_(and__3574__auto____2012)) | |
{return o.cljs$core$ILookup$_lookup; | |
} else | |
{return and__3574__auto____2012; | |
} | |
})())) | |
{return o.cljs$core$ILookup$_lookup(o,k,not_found); | |
} else | |
{return (function (){var or__3576__auto____2013 = (_lookup[goog.typeOf.call(null,o)]); | |
if(cljs.core.truth_(or__3576__auto____2013)) | |
{return or__3576__auto____2013; | |
} else | |
{return (_lookup["_"]); | |
} | |
})().call(null,o,k,not_found); | |
} | |
}); | |
_lookup = function(o,k,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return _lookup__2014.call(this,o,k); | |
case 3 : | |
return _lookup__2015.call(this,o,k,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return _lookup; | |
})() | |
; | |
cljs.core.IAssociative = {}; | |
cljs.core._contains_key_QMARK_ = (function _contains_key_QMARK_(coll,k){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2017 = coll; | |
if(cljs.core.truth_(and__3574__auto____2017)) | |
{return coll.cljs$core$IAssociative$_contains_key_QMARK_; | |
} else | |
{return and__3574__auto____2017; | |
} | |
})())) | |
{return coll.cljs$core$IAssociative$_contains_key_QMARK_(coll,k); | |
} else | |
{return (function (){var or__3576__auto____2018 = (_contains_key_QMARK_[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2018)) | |
{return or__3576__auto____2018; | |
} else | |
{return (_contains_key_QMARK_["_"]); | |
} | |
})().call(null,coll,k); | |
} | |
}); | |
cljs.core._assoc = (function _assoc(coll,k,v){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2019 = coll; | |
if(cljs.core.truth_(and__3574__auto____2019)) | |
{return coll.cljs$core$IAssociative$_assoc; | |
} else | |
{return and__3574__auto____2019; | |
} | |
})())) | |
{return coll.cljs$core$IAssociative$_assoc(coll,k,v); | |
} else | |
{return (function (){var or__3576__auto____2020 = (_assoc[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2020)) | |
{return or__3576__auto____2020; | |
} else | |
{return (_assoc["_"]); | |
} | |
})().call(null,coll,k,v); | |
} | |
}); | |
cljs.core.IMap = {}; | |
cljs.core._dissoc = (function _dissoc(coll,k){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2021 = coll; | |
if(cljs.core.truth_(and__3574__auto____2021)) | |
{return coll.cljs$core$IMap$_dissoc; | |
} else | |
{return and__3574__auto____2021; | |
} | |
})())) | |
{return coll.cljs$core$IMap$_dissoc(coll,k); | |
} else | |
{return (function (){var or__3576__auto____2022 = (_dissoc[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2022)) | |
{return or__3576__auto____2022; | |
} else | |
{return (_dissoc["_"]); | |
} | |
})().call(null,coll,k); | |
} | |
}); | |
cljs.core.ISet = {}; | |
cljs.core._disjoin = (function _disjoin(coll,v){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2023 = coll; | |
if(cljs.core.truth_(and__3574__auto____2023)) | |
{return coll.cljs$core$ISet$_disjoin; | |
} else | |
{return and__3574__auto____2023; | |
} | |
})())) | |
{return coll.cljs$core$ISet$_disjoin(coll,v); | |
} else | |
{return (function (){var or__3576__auto____2024 = (_disjoin[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2024)) | |
{return or__3576__auto____2024; | |
} else | |
{return (_disjoin["_"]); | |
} | |
})().call(null,coll,v); | |
} | |
}); | |
cljs.core.IStack = {}; | |
cljs.core._peek = (function _peek(coll){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2025 = coll; | |
if(cljs.core.truth_(and__3574__auto____2025)) | |
{return coll.cljs$core$IStack$_peek; | |
} else | |
{return and__3574__auto____2025; | |
} | |
})())) | |
{return coll.cljs$core$IStack$_peek(coll); | |
} else | |
{return (function (){var or__3576__auto____2026 = (_peek[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2026)) | |
{return or__3576__auto____2026; | |
} else | |
{return (_peek["_"]); | |
} | |
})().call(null,coll); | |
} | |
}); | |
cljs.core._pop = (function _pop(coll){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2027 = coll; | |
if(cljs.core.truth_(and__3574__auto____2027)) | |
{return coll.cljs$core$IStack$_pop; | |
} else | |
{return and__3574__auto____2027; | |
} | |
})())) | |
{return coll.cljs$core$IStack$_pop(coll); | |
} else | |
{return (function (){var or__3576__auto____2028 = (_pop[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2028)) | |
{return or__3576__auto____2028; | |
} else | |
{return (_pop["_"]); | |
} | |
})().call(null,coll); | |
} | |
}); | |
cljs.core.IVector = {}; | |
cljs.core._assoc_n = (function _assoc_n(coll,n,val){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2029 = coll; | |
if(cljs.core.truth_(and__3574__auto____2029)) | |
{return coll.cljs$core$IVector$_assoc_n; | |
} else | |
{return and__3574__auto____2029; | |
} | |
})())) | |
{return coll.cljs$core$IVector$_assoc_n(coll,n,val); | |
} else | |
{return (function (){var or__3576__auto____2030 = (_assoc_n[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2030)) | |
{return or__3576__auto____2030; | |
} else | |
{return (_assoc_n["_"]); | |
} | |
})().call(null,coll,n,val); | |
} | |
}); | |
cljs.core.IDeref = {}; | |
cljs.core._deref = (function _deref(o){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2031 = o; | |
if(cljs.core.truth_(and__3574__auto____2031)) | |
{return o.cljs$core$IDeref$_deref; | |
} else | |
{return and__3574__auto____2031; | |
} | |
})())) | |
{return o.cljs$core$IDeref$_deref(o); | |
} else | |
{return (function (){var or__3576__auto____2032 = (_deref[goog.typeOf.call(null,o)]); | |
if(cljs.core.truth_(or__3576__auto____2032)) | |
{return or__3576__auto____2032; | |
} else | |
{return (_deref["_"]); | |
} | |
})().call(null,o); | |
} | |
}); | |
cljs.core.IDerefWithTimeout = {}; | |
cljs.core._deref_with_timeout = (function _deref_with_timeout(o,msec,timeout_val){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2033 = o; | |
if(cljs.core.truth_(and__3574__auto____2033)) | |
{return o.cljs$core$IDerefWithTimeout$_deref_with_timeout; | |
} else | |
{return and__3574__auto____2033; | |
} | |
})())) | |
{return o.cljs$core$IDerefWithTimeout$_deref_with_timeout(o,msec,timeout_val); | |
} else | |
{return (function (){var or__3576__auto____2034 = (_deref_with_timeout[goog.typeOf.call(null,o)]); | |
if(cljs.core.truth_(or__3576__auto____2034)) | |
{return or__3576__auto____2034; | |
} else | |
{return (_deref_with_timeout["_"]); | |
} | |
})().call(null,o,msec,timeout_val); | |
} | |
}); | |
cljs.core.IMeta = {}; | |
cljs.core._meta = (function _meta(o){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2035 = o; | |
if(cljs.core.truth_(and__3574__auto____2035)) | |
{return o.cljs$core$IMeta$_meta; | |
} else | |
{return and__3574__auto____2035; | |
} | |
})())) | |
{return o.cljs$core$IMeta$_meta(o); | |
} else | |
{return (function (){var or__3576__auto____2036 = (_meta[goog.typeOf.call(null,o)]); | |
if(cljs.core.truth_(or__3576__auto____2036)) | |
{return or__3576__auto____2036; | |
} else | |
{return (_meta["_"]); | |
} | |
})().call(null,o); | |
} | |
}); | |
cljs.core.IWithMeta = {}; | |
cljs.core._with_meta = (function _with_meta(o,meta){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2037 = o; | |
if(cljs.core.truth_(and__3574__auto____2037)) | |
{return o.cljs$core$IWithMeta$_with_meta; | |
} else | |
{return and__3574__auto____2037; | |
} | |
})())) | |
{return o.cljs$core$IWithMeta$_with_meta(o,meta); | |
} else | |
{return (function (){var or__3576__auto____2038 = (_with_meta[goog.typeOf.call(null,o)]); | |
if(cljs.core.truth_(or__3576__auto____2038)) | |
{return or__3576__auto____2038; | |
} else | |
{return (_with_meta["_"]); | |
} | |
})().call(null,o,meta); | |
} | |
}); | |
cljs.core.IReduce = {}; | |
cljs.core._reduce = (function() { | |
var _reduce = null; | |
var _reduce__2043 = (function (coll,f){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2039 = coll; | |
if(cljs.core.truth_(and__3574__auto____2039)) | |
{return coll.cljs$core$IReduce$_reduce; | |
} else | |
{return and__3574__auto____2039; | |
} | |
})())) | |
{return coll.cljs$core$IReduce$_reduce(coll,f); | |
} else | |
{return (function (){var or__3576__auto____2040 = (_reduce[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2040)) | |
{return or__3576__auto____2040; | |
} else | |
{return (_reduce["_"]); | |
} | |
})().call(null,coll,f); | |
} | |
}); | |
var _reduce__2044 = (function (coll,f,start){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2041 = coll; | |
if(cljs.core.truth_(and__3574__auto____2041)) | |
{return coll.cljs$core$IReduce$_reduce; | |
} else | |
{return and__3574__auto____2041; | |
} | |
})())) | |
{return coll.cljs$core$IReduce$_reduce(coll,f,start); | |
} else | |
{return (function (){var or__3576__auto____2042 = (_reduce[goog.typeOf.call(null,coll)]); | |
if(cljs.core.truth_(or__3576__auto____2042)) | |
{return or__3576__auto____2042; | |
} else | |
{return (_reduce["_"]); | |
} | |
})().call(null,coll,f,start); | |
} | |
}); | |
_reduce = function(coll,f,start){ | |
switch(arguments.length){ | |
case 2 : | |
return _reduce__2043.call(this,coll,f); | |
case 3 : | |
return _reduce__2044.call(this,coll,f,start); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return _reduce; | |
})() | |
; | |
cljs.core.IEquiv = {}; | |
cljs.core._equiv = (function _equiv(o,other){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2046 = o; | |
if(cljs.core.truth_(and__3574__auto____2046)) | |
{return o.cljs$core$IEquiv$_equiv; | |
} else | |
{return and__3574__auto____2046; | |
} | |
})())) | |
{return o.cljs$core$IEquiv$_equiv(o,other); | |
} else | |
{return (function (){var or__3576__auto____2047 = (_equiv[goog.typeOf.call(null,o)]); | |
if(cljs.core.truth_(or__3576__auto____2047)) | |
{return or__3576__auto____2047; | |
} else | |
{return (_equiv["_"]); | |
} | |
})().call(null,o,other); | |
} | |
}); | |
cljs.core.IHash = {}; | |
cljs.core._hash = (function _hash(o){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2048 = o; | |
if(cljs.core.truth_(and__3574__auto____2048)) | |
{return o.cljs$core$IHash$_hash; | |
} else | |
{return and__3574__auto____2048; | |
} | |
})())) | |
{return o.cljs$core$IHash$_hash(o); | |
} else | |
{return (function (){var or__3576__auto____2049 = (_hash[goog.typeOf.call(null,o)]); | |
if(cljs.core.truth_(or__3576__auto____2049)) | |
{return or__3576__auto____2049; | |
} else | |
{return (_hash["_"]); | |
} | |
})().call(null,o); | |
} | |
}); | |
cljs.core.ISeqable = {}; | |
cljs.core._seq = (function _seq(o){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2050 = o; | |
if(cljs.core.truth_(and__3574__auto____2050)) | |
{return o.cljs$core$ISeqable$_seq; | |
} else | |
{return and__3574__auto____2050; | |
} | |
})())) | |
{return o.cljs$core$ISeqable$_seq(o); | |
} else | |
{return (function (){var or__3576__auto____2051 = (_seq[goog.typeOf.call(null,o)]); | |
if(cljs.core.truth_(or__3576__auto____2051)) | |
{return or__3576__auto____2051; | |
} else | |
{return (_seq["_"]); | |
} | |
})().call(null,o); | |
core.js:650Uncaught TypeError: Cannot call method 'call' of undefined | |
} | |
}); | |
cljs.core.ISequential = {}; | |
cljs.core.IPrintable = {}; | |
cljs.core._pr_seq = (function _pr_seq(o,opts){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2052 = o; | |
if(cljs.core.truth_(and__3574__auto____2052)) | |
{return o.cljs$core$IPrintable$_pr_seq; | |
} else | |
{return and__3574__auto____2052; | |
} | |
})())) | |
{return o.cljs$core$IPrintable$_pr_seq(o,opts); | |
} else | |
{return (function (){var or__3576__auto____2053 = (_pr_seq[goog.typeOf.call(null,o)]); | |
if(cljs.core.truth_(or__3576__auto____2053)) | |
{return or__3576__auto____2053; | |
} else | |
{return (_pr_seq["_"]); | |
} | |
})().call(null,o,opts); | |
} | |
}); | |
cljs.core.IPending = {}; | |
cljs.core._realized_QMARK_ = (function _realized_QMARK_(d){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2054 = d; | |
if(cljs.core.truth_(and__3574__auto____2054)) | |
{return d.cljs$core$IPending$_realized_QMARK_; | |
} else | |
{return and__3574__auto____2054; | |
} | |
})())) | |
{return d.cljs$core$IPending$_realized_QMARK_(d); | |
} else | |
{return (function (){var or__3576__auto____2055 = (_realized_QMARK_[goog.typeOf.call(null,d)]); | |
if(cljs.core.truth_(or__3576__auto____2055)) | |
{return or__3576__auto____2055; | |
} else | |
{return (_realized_QMARK_["_"]); | |
} | |
})().call(null,d); | |
} | |
}); | |
cljs.core.identical_QMARK_ = (function identical_QMARK_(x,y){ | |
return (x === y); | |
}); | |
cljs.core._EQ_ = (function _EQ_(x,y){ | |
return cljs.core._equiv.call(null,x,y); | |
}); | |
cljs.core.nil_QMARK_ = (function nil_QMARK_(x){ | |
return cljs.core.identical_QMARK_.call(null,x,null); | |
}); | |
(cljs.core.ISet["null"] = true); | |
(cljs.core._disjoin["null"] = (function (_,v){ | |
return null; | |
})); | |
(cljs.core.IEquiv["null"] = true); | |
(cljs.core._equiv["null"] = (function (_,o){ | |
return cljs.core.nil_QMARK_.call(null,o); | |
})); | |
(cljs.core.ICollection["null"] = true); | |
(cljs.core._conj["null"] = (function (_,o){ | |
return cljs.core.list.call(null,o); | |
})); | |
(cljs.core.ISeq["null"] = true); | |
(cljs.core._first["null"] = (function (_){ | |
return null; | |
})); | |
(cljs.core._rest["null"] = (function (_){ | |
return cljs.core.list.call(null); | |
})); | |
(cljs.core.IStack["null"] = true); | |
(cljs.core._peek["null"] = (function (_){ | |
return null; | |
})); | |
(cljs.core._pop["null"] = (function (_){ | |
return null; | |
})); | |
(cljs.core.IWithMeta["null"] = true); | |
(cljs.core._with_meta["null"] = (function (_,meta){ | |
return null; | |
})); | |
(cljs.core.IMap["null"] = true); | |
(cljs.core._dissoc["null"] = (function (_,k){ | |
return null; | |
})); | |
(cljs.core.IEmptyableCollection["null"] = true); | |
(cljs.core._empty["null"] = (function (_){ | |
return null; | |
})); | |
(cljs.core.IIndexed["null"] = true); | |
(cljs.core._nth["null"] = (function() { | |
var G__2056 = null; | |
var G__2056__2057 = (function (_,n){ | |
return null; | |
}); | |
var G__2056__2058 = (function (_,n,not_found){ | |
return not_found; | |
}); | |
G__2056 = function(_,n,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2056__2057.call(this,_,n); | |
case 3 : | |
return G__2056__2058.call(this,_,n,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2056; | |
})() | |
); | |
(cljs.core.IMeta["null"] = true); | |
(cljs.core._meta["null"] = (function (_){ | |
return null; | |
})); | |
(cljs.core.IReduce["null"] = true); | |
(cljs.core._reduce["null"] = (function() { | |
var G__2060 = null; | |
var G__2060__2061 = (function (_,f){ | |
return f.call(null); | |
}); | |
var G__2060__2062 = (function (_,f,start){ | |
return start; | |
}); | |
G__2060 = function(_,f,start){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2060__2061.call(this,_,f); | |
case 3 : | |
return G__2060__2062.call(this,_,f,start); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2060; | |
})() | |
); | |
(cljs.core.IHash["null"] = true); | |
(cljs.core._hash["null"] = (function (o){ | |
return 0; | |
})); | |
(cljs.core.ICounted["null"] = true); | |
(cljs.core._count["null"] = (function (_){ | |
return 0; | |
})); | |
(cljs.core.IAssociative["null"] = true); | |
(cljs.core._assoc["null"] = (function (_,k,v){ | |
return cljs.core.hash_map.call(null,k,v); | |
})); | |
(cljs.core.ILookup["null"] = true); | |
(cljs.core._lookup["null"] = (function() { | |
var G__2064 = null; | |
var G__2064__2065 = (function (o,k){ | |
return null; | |
}); | |
var G__2064__2066 = (function (o,k,not_found){ | |
return not_found; | |
}); | |
G__2064 = function(o,k,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2064__2065.call(this,o,k); | |
case 3 : | |
return G__2064__2066.call(this,o,k,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2064; | |
})() | |
); | |
goog.global['Date'].prototype.cljs$core$IEquiv$ = true; | |
goog.global['Date'].prototype.cljs$core$IEquiv$_equiv = (function (o,other){ | |
return cljs.core.identical_QMARK_.call(null,o.toString,other.toString); | |
}); | |
(cljs.core.IHash["number"] = true); | |
(cljs.core._hash["number"] = (function (o){ | |
return o; | |
})); | |
(cljs.core.IEquiv["number"] = true); | |
(cljs.core._equiv["number"] = (function (x,o){ | |
return cljs.core.identical_QMARK_.call(null,x,o); | |
})); | |
(cljs.core.IHash["function"] = true); | |
(cljs.core._hash["function"] = (function (o){ | |
return goog.getUid.call(null,o); | |
})); | |
/** | |
* Returns a number one greater than num. | |
*/ | |
cljs.core.inc = (function inc(x){ | |
return (x + 1); | |
}); | |
cljs.core.lt_ = (function lt_(x,y){ | |
return (x < y); | |
}); | |
/** | |
* Accepts any collection which satisfies the ICount and IIndexed protocols and | |
* reduces them without incurring seq initialization | |
*/ | |
cljs.core.ci_reduce = (function() { | |
var ci_reduce = null; | |
var ci_reduce__2074 = (function (cicoll,f){ | |
if(cljs.core.truth_(cljs.core._EQ_.call(null,0,cljs.core._count.call(null,cicoll)))) | |
{return f.call(null); | |
} else | |
{var val__2068 = cljs.core._nth.call(null,cicoll,0); | |
var n__2069 = 1; | |
var G__2078,G__2079;G__2078=G__2079=new Object(); | |
while(G__2078===G__2079){ | |
G__2078=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.lt_.call(null,n__2069,cljs.core._count.call(null,cicoll)))) | |
{{ | |
var G__2080 = f.call(null,val__2068,cljs.core._nth.call(null,cicoll,n__2069)); | |
var G__2081 = cljs.core.inc.call(null,n__2069); | |
val__2068 = G__2080; | |
n__2069 = G__2081; | |
return continue_val; | |
} | |
} else | |
{return val__2068; | |
} | |
})(G__2079);} | |
return G__2078; | |
} | |
}); | |
var ci_reduce__2075 = (function (cicoll,f,val){ | |
var val__2070 = val; | |
var n__2071 = 0; | |
var G__2082,G__2083;G__2082=G__2083=new Object(); | |
while(G__2082===G__2083){ | |
G__2082=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.lt_.call(null,n__2071,cljs.core._count.call(null,cicoll)))) | |
{{ | |
var G__2084 = f.call(null,val__2070,cljs.core._nth.call(null,cicoll,n__2071)); | |
var G__2085 = cljs.core.inc.call(null,n__2071); | |
val__2070 = G__2084; | |
n__2071 = G__2085; | |
return continue_val; | |
} | |
} else | |
{return val__2070; | |
} | |
})(G__2083);} | |
return G__2082; | |
}); | |
var ci_reduce__2076 = (function (cicoll,f,val,idx){ | |
var val__2072 = val; | |
var n__2073 = idx; | |
var G__2086,G__2087;G__2086=G__2087=new Object(); | |
while(G__2086===G__2087){ | |
G__2086=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.lt_.call(null,n__2073,cljs.core._count.call(null,cicoll)))) | |
{{ | |
var G__2088 = f.call(null,val__2072,cljs.core._nth.call(null,cicoll,n__2073)); | |
var G__2089 = cljs.core.inc.call(null,n__2073); | |
val__2072 = G__2088; | |
n__2073 = G__2089; | |
return continue_val; | |
} | |
} else | |
{return val__2072; | |
} | |
})(G__2087);} | |
return G__2086; | |
}); | |
ci_reduce = function(cicoll,f,val,idx){ | |
switch(arguments.length){ | |
case 2 : | |
return ci_reduce__2074.call(this,cicoll,f); | |
case 3 : | |
return ci_reduce__2075.call(this,cicoll,f,val); | |
case 4 : | |
return ci_reduce__2076.call(this,cicoll,f,val,idx); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return ci_reduce; | |
})() | |
; | |
/** | |
* @constructor | |
*/ | |
cljs.core.IndexedSeq = (function (a,i){ | |
this.a = a; | |
this.i = i; | |
}) | |
cljs.core.IndexedSeq.prototype.cljs$core$IReduce$ = true; | |
cljs.core.IndexedSeq.prototype.cljs$core$IReduce$_reduce = (function() { | |
var G__2096 = null; | |
var G__2096__2097 = (function (_,f){ | |
var this__2090 = this; | |
return cljs.core.ci_reduce.call(null,this__2090.a,f,(this__2090.a[this__2090.i]),cljs.core.inc.call(null,this__2090.i)); | |
}); | |
var G__2096__2098 = (function (_,f,start){ | |
var this__2091 = this; | |
return cljs.core.ci_reduce.call(null,this__2091.a,f,start,this__2091.i); | |
}); | |
G__2096 = function(_,f,start){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2096__2097.call(this,_,f); | |
case 3 : | |
return G__2096__2098.call(this,_,f,start); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2096; | |
})() | |
; | |
cljs.core.IndexedSeq.prototype.cljs$core$IEquiv$ = true; | |
cljs.core.IndexedSeq.prototype.cljs$core$IEquiv$_equiv = (function (coll,other){ | |
var this__2092 = this; | |
return cljs.core.equiv_sequential.call(null,coll,other); | |
}); | |
cljs.core.IndexedSeq.prototype.cljs$core$ISequential$ = true; | |
cljs.core.IndexedSeq.prototype.cljs$core$ISeq$ = true; | |
cljs.core.IndexedSeq.prototype.cljs$core$ISeq$_first = (function (_){ | |
var this__2093 = this; | |
return (this__2093.a[this__2093.i]); | |
}); | |
cljs.core.IndexedSeq.prototype.cljs$core$ISeq$_rest = (function (_){ | |
var this__2094 = this; | |
if(cljs.core.truth_(cljs.core.lt_.call(null,cljs.core.inc.call(null,this__2094.i),cljs.core._count.call(null,this__2094.a)))) | |
{return (new cljs.core.IndexedSeq(this__2094.a,cljs.core.inc.call(null,this__2094.i))); | |
} else | |
{return cljs.core.list.call(null); | |
} | |
}); | |
cljs.core.IndexedSeq.prototype.cljs$core$ISeqable$ = true; | |
cljs.core.IndexedSeq.prototype.cljs$core$ISeqable$_seq = (function (this$){ | |
var this__2095 = this; | |
return this$; | |
}); | |
cljs.core.prim_seq = (function prim_seq(prim,i){ | |
if(cljs.core.truth_(cljs.core._EQ_.call(null,0,cljs.core._count.call(null,prim)))) | |
{return null; | |
} else | |
{return (new cljs.core.IndexedSeq(prim,i)); | |
} | |
}); | |
cljs.core.array_seq = (function array_seq(array,i){ | |
return cljs.core.prim_seq.call(null,array,i); | |
}); | |
(cljs.core.IReduce["array"] = true); | |
(cljs.core._reduce["array"] = (function() { | |
var G__2100 = null; | |
var G__2100__2101 = (function (array,f){ | |
return cljs.core.ci_reduce.call(null,array,f); | |
}); | |
var G__2100__2102 = (function (array,f,start){ | |
return cljs.core.ci_reduce.call(null,array,f,start); | |
}); | |
G__2100 = function(array,f,start){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2100__2101.call(this,array,f); | |
case 3 : | |
return G__2100__2102.call(this,array,f,start); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2100; | |
})() | |
); | |
(cljs.core.ILookup["array"] = true); | |
(cljs.core._lookup["array"] = (function() { | |
var G__2104 = null; | |
var G__2104__2105 = (function (array,k){ | |
return (array[k]); | |
}); | |
var G__2104__2106 = (function (array,k,not_found){ | |
return cljs.core._nth.call(null,array,k,not_found); | |
}); | |
G__2104 = function(array,k,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2104__2105.call(this,array,k); | |
case 3 : | |
return G__2104__2106.call(this,array,k,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2104; | |
})() | |
); | |
(cljs.core.IIndexed["array"] = true); | |
(cljs.core._nth["array"] = (function() { | |
var G__2108 = null; | |
var G__2108__2109 = (function (array,n){ | |
if(cljs.core.truth_(cljs.core.lt_.call(null,n,array.length))) | |
{return (array[n]); | |
} else | |
{return null; | |
} | |
}); | |
var G__2108__2110 = (function (array,n,not_found){ | |
if(cljs.core.truth_(cljs.core.lt_.call(null,n,array.length))) | |
{return (array[n]); | |
} else | |
{return not_found; | |
} | |
}); | |
G__2108 = function(array,n,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2108__2109.call(this,array,n); | |
case 3 : | |
return G__2108__2110.call(this,array,n,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2108; | |
})() | |
); | |
(cljs.core.ICounted["array"] = true); | |
(cljs.core._count["array"] = (function (a){ | |
return a.length; | |
})); | |
(cljs.core.ISeqable["array"] = true); | |
(cljs.core._seq["array"] = (function (array){ | |
return cljs.core.array_seq.call(null,array,0); | |
})); | |
/** | |
* Returns a seq on the collection. If the collection is | |
* empty, returns nil. (seq nil) returns nil. seq also works on | |
* Strings. | |
*/ | |
cljs.core.seq = (function seq(coll){ | |
if(cljs.core.truth_(coll)) | |
{return cljs.core._seq.call(null,coll); | |
} else | |
{return null; | |
} | |
}); | |
/** | |
* Returns the first item in the collection. Calls seq on its | |
* argument. If coll is nil, returns nil. | |
*/ | |
cljs.core.first = (function first(coll){ | |
var temp__3726__auto____2112 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____2112)) | |
{var s__2113 = temp__3726__auto____2112; | |
return cljs.core._first.call(null,s__2113); | |
} else | |
{return null; | |
} | |
}); | |
/** | |
* Returns a possibly empty seq of the items after the first. Calls seq on its | |
* argument. | |
*/ | |
cljs.core.rest = (function rest(coll){ | |
return cljs.core._rest.call(null,cljs.core.seq.call(null,coll)); | |
}); | |
/** | |
* Returns a seq of the items after the first. Calls seq on its | |
* argument. If there are no more items, returns nil | |
*/ | |
cljs.core.next = (function next(coll){ | |
if(cljs.core.truth_(coll)) | |
{return cljs.core.seq.call(null,cljs.core.rest.call(null,coll)); | |
} else | |
{return null; | |
} | |
}); | |
/** | |
* Same as (first (next x)) | |
*/ | |
cljs.core.second = (function second(coll){ | |
return cljs.core.first.call(null,cljs.core.next.call(null,coll)); | |
}); | |
/** | |
* Same as (first (first x)) | |
*/ | |
cljs.core.ffirst = (function ffirst(coll){ | |
return cljs.core.first.call(null,cljs.core.first.call(null,coll)); | |
}); | |
/** | |
* Same as (next (first x)) | |
*/ | |
cljs.core.nfirst = (function nfirst(coll){ | |
return cljs.core.next.call(null,cljs.core.first.call(null,coll)); | |
}); | |
/** | |
* Same as (first (next x)) | |
*/ | |
cljs.core.fnext = (function fnext(coll){ | |
return cljs.core.first.call(null,cljs.core.next.call(null,coll)); | |
}); | |
/** | |
* Same as (next (next x)) | |
*/ | |
cljs.core.nnext = (function nnext(coll){ | |
return cljs.core.next.call(null,cljs.core.next.call(null,coll)); | |
}); | |
/** | |
* Return the last item in coll, in linear time | |
*/ | |
cljs.core.last = (function last(s){ | |
var G__2114,G__2115;G__2114=G__2115=new Object(); | |
while(G__2114===G__2115){ | |
G__2114=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.next.call(null,s))) | |
{{ | |
var G__2116 = cljs.core.next.call(null,s); | |
s = G__2116; | |
return continue_val; | |
} | |
} else | |
{return cljs.core.first.call(null,s); | |
} | |
})(G__2115);} | |
return G__2114; | |
}); | |
(cljs.core.ICounted["_"] = true); | |
(cljs.core._count["_"] = (function (x){ | |
var s__2117 = cljs.core.seq.call(null,x); | |
var n__2118 = 0; | |
var G__2119,G__2120;G__2119=G__2120=new Object(); | |
while(G__2119===G__2120){ | |
G__2119=(function(continue_val){ | |
if(cljs.core.truth_(s__2117)) | |
{{ | |
var G__2121 = cljs.core.next.call(null,s__2117); | |
var G__2122 = cljs.core.inc.call(null,n__2118); | |
s__2117 = G__2121; | |
n__2118 = G__2122; | |
return continue_val; | |
} | |
} else | |
{return n__2118; | |
} | |
})(G__2120);} | |
return G__2119; | |
})); | |
(cljs.core.IEquiv["_"] = true); | |
(cljs.core._equiv["_"] = (function (x,o){ | |
return cljs.core.identical_QMARK_.call(null,x,o); | |
})); | |
/** | |
* Returns true if x is logical false, false otherwise. | |
*/ | |
cljs.core.not = (function not(x){ | |
if(cljs.core.truth_(x)) | |
{return false; | |
} else | |
{return true; | |
} | |
}); | |
/** | |
* conj[oin]. Returns a new collection with the xs | |
* 'added'. (conj nil item) returns (item). The 'addition' may | |
* happen at different 'places' depending on the concrete type. | |
* @param {...*} var_args | |
*/ | |
cljs.core.conj = (function() { | |
var conj = null; | |
var conj__2123 = (function (coll,x){ | |
return cljs.core._conj.call(null,coll,x); | |
}); | |
var conj__2124 = (function() { | |
var G__2126__delegate = function (coll,x,xs){ | |
var G__2127,G__2128;G__2127=G__2128=new Object(); | |
while(G__2127===G__2128){ | |
G__2127=(function(continue_val){ | |
if(cljs.core.truth_(xs)) | |
{{ | |
var G__2129 = conj.call(null,coll,x); | |
var G__2130 = cljs.core.first.call(null,xs); | |
var G__2131 = cljs.core.next.call(null,xs); | |
coll = G__2129; | |
x = G__2130; | |
xs = G__2131; | |
return continue_val; | |
} | |
} else | |
{return conj.call(null,coll,x); | |
} | |
})(G__2128);} | |
return G__2127; | |
}; | |
var G__2126 = function (coll,x,var_args){ | |
var xs = null; | |
if (goog.isDef(var_args)) { | |
xs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2126__delegate.call(this, coll, x, xs); | |
}; | |
G__2126.cljs$lang$maxFixedArity = 2; | |
G__2126.cljs$lang$applyTo = (function (arglist__2132){ | |
var coll = cljs.core.first(arglist__2132); | |
var x = cljs.core.first(cljs.core.next(arglist__2132)); | |
var xs = cljs.core.rest(cljs.core.next(arglist__2132)); | |
return G__2126__delegate.call(this, coll, x, xs); | |
}); | |
return G__2126; | |
})() | |
; | |
conj = function(coll,x,var_args){ | |
var xs = var_args; | |
switch(arguments.length){ | |
case 2 : | |
return conj__2123.call(this,coll,x); | |
default: | |
return conj__2124.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
conj.cljs$lang$maxFixedArity = 2; | |
conj.cljs$lang$applyTo = conj__2124.cljs$lang$applyTo; | |
return conj; | |
})() | |
; | |
/** | |
* Returns an empty collection of the same category as coll, or nil | |
*/ | |
cljs.core.empty = (function empty(coll){ | |
return cljs.core._empty.call(null,coll); | |
}); | |
/** | |
* Returns the number of items in the collection. (count nil) returns | |
* 0. Also works on strings, arrays, and Maps | |
*/ | |
cljs.core.count = (function count(coll){ | |
return cljs.core._count.call(null,coll); | |
}); | |
/** | |
* Returns the value at the index. get returns nil if index out of | |
* bounds, nth throws an exception unless not-found is supplied. nth | |
* also works for strings, arrays, regex Matchers and Lists, and, | |
* in O(n) time, for sequences. | |
*/ | |
cljs.core.nth = (function() { | |
var nth = null; | |
var nth__2133 = (function (coll,n){ | |
return cljs.core._nth.call(null,coll,n); | |
}); | |
var nth__2134 = (function (coll,n,not_found){ | |
return cljs.core._nth.call(null,coll,n,not_found); | |
}); | |
nth = function(coll,n,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return nth__2133.call(this,coll,n); | |
case 3 : | |
return nth__2134.call(this,coll,n,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return nth; | |
})() | |
; | |
/** | |
* Returns the value mapped to key, not-found or nil if key not present. | |
*/ | |
cljs.core.get = (function() { | |
var get = null; | |
var get__2136 = (function (o,k){ | |
return cljs.core._lookup.call(null,o,k); | |
}); | |
var get__2137 = (function (o,k,not_found){ | |
return cljs.core._lookup.call(null,o,k,not_found); | |
}); | |
get = function(o,k,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return get__2136.call(this,o,k); | |
case 3 : | |
return get__2137.call(this,o,k,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return get; | |
})() | |
; | |
/** | |
* assoc[iate]. When applied to a map, returns a new map of the | |
* same (hashed/sorted) type, that contains the mapping of key(s) to | |
* val(s). When applied to a vector, returns a new vector that | |
* contains val at index. | |
* @param {...*} var_args | |
*/ | |
cljs.core.assoc = (function() { | |
var assoc = null; | |
var assoc__2140 = (function (coll,k,v){ | |
return cljs.core._assoc.call(null,coll,k,v); | |
}); | |
var assoc__2141 = (function() { | |
var G__2143__delegate = function (coll,k,v,kvs){ | |
var G__2144,G__2145;G__2144=G__2145=new Object(); | |
while(G__2144===G__2145){ | |
G__2144=(function(continue_val){ | |
var ret__2139 = assoc.call(null,coll,k,v); | |
if(cljs.core.truth_(kvs)) | |
{{ | |
var G__2146 = ret__2139; | |
var G__2147 = cljs.core.first.call(null,kvs); | |
var G__2148 = cljs.core.second.call(null,kvs); | |
var G__2149 = cljs.core.nnext.call(null,kvs); | |
coll = G__2146; | |
k = G__2147; | |
v = G__2148; | |
kvs = G__2149; | |
return continue_val; | |
} | |
} else | |
{return ret__2139; | |
} | |
})(G__2145);} | |
return G__2144; | |
}; | |
var G__2143 = function (coll,k,v,var_args){ | |
var kvs = null; | |
if (goog.isDef(var_args)) { | |
kvs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2143__delegate.call(this, coll, k, v, kvs); | |
}; | |
G__2143.cljs$lang$maxFixedArity = 3; | |
G__2143.cljs$lang$applyTo = (function (arglist__2150){ | |
var coll = cljs.core.first(arglist__2150); | |
var k = cljs.core.first(cljs.core.next(arglist__2150)); | |
var v = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2150))); | |
var kvs = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2150))); | |
return G__2143__delegate.call(this, coll, k, v, kvs); | |
}); | |
return G__2143; | |
})() | |
; | |
assoc = function(coll,k,v,var_args){ | |
var kvs = var_args; | |
switch(arguments.length){ | |
case 3 : | |
return assoc__2140.call(this,coll,k,v); | |
default: | |
return assoc__2141.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
assoc.cljs$lang$maxFixedArity = 3; | |
assoc.cljs$lang$applyTo = assoc__2141.cljs$lang$applyTo; | |
return assoc; | |
})() | |
; | |
/** | |
* dissoc[iate]. Returns a new map of the same (hashed/sorted) type, | |
* that does not contain a mapping for key(s). | |
* @param {...*} var_args | |
*/ | |
cljs.core.dissoc = (function() { | |
var dissoc = null; | |
var dissoc__2152 = (function (coll){ | |
return coll; | |
}); | |
var dissoc__2153 = (function (coll,k){ | |
return cljs.core._dissoc.call(null,coll,k); | |
}); | |
var dissoc__2154 = (function() { | |
var G__2156__delegate = function (coll,k,ks){ | |
var G__2157,G__2158;G__2157=G__2158=new Object(); | |
while(G__2157===G__2158){ | |
G__2157=(function(continue_val){ | |
var ret__2151 = dissoc.call(null,coll,k); | |
if(cljs.core.truth_(ks)) | |
{{ | |
var G__2159 = ret__2151; | |
var G__2160 = cljs.core.first.call(null,ks); | |
var G__2161 = cljs.core.next.call(null,ks); | |
coll = G__2159; | |
k = G__2160; | |
ks = G__2161; | |
return continue_val; | |
} | |
} else | |
{return ret__2151; | |
} | |
})(G__2158);} | |
return G__2157; | |
}; | |
var G__2156 = function (coll,k,var_args){ | |
var ks = null; | |
if (goog.isDef(var_args)) { | |
ks = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2156__delegate.call(this, coll, k, ks); | |
}; | |
G__2156.cljs$lang$maxFixedArity = 2; | |
G__2156.cljs$lang$applyTo = (function (arglist__2162){ | |
var coll = cljs.core.first(arglist__2162); | |
var k = cljs.core.first(cljs.core.next(arglist__2162)); | |
var ks = cljs.core.rest(cljs.core.next(arglist__2162)); | |
return G__2156__delegate.call(this, coll, k, ks); | |
}); | |
return G__2156; | |
})() | |
; | |
dissoc = function(coll,k,var_args){ | |
var ks = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return dissoc__2152.call(this,coll); | |
case 2 : | |
return dissoc__2153.call(this,coll,k); | |
default: | |
return dissoc__2154.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
dissoc.cljs$lang$maxFixedArity = 2; | |
dissoc.cljs$lang$applyTo = dissoc__2154.cljs$lang$applyTo; | |
return dissoc; | |
})() | |
; | |
/** | |
* Returns an object of the same type and value as obj, with | |
* map m as its metadata. | |
*/ | |
cljs.core.with_meta = (function with_meta(o,meta){ | |
return cljs.core._with_meta.call(null,o,meta); | |
}); | |
/** | |
* Returns the metadata of obj, returns nil if there is no metadata. | |
*/ | |
cljs.core.meta = (function meta(o){ | |
if(cljs.core.truth_((function (){var x__105__auto____2163 = o; | |
if(cljs.core.truth_((function (){var and__3574__auto____2164 = x__105__auto____2163; | |
if(cljs.core.truth_(and__3574__auto____2164)) | |
{return x__105__auto____2163.cljs$core$IMeta$; | |
} else | |
{return and__3574__auto____2164; | |
} | |
})())) | |
{return true; | |
} else | |
{return cljs.core.type_satisfies_.call(null,cljs.core.IMeta,x__105__auto____2163); | |
} | |
})())) | |
{return cljs.core._meta.call(null,o); | |
} else | |
{return null; | |
} | |
}); | |
/** | |
* For a list or queue, same as first, for a vector, same as, but much | |
* more efficient than, last. If the collection is empty, returns nil. | |
*/ | |
cljs.core.peek = (function peek(coll){ | |
return cljs.core._peek.call(null,coll); | |
}); | |
/** | |
* For a list or queue, returns a new list/queue without the first | |
* item, for a vector, returns a new vector without the last item. | |
* Note - not the same as next/butlast. | |
*/ | |
cljs.core.pop = (function pop(coll){ | |
return cljs.core._pop.call(null,coll); | |
}); | |
/** | |
* disj[oin]. Returns a new set of the same (hashed/sorted) type, that | |
* does not contain key(s). | |
* @param {...*} var_args | |
*/ | |
cljs.core.disj = (function() { | |
var disj = null; | |
var disj__2166 = (function (coll){ | |
return coll; | |
}); | |
var disj__2167 = (function (coll,k){ | |
return cljs.core._disjoin.call(null,coll,k); | |
}); | |
var disj__2168 = (function() { | |
var G__2170__delegate = function (coll,k,ks){ | |
var G__2171,G__2172;G__2171=G__2172=new Object(); | |
while(G__2171===G__2172){ | |
G__2171=(function(continue_val){ | |
var ret__2165 = disj.call(null,coll,k); | |
if(cljs.core.truth_(ks)) | |
{{ | |
var G__2173 = ret__2165; | |
var G__2174 = cljs.core.first.call(null,ks); | |
var G__2175 = cljs.core.next.call(null,ks); | |
coll = G__2173; | |
k = G__2174; | |
ks = G__2175; | |
return continue_val; | |
} | |
} else | |
{return ret__2165; | |
} | |
})(G__2172);} | |
return G__2171; | |
}; | |
var G__2170 = function (coll,k,var_args){ | |
var ks = null; | |
if (goog.isDef(var_args)) { | |
ks = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2170__delegate.call(this, coll, k, ks); | |
}; | |
G__2170.cljs$lang$maxFixedArity = 2; | |
G__2170.cljs$lang$applyTo = (function (arglist__2176){ | |
var coll = cljs.core.first(arglist__2176); | |
var k = cljs.core.first(cljs.core.next(arglist__2176)); | |
var ks = cljs.core.rest(cljs.core.next(arglist__2176)); | |
return G__2170__delegate.call(this, coll, k, ks); | |
}); | |
return G__2170; | |
})() | |
; | |
disj = function(coll,k,var_args){ | |
var ks = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return disj__2166.call(this,coll); | |
case 2 : | |
return disj__2167.call(this,coll,k); | |
default: | |
return disj__2168.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
disj.cljs$lang$maxFixedArity = 2; | |
disj.cljs$lang$applyTo = disj__2168.cljs$lang$applyTo; | |
return disj; | |
})() | |
; | |
cljs.core.hash = (function hash(o){ | |
return cljs.core._hash.call(null,o); | |
}); | |
/** | |
* Returns true if coll has no items - same as (not (seq coll)). | |
* Please use the idiom (seq x) rather than (not (empty? x)) | |
*/ | |
cljs.core.empty_QMARK_ = (function empty_QMARK_(coll){ | |
return cljs.core.not.call(null,cljs.core.seq.call(null,coll)); | |
}); | |
/** | |
* Returns true if x satisfies ICollection | |
*/ | |
cljs.core.coll_QMARK_ = (function coll_QMARK_(x){ | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,x))) | |
{return false; | |
} else | |
{var x__105__auto____2177 = x; | |
if(cljs.core.truth_((function (){var and__3574__auto____2178 = x__105__auto____2177; | |
if(cljs.core.truth_(and__3574__auto____2178)) | |
{return x__105__auto____2177.cljs$core$ICollection$; | |
} else | |
{return and__3574__auto____2178; | |
} | |
})())) | |
{return true; | |
} else | |
{return cljs.core.type_satisfies_.call(null,cljs.core.ICollection,x__105__auto____2177); | |
} | |
} | |
}); | |
/** | |
* Returns true if x satisfies ISet | |
*/ | |
cljs.core.set_QMARK_ = (function set_QMARK_(x){ | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,x))) | |
{return false; | |
} else | |
{var x__105__auto____2179 = x; | |
if(cljs.core.truth_((function (){var and__3574__auto____2180 = x__105__auto____2179; | |
if(cljs.core.truth_(and__3574__auto____2180)) | |
{return x__105__auto____2179.cljs$core$ISet$; | |
} else | |
{return and__3574__auto____2180; | |
} | |
})())) | |
{return true; | |
} else | |
{return cljs.core.type_satisfies_.call(null,cljs.core.ISet,x__105__auto____2179); | |
} | |
} | |
}); | |
/** | |
* Returns true if coll implements Associative | |
*/ | |
cljs.core.associative_QMARK_ = (function associative_QMARK_(x){ | |
var x__105__auto____2181 = x; | |
if(cljs.core.truth_((function (){var and__3574__auto____2182 = x__105__auto____2181; | |
if(cljs.core.truth_(and__3574__auto____2182)) | |
{return x__105__auto____2181.cljs$core$IAssociative$; | |
} else | |
{return and__3574__auto____2182; | |
} | |
})())) | |
{return true; | |
} else | |
{return cljs.core.type_satisfies_.call(null,cljs.core.IAssociative,x__105__auto____2181); | |
} | |
}); | |
/** | |
* Returns true if coll satisfies ISequential | |
*/ | |
cljs.core.sequential_QMARK_ = (function sequential_QMARK_(x){ | |
var x__105__auto____2183 = x; | |
if(cljs.core.truth_((function (){var and__3574__auto____2184 = x__105__auto____2183; | |
if(cljs.core.truth_(and__3574__auto____2184)) | |
{return x__105__auto____2183.cljs$core$ISequential$; | |
} else | |
{return and__3574__auto____2184; | |
} | |
})())) | |
{return true; | |
} else | |
{return cljs.core.type_satisfies_.call(null,cljs.core.ISequential,x__105__auto____2183); | |
} | |
}); | |
/** | |
* Returns true if coll implements count in constant time | |
*/ | |
cljs.core.counted_QMARK_ = (function counted_QMARK_(x){ | |
var x__105__auto____2185 = x; | |
if(cljs.core.truth_((function (){var and__3574__auto____2186 = x__105__auto____2185; | |
if(cljs.core.truth_(and__3574__auto____2186)) | |
{return x__105__auto____2185.cljs$core$ICounted$; | |
} else | |
{return and__3574__auto____2186; | |
} | |
})())) | |
{return true; | |
} else | |
{return cljs.core.type_satisfies_.call(null,cljs.core.ICounted,x__105__auto____2185); | |
} | |
}); | |
/** | |
* Return true if x satisfies IMap | |
*/ | |
cljs.core.map_QMARK_ = (function map_QMARK_(x){ | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,x))) | |
{return false; | |
} else | |
{var x__105__auto____2187 = x; | |
if(cljs.core.truth_((function (){var and__3574__auto____2188 = x__105__auto____2187; | |
if(cljs.core.truth_(and__3574__auto____2188)) | |
{return x__105__auto____2187.cljs$core$IMap$; | |
} else | |
{return and__3574__auto____2188; | |
} | |
})())) | |
{return true; | |
} else | |
{return cljs.core.type_satisfies_.call(null,cljs.core.IMap,x__105__auto____2187); | |
} | |
} | |
}); | |
/** | |
* Return true if x satisfies IVector | |
*/ | |
cljs.core.vector_QMARK_ = (function vector_QMARK_(x){ | |
var x__105__auto____2189 = x; | |
if(cljs.core.truth_((function (){var and__3574__auto____2190 = x__105__auto____2189; | |
if(cljs.core.truth_(and__3574__auto____2190)) | |
{return x__105__auto____2189.cljs$core$IVector$; | |
} else | |
{return and__3574__auto____2190; | |
} | |
})())) | |
{return true; | |
} else | |
{return cljs.core.type_satisfies_.call(null,cljs.core.IVector,x__105__auto____2189); | |
} | |
}); | |
cljs.core.js_obj = (function js_obj(){ | |
return {}; | |
}); | |
cljs.core.js_keys = (function js_keys(obj){ | |
var keys__2191 = cljs.core.array.call(null); | |
goog.object.forEach.call(null,obj,(function (val,key,obj){ | |
return keys__2191.push(key); | |
})); | |
return keys__2191; | |
}); | |
cljs.core.js_delete = (function js_delete(obj,key){ | |
return delete obj[key]; | |
}); | |
cljs.core.lookup_sentinel = cljs.core.js_obj.call(null); | |
/** | |
* Returns true if x is the value false, false otherwise. | |
*/ | |
cljs.core.false_QMARK_ = (function false_QMARK_(x){ | |
return x === false; | |
}); | |
/** | |
* Returns true if x is the value true, false otherwise. | |
*/ | |
cljs.core.true_QMARK_ = (function true_QMARK_(x){ | |
return x === true; | |
}); | |
cljs.core.undefined_QMARK_ = (function undefined_QMARK_(x){ | |
return (void 0 === x); | |
}); | |
cljs.core.instance_QMARK_ = (function instance_QMARK_(t,o){ | |
return (o instanceof t); | |
}); | |
/** | |
* Return true if s satisfies ISeq | |
*/ | |
cljs.core.seq_QMARK_ = (function seq_QMARK_(s){ | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,s))) | |
{return false; | |
} else | |
{var x__105__auto____2192 = s; | |
if(cljs.core.truth_((function (){var and__3574__auto____2193 = x__105__auto____2192; | |
if(cljs.core.truth_(and__3574__auto____2193)) | |
{return x__105__auto____2192.cljs$core$ISeq$; | |
} else | |
{return and__3574__auto____2193; | |
} | |
})())) | |
{return true; | |
} else | |
{return cljs.core.type_satisfies_.call(null,cljs.core.ISeq,x__105__auto____2192); | |
} | |
} | |
}); | |
cljs.core.boolean$ = (function boolean$(x){ | |
if(cljs.core.truth_(x)) | |
{return true; | |
} else | |
{return false; | |
} | |
}); | |
cljs.core.string_QMARK_ = (function string_QMARK_(x){ | |
var and__3574__auto____2194 = goog.isString.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2194)) | |
{return cljs.core.not.call(null,(function (){var or__3576__auto____2195 = cljs.core._EQ_.call(null,x.charAt(0),"ï·"); | |
if(cljs.core.truth_(or__3576__auto____2195)) | |
{return or__3576__auto____2195; | |
} else | |
{return cljs.core._EQ_.call(null,x.charAt(0),"ï·‘"); | |
} | |
})()); | |
} else | |
{return and__3574__auto____2194; | |
} | |
}); | |
cljs.core.keyword_QMARK_ = (function keyword_QMARK_(x){ | |
var and__3574__auto____2196 = goog.isString.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2196)) | |
{return cljs.core._EQ_.call(null,x.charAt(0),"ï·"); | |
} else | |
{return and__3574__auto____2196; | |
} | |
}); | |
cljs.core.symbol_QMARK_ = (function symbol_QMARK_(x){ | |
var and__3574__auto____2197 = goog.isString.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2197)) | |
{return cljs.core._EQ_.call(null,x.charAt(0),"ï·‘"); | |
} else | |
{return and__3574__auto____2197; | |
} | |
}); | |
cljs.core.number_QMARK_ = (function number_QMARK_(n){ | |
return goog.isNumber.call(null,n); | |
}); | |
cljs.core.fn_QMARK_ = (function fn_QMARK_(f){ | |
return goog.isFunction.call(null,f); | |
}); | |
/** | |
* Returns true if n is an integer. Warning: returns true on underflow condition. | |
*/ | |
cljs.core.integer_QMARK_ = (function integer_QMARK_(n){ | |
var and__3574__auto____2198 = cljs.core.number_QMARK_.call(null,n); | |
if(cljs.core.truth_(and__3574__auto____2198)) | |
{return (n == n.toFixed()); | |
} else | |
{return and__3574__auto____2198; | |
} | |
}); | |
/** | |
* Returns true if key is present in the given collection, otherwise | |
* returns false. Note that for numerically indexed collections like | |
* vectors and arrays, this tests if the numeric key is within the | |
* range of indexes. 'contains?' operates constant or logarithmic time; | |
* it will not perform a linear search for a value. See also 'some'. | |
*/ | |
cljs.core.contains_QMARK_ = (function contains_QMARK_(coll,v){ | |
if(cljs.core.truth_(cljs.core.identical_QMARK_.call(null,cljs.core._lookup.call(null,coll,v,cljs.core.lookup_sentinel),cljs.core.lookup_sentinel))) | |
{return false; | |
} else | |
{return true; | |
} | |
}); | |
/** | |
* Returns the map entry for key, or nil if key not present. | |
*/ | |
cljs.core.find = (function find(coll,k){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2199 = coll; | |
if(cljs.core.truth_(and__3574__auto____2199)) | |
{var and__3574__auto____2200 = cljs.core.associative_QMARK_.call(null,coll); | |
if(cljs.core.truth_(and__3574__auto____2200)) | |
{return cljs.core.contains_QMARK_.call(null,coll,k); | |
} else | |
{return and__3574__auto____2200; | |
} | |
} else | |
{return and__3574__auto____2199; | |
} | |
})())) | |
{return cljs.core.Vector.fromArray([k,cljs.core._lookup.call(null,coll,k)]); | |
} else | |
{return null; | |
} | |
}); | |
/** | |
* Returns true if no two of the arguments are = | |
* @param {...*} var_args | |
*/ | |
cljs.core.distinct_QMARK_ = (function() { | |
var distinct_QMARK_ = null; | |
var distinct_QMARK___2205 = (function (x){ | |
return true; | |
}); | |
var distinct_QMARK___2206 = (function (x,y){ | |
return cljs.core.not.call(null,cljs.core._EQ_.call(null,x,y)); | |
}); | |
var distinct_QMARK___2207 = (function() { | |
var G__2209__delegate = function (x,y,more){ | |
if(cljs.core.truth_(cljs.core.not.call(null,cljs.core._EQ_.call(null,x,y)))) | |
{var s__2201 = cljs.core.set([y,x]); | |
var xs__2202 = more; | |
var G__2210,G__2211;G__2210=G__2211=new Object(); | |
while(G__2210===G__2211){ | |
G__2210=(function(continue_val){ | |
var x__2203 = cljs.core.first.call(null,xs__2202); | |
var etc__2204 = cljs.core.next.call(null,xs__2202); | |
if(cljs.core.truth_(xs__2202)) | |
{if(cljs.core.truth_(cljs.core.contains_QMARK_.call(null,s__2201,x__2203))) | |
{return false; | |
} else | |
{{ | |
var G__2212 = cljs.core.conj.call(null,s__2201,x__2203); | |
var G__2213 = etc__2204; | |
s__2201 = G__2212; | |
xs__2202 = G__2213; | |
return continue_val; | |
} | |
} | |
} else | |
{return true; | |
} | |
})(G__2211);} | |
return G__2210; | |
} else | |
{return false; | |
} | |
}; | |
var G__2209 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2209__delegate.call(this, x, y, more); | |
}; | |
G__2209.cljs$lang$maxFixedArity = 2; | |
G__2209.cljs$lang$applyTo = (function (arglist__2214){ | |
var x = cljs.core.first(arglist__2214); | |
var y = cljs.core.first(cljs.core.next(arglist__2214)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2214)); | |
return G__2209__delegate.call(this, x, y, more); | |
}); | |
return G__2209; | |
})() | |
; | |
distinct_QMARK_ = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return distinct_QMARK___2205.call(this,x); | |
case 2 : | |
return distinct_QMARK___2206.call(this,x,y); | |
default: | |
return distinct_QMARK___2207.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
distinct_QMARK_.cljs$lang$maxFixedArity = 2; | |
distinct_QMARK_.cljs$lang$applyTo = distinct_QMARK___2207.cljs$lang$applyTo; | |
return distinct_QMARK_; | |
})() | |
; | |
/** | |
* Comparator. Returns a negative number, zero, or a positive number | |
* when x is logically 'less than', 'equal to', or 'greater than' | |
* y. Uses google.array.defaultCompare. | |
*/ | |
cljs.core.compare = (function compare(x,y){ | |
return goog.array.defaultCompare.call(null,x,y); | |
}); | |
/** | |
* Given a fn that might be boolean valued or a comparator, | |
* return a fn that is a comparator. | |
*/ | |
cljs.core.fn__GT_comparator = (function fn__GT_comparator(f){ | |
if(cljs.core.truth_(cljs.core._EQ_.call(null,f,cljs.core.compare))) | |
{return cljs.core.compare; | |
} else | |
{return (function (x,y){ | |
var r__2215 = f.call(null,x,y); | |
if(cljs.core.truth_(cljs.core.number_QMARK_.call(null,r__2215))) | |
{return r__2215; | |
} else | |
{if(cljs.core.truth_(r__2215)) | |
{return -1; | |
} else | |
{if(cljs.core.truth_(f.call(null,y,x))) | |
{return 1; | |
} else | |
{return 0; | |
} | |
} | |
} | |
}); | |
} | |
}); | |
/** | |
* Returns a sorted sequence of the items in coll. Comp can be | |
* boolean-valued comparison funcion, or a -/0/+ valued comparator. | |
* Comp defaults to compare. | |
*/ | |
cljs.core.sort = (function() { | |
var sort = null; | |
var sort__2217 = (function (coll){ | |
return sort.call(null,cljs.core.compare,coll); | |
}); | |
var sort__2218 = (function (comp,coll){ | |
if(cljs.core.truth_(cljs.core.seq.call(null,coll))) | |
{var a__2216 = cljs.core.to_array.call(null,coll); | |
goog.array.stableSort.call(null,a__2216,cljs.core.fn__GT_comparator.call(null,comp)); | |
return cljs.core.seq.call(null,a__2216); | |
} else | |
{return cljs.core.List.EMPTY; | |
} | |
}); | |
sort = function(comp,coll){ | |
switch(arguments.length){ | |
case 1 : | |
return sort__2217.call(this,comp); | |
case 2 : | |
return sort__2218.call(this,comp,coll); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return sort; | |
})() | |
; | |
/** | |
* Returns a sorted sequence of the items in coll, where the sort | |
* order is determined by comparing (keyfn item). Comp can be | |
* boolean-valued comparison funcion, or a -/0/+ valued comparator. | |
* Comp defaults to compare. | |
*/ | |
cljs.core.sort_by = (function() { | |
var sort_by = null; | |
var sort_by__2220 = (function (keyfn,coll){ | |
return sort_by.call(null,keyfn,cljs.core.compare,coll); | |
}); | |
var sort_by__2221 = (function (keyfn,comp,coll){ | |
return cljs.core.sort.call(null,(function (x,y){ | |
return cljs.core.fn__GT_comparator.call(null,comp).call(null,keyfn.call(null,x),keyfn.call(null,y)); | |
}),coll); | |
}); | |
sort_by = function(keyfn,comp,coll){ | |
switch(arguments.length){ | |
case 2 : | |
return sort_by__2220.call(this,keyfn,comp); | |
case 3 : | |
return sort_by__2221.call(this,keyfn,comp,coll); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return sort_by; | |
})() | |
; | |
/** | |
* f should be a function of 2 arguments. If val is not supplied, | |
* returns the result of applying f to the first 2 items in coll, then | |
* applying f to that result and the 3rd item, etc. If coll contains no | |
* items, f must accept no arguments as well, and reduce returns the | |
* result of calling f with no arguments. If coll has only 1 item, it | |
* is returned and f is not called. If val is supplied, returns the | |
* result of applying f to val and the first item in coll, then | |
* applying f to that result and the 2nd item, etc. If coll contains no | |
* items, returns val and f is not called. | |
*/ | |
cljs.core.reduce = (function() { | |
var reduce = null; | |
var reduce__2223 = (function (f,coll){ | |
return cljs.core._reduce.call(null,coll,f); | |
}); | |
var reduce__2224 = (function (f,val,coll){ | |
return cljs.core._reduce.call(null,coll,f,val); | |
}); | |
reduce = function(f,val,coll){ | |
switch(arguments.length){ | |
case 2 : | |
return reduce__2223.call(this,f,val); | |
case 3 : | |
return reduce__2224.call(this,f,val,coll); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return reduce; | |
})() | |
; | |
cljs.core.seq_reduce = (function() { | |
var seq_reduce = null; | |
var seq_reduce__2230 = (function (f,coll){ | |
var temp__3723__auto____2226 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3723__auto____2226)) | |
{var s__2227 = temp__3723__auto____2226; | |
return cljs.core.reduce.call(null,f,cljs.core.first.call(null,s__2227),cljs.core.next.call(null,s__2227)); | |
} else | |
{return f.call(null); | |
} | |
}); | |
var seq_reduce__2231 = (function (f,val,coll){ | |
var val__2228 = val; | |
var coll__2229 = cljs.core.seq.call(null,coll); | |
var G__2233,G__2234;G__2233=G__2234=new Object(); | |
while(G__2233===G__2234){ | |
G__2233=(function(continue_val){ | |
if(cljs.core.truth_(coll__2229)) | |
{{ | |
var G__2235 = f.call(null,val__2228,cljs.core.first.call(null,coll__2229)); | |
var G__2236 = cljs.core.next.call(null,coll__2229); | |
val__2228 = G__2235; | |
coll__2229 = G__2236; | |
return continue_val; | |
} | |
} else | |
{return val__2228; | |
} | |
})(G__2234);} | |
return G__2233; | |
}); | |
seq_reduce = function(f,val,coll){ | |
switch(arguments.length){ | |
case 2 : | |
return seq_reduce__2230.call(this,f,val); | |
case 3 : | |
return seq_reduce__2231.call(this,f,val,coll); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return seq_reduce; | |
})() | |
; | |
(cljs.core.IReduce["_"] = true); | |
(cljs.core._reduce["_"] = (function() { | |
var G__2237 = null; | |
var G__2237__2238 = (function (coll,f){ | |
return cljs.core.seq_reduce.call(null,f,coll); | |
}); | |
var G__2237__2239 = (function (coll,f,start){ | |
return cljs.core.seq_reduce.call(null,f,start,coll); | |
}); | |
G__2237 = function(coll,f,start){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2237__2238.call(this,coll,f); | |
case 3 : | |
return G__2237__2239.call(this,coll,f,start); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2237; | |
})() | |
); | |
/** | |
* Returns the sum of nums. (+) returns 0. | |
* @param {...*} var_args | |
*/ | |
cljs.core._PLUS_ = (function() { | |
var _PLUS_ = null; | |
var _PLUS___2241 = (function (){ | |
return 0; | |
}); | |
var _PLUS___2242 = (function (x){ | |
return x; | |
}); | |
var _PLUS___2243 = (function (x,y){ | |
return (x + y); | |
}); | |
var _PLUS___2244 = (function() { | |
var G__2246__delegate = function (x,y,more){ | |
return cljs.core.reduce.call(null,_PLUS_,_PLUS_.call(null,x,y),more); | |
}; | |
var G__2246 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2246__delegate.call(this, x, y, more); | |
}; | |
G__2246.cljs$lang$maxFixedArity = 2; | |
G__2246.cljs$lang$applyTo = (function (arglist__2247){ | |
var x = cljs.core.first(arglist__2247); | |
var y = cljs.core.first(cljs.core.next(arglist__2247)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2247)); | |
return G__2246__delegate.call(this, x, y, more); | |
}); | |
return G__2246; | |
})() | |
; | |
_PLUS_ = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return _PLUS___2241.call(this); | |
case 1 : | |
return _PLUS___2242.call(this,x); | |
case 2 : | |
return _PLUS___2243.call(this,x,y); | |
default: | |
return _PLUS___2244.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
_PLUS_.cljs$lang$maxFixedArity = 2; | |
_PLUS_.cljs$lang$applyTo = _PLUS___2244.cljs$lang$applyTo; | |
return _PLUS_; | |
})() | |
; | |
/** | |
* If no ys are supplied, returns the negation of x, else subtracts | |
* the ys from x and returns the result. | |
* @param {...*} var_args | |
*/ | |
cljs.core._ = (function() { | |
var _ = null; | |
var ___2248 = (function (x){ | |
return (- x); | |
}); | |
var ___2249 = (function (x,y){ | |
return (x - y); | |
}); | |
var ___2250 = (function() { | |
var G__2252__delegate = function (x,y,more){ | |
return cljs.core.reduce.call(null,_,_.call(null,x,y),more); | |
}; | |
var G__2252 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2252__delegate.call(this, x, y, more); | |
}; | |
G__2252.cljs$lang$maxFixedArity = 2; | |
G__2252.cljs$lang$applyTo = (function (arglist__2253){ | |
var x = cljs.core.first(arglist__2253); | |
var y = cljs.core.first(cljs.core.next(arglist__2253)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2253)); | |
return G__2252__delegate.call(this, x, y, more); | |
}); | |
return G__2252; | |
})() | |
; | |
_ = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return ___2248.call(this,x); | |
case 2 : | |
return ___2249.call(this,x,y); | |
default: | |
return ___2250.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
_.cljs$lang$maxFixedArity = 2; | |
_.cljs$lang$applyTo = ___2250.cljs$lang$applyTo; | |
return _; | |
})() | |
; | |
/** | |
* Returns the product of nums. (*) returns 1. | |
* @param {...*} var_args | |
*/ | |
cljs.core._STAR_ = (function() { | |
var _STAR_ = null; | |
var _STAR___2254 = (function (){ | |
return 1; | |
}); | |
var _STAR___2255 = (function (x){ | |
return x; | |
}); | |
var _STAR___2256 = (function (x,y){ | |
return (x * y); | |
}); | |
var _STAR___2257 = (function() { | |
var G__2259__delegate = function (x,y,more){ | |
return cljs.core.reduce.call(null,_STAR_,_STAR_.call(null,x,y),more); | |
}; | |
var G__2259 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2259__delegate.call(this, x, y, more); | |
}; | |
G__2259.cljs$lang$maxFixedArity = 2; | |
G__2259.cljs$lang$applyTo = (function (arglist__2260){ | |
var x = cljs.core.first(arglist__2260); | |
var y = cljs.core.first(cljs.core.next(arglist__2260)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2260)); | |
return G__2259__delegate.call(this, x, y, more); | |
}); | |
return G__2259; | |
})() | |
; | |
_STAR_ = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return _STAR___2254.call(this); | |
case 1 : | |
return _STAR___2255.call(this,x); | |
case 2 : | |
return _STAR___2256.call(this,x,y); | |
default: | |
return _STAR___2257.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
_STAR_.cljs$lang$maxFixedArity = 2; | |
_STAR_.cljs$lang$applyTo = _STAR___2257.cljs$lang$applyTo; | |
return _STAR_; | |
})() | |
; | |
/** | |
* If no denominators are supplied, returns 1/numerator, | |
* else returns numerator divided by all of the denominators. | |
* @param {...*} var_args | |
*/ | |
cljs.core._SLASH_ = (function() { | |
var _SLASH_ = null; | |
var _SLASH___2261 = (function (x){ | |
return (1 / x); | |
}); | |
var _SLASH___2262 = (function (x,y){ | |
return (x / y); | |
}); | |
var _SLASH___2263 = (function() { | |
var G__2265__delegate = function (x,y,more){ | |
return cljs.core.reduce.call(null,_SLASH_,_SLASH_.call(null,x,y),more); | |
}; | |
var G__2265 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2265__delegate.call(this, x, y, more); | |
}; | |
G__2265.cljs$lang$maxFixedArity = 2; | |
G__2265.cljs$lang$applyTo = (function (arglist__2266){ | |
var x = cljs.core.first(arglist__2266); | |
var y = cljs.core.first(cljs.core.next(arglist__2266)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2266)); | |
return G__2265__delegate.call(this, x, y, more); | |
}); | |
return G__2265; | |
})() | |
; | |
_SLASH_ = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return _SLASH___2261.call(this,x); | |
case 2 : | |
return _SLASH___2262.call(this,x,y); | |
default: | |
return _SLASH___2263.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
_SLASH_.cljs$lang$maxFixedArity = 2; | |
_SLASH_.cljs$lang$applyTo = _SLASH___2263.cljs$lang$applyTo; | |
return _SLASH_; | |
})() | |
; | |
/** | |
* Returns non-nil if nums are in monotonically increasing order, | |
* otherwise false. | |
* @param {...*} var_args | |
*/ | |
cljs.core._LT_ = (function() { | |
var _LT_ = null; | |
var _LT___2267 = (function (x){ | |
return true; | |
}); | |
var _LT___2268 = (function (x,y){ | |
return (x < y); | |
}); | |
var _LT___2269 = (function() { | |
var G__2271__delegate = function (x,y,more){ | |
var G__2272,G__2273;G__2272=G__2273=new Object(); | |
while(G__2272===G__2273){ | |
G__2272=(function(continue_val){ | |
if(cljs.core.truth_(_LT_.call(null,x,y))) | |
{if(cljs.core.truth_(cljs.core.next.call(null,more))) | |
{{ | |
var G__2274 = y; | |
var G__2275 = cljs.core.first.call(null,more); | |
var G__2276 = cljs.core.next.call(null,more); | |
x = G__2274; | |
y = G__2275; | |
more = G__2276; | |
return continue_val; | |
} | |
} else | |
{return _LT_.call(null,y,cljs.core.first.call(null,more)); | |
} | |
} else | |
{return false; | |
} | |
})(G__2273);} | |
return G__2272; | |
}; | |
var G__2271 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2271__delegate.call(this, x, y, more); | |
}; | |
G__2271.cljs$lang$maxFixedArity = 2; | |
G__2271.cljs$lang$applyTo = (function (arglist__2277){ | |
var x = cljs.core.first(arglist__2277); | |
var y = cljs.core.first(cljs.core.next(arglist__2277)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2277)); | |
return G__2271__delegate.call(this, x, y, more); | |
}); | |
return G__2271; | |
})() | |
; | |
_LT_ = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return _LT___2267.call(this,x); | |
case 2 : | |
return _LT___2268.call(this,x,y); | |
default: | |
return _LT___2269.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
_LT_.cljs$lang$maxFixedArity = 2; | |
_LT_.cljs$lang$applyTo = _LT___2269.cljs$lang$applyTo; | |
return _LT_; | |
})() | |
; | |
/** | |
* Returns non-nil if nums are in monotonically non-decreasing order, | |
* otherwise false. | |
* @param {...*} var_args | |
*/ | |
cljs.core._LT__EQ_ = (function() { | |
var _LT__EQ_ = null; | |
var _LT__EQ___2278 = (function (x){ | |
return true; | |
}); | |
var _LT__EQ___2279 = (function (x,y){ | |
return (x <= y); | |
}); | |
var _LT__EQ___2280 = (function() { | |
var G__2282__delegate = function (x,y,more){ | |
var G__2283,G__2284;G__2283=G__2284=new Object(); | |
while(G__2283===G__2284){ | |
G__2283=(function(continue_val){ | |
if(cljs.core.truth_(_LT__EQ_.call(null,x,y))) | |
{if(cljs.core.truth_(cljs.core.next.call(null,more))) | |
{{ | |
var G__2285 = y; | |
var G__2286 = cljs.core.first.call(null,more); | |
var G__2287 = cljs.core.next.call(null,more); | |
x = G__2285; | |
y = G__2286; | |
more = G__2287; | |
return continue_val; | |
} | |
} else | |
{return _LT__EQ_.call(null,y,cljs.core.first.call(null,more)); | |
} | |
} else | |
{return false; | |
} | |
})(G__2284);} | |
return G__2283; | |
}; | |
var G__2282 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2282__delegate.call(this, x, y, more); | |
}; | |
G__2282.cljs$lang$maxFixedArity = 2; | |
G__2282.cljs$lang$applyTo = (function (arglist__2288){ | |
var x = cljs.core.first(arglist__2288); | |
var y = cljs.core.first(cljs.core.next(arglist__2288)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2288)); | |
return G__2282__delegate.call(this, x, y, more); | |
}); | |
return G__2282; | |
})() | |
; | |
_LT__EQ_ = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return _LT__EQ___2278.call(this,x); | |
case 2 : | |
return _LT__EQ___2279.call(this,x,y); | |
default: | |
return _LT__EQ___2280.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
_LT__EQ_.cljs$lang$maxFixedArity = 2; | |
_LT__EQ_.cljs$lang$applyTo = _LT__EQ___2280.cljs$lang$applyTo; | |
return _LT__EQ_; | |
})() | |
; | |
/** | |
* Returns non-nil if nums are in monotonically decreasing order, | |
* otherwise false. | |
* @param {...*} var_args | |
*/ | |
cljs.core._GT_ = (function() { | |
var _GT_ = null; | |
var _GT___2289 = (function (x){ | |
return true; | |
}); | |
var _GT___2290 = (function (x,y){ | |
return (x > y); | |
}); | |
var _GT___2291 = (function() { | |
var G__2293__delegate = function (x,y,more){ | |
var G__2294,G__2295;G__2294=G__2295=new Object(); | |
while(G__2294===G__2295){ | |
G__2294=(function(continue_val){ | |
if(cljs.core.truth_(_GT_.call(null,x,y))) | |
{if(cljs.core.truth_(cljs.core.next.call(null,more))) | |
{{ | |
var G__2296 = y; | |
var G__2297 = cljs.core.first.call(null,more); | |
var G__2298 = cljs.core.next.call(null,more); | |
x = G__2296; | |
y = G__2297; | |
more = G__2298; | |
return continue_val; | |
} | |
} else | |
{return _GT_.call(null,y,cljs.core.first.call(null,more)); | |
} | |
} else | |
{return false; | |
} | |
})(G__2295);} | |
return G__2294; | |
}; | |
var G__2293 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2293__delegate.call(this, x, y, more); | |
}; | |
G__2293.cljs$lang$maxFixedArity = 2; | |
G__2293.cljs$lang$applyTo = (function (arglist__2299){ | |
var x = cljs.core.first(arglist__2299); | |
var y = cljs.core.first(cljs.core.next(arglist__2299)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2299)); | |
return G__2293__delegate.call(this, x, y, more); | |
}); | |
return G__2293; | |
})() | |
; | |
_GT_ = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return _GT___2289.call(this,x); | |
case 2 : | |
return _GT___2290.call(this,x,y); | |
default: | |
return _GT___2291.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
_GT_.cljs$lang$maxFixedArity = 2; | |
_GT_.cljs$lang$applyTo = _GT___2291.cljs$lang$applyTo; | |
return _GT_; | |
})() | |
; | |
/** | |
* Returns non-nil if nums are in monotonically non-increasing order, | |
* otherwise false. | |
* @param {...*} var_args | |
*/ | |
cljs.core._GT__EQ_ = (function() { | |
var _GT__EQ_ = null; | |
var _GT__EQ___2300 = (function (x){ | |
return true; | |
}); | |
var _GT__EQ___2301 = (function (x,y){ | |
return (x >= y); | |
}); | |
var _GT__EQ___2302 = (function() { | |
var G__2304__delegate = function (x,y,more){ | |
var G__2305,G__2306;G__2305=G__2306=new Object(); | |
while(G__2305===G__2306){ | |
G__2305=(function(continue_val){ | |
if(cljs.core.truth_(_GT__EQ_.call(null,x,y))) | |
{if(cljs.core.truth_(cljs.core.next.call(null,more))) | |
{{ | |
var G__2307 = y; | |
var G__2308 = cljs.core.first.call(null,more); | |
var G__2309 = cljs.core.next.call(null,more); | |
x = G__2307; | |
y = G__2308; | |
more = G__2309; | |
return continue_val; | |
} | |
} else | |
{return _GT__EQ_.call(null,y,cljs.core.first.call(null,more)); | |
} | |
} else | |
{return false; | |
} | |
})(G__2306);} | |
return G__2305; | |
}; | |
var G__2304 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2304__delegate.call(this, x, y, more); | |
}; | |
G__2304.cljs$lang$maxFixedArity = 2; | |
G__2304.cljs$lang$applyTo = (function (arglist__2310){ | |
var x = cljs.core.first(arglist__2310); | |
var y = cljs.core.first(cljs.core.next(arglist__2310)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2310)); | |
return G__2304__delegate.call(this, x, y, more); | |
}); | |
return G__2304; | |
})() | |
; | |
_GT__EQ_ = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return _GT__EQ___2300.call(this,x); | |
case 2 : | |
return _GT__EQ___2301.call(this,x,y); | |
default: | |
return _GT__EQ___2302.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
_GT__EQ_.cljs$lang$maxFixedArity = 2; | |
_GT__EQ_.cljs$lang$applyTo = _GT__EQ___2302.cljs$lang$applyTo; | |
return _GT__EQ_; | |
})() | |
; | |
/** | |
* Returns a number one less than num. | |
*/ | |
cljs.core.dec = (function dec(x){ | |
return cljs.core._.call(null,x,1); | |
}); | |
/** | |
* Returns the greatest of the nums. | |
* @param {...*} var_args | |
*/ | |
cljs.core.max = (function() { | |
var max = null; | |
var max__2311 = (function (x){ | |
return x; | |
}); | |
var max__2312 = (function (x,y){ | |
return ((x > y) ? x : y); | |
}); | |
var max__2313 = (function() { | |
var G__2315__delegate = function (x,y,more){ | |
return cljs.core.reduce.call(null,max,max.call(null,x,y),more); | |
}; | |
var G__2315 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2315__delegate.call(this, x, y, more); | |
}; | |
G__2315.cljs$lang$maxFixedArity = 2; | |
G__2315.cljs$lang$applyTo = (function (arglist__2316){ | |
var x = cljs.core.first(arglist__2316); | |
var y = cljs.core.first(cljs.core.next(arglist__2316)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2316)); | |
return G__2315__delegate.call(this, x, y, more); | |
}); | |
return G__2315; | |
})() | |
; | |
max = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return max__2311.call(this,x); | |
case 2 : | |
return max__2312.call(this,x,y); | |
default: | |
return max__2313.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
max.cljs$lang$maxFixedArity = 2; | |
max.cljs$lang$applyTo = max__2313.cljs$lang$applyTo; | |
return max; | |
})() | |
; | |
/** | |
* Returns the least of the nums. | |
* @param {...*} var_args | |
*/ | |
cljs.core.min = (function() { | |
var min = null; | |
var min__2317 = (function (x){ | |
return x; | |
}); | |
var min__2318 = (function (x,y){ | |
return ((x < y) ? x : y); | |
}); | |
var min__2319 = (function() { | |
var G__2321__delegate = function (x,y,more){ | |
return cljs.core.reduce.call(null,min,min.call(null,x,y),more); | |
}; | |
var G__2321 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2321__delegate.call(this, x, y, more); | |
}; | |
G__2321.cljs$lang$maxFixedArity = 2; | |
G__2321.cljs$lang$applyTo = (function (arglist__2322){ | |
var x = cljs.core.first(arglist__2322); | |
var y = cljs.core.first(cljs.core.next(arglist__2322)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2322)); | |
return G__2321__delegate.call(this, x, y, more); | |
}); | |
return G__2321; | |
})() | |
; | |
min = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return min__2317.call(this,x); | |
case 2 : | |
return min__2318.call(this,x,y); | |
default: | |
return min__2319.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
min.cljs$lang$maxFixedArity = 2; | |
min.cljs$lang$applyTo = min__2319.cljs$lang$applyTo; | |
return min; | |
})() | |
; | |
cljs.core.fix = (function fix(q){ | |
if(cljs.core.truth_(cljs.core._GT__EQ_.call(null,q,0))) | |
{return Math.floor.call(null,q); | |
} else | |
{return Math.ceil.call(null,q); | |
} | |
}); | |
/** | |
* Modulus of num and div. Truncates toward negative infinity. | |
*/ | |
cljs.core.mod = (function mod(n,d){ | |
return (n % d); | |
}); | |
/** | |
* quot[ient] of dividing numerator by denominator. | |
*/ | |
cljs.core.quot = (function quot(n,d){ | |
var rem__2323 = cljs.core.mod.call(null,n,d); | |
return cljs.core.fix.call(null,((n - rem__2323) / d)); | |
}); | |
/** | |
* remainder of dividing numerator by denominator. | |
*/ | |
cljs.core.rem = (function rem(n,d){ | |
var q__2324 = cljs.core.quot.call(null,n,d); | |
return (n - (d * q__2324)); | |
}); | |
/** | |
* Returns a random floating point number between 0 (inclusive) and n (default 1) (exclusive). | |
*/ | |
cljs.core.rand = (function() { | |
var rand = null; | |
var rand__2325 = (function (){ | |
return Math.random.call(null); | |
}); | |
var rand__2326 = (function (n){ | |
return cljs.core._STAR_.call(null,n,rand.call(null)); | |
}); | |
rand = function(n){ | |
switch(arguments.length){ | |
case 0 : | |
return rand__2325.call(this); | |
case 1 : | |
return rand__2326.call(this,n); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return rand; | |
})() | |
; | |
/** | |
* Returns a random integer between 0 (inclusive) and n (exclusive). | |
*/ | |
cljs.core.rand_int = (function rand_int(n){ | |
return cljs.core.fix.call(null,cljs.core.rand.call(null,n)); | |
}); | |
/** | |
* Bitwise exclusive or | |
*/ | |
cljs.core.bit_xor = (function bit_xor(x,y){ | |
return (x ^ y); | |
}); | |
/** | |
* Bitwise and | |
*/ | |
cljs.core.bit_and = (function bit_and(x,y){ | |
return (x & y); | |
}); | |
/** | |
* Bitwise or | |
*/ | |
cljs.core.bit_or = (function bit_or(x,y){ | |
return (x | y); | |
}); | |
/** | |
* Bitwise and | |
*/ | |
cljs.core.bit_and_not = (function bit_and_not(x,y){ | |
return (x & ~y); | |
}); | |
/** | |
* Clear bit at index n | |
*/ | |
cljs.core.bit_clear = (function bit_clear(x,n){ | |
return (x & ~(1 << n)); | |
}); | |
/** | |
* Flip bit at index n | |
*/ | |
cljs.core.bit_flip = (function bit_flip(x,n){ | |
return (x ^ (1 << n)); | |
}); | |
/** | |
* Bitwise complement | |
*/ | |
cljs.core.bit_not = (function bit_not(x){ | |
return (~x); | |
}); | |
/** | |
* Set bit at index n | |
*/ | |
cljs.core.bit_set = (function bit_set(x,n){ | |
return (x | (1 << n)); | |
}); | |
/** | |
* Test bit at index n | |
*/ | |
cljs.core.bit_test = (function bit_test(x,n){ | |
return ((x & (1 << n)) != 0); | |
}); | |
/** | |
* Bitwise shift left | |
*/ | |
cljs.core.bit_shift_left = (function bit_shift_left(x,n){ | |
return (x << n); | |
}); | |
/** | |
* Bitwise shift right | |
*/ | |
cljs.core.bit_shift_right = (function bit_shift_right(x,n){ | |
return (x >> n); | |
}); | |
/** | |
* Returns non-nil if nums all have the equivalent | |
* value (type-independent), otherwise false | |
* @param {...*} var_args | |
*/ | |
cljs.core._EQ__EQ_ = (function() { | |
var _EQ__EQ_ = null; | |
var _EQ__EQ___2328 = (function (x){ | |
return true; | |
}); | |
var _EQ__EQ___2329 = (function (x,y){ | |
return cljs.core._equiv.call(null,x,y); | |
}); | |
var _EQ__EQ___2330 = (function() { | |
var G__2332__delegate = function (x,y,more){ | |
var G__2333,G__2334;G__2333=G__2334=new Object(); | |
while(G__2333===G__2334){ | |
G__2333=(function(continue_val){ | |
if(cljs.core.truth_(_EQ__EQ_.call(null,x,y))) | |
{if(cljs.core.truth_(cljs.core.next.call(null,more))) | |
{{ | |
var G__2335 = y; | |
var G__2336 = cljs.core.first.call(null,more); | |
var G__2337 = cljs.core.next.call(null,more); | |
x = G__2335; | |
y = G__2336; | |
more = G__2337; | |
return continue_val; | |
} | |
} else | |
{return _EQ__EQ_.call(null,y,cljs.core.first.call(null,more)); | |
} | |
} else | |
{return false; | |
} | |
})(G__2334);} | |
return G__2333; | |
}; | |
var G__2332 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2332__delegate.call(this, x, y, more); | |
}; | |
G__2332.cljs$lang$maxFixedArity = 2; | |
G__2332.cljs$lang$applyTo = (function (arglist__2338){ | |
var x = cljs.core.first(arglist__2338); | |
var y = cljs.core.first(cljs.core.next(arglist__2338)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2338)); | |
return G__2332__delegate.call(this, x, y, more); | |
}); | |
return G__2332; | |
})() | |
; | |
_EQ__EQ_ = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return _EQ__EQ___2328.call(this,x); | |
case 2 : | |
return _EQ__EQ___2329.call(this,x,y); | |
default: | |
return _EQ__EQ___2330.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
_EQ__EQ_.cljs$lang$maxFixedArity = 2; | |
_EQ__EQ_.cljs$lang$applyTo = _EQ__EQ___2330.cljs$lang$applyTo; | |
return _EQ__EQ_; | |
})() | |
; | |
/** | |
* Returns true if num is greater than zero, else false | |
*/ | |
cljs.core.pos_QMARK_ = (function pos_QMARK_(n){ | |
return cljs.core._LT_.call(null,0,n); | |
}); | |
cljs.core.zero_QMARK_ = (function zero_QMARK_(n){ | |
return cljs.core._EQ__EQ_.call(null,0,n); | |
}); | |
/** | |
* Returns true if num is less than zero, else false | |
*/ | |
cljs.core.neg_QMARK_ = (function neg_QMARK_(x){ | |
return (x < 0); | |
}); | |
/** | |
* Returns the nth next of coll, (seq coll) when n is 0. | |
*/ | |
cljs.core.nthnext = (function nthnext(coll,n){ | |
var n__2339 = n; | |
var xs__2340 = cljs.core.seq.call(null,coll); | |
var G__2342,G__2343;G__2342=G__2343=new Object(); | |
while(G__2342===G__2343){ | |
G__2342=(function(continue_val){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2341 = xs__2340; | |
if(cljs.core.truth_(and__3574__auto____2341)) | |
{return cljs.core.pos_QMARK_.call(null,n__2339); | |
} else | |
{return and__3574__auto____2341; | |
} | |
})())) | |
{{ | |
var G__2344 = cljs.core.dec.call(null,n__2339); | |
var G__2345 = cljs.core.next.call(null,xs__2340); | |
n__2339 = G__2344; | |
xs__2340 = G__2345; | |
return continue_val; | |
} | |
} else | |
{return xs__2340; | |
} | |
})(G__2343);} | |
return G__2342; | |
}); | |
(cljs.core.IIndexed["_"] = true); | |
(cljs.core._nth["_"] = (function() { | |
var G__2350 = null; | |
var G__2350__2351 = (function (coll,n){ | |
var temp__3723__auto____2346 = cljs.core.nthnext.call(null,coll,n); | |
if(cljs.core.truth_(temp__3723__auto____2346)) | |
{var xs__2347 = temp__3723__auto____2346; | |
return cljs.core.first.call(null,xs__2347); | |
} else | |
{throw "Index out of bounds"; | |
} | |
}); | |
var G__2350__2352 = (function (coll,n,not_found){ | |
var temp__3723__auto____2348 = cljs.core.nthnext.call(null,coll,n); | |
if(cljs.core.truth_(temp__3723__auto____2348)) | |
{var xs__2349 = temp__3723__auto____2348; | |
return cljs.core.first.call(null,xs__2349); | |
} else | |
{return not_found; | |
} | |
}); | |
G__2350 = function(coll,n,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2350__2351.call(this,coll,n); | |
case 3 : | |
return G__2350__2352.call(this,coll,n,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2350; | |
})() | |
); | |
/** | |
* With no args, returns the empty string. With one arg x, returns | |
* x.toString(). (str nil) returns the empty string. With more than | |
* one arg, returns the concatenation of the str values of the args. | |
* @param {...*} var_args | |
*/ | |
cljs.core.str = (function() { | |
var str = null; | |
var str__2354 = (function (){ | |
return ""; | |
}); | |
var str__2355 = (function (x){ | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,x))) | |
{return ""; | |
} else | |
{return x.toString(); | |
} | |
}); | |
var str__2356 = (function() { | |
var G__2358__delegate = function (x,ys){ | |
return (function (sb,more){ | |
var G__2359,G__2360;G__2359=G__2360=new Object(); | |
while(G__2359===G__2360){ | |
G__2359=(function(continue_val){ | |
if(cljs.core.truth_(more)) | |
{{ | |
var G__2361 = sb.append(str.call(null,cljs.core.first.call(null,more))); | |
var G__2362 = cljs.core.next.call(null,more); | |
sb = G__2361; | |
more = G__2362; | |
return continue_val; | |
} | |
} else | |
{return str.call(null,sb); | |
} | |
})(G__2360);} | |
return G__2359; | |
}).call(null,(new goog.string.StringBuffer(str.call(null,x))),ys); | |
}; | |
var G__2358 = function (x,var_args){ | |
var ys = null; | |
if (goog.isDef(var_args)) { | |
ys = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1),0); | |
} | |
return G__2358__delegate.call(this, x, ys); | |
}; | |
G__2358.cljs$lang$maxFixedArity = 1; | |
G__2358.cljs$lang$applyTo = (function (arglist__2363){ | |
var x = cljs.core.first(arglist__2363); | |
var ys = cljs.core.rest(arglist__2363); | |
return G__2358__delegate.call(this, x, ys); | |
}); | |
return G__2358; | |
})() | |
; | |
str = function(x,var_args){ | |
var ys = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return str__2354.call(this); | |
case 1 : | |
return str__2355.call(this,x); | |
default: | |
return str__2356.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
str.cljs$lang$maxFixedArity = 1; | |
str.cljs$lang$applyTo = str__2356.cljs$lang$applyTo; | |
return str; | |
})() | |
; | |
/** | |
* Returns the substring of s beginning at start inclusive, and ending | |
* at end (defaults to length of string), exclusive. | |
*/ | |
cljs.core.subs = (function() { | |
var subs = null; | |
var subs__2364 = (function (s,start){ | |
return s.substring(start); | |
}); | |
var subs__2365 = (function (s,start,end){ | |
return s.substring(start,end); | |
}); | |
subs = function(s,start,end){ | |
switch(arguments.length){ | |
case 2 : | |
return subs__2364.call(this,s,start); | |
case 3 : | |
return subs__2365.call(this,s,start,end); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return subs; | |
})() | |
; | |
/** | |
* Returns a Symbol with the given namespace and name. | |
*/ | |
cljs.core.symbol = (function() { | |
var symbol = null; | |
var symbol__2367 = (function (name){ | |
if(cljs.core.truth_(cljs.core.symbol_QMARK_.call(null,name))) | |
{return name; | |
} else | |
{if(cljs.core.truth_(cljs.core.keyword_QMARK_.call(null,name))) | |
{return cljs.core.str.call(null,"ï·‘","'",cljs.core.subs.call(null,name,2)); | |
} else | |
{if(cljs.core.truth_("ï·'else")) | |
{return cljs.core.str.call(null,"ï·‘","'",name); | |
} else | |
{return null; | |
} | |
} | |
} | |
}); | |
var symbol__2368 = (function (ns,name){ | |
return symbol.call(null,cljs.core.str.call(null,ns,"/",name)); | |
}); | |
symbol = function(ns,name){ | |
switch(arguments.length){ | |
case 1 : | |
return symbol__2367.call(this,ns); | |
case 2 : | |
return symbol__2368.call(this,ns,name); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return symbol; | |
})() | |
; | |
/** | |
* Returns a Keyword with the given namespace and name. Do not use : | |
* in the keyword strings, it will be added automatically. | |
*/ | |
cljs.core.keyword = (function() { | |
var keyword = null; | |
var keyword__2370 = (function (name){ | |
if(cljs.core.truth_(cljs.core.keyword_QMARK_.call(null,name))) | |
{return name; | |
} else | |
{if(cljs.core.truth_(cljs.core.symbol_QMARK_.call(null,name))) | |
{return cljs.core.str.call(null,"ï·","'",cljs.core.subs.call(null,name,2)); | |
} else | |
{if(cljs.core.truth_("ï·'else")) | |
{return cljs.core.str.call(null,"ï·","'",name); | |
} else | |
{return null; | |
} | |
} | |
} | |
}); | |
var keyword__2371 = (function (ns,name){ | |
return keyword.call(null,cljs.core.str.call(null,ns,"/",name)); | |
}); | |
keyword = function(ns,name){ | |
switch(arguments.length){ | |
case 1 : | |
return keyword__2370.call(this,ns); | |
case 2 : | |
return keyword__2371.call(this,ns,name); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return keyword; | |
})() | |
; | |
/** | |
* Assumes x is sequential. Returns true if x equals y, otherwise | |
* returns false. | |
*/ | |
cljs.core.equiv_sequential = (function equiv_sequential(x,y){ | |
return cljs.core.boolean$.call(null,(cljs.core.truth_(cljs.core.sequential_QMARK_.call(null,y))?(function (){var xs__2373 = cljs.core.seq.call(null,x); | |
var ys__2374 = cljs.core.seq.call(null,y); | |
var G__2375,G__2376;G__2375=G__2376=new Object(); | |
while(G__2375===G__2376){ | |
G__2375=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,xs__2373))) | |
{return cljs.core.nil_QMARK_.call(null,ys__2374); | |
} else | |
{if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,ys__2374))) | |
{return false; | |
} else | |
{if(cljs.core.truth_(cljs.core._EQ_.call(null,cljs.core.first.call(null,xs__2373),cljs.core.first.call(null,ys__2374)))) | |
{{ | |
var G__2377 = cljs.core.next.call(null,xs__2373); | |
var G__2378 = cljs.core.next.call(null,ys__2374); | |
xs__2373 = G__2377; | |
ys__2374 = G__2378; | |
return continue_val; | |
} | |
} else | |
{if(cljs.core.truth_("ï·'else")) | |
{return false; | |
} else | |
{return null; | |
} | |
} | |
} | |
} | |
})(G__2376);} | |
return G__2375; | |
})():null)); | |
}); | |
cljs.core.hash_combine = (function hash_combine(seed,hash){ | |
return cljs.core.bit_xor.call(null,seed,cljs.core._PLUS_.call(null,hash,2654435769,cljs.core.bit_shift_left.call(null,seed,6),cljs.core.bit_shift_right.call(null,seed,2))); | |
}); | |
cljs.core.hash_coll = (function hash_coll(coll){ | |
return cljs.core.reduce.call(null,(function (p1__2379_SHARP_,p2__2380_SHARP_){ | |
return cljs.core.hash_combine.call(null,p1__2379_SHARP_,cljs.core.hash.call(null,p2__2380_SHARP_)); | |
}),cljs.core.hash.call(null,cljs.core.first.call(null,coll)),cljs.core.next.call(null,coll)); | |
}); | |
/** | |
* @constructor | |
*/ | |
cljs.core.List = (function (meta,first,rest,count){ | |
this.meta = meta; | |
this.first = first; | |
this.rest = rest; | |
this.count = count; | |
}) | |
cljs.core.List.prototype.cljs$core$IEquiv$ = true; | |
cljs.core.List.prototype.cljs$core$IEquiv$_equiv = (function (coll,other){ | |
var this__2381 = this; | |
return cljs.core.equiv_sequential.call(null,coll,other); | |
}); | |
cljs.core.List.prototype.cljs$core$ICollection$ = true; | |
cljs.core.List.prototype.cljs$core$ICollection$_conj = (function (coll,o){ | |
var this__2382 = this; | |
return (new cljs.core.List(this__2382.meta,o,coll,cljs.core.inc.call(null,this__2382.count))); | |
}); | |
cljs.core.List.prototype.cljs$core$ISeq$ = true; | |
cljs.core.List.prototype.cljs$core$ISeq$_first = (function (coll){ | |
var this__2383 = this; | |
return this__2383.first; | |
}); | |
cljs.core.List.prototype.cljs$core$ISeq$_rest = (function (coll){ | |
var this__2384 = this; | |
return this__2384.rest; | |
}); | |
cljs.core.List.prototype.cljs$core$ISeqable$ = true; | |
cljs.core.List.prototype.cljs$core$ISeqable$_seq = (function (coll){ | |
var this__2385 = this; | |
return coll; | |
}); | |
cljs.core.List.prototype.cljs$core$IStack$ = true; | |
cljs.core.List.prototype.cljs$core$IStack$_peek = (function (coll){ | |
var this__2386 = this; | |
return this__2386.first; | |
}); | |
cljs.core.List.prototype.cljs$core$IStack$_pop = (function (coll){ | |
var this__2387 = this; | |
return cljs.core._rest.call(null,coll); | |
}); | |
cljs.core.List.prototype.cljs$core$IWithMeta$ = true; | |
cljs.core.List.prototype.cljs$core$IWithMeta$_with_meta = (function (coll,meta){ | |
var this__2388 = this; | |
return (new cljs.core.List(meta,this__2388.first,this__2388.rest,this__2388.count)); | |
}); | |
cljs.core.List.prototype.cljs$core$IEmptyableCollection$ = true; | |
cljs.core.List.prototype.cljs$core$IEmptyableCollection$_empty = (function (coll){ | |
var this__2389 = this; | |
return cljs.core.List.EMPTY; | |
}); | |
cljs.core.List.prototype.cljs$core$IMeta$ = true; | |
cljs.core.List.prototype.cljs$core$IMeta$_meta = (function (coll){ | |
var this__2390 = this; | |
return this__2390.meta; | |
}); | |
cljs.core.List.prototype.cljs$core$IHash$ = true; | |
cljs.core.List.prototype.cljs$core$IHash$_hash = (function (coll){ | |
var this__2391 = this; | |
return cljs.core.hash_coll.call(null,coll); | |
}); | |
cljs.core.List.prototype.cljs$core$ICounted$ = true; | |
cljs.core.List.prototype.cljs$core$ICounted$_count = (function (coll){ | |
var this__2392 = this; | |
return this__2392.count; | |
}); | |
cljs.core.List.prototype.cljs$core$ISequential$ = true; | |
/** | |
* @constructor | |
*/ | |
cljs.core.EmptyList = (function (meta){ | |
this.meta = meta; | |
}) | |
cljs.core.EmptyList.prototype.cljs$core$IEquiv$ = true; | |
cljs.core.EmptyList.prototype.cljs$core$IEquiv$_equiv = (function (coll,other){ | |
var this__2393 = this; | |
return cljs.core.equiv_sequential.call(null,coll,other); | |
}); | |
cljs.core.EmptyList.prototype.cljs$core$ICollection$ = true; | |
cljs.core.EmptyList.prototype.cljs$core$ICollection$_conj = (function (coll,o){ | |
var this__2394 = this; | |
return (new cljs.core.List(this__2394.meta,o,null,1)); | |
}); | |
cljs.core.EmptyList.prototype.cljs$core$ISeq$ = true; | |
cljs.core.EmptyList.prototype.cljs$core$ISeq$_first = (function (coll){ | |
var this__2395 = this; | |
return null; | |
}); | |
cljs.core.EmptyList.prototype.cljs$core$ISeq$_rest = (function (coll){ | |
var this__2396 = this; | |
return null; | |
}); | |
cljs.core.EmptyList.prototype.cljs$core$ISeqable$ = true; | |
cljs.core.EmptyList.prototype.cljs$core$ISeqable$_seq = (function (coll){ | |
var this__2397 = this; | |
return null; | |
}); | |
cljs.core.EmptyList.prototype.cljs$core$IStack$ = true; | |
cljs.core.EmptyList.prototype.cljs$core$IStack$_peek = (function (coll){ | |
var this__2398 = this; | |
return null; | |
}); | |
cljs.core.EmptyList.prototype.cljs$core$IStack$_pop = (function (coll){ | |
var this__2399 = this; | |
return null; | |
}); | |
cljs.core.EmptyList.prototype.cljs$core$IWithMeta$ = true; | |
cljs.core.EmptyList.prototype.cljs$core$IWithMeta$_with_meta = (function (coll,meta){ | |
var this__2400 = this; | |
return (new cljs.core.EmptyList(meta)); | |
}); | |
cljs.core.EmptyList.prototype.cljs$core$IEmptyableCollection$ = true; | |
cljs.core.EmptyList.prototype.cljs$core$IEmptyableCollection$_empty = (function (coll){ | |
var this__2401 = this; | |
return coll; | |
}); | |
cljs.core.EmptyList.prototype.cljs$core$IMeta$ = true; | |
cljs.core.EmptyList.prototype.cljs$core$IMeta$_meta = (function (coll){ | |
var this__2402 = this; | |
return this__2402.meta; | |
}); | |
cljs.core.EmptyList.prototype.cljs$core$IHash$ = true; | |
cljs.core.EmptyList.prototype.cljs$core$IHash$_hash = (function (coll){ | |
var this__2403 = this; | |
return cljs.core.hash_coll.call(null,coll); | |
}); | |
cljs.core.EmptyList.prototype.cljs$core$ICounted$ = true; | |
cljs.core.EmptyList.prototype.cljs$core$ICounted$_count = (function (coll){ | |
var this__2404 = this; | |
return 0; | |
}); | |
cljs.core.EmptyList.prototype.cljs$core$ISequential$ = true; | |
cljs.core.List.EMPTY = (new cljs.core.EmptyList(null)); | |
/** | |
* Returns a seq of the items in coll in reverse order. Not lazy. | |
*/ | |
cljs.core.reverse = (function reverse(coll){ | |
return cljs.core.reduce.call(null,cljs.core.conj,cljs.core.List.EMPTY,coll); | |
}); | |
/** | |
* @param {...*} var_args | |
*/ | |
cljs.core.list = (function() { | |
var list__delegate = function (items){ | |
return cljs.core.reduce.call(null,cljs.core.conj,cljs.core.List.EMPTY,cljs.core.reverse.call(null,items)); | |
}; | |
var list = function (var_args){ | |
var items = null; | |
if (goog.isDef(var_args)) { | |
items = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return list__delegate.call(this, items); | |
}; | |
list.cljs$lang$maxFixedArity = 0; | |
list.cljs$lang$applyTo = (function (arglist__2405){ | |
var items = cljs.core.seq( arglist__2405 );; | |
return list__delegate.call(this, items); | |
}); | |
return list; | |
})() | |
; | |
/** | |
* @constructor | |
*/ | |
cljs.core.Cons = (function (meta,first,rest){ | |
this.meta = meta; | |
this.first = first; | |
this.rest = rest; | |
}) | |
cljs.core.Cons.prototype.cljs$core$ISeqable$ = true; | |
cljs.core.Cons.prototype.cljs$core$ISeqable$_seq = (function (coll){ | |
var this__2406 = this; | |
return coll; | |
}); | |
cljs.core.Cons.prototype.cljs$core$IHash$ = true; | |
cljs.core.Cons.prototype.cljs$core$IHash$_hash = (function (coll){ | |
var this__2407 = this; | |
return cljs.core.hash_coll.call(null,coll); | |
}); | |
cljs.core.Cons.prototype.cljs$core$IEquiv$ = true; | |
cljs.core.Cons.prototype.cljs$core$IEquiv$_equiv = (function (coll,other){ | |
var this__2408 = this; | |
return cljs.core.equiv_sequential.call(null,coll,other); | |
}); | |
cljs.core.Cons.prototype.cljs$core$ISequential$ = true; | |
cljs.core.Cons.prototype.cljs$core$IEmptyableCollection$ = true; | |
cljs.core.Cons.prototype.cljs$core$IEmptyableCollection$_empty = (function (coll){ | |
var this__2409 = this; | |
return cljs.core.with_meta.call(null,cljs.core.List.EMPTY,this__2409.meta); | |
}); | |
cljs.core.Cons.prototype.cljs$core$ICollection$ = true; | |
cljs.core.Cons.prototype.cljs$core$ICollection$_conj = (function (coll,o){ | |
var this__2410 = this; | |
return (new cljs.core.Cons(null,o,coll)); | |
}); | |
cljs.core.Cons.prototype.cljs$core$ISeq$ = true; | |
cljs.core.Cons.prototype.cljs$core$ISeq$_first = (function (coll){ | |
var this__2411 = this; | |
return this__2411.first; | |
}); | |
cljs.core.Cons.prototype.cljs$core$ISeq$_rest = (function (coll){ | |
var this__2412 = this; | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,this__2412.rest))) | |
{return cljs.core.List.EMPTY; | |
} else | |
{return this__2412.rest; | |
} | |
}); | |
cljs.core.Cons.prototype.cljs$core$IMeta$ = true; | |
cljs.core.Cons.prototype.cljs$core$IMeta$_meta = (function (coll){ | |
var this__2413 = this; | |
return this__2413.meta; | |
}); | |
cljs.core.Cons.prototype.cljs$core$IWithMeta$ = true; | |
cljs.core.Cons.prototype.cljs$core$IWithMeta$_with_meta = (function (coll,meta){ | |
var this__2414 = this; | |
return (new cljs.core.Cons(meta,this__2414.first,this__2414.rest)); | |
}); | |
/** | |
* Returns a new seq where x is the first element and seq is the rest. | |
*/ | |
cljs.core.cons = (function cons(x,seq){ | |
return (new cljs.core.Cons(null,x,seq)); | |
}); | |
(cljs.core.IReduce["string"] = true); | |
(cljs.core._reduce["string"] = (function() { | |
var G__2415 = null; | |
var G__2415__2416 = (function (string,f){ | |
return cljs.core.ci_reduce.call(null,string,f); | |
}); | |
var G__2415__2417 = (function (string,f,start){ | |
return cljs.core.ci_reduce.call(null,string,f,start); | |
}); | |
G__2415 = function(string,f,start){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2415__2416.call(this,string,f); | |
case 3 : | |
return G__2415__2417.call(this,string,f,start); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2415; | |
})() | |
); | |
(cljs.core.ILookup["string"] = true); | |
(cljs.core._lookup["string"] = (function() { | |
var G__2419 = null; | |
var G__2419__2420 = (function (string,k){ | |
return cljs.core._nth.call(null,string,k); | |
}); | |
var G__2419__2421 = (function (string,k,not_found){ | |
return cljs.core._nth.call(null,string,k,not_found); | |
}); | |
G__2419 = function(string,k,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2419__2420.call(this,string,k); | |
case 3 : | |
return G__2419__2421.call(this,string,k,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2419; | |
})() | |
); | |
(cljs.core.IIndexed["string"] = true); | |
(cljs.core._nth["string"] = (function() { | |
var G__2423 = null; | |
var G__2423__2424 = (function (string,n){ | |
if(cljs.core.truth_(cljs.core._LT_.call(null,n,cljs.core._count.call(null,string)))) | |
{return string.charAt(n); | |
} else | |
{return null; | |
} | |
}); | |
var G__2423__2425 = (function (string,n,not_found){ | |
if(cljs.core.truth_(cljs.core._LT_.call(null,n,cljs.core._count.call(null,string)))) | |
{return string.charAt(n); | |
} else | |
{return not_found; | |
} | |
}); | |
G__2423 = function(string,n,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2423__2424.call(this,string,n); | |
case 3 : | |
return G__2423__2425.call(this,string,n,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2423; | |
})() | |
); | |
(cljs.core.ICounted["string"] = true); | |
(cljs.core._count["string"] = (function (s){ | |
return s.length; | |
})); | |
(cljs.core.ISeqable["string"] = true); | |
(cljs.core._seq["string"] = (function (string){ | |
return cljs.core.prim_seq.call(null,string,0); | |
})); | |
(cljs.core.IHash["string"] = true); | |
(cljs.core._hash["string"] = (function (o){ | |
return goog.string.hashCode.call(null,o); | |
})); | |
goog.global['String']['prototype']['call'] = (function() { | |
var G__2427 = null; | |
var G__2427__2428 = (function (_,coll){ | |
return cljs.core.get.call(null,coll,this.toString()); | |
}); | |
var G__2427__2429 = (function (_,coll,not_found){ | |
return cljs.core.get.call(null,coll,this.toString(),not_found); | |
}); | |
G__2427 = function(_,coll,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2427__2428.call(this,_,coll); | |
case 3 : | |
return G__2427__2429.call(this,_,coll,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2427; | |
})() | |
; | |
goog.global['String']['prototype']['apply'] = (function (_,args){ | |
if(cljs.core.truth_(cljs.core._LT_.call(null,cljs.core.count.call(null,args),2))) | |
{return this.call(null,(args[0])); | |
} else | |
{return this.call(null,(args[0]),(args[1])); | |
} | |
}); | |
cljs.core.lazy_seq_value = (function lazy_seq_value(lazy_seq){ | |
var x__2431 = lazy_seq.x; | |
if(cljs.core.truth_(lazy_seq.realized)) | |
{return x__2431; | |
} else | |
{lazy_seq.x = x__2431.call(null); | |
lazy_seq.realized = true; | |
return lazy_seq.x; | |
} | |
}); | |
/** | |
* @constructor | |
*/ | |
cljs.core.LazySeq = (function (meta,realized,x){ | |
this.meta = meta; | |
this.realized = realized; | |
this.x = x; | |
}) | |
cljs.core.LazySeq.prototype.cljs$core$ISeqable$ = true; | |
cljs.core.LazySeq.prototype.cljs$core$ISeqable$_seq = (function (coll){ | |
var this__2432 = this; | |
return cljs.core.seq.call(null,cljs.core.lazy_seq_value.call(null,coll)); | |
}); | |
cljs.core.LazySeq.prototype.cljs$core$IHash$ = true; | |
cljs.core.LazySeq.prototype.cljs$core$IHash$_hash = (function (coll){ | |
var this__2433 = this; | |
return cljs.core.hash_coll.call(null,coll); | |
}); | |
cljs.core.LazySeq.prototype.cljs$core$IEquiv$ = true; | |
cljs.core.LazySeq.prototype.cljs$core$IEquiv$_equiv = (function (coll,other){ | |
var this__2434 = this; | |
return cljs.core.equiv_sequential.call(null,coll,other); | |
}); | |
cljs.core.LazySeq.prototype.cljs$core$ISequential$ = true; | |
cljs.core.LazySeq.prototype.cljs$core$IEmptyableCollection$ = true; | |
cljs.core.LazySeq.prototype.cljs$core$IEmptyableCollection$_empty = (function (coll){ | |
var this__2435 = this; | |
return cljs.core.with_meta.call(null,cljs.core.List.EMPTY,this__2435.meta); | |
}); | |
cljs.core.LazySeq.prototype.cljs$core$ICollection$ = true; | |
cljs.core.LazySeq.prototype.cljs$core$ICollection$_conj = (function (coll,o){ | |
var this__2436 = this; | |
return cljs.core.cons.call(null,o,coll); | |
}); | |
cljs.core.LazySeq.prototype.cljs$core$ISeq$ = true; | |
cljs.core.LazySeq.prototype.cljs$core$ISeq$_first = (function (coll){ | |
var this__2437 = this; | |
return cljs.core.first.call(null,cljs.core.lazy_seq_value.call(null,coll)); | |
}); | |
cljs.core.LazySeq.prototype.cljs$core$ISeq$_rest = (function (coll){ | |
var this__2438 = this; | |
return cljs.core.rest.call(null,cljs.core.lazy_seq_value.call(null,coll)); | |
}); | |
cljs.core.LazySeq.prototype.cljs$core$IMeta$ = true; | |
cljs.core.LazySeq.prototype.cljs$core$IMeta$_meta = (function (coll){ | |
var this__2439 = this; | |
return this__2439.meta; | |
}); | |
cljs.core.LazySeq.prototype.cljs$core$IWithMeta$ = true; | |
cljs.core.LazySeq.prototype.cljs$core$IWithMeta$_with_meta = (function (coll,meta){ | |
var this__2440 = this; | |
return (new cljs.core.LazySeq(meta,this__2440.realized,this__2440.x)); | |
}); | |
/** | |
* Naive impl of to-array as a start. | |
*/ | |
cljs.core.to_array = (function to_array(s){ | |
var ary__2441 = cljs.core.array.call(null); | |
var s__2442 = s; | |
var G__2443,G__2444;G__2443=G__2444=new Object(); | |
while(G__2443===G__2444){ | |
G__2443=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.seq.call(null,s__2442))) | |
{ary__2441.push(cljs.core.first.call(null,s__2442)); | |
{ | |
var G__2445 = cljs.core.next.call(null,s__2442); | |
s__2442 = G__2445; | |
return continue_val; | |
} | |
} else | |
{return ary__2441; | |
} | |
})(G__2444);} | |
return G__2443; | |
}); | |
cljs.core.bounded_count = (function bounded_count(s,n){ | |
var s__2446 = s; | |
var i__2447 = n; | |
var sum__2448 = 0; | |
var G__2450,G__2451;G__2450=G__2451=new Object(); | |
while(G__2450===G__2451){ | |
G__2450=(function(continue_val){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2449 = cljs.core.pos_QMARK_.call(null,i__2447); | |
if(cljs.core.truth_(and__3574__auto____2449)) | |
{return cljs.core.seq.call(null,s__2446); | |
} else | |
{return and__3574__auto____2449; | |
} | |
})())) | |
{{ | |
var G__2452 = cljs.core.next.call(null,s__2446); | |
var G__2453 = cljs.core.dec.call(null,i__2447); | |
var G__2454 = cljs.core.inc.call(null,sum__2448); | |
s__2446 = G__2452; | |
i__2447 = G__2453; | |
sum__2448 = G__2454; | |
return continue_val; | |
} | |
} else | |
{return sum__2448; | |
} | |
})(G__2451);} | |
return G__2450; | |
}); | |
cljs.core.spread = (function spread(arglist){ | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,arglist))) | |
{return null; | |
} else | |
{if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,cljs.core.next.call(null,arglist)))) | |
{return cljs.core.seq.call(null,cljs.core.first.call(null,arglist)); | |
} else | |
{if(cljs.core.truth_("ï·'else")) | |
{return cljs.core.cons.call(null,cljs.core.first.call(null,arglist),spread.call(null,cljs.core.next.call(null,arglist))); | |
} else | |
{return null; | |
} | |
} | |
} | |
}); | |
/** | |
* Returns a lazy seq representing the concatenation of the elements in the supplied colls. | |
* @param {...*} var_args | |
*/ | |
cljs.core.concat = (function() { | |
var concat = null; | |
var concat__2458 = (function (){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
return null; | |
}))); | |
}); | |
var concat__2459 = (function (x){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
return x; | |
}))); | |
}); | |
var concat__2460 = (function (x,y){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var s__2455 = cljs.core.seq.call(null,x); | |
if(cljs.core.truth_(s__2455)) | |
{return cljs.core.cons.call(null,cljs.core.first.call(null,s__2455),concat.call(null,cljs.core.rest.call(null,s__2455),y)); | |
} else | |
{return y; | |
} | |
}))); | |
}); | |
var concat__2461 = (function() { | |
var G__2463__delegate = function (x,y,zs){ | |
var cat__2457 = (function cat(xys,zs){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var xys__2456 = cljs.core.seq.call(null,xys); | |
if(cljs.core.truth_(xys__2456)) | |
{return cljs.core.cons.call(null,cljs.core.first.call(null,xys__2456),cat.call(null,cljs.core.rest.call(null,xys__2456),zs)); | |
} else | |
{if(cljs.core.truth_(zs)) | |
{return cat.call(null,cljs.core.first.call(null,zs),cljs.core.next.call(null,zs)); | |
} else | |
{return null; | |
} | |
} | |
}))); | |
}); | |
return cat__2457.call(null,concat.call(null,x,y),zs); | |
}; | |
var G__2463 = function (x,y,var_args){ | |
var zs = null; | |
if (goog.isDef(var_args)) { | |
zs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2463__delegate.call(this, x, y, zs); | |
}; | |
G__2463.cljs$lang$maxFixedArity = 2; | |
G__2463.cljs$lang$applyTo = (function (arglist__2464){ | |
var x = cljs.core.first(arglist__2464); | |
var y = cljs.core.first(cljs.core.next(arglist__2464)); | |
var zs = cljs.core.rest(cljs.core.next(arglist__2464)); | |
return G__2463__delegate.call(this, x, y, zs); | |
}); | |
return G__2463; | |
})() | |
; | |
concat = function(x,y,var_args){ | |
var zs = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return concat__2458.call(this); | |
case 1 : | |
return concat__2459.call(this,x); | |
case 2 : | |
return concat__2460.call(this,x,y); | |
default: | |
return concat__2461.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
concat.cljs$lang$maxFixedArity = 2; | |
concat.cljs$lang$applyTo = concat__2461.cljs$lang$applyTo; | |
return concat; | |
})() | |
; | |
/** | |
* Creates a new list containing the items prepended to the rest, the | |
* last of which will be treated as a sequence. | |
* @param {...*} var_args | |
*/ | |
cljs.core.list_STAR_ = (function() { | |
var list_STAR_ = null; | |
var list_STAR___2465 = (function (args){ | |
return cljs.core.seq.call(null,args); | |
}); | |
var list_STAR___2466 = (function (a,args){ | |
return cljs.core.cons.call(null,a,args); | |
}); | |
var list_STAR___2467 = (function (a,b,args){ | |
return cljs.core.cons.call(null,a,cljs.core.cons.call(null,b,args)); | |
}); | |
var list_STAR___2468 = (function (a,b,c,args){ | |
return cljs.core.cons.call(null,a,cljs.core.cons.call(null,b,cljs.core.cons.call(null,c,args))); | |
}); | |
var list_STAR___2469 = (function() { | |
var G__2471__delegate = function (a,b,c,d,more){ | |
return cljs.core.cons.call(null,a,cljs.core.cons.call(null,b,cljs.core.cons.call(null,c,cljs.core.cons.call(null,d,cljs.core.spread.call(null,more))))); | |
}; | |
var G__2471 = function (a,b,c,d,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 4),0); | |
} | |
return G__2471__delegate.call(this, a, b, c, d, more); | |
}; | |
G__2471.cljs$lang$maxFixedArity = 4; | |
G__2471.cljs$lang$applyTo = (function (arglist__2472){ | |
var a = cljs.core.first(arglist__2472); | |
var b = cljs.core.first(cljs.core.next(arglist__2472)); | |
var c = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2472))); | |
var d = cljs.core.first(cljs.core.next(cljs.core.next(cljs.core.next(arglist__2472)))); | |
var more = cljs.core.rest(cljs.core.next(cljs.core.next(cljs.core.next(arglist__2472)))); | |
return G__2471__delegate.call(this, a, b, c, d, more); | |
}); | |
return G__2471; | |
})() | |
; | |
list_STAR_ = function(a,b,c,d,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return list_STAR___2465.call(this,a); | |
case 2 : | |
return list_STAR___2466.call(this,a,b); | |
case 3 : | |
return list_STAR___2467.call(this,a,b,c); | |
case 4 : | |
return list_STAR___2468.call(this,a,b,c,d); | |
default: | |
return list_STAR___2469.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
list_STAR_.cljs$lang$maxFixedArity = 4; | |
list_STAR_.cljs$lang$applyTo = list_STAR___2469.cljs$lang$applyTo; | |
return list_STAR_; | |
})() | |
; | |
/** | |
* Applies fn f to the argument list formed by prepending intervening arguments to args. | |
* First cut. Not lazy. Needs to use emitted toApply. | |
* @param {...*} var_args | |
*/ | |
cljs.core.apply = (function() { | |
var apply = null; | |
var apply__2482 = (function (f,args){ | |
var fixed_arity__2473 = f.cljs$lang$maxFixedArity; | |
if(cljs.core.truth_(f.cljs$lang$applyTo)) | |
{if(cljs.core.truth_(cljs.core._LT__EQ_.call(null,cljs.core.bounded_count.call(null,args,cljs.core.inc.call(null,fixed_arity__2473)),fixed_arity__2473))) | |
{return f.apply(f,cljs.core.to_array.call(null,args)); | |
} else | |
{return f.cljs$lang$applyTo(args); | |
} | |
} else | |
{return f.apply(f,cljs.core.to_array.call(null,args)); | |
} | |
}); | |
var apply__2483 = (function (f,x,args){ | |
var arglist__2474 = cljs.core.list_STAR_.call(null,x,args); | |
var fixed_arity__2475 = f.cljs$lang$maxFixedArity; | |
if(cljs.core.truth_(f.cljs$lang$applyTo)) | |
{if(cljs.core.truth_(cljs.core._LT__EQ_.call(null,cljs.core.bounded_count.call(null,arglist__2474,fixed_arity__2475),fixed_arity__2475))) | |
{return f.apply(f,cljs.core.to_array.call(null,arglist__2474)); | |
} else | |
{return f.cljs$lang$applyTo(arglist__2474); | |
} | |
} else | |
{return f.apply(f,cljs.core.to_array.call(null,arglist__2474)); | |
} | |
}); | |
var apply__2484 = (function (f,x,y,args){ | |
var arglist__2476 = cljs.core.list_STAR_.call(null,x,y,args); | |
var fixed_arity__2477 = f.cljs$lang$maxFixedArity; | |
if(cljs.core.truth_(f.cljs$lang$applyTo)) | |
{if(cljs.core.truth_(cljs.core._LT__EQ_.call(null,cljs.core.bounded_count.call(null,arglist__2476,fixed_arity__2477),fixed_arity__2477))) | |
{return f.apply(f,cljs.core.to_array.call(null,arglist__2476)); | |
} else | |
{return f.cljs$lang$applyTo(arglist__2476); | |
} | |
} else | |
{return f.apply(f,cljs.core.to_array.call(null,arglist__2476)); | |
} | |
}); | |
var apply__2485 = (function (f,x,y,z,args){ | |
var arglist__2478 = cljs.core.list_STAR_.call(null,x,y,z,args); | |
var fixed_arity__2479 = f.cljs$lang$maxFixedArity; | |
if(cljs.core.truth_(f.cljs$lang$applyTo)) | |
{if(cljs.core.truth_(cljs.core._LT__EQ_.call(null,cljs.core.bounded_count.call(null,arglist__2478,fixed_arity__2479),fixed_arity__2479))) | |
{return f.apply(f,cljs.core.to_array.call(null,arglist__2478)); | |
} else | |
{return f.cljs$lang$applyTo(arglist__2478); | |
} | |
} else | |
{return f.apply(f,cljs.core.to_array.call(null,arglist__2478)); | |
} | |
}); | |
var apply__2486 = (function() { | |
var G__2488__delegate = function (f,a,b,c,d,args){ | |
var arglist__2480 = cljs.core.cons.call(null,a,cljs.core.cons.call(null,b,cljs.core.cons.call(null,c,cljs.core.cons.call(null,d,cljs.core.spread.call(null,args))))); | |
var fixed_arity__2481 = f.cljs$lang$maxFixedArity; | |
if(cljs.core.truth_(f.cljs$lang$applyTo)) | |
{if(cljs.core.truth_(cljs.core._LT__EQ_.call(null,cljs.core.bounded_count.call(null,arglist__2480,fixed_arity__2481),fixed_arity__2481))) | |
{return f.apply(f,cljs.core.to_array.call(null,arglist__2480)); | |
} else | |
{return f.cljs$lang$applyTo(arglist__2480); | |
} | |
} else | |
{return f.apply(f,cljs.core.to_array.call(null,arglist__2480)); | |
} | |
}; | |
var G__2488 = function (f,a,b,c,d,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 5),0); | |
} | |
return G__2488__delegate.call(this, f, a, b, c, d, args); | |
}; | |
G__2488.cljs$lang$maxFixedArity = 5; | |
G__2488.cljs$lang$applyTo = (function (arglist__2489){ | |
var f = cljs.core.first(arglist__2489); | |
var a = cljs.core.first(cljs.core.next(arglist__2489)); | |
var b = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2489))); | |
var c = cljs.core.first(cljs.core.next(cljs.core.next(cljs.core.next(arglist__2489)))); | |
var d = cljs.core.first(cljs.core.next(cljs.core.next(cljs.core.next(cljs.core.next(arglist__2489))))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(cljs.core.next(cljs.core.next(arglist__2489))))); | |
return G__2488__delegate.call(this, f, a, b, c, d, args); | |
}); | |
return G__2488; | |
})() | |
; | |
apply = function(f,a,b,c,d,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 2 : | |
return apply__2482.call(this,f,a); | |
case 3 : | |
return apply__2483.call(this,f,a,b); | |
case 4 : | |
return apply__2484.call(this,f,a,b,c); | |
case 5 : | |
return apply__2485.call(this,f,a,b,c,d); | |
default: | |
return apply__2486.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
apply.cljs$lang$maxFixedArity = 5; | |
apply.cljs$lang$applyTo = apply__2486.cljs$lang$applyTo; | |
return apply; | |
})() | |
; | |
/** | |
* Returns an object of the same type and value as obj, with | |
* (apply f (meta obj) args) as its metadata. | |
* @param {...*} var_args | |
*/ | |
cljs.core.vary_meta = (function() { | |
var vary_meta__delegate = function (obj,f,args){ | |
return cljs.core.with_meta.call(null,obj,cljs.core.apply.call(null,f,cljs.core.meta.call(null,obj),args)); | |
}; | |
var vary_meta = function (obj,f,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return vary_meta__delegate.call(this, obj, f, args); | |
}; | |
vary_meta.cljs$lang$maxFixedArity = 2; | |
vary_meta.cljs$lang$applyTo = (function (arglist__2490){ | |
var obj = cljs.core.first(arglist__2490); | |
var f = cljs.core.first(cljs.core.next(arglist__2490)); | |
var args = cljs.core.rest(cljs.core.next(arglist__2490)); | |
return vary_meta__delegate.call(this, obj, f, args); | |
}); | |
return vary_meta; | |
})() | |
; | |
/** | |
* Same as (not (= obj1 obj2)) | |
* @param {...*} var_args | |
*/ | |
cljs.core.not_EQ_ = (function() { | |
var not_EQ_ = null; | |
var not_EQ___2491 = (function (x){ | |
return false; | |
}); | |
var not_EQ___2492 = (function (x,y){ | |
return cljs.core.not.call(null,cljs.core._EQ_.call(null,x,y)); | |
}); | |
var not_EQ___2493 = (function() { | |
var G__2495__delegate = function (x,y,more){ | |
return cljs.core.not.call(null,cljs.core.apply.call(null,cljs.core._EQ_,x,y,more)); | |
}; | |
var G__2495 = function (x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2495__delegate.call(this, x, y, more); | |
}; | |
G__2495.cljs$lang$maxFixedArity = 2; | |
G__2495.cljs$lang$applyTo = (function (arglist__2496){ | |
var x = cljs.core.first(arglist__2496); | |
var y = cljs.core.first(cljs.core.next(arglist__2496)); | |
var more = cljs.core.rest(cljs.core.next(arglist__2496)); | |
return G__2495__delegate.call(this, x, y, more); | |
}); | |
return G__2495; | |
})() | |
; | |
not_EQ_ = function(x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return not_EQ___2491.call(this,x); | |
case 2 : | |
return not_EQ___2492.call(this,x,y); | |
default: | |
return not_EQ___2493.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
not_EQ_.cljs$lang$maxFixedArity = 2; | |
not_EQ_.cljs$lang$applyTo = not_EQ___2493.cljs$lang$applyTo; | |
return not_EQ_; | |
})() | |
; | |
/** | |
* If coll is empty, returns nil, else coll | |
*/ | |
cljs.core.not_empty = (function not_empty(coll){ | |
if(cljs.core.truth_(cljs.core.seq.call(null,coll))) | |
{return coll; | |
} else | |
{return null; | |
} | |
}); | |
/** | |
* Returns true if (pred x) is logical true for every x in coll, else | |
* false. | |
*/ | |
cljs.core.every_QMARK_ = (function every_QMARK_(pred,coll){ | |
var G__2497,G__2498;G__2497=G__2498=new Object(); | |
while(G__2497===G__2498){ | |
G__2497=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,cljs.core.seq.call(null,coll)))) | |
{return true; | |
} else | |
{if(cljs.core.truth_(pred.call(null,cljs.core.first.call(null,coll)))) | |
{{ | |
var G__2499 = pred; | |
var G__2500 = cljs.core.next.call(null,coll); | |
pred = G__2499; | |
coll = G__2500; | |
return continue_val; | |
} | |
} else | |
{if(cljs.core.truth_("ï·'else")) | |
{return false; | |
} else | |
{return null; | |
} | |
} | |
} | |
})(G__2498);} | |
return G__2497; | |
}); | |
/** | |
* Returns false if (pred x) is logical true for every x in | |
* coll, else true. | |
*/ | |
cljs.core.not_every_QMARK_ = (function not_every_QMARK_(pred,coll){ | |
return cljs.core.not.call(null,cljs.core.every_QMARK_.call(null,pred,coll)); | |
}); | |
/** | |
* Returns the first logical true value of (pred x) for any x in coll, | |
* else nil. One common idiom is to use a set as pred, for example | |
* this will return :fred if :fred is in the sequence, otherwise nil: | |
* (some #{:fred} coll) | |
*/ | |
cljs.core.some = (function some(pred,coll){ | |
var G__2502,G__2503;G__2502=G__2503=new Object(); | |
while(G__2502===G__2503){ | |
G__2502=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.seq.call(null,coll))) | |
{var or__3576__auto____2501 = pred.call(null,cljs.core.first.call(null,coll)); | |
if(cljs.core.truth_(or__3576__auto____2501)) | |
{return or__3576__auto____2501; | |
} else | |
{{ | |
var G__2504 = pred; | |
var G__2505 = cljs.core.next.call(null,coll); | |
pred = G__2504; | |
coll = G__2505; | |
return continue_val; | |
} | |
} | |
} else | |
{return null; | |
} | |
})(G__2503);} | |
return G__2502; | |
}); | |
/** | |
* Returns false if (pred x) is logical true for any x in coll, | |
* else true. | |
*/ | |
cljs.core.not_any_QMARK_ = (function not_any_QMARK_(pred,coll){ | |
return cljs.core.not.call(null,cljs.core.some.call(null,pred,coll)); | |
}); | |
/** | |
* Returns true if n is even, throws an exception if n is not an integer | |
*/ | |
cljs.core.even_QMARK_ = (function even_QMARK_(n){ | |
if(cljs.core.truth_(cljs.core.integer_QMARK_.call(null,n))) | |
{return cljs.core.zero_QMARK_.call(null,cljs.core.bit_and.call(null,n,1)); | |
} else | |
{throw cljs.core.str.call(null,"Argument must be an integer: ",n); | |
} | |
}); | |
/** | |
* Returns true if n is odd, throws an exception if n is not an integer | |
*/ | |
cljs.core.odd_QMARK_ = (function odd_QMARK_(n){ | |
return cljs.core.not.call(null,cljs.core.even_QMARK_.call(null,n)); | |
}); | |
cljs.core.identity = (function identity(x){ | |
return x; | |
}); | |
/** | |
* Takes a fn f and returns a fn that takes the same arguments as f, | |
* has the same effects, if any, and returns the opposite truth value. | |
*/ | |
cljs.core.complement = (function complement(f){ | |
return (function() { | |
var G__2506 = null; | |
var G__2506__2507 = (function (){ | |
return cljs.core.not.call(null,f.call(null)); | |
}); | |
var G__2506__2508 = (function (x){ | |
return cljs.core.not.call(null,f.call(null,x)); | |
}); | |
var G__2506__2509 = (function (x,y){ | |
return cljs.core.not.call(null,f.call(null,x,y)); | |
}); | |
var G__2506__2510 = (function() { | |
var G__2512__delegate = function (x,y,zs){ | |
return cljs.core.not.call(null,cljs.core.apply.call(null,f,x,y,zs)); | |
}; | |
var G__2512 = function (x,y,var_args){ | |
var zs = null; | |
if (goog.isDef(var_args)) { | |
zs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2512__delegate.call(this, x, y, zs); | |
}; | |
G__2512.cljs$lang$maxFixedArity = 2; | |
G__2512.cljs$lang$applyTo = (function (arglist__2513){ | |
var x = cljs.core.first(arglist__2513); | |
var y = cljs.core.first(cljs.core.next(arglist__2513)); | |
var zs = cljs.core.rest(cljs.core.next(arglist__2513)); | |
return G__2512__delegate.call(this, x, y, zs); | |
}); | |
return G__2512; | |
})() | |
; | |
G__2506 = function(x,y,var_args){ | |
var zs = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return G__2506__2507.call(this); | |
case 1 : | |
return G__2506__2508.call(this,x); | |
case 2 : | |
return G__2506__2509.call(this,x,y); | |
default: | |
return G__2506__2510.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
G__2506.cljs$lang$maxFixedArity = 2; | |
G__2506.cljs$lang$applyTo = G__2506__2510.cljs$lang$applyTo; | |
return G__2506; | |
})() | |
}); | |
/** | |
* Returns a function that takes any number of arguments and returns x. | |
*/ | |
cljs.core.constantly = (function constantly(x){ | |
return (function() { | |
var G__2514__delegate = function (args){ | |
return x; | |
}; | |
var G__2514 = function (var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return G__2514__delegate.call(this, args); | |
}; | |
G__2514.cljs$lang$maxFixedArity = 0; | |
G__2514.cljs$lang$applyTo = (function (arglist__2515){ | |
var args = cljs.core.seq( arglist__2515 );; | |
return G__2514__delegate.call(this, args); | |
}); | |
return G__2514; | |
})() | |
; | |
}); | |
/** | |
* Takes a set of functions and returns a fn that is the composition | |
* of those fns. The returned fn takes a variable number of args, | |
* applies the rightmost of fns to the args, the next | |
* fn (right-to-left) to the result, etc. | |
* | |
* TODO: Implement apply | |
* @param {...*} var_args | |
*/ | |
cljs.core.comp = (function() { | |
var comp = null; | |
var comp__2519 = (function (){ | |
return cljs.core.identity; | |
}); | |
var comp__2520 = (function (f){ | |
return f; | |
}); | |
var comp__2521 = (function (f,g){ | |
return (function() { | |
var G__2525 = null; | |
var G__2525__2526 = (function (){ | |
return f.call(null,g.call(null)); | |
}); | |
var G__2525__2527 = (function (x){ | |
return f.call(null,g.call(null,x)); | |
}); | |
var G__2525__2528 = (function (x,y){ | |
return f.call(null,g.call(null,x,y)); | |
}); | |
var G__2525__2529 = (function (x,y,z){ | |
return f.call(null,g.call(null,x,y,z)); | |
}); | |
var G__2525__2530 = (function() { | |
var G__2532__delegate = function (x,y,z,args){ | |
return f.call(null,cljs.core.apply.call(null,g,x,y,z,args)); | |
}; | |
var G__2532 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2532__delegate.call(this, x, y, z, args); | |
}; | |
G__2532.cljs$lang$maxFixedArity = 3; | |
G__2532.cljs$lang$applyTo = (function (arglist__2533){ | |
var x = cljs.core.first(arglist__2533); | |
var y = cljs.core.first(cljs.core.next(arglist__2533)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2533))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2533))); | |
return G__2532__delegate.call(this, x, y, z, args); | |
}); | |
return G__2532; | |
})() | |
; | |
G__2525 = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return G__2525__2526.call(this); | |
case 1 : | |
return G__2525__2527.call(this,x); | |
case 2 : | |
return G__2525__2528.call(this,x,y); | |
case 3 : | |
return G__2525__2529.call(this,x,y,z); | |
default: | |
return G__2525__2530.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
G__2525.cljs$lang$maxFixedArity = 3; | |
G__2525.cljs$lang$applyTo = G__2525__2530.cljs$lang$applyTo; | |
return G__2525; | |
})() | |
}); | |
var comp__2522 = (function (f,g,h){ | |
return (function() { | |
var G__2534 = null; | |
var G__2534__2535 = (function (){ | |
return f.call(null,g.call(null,h.call(null))); | |
}); | |
var G__2534__2536 = (function (x){ | |
return f.call(null,g.call(null,h.call(null,x))); | |
}); | |
var G__2534__2537 = (function (x,y){ | |
return f.call(null,g.call(null,h.call(null,x,y))); | |
}); | |
var G__2534__2538 = (function (x,y,z){ | |
return f.call(null,g.call(null,h.call(null,x,y,z))); | |
}); | |
var G__2534__2539 = (function() { | |
var G__2541__delegate = function (x,y,z,args){ | |
return f.call(null,g.call(null,cljs.core.apply.call(null,h,x,y,z,args))); | |
}; | |
var G__2541 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2541__delegate.call(this, x, y, z, args); | |
}; | |
G__2541.cljs$lang$maxFixedArity = 3; | |
G__2541.cljs$lang$applyTo = (function (arglist__2542){ | |
var x = cljs.core.first(arglist__2542); | |
var y = cljs.core.first(cljs.core.next(arglist__2542)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2542))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2542))); | |
return G__2541__delegate.call(this, x, y, z, args); | |
}); | |
return G__2541; | |
})() | |
; | |
G__2534 = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return G__2534__2535.call(this); | |
case 1 : | |
return G__2534__2536.call(this,x); | |
case 2 : | |
return G__2534__2537.call(this,x,y); | |
case 3 : | |
return G__2534__2538.call(this,x,y,z); | |
default: | |
return G__2534__2539.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
G__2534.cljs$lang$maxFixedArity = 3; | |
G__2534.cljs$lang$applyTo = G__2534__2539.cljs$lang$applyTo; | |
return G__2534; | |
})() | |
}); | |
var comp__2523 = (function() { | |
var G__2543__delegate = function (f1,f2,f3,fs){ | |
var fs__2516 = cljs.core.reverse.call(null,cljs.core.list_STAR_.call(null,f1,f2,f3,fs)); | |
return (function() { | |
var G__2544__delegate = function (args){ | |
var ret__2517 = cljs.core.apply.call(null,cljs.core.first.call(null,fs__2516),args); | |
var fs__2518 = cljs.core.next.call(null,fs__2516); | |
var G__2545,G__2546;G__2545=G__2546=new Object(); | |
while(G__2545===G__2546){ | |
G__2545=(function(continue_val){ | |
if(cljs.core.truth_(fs__2518)) | |
{{ | |
var G__2547 = cljs.core.first.call(null,fs__2518).call(null,ret__2517); | |
var G__2548 = cljs.core.next.call(null,fs__2518); | |
ret__2517 = G__2547; | |
fs__2518 = G__2548; | |
return continue_val; | |
} | |
} else | |
{return ret__2517; | |
} | |
})(G__2546);} | |
return G__2545; | |
}; | |
var G__2544 = function (var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return G__2544__delegate.call(this, args); | |
}; | |
G__2544.cljs$lang$maxFixedArity = 0; | |
G__2544.cljs$lang$applyTo = (function (arglist__2549){ | |
var args = cljs.core.seq( arglist__2549 );; | |
return G__2544__delegate.call(this, args); | |
}); | |
return G__2544; | |
})() | |
; | |
}; | |
var G__2543 = function (f1,f2,f3,var_args){ | |
var fs = null; | |
if (goog.isDef(var_args)) { | |
fs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2543__delegate.call(this, f1, f2, f3, fs); | |
}; | |
G__2543.cljs$lang$maxFixedArity = 3; | |
G__2543.cljs$lang$applyTo = (function (arglist__2550){ | |
var f1 = cljs.core.first(arglist__2550); | |
var f2 = cljs.core.first(cljs.core.next(arglist__2550)); | |
var f3 = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2550))); | |
var fs = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2550))); | |
return G__2543__delegate.call(this, f1, f2, f3, fs); | |
}); | |
return G__2543; | |
})() | |
; | |
comp = function(f1,f2,f3,var_args){ | |
var fs = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return comp__2519.call(this); | |
case 1 : | |
return comp__2520.call(this,f1); | |
case 2 : | |
return comp__2521.call(this,f1,f2); | |
case 3 : | |
return comp__2522.call(this,f1,f2,f3); | |
default: | |
return comp__2523.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
comp.cljs$lang$maxFixedArity = 3; | |
comp.cljs$lang$applyTo = comp__2523.cljs$lang$applyTo; | |
return comp; | |
})() | |
; | |
/** | |
* Takes a function f and fewer than the normal arguments to f, and | |
* returns a fn that takes a variable number of additional args. When | |
* called, the returned function calls f with args + additional args. | |
* | |
* TODO: Implement apply | |
* @param {...*} var_args | |
*/ | |
cljs.core.partial = (function() { | |
var partial = null; | |
var partial__2551 = (function (f,arg1){ | |
return (function() { | |
var G__2556__delegate = function (args){ | |
return cljs.core.apply.call(null,f,arg1,args); | |
}; | |
var G__2556 = function (var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return G__2556__delegate.call(this, args); | |
}; | |
G__2556.cljs$lang$maxFixedArity = 0; | |
G__2556.cljs$lang$applyTo = (function (arglist__2557){ | |
var args = cljs.core.seq( arglist__2557 );; | |
return G__2556__delegate.call(this, args); | |
}); | |
return G__2556; | |
})() | |
; | |
}); | |
var partial__2552 = (function (f,arg1,arg2){ | |
return (function() { | |
var G__2558__delegate = function (args){ | |
return cljs.core.apply.call(null,f,arg1,arg2,args); | |
}; | |
var G__2558 = function (var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return G__2558__delegate.call(this, args); | |
}; | |
G__2558.cljs$lang$maxFixedArity = 0; | |
G__2558.cljs$lang$applyTo = (function (arglist__2559){ | |
var args = cljs.core.seq( arglist__2559 );; | |
return G__2558__delegate.call(this, args); | |
}); | |
return G__2558; | |
})() | |
; | |
}); | |
var partial__2553 = (function (f,arg1,arg2,arg3){ | |
return (function() { | |
var G__2560__delegate = function (args){ | |
return cljs.core.apply.call(null,f,arg1,arg2,arg3,args); | |
}; | |
var G__2560 = function (var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return G__2560__delegate.call(this, args); | |
}; | |
G__2560.cljs$lang$maxFixedArity = 0; | |
G__2560.cljs$lang$applyTo = (function (arglist__2561){ | |
var args = cljs.core.seq( arglist__2561 );; | |
return G__2560__delegate.call(this, args); | |
}); | |
return G__2560; | |
})() | |
; | |
}); | |
var partial__2554 = (function() { | |
var G__2562__delegate = function (f,arg1,arg2,arg3,more){ | |
return (function() { | |
var G__2563__delegate = function (args){ | |
return cljs.core.apply.call(null,f,arg1,arg2,arg3,cljs.core.concat.call(null,more,args)); | |
}; | |
var G__2563 = function (var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return G__2563__delegate.call(this, args); | |
}; | |
G__2563.cljs$lang$maxFixedArity = 0; | |
G__2563.cljs$lang$applyTo = (function (arglist__2564){ | |
var args = cljs.core.seq( arglist__2564 );; | |
return G__2563__delegate.call(this, args); | |
}); | |
return G__2563; | |
})() | |
; | |
}; | |
var G__2562 = function (f,arg1,arg2,arg3,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 4),0); | |
} | |
return G__2562__delegate.call(this, f, arg1, arg2, arg3, more); | |
}; | |
G__2562.cljs$lang$maxFixedArity = 4; | |
G__2562.cljs$lang$applyTo = (function (arglist__2565){ | |
var f = cljs.core.first(arglist__2565); | |
var arg1 = cljs.core.first(cljs.core.next(arglist__2565)); | |
var arg2 = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2565))); | |
var arg3 = cljs.core.first(cljs.core.next(cljs.core.next(cljs.core.next(arglist__2565)))); | |
var more = cljs.core.rest(cljs.core.next(cljs.core.next(cljs.core.next(arglist__2565)))); | |
return G__2562__delegate.call(this, f, arg1, arg2, arg3, more); | |
}); | |
return G__2562; | |
})() | |
; | |
partial = function(f,arg1,arg2,arg3,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 2 : | |
return partial__2551.call(this,f,arg1); | |
case 3 : | |
return partial__2552.call(this,f,arg1,arg2); | |
case 4 : | |
return partial__2553.call(this,f,arg1,arg2,arg3); | |
default: | |
return partial__2554.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
partial.cljs$lang$maxFixedArity = 4; | |
partial.cljs$lang$applyTo = partial__2554.cljs$lang$applyTo; | |
return partial; | |
})() | |
; | |
/** | |
* Takes a function f, and returns a function that calls f, replacing | |
* a nil first argument to f with the supplied value x. Higher arity | |
* versions can replace arguments in the second and third | |
* positions (y, z). Note that the function f can take any number of | |
* arguments, not just the one(s) being nil-patched. | |
*/ | |
cljs.core.fnil = (function() { | |
var fnil = null; | |
var fnil__2566 = (function (f,x){ | |
return (function() { | |
var G__2570 = null; | |
var G__2570__2571 = (function (a){ | |
return f.call(null,(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,a))?x:a)); | |
}); | |
var G__2570__2572 = (function (a,b){ | |
return f.call(null,(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,a))?x:a),b); | |
}); | |
var G__2570__2573 = (function (a,b,c){ | |
return f.call(null,(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,a))?x:a),b,c); | |
}); | |
var G__2570__2574 = (function() { | |
var G__2576__delegate = function (a,b,c,ds){ | |
return cljs.core.apply.call(null,f,(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,a))?x:a),b,c,ds); | |
}; | |
var G__2576 = function (a,b,c,var_args){ | |
var ds = null; | |
if (goog.isDef(var_args)) { | |
ds = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2576__delegate.call(this, a, b, c, ds); | |
}; | |
G__2576.cljs$lang$maxFixedArity = 3; | |
G__2576.cljs$lang$applyTo = (function (arglist__2577){ | |
var a = cljs.core.first(arglist__2577); | |
var b = cljs.core.first(cljs.core.next(arglist__2577)); | |
var c = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2577))); | |
var ds = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2577))); | |
return G__2576__delegate.call(this, a, b, c, ds); | |
}); | |
return G__2576; | |
})() | |
; | |
G__2570 = function(a,b,c,var_args){ | |
var ds = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return G__2570__2571.call(this,a); | |
case 2 : | |
return G__2570__2572.call(this,a,b); | |
case 3 : | |
return G__2570__2573.call(this,a,b,c); | |
default: | |
return G__2570__2574.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
G__2570.cljs$lang$maxFixedArity = 3; | |
G__2570.cljs$lang$applyTo = G__2570__2574.cljs$lang$applyTo; | |
return G__2570; | |
})() | |
}); | |
var fnil__2567 = (function (f,x,y){ | |
return (function() { | |
var G__2578 = null; | |
var G__2578__2579 = (function (a,b){ | |
return f.call(null,(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,a))?x:a),(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,b))?y:b)); | |
}); | |
var G__2578__2580 = (function (a,b,c){ | |
return f.call(null,(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,a))?x:a),(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,b))?y:b),c); | |
}); | |
var G__2578__2581 = (function() { | |
var G__2583__delegate = function (a,b,c,ds){ | |
return cljs.core.apply.call(null,f,(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,a))?x:a),(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,b))?y:b),c,ds); | |
}; | |
var G__2583 = function (a,b,c,var_args){ | |
var ds = null; | |
if (goog.isDef(var_args)) { | |
ds = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2583__delegate.call(this, a, b, c, ds); | |
}; | |
G__2583.cljs$lang$maxFixedArity = 3; | |
G__2583.cljs$lang$applyTo = (function (arglist__2584){ | |
var a = cljs.core.first(arglist__2584); | |
var b = cljs.core.first(cljs.core.next(arglist__2584)); | |
var c = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2584))); | |
var ds = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2584))); | |
return G__2583__delegate.call(this, a, b, c, ds); | |
}); | |
return G__2583; | |
})() | |
; | |
G__2578 = function(a,b,c,var_args){ | |
var ds = var_args; | |
switch(arguments.length){ | |
case 2 : | |
return G__2578__2579.call(this,a,b); | |
case 3 : | |
return G__2578__2580.call(this,a,b,c); | |
default: | |
return G__2578__2581.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
G__2578.cljs$lang$maxFixedArity = 3; | |
G__2578.cljs$lang$applyTo = G__2578__2581.cljs$lang$applyTo; | |
return G__2578; | |
})() | |
}); | |
var fnil__2568 = (function (f,x,y,z){ | |
return (function() { | |
var G__2585 = null; | |
var G__2585__2586 = (function (a,b){ | |
return f.call(null,(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,a))?x:a),(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,b))?y:b)); | |
}); | |
var G__2585__2587 = (function (a,b,c){ | |
return f.call(null,(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,a))?x:a),(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,b))?y:b),(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,c))?z:c)); | |
}); | |
var G__2585__2588 = (function() { | |
var G__2590__delegate = function (a,b,c,ds){ | |
return cljs.core.apply.call(null,f,(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,a))?x:a),(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,b))?y:b),(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,c))?z:c),ds); | |
}; | |
var G__2590 = function (a,b,c,var_args){ | |
var ds = null; | |
if (goog.isDef(var_args)) { | |
ds = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2590__delegate.call(this, a, b, c, ds); | |
}; | |
G__2590.cljs$lang$maxFixedArity = 3; | |
G__2590.cljs$lang$applyTo = (function (arglist__2591){ | |
var a = cljs.core.first(arglist__2591); | |
var b = cljs.core.first(cljs.core.next(arglist__2591)); | |
var c = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2591))); | |
var ds = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2591))); | |
return G__2590__delegate.call(this, a, b, c, ds); | |
}); | |
return G__2590; | |
})() | |
; | |
G__2585 = function(a,b,c,var_args){ | |
var ds = var_args; | |
switch(arguments.length){ | |
case 2 : | |
return G__2585__2586.call(this,a,b); | |
case 3 : | |
return G__2585__2587.call(this,a,b,c); | |
default: | |
return G__2585__2588.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
G__2585.cljs$lang$maxFixedArity = 3; | |
G__2585.cljs$lang$applyTo = G__2585__2588.cljs$lang$applyTo; | |
return G__2585; | |
})() | |
}); | |
fnil = function(f,x,y,z){ | |
switch(arguments.length){ | |
case 2 : | |
return fnil__2566.call(this,f,x); | |
case 3 : | |
return fnil__2567.call(this,f,x,y); | |
case 4 : | |
return fnil__2568.call(this,f,x,y,z); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return fnil; | |
})() | |
; | |
/** | |
* Returns a lazy sequence consisting of the result of applying f to 0 | |
* and the first item of coll, followed by applying f to 1 and the second | |
* item in coll, etc, until coll is exhausted. Thus function f should | |
* accept 2 arguments, index and item. | |
*/ | |
cljs.core.map_indexed = (function map_indexed(f,coll){ | |
var mapi__2594 = (function mpi(idx,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____2592 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____2592)) | |
{var s__2593 = temp__3726__auto____2592; | |
return cljs.core.cons.call(null,f.call(null,idx,cljs.core.first.call(null,s__2593)),mpi.call(null,cljs.core.inc.call(null,idx),cljs.core.rest.call(null,s__2593))); | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
return mapi__2594.call(null,0,coll); | |
}); | |
/** | |
* Returns a lazy sequence of the non-nil results of (f item). Note, | |
* this means false return values will be included. f must be free of | |
* side-effects. | |
*/ | |
cljs.core.keep = (function keep(f,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____2595 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____2595)) | |
{var s__2596 = temp__3726__auto____2595; | |
var x__2597 = f.call(null,cljs.core.first.call(null,s__2596)); | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,x__2597))) | |
{return keep.call(null,f,cljs.core.rest.call(null,s__2596)); | |
} else | |
{return cljs.core.cons.call(null,x__2597,keep.call(null,f,cljs.core.rest.call(null,s__2596))); | |
} | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
/** | |
* Returns a lazy sequence of the non-nil results of (f index item). Note, | |
* this means false return values will be included. f must be free of | |
* side-effects. | |
*/ | |
cljs.core.keep_indexed = (function keep_indexed(f,coll){ | |
var keepi__2607 = (function kpi(idx,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____2604 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____2604)) | |
{var s__2605 = temp__3726__auto____2604; | |
var x__2606 = f.call(null,idx,cljs.core.first.call(null,s__2605)); | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,x__2606))) | |
{return kpi.call(null,cljs.core.inc.call(null,idx),cljs.core.rest.call(null,s__2605)); | |
} else | |
{return cljs.core.cons.call(null,x__2606,kpi.call(null,cljs.core.inc.call(null,idx),cljs.core.rest.call(null,s__2605))); | |
} | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
return keepi__2607.call(null,0,coll); | |
}); | |
/** | |
* Takes a set of predicates and returns a function f that returns true if all of its | |
* composing predicates return a logical true value against all of its arguments, else it returns | |
* false. Note that f is short-circuiting in that it will stop execution on the first | |
* argument that triggers a logical false result against the original predicates. | |
* @param {...*} var_args | |
*/ | |
cljs.core.every_pred = (function() { | |
var every_pred = null; | |
var every_pred__2652 = (function (p){ | |
return (function() { | |
var ep1 = null; | |
var ep1__2657 = (function (){ | |
return true; | |
}); | |
var ep1__2658 = (function (x){ | |
return cljs.core.boolean$.call(null,p.call(null,x)); | |
}); | |
var ep1__2659 = (function (x,y){ | |
return cljs.core.boolean$.call(null,(function (){var and__3574__auto____2614 = p.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2614)) | |
{return p.call(null,y); | |
} else | |
{return and__3574__auto____2614; | |
} | |
})()); | |
}); | |
var ep1__2660 = (function (x,y,z){ | |
return cljs.core.boolean$.call(null,(function (){var and__3574__auto____2615 = p.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2615)) | |
{var and__3574__auto____2616 = p.call(null,y); | |
if(cljs.core.truth_(and__3574__auto____2616)) | |
{return p.call(null,z); | |
} else | |
{return and__3574__auto____2616; | |
} | |
} else | |
{return and__3574__auto____2615; | |
} | |
})()); | |
}); | |
var ep1__2661 = (function() { | |
var G__2663__delegate = function (x,y,z,args){ | |
return cljs.core.boolean$.call(null,(function (){var and__3574__auto____2617 = ep1.call(null,x,y,z); | |
if(cljs.core.truth_(and__3574__auto____2617)) | |
{return cljs.core.every_QMARK_.call(null,p,args); | |
} else | |
{return and__3574__auto____2617; | |
} | |
})()); | |
}; | |
var G__2663 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2663__delegate.call(this, x, y, z, args); | |
}; | |
G__2663.cljs$lang$maxFixedArity = 3; | |
G__2663.cljs$lang$applyTo = (function (arglist__2664){ | |
var x = cljs.core.first(arglist__2664); | |
var y = cljs.core.first(cljs.core.next(arglist__2664)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2664))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2664))); | |
return G__2663__delegate.call(this, x, y, z, args); | |
}); | |
return G__2663; | |
})() | |
; | |
ep1 = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return ep1__2657.call(this); | |
case 1 : | |
return ep1__2658.call(this,x); | |
case 2 : | |
return ep1__2659.call(this,x,y); | |
case 3 : | |
return ep1__2660.call(this,x,y,z); | |
default: | |
return ep1__2661.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
ep1.cljs$lang$maxFixedArity = 3; | |
ep1.cljs$lang$applyTo = ep1__2661.cljs$lang$applyTo; | |
return ep1; | |
})() | |
}); | |
var every_pred__2653 = (function (p1,p2){ | |
return (function() { | |
var ep2 = null; | |
var ep2__2665 = (function (){ | |
return true; | |
}); | |
var ep2__2666 = (function (x){ | |
return cljs.core.boolean$.call(null,(function (){var and__3574__auto____2618 = p1.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2618)) | |
{return p2.call(null,x); | |
} else | |
{return and__3574__auto____2618; | |
} | |
})()); | |
}); | |
var ep2__2667 = (function (x,y){ | |
return cljs.core.boolean$.call(null,(function (){var and__3574__auto____2619 = p1.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2619)) | |
{var and__3574__auto____2620 = p1.call(null,y); | |
if(cljs.core.truth_(and__3574__auto____2620)) | |
{var and__3574__auto____2621 = p2.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2621)) | |
{return p2.call(null,y); | |
} else | |
{return and__3574__auto____2621; | |
} | |
} else | |
{return and__3574__auto____2620; | |
} | |
} else | |
{return and__3574__auto____2619; | |
} | |
})()); | |
}); | |
var ep2__2668 = (function (x,y,z){ | |
return cljs.core.boolean$.call(null,(function (){var and__3574__auto____2622 = p1.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2622)) | |
{var and__3574__auto____2623 = p1.call(null,y); | |
if(cljs.core.truth_(and__3574__auto____2623)) | |
{var and__3574__auto____2624 = p1.call(null,z); | |
if(cljs.core.truth_(and__3574__auto____2624)) | |
{var and__3574__auto____2625 = p2.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2625)) | |
{var and__3574__auto____2626 = p2.call(null,y); | |
if(cljs.core.truth_(and__3574__auto____2626)) | |
{return p2.call(null,z); | |
} else | |
{return and__3574__auto____2626; | |
} | |
} else | |
{return and__3574__auto____2625; | |
} | |
} else | |
{return and__3574__auto____2624; | |
} | |
} else | |
{return and__3574__auto____2623; | |
} | |
} else | |
{return and__3574__auto____2622; | |
} | |
})()); | |
}); | |
var ep2__2669 = (function() { | |
var G__2671__delegate = function (x,y,z,args){ | |
return cljs.core.boolean$.call(null,(function (){var and__3574__auto____2627 = ep2.call(null,x,y,z); | |
if(cljs.core.truth_(and__3574__auto____2627)) | |
{return cljs.core.every_QMARK_.call(null,(function (p1__2598_SHARP_){ | |
var and__3574__auto____2628 = p1.call(null,p1__2598_SHARP_); | |
if(cljs.core.truth_(and__3574__auto____2628)) | |
{return p2.call(null,p1__2598_SHARP_); | |
} else | |
{return and__3574__auto____2628; | |
} | |
}),args); | |
} else | |
{return and__3574__auto____2627; | |
} | |
})()); | |
}; | |
var G__2671 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2671__delegate.call(this, x, y, z, args); | |
}; | |
G__2671.cljs$lang$maxFixedArity = 3; | |
G__2671.cljs$lang$applyTo = (function (arglist__2672){ | |
var x = cljs.core.first(arglist__2672); | |
var y = cljs.core.first(cljs.core.next(arglist__2672)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2672))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2672))); | |
return G__2671__delegate.call(this, x, y, z, args); | |
}); | |
return G__2671; | |
})() | |
; | |
ep2 = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return ep2__2665.call(this); | |
case 1 : | |
return ep2__2666.call(this,x); | |
case 2 : | |
return ep2__2667.call(this,x,y); | |
case 3 : | |
return ep2__2668.call(this,x,y,z); | |
default: | |
return ep2__2669.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
ep2.cljs$lang$maxFixedArity = 3; | |
ep2.cljs$lang$applyTo = ep2__2669.cljs$lang$applyTo; | |
return ep2; | |
})() | |
}); | |
var every_pred__2654 = (function (p1,p2,p3){ | |
return (function() { | |
var ep3 = null; | |
var ep3__2673 = (function (){ | |
return true; | |
}); | |
var ep3__2674 = (function (x){ | |
return cljs.core.boolean$.call(null,(function (){var and__3574__auto____2629 = p1.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2629)) | |
{var and__3574__auto____2630 = p2.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2630)) | |
{return p3.call(null,x); | |
} else | |
{return and__3574__auto____2630; | |
} | |
} else | |
{return and__3574__auto____2629; | |
} | |
})()); | |
}); | |
var ep3__2675 = (function (x,y){ | |
return cljs.core.boolean$.call(null,(function (){var and__3574__auto____2631 = p1.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2631)) | |
{var and__3574__auto____2632 = p2.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2632)) | |
{var and__3574__auto____2633 = p3.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2633)) | |
{var and__3574__auto____2634 = p1.call(null,y); | |
if(cljs.core.truth_(and__3574__auto____2634)) | |
{var and__3574__auto____2635 = p2.call(null,y); | |
if(cljs.core.truth_(and__3574__auto____2635)) | |
{return p3.call(null,y); | |
} else | |
{return and__3574__auto____2635; | |
} | |
} else | |
{return and__3574__auto____2634; | |
} | |
} else | |
{return and__3574__auto____2633; | |
} | |
} else | |
{return and__3574__auto____2632; | |
} | |
} else | |
{return and__3574__auto____2631; | |
} | |
})()); | |
}); | |
var ep3__2676 = (function (x,y,z){ | |
return cljs.core.boolean$.call(null,(function (){var and__3574__auto____2636 = p1.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2636)) | |
{var and__3574__auto____2637 = p2.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2637)) | |
{var and__3574__auto____2638 = p3.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2638)) | |
{var and__3574__auto____2639 = p1.call(null,y); | |
if(cljs.core.truth_(and__3574__auto____2639)) | |
{var and__3574__auto____2640 = p2.call(null,y); | |
if(cljs.core.truth_(and__3574__auto____2640)) | |
{var and__3574__auto____2641 = p3.call(null,y); | |
if(cljs.core.truth_(and__3574__auto____2641)) | |
{var and__3574__auto____2642 = p1.call(null,z); | |
if(cljs.core.truth_(and__3574__auto____2642)) | |
{var and__3574__auto____2643 = p2.call(null,z); | |
if(cljs.core.truth_(and__3574__auto____2643)) | |
{return p3.call(null,z); | |
} else | |
{return and__3574__auto____2643; | |
} | |
} else | |
{return and__3574__auto____2642; | |
} | |
} else | |
{return and__3574__auto____2641; | |
} | |
} else | |
{return and__3574__auto____2640; | |
} | |
} else | |
{return and__3574__auto____2639; | |
} | |
} else | |
{return and__3574__auto____2638; | |
} | |
} else | |
{return and__3574__auto____2637; | |
} | |
} else | |
{return and__3574__auto____2636; | |
} | |
})()); | |
}); | |
var ep3__2677 = (function() { | |
var G__2679__delegate = function (x,y,z,args){ | |
return cljs.core.boolean$.call(null,(function (){var and__3574__auto____2644 = ep3.call(null,x,y,z); | |
if(cljs.core.truth_(and__3574__auto____2644)) | |
{return cljs.core.every_QMARK_.call(null,(function (p1__2599_SHARP_){ | |
var and__3574__auto____2645 = p1.call(null,p1__2599_SHARP_); | |
if(cljs.core.truth_(and__3574__auto____2645)) | |
{var and__3574__auto____2646 = p2.call(null,p1__2599_SHARP_); | |
if(cljs.core.truth_(and__3574__auto____2646)) | |
{return p3.call(null,p1__2599_SHARP_); | |
} else | |
{return and__3574__auto____2646; | |
} | |
} else | |
{return and__3574__auto____2645; | |
} | |
}),args); | |
} else | |
{return and__3574__auto____2644; | |
} | |
})()); | |
}; | |
var G__2679 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2679__delegate.call(this, x, y, z, args); | |
}; | |
G__2679.cljs$lang$maxFixedArity = 3; | |
G__2679.cljs$lang$applyTo = (function (arglist__2680){ | |
var x = cljs.core.first(arglist__2680); | |
var y = cljs.core.first(cljs.core.next(arglist__2680)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2680))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2680))); | |
return G__2679__delegate.call(this, x, y, z, args); | |
}); | |
return G__2679; | |
})() | |
; | |
ep3 = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return ep3__2673.call(this); | |
case 1 : | |
return ep3__2674.call(this,x); | |
case 2 : | |
return ep3__2675.call(this,x,y); | |
case 3 : | |
return ep3__2676.call(this,x,y,z); | |
default: | |
return ep3__2677.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
ep3.cljs$lang$maxFixedArity = 3; | |
ep3.cljs$lang$applyTo = ep3__2677.cljs$lang$applyTo; | |
return ep3; | |
})() | |
}); | |
var every_pred__2655 = (function() { | |
var G__2681__delegate = function (p1,p2,p3,ps){ | |
var ps__2647 = cljs.core.list_STAR_.call(null,p1,p2,p3,ps); | |
return (function() { | |
var epn = null; | |
var epn__2682 = (function (){ | |
return true; | |
}); | |
var epn__2683 = (function (x){ | |
return cljs.core.every_QMARK_.call(null,(function (p1__2600_SHARP_){ | |
return p1__2600_SHARP_.call(null,x); | |
}),ps__2647); | |
}); | |
var epn__2684 = (function (x,y){ | |
return cljs.core.every_QMARK_.call(null,(function (p1__2601_SHARP_){ | |
var and__3574__auto____2648 = p1__2601_SHARP_.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2648)) | |
{return p1__2601_SHARP_.call(null,y); | |
} else | |
{return and__3574__auto____2648; | |
} | |
}),ps__2647); | |
}); | |
var epn__2685 = (function (x,y,z){ | |
return cljs.core.every_QMARK_.call(null,(function (p1__2602_SHARP_){ | |
var and__3574__auto____2649 = p1__2602_SHARP_.call(null,x); | |
if(cljs.core.truth_(and__3574__auto____2649)) | |
{var and__3574__auto____2650 = p1__2602_SHARP_.call(null,y); | |
if(cljs.core.truth_(and__3574__auto____2650)) | |
{return p1__2602_SHARP_.call(null,z); | |
} else | |
{return and__3574__auto____2650; | |
} | |
} else | |
{return and__3574__auto____2649; | |
} | |
}),ps__2647); | |
}); | |
var epn__2686 = (function() { | |
var G__2688__delegate = function (x,y,z,args){ | |
return cljs.core.boolean$.call(null,(function (){var and__3574__auto____2651 = epn.call(null,x,y,z); | |
if(cljs.core.truth_(and__3574__auto____2651)) | |
{return cljs.core.every_QMARK_.call(null,(function (p1__2603_SHARP_){ | |
return cljs.core.every_QMARK_.call(null,p1__2603_SHARP_,args); | |
}),ps__2647); | |
} else | |
{return and__3574__auto____2651; | |
} | |
})()); | |
}; | |
var G__2688 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2688__delegate.call(this, x, y, z, args); | |
}; | |
G__2688.cljs$lang$maxFixedArity = 3; | |
G__2688.cljs$lang$applyTo = (function (arglist__2689){ | |
var x = cljs.core.first(arglist__2689); | |
var y = cljs.core.first(cljs.core.next(arglist__2689)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2689))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2689))); | |
return G__2688__delegate.call(this, x, y, z, args); | |
}); | |
return G__2688; | |
})() | |
; | |
epn = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return epn__2682.call(this); | |
case 1 : | |
return epn__2683.call(this,x); | |
case 2 : | |
return epn__2684.call(this,x,y); | |
case 3 : | |
return epn__2685.call(this,x,y,z); | |
default: | |
return epn__2686.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
epn.cljs$lang$maxFixedArity = 3; | |
epn.cljs$lang$applyTo = epn__2686.cljs$lang$applyTo; | |
return epn; | |
})() | |
}; | |
var G__2681 = function (p1,p2,p3,var_args){ | |
var ps = null; | |
if (goog.isDef(var_args)) { | |
ps = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2681__delegate.call(this, p1, p2, p3, ps); | |
}; | |
G__2681.cljs$lang$maxFixedArity = 3; | |
G__2681.cljs$lang$applyTo = (function (arglist__2690){ | |
var p1 = cljs.core.first(arglist__2690); | |
var p2 = cljs.core.first(cljs.core.next(arglist__2690)); | |
var p3 = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2690))); | |
var ps = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2690))); | |
return G__2681__delegate.call(this, p1, p2, p3, ps); | |
}); | |
return G__2681; | |
})() | |
; | |
every_pred = function(p1,p2,p3,var_args){ | |
var ps = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return every_pred__2652.call(this,p1); | |
case 2 : | |
return every_pred__2653.call(this,p1,p2); | |
case 3 : | |
return every_pred__2654.call(this,p1,p2,p3); | |
default: | |
return every_pred__2655.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
every_pred.cljs$lang$maxFixedArity = 3; | |
every_pred.cljs$lang$applyTo = every_pred__2655.cljs$lang$applyTo; | |
return every_pred; | |
})() | |
; | |
/** | |
* Takes a set of predicates and returns a function f that returns the first logical true value | |
* returned by one of its composing predicates against any of its arguments, else it returns | |
* logical false. Note that f is short-circuiting in that it will stop execution on the first | |
* argument that triggers a logical true result against the original predicates. | |
* @param {...*} var_args | |
*/ | |
cljs.core.some_fn = (function() { | |
var some_fn = null; | |
var some_fn__2730 = (function (p){ | |
return (function() { | |
var sp1 = null; | |
var sp1__2735 = (function (){ | |
return null; | |
}); | |
var sp1__2736 = (function (x){ | |
return p.call(null,x); | |
}); | |
var sp1__2737 = (function (x,y){ | |
var or__3576__auto____2692 = p.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2692)) | |
{return or__3576__auto____2692; | |
} else | |
{return p.call(null,y); | |
} | |
}); | |
var sp1__2738 = (function (x,y,z){ | |
var or__3576__auto____2693 = p.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2693)) | |
{return or__3576__auto____2693; | |
} else | |
{var or__3576__auto____2694 = p.call(null,y); | |
if(cljs.core.truth_(or__3576__auto____2694)) | |
{return or__3576__auto____2694; | |
} else | |
{return p.call(null,z); | |
} | |
} | |
}); | |
var sp1__2739 = (function() { | |
var G__2741__delegate = function (x,y,z,args){ | |
var or__3576__auto____2695 = sp1.call(null,x,y,z); | |
if(cljs.core.truth_(or__3576__auto____2695)) | |
{return or__3576__auto____2695; | |
} else | |
{return cljs.core.some.call(null,p,args); | |
} | |
}; | |
var G__2741 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2741__delegate.call(this, x, y, z, args); | |
}; | |
G__2741.cljs$lang$maxFixedArity = 3; | |
G__2741.cljs$lang$applyTo = (function (arglist__2742){ | |
var x = cljs.core.first(arglist__2742); | |
var y = cljs.core.first(cljs.core.next(arglist__2742)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2742))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2742))); | |
return G__2741__delegate.call(this, x, y, z, args); | |
}); | |
return G__2741; | |
})() | |
; | |
sp1 = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return sp1__2735.call(this); | |
case 1 : | |
return sp1__2736.call(this,x); | |
case 2 : | |
return sp1__2737.call(this,x,y); | |
case 3 : | |
return sp1__2738.call(this,x,y,z); | |
default: | |
return sp1__2739.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
sp1.cljs$lang$maxFixedArity = 3; | |
sp1.cljs$lang$applyTo = sp1__2739.cljs$lang$applyTo; | |
return sp1; | |
})() | |
}); | |
var some_fn__2731 = (function (p1,p2){ | |
return (function() { | |
var sp2 = null; | |
var sp2__2743 = (function (){ | |
return null; | |
}); | |
var sp2__2744 = (function (x){ | |
var or__3576__auto____2696 = p1.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2696)) | |
{return or__3576__auto____2696; | |
} else | |
{return p2.call(null,x); | |
} | |
}); | |
var sp2__2745 = (function (x,y){ | |
var or__3576__auto____2697 = p1.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2697)) | |
{return or__3576__auto____2697; | |
} else | |
{var or__3576__auto____2698 = p1.call(null,y); | |
if(cljs.core.truth_(or__3576__auto____2698)) | |
{return or__3576__auto____2698; | |
} else | |
{var or__3576__auto____2699 = p2.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2699)) | |
{return or__3576__auto____2699; | |
} else | |
{return p2.call(null,y); | |
} | |
} | |
} | |
}); | |
var sp2__2746 = (function (x,y,z){ | |
var or__3576__auto____2700 = p1.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2700)) | |
{return or__3576__auto____2700; | |
} else | |
{var or__3576__auto____2701 = p1.call(null,y); | |
if(cljs.core.truth_(or__3576__auto____2701)) | |
{return or__3576__auto____2701; | |
} else | |
{var or__3576__auto____2702 = p1.call(null,z); | |
if(cljs.core.truth_(or__3576__auto____2702)) | |
{return or__3576__auto____2702; | |
} else | |
{var or__3576__auto____2703 = p2.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2703)) | |
{return or__3576__auto____2703; | |
} else | |
{var or__3576__auto____2704 = p2.call(null,y); | |
if(cljs.core.truth_(or__3576__auto____2704)) | |
{return or__3576__auto____2704; | |
} else | |
{return p2.call(null,z); | |
} | |
} | |
} | |
} | |
} | |
}); | |
var sp2__2747 = (function() { | |
var G__2749__delegate = function (x,y,z,args){ | |
var or__3576__auto____2705 = sp2.call(null,x,y,z); | |
if(cljs.core.truth_(or__3576__auto____2705)) | |
{return or__3576__auto____2705; | |
} else | |
{return cljs.core.some.call(null,(function (p1__2608_SHARP_){ | |
var or__3576__auto____2706 = p1.call(null,p1__2608_SHARP_); | |
if(cljs.core.truth_(or__3576__auto____2706)) | |
{return or__3576__auto____2706; | |
} else | |
{return p2.call(null,p1__2608_SHARP_); | |
} | |
}),args); | |
} | |
}; | |
var G__2749 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2749__delegate.call(this, x, y, z, args); | |
}; | |
G__2749.cljs$lang$maxFixedArity = 3; | |
G__2749.cljs$lang$applyTo = (function (arglist__2750){ | |
var x = cljs.core.first(arglist__2750); | |
var y = cljs.core.first(cljs.core.next(arglist__2750)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2750))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2750))); | |
return G__2749__delegate.call(this, x, y, z, args); | |
}); | |
return G__2749; | |
})() | |
; | |
sp2 = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return sp2__2743.call(this); | |
case 1 : | |
return sp2__2744.call(this,x); | |
case 2 : | |
return sp2__2745.call(this,x,y); | |
case 3 : | |
return sp2__2746.call(this,x,y,z); | |
default: | |
return sp2__2747.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
sp2.cljs$lang$maxFixedArity = 3; | |
sp2.cljs$lang$applyTo = sp2__2747.cljs$lang$applyTo; | |
return sp2; | |
})() | |
}); | |
var some_fn__2732 = (function (p1,p2,p3){ | |
return (function() { | |
var sp3 = null; | |
var sp3__2751 = (function (){ | |
return null; | |
}); | |
var sp3__2752 = (function (x){ | |
var or__3576__auto____2707 = p1.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2707)) | |
{return or__3576__auto____2707; | |
} else | |
{var or__3576__auto____2708 = p2.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2708)) | |
{return or__3576__auto____2708; | |
} else | |
{return p3.call(null,x); | |
} | |
} | |
}); | |
var sp3__2753 = (function (x,y){ | |
var or__3576__auto____2709 = p1.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2709)) | |
{return or__3576__auto____2709; | |
} else | |
{var or__3576__auto____2710 = p2.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2710)) | |
{return or__3576__auto____2710; | |
} else | |
{var or__3576__auto____2711 = p3.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2711)) | |
{return or__3576__auto____2711; | |
} else | |
{var or__3576__auto____2712 = p1.call(null,y); | |
if(cljs.core.truth_(or__3576__auto____2712)) | |
{return or__3576__auto____2712; | |
} else | |
{var or__3576__auto____2713 = p2.call(null,y); | |
if(cljs.core.truth_(or__3576__auto____2713)) | |
{return or__3576__auto____2713; | |
} else | |
{return p3.call(null,y); | |
} | |
} | |
} | |
} | |
} | |
}); | |
var sp3__2754 = (function (x,y,z){ | |
var or__3576__auto____2714 = p1.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2714)) | |
{return or__3576__auto____2714; | |
} else | |
{var or__3576__auto____2715 = p2.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2715)) | |
{return or__3576__auto____2715; | |
} else | |
{var or__3576__auto____2716 = p3.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2716)) | |
{return or__3576__auto____2716; | |
} else | |
{var or__3576__auto____2717 = p1.call(null,y); | |
if(cljs.core.truth_(or__3576__auto____2717)) | |
{return or__3576__auto____2717; | |
} else | |
{var or__3576__auto____2718 = p2.call(null,y); | |
if(cljs.core.truth_(or__3576__auto____2718)) | |
{return or__3576__auto____2718; | |
} else | |
{var or__3576__auto____2719 = p3.call(null,y); | |
if(cljs.core.truth_(or__3576__auto____2719)) | |
{return or__3576__auto____2719; | |
} else | |
{var or__3576__auto____2720 = p1.call(null,z); | |
if(cljs.core.truth_(or__3576__auto____2720)) | |
{return or__3576__auto____2720; | |
} else | |
{var or__3576__auto____2721 = p2.call(null,z); | |
if(cljs.core.truth_(or__3576__auto____2721)) | |
{return or__3576__auto____2721; | |
} else | |
{return p3.call(null,z); | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}); | |
var sp3__2755 = (function() { | |
var G__2757__delegate = function (x,y,z,args){ | |
var or__3576__auto____2722 = sp3.call(null,x,y,z); | |
if(cljs.core.truth_(or__3576__auto____2722)) | |
{return or__3576__auto____2722; | |
} else | |
{return cljs.core.some.call(null,(function (p1__2609_SHARP_){ | |
var or__3576__auto____2723 = p1.call(null,p1__2609_SHARP_); | |
if(cljs.core.truth_(or__3576__auto____2723)) | |
{return or__3576__auto____2723; | |
} else | |
{var or__3576__auto____2724 = p2.call(null,p1__2609_SHARP_); | |
if(cljs.core.truth_(or__3576__auto____2724)) | |
{return or__3576__auto____2724; | |
} else | |
{return p3.call(null,p1__2609_SHARP_); | |
} | |
} | |
}),args); | |
} | |
}; | |
var G__2757 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2757__delegate.call(this, x, y, z, args); | |
}; | |
G__2757.cljs$lang$maxFixedArity = 3; | |
G__2757.cljs$lang$applyTo = (function (arglist__2758){ | |
var x = cljs.core.first(arglist__2758); | |
var y = cljs.core.first(cljs.core.next(arglist__2758)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2758))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2758))); | |
return G__2757__delegate.call(this, x, y, z, args); | |
}); | |
return G__2757; | |
})() | |
; | |
sp3 = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return sp3__2751.call(this); | |
case 1 : | |
return sp3__2752.call(this,x); | |
case 2 : | |
return sp3__2753.call(this,x,y); | |
case 3 : | |
return sp3__2754.call(this,x,y,z); | |
default: | |
return sp3__2755.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
sp3.cljs$lang$maxFixedArity = 3; | |
sp3.cljs$lang$applyTo = sp3__2755.cljs$lang$applyTo; | |
return sp3; | |
})() | |
}); | |
var some_fn__2733 = (function() { | |
var G__2759__delegate = function (p1,p2,p3,ps){ | |
var ps__2725 = cljs.core.list_STAR_.call(null,p1,p2,p3,ps); | |
return (function() { | |
var spn = null; | |
var spn__2760 = (function (){ | |
return null; | |
}); | |
var spn__2761 = (function (x){ | |
return cljs.core.some.call(null,(function (p1__2610_SHARP_){ | |
return p1__2610_SHARP_.call(null,x); | |
}),ps__2725); | |
}); | |
var spn__2762 = (function (x,y){ | |
return cljs.core.some.call(null,(function (p1__2611_SHARP_){ | |
var or__3576__auto____2726 = p1__2611_SHARP_.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2726)) | |
{return or__3576__auto____2726; | |
} else | |
{return p1__2611_SHARP_.call(null,y); | |
} | |
}),ps__2725); | |
}); | |
var spn__2763 = (function (x,y,z){ | |
return cljs.core.some.call(null,(function (p1__2612_SHARP_){ | |
var or__3576__auto____2727 = p1__2612_SHARP_.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____2727)) | |
{return or__3576__auto____2727; | |
} else | |
{var or__3576__auto____2728 = p1__2612_SHARP_.call(null,y); | |
if(cljs.core.truth_(or__3576__auto____2728)) | |
{return or__3576__auto____2728; | |
} else | |
{return p1__2612_SHARP_.call(null,z); | |
} | |
} | |
}),ps__2725); | |
}); | |
var spn__2764 = (function() { | |
var G__2766__delegate = function (x,y,z,args){ | |
var or__3576__auto____2729 = spn.call(null,x,y,z); | |
if(cljs.core.truth_(or__3576__auto____2729)) | |
{return or__3576__auto____2729; | |
} else | |
{return cljs.core.some.call(null,(function (p1__2613_SHARP_){ | |
return cljs.core.some.call(null,p1__2613_SHARP_,args); | |
}),ps__2725); | |
} | |
}; | |
var G__2766 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2766__delegate.call(this, x, y, z, args); | |
}; | |
G__2766.cljs$lang$maxFixedArity = 3; | |
G__2766.cljs$lang$applyTo = (function (arglist__2767){ | |
var x = cljs.core.first(arglist__2767); | |
var y = cljs.core.first(cljs.core.next(arglist__2767)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2767))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2767))); | |
return G__2766__delegate.call(this, x, y, z, args); | |
}); | |
return G__2766; | |
})() | |
; | |
spn = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return spn__2760.call(this); | |
case 1 : | |
return spn__2761.call(this,x); | |
case 2 : | |
return spn__2762.call(this,x,y); | |
case 3 : | |
return spn__2763.call(this,x,y,z); | |
default: | |
return spn__2764.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
spn.cljs$lang$maxFixedArity = 3; | |
spn.cljs$lang$applyTo = spn__2764.cljs$lang$applyTo; | |
return spn; | |
})() | |
}; | |
var G__2759 = function (p1,p2,p3,var_args){ | |
var ps = null; | |
if (goog.isDef(var_args)) { | |
ps = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__2759__delegate.call(this, p1, p2, p3, ps); | |
}; | |
G__2759.cljs$lang$maxFixedArity = 3; | |
G__2759.cljs$lang$applyTo = (function (arglist__2768){ | |
var p1 = cljs.core.first(arglist__2768); | |
var p2 = cljs.core.first(cljs.core.next(arglist__2768)); | |
var p3 = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2768))); | |
var ps = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2768))); | |
return G__2759__delegate.call(this, p1, p2, p3, ps); | |
}); | |
return G__2759; | |
})() | |
; | |
some_fn = function(p1,p2,p3,var_args){ | |
var ps = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return some_fn__2730.call(this,p1); | |
case 2 : | |
return some_fn__2731.call(this,p1,p2); | |
case 3 : | |
return some_fn__2732.call(this,p1,p2,p3); | |
default: | |
return some_fn__2733.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
some_fn.cljs$lang$maxFixedArity = 3; | |
some_fn.cljs$lang$applyTo = some_fn__2733.cljs$lang$applyTo; | |
return some_fn; | |
})() | |
; | |
/** | |
* Returns a lazy sequence consisting of the result of applying f to the | |
* set of first items of each coll, followed by applying f to the set | |
* of second items in each coll, until any one of the colls is | |
* exhausted. Any remaining items in other colls are ignored. Function | |
* f should accept number-of-colls arguments. | |
* @param {...*} var_args | |
*/ | |
cljs.core.map = (function() { | |
var map = null; | |
var map__2781 = (function (f,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____2769 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____2769)) | |
{var s__2770 = temp__3726__auto____2769; | |
return cljs.core.cons.call(null,f.call(null,cljs.core.first.call(null,s__2770)),map.call(null,f,cljs.core.rest.call(null,s__2770))); | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
var map__2782 = (function (f,c1,c2){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var s1__2771 = cljs.core.seq.call(null,c1); | |
var s2__2772 = cljs.core.seq.call(null,c2); | |
if(cljs.core.truth_((function (){var and__3574__auto____2773 = s1__2771; | |
if(cljs.core.truth_(and__3574__auto____2773)) | |
{return s2__2772; | |
} else | |
{return and__3574__auto____2773; | |
} | |
})())) | |
{return cljs.core.cons.call(null,f.call(null,cljs.core.first.call(null,s1__2771),cljs.core.first.call(null,s2__2772)),map.call(null,f,cljs.core.rest.call(null,s1__2771),cljs.core.rest.call(null,s2__2772))); | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
var map__2783 = (function (f,c1,c2,c3){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var s1__2774 = cljs.core.seq.call(null,c1); | |
var s2__2775 = cljs.core.seq.call(null,c2); | |
var s3__2776 = cljs.core.seq.call(null,c3); | |
if(cljs.core.truth_((function (){var and__3574__auto____2777 = s1__2774; | |
if(cljs.core.truth_(and__3574__auto____2777)) | |
{var and__3574__auto____2778 = s2__2775; | |
if(cljs.core.truth_(and__3574__auto____2778)) | |
{return s3__2776; | |
} else | |
{return and__3574__auto____2778; | |
} | |
} else | |
{return and__3574__auto____2777; | |
} | |
})())) | |
{return cljs.core.cons.call(null,f.call(null,cljs.core.first.call(null,s1__2774),cljs.core.first.call(null,s2__2775),cljs.core.first.call(null,s3__2776)),map.call(null,f,cljs.core.rest.call(null,s1__2774),cljs.core.rest.call(null,s2__2775),cljs.core.rest.call(null,s3__2776))); | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
var map__2784 = (function() { | |
var G__2786__delegate = function (f,c1,c2,c3,colls){ | |
var step__2780 = (function step(cs){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var ss__2779 = map.call(null,cljs.core.seq,cs); | |
if(cljs.core.truth_(cljs.core.every_QMARK_.call(null,cljs.core.identity,ss__2779))) | |
{return cljs.core.cons.call(null,map.call(null,cljs.core.first,ss__2779),step.call(null,map.call(null,cljs.core.rest,ss__2779))); | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
return map.call(null,(function (p1__2691_SHARP_){ | |
return cljs.core.apply.call(null,f,p1__2691_SHARP_); | |
}),step__2780.call(null,cljs.core.conj.call(null,colls,c3,c2,c1))); | |
}; | |
var G__2786 = function (f,c1,c2,c3,var_args){ | |
var colls = null; | |
if (goog.isDef(var_args)) { | |
colls = cljs.core.array_seq(Array.prototype.slice.call(arguments, 4),0); | |
} | |
return G__2786__delegate.call(this, f, c1, c2, c3, colls); | |
}; | |
G__2786.cljs$lang$maxFixedArity = 4; | |
G__2786.cljs$lang$applyTo = (function (arglist__2787){ | |
var f = cljs.core.first(arglist__2787); | |
var c1 = cljs.core.first(cljs.core.next(arglist__2787)); | |
var c2 = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2787))); | |
var c3 = cljs.core.first(cljs.core.next(cljs.core.next(cljs.core.next(arglist__2787)))); | |
var colls = cljs.core.rest(cljs.core.next(cljs.core.next(cljs.core.next(arglist__2787)))); | |
return G__2786__delegate.call(this, f, c1, c2, c3, colls); | |
}); | |
return G__2786; | |
})() | |
; | |
map = function(f,c1,c2,c3,var_args){ | |
var colls = var_args; | |
switch(arguments.length){ | |
case 2 : | |
return map__2781.call(this,f,c1); | |
case 3 : | |
return map__2782.call(this,f,c1,c2); | |
case 4 : | |
return map__2783.call(this,f,c1,c2,c3); | |
default: | |
return map__2784.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
map.cljs$lang$maxFixedArity = 4; | |
map.cljs$lang$applyTo = map__2784.cljs$lang$applyTo; | |
return map; | |
})() | |
; | |
/** | |
* Returns a lazy sequence of the first n items in coll, or all items if | |
* there are fewer than n. | |
*/ | |
cljs.core.take = (function take(n,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
if(cljs.core.truth_(cljs.core.pos_QMARK_.call(null,n))) | |
{var temp__3726__auto____2788 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____2788)) | |
{var s__2789 = temp__3726__auto____2788; | |
return cljs.core.cons.call(null,cljs.core.first.call(null,s__2789),take.call(null,cljs.core.dec.call(null,n),cljs.core.rest.call(null,s__2789))); | |
} else | |
{return null; | |
} | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
/** | |
* Returns a lazy sequence of all but the first n items in coll. | |
*/ | |
cljs.core.drop = (function drop(n,coll){ | |
var step__2792 = (function (n,coll){ | |
var G__2793,G__2794;G__2793=G__2794=new Object(); | |
while(G__2793===G__2794){ | |
G__2793=(function(continue_val){ | |
var s__2790 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_((function (){var and__3574__auto____2791 = cljs.core.pos_QMARK_.call(null,n); | |
if(cljs.core.truth_(and__3574__auto____2791)) | |
{return s__2790; | |
} else | |
{return and__3574__auto____2791; | |
} | |
})())) | |
{{ | |
var G__2795 = cljs.core.dec.call(null,n); | |
var G__2796 = cljs.core.rest.call(null,s__2790); | |
n = G__2795; | |
coll = G__2796; | |
return continue_val; | |
} | |
} else | |
{return s__2790; | |
} | |
})(G__2794);} | |
return G__2793; | |
}); | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
return step__2792.call(null,n,coll); | |
}))); | |
}); | |
/** | |
* Return a lazy sequence of all but the last n (default 1) items in coll | |
*/ | |
cljs.core.drop_last = (function() { | |
var drop_last = null; | |
var drop_last__2797 = (function (s){ | |
return drop_last.call(null,1,s); | |
}); | |
var drop_last__2798 = (function (n,s){ | |
return cljs.core.map.call(null,(function (x,_){ | |
return x; | |
}),s,cljs.core.drop.call(null,n,s)); | |
}); | |
drop_last = function(n,s){ | |
switch(arguments.length){ | |
case 1 : | |
return drop_last__2797.call(this,n); | |
case 2 : | |
return drop_last__2798.call(this,n,s); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return drop_last; | |
})() | |
; | |
/** | |
* Returns a seq of the last n items in coll. Depending on the type | |
* of coll may be no better than linear time. For vectors, see also subvec. | |
*/ | |
cljs.core.take_last = (function take_last(n,coll){ | |
var s__2800 = cljs.core.seq.call(null,coll); | |
var lead__2801 = cljs.core.seq.call(null,cljs.core.drop.call(null,n,coll)); | |
var G__2802,G__2803;G__2802=G__2803=new Object(); | |
while(G__2802===G__2803){ | |
G__2802=(function(continue_val){ | |
if(cljs.core.truth_(lead__2801)) | |
{{ | |
var G__2804 = cljs.core.next.call(null,s__2800); | |
var G__2805 = cljs.core.next.call(null,lead__2801); | |
s__2800 = G__2804; | |
lead__2801 = G__2805; | |
return continue_val; | |
} | |
} else | |
{return s__2800; | |
} | |
})(G__2803);} | |
return G__2802; | |
}); | |
/** | |
* Returns a lazy sequence of the items in coll starting from the first | |
* item for which (pred item) returns nil. | |
*/ | |
cljs.core.drop_while = (function drop_while(pred,coll){ | |
var step__2808 = (function (pred,coll){ | |
var G__2809,G__2810;G__2809=G__2810=new Object(); | |
while(G__2809===G__2810){ | |
G__2809=(function(continue_val){ | |
var s__2806 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_((function (){var and__3574__auto____2807 = s__2806; | |
if(cljs.core.truth_(and__3574__auto____2807)) | |
{return pred.call(null,cljs.core.first.call(null,s__2806)); | |
} else | |
{return and__3574__auto____2807; | |
} | |
})())) | |
{{ | |
var G__2811 = pred; | |
var G__2812 = cljs.core.rest.call(null,s__2806); | |
pred = G__2811; | |
coll = G__2812; | |
return continue_val; | |
} | |
} else | |
{return s__2806; | |
} | |
})(G__2810);} | |
return G__2809; | |
}); | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
return step__2808.call(null,pred,coll); | |
}))); | |
}); | |
/** | |
* Returns a lazy (infinite!) sequence of repetitions of the items in coll. | |
*/ | |
cljs.core.cycle = (function cycle(coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____2813 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____2813)) | |
{var s__2814 = temp__3726__auto____2813; | |
return cljs.core.concat.call(null,s__2814,cycle.call(null,s__2814)); | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
/** | |
* Returns a vector of [(take n coll) (drop n coll)] | |
*/ | |
cljs.core.split_at = (function split_at(n,coll){ | |
return cljs.core.Vector.fromArray([cljs.core.take.call(null,n,coll),cljs.core.drop.call(null,n,coll)]); | |
}); | |
/** | |
* Returns a lazy (infinite!, or length n if supplied) sequence of xs. | |
*/ | |
cljs.core.repeat = (function() { | |
var repeat = null; | |
var repeat__2815 = (function (x){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
return cljs.core.cons.call(null,x,repeat.call(null,x)); | |
}))); | |
}); | |
var repeat__2816 = (function (n,x){ | |
return cljs.core.take.call(null,n,repeat.call(null,x)); | |
}); | |
repeat = function(n,x){ | |
switch(arguments.length){ | |
case 1 : | |
return repeat__2815.call(this,n); | |
case 2 : | |
return repeat__2816.call(this,n,x); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return repeat; | |
})() | |
; | |
/** | |
* Returns a lazy seq of n xs. | |
*/ | |
cljs.core.replicate = (function replicate(n,x){ | |
return cljs.core.take.call(null,n,cljs.core.repeat.call(null,x)); | |
}); | |
/** | |
* Takes a function of no args, presumably with side effects, and | |
* returns an infinite (or length n if supplied) lazy sequence of calls | |
* to it | |
*/ | |
cljs.core.repeatedly = (function() { | |
var repeatedly = null; | |
var repeatedly__2818 = (function (f){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
return cljs.core.cons.call(null,f.call(null),repeatedly.call(null,f)); | |
}))); | |
}); | |
var repeatedly__2819 = (function (n,f){ | |
return cljs.core.take.call(null,n,repeatedly.call(null,f)); | |
}); | |
repeatedly = function(n,f){ | |
switch(arguments.length){ | |
case 1 : | |
return repeatedly__2818.call(this,n); | |
case 2 : | |
return repeatedly__2819.call(this,n,f); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return repeatedly; | |
})() | |
; | |
/** | |
* Returns a lazy sequence of x, (f x), (f (f x)) etc. f must be free of side-effects | |
*/ | |
cljs.core.iterate = (function iterate(f,x){ | |
return cljs.core.cons.call(null,x,(new cljs.core.LazySeq(null,false,(function (){ | |
return iterate.call(null,f,f.call(null,x)); | |
})))); | |
}); | |
/** | |
* Returns a lazy seq of the first item in each coll, then the second etc. | |
* @param {...*} var_args | |
*/ | |
cljs.core.interleave = (function() { | |
var interleave = null; | |
var interleave__2825 = (function (c1,c2){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var s1__2821 = cljs.core.seq.call(null,c1); | |
var s2__2822 = cljs.core.seq.call(null,c2); | |
if(cljs.core.truth_((function (){var and__3574__auto____2823 = s1__2821; | |
if(cljs.core.truth_(and__3574__auto____2823)) | |
{return s2__2822; | |
} else | |
{return and__3574__auto____2823; | |
} | |
})())) | |
{return cljs.core.cons.call(null,cljs.core.first.call(null,s1__2821),cljs.core.cons.call(null,cljs.core.first.call(null,s2__2822),interleave.call(null,cljs.core.rest.call(null,s1__2821),cljs.core.rest.call(null,s2__2822)))); | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
var interleave__2826 = (function() { | |
var G__2828__delegate = function (c1,c2,colls){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var ss__2824 = cljs.core.map.call(null,cljs.core.seq,cljs.core.conj.call(null,colls,c2,c1)); | |
if(cljs.core.truth_(cljs.core.every_QMARK_.call(null,cljs.core.identity,ss__2824))) | |
{return cljs.core.concat.call(null,cljs.core.map.call(null,cljs.core.first,ss__2824),cljs.core.apply.call(null,interleave,cljs.core.map.call(null,cljs.core.rest,ss__2824))); | |
} else | |
{return null; | |
} | |
}))); | |
}; | |
var G__2828 = function (c1,c2,var_args){ | |
var colls = null; | |
if (goog.isDef(var_args)) { | |
colls = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2828__delegate.call(this, c1, c2, colls); | |
}; | |
G__2828.cljs$lang$maxFixedArity = 2; | |
G__2828.cljs$lang$applyTo = (function (arglist__2829){ | |
var c1 = cljs.core.first(arglist__2829); | |
var c2 = cljs.core.first(cljs.core.next(arglist__2829)); | |
var colls = cljs.core.rest(cljs.core.next(arglist__2829)); | |
return G__2828__delegate.call(this, c1, c2, colls); | |
}); | |
return G__2828; | |
})() | |
; | |
interleave = function(c1,c2,var_args){ | |
var colls = var_args; | |
switch(arguments.length){ | |
case 2 : | |
return interleave__2825.call(this,c1,c2); | |
default: | |
return interleave__2826.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
interleave.cljs$lang$maxFixedArity = 2; | |
interleave.cljs$lang$applyTo = interleave__2826.cljs$lang$applyTo; | |
return interleave; | |
})() | |
; | |
/** | |
* Returns a lazy seq of the elements of coll separated by sep | |
*/ | |
cljs.core.interpose = (function interpose(sep,coll){ | |
return cljs.core.drop.call(null,1,cljs.core.interleave.call(null,cljs.core.repeat.call(null,sep),coll)); | |
}); | |
/** | |
* Take a collection of collections, and return a lazy seq | |
* of items from the inner collection | |
*/ | |
cljs.core.flatten1 = (function flatten1(colls){ | |
var cat__2832 = (function cat(coll,colls){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3723__auto____2830 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3723__auto____2830)) | |
{var coll__2831 = temp__3723__auto____2830; | |
return cljs.core.cons.call(null,cljs.core.first.call(null,coll__2831),cat.call(null,cljs.core.rest.call(null,coll__2831),colls)); | |
} else | |
{if(cljs.core.truth_(cljs.core.seq.call(null,colls))) | |
{return cat.call(null,cljs.core.first.call(null,colls),cljs.core.rest.call(null,colls)); | |
} else | |
{return null; | |
} | |
} | |
}))); | |
}); | |
return cat__2832.call(null,null,colls); | |
}); | |
/** | |
* Returns the result of applying concat to the result of applying map | |
* to f and colls. Thus function f should return a collection. | |
* @param {...*} var_args | |
*/ | |
cljs.core.mapcat = (function() { | |
var mapcat = null; | |
var mapcat__2833 = (function (f,coll){ | |
return cljs.core.flatten1.call(null,cljs.core.map.call(null,f,coll)); | |
}); | |
var mapcat__2834 = (function() { | |
var G__2836__delegate = function (f,coll,colls){ | |
return cljs.core.flatten1.call(null,cljs.core.apply.call(null,cljs.core.map,f,coll,colls)); | |
}; | |
var G__2836 = function (f,coll,var_args){ | |
var colls = null; | |
if (goog.isDef(var_args)) { | |
colls = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return G__2836__delegate.call(this, f, coll, colls); | |
}; | |
G__2836.cljs$lang$maxFixedArity = 2; | |
G__2836.cljs$lang$applyTo = (function (arglist__2837){ | |
var f = cljs.core.first(arglist__2837); | |
var coll = cljs.core.first(cljs.core.next(arglist__2837)); | |
var colls = cljs.core.rest(cljs.core.next(arglist__2837)); | |
return G__2836__delegate.call(this, f, coll, colls); | |
}); | |
return G__2836; | |
})() | |
; | |
mapcat = function(f,coll,var_args){ | |
var colls = var_args; | |
switch(arguments.length){ | |
case 2 : | |
return mapcat__2833.call(this,f,coll); | |
default: | |
return mapcat__2834.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
mapcat.cljs$lang$maxFixedArity = 2; | |
mapcat.cljs$lang$applyTo = mapcat__2834.cljs$lang$applyTo; | |
return mapcat; | |
})() | |
; | |
/** | |
* Returns a lazy sequence of the items in coll for which | |
* (pred item) returns true. pred must be free of side-effects. | |
*/ | |
cljs.core.filter = (function filter(pred,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____2838 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____2838)) | |
{var s__2839 = temp__3726__auto____2838; | |
var f__2840 = cljs.core.first.call(null,s__2839); | |
var r__2841 = cljs.core.rest.call(null,s__2839); | |
if(cljs.core.truth_(pred.call(null,f__2840))) | |
{return cljs.core.cons.call(null,f__2840,filter.call(null,pred,r__2841)); | |
} else | |
{return filter.call(null,pred,r__2841); | |
} | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
/** | |
* Returns a lazy sequence of the items in coll for which | |
* (pred item) returns false. pred must be free of side-effects. | |
*/ | |
cljs.core.remove = (function remove(pred,coll){ | |
return cljs.core.filter.call(null,cljs.core.complement.call(null,pred),coll); | |
}); | |
/** | |
* Returns a lazy sequence of the nodes in a tree, via a depth-first walk. | |
* branch? must be a fn of one arg that returns true if passed a node | |
* that can have children (but may not). children must be a fn of one | |
* arg that returns a sequence of the children. Will only be called on | |
* nodes for which branch? returns true. Root is the root node of the | |
* tree. | |
*/ | |
cljs.core.tree_seq = (function tree_seq(branch_QMARK_,children,root){ | |
var walk__2843 = (function walk(node){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
return cljs.core.cons.call(null,node,(cljs.core.truth_(branch_QMARK_.call(null,node))?cljs.core.mapcat.call(null,walk,children.call(null,node)):null)); | |
}))); | |
}); | |
return walk__2843.call(null,root); | |
}); | |
/** | |
* Takes any nested combination of sequential things (lists, vectors, | |
* etc.) and returns their contents as a single, flat sequence. | |
* (flatten nil) returns nil. | |
*/ | |
cljs.core.flatten = (function flatten(x){ | |
return cljs.core.filter.call(null,(function (p1__2842_SHARP_){ | |
return cljs.core.not.call(null,cljs.core.sequential_QMARK_.call(null,p1__2842_SHARP_)); | |
}),cljs.core.rest.call(null,cljs.core.tree_seq.call(null,cljs.core.sequential_QMARK_,cljs.core.seq,x))); | |
}); | |
/** | |
* Returns a new coll consisting of to-coll with all of the items of | |
* from-coll conjoined. | |
*/ | |
cljs.core.into = (function into(to,from){ | |
return cljs.core.reduce.call(null,cljs.core._conj,to,from); | |
}); | |
/** | |
* Returns a lazy sequence of lists of n items each, at offsets step | |
* apart. If step is not supplied, defaults to n, i.e. the partitions | |
* do not overlap. If a pad collection is supplied, use its elements as | |
* necessary to complete last partition upto n items. In case there are | |
* not enough padding elements, return a partition with less than n items. | |
*/ | |
cljs.core.partition = (function() { | |
var partition = null; | |
var partition__2850 = (function (n,coll){ | |
return partition.call(null,n,n,coll); | |
}); | |
var partition__2851 = (function (n,step,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____2844 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____2844)) | |
{var s__2845 = temp__3726__auto____2844; | |
var p__2846 = cljs.core.take.call(null,n,s__2845); | |
if(cljs.core.truth_(cljs.core._EQ_.call(null,n,cljs.core.count.call(null,p__2846)))) | |
{return cljs.core.cons.call(null,p__2846,partition.call(null,n,step,cljs.core.drop.call(null,step,s__2845))); | |
} else | |
{return null; | |
} | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
var partition__2852 = (function (n,step,pad,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____2847 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____2847)) | |
{var s__2848 = temp__3726__auto____2847; | |
var p__2849 = cljs.core.take.call(null,n,s__2848); | |
if(cljs.core.truth_(cljs.core._EQ_.call(null,n,cljs.core.count.call(null,p__2849)))) | |
{return cljs.core.cons.call(null,p__2849,partition.call(null,n,step,pad,cljs.core.drop.call(null,step,s__2848))); | |
} else | |
{return cljs.core.list.call(null,cljs.core.take.call(null,n,cljs.core.concat.call(null,p__2849,pad))); | |
} | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
partition = function(n,step,pad,coll){ | |
switch(arguments.length){ | |
case 2 : | |
return partition__2850.call(this,n,step); | |
case 3 : | |
return partition__2851.call(this,n,step,pad); | |
case 4 : | |
return partition__2852.call(this,n,step,pad,coll); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return partition; | |
})() | |
; | |
/** | |
* Returns the value in a nested associative structure, | |
* where ks is a sequence of ke(ys. Returns nil if the key is not present, | |
* or the not-found value if supplied. | |
*/ | |
cljs.core.get_in = (function() { | |
var get_in = null; | |
var get_in__2858 = (function (m,ks){ | |
return cljs.core.reduce.call(null,cljs.core.get,m,ks); | |
}); | |
var get_in__2859 = (function (m,ks,not_found){ | |
var sentinel__2854 = cljs.core.lookup_sentinel; | |
var m__2855 = m; | |
var ks__2856 = cljs.core.seq.call(null,ks); | |
var G__2861,G__2862;G__2861=G__2862=new Object(); | |
while(G__2861===G__2862){ | |
G__2861=(function(continue_val){ | |
if(cljs.core.truth_(ks__2856)) | |
{var m__2857 = cljs.core.get.call(null,m__2855,cljs.core.first.call(null,ks__2856),sentinel__2854); | |
if(cljs.core.truth_(cljs.core.identical_QMARK_.call(null,sentinel__2854,m__2857))) | |
{return not_found; | |
} else | |
{{ | |
var G__2863 = sentinel__2854; | |
var G__2864 = m__2857; | |
var G__2865 = cljs.core.next.call(null,ks__2856); | |
sentinel__2854 = G__2863; | |
m__2855 = G__2864; | |
ks__2856 = G__2865; | |
return continue_val; | |
} | |
} | |
} else | |
{return m__2855; | |
} | |
})(G__2862);} | |
return G__2861; | |
}); | |
get_in = function(m,ks,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return get_in__2858.call(this,m,ks); | |
case 3 : | |
return get_in__2859.call(this,m,ks,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return get_in; | |
})() | |
; | |
/** | |
* Associates a value in a nested associative structure, where ks is a | |
* sequence of keys and v is the new value and returns a new nested structure. | |
* If any levels do not exist, hash-maps will be created. | |
*/ | |
cljs.core.assoc_in = (function assoc_in(m,p__2866,v){ | |
var vec__2867__2868 = p__2866; | |
var k__2869 = cljs.core.nth.call(null,vec__2867__2868,0,null); | |
var ks__2870 = cljs.core.nthnext.call(null,vec__2867__2868,1); | |
if(cljs.core.truth_(ks__2870)) | |
{return cljs.core.assoc.call(null,m,k__2869,assoc_in.call(null,cljs.core.get.call(null,m,k__2869),ks__2870,v)); | |
} else | |
{return cljs.core.assoc.call(null,m,k__2869,v); | |
} | |
}); | |
/** | |
* 'Updates' a value in a nested associative structure, where ks is a | |
* sequence of keys and f is a function that will take the old value | |
* and any supplied args and return the new value, and returns a new | |
* nested structure. If any levels do not exist, hash-maps will be | |
* created. | |
* @param {...*} var_args | |
*/ | |
cljs.core.update_in = (function() { | |
var update_in__delegate = function (m,p__2871,f,args){ | |
var vec__2872__2873 = p__2871; | |
var k__2874 = cljs.core.nth.call(null,vec__2872__2873,0,null); | |
var ks__2875 = cljs.core.nthnext.call(null,vec__2872__2873,1); | |
if(cljs.core.truth_(ks__2875)) | |
{return cljs.core.assoc.call(null,m,k__2874,cljs.core.apply.call(null,update_in,cljs.core.get.call(null,m,k__2874),ks__2875,f,args)); | |
} else | |
{return cljs.core.assoc.call(null,m,k__2874,cljs.core.apply.call(null,f,cljs.core.get.call(null,m,k__2874),args)); | |
} | |
}; | |
var update_in = function (m,p__2871,f,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return update_in__delegate.call(this, m, p__2871, f, args); | |
}; | |
update_in.cljs$lang$maxFixedArity = 3; | |
update_in.cljs$lang$applyTo = (function (arglist__2876){ | |
var m = cljs.core.first(arglist__2876); | |
var p__2871 = cljs.core.first(cljs.core.next(arglist__2876)); | |
var f = cljs.core.first(cljs.core.next(cljs.core.next(arglist__2876))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__2876))); | |
return update_in__delegate.call(this, m, p__2871, f, args); | |
}); | |
return update_in; | |
})() | |
; | |
/** | |
* @constructor | |
*/ | |
cljs.core.Vector = (function (meta,array){ | |
this.meta = meta; | |
this.array = array; | |
}) | |
cljs.core.Vector.prototype.cljs$core$IEquiv$ = true; | |
cljs.core.Vector.prototype.cljs$core$IEquiv$_equiv = (function (coll,other){ | |
var this__2877 = this; | |
return cljs.core.equiv_sequential.call(null,coll,other); | |
}); | |
cljs.core.Vector.prototype.cljs$core$ICollection$ = true; | |
cljs.core.Vector.prototype.cljs$core$ICollection$_conj = (function (coll,o){ | |
var this__2878 = this; | |
var new_array__2879 = cljs.core.aclone.call(null,this__2878.array); | |
new_array__2879.push(o); | |
return (new cljs.core.Vector(this__2878.meta,new_array__2879)); | |
}); | |
cljs.core.Vector.prototype.cljs$core$ISeqable$ = true; | |
cljs.core.Vector.prototype.cljs$core$ISeqable$_seq = (function (coll){ | |
var this__2880 = this; | |
if(cljs.core.truth_(cljs.core._GT_.call(null,this__2880.array.length,0))) | |
{var vector_seq__2881 = (function vector_seq(i){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
if(cljs.core.truth_(cljs.core._LT_.call(null,i,this__2880.array.length))) | |
{return cljs.core.cons.call(null,(this__2880.array[i]),vector_seq.call(null,cljs.core.inc.call(null,i))); | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
return vector_seq__2881.call(null,0); | |
} else | |
{return null; | |
} | |
}); | |
cljs.core.Vector.prototype.cljs$core$IVector$ = true; | |
cljs.core.Vector.prototype.cljs$core$IVector$_assoc_n = (function (coll,n,val){ | |
var this__2882 = this; | |
return cljs.core._assoc.call(null,coll,n,val); | |
}); | |
cljs.core.Vector.prototype.cljs$core$IStack$ = true; | |
cljs.core.Vector.prototype.cljs$core$IStack$_peek = (function (coll){ | |
var this__2883 = this; | |
var count__2884 = this__2883.array.length; | |
if(cljs.core.truth_(cljs.core._GT_.call(null,count__2884,0))) | |
{return (this__2883.array[cljs.core.dec.call(null,count__2884)]); | |
} else | |
{return null; | |
} | |
}); | |
cljs.core.Vector.prototype.cljs$core$IStack$_pop = (function (coll){ | |
var this__2885 = this; | |
if(cljs.core.truth_(cljs.core._GT_.call(null,this__2885.array.length,0))) | |
{var new_array__2886 = cljs.core.aclone.call(null,this__2885.array); | |
new_array__2886.pop(); | |
return (new cljs.core.Vector(this__2885.meta,new_array__2886)); | |
} else | |
{return null; | |
} | |
}); | |
cljs.core.Vector.prototype.cljs$core$IWithMeta$ = true; | |
cljs.core.Vector.prototype.cljs$core$IWithMeta$_with_meta = (function (coll,meta){ | |
var this__2887 = this; | |
return (new cljs.core.Vector(meta,this__2887.array)); | |
}); | |
cljs.core.Vector.prototype.cljs$core$IEmptyableCollection$ = true; | |
cljs.core.Vector.prototype.cljs$core$IEmptyableCollection$_empty = (function (coll){ | |
var this__2888 = this; | |
return cljs.core.with_meta.call(null,cljs.core.Vector.EMPTY,this__2888.meta); | |
}); | |
cljs.core.Vector.prototype.cljs$core$IIndexed$ = true; | |
cljs.core.Vector.prototype.cljs$core$IIndexed$_nth = (function() { | |
var G__2902 = null; | |
var G__2902__2903 = (function (coll,n){ | |
var this__2889 = this; | |
if(cljs.core.truth_((function (){var and__3574__auto____2890 = cljs.core._LT__EQ_.call(null,0,n); | |
if(cljs.core.truth_(and__3574__auto____2890)) | |
{return cljs.core._LT_.call(null,n,this__2889.array.length); | |
} else | |
{return and__3574__auto____2890; | |
} | |
})())) | |
{return (this__2889.array[n]); | |
} else | |
{return null; | |
} | |
}); | |
var G__2902__2904 = (function (coll,n,not_found){ | |
var this__2891 = this; | |
if(cljs.core.truth_((function (){var and__3574__auto____2892 = cljs.core._LT__EQ_.call(null,0,n); | |
if(cljs.core.truth_(and__3574__auto____2892)) | |
{return cljs.core._LT_.call(null,n,this__2891.array.length); | |
} else | |
{return and__3574__auto____2892; | |
} | |
})())) | |
{return (this__2891.array[n]); | |
} else | |
{return not_found; | |
} | |
}); | |
G__2902 = function(coll,n,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2902__2903.call(this,coll,n); | |
case 3 : | |
return G__2902__2904.call(this,coll,n,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2902; | |
})() | |
; | |
cljs.core.Vector.prototype.cljs$core$IMeta$ = true; | |
cljs.core.Vector.prototype.cljs$core$IMeta$_meta = (function (coll){ | |
var this__2893 = this; | |
return this__2893.meta; | |
}); | |
cljs.core.Vector.prototype.cljs$core$IReduce$ = true; | |
cljs.core.Vector.prototype.cljs$core$IReduce$_reduce = (function() { | |
var G__2906 = null; | |
var G__2906__2907 = (function (v,f){ | |
var this__2894 = this; | |
return cljs.core.ci_reduce.call(null,this__2894.array,f); | |
}); | |
var G__2906__2908 = (function (v,f,start){ | |
var this__2895 = this; | |
return cljs.core.ci_reduce.call(null,this__2895.array,f,start); | |
}); | |
G__2906 = function(v,f,start){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2906__2907.call(this,v,f); | |
case 3 : | |
return G__2906__2908.call(this,v,f,start); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2906; | |
})() | |
; | |
cljs.core.Vector.prototype.cljs$core$IHash$ = true; | |
cljs.core.Vector.prototype.cljs$core$IHash$_hash = (function (coll){ | |
var this__2896 = this; | |
return cljs.core.hash_coll.call(null,coll); | |
}); | |
cljs.core.Vector.prototype.cljs$core$ICounted$ = true; | |
cljs.core.Vector.prototype.cljs$core$ICounted$_count = (function (coll){ | |
var this__2897 = this; | |
return this__2897.array.length; | |
}); | |
cljs.core.Vector.prototype.cljs$core$ISequential$ = true; | |
cljs.core.Vector.prototype.cljs$core$IAssociative$ = true; | |
cljs.core.Vector.prototype.cljs$core$IAssociative$_assoc = (function (coll,k,v){ | |
var this__2898 = this; | |
var new_array__2899 = cljs.core.aclone.call(null,this__2898.array); | |
(new_array__2899[k] = v); | |
return (new cljs.core.Vector(this__2898.meta,new_array__2899)); | |
}); | |
cljs.core.Vector.prototype.cljs$core$ILookup$ = true; | |
cljs.core.Vector.prototype.cljs$core$ILookup$_lookup = (function() { | |
var G__2910 = null; | |
var G__2910__2911 = (function (coll,k){ | |
var this__2900 = this; | |
return cljs.core._nth.call(null,coll,k,null); | |
}); | |
var G__2910__2912 = (function (coll,k,not_found){ | |
var this__2901 = this; | |
return cljs.core._nth.call(null,coll,k,not_found); | |
}); | |
G__2910 = function(coll,k,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2910__2911.call(this,coll,k); | |
case 3 : | |
return G__2910__2912.call(this,coll,k,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2910; | |
})() | |
; | |
cljs.core.Vector.EMPTY = (new cljs.core.Vector(null,cljs.core.array.call(null))); | |
cljs.core.Vector.fromArray = (function (xs){ | |
return (new cljs.core.Vector(null,xs)); | |
}); | |
cljs.core.Vector.prototype.call = (function() { | |
var G__2914 = null; | |
var G__2914__2915 = (function (_,k){ | |
return cljs.core._lookup.call(null,this,k); | |
}); | |
var G__2914__2916 = (function (_,k,not_found){ | |
return cljs.core._lookup.call(null,this,k,not_found); | |
}); | |
G__2914 = function(_,k,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2914__2915.call(this,_,k); | |
case 3 : | |
return G__2914__2916.call(this,_,k,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2914; | |
})() | |
; | |
cljs.core.vec = (function vec(coll){ | |
return cljs.core.reduce.call(null,cljs.core.conj,cljs.core.Vector.EMPTY,coll); | |
}); | |
/** | |
* @param {...*} var_args | |
*/ | |
cljs.core.vector = (function() { | |
var vector__delegate = function (args){ | |
return cljs.core.vec.call(null,args); | |
}; | |
var vector = function (var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return vector__delegate.call(this, args); | |
}; | |
vector.cljs$lang$maxFixedArity = 0; | |
vector.cljs$lang$applyTo = (function (arglist__2918){ | |
var args = cljs.core.seq( arglist__2918 );; | |
return vector__delegate.call(this, args); | |
}); | |
return vector; | |
})() | |
; | |
/** | |
* @constructor | |
*/ | |
cljs.core.NeverEquiv = (function (){ | |
}) | |
cljs.core.NeverEquiv.prototype.cljs$core$IEquiv$ = true; | |
cljs.core.NeverEquiv.prototype.cljs$core$IEquiv$_equiv = (function (o,other){ | |
var this__2919 = this; | |
return false; | |
}); | |
cljs.core.never_equiv = (new cljs.core.NeverEquiv()); | |
/** | |
* Assumes y is a map. Returns true if x equals y, otherwise returns | |
* false. | |
*/ | |
cljs.core.equiv_map = (function equiv_map(x,y){ | |
return cljs.core.boolean$.call(null,(cljs.core.truth_(cljs.core.map_QMARK_.call(null,y))?(cljs.core.truth_(cljs.core._EQ_.call(null,cljs.core.count.call(null,x),cljs.core.count.call(null,y)))?cljs.core.every_QMARK_.call(null,cljs.core.identity,cljs.core.map.call(null,(function (xkv){ | |
return cljs.core._EQ_.call(null,cljs.core.get.call(null,y,cljs.core.first.call(null,xkv),cljs.core.never_equiv),cljs.core.second.call(null,xkv)); | |
}),x)):null):null)); | |
}); | |
cljs.core.scan_array = (function scan_array(incr,k,array){ | |
var len__2920 = array.length; | |
var i__2921 = 0; | |
var G__2922,G__2923;G__2922=G__2923=new Object(); | |
while(G__2922===G__2923){ | |
G__2922=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core._LT_.call(null,i__2921,len__2920))) | |
{if(cljs.core.truth_(cljs.core._EQ_.call(null,k,(array[i__2921])))) | |
{return i__2921; | |
} else | |
{{ | |
var G__2924 = cljs.core._PLUS_.call(null,i__2921,incr); | |
i__2921 = G__2924; | |
return continue_val; | |
} | |
} | |
} else | |
{return null; | |
} | |
})(G__2923);} | |
return G__2922; | |
}); | |
cljs.core.obj_map_contains_key_QMARK_ = (function() { | |
var obj_map_contains_key_QMARK_ = null; | |
var obj_map_contains_key_QMARK___2926 = (function (k,strobj){ | |
return obj_map_contains_key_QMARK_.call(null,k,strobj,true,false); | |
}); | |
var obj_map_contains_key_QMARK___2927 = (function (k,strobj,true_val,false_val){ | |
if(cljs.core.truth_((function (){var and__3574__auto____2925 = goog.isString.call(null,k); | |
if(cljs.core.truth_(and__3574__auto____2925)) | |
{return strobj.hasOwnProperty(k); | |
} else | |
{return and__3574__auto____2925; | |
} | |
})())) | |
{return true_val; | |
} else | |
{return false_val; | |
} | |
}); | |
obj_map_contains_key_QMARK_ = function(k,strobj,true_val,false_val){ | |
switch(arguments.length){ | |
case 2 : | |
return obj_map_contains_key_QMARK___2926.call(this,k,strobj); | |
case 4 : | |
return obj_map_contains_key_QMARK___2927.call(this,k,strobj,true_val,false_val); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return obj_map_contains_key_QMARK_; | |
})() | |
; | |
/** | |
* @constructor | |
*/ | |
cljs.core.ObjMap = (function (meta,keys,strobj){ | |
this.meta = meta; | |
this.keys = keys; | |
this.strobj = strobj; | |
}) | |
cljs.core.ObjMap.prototype.cljs$core$IEquiv$ = true; | |
cljs.core.ObjMap.prototype.cljs$core$IEquiv$_equiv = (function (coll,other){ | |
var this__2930 = this; | |
return cljs.core.equiv_map.call(null,coll,other); | |
}); | |
cljs.core.ObjMap.prototype.cljs$core$ICollection$ = true; | |
cljs.core.ObjMap.prototype.cljs$core$ICollection$_conj = (function (coll,entry){ | |
var this__2931 = this; | |
if(cljs.core.truth_(cljs.core.vector_QMARK_.call(null,entry))) | |
{return cljs.core._assoc.call(null,coll,cljs.core._nth.call(null,entry,0),cljs.core._nth.call(null,entry,1)); | |
} else | |
{return cljs.core.reduce.call(null,cljs.core._conj,coll,entry); | |
} | |
}); | |
cljs.core.ObjMap.prototype.cljs$core$ISeqable$ = true; | |
cljs.core.ObjMap.prototype.cljs$core$ISeqable$_seq = (function (coll){ | |
var this__2932 = this; | |
if(cljs.core.truth_(cljs.core.pos_QMARK_.call(null,this__2932.keys.length))) | |
{return cljs.core.map.call(null,(function (p1__2929_SHARP_){ | |
return cljs.core.vector.call(null,p1__2929_SHARP_,(this__2932.strobj[p1__2929_SHARP_])); | |
}),this__2932.keys); | |
} else | |
{return null; | |
} | |
}); | |
cljs.core.ObjMap.prototype.cljs$core$IWithMeta$ = true; | |
cljs.core.ObjMap.prototype.cljs$core$IWithMeta$_with_meta = (function (coll,meta){ | |
var this__2933 = this; | |
return (new cljs.core.ObjMap(meta,this__2933.keys,this__2933.strobj)); | |
}); | |
cljs.core.ObjMap.prototype.cljs$core$IMap$ = true; | |
cljs.core.ObjMap.prototype.cljs$core$IMap$_dissoc = (function (coll,k){ | |
var this__2934 = this; | |
if(cljs.core.truth_((function (){var and__3574__auto____2935 = goog.isString.call(null,k); | |
if(cljs.core.truth_(and__3574__auto____2935)) | |
{return this__2934.strobj.hasOwnProperty(k); | |
} else | |
{return and__3574__auto____2935; | |
} | |
})())) | |
{var new_keys__2936 = cljs.core.aclone.call(null,this__2934.keys); | |
var new_strobj__2937 = goog.object.clone.call(null,this__2934.strobj); | |
new_keys__2936.splice(cljs.core.scan_array.call(null,1,k,new_keys__2936),1); | |
cljs.core.js_delete.call(null,new_strobj__2937,k); | |
return (new cljs.core.ObjMap(this__2934.meta,new_keys__2936,new_strobj__2937)); | |
} else | |
{return coll; | |
} | |
}); | |
cljs.core.ObjMap.prototype.cljs$core$IEmptyableCollection$ = true; | |
cljs.core.ObjMap.prototype.cljs$core$IEmptyableCollection$_empty = (function (coll){ | |
var this__2938 = this; | |
return cljs.core.with_meta.call(null,cljs.core.ObjMap.EMPTY,this__2938.meta); | |
}); | |
cljs.core.ObjMap.prototype.cljs$core$IMeta$ = true; | |
cljs.core.ObjMap.prototype.cljs$core$IMeta$_meta = (function (coll){ | |
var this__2939 = this; | |
return this__2939.meta; | |
}); | |
cljs.core.ObjMap.prototype.cljs$core$IHash$ = true; | |
cljs.core.ObjMap.prototype.cljs$core$IHash$_hash = (function (coll){ | |
var this__2940 = this; | |
return cljs.core.hash_coll.call(null,coll); | |
}); | |
cljs.core.ObjMap.prototype.cljs$core$ICounted$ = true; | |
cljs.core.ObjMap.prototype.cljs$core$ICounted$_count = (function (coll){ | |
var this__2941 = this; | |
return this__2941.keys.length; | |
}); | |
cljs.core.ObjMap.prototype.cljs$core$IAssociative$ = true; | |
cljs.core.ObjMap.prototype.cljs$core$IAssociative$_assoc = (function (coll,k,v){ | |
var this__2942 = this; | |
if(cljs.core.truth_(goog.isString.call(null,k))) | |
{var new_strobj__2943 = goog.object.clone.call(null,this__2942.strobj); | |
var overwrite_QMARK___2944 = new_strobj__2943.hasOwnProperty(k); | |
(new_strobj__2943[k] = v); | |
if(cljs.core.truth_(overwrite_QMARK___2944)) | |
{return (new cljs.core.ObjMap(this__2942.meta,this__2942.keys,new_strobj__2943)); | |
} else | |
{var new_keys__2945 = cljs.core.aclone.call(null,this__2942.keys); | |
new_keys__2945.push(k); | |
return (new cljs.core.ObjMap(this__2942.meta,new_keys__2945,new_strobj__2943)); | |
} | |
} else | |
{return cljs.core.with_meta.call(null,cljs.core.into.call(null,cljs.core.hash_map.call(null,k,v),cljs.core.seq.call(null,coll)),this__2942.meta); | |
} | |
}); | |
cljs.core.ObjMap.prototype.cljs$core$IAssociative$_contains_key_QMARK_ = (function (coll,k){ | |
var this__2946 = this; | |
return cljs.core.obj_map_contains_key_QMARK_.call(null,k,this__2946.strobj); | |
}); | |
cljs.core.ObjMap.prototype.cljs$core$ILookup$ = true; | |
cljs.core.ObjMap.prototype.cljs$core$ILookup$_lookup = (function() { | |
var G__2949 = null; | |
var G__2949__2950 = (function (coll,k){ | |
var this__2947 = this; | |
return cljs.core._lookup.call(null,coll,k,null); | |
}); | |
var G__2949__2951 = (function (coll,k,not_found){ | |
var this__2948 = this; | |
return cljs.core.obj_map_contains_key_QMARK_.call(null,k,this__2948.strobj,(this__2948.strobj[k]),not_found); | |
}); | |
G__2949 = function(coll,k,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2949__2950.call(this,coll,k); | |
case 3 : | |
return G__2949__2951.call(this,coll,k,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2949; | |
})() | |
; | |
cljs.core.ObjMap.EMPTY = (new cljs.core.ObjMap(null,cljs.core.array.call(null),cljs.core.js_obj.call(null))); | |
cljs.core.ObjMap.fromObject = (function (ks,obj){ | |
return (new cljs.core.ObjMap(null,ks,obj)); | |
}); | |
cljs.core.ObjMap.prototype.call = (function() { | |
var G__2954 = null; | |
var G__2954__2955 = (function (_,k){ | |
return cljs.core._lookup.call(null,this,k); | |
}); | |
var G__2954__2956 = (function (_,k,not_found){ | |
return cljs.core._lookup.call(null,this,k,not_found); | |
}); | |
G__2954 = function(_,k,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2954__2955.call(this,_,k); | |
case 3 : | |
return G__2954__2956.call(this,_,k,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2954; | |
})() | |
; | |
/** | |
* @constructor | |
*/ | |
cljs.core.HashMap = (function (meta,count,hashobj){ | |
this.meta = meta; | |
this.count = count; | |
this.hashobj = hashobj; | |
}) | |
cljs.core.HashMap.prototype.cljs$core$IEquiv$ = true; | |
cljs.core.HashMap.prototype.cljs$core$IEquiv$_equiv = (function (coll,other){ | |
var this__2958 = this; | |
return cljs.core.equiv_map.call(null,coll,other); | |
}); | |
cljs.core.HashMap.prototype.cljs$core$ICollection$ = true; | |
cljs.core.HashMap.prototype.cljs$core$ICollection$_conj = (function (coll,entry){ | |
var this__2959 = this; | |
if(cljs.core.truth_(cljs.core.vector_QMARK_.call(null,entry))) | |
{return cljs.core._assoc.call(null,coll,cljs.core._nth.call(null,entry,0),cljs.core._nth.call(null,entry,1)); | |
} else | |
{return cljs.core.reduce.call(null,cljs.core._conj,coll,entry); | |
} | |
}); | |
cljs.core.HashMap.prototype.cljs$core$ISeqable$ = true; | |
cljs.core.HashMap.prototype.cljs$core$ISeqable$_seq = (function (coll){ | |
var this__2960 = this; | |
if(cljs.core.truth_(cljs.core.pos_QMARK_.call(null,this__2960.count))) | |
{var hashes__2961 = cljs.core.js_keys.call(null,this__2960.hashobj); | |
return cljs.core.mapcat.call(null,(function (p1__2953_SHARP_){ | |
return cljs.core.map.call(null,cljs.core.vec,cljs.core.partition.call(null,2,(this__2960.hashobj[p1__2953_SHARP_]))); | |
}),hashes__2961); | |
} else | |
{return null; | |
} | |
}); | |
cljs.core.HashMap.prototype.cljs$core$IWithMeta$ = true; | |
cljs.core.HashMap.prototype.cljs$core$IWithMeta$_with_meta = (function (coll,meta){ | |
var this__2962 = this; | |
return (new cljs.core.HashMap(meta,this__2962.count,this__2962.hashobj)); | |
}); | |
cljs.core.HashMap.prototype.cljs$core$IMap$ = true; | |
cljs.core.HashMap.prototype.cljs$core$IMap$_dissoc = (function (coll,k){ | |
var this__2963 = this; | |
var h__2964 = cljs.core.hash.call(null,k); | |
var bucket__2965 = (this__2963.hashobj[h__2964]); | |
var i__2966 = (cljs.core.truth_(bucket__2965)?cljs.core.scan_array.call(null,2,k,bucket__2965):null); | |
if(cljs.core.truth_(cljs.core.not.call(null,i__2966))) | |
{return coll; | |
} else | |
{var new_hashobj__2967 = goog.object.clone.call(null,this__2963.hashobj); | |
if(cljs.core.truth_(cljs.core._GT_.call(null,3,bucket__2965.length))) | |
{cljs.core.js_delete.call(null,new_hashobj__2967,h__2964); | |
} else | |
{var new_bucket__2968 = cljs.core.aclone.call(null,bucket__2965); | |
new_bucket__2968.splice(i__2966,2); | |
(new_hashobj__2967[h__2964] = new_bucket__2968); | |
} | |
return (new cljs.core.HashMap(this__2963.meta,cljs.core.dec.call(null,this__2963.count),new_hashobj__2967)); | |
} | |
}); | |
cljs.core.HashMap.prototype.cljs$core$IEmptyableCollection$ = true; | |
cljs.core.HashMap.prototype.cljs$core$IEmptyableCollection$_empty = (function (coll){ | |
var this__2969 = this; | |
return cljs.core.with_meta.call(null,cljs.core.HashMap.EMPTY,this__2969.meta); | |
}); | |
cljs.core.HashMap.prototype.cljs$core$IMeta$ = true; | |
cljs.core.HashMap.prototype.cljs$core$IMeta$_meta = (function (coll){ | |
var this__2970 = this; | |
return this__2970.meta; | |
}); | |
cljs.core.HashMap.prototype.cljs$core$IHash$ = true; | |
cljs.core.HashMap.prototype.cljs$core$IHash$_hash = (function (coll){ | |
var this__2971 = this; | |
return cljs.core.hash_coll.call(null,coll); | |
}); | |
cljs.core.HashMap.prototype.cljs$core$ICounted$ = true; | |
cljs.core.HashMap.prototype.cljs$core$ICounted$_count = (function (coll){ | |
var this__2972 = this; | |
return this__2972.count; | |
}); | |
cljs.core.HashMap.prototype.cljs$core$IAssociative$ = true; | |
cljs.core.HashMap.prototype.cljs$core$IAssociative$_assoc = (function (coll,k,v){ | |
var this__2973 = this; | |
var h__2974 = cljs.core.hash.call(null,k); | |
var bucket__2975 = (this__2973.hashobj[h__2974]); | |
if(cljs.core.truth_(bucket__2975)) | |
{var new_bucket__2976 = cljs.core.aclone.call(null,bucket__2975); | |
var new_hashobj__2977 = goog.object.clone.call(null,this__2973.hashobj); | |
(new_hashobj__2977[h__2974] = new_bucket__2976); | |
var temp__3723__auto____2978 = cljs.core.scan_array.call(null,2,k,new_bucket__2976); | |
if(cljs.core.truth_(temp__3723__auto____2978)) | |
{var i__2979 = temp__3723__auto____2978; | |
(new_bucket__2976[cljs.core.inc.call(null,i__2979)] = v); | |
return (new cljs.core.HashMap(this__2973.meta,this__2973.count,new_hashobj__2977)); | |
} else | |
{new_bucket__2976.push(k,v); | |
return (new cljs.core.HashMap(this__2973.meta,cljs.core.inc.call(null,this__2973.count),new_hashobj__2977)); | |
} | |
} else | |
{var new_hashobj__2980 = goog.object.clone.call(null,this__2973.hashobj); | |
(new_hashobj__2980[h__2974] = cljs.core.array.call(null,k,v)); | |
return (new cljs.core.HashMap(this__2973.meta,cljs.core.inc.call(null,this__2973.count),new_hashobj__2980)); | |
} | |
}); | |
cljs.core.HashMap.prototype.cljs$core$IAssociative$_contains_key_QMARK_ = (function (coll,k){ | |
var this__2981 = this; | |
var bucket__2982 = (this__2981.hashobj[cljs.core.hash.call(null,k)]); | |
var i__2983 = (cljs.core.truth_(bucket__2982)?cljs.core.scan_array.call(null,2,k,bucket__2982):null); | |
if(cljs.core.truth_(i__2983)) | |
{return true; | |
} else | |
{return false; | |
} | |
}); | |
cljs.core.HashMap.prototype.cljs$core$ILookup$ = true; | |
cljs.core.HashMap.prototype.cljs$core$ILookup$_lookup = (function() { | |
var G__2988 = null; | |
var G__2988__2989 = (function (coll,k){ | |
var this__2984 = this; | |
return cljs.core._lookup.call(null,coll,k,null); | |
}); | |
var G__2988__2990 = (function (coll,k,not_found){ | |
var this__2985 = this; | |
var bucket__2986 = (this__2985.hashobj[cljs.core.hash.call(null,k)]); | |
var i__2987 = (cljs.core.truth_(bucket__2986)?cljs.core.scan_array.call(null,2,k,bucket__2986):null); | |
if(cljs.core.truth_(i__2987)) | |
{return (bucket__2986[cljs.core.inc.call(null,i__2987)]); | |
} else | |
{return not_found; | |
} | |
}); | |
G__2988 = function(coll,k,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2988__2989.call(this,coll,k); | |
case 3 : | |
return G__2988__2990.call(this,coll,k,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2988; | |
})() | |
; | |
cljs.core.HashMap.EMPTY = (new cljs.core.HashMap(null,0,cljs.core.js_obj.call(null))); | |
cljs.core.HashMap.fromArrays = (function (ks,vs){ | |
var len__2992 = ks.length; | |
var i__2993 = 0; | |
var out__2994 = cljs.core.HashMap.EMPTY; | |
var G__2995,G__2996;G__2995=G__2996=new Object(); | |
while(G__2995===G__2996){ | |
G__2995=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core._LT_.call(null,i__2993,len__2992))) | |
{{ | |
var G__2997 = cljs.core.inc.call(null,i__2993); | |
var G__2998 = cljs.core.assoc.call(null,out__2994,(ks[i__2993]),(vs[i__2993])); | |
i__2993 = G__2997; | |
out__2994 = G__2998; | |
return continue_val; | |
} | |
} else | |
{return out__2994; | |
} | |
})(G__2996);} | |
return G__2995; | |
}); | |
cljs.core.HashMap.prototype.call = (function() { | |
var G__2999 = null; | |
var G__2999__3000 = (function (_,k){ | |
return cljs.core._lookup.call(null,this,k); | |
}); | |
var G__2999__3001 = (function (_,k,not_found){ | |
return cljs.core._lookup.call(null,this,k,not_found); | |
}); | |
G__2999 = function(_,k,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__2999__3000.call(this,_,k); | |
case 3 : | |
return G__2999__3001.call(this,_,k,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__2999; | |
})() | |
; | |
/** | |
* keyval => key val | |
* Returns a new hash map with supplied mappings. | |
* @param {...*} var_args | |
*/ | |
cljs.core.hash_map = (function() { | |
var hash_map__delegate = function (keyvals){ | |
var in$__3003 = cljs.core.seq.call(null,keyvals); | |
var out__3004 = cljs.core.HashMap.EMPTY; | |
var G__3005,G__3006;G__3005=G__3006=new Object(); | |
while(G__3005===G__3006){ | |
G__3005=(function(continue_val){ | |
if(cljs.core.truth_(in$__3003)) | |
{{ | |
var G__3007 = cljs.core.nnext.call(null,in$__3003); | |
var G__3008 = cljs.core.assoc.call(null,out__3004,cljs.core.first.call(null,in$__3003),cljs.core.second.call(null,in$__3003)); | |
in$__3003 = G__3007; | |
out__3004 = G__3008; | |
return continue_val; | |
} | |
} else | |
{return out__3004; | |
} | |
})(G__3006);} | |
return G__3005; | |
}; | |
var hash_map = function (var_args){ | |
var keyvals = null; | |
if (goog.isDef(var_args)) { | |
keyvals = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return hash_map__delegate.call(this, keyvals); | |
}; | |
hash_map.cljs$lang$maxFixedArity = 0; | |
hash_map.cljs$lang$applyTo = (function (arglist__3009){ | |
var keyvals = cljs.core.seq( arglist__3009 );; | |
return hash_map__delegate.call(this, keyvals); | |
}); | |
return hash_map; | |
})() | |
; | |
/** | |
* Returns a sequence of the map's keys. | |
*/ | |
cljs.core.keys = (function keys(hash_map){ | |
return cljs.core.seq.call(null,cljs.core.map.call(null,cljs.core.first,hash_map)); | |
}); | |
/** | |
* Returns a sequence of the map's values. | |
*/ | |
cljs.core.vals = (function vals(hash_map){ | |
return cljs.core.seq.call(null,cljs.core.map.call(null,cljs.core.second,hash_map)); | |
}); | |
/** | |
* Returns a map that consists of the rest of the maps conj-ed onto | |
* the first. If a key occurs in more than one map, the mapping from | |
* the latter (left-to-right) will be the mapping in the result. | |
* @param {...*} var_args | |
*/ | |
cljs.core.merge = (function() { | |
var merge__delegate = function (maps){ | |
if(cljs.core.truth_(cljs.core.some.call(null,cljs.core.identity,maps))) | |
{return cljs.core.reduce.call(null,(function (p1__3010_SHARP_,p2__3011_SHARP_){ | |
return cljs.core.conj.call(null,(function (){var or__3576__auto____3012 = p1__3010_SHARP_; | |
if(cljs.core.truth_(or__3576__auto____3012)) | |
{return or__3576__auto____3012; | |
} else | |
{return cljs.core.ObjMap.fromObject([],{}); | |
} | |
})(),p2__3011_SHARP_); | |
}),maps); | |
} else | |
{return null; | |
} | |
}; | |
var merge = function (var_args){ | |
var maps = null; | |
if (goog.isDef(var_args)) { | |
maps = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return merge__delegate.call(this, maps); | |
}; | |
merge.cljs$lang$maxFixedArity = 0; | |
merge.cljs$lang$applyTo = (function (arglist__3013){ | |
var maps = cljs.core.seq( arglist__3013 );; | |
return merge__delegate.call(this, maps); | |
}); | |
return merge; | |
})() | |
; | |
/** | |
* Returns a map that consists of the rest of the maps conj-ed onto | |
* the first. If a key occurs in more than one map, the mapping(s) | |
* from the latter (left-to-right) will be combined with the mapping in | |
* the result by calling (f val-in-result val-in-latter). | |
* @param {...*} var_args | |
*/ | |
cljs.core.merge_with = (function() { | |
var merge_with__delegate = function (f,maps){ | |
if(cljs.core.truth_(cljs.core.some.call(null,cljs.core.identity,maps))) | |
{var merge_entry__3016 = (function (m,e){ | |
var k__3014 = cljs.core.first.call(null,e); | |
var v__3015 = cljs.core.second.call(null,e); | |
if(cljs.core.truth_(cljs.core.contains_QMARK_.call(null,m,k__3014))) | |
{return cljs.core.assoc.call(null,m,k__3014,f.call(null,cljs.core.get.call(null,m,k__3014),v__3015)); | |
} else | |
{return cljs.core.assoc.call(null,m,k__3014,v__3015); | |
} | |
}); | |
var merge2__3018 = (function (m1,m2){ | |
return cljs.core.reduce.call(null,merge_entry__3016,(function (){var or__3576__auto____3017 = m1; | |
if(cljs.core.truth_(or__3576__auto____3017)) | |
{return or__3576__auto____3017; | |
} else | |
{return cljs.core.ObjMap.fromObject([],{}); | |
} | |
})(),cljs.core.seq.call(null,m2)); | |
}); | |
return cljs.core.reduce.call(null,merge2__3018,maps); | |
} else | |
{return null; | |
} | |
}; | |
var merge_with = function (f,var_args){ | |
var maps = null; | |
if (goog.isDef(var_args)) { | |
maps = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1),0); | |
} | |
return merge_with__delegate.call(this, f, maps); | |
}; | |
merge_with.cljs$lang$maxFixedArity = 1; | |
merge_with.cljs$lang$applyTo = (function (arglist__3019){ | |
var f = cljs.core.first(arglist__3019); | |
var maps = cljs.core.rest(arglist__3019); | |
return merge_with__delegate.call(this, f, maps); | |
}); | |
return merge_with; | |
})() | |
; | |
/** | |
* Returns a map containing only those entries in map whose key is in keys | |
*/ | |
cljs.core.select_keys = (function select_keys(map,keyseq){ | |
var ret__3021 = cljs.core.ObjMap.fromObject([],{}); | |
var keys__3022 = cljs.core.seq.call(null,keyseq); | |
var G__3025,G__3026;G__3025=G__3026=new Object(); | |
while(G__3025===G__3026){ | |
G__3025=(function(continue_val){ | |
if(cljs.core.truth_(keys__3022)) | |
{var key__3023 = cljs.core.first.call(null,keys__3022); | |
var entry__3024 = cljs.core.get.call(null,map,key__3023); | |
{ | |
var G__3027 = (cljs.core.truth_(entry__3024)?cljs.core.assoc.call(null,ret__3021,key__3023,entry__3024):ret__3021); | |
var G__3028 = cljs.core.next.call(null,keys__3022); | |
ret__3021 = G__3027; | |
keys__3022 = G__3028; | |
return continue_val; | |
} | |
} else | |
{return ret__3021; | |
} | |
})(G__3026);} | |
return G__3025; | |
}); | |
/** | |
* @constructor | |
*/ | |
cljs.core.Set = (function (meta,hash_map){ | |
this.meta = meta; | |
this.hash_map = hash_map; | |
}) | |
cljs.core.Set.prototype.cljs$core$ISet$ = true; | |
cljs.core.Set.prototype.cljs$core$ISet$_disjoin = (function (coll,v){ | |
var this__3029 = this; | |
return (new cljs.core.Set(this__3029.meta,cljs.core.dissoc.call(null,this__3029.hash_map,v))); | |
}); | |
cljs.core.Set.prototype.cljs$core$IEquiv$ = true; | |
cljs.core.Set.prototype.cljs$core$IEquiv$_equiv = (function (coll,other){ | |
var this__3030 = this; | |
var and__3574__auto____3031 = cljs.core.set_QMARK_.call(null,other); | |
if(cljs.core.truth_(and__3574__auto____3031)) | |
{var and__3574__auto____3032 = cljs.core._EQ_.call(null,cljs.core.count.call(null,coll),cljs.core.count.call(null,other)); | |
if(cljs.core.truth_(and__3574__auto____3032)) | |
{return cljs.core.every_QMARK_.call(null,(function (p1__3020_SHARP_){ | |
return cljs.core.contains_QMARK_.call(null,coll,p1__3020_SHARP_); | |
}),other); | |
} else | |
{return and__3574__auto____3032; | |
} | |
} else | |
{return and__3574__auto____3031; | |
} | |
}); | |
cljs.core.Set.prototype.cljs$core$ICollection$ = true; | |
cljs.core.Set.prototype.cljs$core$ICollection$_conj = (function (coll,o){ | |
var this__3033 = this; | |
return (new cljs.core.Set(this__3033.meta,cljs.core.assoc.call(null,this__3033.hash_map,o,null))); | |
}); | |
cljs.core.Set.prototype.cljs$core$ISeqable$ = true; | |
cljs.core.Set.prototype.cljs$core$ISeqable$_seq = (function (coll){ | |
var this__3034 = this; | |
return cljs.core.keys.call(null,this__3034.hash_map); | |
}); | |
cljs.core.Set.prototype.cljs$core$IWithMeta$ = true; | |
cljs.core.Set.prototype.cljs$core$IWithMeta$_with_meta = (function (coll,meta){ | |
var this__3035 = this; | |
return (new cljs.core.Set(meta,this__3035.hash_map)); | |
}); | |
cljs.core.Set.prototype.cljs$core$IEmptyableCollection$ = true; | |
cljs.core.Set.prototype.cljs$core$IEmptyableCollection$_empty = (function (coll){ | |
var this__3036 = this; | |
return cljs.core.with_meta.call(null,cljs.core.Set.EMPTY,this__3036.meta); | |
}); | |
cljs.core.Set.prototype.cljs$core$IMeta$ = true; | |
cljs.core.Set.prototype.cljs$core$IMeta$_meta = (function (coll){ | |
var this__3037 = this; | |
return this__3037.meta; | |
}); | |
cljs.core.Set.prototype.cljs$core$IHash$ = true; | |
cljs.core.Set.prototype.cljs$core$IHash$_hash = (function (coll){ | |
var this__3038 = this; | |
return cljs.core.hash_coll.call(null,coll); | |
}); | |
cljs.core.Set.prototype.cljs$core$ICounted$ = true; | |
cljs.core.Set.prototype.cljs$core$ICounted$_count = (function (coll){ | |
var this__3039 = this; | |
return cljs.core.count.call(null,cljs.core.seq.call(null,coll)); | |
}); | |
cljs.core.Set.prototype.cljs$core$ILookup$ = true; | |
cljs.core.Set.prototype.cljs$core$ILookup$_lookup = (function() { | |
var G__3042 = null; | |
var G__3042__3043 = (function (coll,v){ | |
var this__3040 = this; | |
return cljs.core._lookup.call(null,coll,v,null); | |
}); | |
var G__3042__3044 = (function (coll,v,not_found){ | |
var this__3041 = this; | |
if(cljs.core.truth_(cljs.core._contains_key_QMARK_.call(null,this__3041.hash_map,v))) | |
{return v; | |
} else | |
{return not_found; | |
} | |
}); | |
G__3042 = function(coll,v,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__3042__3043.call(this,coll,v); | |
case 3 : | |
return G__3042__3044.call(this,coll,v,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__3042; | |
})() | |
; | |
cljs.core.Set.EMPTY = (new cljs.core.Set(null,cljs.core.hash_map.call(null))); | |
cljs.core.Set.prototype.call = (function() { | |
var G__3046 = null; | |
var G__3046__3047 = (function (_,k){ | |
return cljs.core._lookup.call(null,this,k); | |
}); | |
var G__3046__3048 = (function (_,k,not_found){ | |
return cljs.core._lookup.call(null,this,k,not_found); | |
}); | |
G__3046 = function(_,k,not_found){ | |
switch(arguments.length){ | |
case 2 : | |
return G__3046__3047.call(this,_,k); | |
case 3 : | |
return G__3046__3048.call(this,_,k,not_found); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return G__3046; | |
})() | |
; | |
/** | |
* Returns a set of the distinct elements of coll. | |
*/ | |
cljs.core.set = (function set(coll){ | |
var in$__3051 = cljs.core.seq.call(null,coll); | |
var out__3052 = cljs.core.Set.EMPTY; | |
var G__3053,G__3054;G__3053=G__3054=new Object(); | |
while(G__3053===G__3054){ | |
G__3053=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.not.call(null,cljs.core.empty_QMARK_.call(null,in$__3051)))) | |
{{ | |
var G__3055 = cljs.core.rest.call(null,in$__3051); | |
var G__3056 = cljs.core.conj.call(null,out__3052,cljs.core.first.call(null,in$__3051)); | |
in$__3051 = G__3055; | |
out__3052 = G__3056; | |
return continue_val; | |
} | |
} else | |
{return out__3052; | |
} | |
})(G__3054);} | |
return G__3053; | |
}); | |
/** | |
* Given a map of replacement pairs and a vector/collection, returns a | |
* vector/seq with any elements = a key in smap replaced with the | |
* corresponding val in smap | |
*/ | |
cljs.core.replace = (function replace(smap,coll){ | |
if(cljs.core.truth_(cljs.core.vector_QMARK_.call(null,coll))) | |
{var n__3057 = cljs.core.count.call(null,coll); | |
return cljs.core.reduce.call(null,(function (v,i){ | |
var temp__3723__auto____3058 = cljs.core.find.call(null,smap,cljs.core.nth.call(null,v,i)); | |
if(cljs.core.truth_(temp__3723__auto____3058)) | |
{var e__3059 = temp__3723__auto____3058; | |
return cljs.core.assoc.call(null,v,i,cljs.core.second.call(null,e__3059)); | |
} else | |
{return v; | |
} | |
}),coll,cljs.core.take.call(null,n__3057,cljs.core.iterate.call(null,cljs.core.inc,0))); | |
} else | |
{return cljs.core.map.call(null,(function (p1__3050_SHARP_){ | |
var temp__3723__auto____3060 = cljs.core.find.call(null,smap,p1__3050_SHARP_); | |
if(cljs.core.truth_(temp__3723__auto____3060)) | |
{var e__3061 = temp__3723__auto____3060; | |
return cljs.core.second.call(null,e__3061); | |
} else | |
{return p1__3050_SHARP_; | |
} | |
}),coll); | |
} | |
}); | |
/** | |
* Returns a lazy sequence of the elements of coll with duplicates removed | |
*/ | |
cljs.core.distinct = (function distinct(coll){ | |
var step__3069 = (function step(xs,seen){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
return (function (p__3062,seen){ | |
var G__3070,G__3071;G__3070=G__3071=new Object(); | |
while(G__3070===G__3071){ | |
G__3070=(function(continue_val){ | |
var vec__3063__3064 = p__3062; | |
var f__3065 = cljs.core.nth.call(null,vec__3063__3064,0,null); | |
var xs__3066 = vec__3063__3064; | |
var temp__3726__auto____3067 = cljs.core.seq.call(null,xs__3066); | |
if(cljs.core.truth_(temp__3726__auto____3067)) | |
{var s__3068 = temp__3726__auto____3067; | |
if(cljs.core.truth_(cljs.core.contains_QMARK_.call(null,seen,f__3065))) | |
{{ | |
var G__3072 = cljs.core.rest.call(null,s__3068); | |
var G__3073 = seen; | |
p__3062 = G__3072; | |
seen = G__3073; | |
return continue_val; | |
} | |
} else | |
{return cljs.core.cons.call(null,f__3065,step.call(null,cljs.core.rest.call(null,s__3068),cljs.core.conj.call(null,seen,f__3065))); | |
} | |
} else | |
{return null; | |
} | |
})(G__3071);} | |
return G__3070; | |
}).call(null,xs,seen); | |
}))); | |
}); | |
return step__3069.call(null,coll,cljs.core.set([])); | |
}); | |
cljs.core.butlast = (function butlast(s){ | |
var ret__3074 = cljs.core.Vector.fromArray([]); | |
var s__3075 = s; | |
var G__3076,G__3077;G__3076=G__3077=new Object(); | |
while(G__3076===G__3077){ | |
G__3076=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.next.call(null,s__3075))) | |
{{ | |
var G__3078 = cljs.core.conj.call(null,ret__3074,cljs.core.first.call(null,s__3075)); | |
var G__3079 = cljs.core.next.call(null,s__3075); | |
ret__3074 = G__3078; | |
s__3075 = G__3079; | |
return continue_val; | |
} | |
} else | |
{return cljs.core.seq.call(null,ret__3074); | |
} | |
})(G__3077);} | |
return G__3076; | |
}); | |
/** | |
* Returns the name String of a string, symbol or keyword. | |
*/ | |
cljs.core.name = (function name(x){ | |
if(cljs.core.truth_(cljs.core.string_QMARK_.call(null,x))) | |
{return x; | |
} else | |
{if(cljs.core.truth_((function (){var or__3576__auto____3080 = cljs.core.keyword_QMARK_.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____3080)) | |
{return or__3576__auto____3080; | |
} else | |
{return cljs.core.symbol_QMARK_.call(null,x); | |
} | |
})())) | |
{var i__3081 = x.lastIndexOf("/"); | |
if(cljs.core.truth_(cljs.core._LT_.call(null,i__3081,0))) | |
{return cljs.core.subs.call(null,x,2); | |
} else | |
{return cljs.core.subs.call(null,x,cljs.core.inc.call(null,i__3081)); | |
} | |
} else | |
{if(cljs.core.truth_("ï·'else")) | |
{return null; | |
} else | |
{return null; | |
} | |
} | |
} | |
}); | |
/** | |
* Returns the namespace String of a symbol or keyword, or nil if not present. | |
*/ | |
cljs.core.namespace = (function namespace(x){ | |
if(cljs.core.truth_((function (){var or__3576__auto____3082 = cljs.core.keyword_QMARK_.call(null,x); | |
if(cljs.core.truth_(or__3576__auto____3082)) | |
{return or__3576__auto____3082; | |
} else | |
{return cljs.core.symbol_QMARK_.call(null,x); | |
} | |
})())) | |
{var i__3083 = x.lastIndexOf("/"); | |
if(cljs.core.truth_(cljs.core._GT_.call(null,i__3083,-1))) | |
{return cljs.core.subs.call(null,x,2,i__3083); | |
} else | |
{return null; | |
} | |
} else | |
{return "ï·'else"; | |
} | |
}); | |
/** | |
* Returns a map with the keys mapped to the corresponding vals. | |
*/ | |
cljs.core.zipmap = (function zipmap(keys,vals){ | |
var map__3086 = cljs.core.ObjMap.fromObject([],{}); | |
var ks__3087 = cljs.core.seq.call(null,keys); | |
var vs__3088 = cljs.core.seq.call(null,vals); | |
var G__3090,G__3091;G__3090=G__3091=new Object(); | |
while(G__3090===G__3091){ | |
G__3090=(function(continue_val){ | |
if(cljs.core.truth_((function (){var and__3574__auto____3089 = ks__3087; | |
if(cljs.core.truth_(and__3574__auto____3089)) | |
{return vs__3088; | |
} else | |
{return and__3574__auto____3089; | |
} | |
})())) | |
{{ | |
var G__3092 = cljs.core.assoc.call(null,map__3086,cljs.core.first.call(null,ks__3087),cljs.core.first.call(null,vs__3088)); | |
var G__3093 = cljs.core.next.call(null,ks__3087); | |
var G__3094 = cljs.core.next.call(null,vs__3088); | |
map__3086 = G__3092; | |
ks__3087 = G__3093; | |
vs__3088 = G__3094; | |
return continue_val; | |
} | |
} else | |
{return map__3086; | |
} | |
})(G__3091);} | |
return G__3090; | |
}); | |
/** | |
* Returns the x for which (k x), a number, is greatest. | |
* @param {...*} var_args | |
*/ | |
cljs.core.max_key = (function() { | |
var max_key = null; | |
var max_key__3097 = (function (k,x){ | |
return x; | |
}); | |
var max_key__3098 = (function (k,x,y){ | |
if(cljs.core.truth_(cljs.core._GT_.call(null,k.call(null,x),k.call(null,y)))) | |
{return x; | |
} else | |
{return y; | |
} | |
}); | |
var max_key__3099 = (function() { | |
var G__3101__delegate = function (k,x,y,more){ | |
return cljs.core.reduce.call(null,(function (p1__3084_SHARP_,p2__3085_SHARP_){ | |
return max_key.call(null,k,p1__3084_SHARP_,p2__3085_SHARP_); | |
}),max_key.call(null,k,x,y),more); | |
}; | |
var G__3101 = function (k,x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__3101__delegate.call(this, k, x, y, more); | |
}; | |
G__3101.cljs$lang$maxFixedArity = 3; | |
G__3101.cljs$lang$applyTo = (function (arglist__3102){ | |
var k = cljs.core.first(arglist__3102); | |
var x = cljs.core.first(cljs.core.next(arglist__3102)); | |
var y = cljs.core.first(cljs.core.next(cljs.core.next(arglist__3102))); | |
var more = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__3102))); | |
return G__3101__delegate.call(this, k, x, y, more); | |
}); | |
return G__3101; | |
})() | |
; | |
max_key = function(k,x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 2 : | |
return max_key__3097.call(this,k,x); | |
case 3 : | |
return max_key__3098.call(this,k,x,y); | |
default: | |
return max_key__3099.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
max_key.cljs$lang$maxFixedArity = 3; | |
max_key.cljs$lang$applyTo = max_key__3099.cljs$lang$applyTo; | |
return max_key; | |
})() | |
; | |
/** | |
* Returns the x for which (k x), a number, is least. | |
* @param {...*} var_args | |
*/ | |
cljs.core.min_key = (function() { | |
var min_key = null; | |
var min_key__3103 = (function (k,x){ | |
return x; | |
}); | |
var min_key__3104 = (function (k,x,y){ | |
if(cljs.core.truth_(cljs.core._LT_.call(null,k.call(null,x),k.call(null,y)))) | |
{return x; | |
} else | |
{return y; | |
} | |
}); | |
var min_key__3105 = (function() { | |
var G__3107__delegate = function (k,x,y,more){ | |
return cljs.core.reduce.call(null,(function (p1__3095_SHARP_,p2__3096_SHARP_){ | |
return min_key.call(null,k,p1__3095_SHARP_,p2__3096_SHARP_); | |
}),min_key.call(null,k,x,y),more); | |
}; | |
var G__3107 = function (k,x,y,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__3107__delegate.call(this, k, x, y, more); | |
}; | |
G__3107.cljs$lang$maxFixedArity = 3; | |
G__3107.cljs$lang$applyTo = (function (arglist__3108){ | |
var k = cljs.core.first(arglist__3108); | |
var x = cljs.core.first(cljs.core.next(arglist__3108)); | |
var y = cljs.core.first(cljs.core.next(cljs.core.next(arglist__3108))); | |
var more = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__3108))); | |
return G__3107__delegate.call(this, k, x, y, more); | |
}); | |
return G__3107; | |
})() | |
; | |
min_key = function(k,x,y,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 2 : | |
return min_key__3103.call(this,k,x); | |
case 3 : | |
return min_key__3104.call(this,k,x,y); | |
default: | |
return min_key__3105.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
min_key.cljs$lang$maxFixedArity = 3; | |
min_key.cljs$lang$applyTo = min_key__3105.cljs$lang$applyTo; | |
return min_key; | |
})() | |
; | |
/** | |
* Returns a lazy sequence of lists like partition, but may include | |
* partitions with fewer than n items at the end. | |
*/ | |
cljs.core.partition_all = (function() { | |
var partition_all = null; | |
var partition_all__3111 = (function (n,coll){ | |
return partition_all.call(null,n,n,coll); | |
}); | |
var partition_all__3112 = (function (n,step,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____3109 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____3109)) | |
{var s__3110 = temp__3726__auto____3109; | |
return cljs.core.cons.call(null,cljs.core.take.call(null,n,s__3110),partition_all.call(null,n,step,cljs.core.drop.call(null,step,s__3110))); | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
partition_all = function(n,step,coll){ | |
switch(arguments.length){ | |
case 2 : | |
return partition_all__3111.call(this,n,step); | |
case 3 : | |
return partition_all__3112.call(this,n,step,coll); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return partition_all; | |
})() | |
; | |
/** | |
* Returns a lazy sequence of successive items from coll while | |
* (pred item) returns true. pred must be free of side-effects. | |
*/ | |
cljs.core.take_while = (function take_while(pred,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____3114 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____3114)) | |
{var s__3115 = temp__3726__auto____3114; | |
if(cljs.core.truth_(pred.call(null,cljs.core.first.call(null,s__3115)))) | |
{return cljs.core.cons.call(null,cljs.core.first.call(null,s__3115),take_while.call(null,pred,cljs.core.rest.call(null,s__3115))); | |
} else | |
{return null; | |
} | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
/** | |
* Returns a lazy seq of nums from start (inclusive) to end | |
* (exclusive), by step, where start defaults to 0, step to 1, and end | |
* to infinity. | |
*/ | |
cljs.core.range = (function() { | |
var range = null; | |
var range__3116 = (function (){ | |
return cljs.core.iterate.call(null,cljs.core.inc,0); | |
}); | |
var range__3117 = (function (end){ | |
return range.call(null,0,end,1); | |
}); | |
var range__3118 = (function (start,end){ | |
return range.call(null,start,end,1); | |
}); | |
var range__3119 = (function (start,end,step){ | |
return cljs.core.take_while.call(null,(function (n){ | |
return cljs.core._LT_.call(null,n,end); | |
}),cljs.core.iterate.call(null,(function (x){ | |
return cljs.core._PLUS_.call(null,x,step); | |
}),start)); | |
}); | |
range = function(start,end,step){ | |
switch(arguments.length){ | |
case 0 : | |
return range__3116.call(this); | |
case 1 : | |
return range__3117.call(this,start); | |
case 2 : | |
return range__3118.call(this,start,end); | |
case 3 : | |
return range__3119.call(this,start,end,step); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return range; | |
})() | |
; | |
/** | |
* Returns a lazy seq of every nth item in coll. | |
*/ | |
cljs.core.take_nth = (function take_nth(n,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____3121 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____3121)) | |
{var s__3122 = temp__3726__auto____3121; | |
return cljs.core.cons.call(null,cljs.core.first.call(null,s__3122),take_nth.call(null,n,cljs.core.drop.call(null,n,s__3122))); | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
/** | |
* Returns a vector of [(take-while pred coll) (drop-while pred coll)] | |
*/ | |
cljs.core.split_with = (function split_with(pred,coll){ | |
return cljs.core.Vector.fromArray([cljs.core.take_while.call(null,pred,coll),cljs.core.drop_while.call(null,pred,coll)]); | |
}); | |
/** | |
* Applies f to each value in coll, splitting it each time f returns | |
* a new value. Returns a lazy seq of partitions. | |
*/ | |
cljs.core.partition_by = (function partition_by(f,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____3124 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____3124)) | |
{var s__3125 = temp__3726__auto____3124; | |
var fst__3126 = cljs.core.first.call(null,s__3125); | |
var fv__3127 = f.call(null,fst__3126); | |
var run__3128 = cljs.core.cons.call(null,fst__3126,cljs.core.take_while.call(null,(function (p1__3123_SHARP_){ | |
return cljs.core._EQ_.call(null,fv__3127,f.call(null,p1__3123_SHARP_)); | |
}),cljs.core.next.call(null,s__3125))); | |
return cljs.core.cons.call(null,run__3128,partition_by.call(null,f,cljs.core.seq.call(null,cljs.core.drop.call(null,cljs.core.count.call(null,run__3128),s__3125)))); | |
} else | |
{return null; | |
} | |
}))); | |
}); | |
/** | |
* Returns a map from distinct items in coll to the number of times | |
* they appear. | |
*/ | |
cljs.core.frequencies = (function frequencies(coll){ | |
return cljs.core.reduce.call(null,(function (counts,x){ | |
return cljs.core.assoc.call(null,counts,x,cljs.core.inc.call(null,cljs.core.get.call(null,counts,x,0))); | |
}),cljs.core.ObjMap.fromObject([],{}),coll); | |
}); | |
/** | |
* Returns a lazy seq of the intermediate values of the reduction (as | |
* per reduce) of coll by f, starting with init. | |
*/ | |
cljs.core.reductions = (function() { | |
var reductions = null; | |
var reductions__3143 = (function (f,coll){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3723__auto____3139 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3723__auto____3139)) | |
{var s__3140 = temp__3723__auto____3139; | |
return reductions.call(null,f,cljs.core.first.call(null,s__3140),cljs.core.rest.call(null,s__3140)); | |
} else | |
{return cljs.core.list.call(null,f.call(null)); | |
} | |
}))); | |
}); | |
var reductions__3144 = (function (f,init,coll){ | |
return cljs.core.cons.call(null,init,(new cljs.core.LazySeq(null,false,(function (){ | |
var temp__3726__auto____3141 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(temp__3726__auto____3141)) | |
{var s__3142 = temp__3726__auto____3141; | |
return reductions.call(null,f,f.call(null,init,cljs.core.first.call(null,s__3142)),cljs.core.rest.call(null,s__3142)); | |
} else | |
{return null; | |
} | |
})))); | |
}); | |
reductions = function(f,init,coll){ | |
switch(arguments.length){ | |
case 2 : | |
return reductions__3143.call(this,f,init); | |
case 3 : | |
return reductions__3144.call(this,f,init,coll); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return reductions; | |
})() | |
; | |
/** | |
* Takes a set of functions and returns a fn that is the juxtaposition | |
* of those fns. The returned fn takes a variable number of args, and | |
* returns a vector containing the result of applying each fn to the | |
* args (left-to-right). | |
* ((juxt a b c) x) => [(a x) (b x) (c x)] | |
* | |
* TODO: Implement apply | |
* @param {...*} var_args | |
*/ | |
cljs.core.juxt = (function() { | |
var juxt = null; | |
var juxt__3147 = (function (f){ | |
return (function() { | |
var G__3152 = null; | |
var G__3152__3153 = (function (){ | |
return cljs.core.vector.call(null,f.call(null)); | |
}); | |
var G__3152__3154 = (function (x){ | |
return cljs.core.vector.call(null,f.call(null,x)); | |
}); | |
var G__3152__3155 = (function (x,y){ | |
return cljs.core.vector.call(null,f.call(null,x,y)); | |
}); | |
var G__3152__3156 = (function (x,y,z){ | |
return cljs.core.vector.call(null,f.call(null,x,y,z)); | |
}); | |
var G__3152__3157 = (function() { | |
var G__3159__delegate = function (x,y,z,args){ | |
return cljs.core.vector.call(null,cljs.core.apply.call(null,f,x,y,z,args)); | |
}; | |
var G__3159 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__3159__delegate.call(this, x, y, z, args); | |
}; | |
G__3159.cljs$lang$maxFixedArity = 3; | |
G__3159.cljs$lang$applyTo = (function (arglist__3160){ | |
var x = cljs.core.first(arglist__3160); | |
var y = cljs.core.first(cljs.core.next(arglist__3160)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__3160))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__3160))); | |
return G__3159__delegate.call(this, x, y, z, args); | |
}); | |
return G__3159; | |
})() | |
; | |
G__3152 = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return G__3152__3153.call(this); | |
case 1 : | |
return G__3152__3154.call(this,x); | |
case 2 : | |
return G__3152__3155.call(this,x,y); | |
case 3 : | |
return G__3152__3156.call(this,x,y,z); | |
default: | |
return G__3152__3157.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
G__3152.cljs$lang$maxFixedArity = 3; | |
G__3152.cljs$lang$applyTo = G__3152__3157.cljs$lang$applyTo; | |
return G__3152; | |
})() | |
}); | |
var juxt__3148 = (function (f,g){ | |
return (function() { | |
var G__3161 = null; | |
var G__3161__3162 = (function (){ | |
return cljs.core.vector.call(null,f.call(null),g.call(null)); | |
}); | |
var G__3161__3163 = (function (x){ | |
return cljs.core.vector.call(null,f.call(null,x),g.call(null,x)); | |
}); | |
var G__3161__3164 = (function (x,y){ | |
return cljs.core.vector.call(null,f.call(null,x,y),g.call(null,x,y)); | |
}); | |
var G__3161__3165 = (function (x,y,z){ | |
return cljs.core.vector.call(null,f.call(null,x,y,z),g.call(null,x,y,z)); | |
}); | |
var G__3161__3166 = (function() { | |
var G__3168__delegate = function (x,y,z,args){ | |
return cljs.core.vector.call(null,cljs.core.apply.call(null,f,x,y,z,args),cljs.core.apply.call(null,g,x,y,z,args)); | |
}; | |
var G__3168 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__3168__delegate.call(this, x, y, z, args); | |
}; | |
G__3168.cljs$lang$maxFixedArity = 3; | |
G__3168.cljs$lang$applyTo = (function (arglist__3169){ | |
var x = cljs.core.first(arglist__3169); | |
var y = cljs.core.first(cljs.core.next(arglist__3169)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__3169))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__3169))); | |
return G__3168__delegate.call(this, x, y, z, args); | |
}); | |
return G__3168; | |
})() | |
; | |
G__3161 = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return G__3161__3162.call(this); | |
case 1 : | |
return G__3161__3163.call(this,x); | |
case 2 : | |
return G__3161__3164.call(this,x,y); | |
case 3 : | |
return G__3161__3165.call(this,x,y,z); | |
default: | |
return G__3161__3166.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
G__3161.cljs$lang$maxFixedArity = 3; | |
G__3161.cljs$lang$applyTo = G__3161__3166.cljs$lang$applyTo; | |
return G__3161; | |
})() | |
}); | |
var juxt__3149 = (function (f,g,h){ | |
return (function() { | |
var G__3170 = null; | |
var G__3170__3171 = (function (){ | |
return cljs.core.vector.call(null,f.call(null),g.call(null),h.call(null)); | |
}); | |
var G__3170__3172 = (function (x){ | |
return cljs.core.vector.call(null,f.call(null,x),g.call(null,x),h.call(null,x)); | |
}); | |
var G__3170__3173 = (function (x,y){ | |
return cljs.core.vector.call(null,f.call(null,x,y),g.call(null,x,y),h.call(null,x,y)); | |
}); | |
var G__3170__3174 = (function (x,y,z){ | |
return cljs.core.vector.call(null,f.call(null,x,y,z),g.call(null,x,y,z),h.call(null,x,y,z)); | |
}); | |
var G__3170__3175 = (function() { | |
var G__3177__delegate = function (x,y,z,args){ | |
return cljs.core.vector.call(null,cljs.core.apply.call(null,f,x,y,z,args),cljs.core.apply.call(null,g,x,y,z,args),cljs.core.apply.call(null,h,x,y,z,args)); | |
}; | |
var G__3177 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__3177__delegate.call(this, x, y, z, args); | |
}; | |
G__3177.cljs$lang$maxFixedArity = 3; | |
G__3177.cljs$lang$applyTo = (function (arglist__3178){ | |
var x = cljs.core.first(arglist__3178); | |
var y = cljs.core.first(cljs.core.next(arglist__3178)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__3178))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__3178))); | |
return G__3177__delegate.call(this, x, y, z, args); | |
}); | |
return G__3177; | |
})() | |
; | |
G__3170 = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return G__3170__3171.call(this); | |
case 1 : | |
return G__3170__3172.call(this,x); | |
case 2 : | |
return G__3170__3173.call(this,x,y); | |
case 3 : | |
return G__3170__3174.call(this,x,y,z); | |
default: | |
return G__3170__3175.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
G__3170.cljs$lang$maxFixedArity = 3; | |
G__3170.cljs$lang$applyTo = G__3170__3175.cljs$lang$applyTo; | |
return G__3170; | |
})() | |
}); | |
var juxt__3150 = (function() { | |
var G__3179__delegate = function (f,g,h,fs){ | |
var fs__3146 = cljs.core.list_STAR_.call(null,f,g,h,fs); | |
return (function() { | |
var G__3180 = null; | |
var G__3180__3181 = (function (){ | |
return cljs.core.reduce.call(null,(function (p1__3129_SHARP_,p2__3130_SHARP_){ | |
return cljs.core.conj.call(null,p1__3129_SHARP_,p2__3130_SHARP_.call(null)); | |
}),cljs.core.Vector.fromArray([]),fs__3146); | |
}); | |
var G__3180__3182 = (function (x){ | |
return cljs.core.reduce.call(null,(function (p1__3131_SHARP_,p2__3132_SHARP_){ | |
return cljs.core.conj.call(null,p1__3131_SHARP_,p2__3132_SHARP_.call(null,x)); | |
}),cljs.core.Vector.fromArray([]),fs__3146); | |
}); | |
var G__3180__3183 = (function (x,y){ | |
return cljs.core.reduce.call(null,(function (p1__3133_SHARP_,p2__3134_SHARP_){ | |
return cljs.core.conj.call(null,p1__3133_SHARP_,p2__3134_SHARP_.call(null,x,y)); | |
}),cljs.core.Vector.fromArray([]),fs__3146); | |
}); | |
var G__3180__3184 = (function (x,y,z){ | |
return cljs.core.reduce.call(null,(function (p1__3135_SHARP_,p2__3136_SHARP_){ | |
return cljs.core.conj.call(null,p1__3135_SHARP_,p2__3136_SHARP_.call(null,x,y,z)); | |
}),cljs.core.Vector.fromArray([]),fs__3146); | |
}); | |
var G__3180__3185 = (function() { | |
var G__3187__delegate = function (x,y,z,args){ | |
return cljs.core.reduce.call(null,(function (p1__3137_SHARP_,p2__3138_SHARP_){ | |
return cljs.core.conj.call(null,p1__3137_SHARP_,cljs.core.apply.call(null,p2__3138_SHARP_,x,y,z,args)); | |
}),cljs.core.Vector.fromArray([]),fs__3146); | |
}; | |
var G__3187 = function (x,y,z,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__3187__delegate.call(this, x, y, z, args); | |
}; | |
G__3187.cljs$lang$maxFixedArity = 3; | |
G__3187.cljs$lang$applyTo = (function (arglist__3188){ | |
var x = cljs.core.first(arglist__3188); | |
var y = cljs.core.first(cljs.core.next(arglist__3188)); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(arglist__3188))); | |
var args = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__3188))); | |
return G__3187__delegate.call(this, x, y, z, args); | |
}); | |
return G__3187; | |
})() | |
; | |
G__3180 = function(x,y,z,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 0 : | |
return G__3180__3181.call(this); | |
case 1 : | |
return G__3180__3182.call(this,x); | |
case 2 : | |
return G__3180__3183.call(this,x,y); | |
case 3 : | |
return G__3180__3184.call(this,x,y,z); | |
default: | |
return G__3180__3185.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
G__3180.cljs$lang$maxFixedArity = 3; | |
G__3180.cljs$lang$applyTo = G__3180__3185.cljs$lang$applyTo; | |
return G__3180; | |
})() | |
}; | |
var G__3179 = function (f,g,h,var_args){ | |
var fs = null; | |
if (goog.isDef(var_args)) { | |
fs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 3),0); | |
} | |
return G__3179__delegate.call(this, f, g, h, fs); | |
}; | |
G__3179.cljs$lang$maxFixedArity = 3; | |
G__3179.cljs$lang$applyTo = (function (arglist__3189){ | |
var f = cljs.core.first(arglist__3189); | |
var g = cljs.core.first(cljs.core.next(arglist__3189)); | |
var h = cljs.core.first(cljs.core.next(cljs.core.next(arglist__3189))); | |
var fs = cljs.core.rest(cljs.core.next(cljs.core.next(arglist__3189))); | |
return G__3179__delegate.call(this, f, g, h, fs); | |
}); | |
return G__3179; | |
})() | |
; | |
juxt = function(f,g,h,var_args){ | |
var fs = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return juxt__3147.call(this,f); | |
case 2 : | |
return juxt__3148.call(this,f,g); | |
case 3 : | |
return juxt__3149.call(this,f,g,h); | |
default: | |
return juxt__3150.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
juxt.cljs$lang$maxFixedArity = 3; | |
juxt.cljs$lang$applyTo = juxt__3150.cljs$lang$applyTo; | |
return juxt; | |
})() | |
; | |
/** | |
* When lazy sequences are produced via functions that have side | |
* effects, any effects other than those needed to produce the first | |
* element in the seq do not occur until the seq is consumed. dorun can | |
* be used to force any effects. Walks through the successive nexts of | |
* the seq, does not retain the head and returns nil. | |
*/ | |
cljs.core.dorun = (function() { | |
var dorun = null; | |
var dorun__3191 = (function (coll){ | |
var G__3194,G__3195;G__3194=G__3195=new Object(); | |
while(G__3194===G__3195){ | |
G__3194=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.seq.call(null,coll))) | |
{{ | |
var G__3196 = cljs.core.next.call(null,coll); | |
coll = G__3196; | |
return continue_val; | |
} | |
} else | |
{return null; | |
} | |
})(G__3195);} | |
return G__3194; | |
}); | |
var dorun__3192 = (function (n,coll){ | |
var G__3197,G__3198;G__3197=G__3198=new Object(); | |
while(G__3197===G__3198){ | |
G__3197=(function(continue_val){ | |
if(cljs.core.truth_((function (){var and__3574__auto____3190 = cljs.core.seq.call(null,coll); | |
if(cljs.core.truth_(and__3574__auto____3190)) | |
{return cljs.core.pos_QMARK_.call(null,n); | |
} else | |
{return and__3574__auto____3190; | |
} | |
})())) | |
{{ | |
var G__3199 = cljs.core.dec.call(null,n); | |
var G__3200 = cljs.core.next.call(null,coll); | |
n = G__3199; | |
coll = G__3200; | |
return continue_val; | |
} | |
} else | |
{return null; | |
} | |
})(G__3198);} | |
return G__3197; | |
}); | |
dorun = function(n,coll){ | |
switch(arguments.length){ | |
case 1 : | |
return dorun__3191.call(this,n); | |
case 2 : | |
return dorun__3192.call(this,n,coll); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return dorun; | |
})() | |
; | |
/** | |
* When lazy sequences are produced via functions that have side | |
* effects, any effects other than those needed to produce the first | |
* element in the seq do not occur until the seq is consumed. doall can | |
* be used to force any effects. Walks through the successive nexts of | |
* the seq, retains the head and returns it, thus causing the entire | |
* seq to reside in memory at one time. | |
*/ | |
cljs.core.doall = (function() { | |
var doall = null; | |
var doall__3201 = (function (coll){ | |
cljs.core.dorun.call(null,coll); | |
return coll; | |
}); | |
var doall__3202 = (function (n,coll){ | |
cljs.core.dorun.call(null,n,coll); | |
return coll; | |
}); | |
doall = function(n,coll){ | |
switch(arguments.length){ | |
case 1 : | |
return doall__3201.call(this,n); | |
case 2 : | |
return doall__3202.call(this,n,coll); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return doall; | |
})() | |
; | |
/** | |
* Returns the result of (re-find re s) if re fully matches s. | |
*/ | |
cljs.core.re_matches = (function re_matches(re,s){ | |
var matches__3204 = re.exec(s); | |
if(cljs.core.truth_(cljs.core._EQ_.call(null,cljs.core.first.call(null,matches__3204),s))) | |
{if(cljs.core.truth_(cljs.core._EQ_.call(null,cljs.core.count.call(null,matches__3204),1))) | |
{return cljs.core.first.call(null,matches__3204); | |
} else | |
{return cljs.core.vec.call(null,matches__3204); | |
} | |
} else | |
{return null; | |
} | |
}); | |
/** | |
* Returns the first regex match, if any, of s to re, using | |
* re.exec(s). Returns a vector, containing first the matching | |
* substring, then any capturing groups if the regular expression contains | |
* capturing groups. | |
*/ | |
cljs.core.re_find = (function re_find(re,s){ | |
var matches__3205 = re.exec(s); | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,matches__3205))) | |
{return null; | |
} else | |
{if(cljs.core.truth_(cljs.core._EQ_.call(null,cljs.core.count.call(null,matches__3205),1))) | |
{return cljs.core.first.call(null,matches__3205); | |
} else | |
{return cljs.core.vec.call(null,matches__3205); | |
} | |
} | |
}); | |
/** | |
* Returns a lazy sequence of successive matches of re in s. | |
*/ | |
cljs.core.re_seq = (function re_seq(re,s){ | |
var match_data__3206 = cljs.core.re_find.call(null,re,s); | |
var match_idx__3207 = s.search(re); | |
var match_str__3208 = (cljs.core.truth_(cljs.core.coll_QMARK_.call(null,match_data__3206))?cljs.core.first.call(null,match_data__3206):match_data__3206); | |
var post_match__3209 = cljs.core.subs.call(null,s,cljs.core._PLUS_.call(null,match_idx__3207,cljs.core.count.call(null,match_str__3208))); | |
if(cljs.core.truth_(match_data__3206)) | |
{return (new cljs.core.LazySeq(null,false,(function (){ | |
return cljs.core.cons.call(null,match_data__3206,re_seq.call(null,re,post_match__3209)); | |
}))); | |
} else | |
{return null; | |
} | |
}); | |
/** | |
* Returns an instance of RegExp which has compiled the provided string. | |
*/ | |
cljs.core.re_pattern = (function re_pattern(s){ | |
return (new goog.global['RegExp'](s)); | |
}); | |
cljs.core.pr_sequential = (function pr_sequential(print_one,begin,sep,end,opts,coll){ | |
return cljs.core.concat.call(null,cljs.core.Vector.fromArray([begin]),cljs.core.flatten1.call(null,cljs.core.interpose.call(null,cljs.core.Vector.fromArray([sep]),cljs.core.map.call(null,(function (p1__3210_SHARP_){ | |
return print_one.call(null,p1__3210_SHARP_,opts); | |
}),coll))),cljs.core.Vector.fromArray([end])); | |
}); | |
cljs.core.string_print = (function string_print(x){ | |
goog.global['print'].call(null,x); | |
return null; | |
}); | |
cljs.core.flush = (function flush(){ | |
return null; | |
}); | |
cljs.core.pr_seq = (function pr_seq(obj,opts){ | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,obj))) | |
{return cljs.core.list.call(null,"nil"); | |
} else | |
{if(cljs.core.truth_(cljs.core.undefined_QMARK_.call(null,obj))) | |
{return cljs.core.list.call(null,"#<undefined>"); | |
} else | |
{if(cljs.core.truth_("ï·'else")) | |
{return cljs.core.concat.call(null,(cljs.core.truth_((function (){var and__3574__auto____3211 = cljs.core.get.call(null,opts,"ï·'meta"); | |
if(cljs.core.truth_(and__3574__auto____3211)) | |
{var and__3574__auto____3214 = (function (){var x__105__auto____3212 = obj; | |
if(cljs.core.truth_((function (){var and__3574__auto____3213 = x__105__auto____3212; | |
if(cljs.core.truth_(and__3574__auto____3213)) | |
{return x__105__auto____3212.cljs$core$IMeta$; | |
} else | |
{return and__3574__auto____3213; | |
} | |
})())) | |
{return true; | |
} else | |
{return cljs.core.type_satisfies_.call(null,cljs.core.IMeta,x__105__auto____3212); | |
} | |
})(); | |
if(cljs.core.truth_(and__3574__auto____3214)) | |
{return cljs.core.meta.call(null,obj); | |
} else | |
{return and__3574__auto____3214; | |
} | |
} else | |
{return and__3574__auto____3211; | |
} | |
})())?cljs.core.concat.call(null,cljs.core.Vector.fromArray(["^"]),pr_seq.call(null,cljs.core.meta.call(null,obj),opts),cljs.core.Vector.fromArray([" "])):null),(cljs.core.truth_((function (){var x__105__auto____3215 = obj; | |
if(cljs.core.truth_((function (){var and__3574__auto____3216 = x__105__auto____3215; | |
if(cljs.core.truth_(and__3574__auto____3216)) | |
{return x__105__auto____3215.cljs$core$IPrintable$; | |
} else | |
{return and__3574__auto____3216; | |
} | |
})())) | |
{return true; | |
} else | |
{return cljs.core.type_satisfies_.call(null,cljs.core.IPrintable,x__105__auto____3215); | |
} | |
})())?cljs.core._pr_seq.call(null,obj,opts):cljs.core.list.call(null,"#<",cljs.core.str.call(null,obj),">"))); | |
} else | |
{return null; | |
} | |
} | |
} | |
}); | |
/** | |
* Prints a sequence of objects to a string, observing all the | |
* options given in opts | |
*/ | |
cljs.core.pr_str_with_opts = (function pr_str_with_opts(objs,opts){ | |
var first_obj__3217 = cljs.core.first.call(null,objs); | |
var sb__3218 = (new goog.string.StringBuffer()); | |
var G__3219__3220 = cljs.core.seq.call(null,objs); | |
var G__3225,G__3226;G__3225=G__3226=new Object(); | |
while(G__3225===G__3226){ | |
G__3225=(function(continue_val){ | |
if(cljs.core.truth_(G__3219__3220)) | |
{var obj__3221 = cljs.core.first.call(null,G__3219__3220); | |
if(cljs.core.truth_(cljs.core.identical_QMARK_.call(null,obj__3221,first_obj__3217))) | |
{} else | |
{sb__3218.append(" "); | |
} | |
var G__3222__3223 = cljs.core.seq.call(null,cljs.core.pr_seq.call(null,obj__3221,opts)); | |
var G__3227,G__3228;G__3227=G__3228=new Object(); | |
while(G__3227===G__3228){ | |
G__3227=(function(continue_val){ | |
if(cljs.core.truth_(G__3222__3223)) | |
{var string__3224 = cljs.core.first.call(null,G__3222__3223); | |
sb__3218.append(string__3224); | |
{ | |
var G__3229 = cljs.core.next.call(null,G__3222__3223); | |
G__3222__3223 = G__3229; | |
return continue_val; | |
} | |
} else | |
{} | |
})(G__3228);} | |
{ | |
var G__3230 = cljs.core.next.call(null,G__3219__3220); | |
G__3219__3220 = G__3230; | |
return continue_val; | |
} | |
} else | |
{} | |
})(G__3226);} | |
return cljs.core.str.call(null,sb__3218); | |
}); | |
/** | |
* Prints a sequence of objects using string-print, observing all | |
* the options given in opts | |
*/ | |
cljs.core.pr_with_opts = (function pr_with_opts(objs,opts){ | |
var first_obj__3231 = cljs.core.first.call(null,objs); | |
var G__3232__3233 = cljs.core.seq.call(null,objs); | |
var G__3238,G__3239;G__3238=G__3239=new Object(); | |
while(G__3238===G__3239){ | |
G__3238=(function(continue_val){ | |
if(cljs.core.truth_(G__3232__3233)) | |
{var obj__3234 = cljs.core.first.call(null,G__3232__3233); | |
if(cljs.core.truth_(cljs.core.identical_QMARK_.call(null,obj__3234,first_obj__3231))) | |
{} else | |
{cljs.core.string_print.call(null," "); | |
} | |
var G__3235__3236 = cljs.core.seq.call(null,cljs.core.pr_seq.call(null,obj__3234,opts)); | |
var G__3240,G__3241;G__3240=G__3241=new Object(); | |
while(G__3240===G__3241){ | |
G__3240=(function(continue_val){ | |
if(cljs.core.truth_(G__3235__3236)) | |
{var string__3237 = cljs.core.first.call(null,G__3235__3236); | |
cljs.core.string_print.call(null,string__3237); | |
{ | |
var G__3242 = cljs.core.next.call(null,G__3235__3236); | |
G__3235__3236 = G__3242; | |
return continue_val; | |
} | |
} else | |
{} | |
})(G__3241);} | |
{ | |
var G__3243 = cljs.core.next.call(null,G__3232__3233); | |
G__3232__3233 = G__3243; | |
return continue_val; | |
} | |
} else | |
{return null; | |
} | |
})(G__3239);} | |
return G__3238; | |
}); | |
cljs.core.newline = (function newline(opts){ | |
cljs.core.string_print.call(null,"\n"); | |
if(cljs.core.truth_(cljs.core.get.call(null,opts,"ï·'flush-on-newline"))) | |
{return cljs.core.flush.call(null); | |
} else | |
{return null; | |
} | |
}); | |
cljs.core._STAR_flush_on_newline_STAR_ = true; | |
cljs.core._STAR_print_readably_STAR_ = true; | |
cljs.core._STAR_print_meta_STAR_ = false; | |
cljs.core._STAR_print_dup_STAR_ = false; | |
cljs.core.pr_opts = (function pr_opts(){ | |
return cljs.core.ObjMap.fromObject(["ï·'flush-on-newline","ï·'readably","ï·'meta","ï·'dup"],{"ï·'flush-on-newline":cljs.core._STAR_flush_on_newline_STAR_,"ï·'readably":cljs.core._STAR_print_readably_STAR_,"ï·'meta":cljs.core._STAR_print_meta_STAR_,"ï·'dup":cljs.core._STAR_print_dup_STAR_}); | |
}); | |
/** | |
* pr to a string, returning it. Fundamental entrypoint to IPrintable. | |
* @param {...*} var_args | |
*/ | |
cljs.core.pr_str = (function() { | |
var pr_str__delegate = function (objs){ | |
return cljs.core.pr_str_with_opts.call(null,objs,cljs.core.pr_opts.call(null)); | |
}; | |
var pr_str = function (var_args){ | |
var objs = null; | |
if (goog.isDef(var_args)) { | |
objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return pr_str__delegate.call(this, objs); | |
}; | |
pr_str.cljs$lang$maxFixedArity = 0; | |
pr_str.cljs$lang$applyTo = (function (arglist__3244){ | |
var objs = cljs.core.seq( arglist__3244 );; | |
return pr_str__delegate.call(this, objs); | |
}); | |
return pr_str; | |
})() | |
; | |
/** | |
* Prints the object(s) using string-print. Prints the | |
* object(s), separated by spaces if there is more than one. | |
* By default, pr and prn print in a way that objects can be | |
* read by the reader | |
* @param {...*} var_args | |
*/ | |
cljs.core.pr = (function() { | |
var pr__delegate = function (objs){ | |
return cljs.core.pr_with_opts.call(null,objs,cljs.core.pr_opts.call(null)); | |
}; | |
var pr = function (var_args){ | |
var objs = null; | |
if (goog.isDef(var_args)) { | |
objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return pr__delegate.call(this, objs); | |
}; | |
pr.cljs$lang$maxFixedArity = 0; | |
pr.cljs$lang$applyTo = (function (arglist__3245){ | |
var objs = cljs.core.seq( arglist__3245 );; | |
return pr__delegate.call(this, objs); | |
}); | |
return pr; | |
})() | |
; | |
/** | |
* Prints the object(s) using string-print. | |
* print and println produce output for human consumption. | |
* @param {...*} var_args | |
*/ | |
cljs.core.print = (function() { | |
var cljs_core_print__delegate = function (objs){ | |
return cljs.core.pr_with_opts.call(null,objs,cljs.core.assoc.call(null,cljs.core.pr_opts.call(null),"ï·'readably",false)); | |
}; | |
var cljs_core_print = function (var_args){ | |
var objs = null; | |
if (goog.isDef(var_args)) { | |
objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return cljs_core_print__delegate.call(this, objs); | |
}; | |
cljs_core_print.cljs$lang$maxFixedArity = 0; | |
cljs_core_print.cljs$lang$applyTo = (function (arglist__3246){ | |
var objs = cljs.core.seq( arglist__3246 );; | |
return cljs_core_print__delegate.call(this, objs); | |
}); | |
return cljs_core_print; | |
})() | |
; | |
/** | |
* Same as print followed by (newline) | |
* @param {...*} var_args | |
*/ | |
cljs.core.println = (function() { | |
var println__delegate = function (objs){ | |
cljs.core.pr_with_opts.call(null,objs,cljs.core.assoc.call(null,cljs.core.pr_opts.call(null),"ï·'readably",false)); | |
return cljs.core.newline.call(null,cljs.core.pr_opts.call(null)); | |
}; | |
var println = function (var_args){ | |
var objs = null; | |
if (goog.isDef(var_args)) { | |
objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return println__delegate.call(this, objs); | |
}; | |
println.cljs$lang$maxFixedArity = 0; | |
println.cljs$lang$applyTo = (function (arglist__3247){ | |
var objs = cljs.core.seq( arglist__3247 );; | |
return println__delegate.call(this, objs); | |
}); | |
return println; | |
})() | |
; | |
/** | |
* Same as pr followed by (newline). | |
* @param {...*} var_args | |
*/ | |
cljs.core.prn = (function() { | |
var prn__delegate = function (objs){ | |
cljs.core.pr_with_opts.call(null,objs,cljs.core.pr_opts.call(null)); | |
return cljs.core.newline.call(null,cljs.core.pr_opts.call(null)); | |
}; | |
var prn = function (var_args){ | |
var objs = null; | |
if (goog.isDef(var_args)) { | |
objs = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return prn__delegate.call(this, objs); | |
}; | |
prn.cljs$lang$maxFixedArity = 0; | |
prn.cljs$lang$applyTo = (function (arglist__3248){ | |
var objs = cljs.core.seq( arglist__3248 );; | |
return prn__delegate.call(this, objs); | |
}); | |
return prn; | |
})() | |
; | |
cljs.core.HashMap.prototype.cljs$core$IPrintable$ = true; | |
cljs.core.HashMap.prototype.cljs$core$IPrintable$_pr_seq = (function (coll,opts){ | |
var pr_pair__3249 = (function (keyval){ | |
return cljs.core.pr_sequential.call(null,cljs.core.pr_seq,""," ","",opts,keyval); | |
}); | |
return cljs.core.pr_sequential.call(null,pr_pair__3249,"{",", ","}",opts,coll); | |
}); | |
(cljs.core.IPrintable["number"] = true); | |
(cljs.core._pr_seq["number"] = (function (n,opts){ | |
return cljs.core.list.call(null,cljs.core.str.call(null,n)); | |
})); | |
cljs.core.IndexedSeq.prototype.cljs$core$IPrintable$ = true; | |
cljs.core.IndexedSeq.prototype.cljs$core$IPrintable$_pr_seq = (function (coll,opts){ | |
return cljs.core.pr_sequential.call(null,cljs.core.pr_seq,"("," ",")",opts,coll); | |
}); | |
cljs.core.LazySeq.prototype.cljs$core$IPrintable$ = true; | |
cljs.core.LazySeq.prototype.cljs$core$IPrintable$_pr_seq = (function (coll,opts){ | |
return cljs.core.pr_sequential.call(null,cljs.core.pr_seq,"("," ",")",opts,coll); | |
}); | |
(cljs.core.IPrintable["boolean"] = true); | |
(cljs.core._pr_seq["boolean"] = (function (bool,opts){ | |
return cljs.core.list.call(null,cljs.core.str.call(null,bool)); | |
})); | |
cljs.core.Set.prototype.cljs$core$IPrintable$ = true; | |
cljs.core.Set.prototype.cljs$core$IPrintable$_pr_seq = (function (coll,opts){ | |
return cljs.core.pr_sequential.call(null,cljs.core.pr_seq,"#{"," ","}",opts,coll); | |
}); | |
(cljs.core.IPrintable["string"] = true); | |
(cljs.core._pr_seq["string"] = (function (obj,opts){ | |
if(cljs.core.truth_(cljs.core.keyword_QMARK_.call(null,obj))) | |
{return cljs.core.list.call(null,cljs.core.str.call(null,":",(function (){var temp__3726__auto____3250 = cljs.core.namespace.call(null,obj); | |
if(cljs.core.truth_(temp__3726__auto____3250)) | |
{var nspc__3251 = temp__3726__auto____3250; | |
return cljs.core.str.call(null,nspc__3251,"/"); | |
} else | |
{return null; | |
} | |
})(),cljs.core.name.call(null,obj))); | |
} else | |
{if(cljs.core.truth_(cljs.core.symbol_QMARK_.call(null,obj))) | |
{return cljs.core.list.call(null,cljs.core.str.call(null,(function (){var temp__3726__auto____3252 = cljs.core.namespace.call(null,obj); | |
if(cljs.core.truth_(temp__3726__auto____3252)) | |
{var nspc__3253 = temp__3726__auto____3252; | |
return cljs.core.str.call(null,nspc__3253,"/"); | |
} else | |
{return null; | |
} | |
})(),cljs.core.name.call(null,obj))); | |
} else | |
{if(cljs.core.truth_("ï·'else")) | |
{return cljs.core.list.call(null,(cljs.core.truth_("ï·'readably".call(null,opts))?goog.string.quote.call(null,obj):obj)); | |
} else | |
{return null; | |
} | |
} | |
} | |
})); | |
cljs.core.Vector.prototype.cljs$core$IPrintable$ = true; | |
cljs.core.Vector.prototype.cljs$core$IPrintable$_pr_seq = (function (coll,opts){ | |
return cljs.core.pr_sequential.call(null,cljs.core.pr_seq,"["," ","]",opts,coll); | |
}); | |
cljs.core.List.prototype.cljs$core$IPrintable$ = true; | |
cljs.core.List.prototype.cljs$core$IPrintable$_pr_seq = (function (coll,opts){ | |
return cljs.core.pr_sequential.call(null,cljs.core.pr_seq,"("," ",")",opts,coll); | |
}); | |
(cljs.core.IPrintable["array"] = true); | |
(cljs.core._pr_seq["array"] = (function (a,opts){ | |
return cljs.core.pr_sequential.call(null,cljs.core.pr_seq,"#<Array [",", ","]>",opts,a); | |
})); | |
cljs.core.EmptyList.prototype.cljs$core$IPrintable$ = true; | |
cljs.core.EmptyList.prototype.cljs$core$IPrintable$_pr_seq = (function (coll,opts){ | |
return cljs.core.list.call(null,"()"); | |
}); | |
cljs.core.Cons.prototype.cljs$core$IPrintable$ = true; | |
cljs.core.Cons.prototype.cljs$core$IPrintable$_pr_seq = (function (coll,opts){ | |
return cljs.core.pr_sequential.call(null,cljs.core.pr_seq,"("," ",")",opts,coll); | |
}); | |
cljs.core.ObjMap.prototype.cljs$core$IPrintable$ = true; | |
cljs.core.ObjMap.prototype.cljs$core$IPrintable$_pr_seq = (function (coll,opts){ | |
var pr_pair__3254 = (function (keyval){ | |
return cljs.core.pr_sequential.call(null,cljs.core.pr_seq,""," ","",opts,keyval); | |
}); | |
return cljs.core.pr_sequential.call(null,pr_pair__3254,"{",", ","}",opts,coll); | |
}); | |
/** | |
* @constructor | |
*/ | |
cljs.core.Atom = (function (state,meta,validator){ | |
this.state = state; | |
this.meta = meta; | |
this.validator = validator; | |
}) | |
cljs.core.Atom.prototype.cljs$core$IPrintable$ = true; | |
cljs.core.Atom.prototype.cljs$core$IPrintable$_pr_seq = (function (a,opts){ | |
var this__3255 = this; | |
return cljs.core.concat.call(null,cljs.core.Vector.fromArray(["#<Atom: "]),cljs.core._pr_seq.call(null,this__3255.state,opts),">"); | |
}); | |
cljs.core.Atom.prototype.cljs$core$IMeta$ = true; | |
cljs.core.Atom.prototype.cljs$core$IMeta$_meta = (function (_){ | |
var this__3256 = this; | |
return this__3256.meta; | |
}); | |
cljs.core.Atom.prototype.cljs$core$IDeref$ = true; | |
cljs.core.Atom.prototype.cljs$core$IDeref$_deref = (function (_){ | |
var this__3257 = this; | |
return this__3257.state; | |
}); | |
cljs.core.Atom.prototype.cljs$core$IEquiv$ = true; | |
cljs.core.Atom.prototype.cljs$core$IEquiv$_equiv = (function (o,other){ | |
var this__3258 = this; | |
return cljs.core.identical_QMARK_.call(null,o,other); | |
}); | |
/** | |
* Creates and returns an Atom with an initial value of x and zero or | |
* more options (in any order): | |
* | |
* :meta metadata-map | |
* | |
* :validator validate-fn | |
* | |
* If metadata-map is supplied, it will be come the metadata on the | |
* atom. validate-fn must be nil or a side-effect-free fn of one | |
* argument, which will be passed the intended new state on any state | |
* change. If the new state is unacceptable, the validate-fn should | |
* return false or throw an exception. | |
* @param {...*} var_args | |
*/ | |
cljs.core.atom = (function() { | |
var atom = null; | |
var atom__3265 = (function (x){ | |
return (new cljs.core.Atom(x,null,null)); | |
}); | |
var atom__3266 = (function() { | |
var G__3268__delegate = function (x,p__3259){ | |
var map__3260__3261 = p__3259; | |
var map__3260__3262 = (cljs.core.truth_(cljs.core.seq_QMARK_.call(null,map__3260__3261))?cljs.core.apply.call(null,cljs.core.hash_map,map__3260__3261):map__3260__3261); | |
var validator__3263 = cljs.core.get.call(null,map__3260__3262,"ï·'validator"); | |
var meta__3264 = cljs.core.get.call(null,map__3260__3262,"ï·'meta"); | |
return (new cljs.core.Atom(x,meta__3264,validator__3263)); | |
}; | |
var G__3268 = function (x,var_args){ | |
var p__3259 = null; | |
if (goog.isDef(var_args)) { | |
p__3259 = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1),0); | |
} | |
return G__3268__delegate.call(this, x, p__3259); | |
}; | |
G__3268.cljs$lang$maxFixedArity = 1; | |
G__3268.cljs$lang$applyTo = (function (arglist__3269){ | |
var x = cljs.core.first(arglist__3269); | |
var p__3259 = cljs.core.rest(arglist__3269); | |
return G__3268__delegate.call(this, x, p__3259); | |
}); | |
return G__3268; | |
})() | |
; | |
atom = function(x,var_args){ | |
var p__3259 = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return atom__3265.call(this,x); | |
default: | |
return atom__3266.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
atom.cljs$lang$maxFixedArity = 1; | |
atom.cljs$lang$applyTo = atom__3266.cljs$lang$applyTo; | |
return atom; | |
})() | |
; | |
/** | |
* Sets the value of atom to newval without regard for the | |
* current value. Returns newval. | |
*/ | |
cljs.core.reset_BANG_ = (function reset_BANG_(a,newval){ | |
var temp__3726__auto____3270 = a.validator; | |
if(cljs.core.truth_(temp__3726__auto____3270)) | |
{var v__3271 = temp__3726__auto____3270; | |
if(cljs.core.truth_(v__3271.call(null,newval))) | |
{} else | |
{throw "Validator rejected reference state"; | |
} | |
} else | |
{} | |
return a.state = newval; | |
}); | |
/** | |
* Atomically swaps the value of atom to be: | |
* (apply f current-value-of-atom args). Note that f may be called | |
* multiple times, and thus should be free of side effects. Returns | |
* the value that was swapped in. | |
* @param {...*} var_args | |
*/ | |
cljs.core.swap_BANG_ = (function() { | |
var swap_BANG_ = null; | |
var swap_BANG___3272 = (function (a,f){ | |
return cljs.core.reset_BANG_.call(null,a,f.call(null,a.state)); | |
}); | |
var swap_BANG___3273 = (function (a,f,x){ | |
return cljs.core.reset_BANG_.call(null,a,f.call(null,a.state,x)); | |
}); | |
var swap_BANG___3274 = (function (a,f,x,y){ | |
return cljs.core.reset_BANG_.call(null,a,f.call(null,a.state,x,y)); | |
}); | |
var swap_BANG___3275 = (function (a,f,x,y,z){ | |
return cljs.core.reset_BANG_.call(null,a,f.call(null,a.state,x,y,z)); | |
}); | |
var swap_BANG___3276 = (function() { | |
var G__3278__delegate = function (a,f,x,y,z,more){ | |
return cljs.core.reset_BANG_.call(null,a,cljs.core.apply.call(null,f,a.state,x,y,z,more)); | |
}; | |
var G__3278 = function (a,f,x,y,z,var_args){ | |
var more = null; | |
if (goog.isDef(var_args)) { | |
more = cljs.core.array_seq(Array.prototype.slice.call(arguments, 5),0); | |
} | |
return G__3278__delegate.call(this, a, f, x, y, z, more); | |
}; | |
G__3278.cljs$lang$maxFixedArity = 5; | |
G__3278.cljs$lang$applyTo = (function (arglist__3279){ | |
var a = cljs.core.first(arglist__3279); | |
var f = cljs.core.first(cljs.core.next(arglist__3279)); | |
var x = cljs.core.first(cljs.core.next(cljs.core.next(arglist__3279))); | |
var y = cljs.core.first(cljs.core.next(cljs.core.next(cljs.core.next(arglist__3279)))); | |
var z = cljs.core.first(cljs.core.next(cljs.core.next(cljs.core.next(cljs.core.next(arglist__3279))))); | |
var more = cljs.core.rest(cljs.core.next(cljs.core.next(cljs.core.next(cljs.core.next(arglist__3279))))); | |
return G__3278__delegate.call(this, a, f, x, y, z, more); | |
}); | |
return G__3278; | |
})() | |
; | |
swap_BANG_ = function(a,f,x,y,z,var_args){ | |
var more = var_args; | |
switch(arguments.length){ | |
case 2 : | |
return swap_BANG___3272.call(this,a,f); | |
case 3 : | |
return swap_BANG___3273.call(this,a,f,x); | |
case 4 : | |
return swap_BANG___3274.call(this,a,f,x,y); | |
case 5 : | |
return swap_BANG___3275.call(this,a,f,x,y,z); | |
default: | |
return swap_BANG___3276.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
swap_BANG_.cljs$lang$maxFixedArity = 5; | |
swap_BANG_.cljs$lang$applyTo = swap_BANG___3276.cljs$lang$applyTo; | |
return swap_BANG_; | |
})() | |
; | |
/** | |
* Atomically sets the value of atom to newval if and only if the | |
* current value of the atom is identical to oldval. Returns true if | |
* set happened, else false. | |
*/ | |
cljs.core.compare_and_set_BANG_ = (function compare_and_set_BANG_(a,oldval,newval){ | |
if(cljs.core.truth_(cljs.core._EQ_.call(null,a.state,oldval))) | |
{cljs.core.reset_BANG_.call(null,a,newval); | |
return true; | |
} else | |
{return false; | |
} | |
}); | |
cljs.core.deref = (function deref(o){ | |
return cljs.core._deref.call(null,o); | |
}); | |
/** | |
* Sets the validator-fn for a var/ref/agent/atom. validator-fn must be nil or a | |
* side-effect-free fn of one argument, which will be passed the intended | |
* new state on any state change. If the new state is unacceptable, the | |
* validator-fn should return false or throw an exception. If the current state (root | |
* value if var) is not acceptable to the new validator, an exception | |
* will be thrown and the validator will not be changed. | |
*/ | |
cljs.core.set_validator_BANG_ = (function set_validator_BANG_(iref,val){ | |
return iref.validator = val; | |
}); | |
/** | |
* Gets the validator-fn for a var/ref/agent/atom. | |
*/ | |
cljs.core.get_validator = (function get_validator(iref){ | |
return iref.validator; | |
}); | |
/** | |
* Atomically sets the metadata for a namespace/var/ref/agent/atom to be: | |
* | |
* (apply f its-current-meta args) | |
* | |
* f must be free of side-effects | |
* @param {...*} var_args | |
*/ | |
cljs.core.alter_meta_BANG_ = (function() { | |
var alter_meta_BANG___delegate = function (iref,f,args){ | |
return iref.meta = cljs.core.apply.call(null,f,iref.meta,args); | |
}; | |
var alter_meta_BANG_ = function (iref,f,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 2),0); | |
} | |
return alter_meta_BANG___delegate.call(this, iref, f, args); | |
}; | |
alter_meta_BANG_.cljs$lang$maxFixedArity = 2; | |
alter_meta_BANG_.cljs$lang$applyTo = (function (arglist__3280){ | |
var iref = cljs.core.first(arglist__3280); | |
var f = cljs.core.first(cljs.core.next(arglist__3280)); | |
var args = cljs.core.rest(cljs.core.next(arglist__3280)); | |
return alter_meta_BANG___delegate.call(this, iref, f, args); | |
}); | |
return alter_meta_BANG_; | |
})() | |
; | |
/** | |
* Atomically resets the metadata for a namespace/var/ref/agent/atom | |
*/ | |
cljs.core.reset_meta_BANG_ = (function reset_meta_BANG_(iref,m){ | |
return iref.meta = m; | |
}); | |
cljs.core.gensym_counter = null; | |
/** | |
* Returns a new symbol with a unique name. If a prefix string is | |
* supplied, the name is prefix# where # is some unique number. If | |
* prefix is not supplied, the prefix is 'G__'. | |
*/ | |
cljs.core.gensym = (function() { | |
var gensym = null; | |
var gensym__3281 = (function (){ | |
return gensym.call(null,"G__"); | |
}); | |
var gensym__3282 = (function (prefix_string){ | |
if(cljs.core.truth_(cljs.core.nil_QMARK_.call(null,cljs.core.gensym_counter))) | |
{cljs.core.gensym_counter = cljs.core.atom.call(null,0); | |
} else | |
{} | |
return cljs.core.symbol.call(null,cljs.core.str.call(null,prefix_string,cljs.core.swap_BANG_.call(null,cljs.core.gensym_counter,cljs.core.inc))); | |
}); | |
gensym = function(prefix_string){ | |
switch(arguments.length){ | |
case 0 : | |
return gensym__3281.call(this); | |
case 1 : | |
return gensym__3282.call(this,prefix_string); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return gensym; | |
})() | |
; | |
cljs.core.fixture1 = 1; | |
cljs.core.fixture2 = 2; | |
/** | |
* @constructor | |
*/ | |
cljs.core.Delay = (function (f,state){ | |
this.f = f; | |
this.state = state; | |
}) | |
cljs.core.Delay.prototype.cljs$core$IPending$ = true; | |
cljs.core.Delay.prototype.cljs$core$IPending$_realized_QMARK_ = (function (d){ | |
var this__3284 = this; | |
return cljs.core.not.call(null,cljs.core.nil_QMARK_.call(null,cljs.core.deref.call(null,this__3284.state))); | |
}); | |
cljs.core.Delay.prototype.cljs$core$IDeref$ = true; | |
cljs.core.Delay.prototype.cljs$core$IDeref$_deref = (function (_){ | |
var this__3285 = this; | |
if(cljs.core.truth_(cljs.core.deref.call(null,this__3285.state))) | |
{} else | |
{cljs.core.swap_BANG_.call(null,this__3285.state,this__3285.f); | |
} | |
return cljs.core.deref.call(null,this__3285.state); | |
}); | |
/** | |
* Takes a body of expressions and yields a Delay object that will | |
* invoke the body only the first time it is forced (with force or deref/@), and | |
* will cache the result and return it on all subsequent force | |
* calls. | |
* @param {...*} var_args | |
*/ | |
cljs.core.delay = (function() { | |
var delay__delegate = function (body){ | |
return (new cljs.core.Delay((function (){ | |
return cljs.core.apply.call(null,cljs.core.identity,body); | |
}),cljs.core.atom.call(null,null))); | |
}; | |
var delay = function (var_args){ | |
var body = null; | |
if (goog.isDef(var_args)) { | |
body = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return delay__delegate.call(this, body); | |
}; | |
delay.cljs$lang$maxFixedArity = 0; | |
delay.cljs$lang$applyTo = (function (arglist__3286){ | |
var body = cljs.core.seq( arglist__3286 );; | |
return delay__delegate.call(this, body); | |
}); | |
return delay; | |
})() | |
; | |
/** | |
* returns true if x is a Delay created with delay | |
*/ | |
cljs.core.delay_QMARK_ = (function delay_QMARK_(x){ | |
return cljs.core.instance_QMARK_.call(null,cljs.core.Delay,x); | |
}); | |
/** | |
* If x is a Delay, returns the (possibly cached) value of its expression, else returns x | |
*/ | |
cljs.core.force = (function force(x){ | |
if(cljs.core.truth_(cljs.core.delay_QMARK_.call(null,x))) | |
{return cljs.core.deref.call(null,x); | |
} else | |
{return x; | |
} | |
}); | |
/** | |
* Returns true if a value has been produced for a promise, delay, future or lazy sequence. | |
*/ | |
cljs.core.realized_QMARK_ = (function realized_QMARK_(d){ | |
return cljs.core._realized_QMARK_.call(null,d); | |
}); | |
/** | |
* Recursively transforms JavaScript arrays into ClojureScript | |
* vectors, and JavaScript objects into ClojureScript maps. With | |
* option ':keywordize-keys true' will convert object fields from | |
* strings to keywords. | |
* @param {...*} var_args | |
*/ | |
cljs.core.js__GT_clj = (function() { | |
var js__GT_clj__delegate = function (x,options){ | |
var map__3287__3288 = options; | |
var map__3287__3289 = (cljs.core.truth_(cljs.core.seq_QMARK_.call(null,map__3287__3288))?cljs.core.apply.call(null,cljs.core.hash_map,map__3287__3288):map__3287__3288); | |
var keywordize_keys__3290 = cljs.core.get.call(null,map__3287__3289,"ï·'keywordize-keys"); | |
var keyfn__3291 = (cljs.core.truth_(keywordize_keys__3290)?cljs.core.keyword:cljs.core.str); | |
var f__3297 = (function thisfn(x){ | |
if(cljs.core.truth_(cljs.core.seq_QMARK_.call(null,x))) | |
{return cljs.core.doall.call(null,cljs.core.map.call(null,thisfn,x)); | |
} else | |
{if(cljs.core.truth_(cljs.core.coll_QMARK_.call(null,x))) | |
{return cljs.core.into.call(null,cljs.core.empty.call(null,x),cljs.core.map.call(null,thisfn,x)); | |
} else | |
{if(cljs.core.truth_(goog.isArray.call(null,x))) | |
{return cljs.core.vec.call(null,cljs.core.map.call(null,thisfn,x)); | |
} else | |
{if(cljs.core.truth_(goog.isObject.call(null,x))) | |
{return cljs.core.into.call(null,cljs.core.ObjMap.fromObject([],{}),(function (){var iter__159__auto____3296 = (function iter__3292(s__3293){ | |
return (new cljs.core.LazySeq(null,false,(function (){ | |
var s__3293__3294 = s__3293; | |
var G__3298,G__3299;G__3298=G__3299=new Object(); | |
while(G__3298===G__3299){ | |
G__3298=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.seq.call(null,s__3293__3294))) | |
{var k__3295 = cljs.core.first.call(null,s__3293__3294); | |
return cljs.core.cons.call(null,cljs.core.Vector.fromArray([keyfn__3291.call(null,k__3295),thisfn.call(null,(x[k__3295]))]),iter__3292.call(null,cljs.core.rest.call(null,s__3293__3294))); | |
} else | |
{return null; | |
} | |
})(G__3299);} | |
return G__3298; | |
}))); | |
}); | |
return iter__159__auto____3296.call(null,cljs.core.js_keys.call(null,x)); | |
})()); | |
} else | |
{if(cljs.core.truth_("ï·'else")) | |
{return x; | |
} else | |
{return null; | |
} | |
} | |
} | |
} | |
} | |
}); | |
return f__3297.call(null,x); | |
}; | |
var js__GT_clj = function (x,var_args){ | |
var options = null; | |
if (goog.isDef(var_args)) { | |
options = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1),0); | |
} | |
return js__GT_clj__delegate.call(this, x, options); | |
}; | |
js__GT_clj.cljs$lang$maxFixedArity = 1; | |
js__GT_clj.cljs$lang$applyTo = (function (arglist__3300){ | |
var x = cljs.core.first(arglist__3300); | |
var options = cljs.core.rest(arglist__3300); | |
return js__GT_clj__delegate.call(this, x, options); | |
}); | |
return js__GT_clj; | |
})() | |
; | |
/** | |
* Returns a memoized version of a referentially transparent function. The | |
* memoized version of the function keeps a cache of the mapping from arguments | |
* to results and, when calls with the same arguments are repeated often, has | |
* higher performance at the expense of higher memory use. | |
*/ | |
cljs.core.memoize = (function memoize(f){ | |
var mem__3301 = cljs.core.atom.call(null,cljs.core.ObjMap.fromObject([],{})); | |
return (function() { | |
var G__3305__delegate = function (args){ | |
var temp__3723__auto____3302 = cljs.core.get.call(null,cljs.core.deref.call(null,mem__3301),args); | |
if(cljs.core.truth_(temp__3723__auto____3302)) | |
{var v__3303 = temp__3723__auto____3302; | |
return v__3303; | |
} else | |
{var ret__3304 = cljs.core.apply.call(null,f,args); | |
cljs.core.swap_BANG_.call(null,mem__3301,cljs.core.assoc,args,ret__3304); | |
return ret__3304; | |
} | |
}; | |
var G__3305 = function (var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 0),0); | |
} | |
return G__3305__delegate.call(this, args); | |
}; | |
G__3305.cljs$lang$maxFixedArity = 0; | |
G__3305.cljs$lang$applyTo = (function (arglist__3306){ | |
var args = cljs.core.seq( arglist__3306 );; | |
return G__3305__delegate.call(this, args); | |
}); | |
return G__3305; | |
})() | |
; | |
}); | |
/** | |
* trampoline can be used to convert algorithms requiring mutual | |
* recursion without stack consumption. Calls f with supplied args, if | |
* any. If f returns a fn, calls that fn with no arguments, and | |
* continues to repeat, until the return value is not a fn, then | |
* returns that non-fn value. Note that if you want to return a fn as a | |
* final value, you must wrap it in some data structure and unpack it | |
* after trampoline returns. | |
* @param {...*} var_args | |
*/ | |
cljs.core.trampoline = (function() { | |
var trampoline = null; | |
var trampoline__3308 = (function (f){ | |
var G__3311,G__3312;G__3311=G__3312=new Object(); | |
while(G__3311===G__3312){ | |
G__3311=(function(continue_val){ | |
var ret__3307 = f.call(null); | |
if(cljs.core.truth_(cljs.core.fn_QMARK_.call(null,ret__3307))) | |
{{ | |
var G__3313 = ret__3307; | |
f = G__3313; | |
return continue_val; | |
} | |
} else | |
{return ret__3307; | |
} | |
})(G__3312);} | |
return G__3311; | |
}); | |
var trampoline__3309 = (function() { | |
var G__3314__delegate = function (f,args){ | |
return trampoline.call(null,(function (){ | |
return cljs.core.apply.call(null,f,args); | |
})); | |
}; | |
var G__3314 = function (f,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1),0); | |
} | |
return G__3314__delegate.call(this, f, args); | |
}; | |
G__3314.cljs$lang$maxFixedArity = 1; | |
G__3314.cljs$lang$applyTo = (function (arglist__3315){ | |
var f = cljs.core.first(arglist__3315); | |
var args = cljs.core.rest(arglist__3315); | |
return G__3314__delegate.call(this, f, args); | |
}); | |
return G__3314; | |
})() | |
; | |
trampoline = function(f,var_args){ | |
var args = var_args; | |
switch(arguments.length){ | |
case 1 : | |
return trampoline__3308.call(this,f); | |
default: | |
return trampoline__3309.apply(this,arguments); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
trampoline.cljs$lang$maxFixedArity = 1; | |
trampoline.cljs$lang$applyTo = trampoline__3309.cljs$lang$applyTo; | |
return trampoline; | |
})() | |
; | |
/** | |
* Returns a random floating point number between 0 (inclusive) and | |
* n (default 1) (exclusive). | |
*/ | |
cljs.core.rand = (function() { | |
var rand = null; | |
var rand__3316 = (function (){ | |
return rand.call(null,1); | |
}); | |
var rand__3317 = (function (n){ | |
return Math.random() * n; | |
}); | |
rand = function(n){ | |
switch(arguments.length){ | |
case 0 : | |
return rand__3316.call(this); | |
case 1 : | |
return rand__3317.call(this,n); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return rand; | |
})() | |
; | |
/** | |
* Returns a random integer between 0 (inclusive) and n (exclusive). | |
*/ | |
cljs.core.rand_int = (function rand_int(n){ | |
return Math.floor(Math.random() * n); | |
}); | |
/** | |
* Return a random element of the (sequential) collection. Will have | |
* the same performance characteristics as nth for the given | |
* collection. | |
*/ | |
cljs.core.rand_nth = (function rand_nth(coll){ | |
return cljs.core.nth.call(null,coll,cljs.core.rand_int.call(null,cljs.core.count.call(null,coll))); | |
}); | |
/** | |
* Returns a map of the elements of coll keyed by the result of | |
* f on each element. The value at each key will be a vector of the | |
* corresponding elements, in the order they appeared in coll. | |
*/ | |
cljs.core.group_by = (function group_by(f,coll){ | |
return cljs.core.reduce.call(null,(function (ret,x){ | |
var k__3319 = f.call(null,x); | |
return cljs.core.assoc.call(null,ret,k__3319,cljs.core.conj.call(null,cljs.core.get.call(null,ret,k__3319,cljs.core.Vector.fromArray([])),x)); | |
}),cljs.core.ObjMap.fromObject([],{}),coll); | |
}); | |
/** | |
* Creates a hierarchy object for use with derive, isa? etc. | |
*/ | |
cljs.core.make_hierarchy = (function make_hierarchy(){ | |
return cljs.core.ObjMap.fromObject(["ï·'parents","ï·'descendants","ï·'ancestors"],{"ï·'parents":cljs.core.ObjMap.fromObject([],{}),"ï·'descendants":cljs.core.ObjMap.fromObject([],{}),"ï·'ancestors":cljs.core.ObjMap.fromObject([],{})}); | |
}); | |
cljs.core.global_hierarchy = cljs.core.atom.call(null,cljs.core.make_hierarchy.call(null)); | |
/** | |
* Returns true if (= child parent), or child is directly or indirectly derived from | |
* parent, either via a Java type inheritance relationship or a | |
* relationship established via derive. h must be a hierarchy obtained | |
* from make-hierarchy, if not supplied defaults to the global | |
* hierarchy | |
*/ | |
cljs.core.isa_QMARK_ = (function() { | |
var isa_QMARK_ = null; | |
var isa_QMARK___3328 = (function (child,parent){ | |
return isa_QMARK_.call(null,cljs.core.deref.call(null,cljs.core.global_hierarchy),child,parent); | |
}); | |
var isa_QMARK___3329 = (function (h,child,parent){ | |
var or__3576__auto____3320 = cljs.core._EQ_.call(null,child,parent); | |
if(cljs.core.truth_(or__3576__auto____3320)) | |
{return or__3576__auto____3320; | |
} else | |
{var or__3576__auto____3321 = cljs.core.contains_QMARK_.call(null,"ï·'ancestors".call(null,h).call(null,child),parent); | |
if(cljs.core.truth_(or__3576__auto____3321)) | |
{return or__3576__auto____3321; | |
} else | |
{var and__3574__auto____3322 = cljs.core.vector_QMARK_.call(null,parent); | |
if(cljs.core.truth_(and__3574__auto____3322)) | |
{var and__3574__auto____3323 = cljs.core.vector_QMARK_.call(null,child); | |
if(cljs.core.truth_(and__3574__auto____3323)) | |
{var and__3574__auto____3324 = cljs.core._EQ_.call(null,cljs.core.count.call(null,parent),cljs.core.count.call(null,child)); | |
if(cljs.core.truth_(and__3574__auto____3324)) | |
{var ret__3325 = true; | |
var i__3326 = 0; | |
var G__3331,G__3332;G__3331=G__3332=new Object(); | |
while(G__3331===G__3332){ | |
G__3331=(function(continue_val){ | |
if(cljs.core.truth_((function (){var or__3576__auto____3327 = cljs.core.not.call(null,ret__3325); | |
if(cljs.core.truth_(or__3576__auto____3327)) | |
{return or__3576__auto____3327; | |
} else | |
{return cljs.core._EQ_.call(null,i__3326,cljs.core.count.call(null,parent)); | |
} | |
})())) | |
{return ret__3325; | |
} else | |
{{ | |
var G__3333 = isa_QMARK_.call(null,h,child.call(null,i__3326),parent.call(null,i__3326)); | |
var G__3334 = cljs.core.inc.call(null,i__3326); | |
ret__3325 = G__3333; | |
i__3326 = G__3334; | |
return continue_val; | |
} | |
} | |
})(G__3332);} | |
return G__3331; | |
} else | |
{return and__3574__auto____3324; | |
} | |
} else | |
{return and__3574__auto____3323; | |
} | |
} else | |
{return and__3574__auto____3322; | |
} | |
} | |
} | |
}); | |
isa_QMARK_ = function(h,child,parent){ | |
switch(arguments.length){ | |
case 2 : | |
return isa_QMARK___3328.call(this,h,child); | |
case 3 : | |
return isa_QMARK___3329.call(this,h,child,parent); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return isa_QMARK_; | |
})() | |
; | |
/** | |
* Returns the immediate parents of tag, either via a Java type | |
* inheritance relationship or a relationship established via derive. h | |
* must be a hierarchy obtained from make-hierarchy, if not supplied | |
* defaults to the global hierarchy | |
*/ | |
cljs.core.parents = (function() { | |
var parents = null; | |
var parents__3335 = (function (tag){ | |
return parents.call(null,cljs.core.deref.call(null,cljs.core.global_hierarchy),tag); | |
}); | |
var parents__3336 = (function (h,tag){ | |
return cljs.core.not_empty.call(null,cljs.core.get.call(null,"ï·'parents".call(null,h),tag)); | |
}); | |
parents = function(h,tag){ | |
switch(arguments.length){ | |
case 1 : | |
return parents__3335.call(this,h); | |
case 2 : | |
return parents__3336.call(this,h,tag); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return parents; | |
})() | |
; | |
/** | |
* Returns the immediate and indirect parents of tag, either via a Java type | |
* inheritance relationship or a relationship established via derive. h | |
* must be a hierarchy obtained from make-hierarchy, if not supplied | |
* defaults to the global hierarchy | |
*/ | |
cljs.core.ancestors = (function() { | |
var ancestors = null; | |
var ancestors__3338 = (function (tag){ | |
return ancestors.call(null,cljs.core.deref.call(null,cljs.core.global_hierarchy),tag); | |
}); | |
var ancestors__3339 = (function (h,tag){ | |
return cljs.core.not_empty.call(null,cljs.core.get.call(null,"ï·'ancestors".call(null,h),tag)); | |
}); | |
ancestors = function(h,tag){ | |
switch(arguments.length){ | |
case 1 : | |
return ancestors__3338.call(this,h); | |
case 2 : | |
return ancestors__3339.call(this,h,tag); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return ancestors; | |
})() | |
; | |
/** | |
* Returns the immediate and indirect children of tag, through a | |
* relationship established via derive. h must be a hierarchy obtained | |
* from make-hierarchy, if not supplied defaults to the global | |
* hierarchy. Note: does not work on Java type inheritance | |
* relationships. | |
*/ | |
cljs.core.descendants = (function() { | |
var descendants = null; | |
var descendants__3341 = (function (tag){ | |
return descendants.call(null,cljs.core.deref.call(null,cljs.core.global_hierarchy),tag); | |
}); | |
var descendants__3342 = (function (h,tag){ | |
return cljs.core.not_empty.call(null,cljs.core.get.call(null,"ï·'descendants".call(null,h),tag)); | |
}); | |
descendants = function(h,tag){ | |
switch(arguments.length){ | |
case 1 : | |
return descendants__3341.call(this,h); | |
case 2 : | |
return descendants__3342.call(this,h,tag); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return descendants; | |
})() | |
; | |
/** | |
* Establishes a parent/child relationship between parent and | |
* tag. Parent must be a namespace-qualified symbol or keyword and | |
* child can be either a namespace-qualified symbol or keyword or a | |
* class. h must be a hierarchy obtained from make-hierarchy, if not | |
* supplied defaults to, and modifies, the global hierarchy. | |
*/ | |
cljs.core.derive = (function() { | |
var derive = null; | |
var derive__3352 = (function (tag,parent){ | |
if(cljs.core.truth_(cljs.core.namespace.call(null,parent))) | |
{} else | |
{throw cljs.core.str.call(null,"Assert failed: ",cljs.core.pr_str.call(null,cljs.core.list("ï·‘'namespace","ï·‘'parent"))); | |
} | |
cljs.core.swap_BANG_.call(null,cljs.core.global_hierarchy,derive,tag,parent); | |
return null; | |
}); | |
var derive__3353 = (function (h,tag,parent){ | |
if(cljs.core.truth_(cljs.core.not_EQ_.call(null,tag,parent))) | |
{} else | |
{throw cljs.core.str.call(null,"Assert failed: ",cljs.core.pr_str.call(null,cljs.core.list("ï·‘'not=","ï·‘'tag","ï·‘'parent"))); | |
} | |
var tp__3347 = "ï·'parents".call(null,h); | |
var td__3348 = "ï·'descendants".call(null,h); | |
var ta__3349 = "ï·'ancestors".call(null,h); | |
var tf__3350 = (function (m,source,sources,target,targets){ | |
return cljs.core.reduce.call(null,(function (ret,k){ | |
return cljs.core.assoc.call(null,ret,k,cljs.core.reduce.call(null,cljs.core.conj,cljs.core.get.call(null,targets,k,cljs.core.set([])),cljs.core.cons.call(null,target,targets.call(null,target)))); | |
}),m,cljs.core.cons.call(null,source,sources.call(null,source))); | |
}); | |
var or__3576__auto____3351 = (cljs.core.truth_(cljs.core.contains_QMARK_.call(null,tp__3347.call(null,tag),parent))?null:(function (){if(cljs.core.truth_(cljs.core.contains_QMARK_.call(null,ta__3349.call(null,tag),parent))) | |
{throw cljs.core.str.call(null,tag,"already has",parent,"as ancestor"); | |
} else | |
{} | |
if(cljs.core.truth_(cljs.core.contains_QMARK_.call(null,ta__3349.call(null,parent),tag))) | |
{throw cljs.core.str.call(null,"Cyclic derivation:",parent,"has",tag,"as ancestor"); | |
} else | |
{} | |
return cljs.core.ObjMap.fromObject(["ï·'parents","ï·'ancestors","ï·'descendants"],{"ï·'parents":cljs.core.assoc.call(null,"ï·'parents".call(null,h),tag,cljs.core.conj.call(null,cljs.core.get.call(null,tp__3347,tag,cljs.core.set([])),parent)),"ï·'ancestors":tf__3350.call(null,"ï·'ancestors".call(null,h),tag,td__3348,parent,ta__3349),"ï·'descendants":tf__3350.call(null,"ï·'descendants".call(null,h),parent,ta__3349,tag,td__3348)}); | |
})()); | |
if(cljs.core.truth_(or__3576__auto____3351)) | |
{return or__3576__auto____3351; | |
} else | |
{return h; | |
} | |
}); | |
derive = function(h,tag,parent){ | |
switch(arguments.length){ | |
case 2 : | |
return derive__3352.call(this,h,tag); | |
case 3 : | |
return derive__3353.call(this,h,tag,parent); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return derive; | |
})() | |
; | |
/** | |
* Removes a parent/child relationship between parent and | |
* tag. h must be a hierarchy obtained from make-hierarchy, if not | |
* supplied defaults to, and modifies, the global hierarchy. | |
*/ | |
cljs.core.underive = (function() { | |
var underive = null; | |
var underive__3359 = (function (tag,parent){ | |
cljs.core.swap_BANG_.call(null,cljs.core.global_hierarchy,underive,tag,parent); | |
return null; | |
}); | |
var underive__3360 = (function (h,tag,parent){ | |
var parentMap__3355 = "ï·'parents".call(null,h); | |
var childsParents__3356 = (cljs.core.truth_(parentMap__3355.call(null,tag))?cljs.core.disj.call(null,parentMap__3355.call(null,tag),parent):cljs.core.set([])); | |
var newParents__3357 = (cljs.core.truth_(cljs.core.not_empty.call(null,childsParents__3356))?cljs.core.assoc.call(null,parentMap__3355,tag,childsParents__3356):cljs.core.dissoc.call(null,parentMap__3355,tag)); | |
var deriv_seq__3358 = cljs.core.flatten.call(null,cljs.core.map.call(null,(function (p1__3344_SHARP_){ | |
return cljs.core.cons.call(null,cljs.core.first.call(null,p1__3344_SHARP_),cljs.core.interpose.call(null,cljs.core.first.call(null,p1__3344_SHARP_),cljs.core.second.call(null,p1__3344_SHARP_))); | |
}),cljs.core.seq.call(null,newParents__3357))); | |
if(cljs.core.truth_(cljs.core.contains_QMARK_.call(null,parentMap__3355.call(null,tag),parent))) | |
{return cljs.core.reduce.call(null,(function (p1__3345_SHARP_,p2__3346_SHARP_){ | |
return cljs.core.apply.call(null,cljs.core.derive,p1__3345_SHARP_,p2__3346_SHARP_); | |
}),cljs.core.make_hierarchy.call(null),cljs.core.partition.call(null,2,deriv_seq__3358)); | |
} else | |
{return h; | |
} | |
}); | |
underive = function(h,tag,parent){ | |
switch(arguments.length){ | |
case 2 : | |
return underive__3359.call(this,h,tag); | |
case 3 : | |
return underive__3360.call(this,h,tag,parent); | |
} | |
throw('Invalid arity: ' + arguments.length); | |
}; | |
return underive; | |
})() | |
; | |
cljs.core.reset_cache = (function reset_cache(method_cache,method_table,cached_hierarchy,hierarchy){ | |
cljs.core.swap_BANG_.call(null,method_cache,(function (_){ | |
return cljs.core.deref.call(null,method_table); | |
})); | |
return cljs.core.swap_BANG_.call(null,cached_hierarchy,(function (_){ | |
return cljs.core.deref.call(null,hierarchy); | |
})); | |
}); | |
cljs.core.prefers_STAR_ = (function prefers_STAR_(x,y,prefer_table){ | |
var xprefs__3362 = cljs.core.deref.call(null,prefer_table).call(null,x); | |
var or__3576__auto____3364 = (cljs.core.truth_((function (){var and__3574__auto____3363 = xprefs__3362; | |
if(cljs.core.truth_(and__3574__auto____3363)) | |
{return xprefs__3362.call(null,y); | |
} else | |
{return and__3574__auto____3363; | |
} | |
})())?true:null); | |
if(cljs.core.truth_(or__3576__auto____3364)) | |
{return or__3576__auto____3364; | |
} else | |
{var or__3576__auto____3366 = (function (){var ps__3365 = cljs.core.parents.call(null,y); | |
var G__3369,G__3370;G__3369=G__3370=new Object(); | |
while(G__3369===G__3370){ | |
G__3369=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.pos_QMARK_.call(null,cljs.core.count.call(null,ps__3365)))) | |
{if(cljs.core.truth_(prefers_STAR_.call(null,x,cljs.core.first.call(null,ps__3365),prefer_table))) | |
{} else | |
{} | |
{ | |
var G__3371 = cljs.core.rest.call(null,ps__3365); | |
ps__3365 = G__3371; | |
return continue_val; | |
} | |
} else | |
{return null; | |
} | |
})(G__3370);} | |
return G__3369; | |
})(); | |
if(cljs.core.truth_(or__3576__auto____3366)) | |
{return or__3576__auto____3366; | |
} else | |
{var or__3576__auto____3368 = (function (){var ps__3367 = cljs.core.parents.call(null,x); | |
var G__3372,G__3373;G__3372=G__3373=new Object(); | |
while(G__3372===G__3373){ | |
G__3372=(function(continue_val){ | |
if(cljs.core.truth_(cljs.core.pos_QMARK_.call(null,cljs.core.count.call(null,ps__3367)))) | |
{if(cljs.core.truth_(prefers_STAR_.call(null,cljs.core.first.call(null,ps__3367),y,prefer_table))) | |
{} else | |
{} | |
{ | |
var G__3374 = cljs.core.rest.call(null,ps__3367); | |
ps__3367 = G__3374; | |
return continue_val; | |
} | |
} else | |
{return null; | |
} | |
})(G__3373);} | |
return G__3372; | |
})(); | |
if(cljs.core.truth_(or__3576__auto____3368)) | |
{return or__3576__auto____3368; | |
} else | |
{return false; | |
} | |
} | |
} | |
}); | |
cljs.core.dominates = (function dominates(x,y,prefer_table){ | |
var or__3576__auto____3375 = cljs.core.prefers_STAR_.call(null,x,y,prefer_table); | |
if(cljs.core.truth_(or__3576__auto____3375)) | |
{return or__3576__auto____3375; | |
} else | |
{return cljs.core.isa_QMARK_.call(null,x,y); | |
} | |
}); | |
cljs.core.find_and_cache_best_method = (function find_and_cache_best_method(name,dispatch_val,hierarchy,method_table,prefer_table,method_cache,cached_hierarchy){ | |
var best_entry__3384 = cljs.core.reduce.call(null,(function (be,p__3376){ | |
var vec__3377__3378 = p__3376; | |
var k__3379 = cljs.core.nth.call(null,vec__3377__3378,0,null); | |
var ___3380 = cljs.core.nth.call(null,vec__3377__3378,1,null); | |
var e__3381 = vec__3377__3378; | |
if(cljs.core.truth_(cljs.core.isa_QMARK_.call(null,dispatch_val,k__3379))) | |
{var be2__3383 = (cljs.core.truth_((function (){var or__3576__auto____3382 = cljs.core.nil_QMARK_.call(null,be); | |
if(cljs.core.truth_(or__3576__auto____3382)) | |
{return or__3576__auto____3382; | |
} else | |
{return cljs.core.dominates.call(null,k__3379,cljs.core.first.call(null,be),prefer_table); | |
} | |
})())?e__3381:be); | |
if(cljs.core.truth_(cljs.core.dominates.call(null,cljs.core.first.call(null,be2__3383),k__3379,prefer_table))) | |
{} else | |
{throw cljs.core.str.call(null,"Multiple methods in multimethod '",name,"' match dispatch value: ",dispatch_val," -> ",k__3379," and ",cljs.core.first.call(null,be2__3383),", and neither is preferred"); | |
} | |
return be2__3383; | |
} else | |
{return null; | |
} | |
}),null,cljs.core.deref.call(null,method_table)); | |
if(cljs.core.truth_(best_entry__3384)) | |
{if(cljs.core.truth_(cljs.core._EQ_.call(null,cljs.core.deref.call(null,cached_hierarchy),cljs.core.deref.call(null,hierarchy)))) | |
{cljs.core.swap_BANG_.call(null,method_cache,cljs.core.assoc,dispatch_val,cljs.core.second.call(null,best_entry__3384)); | |
return cljs.core.second.call(null,best_entry__3384); | |
} else | |
{cljs.core.reset_cache.call(null,method_cache,method_table,cached_hierarchy,hierarchy); | |
return find_and_cache_best_method.call(null,name,dispatch_val,hierarchy,method_table,prefer_table,method_cache,cached_hierarchy); | |
} | |
} else | |
{return null; | |
} | |
}); | |
cljs.core.IMultiFn = {}; | |
cljs.core._reset = (function _reset(mf){ | |
if(cljs.core.truth_((function (){var and__3574__auto____3385 = mf; | |
if(cljs.core.truth_(and__3574__auto____3385)) | |
{return mf.cljs$core$IMultiFn$_reset; | |
} else | |
{return and__3574__auto____3385; | |
} | |
})())) | |
{return mf.cljs$core$IMultiFn$_reset(mf); | |
} else | |
{return (function (){var or__3576__auto____3386 = (_reset[goog.typeOf.call(null,mf)]); | |
if(cljs.core.truth_(or__3576__auto____3386)) | |
{return or__3576__auto____3386; | |
} else | |
{return (_reset["_"]); | |
} | |
})().call(null,mf); | |
} | |
}); | |
cljs.core._add_method = (function _add_method(mf,dispatch_val,method){ | |
if(cljs.core.truth_((function (){var and__3574__auto____3387 = mf; | |
if(cljs.core.truth_(and__3574__auto____3387)) | |
{return mf.cljs$core$IMultiFn$_add_method; | |
} else | |
{return and__3574__auto____3387; | |
} | |
})())) | |
{return mf.cljs$core$IMultiFn$_add_method(mf,dispatch_val,method); | |
} else | |
{return (function (){var or__3576__auto____3388 = (_add_method[goog.typeOf.call(null,mf)]); | |
if(cljs.core.truth_(or__3576__auto____3388)) | |
{return or__3576__auto____3388; | |
} else | |
{return (_add_method["_"]); | |
} | |
})().call(null,mf,dispatch_val,method); | |
} | |
}); | |
cljs.core._remove_method = (function _remove_method(mf,dispatch_val){ | |
if(cljs.core.truth_((function (){var and__3574__auto____3389 = mf; | |
if(cljs.core.truth_(and__3574__auto____3389)) | |
{return mf.cljs$core$IMultiFn$_remove_method; | |
} else | |
{return and__3574__auto____3389; | |
} | |
})())) | |
{return mf.cljs$core$IMultiFn$_remove_method(mf,dispatch_val); | |
} else | |
{return (function (){var or__3576__auto____3390 = (_remove_method[goog.typeOf.call(null,mf)]); | |
if(cljs.core.truth_(or__3576__auto____3390)) | |
{return or__3576__auto____3390; | |
} else | |
{return (_remove_method["_"]); | |
} | |
})().call(null,mf,dispatch_val); | |
} | |
}); | |
cljs.core._prefer_method = (function _prefer_method(mf,dispatch_val,dispatch_val_y){ | |
if(cljs.core.truth_((function (){var and__3574__auto____3391 = mf; | |
if(cljs.core.truth_(and__3574__auto____3391)) | |
{return mf.cljs$core$IMultiFn$_prefer_method; | |
} else | |
{return and__3574__auto____3391; | |
} | |
})())) | |
{return mf.cljs$core$IMultiFn$_prefer_method(mf,dispatch_val,dispatch_val_y); | |
} else | |
{return (function (){var or__3576__auto____3392 = (_prefer_method[goog.typeOf.call(null,mf)]); | |
if(cljs.core.truth_(or__3576__auto____3392)) | |
{return or__3576__auto____3392; | |
} else | |
{return (_prefer_method["_"]); | |
} | |
})().call(null,mf,dispatch_val,dispatch_val_y); | |
} | |
}); | |
cljs.core._get_method = (function _get_method(mf,dispatch_val){ | |
if(cljs.core.truth_((function (){var and__3574__auto____3393 = mf; | |
if(cljs.core.truth_(and__3574__auto____3393)) | |
{return mf.cljs$core$IMultiFn$_get_method; | |
} else | |
{return and__3574__auto____3393; | |
} | |
})())) | |
{return mf.cljs$core$IMultiFn$_get_method(mf,dispatch_val); | |
} else | |
{return (function (){var or__3576__auto____3394 = (_get_method[goog.typeOf.call(null,mf)]); | |
if(cljs.core.truth_(or__3576__auto____3394)) | |
{return or__3576__auto____3394; | |
} else | |
{return (_get_method["_"]); | |
} | |
})().call(null,mf,dispatch_val); | |
} | |
}); | |
cljs.core._methods = (function _methods(mf){ | |
if(cljs.core.truth_((function (){var and__3574__auto____3395 = mf; | |
if(cljs.core.truth_(and__3574__auto____3395)) | |
{return mf.cljs$core$IMultiFn$_methods; | |
} else | |
{return and__3574__auto____3395; | |
} | |
})())) | |
{return mf.cljs$core$IMultiFn$_methods(mf); | |
} else | |
{return (function (){var or__3576__auto____3396 = (_methods[goog.typeOf.call(null,mf)]); | |
if(cljs.core.truth_(or__3576__auto____3396)) | |
{return or__3576__auto____3396; | |
} else | |
{return (_methods["_"]); | |
} | |
})().call(null,mf); | |
} | |
}); | |
cljs.core._prefers = (function _prefers(mf){ | |
if(cljs.core.truth_((function (){var and__3574__auto____3397 = mf; | |
if(cljs.core.truth_(and__3574__auto____3397)) | |
{return mf.cljs$core$IMultiFn$_prefers; | |
} else | |
{return and__3574__auto____3397; | |
} | |
})())) | |
{return mf.cljs$core$IMultiFn$_prefers(mf); | |
} else | |
{return (function (){var or__3576__auto____3398 = (_prefers[goog.typeOf.call(null,mf)]); | |
if(cljs.core.truth_(or__3576__auto____3398)) | |
{return or__3576__auto____3398; | |
} else | |
{return (_prefers["_"]); | |
} | |
})().call(null,mf); | |
} | |
}); | |
cljs.core._invoke = (function _invoke(mf,args){ | |
if(cljs.core.truth_((function (){var and__3574__auto____3399 = mf; | |
if(cljs.core.truth_(and__3574__auto____3399)) | |
{return mf.cljs$core$IMultiFn$_invoke; | |
} else | |
{return and__3574__auto____3399; | |
} | |
})())) | |
{return mf.cljs$core$IMultiFn$_invoke(mf,args); | |
} else | |
{return (function (){var or__3576__auto____3400 = (_invoke[goog.typeOf.call(null,mf)]); | |
if(cljs.core.truth_(or__3576__auto____3400)) | |
{return or__3576__auto____3400; | |
} else | |
{return (_invoke["_"]); | |
} | |
})().call(null,mf,args); | |
} | |
}); | |
cljs.core.do_invoke = (function do_invoke(mf,dispatch_fn,args){ | |
var dispatch_val__3401 = cljs.core.apply.call(null,dispatch_fn,args); | |
var target_fn__3402 = cljs.core._get_method.call(null,mf,dispatch_val__3401); | |
if(cljs.core.truth_(target_fn__3402)) | |
{} else | |
{throw cljs.core.str.call(null,"No method in multimethod '",cljs.core.name,"' for dispatch value: ",dispatch_val__3401); | |
} | |
return cljs.core.apply.call(null,target_fn__3402,args); | |
}); | |
/** | |
* @constructor | |
*/ | |
cljs.core.MultiFn = (function (name,dispatch_fn,default_dispatch_val,hierarchy,method_table,prefer_table,method_cache,cached_hierarchy){ | |
this.name = name; | |
this.dispatch_fn = dispatch_fn; | |
this.default_dispatch_val = default_dispatch_val; | |
this.hierarchy = hierarchy; | |
this.method_table = method_table; | |
this.prefer_table = prefer_table; | |
this.method_cache = method_cache; | |
this.cached_hierarchy = cached_hierarchy; | |
}) | |
cljs.core.MultiFn.prototype.cljs$core$IMultiFn$ = true; | |
cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_reset = (function (mf){ | |
var this__3403 = this; | |
cljs.core.swap_BANG_.call(null,this__3403.method_table,(function (mf){ | |
return cljs.core.ObjMap.fromObject([],{}); | |
})); | |
cljs.core.swap_BANG_.call(null,this__3403.method_cache,(function (mf){ | |
return cljs.core.ObjMap.fromObject([],{}); | |
})); | |
cljs.core.swap_BANG_.call(null,this__3403.prefer_table,(function (mf){ | |
return cljs.core.ObjMap.fromObject([],{}); | |
})); | |
cljs.core.swap_BANG_.call(null,this__3403.cached_hierarchy,(function (mf){ | |
return null; | |
})); | |
return mf; | |
}); | |
cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_add_method = (function (mf,dispatch_val,method){ | |
var this__3404 = this; | |
cljs.core.swap_BANG_.call(null,this__3404.method_table,cljs.core.assoc,dispatch_val,method); | |
cljs.core.reset_cache.call(null,this__3404.method_cache,this__3404.method_table,this__3404.cached_hierarchy,this__3404.hierarchy); | |
return mf; | |
}); | |
cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_remove_method = (function (mf,dispatch_val){ | |
var this__3405 = this; | |
cljs.core.swap_BANG_.call(null,this__3405.method_table,cljs.core.dissoc,dispatch_val); | |
cljs.core.reset_cache.call(null,this__3405.method_cache,this__3405.method_table,this__3405.cached_hierarchy,this__3405.hierarchy); | |
return mf; | |
}); | |
cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_get_method = (function (mf,dispatch_val){ | |
var this__3406 = this; | |
if(cljs.core.truth_(cljs.core._EQ_.call(null,cljs.core.deref.call(null,this__3406.cached_hierarchy),cljs.core.deref.call(null,this__3406.hierarchy)))) | |
{} else | |
{cljs.core.reset_cache.call(null,this__3406.method_cache,this__3406.method_table,this__3406.cached_hierarchy,this__3406.hierarchy); | |
} | |
var temp__3723__auto____3407 = cljs.core.deref.call(null,this__3406.method_cache).call(null,dispatch_val); | |
if(cljs.core.truth_(temp__3723__auto____3407)) | |
{var target_fn__3408 = temp__3723__auto____3407; | |
return target_fn__3408; | |
} else | |
{var temp__3723__auto____3409 = cljs.core.find_and_cache_best_method.call(null,this__3406.name,dispatch_val,this__3406.hierarchy,this__3406.method_table,this__3406.prefer_table,this__3406.method_cache,this__3406.cached_hierarchy); | |
if(cljs.core.truth_(temp__3723__auto____3409)) | |
{var target_fn__3410 = temp__3723__auto____3409; | |
return target_fn__3410; | |
} else | |
{return cljs.core.deref.call(null,this__3406.method_table).call(null,this__3406.default_dispatch_val); | |
} | |
} | |
}); | |
cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_prefer_method = (function (mf,dispatch_val_x,dispatch_val_y){ | |
var this__3411 = this; | |
if(cljs.core.truth_(cljs.core.prefers_STAR_.call(null,dispatch_val_x,dispatch_val_y,this__3411.prefer_table))) | |
{throw cljs.core.str.call(null,"Preference conflict in multimethod '",this__3411.name,"': ",dispatch_val_y," is already preferred to ",dispatch_val_x); | |
} else | |
{} | |
cljs.core.swap_BANG_.call(null,this__3411.prefer_table,(function (old){ | |
return cljs.core.assoc.call(null,old,dispatch_val_x,cljs.core.conj.call(null,cljs.core.get.call(null,old,dispatch_val_x,cljs.core.set([])),dispatch_val_y)); | |
})); | |
return cljs.core.reset_cache.call(null,this__3411.method_cache,this__3411.method_table,this__3411.cached_hierarchy,this__3411.hierarchy); | |
}); | |
cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_methods = (function (mf){ | |
var this__3412 = this; | |
return cljs.core.deref.call(null,this__3412.method_table); | |
}); | |
cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_prefers = (function (mf){ | |
var this__3413 = this; | |
return cljs.core.deref.call(null,this__3413.prefer_table); | |
}); | |
cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_invoke = (function (mf,args){ | |
var this__3414 = this; | |
return cljs.core.do_invoke.call(null,mf,this__3414.dispatch_fn,args); | |
}); | |
cljs.core.MultiFn.prototype.call = (function() { | |
var G__3415__delegate = function (_,args){ | |
return cljs.core._invoke.call(null,this,args); | |
}; | |
var G__3415 = function (_,var_args){ | |
var args = null; | |
if (goog.isDef(var_args)) { | |
args = cljs.core.array_seq(Array.prototype.slice.call(arguments, 1),0); | |
} | |
return G__3415__delegate.call(this, _, args); | |
}; | |
G__3415.cljs$lang$maxFixedArity = 1; | |
G__3415.cljs$lang$applyTo = (function (arglist__3416){ | |
var _ = cljs.core.first(arglist__3416); | |
var args = cljs.core.rest(arglist__3416); | |
return G__3415__delegate.call(this, _, args); | |
}); | |
return G__3415; | |
})() | |
; | |
/** | |
* Removes all of the methods of multimethod. | |
*/ | |
cljs.core.remove_all_methods = (function remove_all_methods(multifn){ | |
return cljs.core._reset.call(null,multifn); | |
}); | |
/** | |
* Removes the method of multimethod associated with dispatch-value. | |
*/ | |
cljs.core.remove_method = (function remove_method(multifn,dispatch_val){ | |
return cljs.core._remove_method.call(null,multifn,dispatch_val); | |
}); | |
/** | |
* Causes the multimethod to prefer matches of dispatch-val-x over dispatch-val-y | |
* when there is a conflict | |
*/ | |
cljs.core.prefer_method = (function prefer_method(multifn,dispatch_val_x,dispatch_val_y){ | |
return cljs.core._prefer_method.call(null,multifn,dispatch_val_x,dispatch_val_y); | |
}); | |
/** | |
* Given a multimethod, returns a map of dispatch values -> dispatch fns | |
*/ | |
cljs.core.methods$ = (function methods$(multifn){ | |
return cljs.core._methods.call(null,multifn); | |
}); | |
/** | |
* Given a multimethod and a dispatch value, returns the dispatch fn | |
* that would apply to that value, or nil if none apply and no default | |
*/ | |
cljs.core.get_method = (function get_method(multifn,dispatch_val){ | |
return cljs.core._get_method.call(null,multifn,dispatch_val); | |
}); | |
/** | |
* Given a multimethod, returns a map of preferred value -> set of other values | |
*/ | |
cljs.core.prefers = (function prefers(multifn){ | |
return cljs.core._prefers.call(null,multifn); | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment