goog.provide('cljs.spec.alpha'); goog.scope(function(){ cljs.spec.alpha.goog$module$goog$object = goog.module.get('goog.object'); }); cljs.spec.alpha.MAX_INT = (9007199254740991); /** * A soft limit on how many times a branching spec (or/alt/* /opt-keys/multi-spec) * can be recursed through during generation. After this a * non-recursive branch will be chosen. */ cljs.spec.alpha._STAR_recursion_limit_STAR_ = (4); /** * The number of times an anonymous fn specified by fspec will be (generatively) tested during conform */ cljs.spec.alpha._STAR_fspec_iterations_STAR_ = (21); /** * The number of items validated in a collection spec'ed with 'every' */ cljs.spec.alpha._STAR_coll_check_limit_STAR_ = (101); /** * The number of errors reported by explain in a collection spec'ed with 'every' */ cljs.spec.alpha._STAR_coll_error_limit_STAR_ = (20); /** * @interface */ cljs.spec.alpha.Spec = function(){}; var cljs$spec$alpha$Spec$conform_STAR_$dyn_20313 = (function (spec,x){ var x__5393__auto__ = (((spec == null))?null:spec); var m__5394__auto__ = (cljs.spec.alpha.conform_STAR_[goog.typeOf(x__5393__auto__)]); if((!((m__5394__auto__ == null)))){ return (m__5394__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5394__auto__.cljs$core$IFn$_invoke$arity$2(spec,x) : m__5394__auto__.call(null,spec,x)); } else { var m__5392__auto__ = (cljs.spec.alpha.conform_STAR_["_"]); if((!((m__5392__auto__ == null)))){ return (m__5392__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5392__auto__.cljs$core$IFn$_invoke$arity$2(spec,x) : m__5392__auto__.call(null,spec,x)); } else { throw cljs.core.missing_protocol("Spec.conform*",spec); } } }); cljs.spec.alpha.conform_STAR_ = (function cljs$spec$alpha$conform_STAR_(spec,x){ if((((!((spec == null)))) && ((!((spec.cljs$spec$alpha$Spec$conform_STAR_$arity$2 == null)))))){ return spec.cljs$spec$alpha$Spec$conform_STAR_$arity$2(spec,x); } else { return cljs$spec$alpha$Spec$conform_STAR_$dyn_20313(spec,x); } }); var cljs$spec$alpha$Spec$unform_STAR_$dyn_20314 = (function (spec,y){ var x__5393__auto__ = (((spec == null))?null:spec); var m__5394__auto__ = (cljs.spec.alpha.unform_STAR_[goog.typeOf(x__5393__auto__)]); if((!((m__5394__auto__ == null)))){ return (m__5394__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5394__auto__.cljs$core$IFn$_invoke$arity$2(spec,y) : m__5394__auto__.call(null,spec,y)); } else { var m__5392__auto__ = (cljs.spec.alpha.unform_STAR_["_"]); if((!((m__5392__auto__ == null)))){ return (m__5392__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5392__auto__.cljs$core$IFn$_invoke$arity$2(spec,y) : m__5392__auto__.call(null,spec,y)); } else { throw cljs.core.missing_protocol("Spec.unform*",spec); } } }); cljs.spec.alpha.unform_STAR_ = (function cljs$spec$alpha$unform_STAR_(spec,y){ if((((!((spec == null)))) && ((!((spec.cljs$spec$alpha$Spec$unform_STAR_$arity$2 == null)))))){ return spec.cljs$spec$alpha$Spec$unform_STAR_$arity$2(spec,y); } else { return cljs$spec$alpha$Spec$unform_STAR_$dyn_20314(spec,y); } }); var cljs$spec$alpha$Spec$explain_STAR_$dyn_20328 = (function (spec,path,via,in$,x){ var x__5393__auto__ = (((spec == null))?null:spec); var m__5394__auto__ = (cljs.spec.alpha.explain_STAR_[goog.typeOf(x__5393__auto__)]); if((!((m__5394__auto__ == null)))){ return (m__5394__auto__.cljs$core$IFn$_invoke$arity$5 ? m__5394__auto__.cljs$core$IFn$_invoke$arity$5(spec,path,via,in$,x) : m__5394__auto__.call(null,spec,path,via,in$,x)); } else { var m__5392__auto__ = (cljs.spec.alpha.explain_STAR_["_"]); if((!((m__5392__auto__ == null)))){ return (m__5392__auto__.cljs$core$IFn$_invoke$arity$5 ? m__5392__auto__.cljs$core$IFn$_invoke$arity$5(spec,path,via,in$,x) : m__5392__auto__.call(null,spec,path,via,in$,x)); } else { throw cljs.core.missing_protocol("Spec.explain*",spec); } } }); cljs.spec.alpha.explain_STAR_ = (function cljs$spec$alpha$explain_STAR_(spec,path,via,in$,x){ if((((!((spec == null)))) && ((!((spec.cljs$spec$alpha$Spec$explain_STAR_$arity$5 == null)))))){ return spec.cljs$spec$alpha$Spec$explain_STAR_$arity$5(spec,path,via,in$,x); } else { return cljs$spec$alpha$Spec$explain_STAR_$dyn_20328(spec,path,via,in$,x); } }); var cljs$spec$alpha$Spec$gen_STAR_$dyn_20329 = (function (spec,overrides,path,rmap){ var x__5393__auto__ = (((spec == null))?null:spec); var m__5394__auto__ = (cljs.spec.alpha.gen_STAR_[goog.typeOf(x__5393__auto__)]); if((!((m__5394__auto__ == null)))){ return (m__5394__auto__.cljs$core$IFn$_invoke$arity$4 ? m__5394__auto__.cljs$core$IFn$_invoke$arity$4(spec,overrides,path,rmap) : m__5394__auto__.call(null,spec,overrides,path,rmap)); } else { var m__5392__auto__ = (cljs.spec.alpha.gen_STAR_["_"]); if((!((m__5392__auto__ == null)))){ return (m__5392__auto__.cljs$core$IFn$_invoke$arity$4 ? m__5392__auto__.cljs$core$IFn$_invoke$arity$4(spec,overrides,path,rmap) : m__5392__auto__.call(null,spec,overrides,path,rmap)); } else { throw cljs.core.missing_protocol("Spec.gen*",spec); } } }); cljs.spec.alpha.gen_STAR_ = (function cljs$spec$alpha$gen_STAR_(spec,overrides,path,rmap){ if((((!((spec == null)))) && ((!((spec.cljs$spec$alpha$Spec$gen_STAR_$arity$4 == null)))))){ return spec.cljs$spec$alpha$Spec$gen_STAR_$arity$4(spec,overrides,path,rmap); } else { return cljs$spec$alpha$Spec$gen_STAR_$dyn_20329(spec,overrides,path,rmap); } }); var cljs$spec$alpha$Spec$with_gen_STAR_$dyn_20330 = (function (spec,gfn){ var x__5393__auto__ = (((spec == null))?null:spec); var m__5394__auto__ = (cljs.spec.alpha.with_gen_STAR_[goog.typeOf(x__5393__auto__)]); if((!((m__5394__auto__ == null)))){ return (m__5394__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5394__auto__.cljs$core$IFn$_invoke$arity$2(spec,gfn) : m__5394__auto__.call(null,spec,gfn)); } else { var m__5392__auto__ = (cljs.spec.alpha.with_gen_STAR_["_"]); if((!((m__5392__auto__ == null)))){ return (m__5392__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5392__auto__.cljs$core$IFn$_invoke$arity$2(spec,gfn) : m__5392__auto__.call(null,spec,gfn)); } else { throw cljs.core.missing_protocol("Spec.with-gen*",spec); } } }); cljs.spec.alpha.with_gen_STAR_ = (function cljs$spec$alpha$with_gen_STAR_(spec,gfn){ if((((!((spec == null)))) && ((!((spec.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 == null)))))){ return spec.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2(spec,gfn); } else { return cljs$spec$alpha$Spec$with_gen_STAR_$dyn_20330(spec,gfn); } }); var cljs$spec$alpha$Spec$describe_STAR_$dyn_20331 = (function (spec){ var x__5393__auto__ = (((spec == null))?null:spec); var m__5394__auto__ = (cljs.spec.alpha.describe_STAR_[goog.typeOf(x__5393__auto__)]); if((!((m__5394__auto__ == null)))){ return (m__5394__auto__.cljs$core$IFn$_invoke$arity$1 ? m__5394__auto__.cljs$core$IFn$_invoke$arity$1(spec) : m__5394__auto__.call(null,spec)); } else { var m__5392__auto__ = (cljs.spec.alpha.describe_STAR_["_"]); if((!((m__5392__auto__ == null)))){ return (m__5392__auto__.cljs$core$IFn$_invoke$arity$1 ? m__5392__auto__.cljs$core$IFn$_invoke$arity$1(spec) : m__5392__auto__.call(null,spec)); } else { throw cljs.core.missing_protocol("Spec.describe*",spec); } } }); cljs.spec.alpha.describe_STAR_ = (function cljs$spec$alpha$describe_STAR_(spec){ if((((!((spec == null)))) && ((!((spec.cljs$spec$alpha$Spec$describe_STAR_$arity$1 == null)))))){ return spec.cljs$spec$alpha$Spec$describe_STAR_$arity$1(spec); } else { return cljs$spec$alpha$Spec$describe_STAR_$dyn_20331(spec); } }); if((typeof cljs !== 'undefined') && (typeof cljs.spec !== 'undefined') && (typeof cljs.spec.alpha !== 'undefined') && (typeof cljs.spec.alpha.registry_ref !== 'undefined')){ } else { cljs.spec.alpha.registry_ref = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY); } cljs.spec.alpha.deep_resolve = (function cljs$spec$alpha$deep_resolve(reg,k){ var spec = k; while(true){ if(cljs.core.ident_QMARK_(spec)){ var G__20332 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(reg,spec); spec = G__20332; continue; } else { return spec; } break; } }); /** * returns the spec/regex at end of alias chain starting with k, nil if not found, k if k not ident */ cljs.spec.alpha.reg_resolve = (function cljs$spec$alpha$reg_resolve(k){ if(cljs.core.ident_QMARK_(k)){ var reg = cljs.core.deref(cljs.spec.alpha.registry_ref); var spec = cljs.core.get.cljs$core$IFn$_invoke$arity$2(reg,k); if((!(cljs.core.ident_QMARK_(spec)))){ return spec; } else { return cljs.spec.alpha.deep_resolve(reg,spec); } } else { return k; } }); /** * returns the spec/regex at end of alias chain starting with k, throws if not found, k if k not ident */ cljs.spec.alpha.reg_resolve_BANG_ = (function cljs$spec$alpha$reg_resolve_BANG_(k){ if(cljs.core.ident_QMARK_(k)){ var or__5045__auto__ = cljs.spec.alpha.reg_resolve(k); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { throw (new Error(["Unable to resolve spec: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(k)].join(''))); } } else { return k; } }); /** * returns x if x is a spec object, else logical false */ cljs.spec.alpha.spec_QMARK_ = (function cljs$spec$alpha$spec_QMARK_(x){ if((((!((x == null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL === x.cljs$spec$alpha$Spec$))))?true:false):false)){ return x; } else { return null; } }); /** * returns x if x is a (cljs.spec.alpha) regex op, else logical false */ cljs.spec.alpha.regex_QMARK_ = (function cljs$spec$alpha$regex_QMARK_(x){ var and__5043__auto__ = new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252).cljs$core$IFn$_invoke$arity$1(x); if(cljs.core.truth_(and__5043__auto__)){ return x; } else { return and__5043__auto__; } }); cljs.spec.alpha.with_name = (function cljs$spec$alpha$with_name(spec,name){ if(cljs.core.ident_QMARK_(spec)){ return spec; } else { if(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(spec))){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(spec,new cljs.core.Keyword("cljs.spec.alpha","name","cljs.spec.alpha/name",205233570),name); } else { if((((!((spec == null))))?(((((spec.cljs$lang$protocol_mask$partition0$ & (131072))) || ((cljs.core.PROTOCOL_SENTINEL === spec.cljs$core$IMeta$))))?true:false):false)){ return cljs.core.with_meta(spec,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.meta(spec),new cljs.core.Keyword("cljs.spec.alpha","name","cljs.spec.alpha/name",205233570),name)); } else { return null; } } } }); cljs.spec.alpha.spec_name = (function cljs$spec$alpha$spec_name(spec){ if(cljs.core.ident_QMARK_(spec)){ return spec; } else { if(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(spec))){ return new cljs.core.Keyword("cljs.spec.alpha","name","cljs.spec.alpha/name",205233570).cljs$core$IFn$_invoke$arity$1(spec); } else { if((((!((spec == null))))?(((((spec.cljs$lang$protocol_mask$partition0$ & (131072))) || ((cljs.core.PROTOCOL_SENTINEL === spec.cljs$core$IMeta$))))?true:false):false)){ return new cljs.core.Keyword("cljs.spec.alpha","name","cljs.spec.alpha/name",205233570).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(spec)); } else { return null; } } } }); /** * spec-or-k must be a spec, regex or resolvable kw/sym, else returns nil. */ cljs.spec.alpha.maybe_spec = (function cljs$spec$alpha$maybe_spec(spec_or_k){ var s = (function (){var or__5045__auto__ = (function (){var and__5043__auto__ = cljs.core.ident_QMARK_(spec_or_k); if(and__5043__auto__){ return cljs.spec.alpha.reg_resolve(spec_or_k); } else { return and__5043__auto__; } })(); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { var or__5045__auto____$1 = cljs.spec.alpha.spec_QMARK_(spec_or_k); if(cljs.core.truth_(or__5045__auto____$1)){ return or__5045__auto____$1; } else { var or__5045__auto____$2 = cljs.spec.alpha.regex_QMARK_(spec_or_k); if(cljs.core.truth_(or__5045__auto____$2)){ return or__5045__auto____$2; } else { return null; } } } })(); if(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(s))){ return cljs.spec.alpha.with_name(cljs.spec.alpha.regex_spec_impl(s,null),cljs.spec.alpha.spec_name(s)); } else { return s; } }); /** * spec-or-k must be a spec, regex or kw/sym, else returns nil. Throws if unresolvable kw/sym */ cljs.spec.alpha.the_spec = (function cljs$spec$alpha$the_spec(spec_or_k){ var or__5045__auto__ = cljs.spec.alpha.maybe_spec(spec_or_k); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { if(cljs.core.ident_QMARK_(spec_or_k)){ throw (new Error(["Unable to resolve spec: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(spec_or_k)].join(''))); } else { return null; } } }); cljs.spec.alpha.fn_sym = (function cljs$spec$alpha$fn_sym(f_n){ if(clojure.string.blank_QMARK_(f_n)){ return null; } else { var xs = cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.demunge,clojure.string.split.cljs$core$IFn$_invoke$arity$2(f_n,"$")); if(((((2) <= cljs.core.count(xs))) && (cljs.core.every_QMARK_((function (p1__19191_SHARP_){ return (!(clojure.string.blank_QMARK_(p1__19191_SHARP_))); }),xs)))){ var vec__19192 = cljs.core.juxt.cljs$core$IFn$_invoke$arity$2(cljs.core.butlast,cljs.core.last)(xs); var xs__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19192,(0),null); var y = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19192,(1),null); return cljs.core.symbol.cljs$core$IFn$_invoke$arity$1([clojure.string.join.cljs$core$IFn$_invoke$arity$2(".",xs__$1),"/",cljs.core.str.cljs$core$IFn$_invoke$arity$1(y)].join('')); } else { return null; } } }); /** * @interface */ cljs.spec.alpha.Specize = function(){}; var cljs$spec$alpha$Specize$specize_STAR_$dyn_20342 = (function() { var G__20343 = null; var G__20343__1 = (function (_){ var x__5393__auto__ = (((_ == null))?null:_); var m__5394__auto__ = (cljs.spec.alpha.specize_STAR_[goog.typeOf(x__5393__auto__)]); if((!((m__5394__auto__ == null)))){ return (m__5394__auto__.cljs$core$IFn$_invoke$arity$1 ? m__5394__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__5394__auto__.call(null,_)); } else { var m__5392__auto__ = (cljs.spec.alpha.specize_STAR_["_"]); if((!((m__5392__auto__ == null)))){ return (m__5392__auto__.cljs$core$IFn$_invoke$arity$1 ? m__5392__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__5392__auto__.call(null,_)); } else { throw cljs.core.missing_protocol("Specize.specize*",_); } } }); var G__20343__2 = (function (_,form){ var x__5393__auto__ = (((_ == null))?null:_); var m__5394__auto__ = (cljs.spec.alpha.specize_STAR_[goog.typeOf(x__5393__auto__)]); if((!((m__5394__auto__ == null)))){ return (m__5394__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5394__auto__.cljs$core$IFn$_invoke$arity$2(_,form) : m__5394__auto__.call(null,_,form)); } else { var m__5392__auto__ = (cljs.spec.alpha.specize_STAR_["_"]); if((!((m__5392__auto__ == null)))){ return (m__5392__auto__.cljs$core$IFn$_invoke$arity$2 ? m__5392__auto__.cljs$core$IFn$_invoke$arity$2(_,form) : m__5392__auto__.call(null,_,form)); } else { throw cljs.core.missing_protocol("Specize.specize*",_); } } }); G__20343 = function(_,form){ switch(arguments.length){ case 1: return G__20343__1.call(this,_); case 2: return G__20343__2.call(this,_,form); } throw(new Error('Invalid arity: ' + arguments.length)); }; G__20343.cljs$core$IFn$_invoke$arity$1 = G__20343__1; G__20343.cljs$core$IFn$_invoke$arity$2 = G__20343__2; return G__20343; })() ; cljs.spec.alpha.specize_STAR_ = (function cljs$spec$alpha$specize_STAR_(var_args){ var G__19219 = arguments.length; switch (G__19219) { case 1: return cljs.spec.alpha.specize_STAR_.cljs$core$IFn$_invoke$arity$1((arguments[(0)])); break; case 2: return cljs.spec.alpha.specize_STAR_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.specize_STAR_.cljs$core$IFn$_invoke$arity$1 = (function (_){ if((((!((_ == null)))) && ((!((_.cljs$spec$alpha$Specize$specize_STAR_$arity$1 == null)))))){ return _.cljs$spec$alpha$Specize$specize_STAR_$arity$1(_); } else { return cljs$spec$alpha$Specize$specize_STAR_$dyn_20342(_); } })); (cljs.spec.alpha.specize_STAR_.cljs$core$IFn$_invoke$arity$2 = (function (_,form){ if((((!((_ == null)))) && ((!((_.cljs$spec$alpha$Specize$specize_STAR_$arity$2 == null)))))){ return _.cljs$spec$alpha$Specize$specize_STAR_$arity$2(_,form); } else { return cljs$spec$alpha$Specize$specize_STAR_$dyn_20342(_,form); } })); (cljs.spec.alpha.specize_STAR_.cljs$lang$maxFixedArity = 2); (cljs.core.Keyword.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.core.Keyword.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (k){ var k__$1 = this; return cljs.spec.alpha.specize_STAR_(cljs.spec.alpha.reg_resolve_BANG_(k__$1)); })); (cljs.core.Keyword.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (k,_){ var k__$1 = this; return cljs.spec.alpha.specize_STAR_(cljs.spec.alpha.reg_resolve_BANG_(k__$1)); })); (cljs.core.Symbol.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.core.Symbol.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var s__$1 = this; return cljs.spec.alpha.specize_STAR_(cljs.spec.alpha.reg_resolve_BANG_(s__$1)); })); (cljs.core.Symbol.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var s__$1 = this; return cljs.spec.alpha.specize_STAR_(cljs.spec.alpha.reg_resolve_BANG_(s__$1)); })); (cljs.core.PersistentHashSet.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.core.PersistentHashSet.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var s__$1 = this; return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(s__$1,s__$1,null,null); })); (cljs.core.PersistentHashSet.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,form){ var s__$1 = this; return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(form,s__$1,null,null); })); (cljs.core.PersistentTreeSet.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.core.PersistentTreeSet.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var s__$1 = this; return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(s__$1,s__$1,null,null); })); (cljs.core.PersistentTreeSet.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,form){ var s__$1 = this; return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(form,s__$1,null,null); })); (cljs.spec.alpha.Specize["_"] = true); (cljs.spec.alpha.specize_STAR_["_"] = (function() { var G__20356 = null; var G__20356__1 = (function (o){ var temp__5802__auto__ = (function (){var and__5043__auto__ = cljs.core.fn_QMARK_(o); if(and__5043__auto__){ return cljs.spec.alpha.fn_sym(o.name); } else { return and__5043__auto__; } })(); if(cljs.core.truth_(temp__5802__auto__)){ var f_n = temp__5802__auto__; return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(f_n,o,null,null); } else { return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(new cljs.core.Keyword("cljs.spec.alpha","unknown","cljs.spec.alpha/unknown",651034818),o,null,null); } }); var G__20356__2 = (function (o,form){ return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(form,o,null,null); }); G__20356 = function(o,form){ switch(arguments.length){ case 1: return G__20356__1.call(this,o); case 2: return G__20356__2.call(this,o,form); } throw(new Error('Invalid arity: ' + arguments.length)); }; G__20356.cljs$core$IFn$_invoke$arity$1 = G__20356__1; G__20356.cljs$core$IFn$_invoke$arity$2 = G__20356__2; return G__20356; })() ); cljs.spec.alpha.specize = (function cljs$spec$alpha$specize(var_args){ var G__19254 = arguments.length; switch (G__19254) { case 1: return cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1((arguments[(0)])); break; case 2: return cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1 = (function (s){ var or__5045__auto__ = cljs.spec.alpha.spec_QMARK_(s); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return cljs.spec.alpha.specize_STAR_(s); } })); (cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$2 = (function (s,form){ var or__5045__auto__ = cljs.spec.alpha.spec_QMARK_(s); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return cljs.spec.alpha.specize_STAR_(s,form); } })); (cljs.spec.alpha.specize.cljs$lang$maxFixedArity = 2); /** * tests the validity of a conform return value */ cljs.spec.alpha.invalid_QMARK_ = (function cljs$spec$alpha$invalid_QMARK_(ret){ return cljs.core.keyword_identical_QMARK_(new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119),ret); }); /** * Given a spec and a value, returns :cljs.spec.alpha/invalid if value does * not match spec, else the (possibly destructured) value. */ cljs.spec.alpha.conform = (function cljs$spec$alpha$conform(spec,x){ return cljs.spec.alpha.conform_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec),x); }); /** * Given a spec and a value created by or compliant with a call to * 'conform' with the same spec, returns a value with all conform * destructuring undone. */ cljs.spec.alpha.unform = (function cljs$spec$alpha$unform(spec,x){ return cljs.spec.alpha.unform_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec),x); }); /** * returns the spec as data */ cljs.spec.alpha.form = (function cljs$spec$alpha$form(spec){ return cljs.spec.alpha.describe_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec)); }); cljs.spec.alpha.abbrev = (function cljs$spec$alpha$abbrev(form){ if(cljs.core.seq_QMARK_(form)){ return clojure.walk.postwalk((function (form__$1){ if(cljs.core.truth_((function (){var and__5043__auto__ = (form__$1 instanceof cljs.core.Symbol); if(and__5043__auto__){ return cljs.core.namespace(form__$1); } else { return and__5043__auto__; } })())){ return cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(form__$1)); } else { if(((cljs.core.seq_QMARK_(form__$1)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,"fn","fn",465265323,null),cljs.core.first(form__$1))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"%","%",-950237169,null)], null),cljs.core.second(form__$1))))))){ return cljs.core.last(form__$1); } else { return form__$1; } } }),form); } else { if(cljs.core.truth_((function (){var and__5043__auto__ = (form instanceof cljs.core.Symbol); if(and__5043__auto__){ return cljs.core.namespace(form); } else { return and__5043__auto__; } })())){ return cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(form)); } else { return form; } } }); /** * returns an abbreviated description of the spec as data */ cljs.spec.alpha.describe = (function cljs$spec$alpha$describe(spec){ return cljs.spec.alpha.abbrev(cljs.spec.alpha.form(spec)); }); /** * Takes a spec and a no-arg, generator-returning fn and returns a version of that spec that uses that generator */ cljs.spec.alpha.with_gen = (function cljs$spec$alpha$with_gen(spec,gen_fn){ var spec__$1 = cljs.spec.alpha.reg_resolve(spec); if(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(spec__$1))){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(spec__$1,new cljs.core.Keyword("cljs.spec.alpha","gfn","cljs.spec.alpha/gfn",-593120375),gen_fn); } else { return cljs.spec.alpha.with_gen_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec__$1),gen_fn); } }); cljs.spec.alpha.explain_data_STAR_ = (function cljs$spec$alpha$explain_data_STAR_(spec,path,via,in$,x){ var temp__5804__auto__ = cljs.spec.alpha.explain_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec),path,via,in$,x); if(cljs.core.truth_(temp__5804__auto__)){ var probs = temp__5804__auto__; if(cljs.core.empty_QMARK_(probs)){ return null; } else { return new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword("cljs.spec.alpha","problems","cljs.spec.alpha/problems",447400814),probs,new cljs.core.Keyword("cljs.spec.alpha","spec","cljs.spec.alpha/spec",1947137578),spec,new cljs.core.Keyword("cljs.spec.alpha","value","cljs.spec.alpha/value",1974786274),x], null); } } else { return null; } }); /** * Given a spec and a value x which ought to conform, returns nil if x * conforms, else a map with at least the key ::problems whose value is * a collection of problem-maps, where problem-map has at least :path :pred and :val * keys describing the predicate and the value that failed at that * path. */ cljs.spec.alpha.explain_data = (function cljs$spec$alpha$explain_data(spec,x){ return cljs.spec.alpha.explain_data_STAR_(spec,cljs.core.PersistentVector.EMPTY,(function (){var temp__5802__auto__ = cljs.spec.alpha.spec_name(spec); if(cljs.core.truth_(temp__5802__auto__)){ var name = temp__5802__auto__; return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [name], null); } else { return cljs.core.PersistentVector.EMPTY; } })(),cljs.core.PersistentVector.EMPTY,x); }); /** * Default printer for explain-data. nil indicates a successful validation. */ cljs.spec.alpha.explain_printer = (function cljs$spec$alpha$explain_printer(ed){ if(cljs.core.truth_(ed)){ var problems = cljs.core.sort_by.cljs$core$IFn$_invoke$arity$2((function (p1__19281_SHARP_){ return (- cljs.core.count(new cljs.core.Keyword(null,"path","path",-188191168).cljs$core$IFn$_invoke$arity$1(p1__19281_SHARP_))); }),cljs.core.sort_by.cljs$core$IFn$_invoke$arity$2((function (p1__19280_SHARP_){ return (- cljs.core.count(new cljs.core.Keyword(null,"in","in",-1531184865).cljs$core$IFn$_invoke$arity$1(p1__19280_SHARP_))); }),new cljs.core.Keyword("cljs.spec.alpha","problems","cljs.spec.alpha/problems",447400814).cljs$core$IFn$_invoke$arity$1(ed))); return cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var sb__5690__auto__ = (new goog.string.StringBuffer()); var _STAR_print_newline_STAR__orig_val__19282_20367 = cljs.core._STAR_print_newline_STAR_; var _STAR_print_fn_STAR__orig_val__19283_20368 = cljs.core._STAR_print_fn_STAR_; var _STAR_print_newline_STAR__temp_val__19284_20369 = true; var _STAR_print_fn_STAR__temp_val__19285_20370 = (function (x__5691__auto__){ return sb__5690__auto__.append(x__5691__auto__); }); (cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__temp_val__19284_20369); (cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__temp_val__19285_20370); try{var seq__19286_20371 = cljs.core.seq(problems); var chunk__19287_20372 = null; var count__19288_20373 = (0); var i__19289_20374 = (0); while(true){ if((i__19289_20374 < count__19288_20373)){ var map__19342_20379 = chunk__19287_20372.cljs$core$IIndexed$_nth$arity$2(null,i__19289_20374); var map__19342_20380__$1 = cljs.core.__destructure_map(map__19342_20379); var prob_20381 = map__19342_20380__$1; var path_20382 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19342_20380__$1,new cljs.core.Keyword(null,"path","path",-188191168)); var pred_20383 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19342_20380__$1,new cljs.core.Keyword(null,"pred","pred",1927423397)); var val_20384 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19342_20380__$1,new cljs.core.Keyword(null,"val","val",128701612)); var reason_20385 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19342_20380__$1,new cljs.core.Keyword(null,"reason","reason",-2070751759)); var via_20386 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19342_20380__$1,new cljs.core.Keyword(null,"via","via",-1904457336)); var in_20387 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19342_20380__$1,new cljs.core.Keyword(null,"in","in",-1531184865)); cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([val_20384], 0)); cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" - failed: "], 0)); if(cljs.core.truth_(reason_20385)){ cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([reason_20385], 0)); } else { cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.alpha.abbrev(pred_20383)], 0)); } if(cljs.core.empty_QMARK_(in_20387)){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[" in: ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([in_20387], 0))].join('')], 0)); } if(cljs.core.empty_QMARK_(path_20382)){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[" at: ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([path_20382], 0))].join('')], 0)); } if(cljs.core.empty_QMARK_(via_20386)){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[" spec: ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.last(via_20386)], 0))].join('')], 0)); } var seq__19343_20393 = cljs.core.seq(prob_20381); var chunk__19344_20394 = null; var count__19345_20395 = (0); var i__19346_20396 = (0); while(true){ if((i__19346_20396 < count__19345_20395)){ var vec__19355_20397 = chunk__19344_20394.cljs$core$IIndexed$_nth$arity$2(null,i__19346_20396); var k_20398 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19355_20397,(0),null); var v_20399 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19355_20397,(1),null); if(cljs.core.truth_((function (){var fexpr__19358 = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),null,new cljs.core.Keyword(null,"pred","pred",1927423397),null,new cljs.core.Keyword(null,"via","via",-1904457336),null,new cljs.core.Keyword(null,"val","val",128701612),null,new cljs.core.Keyword(null,"reason","reason",-2070751759),null,new cljs.core.Keyword(null,"in","in",-1531184865),null], null), null); return (fexpr__19358.cljs$core$IFn$_invoke$arity$1 ? fexpr__19358.cljs$core$IFn$_invoke$arity$1(k_20398) : fexpr__19358.call(null,k_20398)); })())){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["\n\t",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k_20398], 0))," "], 0)); cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v_20399], 0)); } var G__20400 = seq__19343_20393; var G__20401 = chunk__19344_20394; var G__20402 = count__19345_20395; var G__20403 = (i__19346_20396 + (1)); seq__19343_20393 = G__20400; chunk__19344_20394 = G__20401; count__19345_20395 = G__20402; i__19346_20396 = G__20403; continue; } else { var temp__5804__auto___20404 = cljs.core.seq(seq__19343_20393); if(temp__5804__auto___20404){ var seq__19343_20405__$1 = temp__5804__auto___20404; if(cljs.core.chunked_seq_QMARK_(seq__19343_20405__$1)){ var c__5568__auto___20406 = cljs.core.chunk_first(seq__19343_20405__$1); var G__20407 = cljs.core.chunk_rest(seq__19343_20405__$1); var G__20408 = c__5568__auto___20406; var G__20409 = cljs.core.count(c__5568__auto___20406); var G__20410 = (0); seq__19343_20393 = G__20407; chunk__19344_20394 = G__20408; count__19345_20395 = G__20409; i__19346_20396 = G__20410; continue; } else { var vec__19359_20411 = cljs.core.first(seq__19343_20405__$1); var k_20412 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19359_20411,(0),null); var v_20413 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19359_20411,(1),null); if(cljs.core.truth_((function (){var fexpr__19362 = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),null,new cljs.core.Keyword(null,"pred","pred",1927423397),null,new cljs.core.Keyword(null,"via","via",-1904457336),null,new cljs.core.Keyword(null,"val","val",128701612),null,new cljs.core.Keyword(null,"reason","reason",-2070751759),null,new cljs.core.Keyword(null,"in","in",-1531184865),null], null), null); return (fexpr__19362.cljs$core$IFn$_invoke$arity$1 ? fexpr__19362.cljs$core$IFn$_invoke$arity$1(k_20412) : fexpr__19362.call(null,k_20412)); })())){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["\n\t",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k_20412], 0))," "], 0)); cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v_20413], 0)); } var G__20414 = cljs.core.next(seq__19343_20405__$1); var G__20415 = null; var G__20416 = (0); var G__20417 = (0); seq__19343_20393 = G__20414; chunk__19344_20394 = G__20415; count__19345_20395 = G__20416; i__19346_20396 = G__20417; continue; } } else { } } break; } cljs.core.newline.cljs$core$IFn$_invoke$arity$0(); var G__20418 = seq__19286_20371; var G__20419 = chunk__19287_20372; var G__20420 = count__19288_20373; var G__20421 = (i__19289_20374 + (1)); seq__19286_20371 = G__20418; chunk__19287_20372 = G__20419; count__19288_20373 = G__20420; i__19289_20374 = G__20421; continue; } else { var temp__5804__auto___20422 = cljs.core.seq(seq__19286_20371); if(temp__5804__auto___20422){ var seq__19286_20423__$1 = temp__5804__auto___20422; if(cljs.core.chunked_seq_QMARK_(seq__19286_20423__$1)){ var c__5568__auto___20424 = cljs.core.chunk_first(seq__19286_20423__$1); var G__20425 = cljs.core.chunk_rest(seq__19286_20423__$1); var G__20426 = c__5568__auto___20424; var G__20427 = cljs.core.count(c__5568__auto___20424); var G__20428 = (0); seq__19286_20371 = G__20425; chunk__19287_20372 = G__20426; count__19288_20373 = G__20427; i__19289_20374 = G__20428; continue; } else { var map__19363_20429 = cljs.core.first(seq__19286_20423__$1); var map__19363_20430__$1 = cljs.core.__destructure_map(map__19363_20429); var prob_20431 = map__19363_20430__$1; var path_20432 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19363_20430__$1,new cljs.core.Keyword(null,"path","path",-188191168)); var pred_20433 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19363_20430__$1,new cljs.core.Keyword(null,"pred","pred",1927423397)); var val_20434 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19363_20430__$1,new cljs.core.Keyword(null,"val","val",128701612)); var reason_20435 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19363_20430__$1,new cljs.core.Keyword(null,"reason","reason",-2070751759)); var via_20436 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19363_20430__$1,new cljs.core.Keyword(null,"via","via",-1904457336)); var in_20437 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19363_20430__$1,new cljs.core.Keyword(null,"in","in",-1531184865)); cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([val_20434], 0)); cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" - failed: "], 0)); if(cljs.core.truth_(reason_20435)){ cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([reason_20435], 0)); } else { cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.alpha.abbrev(pred_20433)], 0)); } if(cljs.core.empty_QMARK_(in_20437)){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[" in: ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([in_20437], 0))].join('')], 0)); } if(cljs.core.empty_QMARK_(path_20432)){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[" at: ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([path_20432], 0))].join('')], 0)); } if(cljs.core.empty_QMARK_(via_20436)){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[" spec: ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.last(via_20436)], 0))].join('')], 0)); } var seq__19368_20438 = cljs.core.seq(prob_20431); var chunk__19369_20439 = null; var count__19370_20440 = (0); var i__19371_20441 = (0); while(true){ if((i__19371_20441 < count__19370_20440)){ var vec__19380_20442 = chunk__19369_20439.cljs$core$IIndexed$_nth$arity$2(null,i__19371_20441); var k_20443 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19380_20442,(0),null); var v_20444 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19380_20442,(1),null); if(cljs.core.truth_((function (){var fexpr__19383 = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),null,new cljs.core.Keyword(null,"pred","pred",1927423397),null,new cljs.core.Keyword(null,"via","via",-1904457336),null,new cljs.core.Keyword(null,"val","val",128701612),null,new cljs.core.Keyword(null,"reason","reason",-2070751759),null,new cljs.core.Keyword(null,"in","in",-1531184865),null], null), null); return (fexpr__19383.cljs$core$IFn$_invoke$arity$1 ? fexpr__19383.cljs$core$IFn$_invoke$arity$1(k_20443) : fexpr__19383.call(null,k_20443)); })())){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["\n\t",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k_20443], 0))," "], 0)); cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v_20444], 0)); } var G__20445 = seq__19368_20438; var G__20446 = chunk__19369_20439; var G__20447 = count__19370_20440; var G__20448 = (i__19371_20441 + (1)); seq__19368_20438 = G__20445; chunk__19369_20439 = G__20446; count__19370_20440 = G__20447; i__19371_20441 = G__20448; continue; } else { var temp__5804__auto___20449__$1 = cljs.core.seq(seq__19368_20438); if(temp__5804__auto___20449__$1){ var seq__19368_20450__$1 = temp__5804__auto___20449__$1; if(cljs.core.chunked_seq_QMARK_(seq__19368_20450__$1)){ var c__5568__auto___20451 = cljs.core.chunk_first(seq__19368_20450__$1); var G__20452 = cljs.core.chunk_rest(seq__19368_20450__$1); var G__20453 = c__5568__auto___20451; var G__20454 = cljs.core.count(c__5568__auto___20451); var G__20455 = (0); seq__19368_20438 = G__20452; chunk__19369_20439 = G__20453; count__19370_20440 = G__20454; i__19371_20441 = G__20455; continue; } else { var vec__19384_20456 = cljs.core.first(seq__19368_20450__$1); var k_20457 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19384_20456,(0),null); var v_20458 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19384_20456,(1),null); if(cljs.core.truth_((function (){var fexpr__19387 = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),null,new cljs.core.Keyword(null,"pred","pred",1927423397),null,new cljs.core.Keyword(null,"via","via",-1904457336),null,new cljs.core.Keyword(null,"val","val",128701612),null,new cljs.core.Keyword(null,"reason","reason",-2070751759),null,new cljs.core.Keyword(null,"in","in",-1531184865),null], null), null); return (fexpr__19387.cljs$core$IFn$_invoke$arity$1 ? fexpr__19387.cljs$core$IFn$_invoke$arity$1(k_20457) : fexpr__19387.call(null,k_20457)); })())){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["\n\t",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k_20457], 0))," "], 0)); cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v_20458], 0)); } var G__20459 = cljs.core.next(seq__19368_20450__$1); var G__20460 = null; var G__20461 = (0); var G__20462 = (0); seq__19368_20438 = G__20459; chunk__19369_20439 = G__20460; count__19370_20440 = G__20461; i__19371_20441 = G__20462; continue; } } else { } } break; } cljs.core.newline.cljs$core$IFn$_invoke$arity$0(); var G__20463 = cljs.core.next(seq__19286_20423__$1); var G__20464 = null; var G__20465 = (0); var G__20466 = (0); seq__19286_20371 = G__20463; chunk__19287_20372 = G__20464; count__19288_20373 = G__20465; i__19289_20374 = G__20466; continue; } } else { } } break; } }finally {(cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__orig_val__19283_20368); (cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__orig_val__19282_20367); } return cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__5690__auto__); })()], 0)); } else { return cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["Success!"], 0)); } }); cljs.spec.alpha._STAR_explain_out_STAR_ = cljs.spec.alpha.explain_printer; /** * Prints explanation data (per 'explain-data') to *out* using the printer in *explain-out*, * by default explain-printer. */ cljs.spec.alpha.explain_out = (function cljs$spec$alpha$explain_out(ed){ return cljs.spec.alpha._STAR_explain_out_STAR_.call(null,ed); }); /** * Given a spec and a value that fails to conform, prints an explanation to *out*. */ cljs.spec.alpha.explain = (function cljs$spec$alpha$explain(spec,x){ return cljs.spec.alpha.explain_out(cljs.spec.alpha.explain_data(spec,x)); }); /** * Given a spec and a value that fails to conform, returns an explanation as a string. */ cljs.spec.alpha.explain_str = (function cljs$spec$alpha$explain_str(spec,x){ var sb__5690__auto__ = (new goog.string.StringBuffer()); var _STAR_print_newline_STAR__orig_val__19394_20467 = cljs.core._STAR_print_newline_STAR_; var _STAR_print_fn_STAR__orig_val__19395_20468 = cljs.core._STAR_print_fn_STAR_; var _STAR_print_newline_STAR__temp_val__19396_20469 = true; var _STAR_print_fn_STAR__temp_val__19397_20470 = (function (x__5691__auto__){ return sb__5690__auto__.append(x__5691__auto__); }); (cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__temp_val__19396_20469); (cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__temp_val__19397_20470); try{cljs.spec.alpha.explain(spec,x); }finally {(cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__orig_val__19395_20468); (cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__orig_val__19394_20467); } return cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__5690__auto__); }); cljs.spec.alpha.gensub = (function cljs$spec$alpha$gensub(spec,overrides,path,rmap,form){ var spec__$1 = cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec); var temp__5802__auto__ = (function (){var or__5045__auto__ = (function (){var temp__5804__auto__ = (function (){var or__5045__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(overrides,(function (){var or__5045__auto__ = cljs.spec.alpha.spec_name(spec__$1); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return spec__$1; } })()); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return cljs.core.get.cljs$core$IFn$_invoke$arity$2(overrides,path); } })(); if(cljs.core.truth_(temp__5804__auto__)){ var gfn = temp__5804__auto__; return (gfn.cljs$core$IFn$_invoke$arity$0 ? gfn.cljs$core$IFn$_invoke$arity$0() : gfn.call(null)); } else { return null; } })(); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return cljs.spec.alpha.gen_STAR_(spec__$1,overrides,path,rmap); } })(); if(cljs.core.truth_(temp__5802__auto__)){ var g = temp__5802__auto__; return cljs.spec.gen.alpha.such_that.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__19398_SHARP_){ return cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2(spec__$1,p1__19398_SHARP_); }),g,(100)], 0)); } else { throw (new Error(["Unable to construct gen at: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(path)," for: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.spec.alpha.abbrev(form))].join(''))); } }); /** * Given a spec, returns the generator for it, or throws if none can * be constructed. Optionally an overrides map can be provided which * should map spec names or paths (vectors of keywords) to no-arg * generator-creating fns. These will be used instead of the generators at those * names/paths. Note that parent generator (in the spec or overrides * map) will supersede those of any subtrees. A generator for a regex * op must always return a sequential collection (i.e. a generator for * s/? should return either an empty sequence/vector or a * sequence/vector with one item in it) */ cljs.spec.alpha.gen = (function cljs$spec$alpha$gen(var_args){ var G__19400 = arguments.length; switch (G__19400) { case 1: return cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$1((arguments[(0)])); break; case 2: return cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$1 = (function (spec){ return cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2(spec,null); })); (cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2 = (function (spec,overrides){ return cljs.spec.alpha.gensub(spec,overrides,cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword("cljs.spec.alpha","recursion-limit","cljs.spec.alpha/recursion-limit",601284994),cljs.spec.alpha._STAR_recursion_limit_STAR_], null),spec); })); (cljs.spec.alpha.gen.cljs$lang$maxFixedArity = 2); /** * Do not call this directly, use 'def' */ cljs.spec.alpha.def_impl = (function cljs$spec$alpha$def_impl(k,form,spec){ if(cljs.core.truth_((function (){var and__5043__auto__ = cljs.core.ident_QMARK_(k); if(and__5043__auto__){ return cljs.core.namespace(k); } else { return and__5043__auto__; } })())){ } else { throw (new Error(["Assert failed: ","k must be namespaced keyword or resolveable symbol","\n","(c/and (ident? k) (namespace k))"].join(''))); } if((spec == null)){ cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.registry_ref,cljs.core.dissoc,k); } else { var spec_20477__$1 = (cljs.core.truth_((function (){var or__5045__auto__ = cljs.spec.alpha.spec_QMARK_(spec); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { var or__5045__auto____$1 = cljs.spec.alpha.regex_QMARK_(spec); if(cljs.core.truth_(or__5045__auto____$1)){ return or__5045__auto____$1; } else { return cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.spec.alpha.registry_ref),spec); } } })())?spec:cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(form,spec,null,null)); cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.spec.alpha.registry_ref,cljs.core.assoc,k,cljs.spec.alpha.with_name(spec_20477__$1,k)); } return k; }); /** * returns the registry map, prefer 'get-spec' to lookup a spec by name */ cljs.spec.alpha.registry = (function cljs$spec$alpha$registry(){ return cljs.core.deref(cljs.spec.alpha.registry_ref); }); /** * Returns a symbol from a symbol or var */ cljs.spec.alpha.__GT_sym = (function cljs$spec$alpha$__GT_sym(x){ if(cljs.core.var_QMARK_(x)){ return x.sym; } else { return x; } }); /** * Returns spec registered for keyword/symbol/var k, or nil. */ cljs.spec.alpha.get_spec = (function cljs$spec$alpha$get_spec(k){ return cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.spec.alpha.registry(),(((k instanceof cljs.core.Keyword))?k:cljs.spec.alpha.__GT_sym(k))); }); cljs.spec.alpha.macroexpand_check = (function cljs$spec$alpha$macroexpand_check(v,args){ var specs = cljs.spec.alpha.get_spec(v); var temp__5804__auto__ = new cljs.core.Keyword(null,"args","args",1315556576).cljs$core$IFn$_invoke$arity$1(specs); if(cljs.core.truth_(temp__5804__auto__)){ var arg_spec = temp__5804__auto__; if(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.conform(arg_spec,args))){ var ed = cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.explain_data_STAR_(arg_spec,cljs.core.PersistentVector.EMPTY,(function (){var temp__5802__auto__ = cljs.spec.alpha.spec_name(arg_spec); if(cljs.core.truth_(temp__5802__auto__)){ var name = temp__5802__auto__; return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [name], null); } else { return cljs.core.PersistentVector.EMPTY; } })(),cljs.core.PersistentVector.EMPTY,args),new cljs.core.Keyword("cljs.spec.alpha","args","cljs.spec.alpha/args",1870769783),args); throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(["Call to ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.spec.alpha.__GT_sym(v))," did not conform to spec."].join(''),ed); } else { return null; } } else { return null; } }); cljs.spec.alpha.recur_limit_QMARK_ = (function cljs$spec$alpha$recur_limit_QMARK_(rmap,id,path,k){ return (((cljs.core.get.cljs$core$IFn$_invoke$arity$2(rmap,id) > new cljs.core.Keyword("cljs.spec.alpha","recursion-limit","cljs.spec.alpha/recursion-limit",601284994).cljs$core$IFn$_invoke$arity$1(rmap))) && (cljs.core.contains_QMARK_(cljs.core.set(path),k))); }); cljs.spec.alpha.inck = (function cljs$spec$alpha$inck(m,k){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,((function (){var or__5045__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return (0); } })() + (1))); }); cljs.spec.alpha.dt = (function cljs$spec$alpha$dt(var_args){ var G__19405 = arguments.length; switch (G__19405) { case 3: return cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)])); break; case 4: return cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3 = (function (pred,x,form){ return cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$4(pred,x,form,null); })); (cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$4 = (function (pred,x,form,cpred_QMARK_){ if(cljs.core.truth_(pred)){ var temp__5802__auto__ = cljs.spec.alpha.the_spec(pred); if(cljs.core.truth_(temp__5802__auto__)){ var spec = temp__5802__auto__; return cljs.spec.alpha.conform(spec,x); } else { if(cljs.core.ifn_QMARK_(pred)){ if(cljs.core.truth_(cpred_QMARK_)){ return (pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(x) : pred.call(null,x)); } else { if(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(x) : pred.call(null,x)))){ return x; } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } } } else { throw (new Error([cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([form], 0))," is not a fn, expected predicate fn"].join(''))); } } } else { return x; } })); (cljs.spec.alpha.dt.cljs$lang$maxFixedArity = 4); /** * Helper function that returns true when x is valid for spec. */ cljs.spec.alpha.valid_QMARK_ = (function cljs$spec$alpha$valid_QMARK_(var_args){ var G__19407 = arguments.length; switch (G__19407) { case 2: return cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; case 3: return cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2 = (function (spec,x){ var spec__$1 = cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec); return (!(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.conform_STAR_(spec__$1,x)))); })); (cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$3 = (function (spec,x,form){ var spec__$1 = cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$2(spec,form); return (!(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.conform_STAR_(spec__$1,x)))); })); (cljs.spec.alpha.valid_QMARK_.cljs$lang$maxFixedArity = 3); /** * internal helper function that returns true when x is valid for spec. */ cljs.spec.alpha.pvalid_QMARK_ = (function cljs$spec$alpha$pvalid_QMARK_(var_args){ var G__19409 = arguments.length; switch (G__19409) { case 2: return cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; case 3: return cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2 = (function (pred,x){ return (!(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(pred,x,new cljs.core.Keyword("cljs.spec.alpha","unknown","cljs.spec.alpha/unknown",651034818))))); })); (cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$3 = (function (pred,x,form){ return (!(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(pred,x,form)))); })); (cljs.spec.alpha.pvalid_QMARK_.cljs$lang$maxFixedArity = 3); cljs.spec.alpha.explain_1 = (function cljs$spec$alpha$explain_1(form,pred,path,via,in$,v){ var pred__$1 = cljs.spec.alpha.maybe_spec(pred); if(cljs.core.truth_(cljs.spec.alpha.spec_QMARK_(pred__$1))){ return cljs.spec.alpha.explain_STAR_(pred__$1,path,(function (){var temp__5802__auto__ = cljs.spec.alpha.spec_name(pred__$1); if(cljs.core.truth_(temp__5802__auto__)){ var name = temp__5802__auto__; return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(via,name); } else { return via; } })(),in$,v); } else { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"pred","pred",1927423397),form,new cljs.core.Keyword(null,"val","val",128701612),v,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); } }); /** * returns a generator for form f, which can be a keyword or a list * starting with 'or or 'and. */ cljs.spec.alpha.k_gen = (function cljs$spec$alpha$k_gen(f){ if((f instanceof cljs.core.Keyword)){ return cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([f], 0)); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,"or","or",1876275696,null),cljs.core.first(f))){ return cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$2((1),cljs.core.rest(f)); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,"and","and",668631710,null),cljs.core.first(f))){ return cljs.spec.alpha.and_k_gen(cljs.core.rest(f)); } else { return null; } } } }); /** * returns a tuple generator made up of generators for a random subset * of min-count (default 0) to all elements in s. */ cljs.spec.alpha.or_k_gen = (function cljs$spec$alpha$or_k_gen(var_args){ var G__19413 = arguments.length; switch (G__19413) { case 1: return cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$1((arguments[(0)])); break; case 2: return cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$1 = (function (s){ return cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$2((0),s); })); (cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$2 = (function (min_count,s){ return cljs.spec.gen.alpha.bind.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.gen.alpha.tuple.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.gen.alpha.choose.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([min_count,cljs.core.count(s)], 0)),cljs.spec.gen.alpha.shuffle.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.spec.alpha.k_gen,s)], 0))], 0)),(function (p__19414){ var vec__19415 = p__19414; var n = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19415,(0),null); var gens = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19415,(1),null); return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.tuple,cljs.core.take.cljs$core$IFn$_invoke$arity$2(n,gens)); })], 0)); })); (cljs.spec.alpha.or_k_gen.cljs$lang$maxFixedArity = 2); /** * returns a tuple generator made up of generators for every element * in s. */ cljs.spec.alpha.and_k_gen = (function cljs$spec$alpha$and_k_gen(s){ return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.tuple,cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.spec.alpha.k_gen,s)); }); /** * @constructor * @implements {cljs.spec.alpha.Spec} * @implements {cljs.core.IMeta} * @implements {cljs.spec.alpha.Specize} * @implements {cljs.core.IWithMeta} */ cljs.spec.alpha.t_cljs$spec$alpha19449 = (function (map__19448,keys__GT_specnames,opt,req_un,opt_un,gfn,pred_exprs,keys_pred,argm,opt_keys,p__19447,req_specs,req,id,req_keys,opt_specs,k__GT_s,pred_forms,meta19450){ this.map__19448 = map__19448; this.keys__GT_specnames = keys__GT_specnames; this.opt = opt; this.req_un = req_un; this.opt_un = opt_un; this.gfn = gfn; this.pred_exprs = pred_exprs; this.keys_pred = keys_pred; this.argm = argm; this.opt_keys = opt_keys; this.p__19447 = p__19447; this.req_specs = req_specs; this.req = req; this.id = id; this.req_keys = req_keys; this.opt_specs = opt_specs; this.k__GT_s = k__GT_s; this.pred_forms = pred_forms; this.meta19450 = meta19450; this.cljs$lang$protocol_mask$partition0$ = 393216; this.cljs$lang$protocol_mask$partition1$ = 0; }); (cljs.spec.alpha.t_cljs$spec$alpha19449.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_19451,meta19450__$1){ var self__ = this; var _19451__$1 = this; return (new cljs.spec.alpha.t_cljs$spec$alpha19449(self__.map__19448,self__.keys__GT_specnames,self__.opt,self__.req_un,self__.opt_un,self__.gfn,self__.pred_exprs,self__.keys_pred,self__.argm,self__.opt_keys,self__.p__19447,self__.req_specs,self__.req,self__.id,self__.req_keys,self__.opt_specs,self__.k__GT_s,self__.pred_forms,meta19450__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha19449.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_19451){ var self__ = this; var _19451__$1 = this; return self__.meta19450; })); (cljs.spec.alpha.t_cljs$spec$alpha19449.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19449.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19449.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19449.prototype.cljs$spec$alpha$Spec$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19449.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 = (function (_,m){ var self__ = this; var ___$1 = this; if(cljs.core.truth_((self__.keys_pred.cljs$core$IFn$_invoke$arity$1 ? self__.keys_pred.cljs$core$IFn$_invoke$arity$1(m) : self__.keys_pred.call(null,m)))){ var reg = cljs.spec.alpha.registry(); var ret = m; var G__19462 = m; var vec__19463 = G__19462; var seq__19464 = cljs.core.seq(vec__19463); var first__19465 = cljs.core.first(seq__19464); var seq__19464__$1 = cljs.core.next(seq__19464); var vec__19466 = first__19465; var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19466,(0),null); var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19466,(1),null); var ks = seq__19464__$1; var keys = vec__19463; var ret__$1 = ret; var G__19462__$1 = G__19462; while(true){ var ret__$2 = ret__$1; var vec__19471 = G__19462__$1; var seq__19472 = cljs.core.seq(vec__19471); var first__19473 = cljs.core.first(seq__19472); var seq__19472__$1 = cljs.core.next(seq__19472); var vec__19474 = first__19473; var k__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19474,(0),null); var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19474,(1),null); var ks__$1 = seq__19472__$1; var keys__$1 = vec__19471; if(cljs.core.truth_(keys__$1)){ var sname = (self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k__$1) : self__.keys__GT_specnames.call(null,k__$1)); var temp__5802__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(reg,sname); if(cljs.core.truth_(temp__5802__auto__)){ var s = temp__5802__auto__; var cv = cljs.spec.alpha.conform(s,v__$1); if(cljs.spec.alpha.invalid_QMARK_(cv)){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { var G__20495 = (((cv === v__$1))?ret__$2:cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret__$2,k__$1,cv)); var G__20496 = ks__$1; ret__$1 = G__20495; G__19462__$1 = G__20496; continue; } } else { var G__20497 = ret__$2; var G__20498 = ks__$1; ret__$1 = G__20497; G__19462__$1 = G__20498; continue; } } else { return ret__$2; } break; } } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } })); (cljs.spec.alpha.t_cljs$spec$alpha19449.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 = (function (_,m){ var self__ = this; var ___$1 = this; var reg = cljs.spec.alpha.registry(); var ret = m; var G__19480 = cljs.core.keys(m); var vec__19481 = G__19480; var seq__19482 = cljs.core.seq(vec__19481); var first__19483 = cljs.core.first(seq__19482); var seq__19482__$1 = cljs.core.next(seq__19482); var k = first__19483; var ks = seq__19482__$1; var keys = vec__19481; var ret__$1 = ret; var G__19480__$1 = G__19480; while(true){ var ret__$2 = ret__$1; var vec__19487 = G__19480__$1; var seq__19488 = cljs.core.seq(vec__19487); var first__19489 = cljs.core.first(seq__19488); var seq__19488__$1 = cljs.core.next(seq__19488); var k__$1 = first__19489; var ks__$1 = seq__19488__$1; var keys__$1 = vec__19487; if(cljs.core.truth_(keys__$1)){ if(cljs.core.contains_QMARK_(reg,(self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k__$1) : self__.keys__GT_specnames.call(null,k__$1)))){ var cv = cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k__$1); var v = cljs.spec.alpha.unform((self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k__$1) : self__.keys__GT_specnames.call(null,k__$1)),cv); var G__20499 = (((cv === v))?ret__$2:cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret__$2,k__$1,v)); var G__20500 = ks__$1; ret__$1 = G__20499; G__19480__$1 = G__20500; continue; } else { var G__20501 = ret__$2; var G__20502 = ks__$1; ret__$1 = G__20501; G__19480__$1 = G__20502; continue; } } else { return ret__$2; } break; } })); (cljs.spec.alpha.t_cljs$spec$alpha19449.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 = (function (_,path,via,in$,x){ var self__ = this; var ___$1 = this; if((!(cljs.core.map_QMARK_(x)))){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"pred","pred",1927423397),new cljs.core.Symbol("cljs.core","map?","cljs.core/map?",-1390345523,null),new cljs.core.Keyword(null,"val","val",128701612),x,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); } else { var reg = cljs.spec.alpha.registry(); return cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.concat,(function (){var temp__5804__auto__ = cljs.core.seq(cljs.core.keep.cljs$core$IFn$_invoke$arity$2(cljs.core.identity,cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (pred,form){ if(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(x) : pred.call(null,x)))){ return null; } else { return form; } }),self__.pred_exprs,self__.pred_forms))); if(temp__5804__auto__){ var probs = temp__5804__auto__; return cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__19421_SHARP_){ return cljs.core.identity(new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"pred","pred",1927423397),p1__19421_SHARP_,new cljs.core.Keyword(null,"val","val",128701612),x,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)); }),probs); } else { return null; } })(),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__19492){ var vec__19493 = p__19492; var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19493,(0),null); var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19493,(1),null); if((((!(cljs.core.contains_QMARK_(reg,(self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k) : self__.keys__GT_specnames.call(null,k)))))) || (cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$3((self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k) : self__.keys__GT_specnames.call(null,k)),v,k)))){ return null; } else { return cljs.spec.alpha.explain_1((self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k) : self__.keys__GT_specnames.call(null,k)),(self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k) : self__.keys__GT_specnames.call(null,k)),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k),via,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,k),v); } }),cljs.core.seq(x))); } })); (cljs.spec.alpha.t_cljs$spec$alpha19449.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 = (function (_,overrides,path,rmap){ var self__ = this; var ___$1 = this; if(cljs.core.truth_(self__.gfn)){ return (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null)); } else { var rmap__$1 = cljs.spec.alpha.inck(rmap,self__.id); var rgen = (function (k,s){ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,cljs.spec.alpha.gensub(s,overrides,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k),rmap__$1,k)], null); }); var ogen = (function (k,s){ if(cljs.spec.alpha.recur_limit_QMARK_(rmap__$1,self__.id,path,k)){ return null; } else { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,cljs.spec.gen.alpha.delay_impl((new cljs.core.Delay((function (){ return cljs.spec.alpha.gensub(s,overrides,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k),rmap__$1,k); }),null)))], null); } }); var reqs = cljs.core.map.cljs$core$IFn$_invoke$arity$3(rgen,self__.req_keys,self__.req_specs); var opts = cljs.core.remove.cljs$core$IFn$_invoke$arity$2(cljs.core.nil_QMARK_,cljs.core.map.cljs$core$IFn$_invoke$arity$3(ogen,self__.opt_keys,self__.opt_specs)); if(cljs.core.every_QMARK_(cljs.core.identity,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.second,reqs),cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.second,opts)))){ return cljs.spec.gen.alpha.bind.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.gen.alpha.tuple.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.alpha.and_k_gen(self__.req),cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$1(self__.opt),cljs.spec.alpha.and_k_gen(self__.req_un),cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$1(self__.opt_un)], 0)),(function (p__19500){ var vec__19501 = p__19500; var req_ks = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19501,(0),null); var opt_ks = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19501,(1),null); var req_un_ks = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19501,(2),null); var opt_un_ks = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19501,(3),null); var qks = cljs.core.flatten(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(req_ks,opt_ks)); var unqks = cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.comp.cljs$core$IFn$_invoke$arity$2(cljs.core.keyword,cljs.core.name),cljs.core.flatten(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(req_un_ks,opt_un_ks))); return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.hash_map,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__19422_SHARP_){ var G__19505 = cljs.core.first(p1__19422_SHARP_); var fexpr__19504 = cljs.core.set(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(qks,unqks)); return (fexpr__19504.cljs$core$IFn$_invoke$arity$1 ? fexpr__19504.cljs$core$IFn$_invoke$arity$1(G__19505) : fexpr__19504.call(null,G__19505)); }),cljs.core.into.cljs$core$IFn$_invoke$arity$2(reqs,opts)))); })], 0)); } else { return null; } } })); (cljs.spec.alpha.t_cljs$spec$alpha19449.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 = (function (_,gfn__$1){ var self__ = this; var ___$1 = this; var G__19506 = cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.argm,new cljs.core.Keyword(null,"gfn","gfn",791517474),gfn__$1); return (cljs.spec.alpha.map_spec_impl.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.map_spec_impl.cljs$core$IFn$_invoke$arity$1(G__19506) : cljs.spec.alpha.map_spec_impl.call(null,G__19506)); })); (cljs.spec.alpha.t_cljs$spec$alpha19449.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 = (function (_){ var self__ = this; var ___$1 = this; return cljs.core.cons(new cljs.core.Symbol("cljs.spec.alpha","keys","cljs.spec.alpha/keys",1109346032,null),(function (){var G__19507 = cljs.core.PersistentVector.EMPTY; var G__19507__$1 = (cljs.core.truth_(self__.req)?cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(G__19507,new cljs.core.Keyword(null,"req","req",-326448303),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.req], 0)):G__19507); var G__19507__$2 = (cljs.core.truth_(self__.opt)?cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(G__19507__$1,new cljs.core.Keyword(null,"opt","opt",-794706369),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.opt], 0)):G__19507__$1); var G__19507__$3 = (cljs.core.truth_(self__.req_un)?cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(G__19507__$2,new cljs.core.Keyword(null,"req-un","req-un",1074571008),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.req_un], 0)):G__19507__$2); if(cljs.core.truth_(self__.opt_un)){ return cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(G__19507__$3,new cljs.core.Keyword(null,"opt-un","opt-un",883442496),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.opt_un], 0)); } else { return G__19507__$3; } })()); })); (cljs.spec.alpha.t_cljs$spec$alpha19449.getBasis = (function (){ return new cljs.core.PersistentVector(null, 19, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"map__19448","map__19448",-308239772,null),new cljs.core.Symbol(null,"keys->specnames","keys->specnames",1791294693,null),new cljs.core.Symbol(null,"opt","opt",845825158,null),new cljs.core.Symbol(null,"req-un","req-un",-1579864761,null),new cljs.core.Symbol(null,"opt-un","opt-un",-1770993273,null),new cljs.core.Symbol(null,"gfn","gfn",-1862918295,null),new cljs.core.Symbol(null,"pred-exprs","pred-exprs",-862164374,null),new cljs.core.Symbol(null,"keys-pred","keys-pred",-1795451030,null),new cljs.core.Symbol(null,"argm","argm",-181546357,null),new cljs.core.Symbol(null,"opt-keys","opt-keys",-1391747508,null),new cljs.core.Symbol(null,"p__19447","p__19447",834289580,null),new cljs.core.Symbol(null,"req-specs","req-specs",-2100473456,null),new cljs.core.Symbol(null,"req","req",1314083224,null),new cljs.core.Symbol(null,"id","id",252129435,null),new cljs.core.Symbol(null,"req-keys","req-keys",-2140116548,null),new cljs.core.Symbol(null,"opt-specs","opt-specs",1255626077,null),new cljs.core.Symbol(null,"k->s","k->s",-1685112801,null),new cljs.core.Symbol(null,"pred-forms","pred-forms",1813143359,null),new cljs.core.Symbol(null,"meta19450","meta19450",-792804677,null)], null); })); (cljs.spec.alpha.t_cljs$spec$alpha19449.cljs$lang$type = true); (cljs.spec.alpha.t_cljs$spec$alpha19449.cljs$lang$ctorStr = "cljs.spec.alpha/t_cljs$spec$alpha19449"); (cljs.spec.alpha.t_cljs$spec$alpha19449.cljs$lang$ctorPrWriter = (function (this__5330__auto__,writer__5331__auto__,opt__5332__auto__){ return cljs.core._write(writer__5331__auto__,"cljs.spec.alpha/t_cljs$spec$alpha19449"); })); /** * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha19449. */ cljs.spec.alpha.__GT_t_cljs$spec$alpha19449 = (function cljs$spec$alpha$__GT_t_cljs$spec$alpha19449(map__19448,keys__GT_specnames,opt,req_un,opt_un,gfn,pred_exprs,keys_pred,argm,opt_keys,p__19447,req_specs,req,id,req_keys,opt_specs,k__GT_s,pred_forms,meta19450){ return (new cljs.spec.alpha.t_cljs$spec$alpha19449(map__19448,keys__GT_specnames,opt,req_un,opt_un,gfn,pred_exprs,keys_pred,argm,opt_keys,p__19447,req_specs,req,id,req_keys,opt_specs,k__GT_s,pred_forms,meta19450)); }); /** * Do not call this directly, use 'spec' with a map argument */ cljs.spec.alpha.map_spec_impl = (function cljs$spec$alpha$map_spec_impl(p__19447){ var map__19448 = p__19447; var map__19448__$1 = cljs.core.__destructure_map(map__19448); var argm = map__19448__$1; var opt = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19448__$1,new cljs.core.Keyword(null,"opt","opt",-794706369)); var req_un = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19448__$1,new cljs.core.Keyword(null,"req-un","req-un",1074571008)); var opt_un = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19448__$1,new cljs.core.Keyword(null,"opt-un","opt-un",883442496)); var gfn = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19448__$1,new cljs.core.Keyword(null,"gfn","gfn",791517474)); var pred_exprs = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19448__$1,new cljs.core.Keyword(null,"pred-exprs","pred-exprs",1792271395)); var keys_pred = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19448__$1,new cljs.core.Keyword(null,"keys-pred","keys-pred",858984739)); var opt_keys = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19448__$1,new cljs.core.Keyword(null,"opt-keys","opt-keys",1262688261)); var req_specs = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19448__$1,new cljs.core.Keyword(null,"req-specs","req-specs",553962313)); var req = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19448__$1,new cljs.core.Keyword(null,"req","req",-326448303)); var req_keys = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19448__$1,new cljs.core.Keyword(null,"req-keys","req-keys",514319221)); var opt_specs = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19448__$1,new cljs.core.Keyword(null,"opt-specs","opt-specs",-384905450)); var pred_forms = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19448__$1,new cljs.core.Keyword(null,"pred-forms","pred-forms",172611832)); var k__GT_s = cljs.core.zipmap(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(req_keys,opt_keys),cljs.core.concat.cljs$core$IFn$_invoke$arity$2(req_specs,opt_specs)); var keys__GT_specnames = (function (p1__19420_SHARP_){ var or__5045__auto__ = (k__GT_s.cljs$core$IFn$_invoke$arity$1 ? k__GT_s.cljs$core$IFn$_invoke$arity$1(p1__19420_SHARP_) : k__GT_s.call(null,p1__19420_SHARP_)); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return p1__19420_SHARP_; } }); var id = cljs.core.random_uuid(); return (new cljs.spec.alpha.t_cljs$spec$alpha19449(map__19448__$1,keys__GT_specnames,opt,req_un,opt_un,gfn,pred_exprs,keys_pred,argm,opt_keys,p__19447,req_specs,req,id,req_keys,opt_specs,k__GT_s,pred_forms,cljs.core.PersistentArrayMap.EMPTY)); }); /** * @constructor * @implements {cljs.spec.alpha.Spec} * @implements {cljs.core.IMeta} * @implements {cljs.spec.alpha.Specize} * @implements {cljs.core.IWithMeta} */ cljs.spec.alpha.t_cljs$spec$alpha19521 = (function (form,pred,gfn,cpred_QMARK_,unc,meta19522){ this.form = form; this.pred = pred; this.gfn = gfn; this.cpred_QMARK_ = cpred_QMARK_; this.unc = unc; this.meta19522 = meta19522; this.cljs$lang$protocol_mask$partition0$ = 393216; this.cljs$lang$protocol_mask$partition1$ = 0; }); (cljs.spec.alpha.t_cljs$spec$alpha19521.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_19523,meta19522__$1){ var self__ = this; var _19523__$1 = this; return (new cljs.spec.alpha.t_cljs$spec$alpha19521(self__.form,self__.pred,self__.gfn,self__.cpred_QMARK_,self__.unc,meta19522__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha19521.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_19523){ var self__ = this; var _19523__$1 = this; return self__.meta19522; })); (cljs.spec.alpha.t_cljs$spec$alpha19521.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19521.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19521.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19521.prototype.cljs$spec$alpha$Spec$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19521.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; var ret = (self__.pred.cljs$core$IFn$_invoke$arity$1 ? self__.pred.cljs$core$IFn$_invoke$arity$1(x) : self__.pred.call(null,x)); if(cljs.core.truth_(self__.cpred_QMARK_)){ return ret; } else { if(cljs.core.truth_(ret)){ return x; } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } } })); (cljs.spec.alpha.t_cljs$spec$alpha19521.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; if(cljs.core.truth_(self__.cpred_QMARK_)){ if(cljs.core.truth_(self__.unc)){ return (self__.unc.cljs$core$IFn$_invoke$arity$1 ? self__.unc.cljs$core$IFn$_invoke$arity$1(x) : self__.unc.call(null,x)); } else { throw (new Error("no unform fn for conformer")); } } else { return x; } })); (cljs.spec.alpha.t_cljs$spec$alpha19521.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 = (function (_,path,via,in$,x){ var self__ = this; var ___$1 = this; if(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$4(self__.pred,x,self__.form,self__.cpred_QMARK_))){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"pred","pred",1927423397),self__.form,new cljs.core.Keyword(null,"val","val",128701612),x,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); } else { return null; } })); (cljs.spec.alpha.t_cljs$spec$alpha19521.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 = (function (_,___$1,___$2,___$3){ var self__ = this; var ___$4 = this; if(cljs.core.truth_(self__.gfn)){ return (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null)); } else { return cljs.spec.gen.alpha.gen_for_pred(self__.pred); } })); (cljs.spec.alpha.t_cljs$spec$alpha19521.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 = (function (_,gfn__$1){ var self__ = this; var ___$1 = this; return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$5(self__.form,self__.pred,gfn__$1,self__.cpred_QMARK_,self__.unc); })); (cljs.spec.alpha.t_cljs$spec$alpha19521.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 = (function (_){ var self__ = this; var ___$1 = this; return self__.form; })); (cljs.spec.alpha.t_cljs$spec$alpha19521.getBasis = (function (){ return new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"form","form",16469056,null),new cljs.core.Symbol(null,"pred","pred",-727012372,null),new cljs.core.Symbol(null,"gfn","gfn",-1862918295,null),new cljs.core.Symbol(null,"cpred?","cpred?",35589515,null),new cljs.core.Symbol(null,"unc","unc",-465250751,null),new cljs.core.Symbol(null,"meta19522","meta19522",27577478,null)], null); })); (cljs.spec.alpha.t_cljs$spec$alpha19521.cljs$lang$type = true); (cljs.spec.alpha.t_cljs$spec$alpha19521.cljs$lang$ctorStr = "cljs.spec.alpha/t_cljs$spec$alpha19521"); (cljs.spec.alpha.t_cljs$spec$alpha19521.cljs$lang$ctorPrWriter = (function (this__5330__auto__,writer__5331__auto__,opt__5332__auto__){ return cljs.core._write(writer__5331__auto__,"cljs.spec.alpha/t_cljs$spec$alpha19521"); })); /** * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha19521. */ cljs.spec.alpha.__GT_t_cljs$spec$alpha19521 = (function cljs$spec$alpha$__GT_t_cljs$spec$alpha19521(form,pred,gfn,cpred_QMARK_,unc,meta19522){ return (new cljs.spec.alpha.t_cljs$spec$alpha19521(form,pred,gfn,cpred_QMARK_,unc,meta19522)); }); /** * Do not call this directly, use 'spec' */ cljs.spec.alpha.spec_impl = (function cljs$spec$alpha$spec_impl(var_args){ var G__19512 = arguments.length; switch (G__19512) { case 4: return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)])); break; case 5: return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4 = (function (form,pred,gfn,cpred_QMARK_){ return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$5(form,pred,gfn,cpred_QMARK_,null); })); (cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$5 = (function (form,pred,gfn,cpred_QMARK_,unc){ if(cljs.core.truth_(cljs.spec.alpha.spec_QMARK_(pred))){ var G__19518 = pred; if(cljs.core.truth_(gfn)){ return cljs.spec.alpha.with_gen(G__19518,gfn); } else { return G__19518; } } else { if(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(pred))){ return cljs.spec.alpha.regex_spec_impl(pred,gfn); } else { if(cljs.core.ident_QMARK_(pred)){ var G__19519 = cljs.spec.alpha.the_spec(pred); if(cljs.core.truth_(gfn)){ return cljs.spec.alpha.with_gen(G__19519,gfn); } else { return G__19519; } } else { return (new cljs.spec.alpha.t_cljs$spec$alpha19521(form,pred,gfn,cpred_QMARK_,unc,cljs.core.PersistentArrayMap.EMPTY)); } } } })); (cljs.spec.alpha.spec_impl.cljs$lang$maxFixedArity = 5); /** * @constructor * @implements {cljs.spec.alpha.Spec} * @implements {cljs.core.IMeta} * @implements {cljs.spec.alpha.Specize} * @implements {cljs.core.IWithMeta} */ cljs.spec.alpha.t_cljs$spec$alpha19541 = (function (form,mmvar,retag,gfn,id,predx,dval,tag,meta19542){ this.form = form; this.mmvar = mmvar; this.retag = retag; this.gfn = gfn; this.id = id; this.predx = predx; this.dval = dval; this.tag = tag; this.meta19542 = meta19542; this.cljs$lang$protocol_mask$partition0$ = 393216; this.cljs$lang$protocol_mask$partition1$ = 0; }); (cljs.spec.alpha.t_cljs$spec$alpha19541.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_19543,meta19542__$1){ var self__ = this; var _19543__$1 = this; return (new cljs.spec.alpha.t_cljs$spec$alpha19541(self__.form,self__.mmvar,self__.retag,self__.gfn,self__.id,self__.predx,self__.dval,self__.tag,meta19542__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha19541.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_19543){ var self__ = this; var _19543__$1 = this; return self__.meta19542; })); (cljs.spec.alpha.t_cljs$spec$alpha19541.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19541.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19541.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19541.prototype.cljs$spec$alpha$Spec$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19541.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; var temp__5802__auto__ = (self__.predx.cljs$core$IFn$_invoke$arity$1 ? self__.predx.cljs$core$IFn$_invoke$arity$1(x) : self__.predx.call(null,x)); if(cljs.core.truth_(temp__5802__auto__)){ var pred = temp__5802__auto__; return cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(pred,x,self__.form); } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } })); (cljs.spec.alpha.t_cljs$spec$alpha19541.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; var temp__5802__auto__ = (self__.predx.cljs$core$IFn$_invoke$arity$1 ? self__.predx.cljs$core$IFn$_invoke$arity$1(x) : self__.predx.call(null,x)); if(cljs.core.truth_(temp__5802__auto__)){ var pred = temp__5802__auto__; return cljs.spec.alpha.unform(pred,x); } else { throw (new Error(["No method of: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.form)," for dispatch value: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1((self__.dval.cljs$core$IFn$_invoke$arity$1 ? self__.dval.cljs$core$IFn$_invoke$arity$1(x) : self__.dval.call(null,x)))].join(''))); } })); (cljs.spec.alpha.t_cljs$spec$alpha19541.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 = (function (_,path,via,in$,x){ var self__ = this; var ___$1 = this; var dv = (self__.dval.cljs$core$IFn$_invoke$arity$1 ? self__.dval.cljs$core$IFn$_invoke$arity$1(x) : self__.dval.call(null,x)); var path__$1 = cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,dv); var temp__5802__auto__ = (self__.predx.cljs$core$IFn$_invoke$arity$1 ? self__.predx.cljs$core$IFn$_invoke$arity$1(x) : self__.predx.call(null,x)); if(cljs.core.truth_(temp__5802__auto__)){ var pred = temp__5802__auto__; return cljs.spec.alpha.explain_1(self__.form,pred,path__$1,via,in$,x); } else { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),path__$1,new cljs.core.Keyword(null,"pred","pred",1927423397),self__.form,new cljs.core.Keyword(null,"val","val",128701612),x,new cljs.core.Keyword(null,"reason","reason",-2070751759),"no method",new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); } })); (cljs.spec.alpha.t_cljs$spec$alpha19541.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 = (function (_,overrides,path,rmap){ var self__ = this; var ___$1 = this; if(cljs.core.truth_(self__.gfn)){ return (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null)); } else { var gen = (function (p__19545){ var vec__19546 = p__19545; var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19546,(0),null); var f = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19546,(1),null); var p = (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(null) : f.call(null,null)); var rmap__$1 = cljs.spec.alpha.inck(rmap,self__.id); if(cljs.spec.alpha.recur_limit_QMARK_(rmap__$1,self__.id,path,k)){ return null; } else { return cljs.spec.gen.alpha.delay_impl((new cljs.core.Delay((function (){ return cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__19532_SHARP_){ return (self__.tag.cljs$core$IFn$_invoke$arity$2 ? self__.tag.cljs$core$IFn$_invoke$arity$2(p1__19532_SHARP_,k) : self__.tag.call(null,p1__19532_SHARP_,k)); }),cljs.spec.alpha.gensub(p,overrides,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k),rmap__$1,(new cljs.core.List(null,new cljs.core.Symbol(null,"method","method",1696235119,null),(new cljs.core.List(null,self__.form,(new cljs.core.List(null,k,null,(1),null)),(2),null)),(3),null)))], 0)); }),null))); } }); var gs = cljs.core.remove.cljs$core$IFn$_invoke$arity$2(cljs.core.nil_QMARK_,cljs.core.map.cljs$core$IFn$_invoke$arity$2(gen,cljs.core.remove.cljs$core$IFn$_invoke$arity$2((function (p__19552){ var vec__19553 = p__19552; var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19553,(0),null); return cljs.spec.alpha.invalid_QMARK_(k); }),cljs.core.methods$(cljs.core.deref(self__.mmvar))))); if(cljs.core.every_QMARK_(cljs.core.identity,gs)){ return cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([gs], 0)); } else { return null; } } })); (cljs.spec.alpha.t_cljs$spec$alpha19541.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 = (function (_,gfn__$1){ var self__ = this; var ___$1 = this; return cljs.spec.alpha.multi_spec_impl.cljs$core$IFn$_invoke$arity$4(self__.form,self__.mmvar,self__.retag,gfn__$1); })); (cljs.spec.alpha.t_cljs$spec$alpha19541.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 = (function (_){ var self__ = this; var ___$1 = this; return cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.spec.alpha","multi-spec","cljs.spec.alpha/multi-spec",175821274,null),null,(1),null)),(new cljs.core.List(null,self__.form,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,self__.retag,null,(1),null))], 0)))); })); (cljs.spec.alpha.t_cljs$spec$alpha19541.getBasis = (function (){ return new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"form","form",16469056,null),new cljs.core.Symbol(null,"mmvar","mmvar",-1714325675,null),new cljs.core.Symbol(null,"retag","retag",528972725,null),new cljs.core.Symbol(null,"gfn","gfn",-1862918295,null),new cljs.core.Symbol(null,"id","id",252129435,null),new cljs.core.Symbol(null,"predx","predx",2063470948,null),new cljs.core.Symbol(null,"dval","dval",835211877,null),new cljs.core.Symbol(null,"tag","tag",350170304,null),new cljs.core.Symbol(null,"meta19542","meta19542",1957614901,null)], null); })); (cljs.spec.alpha.t_cljs$spec$alpha19541.cljs$lang$type = true); (cljs.spec.alpha.t_cljs$spec$alpha19541.cljs$lang$ctorStr = "cljs.spec.alpha/t_cljs$spec$alpha19541"); (cljs.spec.alpha.t_cljs$spec$alpha19541.cljs$lang$ctorPrWriter = (function (this__5330__auto__,writer__5331__auto__,opt__5332__auto__){ return cljs.core._write(writer__5331__auto__,"cljs.spec.alpha/t_cljs$spec$alpha19541"); })); /** * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha19541. */ cljs.spec.alpha.__GT_t_cljs$spec$alpha19541 = (function cljs$spec$alpha$__GT_t_cljs$spec$alpha19541(form,mmvar,retag,gfn,id,predx,dval,tag,meta19542){ return (new cljs.spec.alpha.t_cljs$spec$alpha19541(form,mmvar,retag,gfn,id,predx,dval,tag,meta19542)); }); /** * Do not call this directly, use 'multi-spec' */ cljs.spec.alpha.multi_spec_impl = (function cljs$spec$alpha$multi_spec_impl(var_args){ var G__19535 = arguments.length; switch (G__19535) { case 3: return cljs.spec.alpha.multi_spec_impl.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)])); break; case 4: return cljs.spec.alpha.multi_spec_impl.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.multi_spec_impl.cljs$core$IFn$_invoke$arity$3 = (function (form,mmvar,retag){ return cljs.spec.alpha.multi_spec_impl.cljs$core$IFn$_invoke$arity$4(form,mmvar,retag,null); })); (cljs.spec.alpha.multi_spec_impl.cljs$core$IFn$_invoke$arity$4 = (function (form,mmvar,retag,gfn){ var id = cljs.core.random_uuid(); var predx = (function (p1__19528_SHARP_){ var mm = cljs.core.deref(mmvar); var and__5043__auto__ = cljs.core._get_method(mm,(function (){var fexpr__19539 = cljs.core._dispatch_fn(mm); return (fexpr__19539.cljs$core$IFn$_invoke$arity$1 ? fexpr__19539.cljs$core$IFn$_invoke$arity$1(p1__19528_SHARP_) : fexpr__19539.call(null,p1__19528_SHARP_)); })()); if(cljs.core.truth_(and__5043__auto__)){ return (mm.cljs$core$IFn$_invoke$arity$1 ? mm.cljs$core$IFn$_invoke$arity$1(p1__19528_SHARP_) : mm.call(null,p1__19528_SHARP_)); } else { return and__5043__auto__; } }); var dval = (function (p1__19529_SHARP_){ var fexpr__19540 = cljs.core._dispatch_fn(cljs.core.deref(mmvar)); return (fexpr__19540.cljs$core$IFn$_invoke$arity$1 ? fexpr__19540.cljs$core$IFn$_invoke$arity$1(p1__19529_SHARP_) : fexpr__19540.call(null,p1__19529_SHARP_)); }); var tag = (((retag instanceof cljs.core.Keyword))?(function (p1__19530_SHARP_,p2__19531_SHARP_){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(p1__19530_SHARP_,retag,p2__19531_SHARP_); }):retag); return (new cljs.spec.alpha.t_cljs$spec$alpha19541(form,mmvar,retag,gfn,id,predx,dval,tag,cljs.core.PersistentArrayMap.EMPTY)); })); (cljs.spec.alpha.multi_spec_impl.cljs$lang$maxFixedArity = 4); /** * @constructor * @implements {cljs.spec.alpha.Spec} * @implements {cljs.core.IMeta} * @implements {cljs.spec.alpha.Specize} * @implements {cljs.core.IWithMeta} */ cljs.spec.alpha.t_cljs$spec$alpha19570 = (function (forms,preds,gfn,specs,cnt,meta19571){ this.forms = forms; this.preds = preds; this.gfn = gfn; this.specs = specs; this.cnt = cnt; this.meta19571 = meta19571; this.cljs$lang$protocol_mask$partition0$ = 393216; this.cljs$lang$protocol_mask$partition1$ = 0; }); (cljs.spec.alpha.t_cljs$spec$alpha19570.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_19572,meta19571__$1){ var self__ = this; var _19572__$1 = this; return (new cljs.spec.alpha.t_cljs$spec$alpha19570(self__.forms,self__.preds,self__.gfn,self__.specs,self__.cnt,meta19571__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha19570.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_19572){ var self__ = this; var _19572__$1 = this; return self__.meta19571; })); (cljs.spec.alpha.t_cljs$spec$alpha19570.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19570.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19570.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19570.prototype.cljs$spec$alpha$Spec$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19570.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; var specs__$1 = cljs.core.deref(self__.specs); if((!(((cljs.core.vector_QMARK_(x)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(x),self__.cnt)))))){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { var ret = x; var i = (0); while(true){ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(i,self__.cnt)){ return ret; } else { var v = (x.cljs$core$IFn$_invoke$arity$1 ? x.cljs$core$IFn$_invoke$arity$1(i) : x.call(null,i)); var cv = cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1(i) : specs__$1.call(null,i)),v); if(cljs.spec.alpha.invalid_QMARK_(cv)){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { var G__20587 = (((cv === v))?ret:cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,i,cv)); var G__20588 = (i + (1)); ret = G__20587; i = G__20588; continue; } } break; } } })); (cljs.spec.alpha.t_cljs$spec$alpha19570.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; if(((cljs.core.vector_QMARK_(x)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(x),cljs.core.count(self__.preds))))){ } else { throw (new Error("Assert failed: (c/and (vector? x) (= (count x) (count preds)))")); } var ret = x; var i = (0); while(true){ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(i,cljs.core.count(x))){ return ret; } else { var cv = (x.cljs$core$IFn$_invoke$arity$1 ? x.cljs$core$IFn$_invoke$arity$1(i) : x.call(null,i)); var v = cljs.spec.alpha.unform((self__.preds.cljs$core$IFn$_invoke$arity$1 ? self__.preds.cljs$core$IFn$_invoke$arity$1(i) : self__.preds.call(null,i)),cv); var G__20629 = (((cv === v))?ret:cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,i,v)); var G__20630 = (i + (1)); ret = G__20629; i = G__20630; continue; } break; } })); (cljs.spec.alpha.t_cljs$spec$alpha19570.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 = (function (_,path,via,in$,x){ var self__ = this; var ___$1 = this; if((!(cljs.core.vector_QMARK_(x)))){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"pred","pred",1927423397),new cljs.core.Symbol("cljs.core","vector?","cljs.core/vector?",-1550392028,null),new cljs.core.Keyword(null,"val","val",128701612),x,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); } else { if(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(x),cljs.core.count(self__.preds))){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"pred","pred",1927423397),cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","=","cljs.core/=",-1891498332,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","count","cljs.core/count",-921270233,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,"%","%",-950237169,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.count(self__.preds),null,(1),null))], 0)))),new cljs.core.Keyword(null,"val","val",128701612),x,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); } else { return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,cljs.core.map.cljs$core$IFn$_invoke$arity$4((function (i,form,pred){ var v = (x.cljs$core$IFn$_invoke$arity$1 ? x.cljs$core$IFn$_invoke$arity$1(i) : x.call(null,i)); if(cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(pred,v)){ return null; } else { return cljs.spec.alpha.explain_1(form,pred,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,i),via,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,i),v); } }),cljs.core.range.cljs$core$IFn$_invoke$arity$1(cljs.core.count(self__.preds)),self__.forms,self__.preds)); } } })); (cljs.spec.alpha.t_cljs$spec$alpha19570.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 = (function (_,overrides,path,rmap){ var self__ = this; var ___$1 = this; if(cljs.core.truth_(self__.gfn)){ return (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null)); } else { var gen = (function (i,p,f){ return cljs.spec.alpha.gensub(p,overrides,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,i),rmap,f); }); var gs = cljs.core.map.cljs$core$IFn$_invoke$arity$4(gen,cljs.core.range.cljs$core$IFn$_invoke$arity$1(cljs.core.count(self__.preds)),self__.preds,self__.forms); if(cljs.core.every_QMARK_(cljs.core.identity,gs)){ return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.tuple,gs); } else { return null; } } })); (cljs.spec.alpha.t_cljs$spec$alpha19570.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 = (function (_,gfn__$1){ var self__ = this; var ___$1 = this; return cljs.spec.alpha.tuple_impl.cljs$core$IFn$_invoke$arity$3(self__.forms,self__.preds,gfn__$1); })); (cljs.spec.alpha.t_cljs$spec$alpha19570.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 = (function (_){ var self__ = this; var ___$1 = this; return cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.spec.alpha","tuple","cljs.spec.alpha/tuple",-415901908,null),null,(1),null)),self__.forms))); })); (cljs.spec.alpha.t_cljs$spec$alpha19570.getBasis = (function (){ return new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"forms","forms",-608443419,null),new cljs.core.Symbol(null,"preds","preds",150921777,null),new cljs.core.Symbol(null,"gfn","gfn",-1862918295,null),new cljs.core.Symbol(null,"specs","specs",-1227865028,null),new cljs.core.Symbol(null,"cnt","cnt",1924510325,null),new cljs.core.Symbol(null,"meta19571","meta19571",-433260983,null)], null); })); (cljs.spec.alpha.t_cljs$spec$alpha19570.cljs$lang$type = true); (cljs.spec.alpha.t_cljs$spec$alpha19570.cljs$lang$ctorStr = "cljs.spec.alpha/t_cljs$spec$alpha19570"); (cljs.spec.alpha.t_cljs$spec$alpha19570.cljs$lang$ctorPrWriter = (function (this__5330__auto__,writer__5331__auto__,opt__5332__auto__){ return cljs.core._write(writer__5331__auto__,"cljs.spec.alpha/t_cljs$spec$alpha19570"); })); /** * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha19570. */ cljs.spec.alpha.__GT_t_cljs$spec$alpha19570 = (function cljs$spec$alpha$__GT_t_cljs$spec$alpha19570(forms__$1,preds,gfn,specs,cnt,meta19571){ return (new cljs.spec.alpha.t_cljs$spec$alpha19570(forms__$1,preds,gfn,specs,cnt,meta19571)); }); /** * Do not call this directly, use 'tuple' */ cljs.spec.alpha.tuple_impl = (function cljs$spec$alpha$tuple_impl(var_args){ var G__19565 = arguments.length; switch (G__19565) { case 2: return cljs.spec.alpha.tuple_impl.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; case 3: return cljs.spec.alpha.tuple_impl.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.tuple_impl.cljs$core$IFn$_invoke$arity$2 = (function (forms__$1,preds){ return cljs.spec.alpha.tuple_impl.cljs$core$IFn$_invoke$arity$3(forms__$1,preds,null); })); (cljs.spec.alpha.tuple_impl.cljs$core$IFn$_invoke$arity$3 = (function (forms__$1,preds,gfn){ var specs = (new cljs.core.Delay((function (){ return cljs.core.mapv.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.specize,preds,forms__$1); }),null)); var cnt = cljs.core.count(preds); return (new cljs.spec.alpha.t_cljs$spec$alpha19570(forms__$1,preds,gfn,specs,cnt,cljs.core.PersistentArrayMap.EMPTY)); })); (cljs.spec.alpha.tuple_impl.cljs$lang$maxFixedArity = 3); cljs.spec.alpha.tagged_ret = (function cljs$spec$alpha$tagged_ret(tag,ret){ return (new cljs.core.MapEntry(tag,ret,null)); }); /** * @constructor * @implements {cljs.spec.alpha.Spec} * @implements {cljs.core.IMeta} * @implements {cljs.spec.alpha.Specize} * @implements {cljs.core.IWithMeta} */ cljs.spec.alpha.t_cljs$spec$alpha19592 = (function (keys,forms,preds,gfn,id,kps,specs,cform,meta19593){ this.keys = keys; this.forms = forms; this.preds = preds; this.gfn = gfn; this.id = id; this.kps = kps; this.specs = specs; this.cform = cform; this.meta19593 = meta19593; this.cljs$lang$protocol_mask$partition0$ = 393216; this.cljs$lang$protocol_mask$partition1$ = 0; }); (cljs.spec.alpha.t_cljs$spec$alpha19592.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_19594,meta19593__$1){ var self__ = this; var _19594__$1 = this; return (new cljs.spec.alpha.t_cljs$spec$alpha19592(self__.keys,self__.forms,self__.preds,self__.gfn,self__.id,self__.kps,self__.specs,self__.cform,meta19593__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha19592.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_19594){ var self__ = this; var _19594__$1 = this; return self__.meta19593; })); (cljs.spec.alpha.t_cljs$spec$alpha19592.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19592.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19592.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19592.prototype.cljs$spec$alpha$Spec$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19592.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; return (self__.cform.cljs$core$IFn$_invoke$arity$1 ? self__.cform.cljs$core$IFn$_invoke$arity$1(x) : self__.cform.call(null,x)); })); (cljs.spec.alpha.t_cljs$spec$alpha19592.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 = (function (_,p__19595){ var self__ = this; var vec__19596 = p__19595; var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19596,(0),null); var x = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19596,(1),null); var ___$1 = this; return cljs.spec.alpha.unform((self__.kps.cljs$core$IFn$_invoke$arity$1 ? self__.kps.cljs$core$IFn$_invoke$arity$1(k) : self__.kps.call(null,k)),x); })); (cljs.spec.alpha.t_cljs$spec$alpha19592.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 = (function (this$,path,via,in$,x){ var self__ = this; var this$__$1 = this; if(cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(this$__$1,x)){ return null; } else { return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,cljs.core.map.cljs$core$IFn$_invoke$arity$4((function (k,form,pred){ if(cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(pred,x)){ return null; } else { return cljs.spec.alpha.explain_1(form,pred,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k),via,in$,x); } }),self__.keys,self__.forms,self__.preds)); } })); (cljs.spec.alpha.t_cljs$spec$alpha19592.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 = (function (_,overrides,path,rmap){ var self__ = this; var ___$1 = this; if(cljs.core.truth_(self__.gfn)){ return (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null)); } else { var gen = (function (k,p,f){ var rmap__$1 = cljs.spec.alpha.inck(rmap,self__.id); if(cljs.spec.alpha.recur_limit_QMARK_(rmap__$1,self__.id,path,k)){ return null; } else { return cljs.spec.gen.alpha.delay_impl((new cljs.core.Delay((function (){ return cljs.spec.alpha.gensub(p,overrides,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k),rmap__$1,f); }),null))); } }); var gs = cljs.core.remove.cljs$core$IFn$_invoke$arity$2(cljs.core.nil_QMARK_,cljs.core.map.cljs$core$IFn$_invoke$arity$4(gen,self__.keys,self__.preds,self__.forms)); if(cljs.core.empty_QMARK_(gs)){ return null; } else { return cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([gs], 0)); } } })); (cljs.spec.alpha.t_cljs$spec$alpha19592.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 = (function (_,gfn__$1){ var self__ = this; var ___$1 = this; return (cljs.spec.alpha.or_spec_impl.cljs$core$IFn$_invoke$arity$4 ? cljs.spec.alpha.or_spec_impl.cljs$core$IFn$_invoke$arity$4(self__.keys,self__.forms,self__.preds,gfn__$1) : cljs.spec.alpha.or_spec_impl.call(null,self__.keys,self__.forms,self__.preds,gfn__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha19592.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 = (function (_){ var self__ = this; var ___$1 = this; return cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.spec.alpha","or","cljs.spec.alpha/or",-831679639,null),null,(1),null)),cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic(cljs.core.vector,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.keys,self__.forms], 0))))); })); (cljs.spec.alpha.t_cljs$spec$alpha19592.getBasis = (function (){ return new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"keys","keys",-1586012071,null),new cljs.core.Symbol(null,"forms","forms",-608443419,null),new cljs.core.Symbol(null,"preds","preds",150921777,null),new cljs.core.Symbol(null,"gfn","gfn",-1862918295,null),new cljs.core.Symbol(null,"id","id",252129435,null),new cljs.core.Symbol(null,"kps","kps",-1157342767,null),new cljs.core.Symbol(null,"specs","specs",-1227865028,null),new cljs.core.Symbol(null,"cform","cform",1319506748,null),new cljs.core.Symbol(null,"meta19593","meta19593",1940858486,null)], null); })); (cljs.spec.alpha.t_cljs$spec$alpha19592.cljs$lang$type = true); (cljs.spec.alpha.t_cljs$spec$alpha19592.cljs$lang$ctorStr = "cljs.spec.alpha/t_cljs$spec$alpha19592"); (cljs.spec.alpha.t_cljs$spec$alpha19592.cljs$lang$ctorPrWriter = (function (this__5330__auto__,writer__5331__auto__,opt__5332__auto__){ return cljs.core._write(writer__5331__auto__,"cljs.spec.alpha/t_cljs$spec$alpha19592"); })); /** * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha19592. */ cljs.spec.alpha.__GT_t_cljs$spec$alpha19592 = (function cljs$spec$alpha$__GT_t_cljs$spec$alpha19592(keys,forms__$1,preds,gfn,id,kps,specs,cform,meta19593){ return (new cljs.spec.alpha.t_cljs$spec$alpha19592(keys,forms__$1,preds,gfn,id,kps,specs,cform,meta19593)); }); /** * Do not call this directly, use 'or' */ cljs.spec.alpha.or_spec_impl = (function cljs$spec$alpha$or_spec_impl(keys,forms__$1,preds,gfn){ var id = cljs.core.random_uuid(); var kps = cljs.core.zipmap(keys,preds); var specs = (new cljs.core.Delay((function (){ return cljs.core.mapv.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.specize,preds,forms__$1); }),null)); var cform = (function (){var G__19578 = cljs.core.count(preds); switch (G__19578) { case (2): return (function (x){ var specs__$1 = cljs.core.deref(specs); var ret = cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((0)) : specs__$1.call(null,(0))),x); if(cljs.spec.alpha.invalid_QMARK_(ret)){ var ret__$1 = cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((1)) : specs__$1.call(null,(1))),x); if(cljs.spec.alpha.invalid_QMARK_(ret__$1)){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { return cljs.spec.alpha.tagged_ret((keys.cljs$core$IFn$_invoke$arity$1 ? keys.cljs$core$IFn$_invoke$arity$1((1)) : keys.call(null,(1))),ret__$1); } } else { return cljs.spec.alpha.tagged_ret((keys.cljs$core$IFn$_invoke$arity$1 ? keys.cljs$core$IFn$_invoke$arity$1((0)) : keys.call(null,(0))),ret); } }); break; case (3): return (function (x){ var specs__$1 = cljs.core.deref(specs); var ret = cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((0)) : specs__$1.call(null,(0))),x); if(cljs.spec.alpha.invalid_QMARK_(ret)){ var ret__$1 = cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((1)) : specs__$1.call(null,(1))),x); if(cljs.spec.alpha.invalid_QMARK_(ret__$1)){ var ret__$2 = cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((2)) : specs__$1.call(null,(2))),x); if(cljs.spec.alpha.invalid_QMARK_(ret__$2)){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { return cljs.spec.alpha.tagged_ret((keys.cljs$core$IFn$_invoke$arity$1 ? keys.cljs$core$IFn$_invoke$arity$1((2)) : keys.call(null,(2))),ret__$2); } } else { return cljs.spec.alpha.tagged_ret((keys.cljs$core$IFn$_invoke$arity$1 ? keys.cljs$core$IFn$_invoke$arity$1((1)) : keys.call(null,(1))),ret__$1); } } else { return cljs.spec.alpha.tagged_ret((keys.cljs$core$IFn$_invoke$arity$1 ? keys.cljs$core$IFn$_invoke$arity$1((0)) : keys.call(null,(0))),ret); } }); break; default: return (function (x){ var specs__$1 = cljs.core.deref(specs); var i = (0); while(true){ if((i < cljs.core.count(specs__$1))){ var spec = (specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1(i) : specs__$1.call(null,i)); var ret = cljs.spec.alpha.conform_STAR_(spec,x); if(cljs.spec.alpha.invalid_QMARK_(ret)){ var G__20638 = (i + (1)); i = G__20638; continue; } else { return cljs.spec.alpha.tagged_ret((keys.cljs$core$IFn$_invoke$arity$1 ? keys.cljs$core$IFn$_invoke$arity$1(i) : keys.call(null,i)),ret); } } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } break; } }); } })(); return (new cljs.spec.alpha.t_cljs$spec$alpha19592(keys,forms__$1,preds,gfn,id,kps,specs,cform,cljs.core.PersistentArrayMap.EMPTY)); }); cljs.spec.alpha.and_preds = (function cljs$spec$alpha$and_preds(x,preds,forms__$1){ var ret = x; var G__19614 = preds; var vec__19616 = G__19614; var seq__19617 = cljs.core.seq(vec__19616); var first__19618 = cljs.core.first(seq__19617); var seq__19617__$1 = cljs.core.next(seq__19617); var pred = first__19618; var preds__$1 = seq__19617__$1; var G__19615 = forms__$1; var vec__19619 = G__19615; var seq__19620 = cljs.core.seq(vec__19619); var first__19621 = cljs.core.first(seq__19620); var seq__19620__$1 = cljs.core.next(seq__19620); var form = first__19621; var forms__$2 = seq__19620__$1; var ret__$1 = ret; var G__19614__$1 = G__19614; var G__19615__$1 = G__19615; while(true){ var ret__$2 = ret__$1; var vec__19622 = G__19614__$1; var seq__19623 = cljs.core.seq(vec__19622); var first__19624 = cljs.core.first(seq__19623); var seq__19623__$1 = cljs.core.next(seq__19623); var pred__$1 = first__19624; var preds__$2 = seq__19623__$1; var vec__19625 = G__19615__$1; var seq__19626 = cljs.core.seq(vec__19625); var first__19627 = cljs.core.first(seq__19626); var seq__19626__$1 = cljs.core.next(seq__19626); var form__$1 = first__19627; var forms__$3 = seq__19626__$1; if(cljs.core.truth_(pred__$1)){ var nret = cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(pred__$1,ret__$2,form__$1); if(cljs.spec.alpha.invalid_QMARK_(nret)){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { var G__20639 = nret; var G__20640 = preds__$2; var G__20641 = forms__$3; ret__$1 = G__20639; G__19614__$1 = G__20640; G__19615__$1 = G__20641; continue; } } else { return ret__$2; } break; } }); cljs.spec.alpha.explain_pred_list = (function cljs$spec$alpha$explain_pred_list(forms__$1,preds,path,via,in$,x){ var ret = x; var G__19634 = forms__$1; var vec__19636 = G__19634; var seq__19637 = cljs.core.seq(vec__19636); var first__19638 = cljs.core.first(seq__19637); var seq__19637__$1 = cljs.core.next(seq__19637); var form = first__19638; var forms__$2 = seq__19637__$1; var G__19635 = preds; var vec__19639 = G__19635; var seq__19640 = cljs.core.seq(vec__19639); var first__19641 = cljs.core.first(seq__19640); var seq__19640__$1 = cljs.core.next(seq__19640); var pred = first__19641; var preds__$1 = seq__19640__$1; var ret__$1 = ret; var G__19634__$1 = G__19634; var G__19635__$1 = G__19635; while(true){ var ret__$2 = ret__$1; var vec__19642 = G__19634__$1; var seq__19643 = cljs.core.seq(vec__19642); var first__19644 = cljs.core.first(seq__19643); var seq__19643__$1 = cljs.core.next(seq__19643); var form__$1 = first__19644; var forms__$3 = seq__19643__$1; var vec__19645 = G__19635__$1; var seq__19646 = cljs.core.seq(vec__19645); var first__19647 = cljs.core.first(seq__19646); var seq__19646__$1 = cljs.core.next(seq__19646); var pred__$1 = first__19647; var preds__$2 = seq__19646__$1; if(cljs.core.truth_(pred__$1)){ var nret = cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(pred__$1,ret__$2,form__$1); if(cljs.spec.alpha.invalid_QMARK_(nret)){ return cljs.spec.alpha.explain_1(form__$1,pred__$1,path,via,in$,ret__$2); } else { var G__20642 = nret; var G__20643 = forms__$3; var G__20644 = preds__$2; ret__$1 = G__20642; G__19634__$1 = G__20643; G__19635__$1 = G__20644; continue; } } else { return null; } break; } }); /** * @constructor * @implements {cljs.spec.alpha.Spec} * @implements {cljs.core.IMeta} * @implements {cljs.spec.alpha.Specize} * @implements {cljs.core.IWithMeta} */ cljs.spec.alpha.t_cljs$spec$alpha19654 = (function (forms,preds,gfn,specs,cform,meta19655){ this.forms = forms; this.preds = preds; this.gfn = gfn; this.specs = specs; this.cform = cform; this.meta19655 = meta19655; this.cljs$lang$protocol_mask$partition0$ = 393216; this.cljs$lang$protocol_mask$partition1$ = 0; }); (cljs.spec.alpha.t_cljs$spec$alpha19654.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_19656,meta19655__$1){ var self__ = this; var _19656__$1 = this; return (new cljs.spec.alpha.t_cljs$spec$alpha19654(self__.forms,self__.preds,self__.gfn,self__.specs,self__.cform,meta19655__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha19654.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_19656){ var self__ = this; var _19656__$1 = this; return self__.meta19655; })); (cljs.spec.alpha.t_cljs$spec$alpha19654.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19654.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19654.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19654.prototype.cljs$spec$alpha$Spec$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19654.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; return (self__.cform.cljs$core$IFn$_invoke$arity$1 ? self__.cform.cljs$core$IFn$_invoke$arity$1(x) : self__.cform.call(null,x)); })); (cljs.spec.alpha.t_cljs$spec$alpha19654.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__19649_SHARP_,p2__19648_SHARP_){ return cljs.spec.alpha.unform(p2__19648_SHARP_,p1__19649_SHARP_); }),x,cljs.core.reverse(self__.preds)); })); (cljs.spec.alpha.t_cljs$spec$alpha19654.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 = (function (_,path,via,in$,x){ var self__ = this; var ___$1 = this; return cljs.spec.alpha.explain_pred_list(self__.forms,self__.preds,path,via,in$,x); })); (cljs.spec.alpha.t_cljs$spec$alpha19654.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 = (function (_,overrides,path,rmap){ var self__ = this; var ___$1 = this; if(cljs.core.truth_(self__.gfn)){ return (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null)); } else { return cljs.spec.alpha.gensub(cljs.core.first(self__.preds),overrides,path,rmap,cljs.core.first(self__.forms)); } })); (cljs.spec.alpha.t_cljs$spec$alpha19654.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 = (function (_,gfn__$1){ var self__ = this; var ___$1 = this; return (cljs.spec.alpha.and_spec_impl.cljs$core$IFn$_invoke$arity$3 ? cljs.spec.alpha.and_spec_impl.cljs$core$IFn$_invoke$arity$3(self__.forms,self__.preds,gfn__$1) : cljs.spec.alpha.and_spec_impl.call(null,self__.forms,self__.preds,gfn__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha19654.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 = (function (_){ var self__ = this; var ___$1 = this; return cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.spec.alpha","and","cljs.spec.alpha/and",-2060279705,null),null,(1),null)),self__.forms))); })); (cljs.spec.alpha.t_cljs$spec$alpha19654.getBasis = (function (){ return new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"forms","forms",-608443419,null),new cljs.core.Symbol(null,"preds","preds",150921777,null),new cljs.core.Symbol(null,"gfn","gfn",-1862918295,null),new cljs.core.Symbol(null,"specs","specs",-1227865028,null),new cljs.core.Symbol(null,"cform","cform",1319506748,null),new cljs.core.Symbol(null,"meta19655","meta19655",-1833263497,null)], null); })); (cljs.spec.alpha.t_cljs$spec$alpha19654.cljs$lang$type = true); (cljs.spec.alpha.t_cljs$spec$alpha19654.cljs$lang$ctorStr = "cljs.spec.alpha/t_cljs$spec$alpha19654"); (cljs.spec.alpha.t_cljs$spec$alpha19654.cljs$lang$ctorPrWriter = (function (this__5330__auto__,writer__5331__auto__,opt__5332__auto__){ return cljs.core._write(writer__5331__auto__,"cljs.spec.alpha/t_cljs$spec$alpha19654"); })); /** * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha19654. */ cljs.spec.alpha.__GT_t_cljs$spec$alpha19654 = (function cljs$spec$alpha$__GT_t_cljs$spec$alpha19654(forms__$1,preds,gfn,specs,cform,meta19655){ return (new cljs.spec.alpha.t_cljs$spec$alpha19654(forms__$1,preds,gfn,specs,cform,meta19655)); }); /** * Do not call this directly, use 'and' */ cljs.spec.alpha.and_spec_impl = (function cljs$spec$alpha$and_spec_impl(forms__$1,preds,gfn){ var specs = (new cljs.core.Delay((function (){ return cljs.core.mapv.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.specize,preds,forms__$1); }),null)); var cform = (function (){var G__19650 = cljs.core.count(preds); switch (G__19650) { case (2): return (function (x){ var specs__$1 = cljs.core.deref(specs); var ret = cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((0)) : specs__$1.call(null,(0))),x); if(cljs.spec.alpha.invalid_QMARK_(ret)){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { return cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((1)) : specs__$1.call(null,(1))),ret); } }); break; case (3): return (function (x){ var specs__$1 = cljs.core.deref(specs); var ret = cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((0)) : specs__$1.call(null,(0))),x); if(cljs.spec.alpha.invalid_QMARK_(ret)){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { var ret__$1 = cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((1)) : specs__$1.call(null,(1))),ret); if(cljs.spec.alpha.invalid_QMARK_(ret__$1)){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { return cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((2)) : specs__$1.call(null,(2))),ret__$1); } } }); break; default: return (function (x){ var specs__$1 = cljs.core.deref(specs); var ret = x; var i = (0); while(true){ if((i < cljs.core.count(specs__$1))){ var nret = cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1(i) : specs__$1.call(null,i)),ret); if(cljs.spec.alpha.invalid_QMARK_(nret)){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { var G__20659 = nret; var G__20660 = (i + (1)); ret = G__20659; i = G__20660; continue; } } else { return ret; } break; } }); } })(); return (new cljs.spec.alpha.t_cljs$spec$alpha19654(forms__$1,preds,gfn,specs,cform,cljs.core.PersistentArrayMap.EMPTY)); }); cljs.spec.alpha.coll_prob = (function cljs$spec$alpha$coll_prob(x,kfn,kform,distinct,count,min_count,max_count,path,via,in$){ var pred = (function (){var or__5045__auto__ = kfn; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return cljs.core.coll_QMARK_; } })(); var kform__$1 = (function (){var or__5045__auto__ = kform; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return new cljs.core.Symbol("cljs.core","coll?","cljs.core/coll?",1208130522,null); } })(); if((!(cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(pred,x)))){ return cljs.spec.alpha.explain_1(kform__$1,pred,path,via,in$,x); } else { if(cljs.core.truth_((function (){var and__5043__auto__ = count; if(cljs.core.truth_(and__5043__auto__)){ return cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(count,cljs.core.bounded_count(count,x)); } else { return and__5043__auto__; } })())){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"pred","pred",1927423397),cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","=","cljs.core/=",-1891498332,null),null,(1),null)),(new cljs.core.List(null,count,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","count","cljs.core/count",-921270233,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,"%","%",-950237169,null),null,(1),null))))),null,(1),null))], 0)))),new cljs.core.Keyword(null,"val","val",128701612),x,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); } else { if(cljs.core.truth_((function (){var and__5043__auto__ = (function (){var or__5045__auto__ = min_count; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return max_count; } })(); if(cljs.core.truth_(and__5043__auto__)){ return (!(((((function (){var or__5045__auto__ = min_count; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return (0); } })() <= cljs.core.bounded_count((cljs.core.truth_(max_count)?(max_count + (1)):min_count),x))) && ((cljs.core.bounded_count((cljs.core.truth_(max_count)?(max_count + (1)):min_count),x) <= (function (){var or__5045__auto__ = max_count; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return (9007199254740991); } })()))))); } else { return and__5043__auto__; } })())){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"pred","pred",1927423397),cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","<=","cljs.core/<=",1677001748,null),null,(1),null)),(new cljs.core.List(null,(function (){var or__5045__auto__ = min_count; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return (0); } })(),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","count","cljs.core/count",-921270233,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,"%","%",-950237169,null),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,(function (){var or__5045__auto__ = max_count; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return (9007199254740991); } })(),null,(1),null))], 0)))),new cljs.core.Keyword(null,"val","val",128701612),x,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); } else { if(cljs.core.truth_((function (){var and__5043__auto__ = distinct; if(cljs.core.truth_(and__5043__auto__)){ return (((!(cljs.core.empty_QMARK_(x)))) && (cljs.core.not(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.distinct_QMARK_,x)))); } else { return and__5043__auto__; } })())){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"pred","pred",1927423397),new cljs.core.Symbol(null,"distinct?","distinct?",-1684357959,null),new cljs.core.Keyword(null,"val","val",128701612),x,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); } else { return null; } } } } }); /** * @constructor * @implements {cljs.spec.alpha.Spec} * @implements {cljs.core.IMeta} * @implements {cljs.spec.alpha.Specize} * @implements {cljs.core.IWithMeta} */ cljs.spec.alpha.t_cljs$spec$alpha19671 = (function (forms,preds,gfn,meta19672){ this.forms = forms; this.preds = preds; this.gfn = gfn; this.meta19672 = meta19672; this.cljs$lang$protocol_mask$partition0$ = 393216; this.cljs$lang$protocol_mask$partition1$ = 0; }); (cljs.spec.alpha.t_cljs$spec$alpha19671.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_19673,meta19672__$1){ var self__ = this; var _19673__$1 = this; return (new cljs.spec.alpha.t_cljs$spec$alpha19671(self__.forms,self__.preds,self__.gfn,meta19672__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha19671.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_19673){ var self__ = this; var _19673__$1 = this; return self__.meta19672; })); (cljs.spec.alpha.t_cljs$spec$alpha19671.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19671.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19671.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19671.prototype.cljs$spec$alpha$Spec$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19671.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; var ms = cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (p1__19663_SHARP_,p2__19664_SHARP_){ return cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(p1__19663_SHARP_,x,p2__19664_SHARP_); }),self__.preds,self__.forms); if(cljs.core.truth_(cljs.core.some(cljs.spec.alpha.invalid_QMARK_,ms))){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.merge,ms); } })); (cljs.spec.alpha.t_cljs$spec$alpha19671.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.merge,cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__19665_SHARP_){ return cljs.spec.alpha.unform(p1__19665_SHARP_,x); }),cljs.core.reverse(self__.preds))); })); (cljs.spec.alpha.t_cljs$spec$alpha19671.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 = (function (_,path,via,in$,x){ var self__ = this; var ___$1 = this; return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (p1__19666_SHARP_,p2__19667_SHARP_){ return cljs.spec.alpha.explain_1(p1__19666_SHARP_,p2__19667_SHARP_,path,via,in$,x); }),self__.forms,self__.preds)); })); (cljs.spec.alpha.t_cljs$spec$alpha19671.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 = (function (_,overrides,path,rmap){ var self__ = this; var ___$1 = this; if(cljs.core.truth_(self__.gfn)){ return (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null)); } else { return cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__19668_SHARP_){ return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.merge,p1__19668_SHARP_); }),cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.tuple,cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (p1__19669_SHARP_,p2__19670_SHARP_){ return cljs.spec.alpha.gensub(p1__19669_SHARP_,overrides,path,rmap,p2__19670_SHARP_); }),self__.preds,self__.forms))], 0)); } })); (cljs.spec.alpha.t_cljs$spec$alpha19671.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 = (function (_,gfn__$1){ var self__ = this; var ___$1 = this; return (cljs.spec.alpha.merge_spec_impl.cljs$core$IFn$_invoke$arity$3 ? cljs.spec.alpha.merge_spec_impl.cljs$core$IFn$_invoke$arity$3(self__.forms,self__.preds,gfn__$1) : cljs.spec.alpha.merge_spec_impl.call(null,self__.forms,self__.preds,gfn__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha19671.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 = (function (_){ var self__ = this; var ___$1 = this; return cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.spec.alpha","merge","cljs.spec.alpha/merge",1420080689,null),null,(1),null)),self__.forms))); })); (cljs.spec.alpha.t_cljs$spec$alpha19671.getBasis = (function (){ return new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"forms","forms",-608443419,null),new cljs.core.Symbol(null,"preds","preds",150921777,null),new cljs.core.Symbol(null,"gfn","gfn",-1862918295,null),new cljs.core.Symbol(null,"meta19672","meta19672",-412949118,null)], null); })); (cljs.spec.alpha.t_cljs$spec$alpha19671.cljs$lang$type = true); (cljs.spec.alpha.t_cljs$spec$alpha19671.cljs$lang$ctorStr = "cljs.spec.alpha/t_cljs$spec$alpha19671"); (cljs.spec.alpha.t_cljs$spec$alpha19671.cljs$lang$ctorPrWriter = (function (this__5330__auto__,writer__5331__auto__,opt__5332__auto__){ return cljs.core._write(writer__5331__auto__,"cljs.spec.alpha/t_cljs$spec$alpha19671"); })); /** * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha19671. */ cljs.spec.alpha.__GT_t_cljs$spec$alpha19671 = (function cljs$spec$alpha$__GT_t_cljs$spec$alpha19671(forms__$1,preds,gfn,meta19672){ return (new cljs.spec.alpha.t_cljs$spec$alpha19671(forms__$1,preds,gfn,meta19672)); }); /** * Do not call this directly, use 'merge' */ cljs.spec.alpha.merge_spec_impl = (function cljs$spec$alpha$merge_spec_impl(forms__$1,preds,gfn){ return (new cljs.spec.alpha.t_cljs$spec$alpha19671(forms__$1,preds,gfn,cljs.core.PersistentArrayMap.EMPTY)); }); cljs.spec.alpha.empty_coll = new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Symbol("cljs.core","vector?","cljs.core/vector?",-1550392028,null),cljs.core.PersistentVector.EMPTY,new cljs.core.Symbol("cljs.core","set?","cljs.core/set?",-1176684971,null),cljs.core.PersistentHashSet.EMPTY,new cljs.core.Symbol("cljs.core","list?","cljs.core/list?",-684796618,null),cljs.core.List.EMPTY,new cljs.core.Symbol("cljs.core","map?","cljs.core/map?",-1390345523,null),cljs.core.PersistentArrayMap.EMPTY], null); /** * @constructor * @implements {cljs.spec.alpha.Spec} * @implements {cljs.core.IMeta} * @implements {cljs.spec.alpha.Specize} * @implements {cljs.core.IWithMeta} */ cljs.spec.alpha.t_cljs$spec$alpha19707 = (function (form,max_count,check_QMARK_,map__19703,gfn,gen_max,pred,cpred,conform_keys,kind_form,addcv,cfns,describe_form,distinct,p__19702,spec,kfn,gen_into,count,min_count,opts,kind,conform_all,conform_into,meta19708){ this.form = form; this.max_count = max_count; this.check_QMARK_ = check_QMARK_; this.map__19703 = map__19703; this.gfn = gfn; this.gen_max = gen_max; this.pred = pred; this.cpred = cpred; this.conform_keys = conform_keys; this.kind_form = kind_form; this.addcv = addcv; this.cfns = cfns; this.describe_form = describe_form; this.distinct = distinct; this.p__19702 = p__19702; this.spec = spec; this.kfn = kfn; this.gen_into = gen_into; this.count = count; this.min_count = min_count; this.opts = opts; this.kind = kind; this.conform_all = conform_all; this.conform_into = conform_into; this.meta19708 = meta19708; this.cljs$lang$protocol_mask$partition0$ = 393216; this.cljs$lang$protocol_mask$partition1$ = 0; }); (cljs.spec.alpha.t_cljs$spec$alpha19707.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_19709,meta19708__$1){ var self__ = this; var _19709__$1 = this; return (new cljs.spec.alpha.t_cljs$spec$alpha19707(self__.form,self__.max_count,self__.check_QMARK_,self__.map__19703,self__.gfn,self__.gen_max,self__.pred,self__.cpred,self__.conform_keys,self__.kind_form,self__.addcv,self__.cfns,self__.describe_form,self__.distinct,self__.p__19702,self__.spec,self__.kfn,self__.gen_into,self__.count,self__.min_count,self__.opts,self__.kind,self__.conform_all,self__.conform_into,meta19708__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha19707.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_19709){ var self__ = this; var _19709__$1 = this; return self__.meta19708; })); (cljs.spec.alpha.t_cljs$spec$alpha19707.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19707.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19707.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha19707.prototype.cljs$spec$alpha$Spec$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha19707.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; var spec__$1 = cljs.core.deref(self__.spec); if(cljs.core.not((self__.cpred.cljs$core$IFn$_invoke$arity$1 ? self__.cpred.cljs$core$IFn$_invoke$arity$1(x) : self__.cpred.call(null,x)))){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { if(cljs.core.truth_(self__.conform_all)){ var vec__19713 = (self__.cfns.cljs$core$IFn$_invoke$arity$1 ? self__.cfns.cljs$core$IFn$_invoke$arity$1(x) : self__.cfns.call(null,x)); var init = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19713,(0),null); var add = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19713,(1),null); var complete = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19713,(2),null); var ret = (init.cljs$core$IFn$_invoke$arity$1 ? init.cljs$core$IFn$_invoke$arity$1(x) : init.call(null,x)); var i = (0); var G__19719 = cljs.core.seq(x); var vec__19720 = G__19719; var seq__19721 = cljs.core.seq(vec__19720); var first__19722 = cljs.core.first(seq__19721); var seq__19721__$1 = cljs.core.next(seq__19721); var v = first__19722; var vs = seq__19721__$1; var vseq = vec__19720; var ret__$1 = ret; var i__$1 = i; var G__19719__$1 = G__19719; while(true){ var ret__$2 = ret__$1; var i__$2 = i__$1; var vec__19723 = G__19719__$1; var seq__19724 = cljs.core.seq(vec__19723); var first__19725 = cljs.core.first(seq__19724); var seq__19724__$1 = cljs.core.next(seq__19724); var v__$1 = first__19725; var vs__$1 = seq__19724__$1; var vseq__$1 = vec__19723; if(vseq__$1){ var cv = cljs.spec.alpha.conform_STAR_(spec__$1,v__$1); if(cljs.spec.alpha.invalid_QMARK_(cv)){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { var G__20686 = (add.cljs$core$IFn$_invoke$arity$4 ? add.cljs$core$IFn$_invoke$arity$4(ret__$2,i__$2,v__$1,cv) : add.call(null,ret__$2,i__$2,v__$1,cv)); var G__20687 = (i__$2 + (1)); var G__20688 = vs__$1; ret__$1 = G__20686; i__$1 = G__20687; G__19719__$1 = G__20688; continue; } } else { return (complete.cljs$core$IFn$_invoke$arity$1 ? complete.cljs$core$IFn$_invoke$arity$1(ret__$2) : complete.call(null,ret__$2)); } break; } } else { if(cljs.core.indexed_QMARK_(x)){ var step = (function (){var x__5130__auto__ = (1); var y__5131__auto__ = cljs.core.long$((cljs.core.count(x) / cljs.spec.alpha._STAR_coll_check_limit_STAR_)); return ((x__5130__auto__ > y__5131__auto__) ? x__5130__auto__ : y__5131__auto__); })(); var i = (0); while(true){ if((i >= cljs.core.count(x))){ return x; } else { if(cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2(spec__$1,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(x,i))){ var G__20689 = (i + step); i = G__20689; continue; } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } } break; } } else { var limit = cljs.spec.alpha._STAR_coll_check_limit_STAR_; var i = (0); var G__19732 = cljs.core.seq(x); var vec__19733 = G__19732; var seq__19734 = cljs.core.seq(vec__19733); var first__19735 = cljs.core.first(seq__19734); var seq__19734__$1 = cljs.core.next(seq__19734); var v = first__19735; var vs = seq__19734__$1; var vseq = vec__19733; var i__$1 = i; var G__19732__$1 = G__19732; while(true){ var i__$2 = i__$1; var vec__19736 = G__19732__$1; var seq__19737 = cljs.core.seq(vec__19736); var first__19738 = cljs.core.first(seq__19737); var seq__19737__$1 = cljs.core.next(seq__19737); var v__$1 = first__19738; var vs__$1 = seq__19737__$1; var vseq__$1 = vec__19736; if((((vseq__$1 == null)) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(i__$2,limit)))){ return x; } else { if(cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2(spec__$1,v__$1)){ var G__20690 = (i__$2 + (1)); var G__20691 = vs__$1; i__$1 = G__20690; G__19732__$1 = G__20691; continue; } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } } break; } } } } })); (cljs.spec.alpha.t_cljs$spec$alpha19707.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; if(cljs.core.truth_(self__.conform_all)){ var spec__$1 = cljs.core.deref(self__.spec); var vec__19739 = (self__.cfns.cljs$core$IFn$_invoke$arity$1 ? self__.cfns.cljs$core$IFn$_invoke$arity$1(x) : self__.cfns.call(null,x)); var init = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19739,(0),null); var add = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19739,(1),null); var complete = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19739,(2),null); var ret = (init.cljs$core$IFn$_invoke$arity$1 ? init.cljs$core$IFn$_invoke$arity$1(x) : init.call(null,x)); var i = (0); var G__19745 = cljs.core.seq(x); var vec__19746 = G__19745; var seq__19747 = cljs.core.seq(vec__19746); var first__19748 = cljs.core.first(seq__19747); var seq__19747__$1 = cljs.core.next(seq__19747); var v = first__19748; var vs = seq__19747__$1; var vseq = vec__19746; var ret__$1 = ret; var i__$1 = i; var G__19745__$1 = G__19745; while(true){ var ret__$2 = ret__$1; var i__$2 = i__$1; var vec__19749 = G__19745__$1; var seq__19750 = cljs.core.seq(vec__19749); var first__19751 = cljs.core.first(seq__19750); var seq__19750__$1 = cljs.core.next(seq__19750); var v__$1 = first__19751; var vs__$1 = seq__19750__$1; var vseq__$1 = vec__19749; if((i__$2 >= cljs.core.count(x))){ return (complete.cljs$core$IFn$_invoke$arity$1 ? complete.cljs$core$IFn$_invoke$arity$1(ret__$2) : complete.call(null,ret__$2)); } else { var G__20692 = (function (){var G__19752 = ret__$2; var G__19753 = i__$2; var G__19754 = v__$1; var G__19755 = cljs.spec.alpha.unform_STAR_(spec__$1,v__$1); return (add.cljs$core$IFn$_invoke$arity$4 ? add.cljs$core$IFn$_invoke$arity$4(G__19752,G__19753,G__19754,G__19755) : add.call(null,G__19752,G__19753,G__19754,G__19755)); })(); var G__20693 = (i__$2 + (1)); var G__20694 = vs__$1; ret__$1 = G__20692; i__$1 = G__20693; G__19745__$1 = G__20694; continue; } break; } } else { return x; } })); (cljs.spec.alpha.t_cljs$spec$alpha19707.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 = (function (_,path,via,in$,x){ var self__ = this; var ___$1 = this; var or__5045__auto__ = cljs.spec.alpha.coll_prob(x,self__.kind,self__.kind_form,self__.distinct,self__.count,self__.min_count,self__.max_count,path,via,in$); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,(function (){var G__19757 = cljs.core.keep.cljs$core$IFn$_invoke$arity$2(cljs.core.identity,cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (i,v){ var k = (self__.kfn.cljs$core$IFn$_invoke$arity$2 ? self__.kfn.cljs$core$IFn$_invoke$arity$2(i,v) : self__.kfn.call(null,i,v)); if(cljs.core.truth_((self__.check_QMARK_.cljs$core$IFn$_invoke$arity$1 ? self__.check_QMARK_.cljs$core$IFn$_invoke$arity$1(v) : self__.check_QMARK_.call(null,v)))){ return null; } else { var prob = cljs.spec.alpha.explain_1(self__.form,self__.pred,path,via,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,k),v); return prob; } }),cljs.core.range.cljs$core$IFn$_invoke$arity$0(),x)); var fexpr__19756 = (cljs.core.truth_(self__.conform_all)?cljs.core.identity:cljs.core.partial.cljs$core$IFn$_invoke$arity$2(cljs.core.take,cljs.spec.alpha._STAR_coll_error_limit_STAR_)); return (fexpr__19756.cljs$core$IFn$_invoke$arity$1 ? fexpr__19756.cljs$core$IFn$_invoke$arity$1(G__19757) : fexpr__19756.call(null,G__19757)); })()); } })); (cljs.spec.alpha.t_cljs$spec$alpha19707.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 = (function (_,overrides,path,rmap){ var self__ = this; var ___$1 = this; if(cljs.core.truth_(self__.gfn)){ return (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null)); } else { var pgen = cljs.spec.alpha.gensub(self__.pred,overrides,path,rmap,self__.form); return cljs.spec.gen.alpha.bind.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(cljs.core.truth_(self__.gen_into)?cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.gen_into], 0)):(cljs.core.truth_(self__.kind)?cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__19692_SHARP_){ if(cljs.core.empty_QMARK_(p1__19692_SHARP_)){ return p1__19692_SHARP_; } else { return cljs.core.empty(p1__19692_SHARP_); } }),cljs.spec.alpha.gensub(self__.kind,overrides,path,rmap,self__.form)], 0)):cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.PersistentVector.EMPTY], 0)) )),(function (init){ return cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__19693_SHARP_){ if(cljs.core.vector_QMARK_(init)){ return p1__19693_SHARP_; } else { return cljs.core.into.cljs$core$IFn$_invoke$arity$2(init,p1__19693_SHARP_); } }),(cljs.core.truth_(self__.distinct)?(cljs.core.truth_(self__.count)?cljs.spec.gen.alpha.vector_distinct.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([pgen,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"num-elements","num-elements",1960422107),self__.count,new cljs.core.Keyword(null,"max-tries","max-tries",-1824441792),(100)], null)], 0)):cljs.spec.gen.alpha.vector_distinct.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([pgen,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"min-elements","min-elements",949370780),(function (){var or__5045__auto__ = self__.min_count; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return (0); } })(),new cljs.core.Keyword(null,"max-elements","max-elements",433034073),(function (){var or__5045__auto__ = self__.max_count; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { var x__5130__auto__ = self__.gen_max; var y__5131__auto__ = ((2) * (function (){var or__5045__auto____$1 = self__.min_count; if(cljs.core.truth_(or__5045__auto____$1)){ return or__5045__auto____$1; } else { return (0); } })()); return ((x__5130__auto__ > y__5131__auto__) ? x__5130__auto__ : y__5131__auto__); } })(),new cljs.core.Keyword(null,"max-tries","max-tries",-1824441792),(100)], null)], 0))):(cljs.core.truth_(self__.count)?cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([pgen,self__.count], 0)):(cljs.core.truth_((function (){var or__5045__auto__ = self__.min_count; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return self__.max_count; } })())?cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([pgen,(function (){var or__5045__auto__ = self__.min_count; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return (0); } })(),(function (){var or__5045__auto__ = self__.max_count; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { var x__5130__auto__ = self__.gen_max; var y__5131__auto__ = ((2) * (function (){var or__5045__auto____$1 = self__.min_count; if(cljs.core.truth_(or__5045__auto____$1)){ return or__5045__auto____$1; } else { return (0); } })()); return ((x__5130__auto__ > y__5131__auto__) ? x__5130__auto__ : y__5131__auto__); } })()], 0)):cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([pgen,(0),self__.gen_max], 0)) )))], 0)); })], 0)); } })); (cljs.spec.alpha.t_cljs$spec$alpha19707.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 = (function (_,gfn__$1){ var self__ = this; var ___$1 = this; return cljs.spec.alpha.every_impl.cljs$core$IFn$_invoke$arity$4(self__.form,self__.pred,self__.opts,gfn__$1); })); (cljs.spec.alpha.t_cljs$spec$alpha19707.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 = (function (_){ var self__ = this; var ___$1 = this; var or__5045__auto__ = self__.describe_form; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.spec.alpha","every","cljs.spec.alpha/every",123912744,null),null,(1),null)),(new cljs.core.List(null,self__.form,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic(cljs.core.identity,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.opts], 0))], 0)))); } })); (cljs.spec.alpha.t_cljs$spec$alpha19707.getBasis = (function (){ return new cljs.core.PersistentVector(null, 25, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"form","form",16469056,null),new cljs.core.Symbol(null,"max-count","max-count",-1115250464,null),new cljs.core.Symbol(null,"check?","check?",409539557,null),new cljs.core.Symbol(null,"map__19703","map__19703",1746653351,null),new cljs.core.Symbol(null,"gfn","gfn",-1862918295,null),new cljs.core.Symbol(null,"gen-max","gen-max",846851082,null),new cljs.core.Symbol(null,"pred","pred",-727012372,null),new cljs.core.Symbol(null,"cpred","cpred",-540353554,null),new cljs.core.Symbol(null,"conform-keys","conform-keys",-159510287,null),new cljs.core.Symbol(null,"kind-form","kind-form",1155997457,null),new cljs.core.Symbol(null,"addcv","addcv",-1552991247,null),new cljs.core.Symbol(null,"cfns","cfns",1335482066,null),new cljs.core.Symbol(null,"describe-form","describe-form",-1410156588,null),new cljs.core.Symbol(null,"distinct","distinct",-148347594,null),new cljs.core.Symbol(null,"p__19702","p__19702",6193816,null),new cljs.core.Symbol(null,"spec","spec",1988051928,null),new cljs.core.Symbol(null,"kfn","kfn",729311001,null),new cljs.core.Symbol(null,"gen-into","gen-into",592640985,null),new cljs.core.Symbol(null,"count","count",-514511684,null),new cljs.core.Symbol(null,"min-count","min-count",-1059726756,null),new cljs.core.Symbol(null,"opts","opts",1795607228,null),new cljs.core.Symbol(null,"kind","kind",923265724,null),new cljs.core.Symbol(null,"conform-all","conform-all",-980179459,null),new cljs.core.Symbol(null,"conform-into","conform-into",-1039113729,null),new cljs.core.Symbol(null,"meta19708","meta19708",-491449949,null)], null); })); (cljs.spec.alpha.t_cljs$spec$alpha19707.cljs$lang$type = true); (cljs.spec.alpha.t_cljs$spec$alpha19707.cljs$lang$ctorStr = "cljs.spec.alpha/t_cljs$spec$alpha19707"); (cljs.spec.alpha.t_cljs$spec$alpha19707.cljs$lang$ctorPrWriter = (function (this__5330__auto__,writer__5331__auto__,opt__5332__auto__){ return cljs.core._write(writer__5331__auto__,"cljs.spec.alpha/t_cljs$spec$alpha19707"); })); /** * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha19707. */ cljs.spec.alpha.__GT_t_cljs$spec$alpha19707 = (function cljs$spec$alpha$__GT_t_cljs$spec$alpha19707(form,max_count,check_QMARK_,map__19703,gfn,gen_max,pred,cpred,conform_keys,kind_form,addcv,cfns,describe_form,distinct,p__19702,spec,kfn,gen_into,count,min_count,opts,kind,conform_all,conform_into,meta19708){ return (new cljs.spec.alpha.t_cljs$spec$alpha19707(form,max_count,check_QMARK_,map__19703,gfn,gen_max,pred,cpred,conform_keys,kind_form,addcv,cfns,describe_form,distinct,p__19702,spec,kfn,gen_into,count,min_count,opts,kind,conform_all,conform_into,meta19708)); }); /** * Do not call this directly, use 'every', 'every-kv', 'coll-of' or 'map-of' */ cljs.spec.alpha.every_impl = (function cljs$spec$alpha$every_impl(var_args){ var G__19695 = arguments.length; switch (G__19695) { case 3: return cljs.spec.alpha.every_impl.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)])); break; case 4: return cljs.spec.alpha.every_impl.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.every_impl.cljs$core$IFn$_invoke$arity$3 = (function (form,pred,opts){ return cljs.spec.alpha.every_impl.cljs$core$IFn$_invoke$arity$4(form,pred,opts,null); })); (cljs.spec.alpha.every_impl.cljs$core$IFn$_invoke$arity$4 = (function (form,pred,p__19702,gfn){ var map__19703 = p__19702; var map__19703__$1 = cljs.core.__destructure_map(map__19703); var opts = map__19703__$1; var max_count = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19703__$1,new cljs.core.Keyword(null,"max-count","max-count",1539185305)); var kind_form = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19703__$1,new cljs.core.Keyword("cljs.spec.alpha","kind-form","cljs.spec.alpha/kind-form",-1047104697)); var gen_max = cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__19703__$1,new cljs.core.Keyword(null,"gen-max","gen-max",-793680445),(20)); var cpred = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19703__$1,new cljs.core.Keyword("cljs.spec.alpha","cpred","cljs.spec.alpha/cpred",-693471218)); var conform_keys = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19703__$1,new cljs.core.Keyword(null,"conform-keys","conform-keys",-1800041814)); var describe_form = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19703__$1,new cljs.core.Keyword("cljs.spec.alpha","describe","cljs.spec.alpha/describe",1883026911)); var distinct = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19703__$1,new cljs.core.Keyword(null,"distinct","distinct",-1788879121)); var kfn = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19703__$1,new cljs.core.Keyword("cljs.spec.alpha","kfn","cljs.spec.alpha/kfn",672643897)); var count = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19703__$1,new cljs.core.Keyword(null,"count","count",2139924085)); var min_count = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19703__$1,new cljs.core.Keyword(null,"min-count","min-count",1594709013)); var kind = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19703__$1,new cljs.core.Keyword(null,"kind","kind",-717265803)); var conform_all = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19703__$1,new cljs.core.Keyword("cljs.spec.alpha","conform-all","cljs.spec.alpha/conform-all",45201917)); var conform_into = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19703__$1,new cljs.core.Keyword(null,"into","into",-150836029)); var gen_into = (cljs.core.truth_(conform_into)?cljs.core.empty(conform_into):cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.spec.alpha.empty_coll,kind_form)); var spec = (new cljs.core.Delay((function (){ return cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(pred); }),null)); var check_QMARK_ = (function (p1__19687_SHARP_){ return cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(spec),p1__19687_SHARP_); }); var kfn__$1 = (function (){var or__5045__auto__ = kfn; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return (function (i,v){ return i; }); } })(); var addcv = (function (ret,i,v,cv){ return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,cv); }); var cfns = (function (x){ if(((cljs.core.vector_QMARK_(x)) && (((cljs.core.not(conform_into)) || (cljs.core.vector_QMARK_(conform_into)))))){ return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.identity,(function (ret,i,v,cv){ if((v === cv)){ return ret; } else { return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,i,cv); } }),cljs.core.identity], null); } else { if(cljs.core.truth_((function (){var and__5043__auto__ = cljs.core.map_QMARK_(x); if(and__5043__auto__){ var or__5045__auto__ = (function (){var and__5043__auto____$1 = kind; if(cljs.core.truth_(and__5043__auto____$1)){ return cljs.core.not(conform_into); } else { return and__5043__auto____$1; } })(); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return cljs.core.map_QMARK_(conform_into); } } else { return and__5043__auto__; } })())){ return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [(cljs.core.truth_(conform_keys)?cljs.core.empty:cljs.core.identity),(function (ret,i,v,cv){ if((((v === cv)) && (cljs.core.not(conform_keys)))){ return ret; } else { return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,cljs.core.nth.cljs$core$IFn$_invoke$arity$2((cljs.core.truth_(conform_keys)?cv:v),(0)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cv,(1))); } }),cljs.core.identity], null); } else { if(((cljs.core.list_QMARK_(conform_into)) || (((cljs.core.seq_QMARK_(conform_into)) || (((cljs.core.not(conform_into)) && (((cljs.core.list_QMARK_(x)) || (cljs.core.seq_QMARK_(x)))))))))){ return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.empty,addcv,cljs.core.reverse], null); } else { return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [(function (p1__19688_SHARP_){ return cljs.core.empty((function (){var or__5045__auto__ = conform_into; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return p1__19688_SHARP_; } })()); }),addcv,cljs.core.identity], null); } } } }); return (new cljs.spec.alpha.t_cljs$spec$alpha19707(form,max_count,check_QMARK_,map__19703__$1,gfn,gen_max,pred,cpred,conform_keys,kind_form,addcv,cfns,describe_form,distinct,p__19702,spec,kfn__$1,gen_into,count,min_count,opts,kind,conform_all,conform_into,cljs.core.PersistentArrayMap.EMPTY)); })); (cljs.spec.alpha.every_impl.cljs$lang$maxFixedArity = 4); cljs.spec.alpha.accept = (function cljs$spec$alpha$accept(x){ return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252),new cljs.core.Keyword("cljs.spec.alpha","accept","cljs.spec.alpha/accept",370988198),new cljs.core.Keyword(null,"ret","ret",-468222814),x], null); }); cljs.spec.alpha.accept_QMARK_ = (function cljs$spec$alpha$accept_QMARK_(p__19786){ var map__19787 = p__19786; var map__19787__$1 = cljs.core.__destructure_map(map__19787); var op = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19787__$1,new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252)); return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","accept","cljs.spec.alpha/accept",370988198),op); }); cljs.spec.alpha.pcat_STAR_ = (function cljs$spec$alpha$pcat_STAR_(p__19788){ var map__19789 = p__19788; var map__19789__$1 = cljs.core.__destructure_map(map__19789); var vec__19790 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19789__$1,new cljs.core.Keyword(null,"ps","ps",292358046)); var seq__19791 = cljs.core.seq(vec__19790); var first__19792 = cljs.core.first(seq__19791); var seq__19791__$1 = cljs.core.next(seq__19791); var p1 = first__19792; var pr = seq__19791__$1; var ps = vec__19790; var vec__19793 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19789__$1,new cljs.core.Keyword(null,"ks","ks",1900203942)); var seq__19794 = cljs.core.seq(vec__19793); var first__19795 = cljs.core.first(seq__19794); var seq__19794__$1 = cljs.core.next(seq__19794); var k1 = first__19795; var kr = seq__19794__$1; var ks = vec__19793; var vec__19796 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19789__$1,new cljs.core.Keyword(null,"forms","forms",2045992350)); var seq__19797 = cljs.core.seq(vec__19796); var first__19798 = cljs.core.first(seq__19797); var seq__19797__$1 = cljs.core.next(seq__19797); var f1 = first__19798; var fr = seq__19797__$1; var forms__$1 = vec__19796; var ret = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19789__$1,new cljs.core.Keyword(null,"ret","ret",-468222814)); var rep_PLUS_ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19789__$1,new cljs.core.Keyword(null,"rep+","rep+",-281382396)); if(cljs.core.every_QMARK_(cljs.core.identity,ps)){ if(cljs.spec.alpha.accept_QMARK_(p1)){ var rp = new cljs.core.Keyword(null,"ret","ret",-468222814).cljs$core$IFn$_invoke$arity$1(p1); var ret__$1 = cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,(cljs.core.truth_(ks)?cljs.core.PersistentArrayMap.createAsIfByAssoc([k1,rp]):rp)); if(pr){ var G__19799 = new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"ps","ps",292358046),pr,new cljs.core.Keyword(null,"ks","ks",1900203942),kr,new cljs.core.Keyword(null,"forms","forms",2045992350),fr,new cljs.core.Keyword(null,"ret","ret",-468222814),ret__$1], null); return (cljs.spec.alpha.pcat_STAR_.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.pcat_STAR_.cljs$core$IFn$_invoke$arity$1(G__19799) : cljs.spec.alpha.pcat_STAR_.call(null,G__19799)); } else { return cljs.spec.alpha.accept(ret__$1); } } else { return new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252),new cljs.core.Keyword("cljs.spec.alpha","pcat","cljs.spec.alpha/pcat",26406623),new cljs.core.Keyword(null,"ps","ps",292358046),ps,new cljs.core.Keyword(null,"ret","ret",-468222814),ret,new cljs.core.Keyword(null,"ks","ks",1900203942),ks,new cljs.core.Keyword(null,"forms","forms",2045992350),forms__$1,new cljs.core.Keyword(null,"rep+","rep+",-281382396),rep_PLUS_], null); } } else { return null; } }); cljs.spec.alpha.pcat = (function cljs$spec$alpha$pcat(var_args){ var args__5775__auto__ = []; var len__5769__auto___20706 = arguments.length; var i__5770__auto___20707 = (0); while(true){ if((i__5770__auto___20707 < len__5769__auto___20706)){ args__5775__auto__.push((arguments[i__5770__auto___20707])); var G__20708 = (i__5770__auto___20707 + (1)); i__5770__auto___20707 = G__20708; continue; } else { } break; } var argseq__5776__auto__ = ((((0) < args__5775__auto__.length))?(new cljs.core.IndexedSeq(args__5775__auto__.slice((0)),(0),null)):null); return cljs.spec.alpha.pcat.cljs$core$IFn$_invoke$arity$variadic(argseq__5776__auto__); }); (cljs.spec.alpha.pcat.cljs$core$IFn$_invoke$arity$variadic = (function (ps){ return cljs.spec.alpha.pcat_STAR_(new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"ps","ps",292358046),ps,new cljs.core.Keyword(null,"ret","ret",-468222814),cljs.core.PersistentVector.EMPTY], null)); })); (cljs.spec.alpha.pcat.cljs$lang$maxFixedArity = (0)); /** @this {Function} */ (cljs.spec.alpha.pcat.cljs$lang$applyTo = (function (seq19800){ var self__5755__auto__ = this; return self__5755__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq19800)); })); /** * Do not call this directly, use 'cat' */ cljs.spec.alpha.cat_impl = (function cljs$spec$alpha$cat_impl(ks,ps,forms__$1){ return cljs.spec.alpha.pcat_STAR_(new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"ks","ks",1900203942),ks,new cljs.core.Keyword(null,"ps","ps",292358046),ps,new cljs.core.Keyword(null,"forms","forms",2045992350),forms__$1,new cljs.core.Keyword(null,"ret","ret",-468222814),cljs.core.PersistentArrayMap.EMPTY], null)); }); cljs.spec.alpha.rep_STAR_ = (function cljs$spec$alpha$rep_STAR_(p1,p2,ret,splice,form){ if(cljs.core.truth_(p1)){ var r = new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252),new cljs.core.Keyword("cljs.spec.alpha","rep","cljs.spec.alpha/rep",1483217317),new cljs.core.Keyword(null,"p2","p2",905500641),p2,new cljs.core.Keyword(null,"splice","splice",449588165),splice,new cljs.core.Keyword(null,"forms","forms",2045992350),form,new cljs.core.Keyword(null,"id","id",-1388402092),cljs.core.random_uuid()], null); if(cljs.spec.alpha.accept_QMARK_(p1)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(r,new cljs.core.Keyword(null,"p1","p1",-936759954),p2,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,"ret","ret",-468222814),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,new cljs.core.Keyword(null,"ret","ret",-468222814).cljs$core$IFn$_invoke$arity$1(p1))], 0)); } else { return cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(r,new cljs.core.Keyword(null,"p1","p1",-936759954),p1,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,"ret","ret",-468222814),ret], 0)); } } else { return null; } }); /** * Do not call this directly, use '*' */ cljs.spec.alpha.rep_impl = (function cljs$spec$alpha$rep_impl(form,p){ return cljs.spec.alpha.rep_STAR_(p,p,cljs.core.PersistentVector.EMPTY,false,form); }); /** * Do not call this directly, use '+' */ cljs.spec.alpha.rep_PLUS_impl = (function cljs$spec$alpha$rep_PLUS_impl(form,p){ return cljs.spec.alpha.pcat_STAR_(new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"ps","ps",292358046),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [p,cljs.spec.alpha.rep_STAR_(p,p,cljs.core.PersistentVector.EMPTY,true,form)], null),new cljs.core.Keyword(null,"forms","forms",2045992350),cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,form,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.spec.alpha","*","cljs.spec.alpha/*",-1238084288,null),null,(1),null)),(new cljs.core.List(null,form,null,(1),null))))),null,(1),null)))))),new cljs.core.Keyword(null,"ret","ret",-468222814),cljs.core.PersistentVector.EMPTY,new cljs.core.Keyword(null,"rep+","rep+",-281382396),form], null)); }); /** * Do not call this directly, use '&' */ cljs.spec.alpha.amp_impl = (function cljs$spec$alpha$amp_impl(re,re_form,preds,pred_forms){ return new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252),new cljs.core.Keyword("cljs.spec.alpha","amp","cljs.spec.alpha/amp",831147508),new cljs.core.Keyword(null,"p1","p1",-936759954),re,new cljs.core.Keyword(null,"amp","amp",271690571),re_form,new cljs.core.Keyword(null,"ps","ps",292358046),preds,new cljs.core.Keyword(null,"forms","forms",2045992350),pred_forms], null); }); cljs.spec.alpha.filter_alt = (function cljs$spec$alpha$filter_alt(ps,ks,forms__$1,f){ if(cljs.core.truth_((function (){var or__5045__auto__ = ks; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return forms__$1; } })())){ var pks = cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__19816_SHARP_){ var G__19818 = cljs.core.first(p1__19816_SHARP_); return (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__19818) : f.call(null,G__19818)); }),cljs.core.map.cljs$core$IFn$_invoke$arity$4(cljs.core.vector,ps,(function (){var or__5045__auto__ = cljs.core.seq(ks); if(or__5045__auto__){ return or__5045__auto__; } else { return cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null); } })(),(function (){var or__5045__auto__ = cljs.core.seq(forms__$1); if(or__5045__auto__){ return or__5045__auto__; } else { return cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null); } })())); return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.seq(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.first,pks)),(cljs.core.truth_(ks)?cljs.core.seq(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.second,pks)):null),(cljs.core.truth_(forms__$1)?cljs.core.seq(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__19817_SHARP_){ return cljs.core.nth.cljs$core$IFn$_invoke$arity$2(p1__19817_SHARP_,(2)); }),pks)):null)], null); } else { return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.seq(cljs.core.filter.cljs$core$IFn$_invoke$arity$2(f,ps)),ks,forms__$1], null); } }); cljs.spec.alpha.alt_STAR_ = (function cljs$spec$alpha$alt_STAR_(ps,ks,forms__$1){ var vec__19819 = cljs.spec.alpha.filter_alt(ps,ks,forms__$1,cljs.core.identity); var vec__19822 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19819,(0),null); var seq__19823 = cljs.core.seq(vec__19822); var first__19824 = cljs.core.first(seq__19823); var seq__19823__$1 = cljs.core.next(seq__19823); var p1 = first__19824; var pr = seq__19823__$1; var ps__$1 = vec__19822; var vec__19825 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19819,(1),null); var k1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19825,(0),null); var ks__$1 = vec__19825; var forms__$2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19819,(2),null); if(cljs.core.truth_(ps__$1)){ var ret = new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252),new cljs.core.Keyword("cljs.spec.alpha","alt","cljs.spec.alpha/alt",523685437),new cljs.core.Keyword(null,"ps","ps",292358046),ps__$1,new cljs.core.Keyword(null,"ks","ks",1900203942),ks__$1,new cljs.core.Keyword(null,"forms","forms",2045992350),forms__$2], null); if((pr == null)){ if(cljs.core.truth_(k1)){ if(cljs.spec.alpha.accept_QMARK_(p1)){ return cljs.spec.alpha.accept(cljs.spec.alpha.tagged_ret(k1,new cljs.core.Keyword(null,"ret","ret",-468222814).cljs$core$IFn$_invoke$arity$1(p1))); } else { return ret; } } else { return p1; } } else { return ret; } } else { return null; } }); cljs.spec.alpha.alts = (function cljs$spec$alpha$alts(var_args){ var args__5775__auto__ = []; var len__5769__auto___20716 = arguments.length; var i__5770__auto___20717 = (0); while(true){ if((i__5770__auto___20717 < len__5769__auto___20716)){ args__5775__auto__.push((arguments[i__5770__auto___20717])); var G__20718 = (i__5770__auto___20717 + (1)); i__5770__auto___20717 = G__20718; continue; } else { } break; } var argseq__5776__auto__ = ((((0) < args__5775__auto__.length))?(new cljs.core.IndexedSeq(args__5775__auto__.slice((0)),(0),null)):null); return cljs.spec.alpha.alts.cljs$core$IFn$_invoke$arity$variadic(argseq__5776__auto__); }); (cljs.spec.alpha.alts.cljs$core$IFn$_invoke$arity$variadic = (function (ps){ return cljs.spec.alpha.alt_STAR_(ps,null,null); })); (cljs.spec.alpha.alts.cljs$lang$maxFixedArity = (0)); /** @this {Function} */ (cljs.spec.alpha.alts.cljs$lang$applyTo = (function (seq19831){ var self__5755__auto__ = this; return self__5755__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq19831)); })); cljs.spec.alpha.alt2 = (function cljs$spec$alpha$alt2(p1,p2){ if(cljs.core.truth_((function (){var and__5043__auto__ = p1; if(cljs.core.truth_(and__5043__auto__)){ return p2; } else { return and__5043__auto__; } })())){ return cljs.spec.alpha.alts.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([p1,p2], 0)); } else { var or__5045__auto__ = p1; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return p2; } } }); /** * Do not call this directly, use 'alt' */ cljs.spec.alpha.alt_impl = (function cljs$spec$alpha$alt_impl(ks,ps,forms__$1){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.alt_STAR_(ps,ks,forms__$1),new cljs.core.Keyword(null,"id","id",-1388402092),cljs.core.random_uuid()); }); /** * Do not call this directly, use '?' */ cljs.spec.alpha.maybe_impl = (function cljs$spec$alpha$maybe_impl(p,form){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.alt_STAR_(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [p,cljs.spec.alpha.accept(new cljs.core.Keyword("cljs.spec.alpha","nil","cljs.spec.alpha/nil",1733813950))], null),null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [form,new cljs.core.Keyword("cljs.spec.alpha","nil","cljs.spec.alpha/nil",1733813950)], null)),new cljs.core.Keyword(null,"maybe","maybe",-314397560),form); }); cljs.spec.alpha.noret_QMARK_ = (function cljs$spec$alpha$noret_QMARK_(p1,pret){ var or__5045__auto__ = cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(pret,new cljs.core.Keyword("cljs.spec.alpha","nil","cljs.spec.alpha/nil",1733813950)); if(or__5045__auto__){ return or__5045__auto__; } else { var or__5045__auto____$1 = (function (){var and__5043__auto__ = (function (){var G__19845 = new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252).cljs$core$IFn$_invoke$arity$1(cljs.spec.alpha.reg_resolve_BANG_(p1)); var fexpr__19844 = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword("cljs.spec.alpha","rep","cljs.spec.alpha/rep",1483217317),null,new cljs.core.Keyword("cljs.spec.alpha","pcat","cljs.spec.alpha/pcat",26406623),null], null), null); return (fexpr__19844.cljs$core$IFn$_invoke$arity$1 ? fexpr__19844.cljs$core$IFn$_invoke$arity$1(G__19845) : fexpr__19844.call(null,G__19845)); })(); if(cljs.core.truth_(and__5043__auto__)){ return cljs.core.empty_QMARK_(pret); } else { return and__5043__auto__; } })(); if(cljs.core.truth_(or__5045__auto____$1)){ return or__5045__auto____$1; } else { return null; } } }); cljs.spec.alpha.accept_nil_QMARK_ = (function cljs$spec$alpha$accept_nil_QMARK_(p){ var map__19846 = cljs.spec.alpha.reg_resolve_BANG_(p); var map__19846__$1 = cljs.core.__destructure_map(map__19846); var p__$1 = map__19846__$1; var op = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19846__$1,new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252)); var ps = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19846__$1,new cljs.core.Keyword(null,"ps","ps",292358046)); var p1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19846__$1,new cljs.core.Keyword(null,"p1","p1",-936759954)); var p2 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19846__$1,new cljs.core.Keyword(null,"p2","p2",905500641)); var forms__$1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19846__$1,new cljs.core.Keyword(null,"forms","forms",2045992350)); var G__19847 = op; if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","accept","cljs.spec.alpha/accept",370988198),G__19847)){ return true; } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__19847)){ return null; } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","amp","cljs.spec.alpha/amp",831147508),G__19847)){ var and__5043__auto__ = (cljs.spec.alpha.accept_nil_QMARK_.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.accept_nil_QMARK_.cljs$core$IFn$_invoke$arity$1(p1) : cljs.spec.alpha.accept_nil_QMARK_.call(null,p1)); if(cljs.core.truth_(and__5043__auto__)){ var ret = cljs.spec.alpha.and_preds(cljs.spec.alpha.preturn(p1),ps,cljs.core.next(forms__$1)); return (!(cljs.spec.alpha.invalid_QMARK_(ret))); } else { return and__5043__auto__; } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","rep","cljs.spec.alpha/rep",1483217317),G__19847)){ var or__5045__auto__ = (p1 === p2); if(or__5045__auto__){ return or__5045__auto__; } else { return (cljs.spec.alpha.accept_nil_QMARK_.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.accept_nil_QMARK_.cljs$core$IFn$_invoke$arity$1(p1) : cljs.spec.alpha.accept_nil_QMARK_.call(null,p1)); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","pcat","cljs.spec.alpha/pcat",26406623),G__19847)){ return cljs.core.every_QMARK_(cljs.spec.alpha.accept_nil_QMARK_,ps); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","alt","cljs.spec.alpha/alt",523685437),G__19847)){ return cljs.core.some(cljs.spec.alpha.accept_nil_QMARK_,ps); } else { throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__19847)].join(''))); } } } } } } }); cljs.spec.alpha.preturn = (function cljs$spec$alpha$preturn(p){ var map__19854 = cljs.spec.alpha.reg_resolve_BANG_(p); var map__19854__$1 = cljs.core.__destructure_map(map__19854); var p__$1 = map__19854__$1; var vec__19855 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19854__$1,new cljs.core.Keyword(null,"ps","ps",292358046)); var seq__19856 = cljs.core.seq(vec__19855); var first__19857 = cljs.core.first(seq__19856); var seq__19856__$1 = cljs.core.next(seq__19856); var p0 = first__19857; var pr = seq__19856__$1; var ps = vec__19855; var vec__19858 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19854__$1,new cljs.core.Keyword(null,"ks","ks",1900203942)); var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19858,(0),null); var ks = vec__19858; var op = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19854__$1,new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252)); var p1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19854__$1,new cljs.core.Keyword(null,"p1","p1",-936759954)); var ret = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19854__$1,new cljs.core.Keyword(null,"ret","ret",-468222814)); var forms__$1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19854__$1,new cljs.core.Keyword(null,"forms","forms",2045992350)); var G__19861 = op; if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","accept","cljs.spec.alpha/accept",370988198),G__19861)){ return ret; } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__19861)){ return null; } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","amp","cljs.spec.alpha/amp",831147508),G__19861)){ var pret = (cljs.spec.alpha.preturn.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.preturn.cljs$core$IFn$_invoke$arity$1(p1) : cljs.spec.alpha.preturn.call(null,p1)); if(cljs.core.truth_(cljs.spec.alpha.noret_QMARK_(p1,pret))){ return new cljs.core.Keyword("cljs.spec.alpha","nil","cljs.spec.alpha/nil",1733813950); } else { return cljs.spec.alpha.and_preds(pret,ps,forms__$1); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","rep","cljs.spec.alpha/rep",1483217317),G__19861)){ return cljs.spec.alpha.add_ret(p1,ret,k); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","pcat","cljs.spec.alpha/pcat",26406623),G__19861)){ return cljs.spec.alpha.add_ret(p0,ret,k); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","alt","cljs.spec.alpha/alt",523685437),G__19861)){ var vec__19865 = cljs.spec.alpha.filter_alt(ps,ks,forms__$1,cljs.spec.alpha.accept_nil_QMARK_); var vec__19868 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19865,(0),null); var p0__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19868,(0),null); var vec__19871 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19865,(1),null); var k0 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19871,(0),null); var r = (((p0__$1 == null))?new cljs.core.Keyword("cljs.spec.alpha","nil","cljs.spec.alpha/nil",1733813950):(cljs.spec.alpha.preturn.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.preturn.cljs$core$IFn$_invoke$arity$1(p0__$1) : cljs.spec.alpha.preturn.call(null,p0__$1))); if(cljs.core.truth_(k0)){ return cljs.spec.alpha.tagged_ret(k0,r); } else { return r; } } else { throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__19861)].join(''))); } } } } } } }); cljs.spec.alpha.op_unform = (function cljs$spec$alpha$op_unform(p,x){ var map__19887 = cljs.spec.alpha.reg_resolve_BANG_(p); var map__19887__$1 = cljs.core.__destructure_map(map__19887); var p__$1 = map__19887__$1; var vec__19888 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19887__$1,new cljs.core.Keyword(null,"ps","ps",292358046)); var seq__19889 = cljs.core.seq(vec__19888); var first__19890 = cljs.core.first(seq__19889); var seq__19889__$1 = cljs.core.next(seq__19889); var p0 = first__19890; var pr = seq__19889__$1; var ps = vec__19888; var vec__19891 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19887__$1,new cljs.core.Keyword(null,"ks","ks",1900203942)); var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19891,(0),null); var ks = vec__19891; var op = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19887__$1,new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252)); var p1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19887__$1,new cljs.core.Keyword(null,"p1","p1",-936759954)); var ret = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19887__$1,new cljs.core.Keyword(null,"ret","ret",-468222814)); var forms__$1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19887__$1,new cljs.core.Keyword(null,"forms","forms",2045992350)); var rep_PLUS_ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19887__$1,new cljs.core.Keyword(null,"rep+","rep+",-281382396)); var maybe = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19887__$1,new cljs.core.Keyword(null,"maybe","maybe",-314397560)); var kps = cljs.core.zipmap(ks,ps); var G__19894 = op; if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","accept","cljs.spec.alpha/accept",370988198),G__19894)){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [ret], null); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__19894)){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.alpha.unform(p__$1,x)], null); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","amp","cljs.spec.alpha/amp",831147508),G__19894)){ var px = cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__19881_SHARP_,p2__19880_SHARP_){ return cljs.spec.alpha.unform(p2__19880_SHARP_,p1__19881_SHARP_); }),x,cljs.core.reverse(ps)); return (cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2(p1,px) : cljs.spec.alpha.op_unform.call(null,p1,px)); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","rep","cljs.spec.alpha/rep",1483217317),G__19894)){ return cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((function (p1__19882_SHARP_){ return (cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2(p1,p1__19882_SHARP_) : cljs.spec.alpha.op_unform.call(null,p1,p1__19882_SHARP_)); }),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([x], 0)); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","pcat","cljs.spec.alpha/pcat",26406623),G__19894)){ if(cljs.core.truth_(rep_PLUS_)){ return cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((function (p1__19883_SHARP_){ return (cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2(p0,p1__19883_SHARP_) : cljs.spec.alpha.op_unform.call(null,p0,p1__19883_SHARP_)); }),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([x], 0)); } else { return cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((function (k__$1){ if(cljs.core.contains_QMARK_(x,k__$1)){ var G__19895 = (kps.cljs$core$IFn$_invoke$arity$1 ? kps.cljs$core$IFn$_invoke$arity$1(k__$1) : kps.call(null,k__$1)); var G__19896 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(x,k__$1); return (cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2(G__19895,G__19896) : cljs.spec.alpha.op_unform.call(null,G__19895,G__19896)); } else { return null; } }),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([ks], 0)); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","alt","cljs.spec.alpha/alt",523685437),G__19894)){ if(cljs.core.truth_(maybe)){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.alpha.unform(p0,x)], null); } else { var vec__19900 = x; var k__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19900,(0),null); var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19900,(1),null); var G__19905 = (kps.cljs$core$IFn$_invoke$arity$1 ? kps.cljs$core$IFn$_invoke$arity$1(k__$1) : kps.call(null,k__$1)); var G__19906 = v; return (cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2(G__19905,G__19906) : cljs.spec.alpha.op_unform.call(null,G__19905,G__19906)); } } else { throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__19894)].join(''))); } } } } } } }); cljs.spec.alpha.add_ret = (function cljs$spec$alpha$add_ret(p,r,k){ var map__19912 = cljs.spec.alpha.reg_resolve_BANG_(p); var map__19912__$1 = cljs.core.__destructure_map(map__19912); var p__$1 = map__19912__$1; var op = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19912__$1,new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252)); var ps = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19912__$1,new cljs.core.Keyword(null,"ps","ps",292358046)); var splice = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19912__$1,new cljs.core.Keyword(null,"splice","splice",449588165)); var prop = (function (){ var ret = cljs.spec.alpha.preturn(p__$1); if(cljs.core.empty_QMARK_(ret)){ return r; } else { var G__19926 = r; var G__19927 = (cljs.core.truth_(k)?cljs.core.PersistentArrayMap.createAsIfByAssoc([k,ret]):ret); var fexpr__19925 = (cljs.core.truth_(splice)?cljs.core.into:cljs.core.conj); return (fexpr__19925.cljs$core$IFn$_invoke$arity$2 ? fexpr__19925.cljs$core$IFn$_invoke$arity$2(G__19926,G__19927) : fexpr__19925.call(null,G__19926,G__19927)); } }); var G__19928 = op; if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__19928)){ return r; } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","alt","cljs.spec.alpha/alt",523685437),G__19928)){ var ret = cljs.spec.alpha.preturn(p__$1); if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ret,new cljs.core.Keyword("cljs.spec.alpha","nil","cljs.spec.alpha/nil",1733813950))){ return r; } else { return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(r,(cljs.core.truth_(k)?cljs.core.PersistentArrayMap.createAsIfByAssoc([k,ret]):ret)); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","accept","cljs.spec.alpha/accept",370988198),G__19928)){ var ret = cljs.spec.alpha.preturn(p__$1); if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ret,new cljs.core.Keyword("cljs.spec.alpha","nil","cljs.spec.alpha/nil",1733813950))){ return r; } else { return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(r,(cljs.core.truth_(k)?cljs.core.PersistentArrayMap.createAsIfByAssoc([k,ret]):ret)); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","amp","cljs.spec.alpha/amp",831147508),G__19928)){ var ret = cljs.spec.alpha.preturn(p__$1); if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ret,new cljs.core.Keyword("cljs.spec.alpha","nil","cljs.spec.alpha/nil",1733813950))){ return r; } else { return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(r,(cljs.core.truth_(k)?cljs.core.PersistentArrayMap.createAsIfByAssoc([k,ret]):ret)); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","rep","cljs.spec.alpha/rep",1483217317),G__19928)){ return prop(); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","pcat","cljs.spec.alpha/pcat",26406623),G__19928)){ return prop(); } else { throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__19928)].join(''))); } } } } } } }); cljs.spec.alpha.deriv = (function cljs$spec$alpha$deriv(p,x){ var map__19930 = cljs.spec.alpha.reg_resolve_BANG_(p); var map__19930__$1 = cljs.core.__destructure_map(map__19930); var p__$1 = map__19930__$1; var forms__$1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19930__$1,new cljs.core.Keyword(null,"forms","forms",2045992350)); var p2 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19930__$1,new cljs.core.Keyword(null,"p2","p2",905500641)); var vec__19931 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19930__$1,new cljs.core.Keyword(null,"ps","ps",292358046)); var seq__19932 = cljs.core.seq(vec__19931); var first__19933 = cljs.core.first(seq__19932); var seq__19932__$1 = cljs.core.next(seq__19932); var p0 = first__19933; var pr = seq__19932__$1; var ps = vec__19931; var ret = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19930__$1,new cljs.core.Keyword(null,"ret","ret",-468222814)); var op = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19930__$1,new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252)); var splice = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19930__$1,new cljs.core.Keyword(null,"splice","splice",449588165)); var vec__19934 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19930__$1,new cljs.core.Keyword(null,"ks","ks",1900203942)); var seq__19935 = cljs.core.seq(vec__19934); var first__19936 = cljs.core.first(seq__19935); var seq__19935__$1 = cljs.core.next(seq__19935); var k0 = first__19936; var kr = seq__19935__$1; var ks = vec__19934; var amp = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19930__$1,new cljs.core.Keyword(null,"amp","amp",271690571)); var p1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19930__$1,new cljs.core.Keyword(null,"p1","p1",-936759954)); if(cljs.core.truth_(p__$1)){ var G__19937 = op; if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","accept","cljs.spec.alpha/accept",370988198),G__19937)){ return null; } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__19937)){ var ret__$1 = cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(p__$1,x,p__$1); if(cljs.spec.alpha.invalid_QMARK_(ret__$1)){ return null; } else { return cljs.spec.alpha.accept(ret__$1); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","amp","cljs.spec.alpha/amp",831147508),G__19937)){ var temp__5804__auto__ = (cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2(p1,x) : cljs.spec.alpha.deriv.call(null,p1,x)); if(cljs.core.truth_(temp__5804__auto__)){ var p1__$1 = temp__5804__auto__; if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","accept","cljs.spec.alpha/accept",370988198),new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252).cljs$core$IFn$_invoke$arity$1(p1__$1))){ var ret__$1 = cljs.spec.alpha.and_preds(cljs.spec.alpha.preturn(p1__$1),ps,cljs.core.next(forms__$1)); if(cljs.spec.alpha.invalid_QMARK_(ret__$1)){ return null; } else { return cljs.spec.alpha.accept(ret__$1); } } else { return cljs.spec.alpha.amp_impl(p1__$1,amp,ps,forms__$1); } } else { return null; } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","pcat","cljs.spec.alpha/pcat",26406623),G__19937)){ return cljs.spec.alpha.alt2(cljs.spec.alpha.pcat_STAR_(new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"ps","ps",292358046),cljs.core.cons((cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2(p0,x) : cljs.spec.alpha.deriv.call(null,p0,x)),pr),new cljs.core.Keyword(null,"ks","ks",1900203942),ks,new cljs.core.Keyword(null,"forms","forms",2045992350),forms__$1,new cljs.core.Keyword(null,"ret","ret",-468222814),ret], null)),(cljs.core.truth_(cljs.spec.alpha.accept_nil_QMARK_(p0))?(function (){var G__19947 = cljs.spec.alpha.pcat_STAR_(new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"ps","ps",292358046),pr,new cljs.core.Keyword(null,"ks","ks",1900203942),kr,new cljs.core.Keyword(null,"forms","forms",2045992350),cljs.core.next(forms__$1),new cljs.core.Keyword(null,"ret","ret",-468222814),cljs.spec.alpha.add_ret(p0,ret,k0)], null)); var G__19948 = x; return (cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2(G__19947,G__19948) : cljs.spec.alpha.deriv.call(null,G__19947,G__19948)); })():null)); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","alt","cljs.spec.alpha/alt",523685437),G__19937)){ return cljs.spec.alpha.alt_STAR_(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__19929_SHARP_){ return (cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2(p1__19929_SHARP_,x) : cljs.spec.alpha.deriv.call(null,p1__19929_SHARP_,x)); }),ps),ks,forms__$1); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","rep","cljs.spec.alpha/rep",1483217317),G__19937)){ return cljs.spec.alpha.alt2(cljs.spec.alpha.rep_STAR_((cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2(p1,x) : cljs.spec.alpha.deriv.call(null,p1,x)),p2,ret,splice,forms__$1),(cljs.core.truth_(cljs.spec.alpha.accept_nil_QMARK_(p1))?(function (){var G__19952 = cljs.spec.alpha.rep_STAR_(p2,p2,cljs.spec.alpha.add_ret(p1,ret,null),splice,forms__$1); var G__19953 = x; return (cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2(G__19952,G__19953) : cljs.spec.alpha.deriv.call(null,G__19952,G__19953)); })():null)); } else { throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__19937)].join(''))); } } } } } } } else { return null; } }); cljs.spec.alpha.op_describe = (function cljs$spec$alpha$op_describe(p){ var map__19954 = cljs.spec.alpha.reg_resolve_BANG_(p); var map__19954__$1 = cljs.core.__destructure_map(map__19954); var p__$1 = map__19954__$1; var ps = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19954__$1,new cljs.core.Keyword(null,"ps","ps",292358046)); var forms__$1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19954__$1,new cljs.core.Keyword(null,"forms","forms",2045992350)); var rep_PLUS_ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19954__$1,new cljs.core.Keyword(null,"rep+","rep+",-281382396)); var op = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19954__$1,new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252)); var splice = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19954__$1,new cljs.core.Keyword(null,"splice","splice",449588165)); var ks = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19954__$1,new cljs.core.Keyword(null,"ks","ks",1900203942)); var maybe = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19954__$1,new cljs.core.Keyword(null,"maybe","maybe",-314397560)); var amp = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19954__$1,new cljs.core.Keyword(null,"amp","amp",271690571)); var p1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19954__$1,new cljs.core.Keyword(null,"p1","p1",-936759954)); if(cljs.core.truth_(p__$1)){ var G__19958 = op; if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","accept","cljs.spec.alpha/accept",370988198),G__19958)){ return null; } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__19958)){ return p__$1; } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","amp","cljs.spec.alpha/amp",831147508),G__19958)){ return cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$3(new cljs.core.Symbol("cljs.spec.alpha","&","cljs.spec.alpha/&",1635809823,null),amp,forms__$1); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","pcat","cljs.spec.alpha/pcat",26406623),G__19958)){ if(cljs.core.truth_(rep_PLUS_)){ return (new cljs.core.List(null,new cljs.core.Symbol("cljs.spec.alpha","+","cljs.spec.alpha/+",2101263265,null),(new cljs.core.List(null,rep_PLUS_,null,(1),null)),(2),null)); } else { return cljs.core.cons(new cljs.core.Symbol("cljs.spec.alpha","cat","cljs.spec.alpha/cat",-1471398329,null),cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic(cljs.core.vector,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var or__5045__auto__ = cljs.core.seq(ks); if(or__5045__auto__){ return or__5045__auto__; } else { return cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,"_","_",1453416199)); } })(),forms__$1], 0))); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","alt","cljs.spec.alpha/alt",523685437),G__19958)){ if(cljs.core.truth_(maybe)){ return (new cljs.core.List(null,new cljs.core.Symbol("cljs.spec.alpha","?","cljs.spec.alpha/?",1605136319,null),(new cljs.core.List(null,maybe,null,(1),null)),(2),null)); } else { return cljs.core.cons(new cljs.core.Symbol("cljs.spec.alpha","alt","cljs.spec.alpha/alt",-2130750332,null),cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic(cljs.core.vector,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([ks,forms__$1], 0))); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","rep","cljs.spec.alpha/rep",1483217317),G__19958)){ return (new cljs.core.List(null,(cljs.core.truth_(splice)?new cljs.core.Symbol("cljs.spec.alpha","+","cljs.spec.alpha/+",2101263265,null):new cljs.core.Symbol("cljs.spec.alpha","*","cljs.spec.alpha/*",-1238084288,null)),(new cljs.core.List(null,forms__$1,null,(1),null)),(2),null)); } else { throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__19958)].join(''))); } } } } } } } else { return null; } }); cljs.spec.alpha.op_explain = (function cljs$spec$alpha$op_explain(form,p,path,via,in$,input){ var vec__19968 = input; var x = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19968,(0),null); var input__$1 = vec__19968; var map__19971 = cljs.spec.alpha.reg_resolve_BANG_(p); var map__19971__$1 = cljs.core.__destructure_map(map__19971); var p__$1 = map__19971__$1; var op = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19971__$1,new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252)); var ps = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19971__$1,new cljs.core.Keyword(null,"ps","ps",292358046)); var ks = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19971__$1,new cljs.core.Keyword(null,"ks","ks",1900203942)); var forms__$1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19971__$1,new cljs.core.Keyword(null,"forms","forms",2045992350)); var splice = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19971__$1,new cljs.core.Keyword(null,"splice","splice",449588165)); var p1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19971__$1,new cljs.core.Keyword(null,"p1","p1",-936759954)); var p2 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__19971__$1,new cljs.core.Keyword(null,"p2","p2",905500641)); var via__$1 = (function (){var temp__5802__auto__ = cljs.spec.alpha.spec_name(p__$1); if(cljs.core.truth_(temp__5802__auto__)){ var name = temp__5802__auto__; return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(via,name); } else { return via; } })(); var insufficient = (function (path__$1,form__$1){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),path__$1,new cljs.core.Keyword(null,"reason","reason",-2070751759),"Insufficient input",new cljs.core.Keyword(null,"pred","pred",1927423397),form__$1,new cljs.core.Keyword(null,"val","val",128701612),cljs.core.List.EMPTY,new cljs.core.Keyword(null,"via","via",-1904457336),via__$1,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); }); if(cljs.core.truth_(p__$1)){ var G__19972 = op; if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","accept","cljs.spec.alpha/accept",370988198),G__19972)){ return null; } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__19972)){ if(cljs.core.empty_QMARK_(input__$1)){ return insufficient(path,form); } else { return cljs.spec.alpha.explain_1(form,p__$1,path,via__$1,in$,x); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","amp","cljs.spec.alpha/amp",831147508),G__19972)){ if(cljs.core.empty_QMARK_(input__$1)){ if(cljs.core.truth_(cljs.spec.alpha.accept_nil_QMARK_(p1))){ return cljs.spec.alpha.explain_pred_list(forms__$1,ps,path,via__$1,in$,cljs.spec.alpha.preturn(p1)); } else { return insufficient(path,new cljs.core.Keyword(null,"amp","amp",271690571).cljs$core$IFn$_invoke$arity$1(p__$1)); } } else { var temp__5802__auto__ = cljs.spec.alpha.deriv(p1,x); if(cljs.core.truth_(temp__5802__auto__)){ var p1__$1 = temp__5802__auto__; return cljs.spec.alpha.explain_pred_list(forms__$1,ps,path,via__$1,in$,cljs.spec.alpha.preturn(p1__$1)); } else { var G__19973 = new cljs.core.Keyword(null,"amp","amp",271690571).cljs$core$IFn$_invoke$arity$1(p__$1); var G__19974 = p1; var G__19975 = path; var G__19976 = via__$1; var G__19977 = in$; var G__19978 = input__$1; return (cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6 ? cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6(G__19973,G__19974,G__19975,G__19976,G__19977,G__19978) : cljs.spec.alpha.op_explain.call(null,G__19973,G__19974,G__19975,G__19976,G__19977,G__19978)); } } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","pcat","cljs.spec.alpha/pcat",26406623),G__19972)){ var pkfs = cljs.core.map.cljs$core$IFn$_invoke$arity$4(cljs.core.vector,ps,(function (){var or__5045__auto__ = cljs.core.seq(ks); if(or__5045__auto__){ return or__5045__auto__; } else { return cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null); } })(),(function (){var or__5045__auto__ = cljs.core.seq(forms__$1); if(or__5045__auto__){ return or__5045__auto__; } else { return cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null); } })()); var vec__19979 = ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((1),cljs.core.count(pkfs)))?cljs.core.first(pkfs):cljs.core.first(cljs.core.remove.cljs$core$IFn$_invoke$arity$2((function (p__19984){ var vec__19986 = p__19984; var p__$2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19986,(0),null); return cljs.spec.alpha.accept_nil_QMARK_(p__$2); }),pkfs))); var pred = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19979,(0),null); var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19979,(1),null); var form__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__19979,(2),null); var path__$1 = (cljs.core.truth_(k)?cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k):path); var form__$2 = (function (){var or__5045__auto__ = form__$1; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return cljs.spec.alpha.op_describe(pred); } })(); if(((cljs.core.empty_QMARK_(input__$1)) && (cljs.core.not(pred)))){ return insufficient(path__$1,form__$2); } else { return (cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6 ? cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6(form__$2,pred,path__$1,via__$1,in$,input__$1) : cljs.spec.alpha.op_explain.call(null,form__$2,pred,path__$1,via__$1,in$,input__$1)); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","alt","cljs.spec.alpha/alt",523685437),G__19972)){ if(cljs.core.empty_QMARK_(input__$1)){ return insufficient(path,cljs.spec.alpha.op_describe(p__$1)); } else { return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,cljs.core.map.cljs$core$IFn$_invoke$arity$4((function (k,form__$1,pred){ var G__19989 = (function (){var or__5045__auto__ = form__$1; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return cljs.spec.alpha.op_describe(pred); } })(); var G__19990 = pred; var G__19991 = (cljs.core.truth_(k)?cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k):path); var G__19992 = via__$1; var G__19993 = in$; var G__19994 = input__$1; return (cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6 ? cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6(G__19989,G__19990,G__19991,G__19992,G__19993,G__19994) : cljs.spec.alpha.op_explain.call(null,G__19989,G__19990,G__19991,G__19992,G__19993,G__19994)); }),(function (){var or__5045__auto__ = cljs.core.seq(ks); if(or__5045__auto__){ return or__5045__auto__; } else { return cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null); } })(),(function (){var or__5045__auto__ = cljs.core.seq(forms__$1); if(or__5045__auto__){ return or__5045__auto__; } else { return cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null); } })(),ps)); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","rep","cljs.spec.alpha/rep",1483217317),G__19972)){ var G__19995 = (((p1 === p2))?forms__$1:cljs.spec.alpha.op_describe(p1)); var G__19996 = p1; var G__19997 = path; var G__19998 = via__$1; var G__19999 = in$; var G__20000 = input__$1; return (cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6 ? cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6(G__19995,G__19996,G__19997,G__19998,G__19999,G__20000) : cljs.spec.alpha.op_explain.call(null,G__19995,G__19996,G__19997,G__19998,G__19999,G__20000)); } else { throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__19972)].join(''))); } } } } } } } else { return null; } }); cljs.spec.alpha.re_gen = (function cljs$spec$alpha$re_gen(p,overrides,path,rmap,f){ var origp = p; var map__20042 = cljs.spec.alpha.reg_resolve_BANG_(p); var map__20042__$1 = cljs.core.__destructure_map(map__20042); var p__$1 = map__20042__$1; var ps = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__20042__$1,new cljs.core.Keyword(null,"ps","ps",292358046)); var forms__$1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__20042__$1,new cljs.core.Keyword(null,"forms","forms",2045992350)); var p2 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__20042__$1,new cljs.core.Keyword(null,"p2","p2",905500641)); var ret = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__20042__$1,new cljs.core.Keyword(null,"ret","ret",-468222814)); var gfn = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__20042__$1,new cljs.core.Keyword("cljs.spec.alpha","gfn","cljs.spec.alpha/gfn",-593120375)); var op = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__20042__$1,new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252)); var splice = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__20042__$1,new cljs.core.Keyword(null,"splice","splice",449588165)); var ks = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__20042__$1,new cljs.core.Keyword(null,"ks","ks",1900203942)); var p1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__20042__$1,new cljs.core.Keyword(null,"p1","p1",-936759954)); var id = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__20042__$1,new cljs.core.Keyword(null,"id","id",-1388402092)); var rmap__$1 = (cljs.core.truth_(id)?cljs.spec.alpha.inck(rmap,id):rmap); var ggens = (function (ps__$1,ks__$1,forms__$2){ var gen = (function (p__$2,k,f__$1){ if(cljs.core.truth_((function (){var and__5043__auto__ = rmap__$1; if(cljs.core.truth_(and__5043__auto__)){ var and__5043__auto____$1 = id; if(cljs.core.truth_(and__5043__auto____$1)){ var and__5043__auto____$2 = k; if(cljs.core.truth_(and__5043__auto____$2)){ return cljs.spec.alpha.recur_limit_QMARK_(rmap__$1,id,path,k); } else { return and__5043__auto____$2; } } else { return and__5043__auto____$1; } } else { return and__5043__auto__; } })())){ return null; } else { if(cljs.core.truth_(id)){ return cljs.spec.gen.alpha.delay_impl((new cljs.core.Delay((function (){ var G__20052 = p__$2; var G__20053 = overrides; var G__20054 = (cljs.core.truth_(k)?cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k):path); var G__20055 = rmap__$1; var G__20056 = (function (){var or__5045__auto__ = f__$1; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return p__$2; } })(); return (cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5 ? cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5(G__20052,G__20053,G__20054,G__20055,G__20056) : cljs.spec.alpha.re_gen.call(null,G__20052,G__20053,G__20054,G__20055,G__20056)); }),null))); } else { var G__20057 = p__$2; var G__20058 = overrides; var G__20059 = (cljs.core.truth_(k)?cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k):path); var G__20060 = rmap__$1; var G__20061 = (function (){var or__5045__auto__ = f__$1; if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return p__$2; } })(); return (cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5 ? cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5(G__20057,G__20058,G__20059,G__20060,G__20061) : cljs.spec.alpha.re_gen.call(null,G__20057,G__20058,G__20059,G__20060,G__20061)); } } }); return cljs.core.map.cljs$core$IFn$_invoke$arity$4(gen,ps__$1,(function (){var or__5045__auto__ = cljs.core.seq(ks__$1); if(or__5045__auto__){ return or__5045__auto__; } else { return cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null); } })(),(function (){var or__5045__auto__ = cljs.core.seq(forms__$2); if(or__5045__auto__){ return or__5045__auto__; } else { return cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null); } })()); }); var or__5045__auto__ = (function (){var temp__5804__auto__ = (function (){var or__5045__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(overrides,cljs.spec.alpha.spec_name(origp)); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { var or__5045__auto____$1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(overrides,cljs.spec.alpha.spec_name(p__$1)); if(cljs.core.truth_(or__5045__auto____$1)){ return or__5045__auto____$1; } else { return cljs.core.get.cljs$core$IFn$_invoke$arity$2(overrides,path); } } })(); if(cljs.core.truth_(temp__5804__auto__)){ var gfn__$1 = temp__5804__auto__; var G__20062 = op; if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"accept","accept",1874130431),G__20062)){ return cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.vector,(gfn__$1.cljs$core$IFn$_invoke$arity$0 ? gfn__$1.cljs$core$IFn$_invoke$arity$0() : gfn__$1.call(null))], 0)); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__20062)){ return cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.vector,(gfn__$1.cljs$core$IFn$_invoke$arity$0 ? gfn__$1.cljs$core$IFn$_invoke$arity$0() : gfn__$1.call(null))], 0)); } else { return (gfn__$1.cljs$core$IFn$_invoke$arity$0 ? gfn__$1.cljs$core$IFn$_invoke$arity$0() : gfn__$1.call(null)); } } } else { return null; } })(); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { var or__5045__auto____$1 = (cljs.core.truth_(gfn)?(gfn.cljs$core$IFn$_invoke$arity$0 ? gfn.cljs$core$IFn$_invoke$arity$0() : gfn.call(null)):null); if(cljs.core.truth_(or__5045__auto____$1)){ return or__5045__auto____$1; } else { if(cljs.core.truth_(p__$1)){ var G__20063 = op; if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","accept","cljs.spec.alpha/accept",370988198),G__20063)){ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ret,new cljs.core.Keyword("cljs.spec.alpha","nil","cljs.spec.alpha/nil",1733813950))){ return cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.PersistentVector.EMPTY], 0)); } else { return cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [ret], null)], 0)); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__20063)){ var temp__5804__auto__ = cljs.spec.alpha.gensub(p__$1,overrides,path,rmap__$1,f); if(cljs.core.truth_(temp__5804__auto__)){ var g = temp__5804__auto__; return cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.vector,g], 0)); } else { return null; } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","amp","cljs.spec.alpha/amp",831147508),G__20063)){ var G__20064 = p1; var G__20065 = overrides; var G__20066 = path; var G__20067 = rmap__$1; var G__20068 = cljs.spec.alpha.op_describe(p1); return (cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5 ? cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5(G__20064,G__20065,G__20066,G__20067,G__20068) : cljs.spec.alpha.re_gen.call(null,G__20064,G__20065,G__20066,G__20067,G__20068)); } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","pcat","cljs.spec.alpha/pcat",26406623),G__20063)){ var gens = ggens(ps,ks,forms__$1); if(cljs.core.every_QMARK_(cljs.core.identity,gens)){ return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.cat,gens); } else { return null; } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","alt","cljs.spec.alpha/alt",523685437),G__20063)){ var gens = cljs.core.remove.cljs$core$IFn$_invoke$arity$2(cljs.core.nil_QMARK_,ggens(ps,ks,forms__$1)); if(cljs.core.empty_QMARK_(gens)){ return null; } else { return cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([gens], 0)); } } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","rep","cljs.spec.alpha/rep",1483217317),G__20063)){ if(cljs.spec.alpha.recur_limit_QMARK_(rmap__$1,id,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [id], null),id)){ return cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.PersistentVector.EMPTY], 0)); } else { var temp__5804__auto__ = (cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5 ? cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5(p2,overrides,path,rmap__$1,forms__$1) : cljs.spec.alpha.re_gen.call(null,p2,overrides,path,rmap__$1,forms__$1)); if(cljs.core.truth_(temp__5804__auto__)){ var g = temp__5804__auto__; return cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__20006_SHARP_){ return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,p1__20006_SHARP_); }),cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([g], 0))], 0)); } else { return null; } } } else { throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__20063)].join(''))); } } } } } } } else { return null; } } } }); cljs.spec.alpha.re_conform = (function cljs$spec$alpha$re_conform(p,p__20072){ while(true){ var vec__20073 = p__20072; var seq__20074 = cljs.core.seq(vec__20073); var first__20075 = cljs.core.first(seq__20074); var seq__20074__$1 = cljs.core.next(seq__20074); var x = first__20075; var xs = seq__20074__$1; var data = vec__20073; if(cljs.core.empty_QMARK_(data)){ if(cljs.core.truth_(cljs.spec.alpha.accept_nil_QMARK_(p))){ var ret = cljs.spec.alpha.preturn(p); if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ret,new cljs.core.Keyword("cljs.spec.alpha","nil","cljs.spec.alpha/nil",1733813950))){ return null; } else { return ret; } } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } } else { var temp__5802__auto__ = cljs.spec.alpha.deriv(p,x); if(cljs.core.truth_(temp__5802__auto__)){ var dp = temp__5802__auto__; var G__20754 = dp; var G__20755 = xs; p = G__20754; p__20072 = G__20755; continue; } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } } break; } }); cljs.spec.alpha.re_explain = (function cljs$spec$alpha$re_explain(path,via,in$,re,input){ var p = re; var G__20079 = input; var vec__20080 = G__20079; var seq__20081 = cljs.core.seq(vec__20080); var first__20082 = cljs.core.first(seq__20081); var seq__20081__$1 = cljs.core.next(seq__20081); var x = first__20082; var xs = seq__20081__$1; var data = vec__20080; var i = (0); var p__$1 = p; var G__20079__$1 = G__20079; var i__$1 = i; while(true){ var p__$2 = p__$1; var vec__20083 = G__20079__$1; var seq__20084 = cljs.core.seq(vec__20083); var first__20085 = cljs.core.first(seq__20084); var seq__20084__$1 = cljs.core.next(seq__20084); var x__$1 = first__20085; var xs__$1 = seq__20084__$1; var data__$1 = vec__20083; var i__$2 = i__$1; if(cljs.core.empty_QMARK_(data__$1)){ if(cljs.core.truth_(cljs.spec.alpha.accept_nil_QMARK_(p__$2))){ return null; } else { return cljs.spec.alpha.op_explain(cljs.spec.alpha.op_describe(p__$2),p__$2,path,via,in$,null); } } else { var temp__5802__auto__ = cljs.spec.alpha.deriv(p__$2,x__$1); if(cljs.core.truth_(temp__5802__auto__)){ var dp = temp__5802__auto__; var G__20756 = dp; var G__20757 = xs__$1; var G__20758 = (i__$2 + (1)); p__$1 = G__20756; G__20079__$1 = G__20757; i__$1 = G__20758; continue; } else { if(cljs.spec.alpha.accept_QMARK_(p__$2)){ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252).cljs$core$IFn$_invoke$arity$1(p__$2),new cljs.core.Keyword("cljs.spec.alpha","pcat","cljs.spec.alpha/pcat",26406623))){ return cljs.spec.alpha.op_explain(cljs.spec.alpha.op_describe(p__$2),p__$2,path,via,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,i__$2),cljs.core.seq(data__$1)); } else { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"reason","reason",-2070751759),"Extra input",new cljs.core.Keyword(null,"pred","pred",1927423397),cljs.spec.alpha.op_describe(re),new cljs.core.Keyword(null,"val","val",128701612),data__$1,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,i__$2)], null)], null); } } else { var or__5045__auto__ = cljs.spec.alpha.op_explain(cljs.spec.alpha.op_describe(p__$2),p__$2,path,via,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,i__$2),cljs.core.seq(data__$1)); if(cljs.core.truth_(or__5045__auto__)){ return or__5045__auto__; } else { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"reason","reason",-2070751759),"Extra input",new cljs.core.Keyword(null,"pred","pred",1927423397),cljs.spec.alpha.op_describe(p__$2),new cljs.core.Keyword(null,"val","val",128701612),data__$1,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,i__$2)], null)], null); } } } } break; } }); /** * @constructor * @implements {cljs.spec.alpha.Spec} * @implements {cljs.core.IMeta} * @implements {cljs.spec.alpha.Specize} * @implements {cljs.core.IWithMeta} */ cljs.spec.alpha.t_cljs$spec$alpha20086 = (function (re,gfn,meta20087){ this.re = re; this.gfn = gfn; this.meta20087 = meta20087; this.cljs$lang$protocol_mask$partition0$ = 393216; this.cljs$lang$protocol_mask$partition1$ = 0; }); (cljs.spec.alpha.t_cljs$spec$alpha20086.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_20088,meta20087__$1){ var self__ = this; var _20088__$1 = this; return (new cljs.spec.alpha.t_cljs$spec$alpha20086(self__.re,self__.gfn,meta20087__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha20086.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_20088){ var self__ = this; var _20088__$1 = this; return self__.meta20087; })); (cljs.spec.alpha.t_cljs$spec$alpha20086.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha20086.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha20086.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha20086.prototype.cljs$spec$alpha$Spec$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha20086.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; if((((x == null)) || (cljs.core.sequential_QMARK_(x)))){ return cljs.spec.alpha.re_conform(self__.re,cljs.core.seq(x)); } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } })); (cljs.spec.alpha.t_cljs$spec$alpha20086.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; return cljs.spec.alpha.op_unform(self__.re,x); })); (cljs.spec.alpha.t_cljs$spec$alpha20086.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 = (function (_,path,via,in$,x){ var self__ = this; var ___$1 = this; if((((x == null)) || (cljs.core.sequential_QMARK_(x)))){ return cljs.spec.alpha.re_explain(path,via,in$,self__.re,cljs.core.seq(x)); } else { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"pred","pred",1927423397),cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","fn","cljs.core/fn",-1065745098,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(null,"%","%",-950237169,null),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","or","cljs.core/or",1201033885,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","nil?","cljs.core/nil?",945071861,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,"%","%",-950237169,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","sequential?","cljs.core/sequential?",1777854658,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,"%","%",-950237169,null),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0)))),new cljs.core.Keyword(null,"val","val",128701612),x,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); } })); (cljs.spec.alpha.t_cljs$spec$alpha20086.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 = (function (_,overrides,path,rmap){ var self__ = this; var ___$1 = this; if(cljs.core.truth_(self__.gfn)){ return (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null)); } else { return cljs.spec.alpha.re_gen(self__.re,overrides,path,rmap,cljs.spec.alpha.op_describe(self__.re)); } })); (cljs.spec.alpha.t_cljs$spec$alpha20086.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 = (function (_,gfn__$1){ var self__ = this; var ___$1 = this; return (cljs.spec.alpha.regex_spec_impl.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.regex_spec_impl.cljs$core$IFn$_invoke$arity$2(self__.re,gfn__$1) : cljs.spec.alpha.regex_spec_impl.call(null,self__.re,gfn__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha20086.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 = (function (_){ var self__ = this; var ___$1 = this; return cljs.spec.alpha.op_describe(self__.re); })); (cljs.spec.alpha.t_cljs$spec$alpha20086.getBasis = (function (){ return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"re","re",1869207729,null),new cljs.core.Symbol(null,"gfn","gfn",-1862918295,null),new cljs.core.Symbol(null,"meta20087","meta20087",-211562722,null)], null); })); (cljs.spec.alpha.t_cljs$spec$alpha20086.cljs$lang$type = true); (cljs.spec.alpha.t_cljs$spec$alpha20086.cljs$lang$ctorStr = "cljs.spec.alpha/t_cljs$spec$alpha20086"); (cljs.spec.alpha.t_cljs$spec$alpha20086.cljs$lang$ctorPrWriter = (function (this__5330__auto__,writer__5331__auto__,opt__5332__auto__){ return cljs.core._write(writer__5331__auto__,"cljs.spec.alpha/t_cljs$spec$alpha20086"); })); /** * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha20086. */ cljs.spec.alpha.__GT_t_cljs$spec$alpha20086 = (function cljs$spec$alpha$__GT_t_cljs$spec$alpha20086(re,gfn,meta20087){ return (new cljs.spec.alpha.t_cljs$spec$alpha20086(re,gfn,meta20087)); }); /** * Do not call this directly, use 'spec' with a regex op argument */ cljs.spec.alpha.regex_spec_impl = (function cljs$spec$alpha$regex_spec_impl(re,gfn){ return (new cljs.spec.alpha.t_cljs$spec$alpha20086(re,gfn,cljs.core.PersistentArrayMap.EMPTY)); }); cljs.spec.alpha.call_valid_QMARK_ = (function cljs$spec$alpha$call_valid_QMARK_(f,specs,args){ var cargs = cljs.spec.alpha.conform(new cljs.core.Keyword(null,"args","args",1315556576).cljs$core$IFn$_invoke$arity$1(specs),args); if(cljs.spec.alpha.invalid_QMARK_(cargs)){ return null; } else { var ret = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f,args); var cret = cljs.spec.alpha.conform(new cljs.core.Keyword(null,"ret","ret",-468222814).cljs$core$IFn$_invoke$arity$1(specs),ret); var and__5043__auto__ = (!(cljs.spec.alpha.invalid_QMARK_(cret))); if(and__5043__auto__){ if(cljs.core.truth_(new cljs.core.Keyword(null,"fn","fn",-1175266204).cljs$core$IFn$_invoke$arity$1(specs))){ return cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"fn","fn",-1175266204).cljs$core$IFn$_invoke$arity$1(specs),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"args","args",1315556576),cargs,new cljs.core.Keyword(null,"ret","ret",-468222814),cret], null)); } else { return true; } } else { return and__5043__auto__; } } }); /** * returns f if valid, else smallest */ cljs.spec.alpha.validate_fn = (function cljs$spec$alpha$validate_fn(f,specs,iters){ var g = cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,"args","args",1315556576).cljs$core$IFn$_invoke$arity$1(specs)); var prop = cljs.spec.gen.alpha.for_all_STAR_.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [g], null),(function (p1__20098_SHARP_){ return cljs.spec.alpha.call_valid_QMARK_(f,specs,p1__20098_SHARP_); })], 0)); var ret = cljs.spec.gen.alpha.quick_check.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([iters,prop], 0)); var temp__5802__auto__ = new cljs.core.Keyword(null,"smallest","smallest",-152623883).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,"shrunk","shrunk",-2041664412).cljs$core$IFn$_invoke$arity$1(ret)); if(cljs.core.truth_(temp__5802__auto__)){ var vec__20105 = temp__5802__auto__; var smallest = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__20105,(0),null); return smallest; } else { return f; } }); /** * @constructor * @implements {cljs.spec.alpha.Spec} * @implements {cljs.core.IMeta} * @implements {cljs.spec.alpha.Specize} * @implements {cljs.core.IWithMeta} * @implements {cljs.core.ILookup} */ cljs.spec.alpha.t_cljs$spec$alpha20108 = (function (argspec,aform,retspec,rform,fnspec,fform,gfn,specs,meta20109){ this.argspec = argspec; this.aform = aform; this.retspec = retspec; this.rform = rform; this.fnspec = fnspec; this.fform = fform; this.gfn = gfn; this.specs = specs; this.meta20109 = meta20109; this.cljs$lang$protocol_mask$partition0$ = 393472; this.cljs$lang$protocol_mask$partition1$ = 0; }); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_20110,meta20109__$1){ var self__ = this; var _20110__$1 = this; return (new cljs.spec.alpha.t_cljs$spec$alpha20108(self__.argspec,self__.aform,self__.retspec,self__.rform,self__.fnspec,self__.fform,self__.gfn,self__.specs,meta20109__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_20110){ var self__ = this; var _20110__$1 = this; return self__.meta20109; })); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this$,k){ var self__ = this; var this$__$1 = this; return cljs.core.get.cljs$core$IFn$_invoke$arity$2(self__.specs,k); })); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (_,k,not_found){ var self__ = this; var ___$1 = this; return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.specs,k,not_found); })); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$spec$alpha$Spec$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 = (function (_,f){ var self__ = this; var ___$1 = this; if(cljs.core.ifn_QMARK_(f)){ if((f === cljs.spec.alpha.validate_fn(f,self__.specs,cljs.spec.alpha._STAR_fspec_iterations_STAR_))){ return f; } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } })); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 = (function (_,f){ var self__ = this; var ___$1 = this; return f; })); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 = (function (_,path,via,in$,f){ var self__ = this; var ___$1 = this; if(cljs.core.ifn_QMARK_(f)){ var args = cljs.spec.alpha.validate_fn(f,self__.specs,(100)); if((f === args)){ return null; } else { var ret = (function (){try{return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f,args); }catch (e20119){if((e20119 instanceof Error)){ var t = e20119; return t; } else { throw e20119; } }})(); if((ret instanceof Error)){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"pred","pred",1927423397),cljs.core.list(new cljs.core.Symbol(null,"apply","apply",-1334050276,null),new cljs.core.Symbol(null,"fn","fn",465265323,null)),new cljs.core.Keyword(null,"val","val",128701612),args,new cljs.core.Keyword(null,"reason","reason",-2070751759),ret.message,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); } else { var cret = cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(self__.retspec,ret,self__.rform); if(cljs.spec.alpha.invalid_QMARK_(cret)){ return cljs.spec.alpha.explain_1(self__.rform,self__.retspec,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,new cljs.core.Keyword(null,"ret","ret",-468222814)),via,in$,ret); } else { if(cljs.core.truth_(self__.fnspec)){ var cargs = cljs.spec.alpha.conform(self__.argspec,args); return cljs.spec.alpha.explain_1(self__.fform,self__.fnspec,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,new cljs.core.Keyword(null,"fn","fn",-1175266204)),via,in$,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"args","args",1315556576),cargs,new cljs.core.Keyword(null,"ret","ret",-468222814),cret], null)); } else { return null; } } } } } else { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"path","path",-188191168),path,new cljs.core.Keyword(null,"pred","pred",1927423397),new cljs.core.Symbol(null,"ifn?","ifn?",-2106461064,null),new cljs.core.Keyword(null,"val","val",128701612),f,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)], null); } })); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 = (function (_,overrides,___$1,___$2){ var self__ = this; var ___$3 = this; if(cljs.core.truth_(self__.gfn)){ return (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null)); } else { return cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function() { var G__20776__delegate = function (args){ if(cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(self__.argspec,args)){ } else { throw (new Error(["Assert failed: ",(function (){var sb__5690__auto__ = (new goog.string.StringBuffer()); var _STAR_print_newline_STAR__orig_val__20133_20777 = cljs.core._STAR_print_newline_STAR_; var _STAR_print_fn_STAR__orig_val__20134_20778 = cljs.core._STAR_print_fn_STAR_; var _STAR_print_newline_STAR__temp_val__20135_20779 = true; var _STAR_print_fn_STAR__temp_val__20136_20780 = (function (x__5691__auto__){ return sb__5690__auto__.append(x__5691__auto__); }); (cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__temp_val__20135_20779); (cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__temp_val__20136_20780); try{cljs.spec.alpha.explain(self__.argspec,args); }finally {(cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__orig_val__20134_20778); (cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__orig_val__20133_20777); } return cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__5690__auto__); })(),"\n","(pvalid? argspec args)"].join(''))); } return cljs.spec.gen.alpha.generate(cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2(self__.retspec,overrides)); }; var G__20776 = function (var_args){ var args = null; if (arguments.length > 0) { var G__20781__i = 0, G__20781__a = new Array(arguments.length - 0); while (G__20781__i < G__20781__a.length) {G__20781__a[G__20781__i] = arguments[G__20781__i + 0]; ++G__20781__i;} args = new cljs.core.IndexedSeq(G__20781__a,0,null); } return G__20776__delegate.call(this,args);}; G__20776.cljs$lang$maxFixedArity = 0; G__20776.cljs$lang$applyTo = (function (arglist__20782){ var args = cljs.core.seq(arglist__20782); return G__20776__delegate(args); }); G__20776.cljs$core$IFn$_invoke$arity$variadic = G__20776__delegate; return G__20776; })() ], 0)); } })); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 = (function (_,gfn__$1){ var self__ = this; var ___$1 = this; return (cljs.spec.alpha.fspec_impl.cljs$core$IFn$_invoke$arity$7 ? cljs.spec.alpha.fspec_impl.cljs$core$IFn$_invoke$arity$7(self__.argspec,self__.aform,self__.retspec,self__.rform,self__.fnspec,self__.fform,gfn__$1) : cljs.spec.alpha.fspec_impl.call(null,self__.argspec,self__.aform,self__.retspec,self__.rform,self__.fnspec,self__.fform,gfn__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha20108.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 = (function (_){ var self__ = this; var ___$1 = this; return cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.spec.alpha","fspec","cljs.spec.alpha/fspec",-1289128341,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,"args","args",1315556576),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,self__.aform,null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,"ret","ret",-468222814),null,(1),null)),(new cljs.core.List(null,self__.rform,null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,"fn","fn",-1175266204),null,(1),null)),(new cljs.core.List(null,self__.fform,null,(1),null))], 0)))); })); (cljs.spec.alpha.t_cljs$spec$alpha20108.getBasis = (function (){ return new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"argspec","argspec",-1207762746,null),new cljs.core.Symbol(null,"aform","aform",531303525,null),new cljs.core.Symbol(null,"retspec","retspec",-920025354,null),new cljs.core.Symbol(null,"rform","rform",-1420499912,null),new cljs.core.Symbol(null,"fnspec","fnspec",-1865712406,null),new cljs.core.Symbol(null,"fform","fform",-176049972,null),new cljs.core.Symbol(null,"gfn","gfn",-1862918295,null),new cljs.core.Symbol(null,"specs","specs",-1227865028,null),new cljs.core.Symbol(null,"meta20109","meta20109",-809886973,null)], null); })); (cljs.spec.alpha.t_cljs$spec$alpha20108.cljs$lang$type = true); (cljs.spec.alpha.t_cljs$spec$alpha20108.cljs$lang$ctorStr = "cljs.spec.alpha/t_cljs$spec$alpha20108"); (cljs.spec.alpha.t_cljs$spec$alpha20108.cljs$lang$ctorPrWriter = (function (this__5330__auto__,writer__5331__auto__,opt__5332__auto__){ return cljs.core._write(writer__5331__auto__,"cljs.spec.alpha/t_cljs$spec$alpha20108"); })); /** * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha20108. */ cljs.spec.alpha.__GT_t_cljs$spec$alpha20108 = (function cljs$spec$alpha$__GT_t_cljs$spec$alpha20108(argspec,aform,retspec,rform,fnspec,fform,gfn,specs,meta20109){ return (new cljs.spec.alpha.t_cljs$spec$alpha20108(argspec,aform,retspec,rform,fnspec,fform,gfn,specs,meta20109)); }); /** * Do not call this directly, use 'fspec' */ cljs.spec.alpha.fspec_impl = (function cljs$spec$alpha$fspec_impl(argspec,aform,retspec,rform,fnspec,fform,gfn){ var specs = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"args","args",1315556576),argspec,new cljs.core.Keyword(null,"ret","ret",-468222814),retspec,new cljs.core.Keyword(null,"fn","fn",-1175266204),fnspec], null); return (new cljs.spec.alpha.t_cljs$spec$alpha20108(argspec,aform,retspec,rform,fnspec,fform,gfn,specs,cljs.core.PersistentArrayMap.EMPTY)); }); cljs.spec.alpha.def_impl(new cljs.core.Keyword("cljs.spec.alpha","kvs->map","cljs.spec.alpha/kvs->map",579713455),cljs.core.list(new cljs.core.Symbol("cljs.spec.alpha","conformer","cljs.spec.alpha/conformer",2140085535,null),cljs.core.list(new cljs.core.Symbol(null,"fn*","fn*",-752876845,null),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"p1__20137#","p1__20137#",-829094618,null)], null),cljs.core.list(new cljs.core.Symbol("cljs.core","zipmap","cljs.core/zipmap",-1902130674,null),cljs.core.list(new cljs.core.Symbol("cljs.core","map","cljs.core/map",-338988913,null),new cljs.core.Keyword("cljs.spec.alpha","k","cljs.spec.alpha/k",-1602615178),new cljs.core.Symbol(null,"p1__20137#","p1__20137#",-829094618,null)),cljs.core.list(new cljs.core.Symbol("cljs.core","map","cljs.core/map",-338988913,null),new cljs.core.Keyword("cljs.spec.alpha","v","cljs.spec.alpha/v",552625740),new cljs.core.Symbol(null,"p1__20137#","p1__20137#",-829094618,null)))),cljs.core.list(new cljs.core.Symbol(null,"fn*","fn*",-752876845,null),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"p1__20138#","p1__20138#",266661185,null)], null),cljs.core.list(new cljs.core.Symbol("cljs.core","map","cljs.core/map",-338988913,null),cljs.core.list(new cljs.core.Symbol("cljs.core","fn","cljs.core/fn",-1065745098,null),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"k","k",-505765866,null),new cljs.core.Symbol(null,"v","v",1661996586,null)], null)], null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword("cljs.spec.alpha","k","cljs.spec.alpha/k",-1602615178),new cljs.core.Symbol(null,"k","k",-505765866,null),new cljs.core.Keyword("cljs.spec.alpha","v","cljs.spec.alpha/v",552625740),new cljs.core.Symbol(null,"v","v",1661996586,null)], null)),new cljs.core.Symbol(null,"p1__20138#","p1__20138#",266661185,null)))),cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$5(cljs.core.list(new cljs.core.Symbol("cljs.spec.alpha","conformer","cljs.spec.alpha/conformer",2140085535,null),cljs.core.list(new cljs.core.Symbol("cljs.core","fn","cljs.core/fn",-1065745098,null),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"%","%",-950237169,null)], null),cljs.core.list(new cljs.core.Symbol("cljs.core","zipmap","cljs.core/zipmap",-1902130674,null),cljs.core.list(new cljs.core.Symbol("cljs.core","map","cljs.core/map",-338988913,null),new cljs.core.Keyword("cljs.spec.alpha","k","cljs.spec.alpha/k",-1602615178),new cljs.core.Symbol(null,"%","%",-950237169,null)),cljs.core.list(new cljs.core.Symbol("cljs.core","map","cljs.core/map",-338988913,null),new cljs.core.Keyword("cljs.spec.alpha","v","cljs.spec.alpha/v",552625740),new cljs.core.Symbol(null,"%","%",-950237169,null)))),cljs.core.list(new cljs.core.Symbol("cljs.core","fn","cljs.core/fn",-1065745098,null),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"%","%",-950237169,null)], null),cljs.core.list(new cljs.core.Symbol("cljs.core","map","cljs.core/map",-338988913,null),cljs.core.list(new cljs.core.Symbol("cljs.core","fn","cljs.core/fn",-1065745098,null),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"k","k",-505765866,null),new cljs.core.Symbol(null,"v","v",1661996586,null)], null)], null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword("cljs.spec.alpha","k","cljs.spec.alpha/k",-1602615178),new cljs.core.Symbol(null,"k","k",-505765866,null),new cljs.core.Keyword("cljs.spec.alpha","v","cljs.spec.alpha/v",552625740),new cljs.core.Symbol(null,"v","v",1661996586,null)], null)),new cljs.core.Symbol(null,"%","%",-950237169,null)))),(function (p1__20137_SHARP_){ return cljs.core.zipmap(cljs.core.map.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","k","cljs.spec.alpha/k",-1602615178),p1__20137_SHARP_),cljs.core.map.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("cljs.spec.alpha","v","cljs.spec.alpha/v",552625740),p1__20137_SHARP_)); }),null,true,(function (p1__20138_SHARP_){ return cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__20168){ var vec__20169 = p__20168; var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__20169,(0),null); var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__20169,(1),null); return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword("cljs.spec.alpha","k","cljs.spec.alpha/k",-1602615178),k,new cljs.core.Keyword("cljs.spec.alpha","v","cljs.spec.alpha/v",552625740),v], null); }),p1__20138_SHARP_); }))); /** * @constructor * @implements {cljs.spec.alpha.Spec} * @implements {cljs.core.IMeta} * @implements {cljs.spec.alpha.Specize} * @implements {cljs.core.IWithMeta} */ cljs.spec.alpha.t_cljs$spec$alpha20175 = (function (spec,meta20176){ this.spec = spec; this.meta20176 = meta20176; this.cljs$lang$protocol_mask$partition0$ = 393216; this.cljs$lang$protocol_mask$partition1$ = 0; }); (cljs.spec.alpha.t_cljs$spec$alpha20175.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_20177,meta20176__$1){ var self__ = this; var _20177__$1 = this; return (new cljs.spec.alpha.t_cljs$spec$alpha20175(self__.spec,meta20176__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha20175.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_20177){ var self__ = this; var _20177__$1 = this; return self__.meta20176; })); (cljs.spec.alpha.t_cljs$spec$alpha20175.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha20175.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha20175.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha20175.prototype.cljs$spec$alpha$Spec$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha20175.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; var ret = cljs.spec.alpha.conform_STAR_(cljs.core.deref(self__.spec),x); if(cljs.spec.alpha.invalid_QMARK_(ret)){ return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } else { return x; } })); (cljs.spec.alpha.t_cljs$spec$alpha20175.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; return cljs.spec.alpha.unform_STAR_(cljs.core.deref(self__.spec),x); })); (cljs.spec.alpha.t_cljs$spec$alpha20175.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 = (function (_,path,via,in$,x){ var self__ = this; var ___$1 = this; return cljs.spec.alpha.explain_STAR_(cljs.core.deref(self__.spec),path,via,in$,x); })); (cljs.spec.alpha.t_cljs$spec$alpha20175.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 = (function (_,overrides,path,rmap){ var self__ = this; var ___$1 = this; return cljs.spec.alpha.gen_STAR_(cljs.core.deref(self__.spec),overrides,path,rmap); })); (cljs.spec.alpha.t_cljs$spec$alpha20175.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 = (function (_,gfn){ var self__ = this; var ___$1 = this; var G__20188 = cljs.spec.alpha.with_gen_STAR_(cljs.core.deref(self__.spec),gfn); return (cljs.spec.alpha.nonconforming.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.nonconforming.cljs$core$IFn$_invoke$arity$1(G__20188) : cljs.spec.alpha.nonconforming.call(null,G__20188)); })); (cljs.spec.alpha.t_cljs$spec$alpha20175.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 = (function (_){ var self__ = this; var ___$1 = this; return cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.spec.alpha","nonconforming","cljs.spec.alpha/nonconforming",-1009218508,null),null,(1),null)),(new cljs.core.List(null,cljs.spec.alpha.describe_STAR_(cljs.core.deref(self__.spec)),null,(1),null))))); })); (cljs.spec.alpha.t_cljs$spec$alpha20175.getBasis = (function (){ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"spec","spec",1988051928,null),new cljs.core.Symbol(null,"meta20176","meta20176",943248911,null)], null); })); (cljs.spec.alpha.t_cljs$spec$alpha20175.cljs$lang$type = true); (cljs.spec.alpha.t_cljs$spec$alpha20175.cljs$lang$ctorStr = "cljs.spec.alpha/t_cljs$spec$alpha20175"); (cljs.spec.alpha.t_cljs$spec$alpha20175.cljs$lang$ctorPrWriter = (function (this__5330__auto__,writer__5331__auto__,opt__5332__auto__){ return cljs.core._write(writer__5331__auto__,"cljs.spec.alpha/t_cljs$spec$alpha20175"); })); /** * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha20175. */ cljs.spec.alpha.__GT_t_cljs$spec$alpha20175 = (function cljs$spec$alpha$__GT_t_cljs$spec$alpha20175(spec,meta20176){ return (new cljs.spec.alpha.t_cljs$spec$alpha20175(spec,meta20176)); }); /** * takes a spec and returns a spec that has the same properties except * 'conform' returns the original (not the conformed) value. Note, will specize regex ops. */ cljs.spec.alpha.nonconforming = (function cljs$spec$alpha$nonconforming(spec){ var spec__$1 = (new cljs.core.Delay((function (){ return cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec); }),null)); return (new cljs.spec.alpha.t_cljs$spec$alpha20175(spec__$1,cljs.core.PersistentArrayMap.EMPTY)); }); /** * @constructor * @implements {cljs.spec.alpha.Spec} * @implements {cljs.core.IMeta} * @implements {cljs.spec.alpha.Specize} * @implements {cljs.core.IWithMeta} */ cljs.spec.alpha.t_cljs$spec$alpha20199 = (function (form,pred,gfn,spec,meta20200){ this.form = form; this.pred = pred; this.gfn = gfn; this.spec = spec; this.meta20200 = meta20200; this.cljs$lang$protocol_mask$partition0$ = 393216; this.cljs$lang$protocol_mask$partition1$ = 0; }); (cljs.spec.alpha.t_cljs$spec$alpha20199.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_20201,meta20200__$1){ var self__ = this; var _20201__$1 = this; return (new cljs.spec.alpha.t_cljs$spec$alpha20199(self__.form,self__.pred,self__.gfn,self__.spec,meta20200__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha20199.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_20201){ var self__ = this; var _20201__$1 = this; return self__.meta20200; })); (cljs.spec.alpha.t_cljs$spec$alpha20199.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha20199.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha20199.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var self__ = this; var s__$1 = this; return s__$1; })); (cljs.spec.alpha.t_cljs$spec$alpha20199.prototype.cljs$spec$alpha$Spec$ = cljs.core.PROTOCOL_SENTINEL); (cljs.spec.alpha.t_cljs$spec$alpha20199.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; if((x == null)){ return null; } else { return cljs.spec.alpha.conform_STAR_(cljs.core.deref(self__.spec),x); } })); (cljs.spec.alpha.t_cljs$spec$alpha20199.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 = (function (_,x){ var self__ = this; var ___$1 = this; if((x == null)){ return null; } else { return cljs.spec.alpha.unform_STAR_(cljs.core.deref(self__.spec),x); } })); (cljs.spec.alpha.t_cljs$spec$alpha20199.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 = (function (_,path,via,in$,x){ var self__ = this; var ___$1 = this; if(((cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(self__.spec),x)) || ((x == null)))){ return null; } else { return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.spec.alpha.explain_1(self__.form,self__.pred,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,new cljs.core.Keyword("cljs.spec.alpha","pred","cljs.spec.alpha/pred",-798342594)),via,in$,x),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"path","path",-188191168),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,new cljs.core.Keyword("cljs.spec.alpha","nil","cljs.spec.alpha/nil",1733813950)),new cljs.core.Keyword(null,"pred","pred",1927423397),new cljs.core.Symbol(null,"nil?","nil?",1612038930,null),new cljs.core.Keyword(null,"val","val",128701612),x,new cljs.core.Keyword(null,"via","via",-1904457336),via,new cljs.core.Keyword(null,"in","in",-1531184865),in$], null)); } })); (cljs.spec.alpha.t_cljs$spec$alpha20199.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 = (function (_,overrides,path,rmap){ var self__ = this; var ___$1 = this; if(cljs.core.truth_(self__.gfn)){ return (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null)); } else { return cljs.spec.gen.alpha.frequency.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),cljs.spec.gen.alpha.delay_impl((new cljs.core.Delay((function (){ return cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([null], 0)); }),null)))], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(9),cljs.spec.gen.alpha.delay_impl((new cljs.core.Delay((function (){ return cljs.spec.alpha.gensub(self__.pred,overrides,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,new cljs.core.Keyword("cljs.spec.alpha","pred","cljs.spec.alpha/pred",-798342594)),rmap,self__.form); }),null)))], null)], null)], 0)); } })); (cljs.spec.alpha.t_cljs$spec$alpha20199.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 = (function (_,gfn__$1){ var self__ = this; var ___$1 = this; return (cljs.spec.alpha.nilable_impl.cljs$core$IFn$_invoke$arity$3 ? cljs.spec.alpha.nilable_impl.cljs$core$IFn$_invoke$arity$3(self__.form,self__.pred,gfn__$1) : cljs.spec.alpha.nilable_impl.call(null,self__.form,self__.pred,gfn__$1)); })); (cljs.spec.alpha.t_cljs$spec$alpha20199.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 = (function (_){ var self__ = this; var ___$1 = this; return cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.spec.alpha","nilable","cljs.spec.alpha/nilable",1628308748,null),null,(1),null)),(new cljs.core.List(null,self__.form,null,(1),null))))); })); (cljs.spec.alpha.t_cljs$spec$alpha20199.getBasis = (function (){ return new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"form","form",16469056,null),new cljs.core.Symbol(null,"pred","pred",-727012372,null),new cljs.core.Symbol(null,"gfn","gfn",-1862918295,null),new cljs.core.Symbol(null,"spec","spec",1988051928,null),new cljs.core.Symbol(null,"meta20200","meta20200",758462693,null)], null); })); (cljs.spec.alpha.t_cljs$spec$alpha20199.cljs$lang$type = true); (cljs.spec.alpha.t_cljs$spec$alpha20199.cljs$lang$ctorStr = "cljs.spec.alpha/t_cljs$spec$alpha20199"); (cljs.spec.alpha.t_cljs$spec$alpha20199.cljs$lang$ctorPrWriter = (function (this__5330__auto__,writer__5331__auto__,opt__5332__auto__){ return cljs.core._write(writer__5331__auto__,"cljs.spec.alpha/t_cljs$spec$alpha20199"); })); /** * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha20199. */ cljs.spec.alpha.__GT_t_cljs$spec$alpha20199 = (function cljs$spec$alpha$__GT_t_cljs$spec$alpha20199(form,pred,gfn,spec,meta20200){ return (new cljs.spec.alpha.t_cljs$spec$alpha20199(form,pred,gfn,spec,meta20200)); }); /** * Do not call this directly, use 'nilable' */ cljs.spec.alpha.nilable_impl = (function cljs$spec$alpha$nilable_impl(form,pred,gfn){ var spec = (new cljs.core.Delay((function (){ return cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$2(pred,form); }),null)); return (new cljs.spec.alpha.t_cljs$spec$alpha20199(form,pred,gfn,spec,cljs.core.PersistentArrayMap.EMPTY)); }); /** * generates a number (default 10) of values compatible with spec and maps conform over them, * returning a sequence of [val conformed-val] tuples. Optionally takes * a generator overrides map as per gen */ cljs.spec.alpha.exercise = (function cljs$spec$alpha$exercise(var_args){ var G__20224 = arguments.length; switch (G__20224) { case 1: return cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$1((arguments[(0)])); break; case 2: return cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; case 3: return cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$1 = (function (spec){ return cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$2(spec,(10)); })); (cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$2 = (function (spec,n){ return cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$3(spec,n,null); })); (cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$3 = (function (spec,n,overrides){ return cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__20219_SHARP_){ return (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[p1__20219_SHARP_,cljs.spec.alpha.conform(spec,p1__20219_SHARP_)],null)); }),cljs.spec.gen.alpha.sample.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2(spec,overrides),n], 0))); })); (cljs.spec.alpha.exercise.cljs$lang$maxFixedArity = 3); /** * Return true if inst at or after start and before end */ cljs.spec.alpha.inst_in_range_QMARK_ = (function cljs$spec$alpha$inst_in_range_QMARK_(start,end,inst){ var and__5043__auto__ = cljs.core.inst_QMARK_(inst); if(and__5043__auto__){ var t = cljs.core.inst_ms(inst); return (((cljs.core.inst_ms(start) <= t)) && ((t < cljs.core.inst_ms(end)))); } else { return and__5043__auto__; } }); /** * Return true if start <= val, val < end and val is a fixed * precision integer. */ cljs.spec.alpha.int_in_range_QMARK_ = (function cljs$spec$alpha$int_in_range_QMARK_(start,end,val){ if(cljs.core.integer_QMARK_(val)){ return (((start <= val)) && ((val < end))); } else { if((val instanceof cljs.spec.alpha.goog$module$goog$math$Long)){ var and__5043__auto__ = start.lessThanOrEqual(val); if(cljs.core.truth_(and__5043__auto__)){ return val.lessThan(end); } else { return and__5043__auto__; } } else { if((val instanceof goog.math.Integer)){ var and__5043__auto__ = start.lessThanOrEqual(val); if(cljs.core.truth_(and__5043__auto__)){ return val.lessThan(end); } else { return and__5043__auto__; } } else { return false; } } } }); if((typeof cljs !== 'undefined') && (typeof cljs.spec !== 'undefined') && (typeof cljs.spec.alpha !== 'undefined') && (typeof cljs.spec.alpha._STAR_compile_asserts_STAR_ !== 'undefined')){ } else { /** * If true, compiler will enable spec asserts, which are then * subject to runtime control via check-asserts? If false, compiler * will eliminate all spec assert overhead. See 'assert'. * Initially set to the negation of the ':elide-asserts' compiler option. * Defaults to true. */ cljs.spec.alpha._STAR_compile_asserts_STAR_ = true; } if((typeof cljs !== 'undefined') && (typeof cljs.spec !== 'undefined') && (typeof cljs.spec.alpha !== 'undefined') && (typeof cljs.spec.alpha._STAR_runtime_asserts_STAR_ !== 'undefined')){ } else { cljs.spec.alpha._STAR_runtime_asserts_STAR_ = false; } /** * Returns the value set by check-asserts. */ cljs.spec.alpha.check_asserts_QMARK_ = (function cljs$spec$alpha$check_asserts_QMARK_(){ return cljs.spec.alpha._STAR_runtime_asserts_STAR_; }); /** * Enable or disable spec asserts that have been compiled * with '*compile-asserts*' true. See 'assert'. * Initially set to boolean value of cljs.spec.alpha/*runtime-asserts*. * Defaults to false. */ cljs.spec.alpha.check_asserts = (function cljs$spec$alpha$check_asserts(flag){ return (cljs.spec.alpha._STAR_runtime_asserts_STAR_ = flag); }); /** * Do not call this directly, use 'assert'. */ cljs.spec.alpha.assert_STAR_ = (function cljs$spec$alpha$assert_STAR_(spec,x){ if(cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2(spec,x)){ return x; } else { var ed = cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.explain_data_STAR_(spec,cljs.core.PersistentVector.EMPTY,cljs.core.PersistentVector.EMPTY,cljs.core.PersistentVector.EMPTY,x),new cljs.core.Keyword("cljs.spec.alpha","failure","cljs.spec.alpha/failure",188258592),new cljs.core.Keyword(null,"assertion-failed","assertion-failed",-970534477))], 0)); throw (new Error(["Spec assertion failed\n",(function (){var sb__5690__auto__ = (new goog.string.StringBuffer()); var _STAR_print_newline_STAR__orig_val__20256_20803 = cljs.core._STAR_print_newline_STAR_; var _STAR_print_fn_STAR__orig_val__20257_20804 = cljs.core._STAR_print_fn_STAR_; var _STAR_print_newline_STAR__temp_val__20258_20805 = true; var _STAR_print_fn_STAR__temp_val__20259_20806 = (function (x__5691__auto__){ return sb__5690__auto__.append(x__5691__auto__); }); (cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__temp_val__20258_20805); (cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__temp_val__20259_20806); try{cljs.spec.alpha.explain_out(ed); }finally {(cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__orig_val__20257_20804); (cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__orig_val__20256_20803); } return cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__5690__auto__); })()].join(''))); } }); //# sourceMappingURL=cljs.spec.alpha.js.map