text: // Compiled by ClojureScript 1.10.516 {:static-fns true, :optimize-constants true}
  goog.provide('cljs.pprint');
  goog.require('cljs.core');
  goog.require('cljs.core.constants');
  goog.require('cljs.core');
  goog.require('clojure.string');
  goog.require('goog.string');
  goog.require('goog.string.StringBuffer');
  cljs.pprint.print = (function cljs$pprint$print(var_args){
  var args__4736__auto__ = [];
  var len__4730__auto___13398 = arguments.length;
  var i__4731__auto___13399 = (0);
  while(true){
  if((i__4731__auto___13399 < len__4730__auto___13398)){
  args__4736__auto__.push((arguments[i__4731__auto___13399]));
  
  var G__13400 = (i__4731__auto___13399 + (1));
  i__4731__auto___13399 = G__13400;
  continue;
  } else {
  }
  break;
  }
  
  var argseq__4737__auto__ = ((((0) < args__4736__auto__.length))?(new cljs.core.IndexedSeq(args__4736__auto__.slice((0)),(0),null)):null);
  return cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(argseq__4737__auto__);
  });
  
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic = (function (more){
  return cljs.core._write(cljs.core._STAR_out_STAR_,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.print_str,more));
  });
  
  cljs.pprint.print.cljs$lang$maxFixedArity = (0);
  
  /** @this {Function} */
  cljs.pprint.print.cljs$lang$applyTo = (function (seq13397){
  var self__4718__auto__ = this;
  return self__4718__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq13397));
  });
  
  cljs.pprint.println = (function cljs$pprint$println(var_args){
  var args__4736__auto__ = [];
  var len__4730__auto___13402 = arguments.length;
  var i__4731__auto___13403 = (0);
  while(true){
  if((i__4731__auto___13403 < len__4730__auto___13402)){
  args__4736__auto__.push((arguments[i__4731__auto___13403]));
  
  var G__13404 = (i__4731__auto___13403 + (1));
  i__4731__auto___13403 = G__13404;
  continue;
  } else {
  }
  break;
  }
  
  var argseq__4737__auto__ = ((((0) < args__4736__auto__.length))?(new cljs.core.IndexedSeq(args__4736__auto__.slice((0)),(0),null)):null);
  return cljs.pprint.println.cljs$core$IFn$_invoke$arity$variadic(argseq__4737__auto__);
  });
  
  cljs.pprint.println.cljs$core$IFn$_invoke$arity$variadic = (function (more){
  cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.pprint.print,more);
  
  return cljs.core._write(cljs.core._STAR_out_STAR_,"\n");
  });
  
  cljs.pprint.println.cljs$lang$maxFixedArity = (0);
  
  /** @this {Function} */
  cljs.pprint.println.cljs$lang$applyTo = (function (seq13401){
  var self__4718__auto__ = this;
  return self__4718__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq13401));
  });
  
  cljs.pprint.print_char = (function cljs$pprint$print_char(c){
  return cljs.core._write(cljs.core._STAR_out_STAR_,(function (){var pred__13405 = cljs.core._EQ_;
  var expr__13406 = c;
  if(cljs.core.truth_((function (){var G__13408 = "\b";
  var G__13409 = expr__13406;
  return (pred__13405.cljs$core$IFn$_invoke$arity$2 ? pred__13405.cljs$core$IFn$_invoke$arity$2(G__13408,G__13409) : pred__13405.call(null,G__13408,G__13409));
  })())){
  return "\\backspace";
  } else {
  if(cljs.core.truth_((function (){var G__13410 = "\t";
  var G__13411 = expr__13406;
  return (pred__13405.cljs$core$IFn$_invoke$arity$2 ? pred__13405.cljs$core$IFn$_invoke$arity$2(G__13410,G__13411) : pred__13405.call(null,G__13410,G__13411));
  })())){
  return "\\tab";
  } else {
  if(cljs.core.truth_((function (){var G__13412 = "\n";
  var G__13413 = expr__13406;
  return (pred__13405.cljs$core$IFn$_invoke$arity$2 ? pred__13405.cljs$core$IFn$_invoke$arity$2(G__13412,G__13413) : pred__13405.call(null,G__13412,G__13413));
  })())){
  return "\\newline";
  } else {
  if(cljs.core.truth_((function (){var G__13414 = "\f";
  var G__13415 = expr__13406;
  return (pred__13405.cljs$core$IFn$_invoke$arity$2 ? pred__13405.cljs$core$IFn$_invoke$arity$2(G__13414,G__13415) : pred__13405.call(null,G__13414,G__13415));
  })())){
  return "\\formfeed";
  } else {
  if(cljs.core.truth_((function (){var G__13416 = "\r";
  var G__13417 = expr__13406;
  return (pred__13405.cljs$core$IFn$_invoke$arity$2 ? pred__13405.cljs$core$IFn$_invoke$arity$2(G__13416,G__13417) : pred__13405.call(null,G__13416,G__13417));
  })())){
  return "\\return";
  } else {
  if(cljs.core.truth_((function (){var G__13418 = "\"";
  var G__13419 = expr__13406;
  return (pred__13405.cljs$core$IFn$_invoke$arity$2 ? pred__13405.cljs$core$IFn$_invoke$arity$2(G__13418,G__13419) : pred__13405.call(null,G__13418,G__13419));
  })())){
  return "\\\"";
  } else {
  if(cljs.core.truth_((function (){var G__13420 = "\\";
  var G__13421 = expr__13406;
  return (pred__13405.cljs$core$IFn$_invoke$arity$2 ? pred__13405.cljs$core$IFn$_invoke$arity$2(G__13420,G__13421) : pred__13405.call(null,G__13420,G__13421));
  })())){
  return "\\\\";
  } else {
  return ["\\",cljs.core.str.cljs$core$IFn$_invoke$arity$1(c)].join('');
  }
  }
  }
  }
  }
  }
  }
  })());
  });
  cljs.pprint.pr = (function cljs$pprint$pr(var_args){
  var args__4736__auto__ = [];
  var len__4730__auto___13423 = arguments.length;
  var i__4731__auto___13424 = (0);
  while(true){
  if((i__4731__auto___13424 < len__4730__auto___13423)){
  args__4736__auto__.push((arguments[i__4731__auto___13424]));
  
  var G__13425 = (i__4731__auto___13424 + (1));
  i__4731__auto___13424 = G__13425;
  continue;
  } else {
  }
  break;
  }
  
  var argseq__4737__auto__ = ((((0) < args__4736__auto__.length))?(new cljs.core.IndexedSeq(args__4736__auto__.slice((0)),(0),null)):null);
  return cljs.pprint.pr.cljs$core$IFn$_invoke$arity$variadic(argseq__4737__auto__);
  });
  
  cljs.pprint.pr.cljs$core$IFn$_invoke$arity$variadic = (function (more){
  return cljs.core._write(cljs.core._STAR_out_STAR_,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.pr_str,more));
  });
  
  cljs.pprint.pr.cljs$lang$maxFixedArity = (0);
  
  /** @this {Function} */
  cljs.pprint.pr.cljs$lang$applyTo = (function (seq13422){
  var self__4718__auto__ = this;
  return self__4718__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq13422));
  });
  
  cljs.pprint.prn = (function cljs$pprint$prn(var_args){
  var args__4736__auto__ = [];
  var len__4730__auto___13427 = arguments.length;
  var i__4731__auto___13428 = (0);
  while(true){
  if((i__4731__auto___13428 < len__4730__auto___13427)){
  args__4736__auto__.push((arguments[i__4731__auto___13428]));
  
  var G__13429 = (i__4731__auto___13428 + (1));
  i__4731__auto___13428 = G__13429;
  continue;
  } else {
  }
  break;
  }
  
  var argseq__4737__auto__ = ((((0) < args__4736__auto__.length))?(new cljs.core.IndexedSeq(args__4736__auto__.slice((0)),(0),null)):null);
  return cljs.pprint.prn.cljs$core$IFn$_invoke$arity$variadic(argseq__4737__auto__);
  });
  
  cljs.pprint.prn.cljs$core$IFn$_invoke$arity$variadic = (function (more){
  cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.pprint.pr,more);
  
  return cljs.core._write(cljs.core._STAR_out_STAR_,"\n");
  });
  
  cljs.pprint.prn.cljs$lang$maxFixedArity = (0);
  
  /** @this {Function} */
  cljs.pprint.prn.cljs$lang$applyTo = (function (seq13426){
  var self__4718__auto__ = this;
  return self__4718__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq13426));
  });
  
  /**
   * Returns true if n is an float.
   */
  cljs.pprint.float_QMARK_ = (function cljs$pprint$float_QMARK_(n){
  return ((typeof n === 'number') && ((!(isNaN(n)))) && ((!((n === Infinity)))) && ((!((parseFloat(n) === parseInt(n,(10)))))));
  });
  /**
   * Convert char to int
   */
  cljs.pprint.char_code = (function cljs$pprint$char_code(c){
  if(typeof c === 'number'){
  return c;
  } else {
  if(((typeof c === 'string') && ((c.length === (1))))){
  return c.charCodeAt((0));
  } else {
  throw (new Error("Argument to char must be a character or number"));
  
  }
  }
  });
  cljs.pprint.map_passing_context = (function cljs$pprint$map_passing_context(func,initial_context,lis){
  var context = initial_context;
  var lis__$1 = lis;
  var acc = cljs.core.PersistentVector.EMPTY;
  while(true){
  if(cljs.core.empty_QMARK_(lis__$1)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [acc,context], null);
  } else {
  var this$ = cljs.core.first(lis__$1);
  var remainder = cljs.core.next(lis__$1);
  var vec__13433 = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(func,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [this$,context], null));
  var result = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13433,(0),null);
  var new_context = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13433,(1),null);
  var G__13436 = new_context;
  var G__13437 = remainder;
  var G__13438 = cljs.core.conj.cljs$core$IFn$_invoke$arity$2(acc,result);
  context = G__13436;
  lis__$1 = G__13437;
  acc = G__13438;
  continue;
  }
  break;
  }
  });
  cljs.pprint.consume = (function cljs$pprint$consume(func,initial_context){
  var context = initial_context;
  var acc = cljs.core.PersistentVector.EMPTY;
  while(true){
  var vec__13442 = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(func,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [context], null));
  var result = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13442,(0),null);
  var new_context = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13442,(1),null);
  if(cljs.core.not(result)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [acc,new_context], null);
  } else {
  var G__13445 = new_context;
  var G__13446 = cljs.core.conj.cljs$core$IFn$_invoke$arity$2(acc,result);
  context = G__13445;
  acc = G__13446;
  continue;
  }
  break;
  }
  });
  cljs.pprint.consume_while = (function cljs$pprint$consume_while(func,initial_context){
  var context = initial_context;
  var acc = cljs.core.PersistentVector.EMPTY;
  while(true){
  var vec__13450 = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(func,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [context], null));
  var result = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13450,(0),null);
  var continue$ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13450,(1),null);
  var new_context = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13450,(2),null);
  if(cljs.core.not(continue$)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [acc,context], null);
  } else {
  var G__13453 = new_context;
  var G__13454 = cljs.core.conj.cljs$core$IFn$_invoke$arity$2(acc,result);
  context = G__13453;
  acc = G__13454;
  continue;
  }
  break;
  }
  });
  cljs.pprint.unzip_map = (function cljs$pprint$unzip_map(m){
  
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,(function (){var iter__4523__auto__ = (function cljs$pprint$unzip_map_$_iter__13455(s__13456){
  return (new cljs.core.LazySeq(null,(function (){
  var s__13456__$1 = s__13456;
  while(true){
  var temp__5720__auto__ = cljs.core.seq(s__13456__$1);
  if(temp__5720__auto__){
  var s__13456__$2 = temp__5720__auto__;
  if(cljs.core.chunked_seq_QMARK_(s__13456__$2)){
  var c__4521__auto__ = cljs.core.chunk_first(s__13456__$2);
  var size__4522__auto__ = cljs.core.count(c__4521__auto__);
  var b__13458 = cljs.core.chunk_buffer(size__4522__auto__);
  if((function (){var i__13457 = (0);
  while(true){
  if((i__13457 < size__4522__auto__)){
  var vec__13459 = cljs.core._nth.cljs$core$IFn$_invoke$arity$2(c__4521__auto__,i__13457);
  var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13459,(0),null);
  var vec__13462 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13459,(1),null);
  var v1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13462,(0),null);
  var v2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13462,(1),null);
  cljs.core.chunk_append(b__13458,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v1], null));
  
  var G__13487 = (i__13457 + (1));
  i__13457 = G__13487;
  continue;
  } else {
  return true;
  }
  break;
  }
  })()){
  return cljs.core.chunk_cons(cljs.core.chunk(b__13458),cljs$pprint$unzip_map_$_iter__13455(cljs.core.chunk_rest(s__13456__$2)));
  } else {
  return cljs.core.chunk_cons(cljs.core.chunk(b__13458),null);
  }
  } else {
  var vec__13465 = cljs.core.first(s__13456__$2);
  var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13465,(0),null);
  var vec__13468 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13465,(1),null);
  var v1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13468,(0),null);
  var v2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13468,(1),null);
  return cljs.core.cons(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v1], null),cljs$pprint$unzip_map_$_iter__13455(cljs.core.rest(s__13456__$2)));
  }
  } else {
  return null;
  }
  break;
  }
  }),null,null));
  });
  return iter__4523__auto__(m);
  })()),cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,(function (){var iter__4523__auto__ = (function cljs$pprint$unzip_map_$_iter__13471(s__13472){
  return (new cljs.core.LazySeq(null,(function (){
  var s__13472__$1 = s__13472;
  while(true){
  var temp__5720__auto__ = cljs.core.seq(s__13472__$1);
  if(temp__5720__auto__){
  var s__13472__$2 = temp__5720__auto__;
  if(cljs.core.chunked_seq_QMARK_(s__13472__$2)){
  var c__4521__auto__ = cljs.core.chunk_first(s__13472__$2);
  var size__4522__auto__ = cljs.core.count(c__4521__auto__);
  var b__13474 = cljs.core.chunk_buffer(size__4522__auto__);
  if((function (){var i__13473 = (0);
  while(true){
  if((i__13473 < size__4522__auto__)){
  var vec__13475 = cljs.core._nth.cljs$core$IFn$_invoke$arity$2(c__4521__auto__,i__13473);
  var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13475,(0),null);
  var vec__13478 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13475,(1),null);
  var v1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13478,(0),null);
  var v2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13478,(1),null);
  cljs.core.chunk_append(b__13474,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v2], null));
  
  var G__13488 = (i__13473 + (1));
  i__13473 = G__13488;
  continue;
  } else {
  return true;
  }
  break;
  }
  })()){
  return cljs.core.chunk_cons(cljs.core.chunk(b__13474),cljs$pprint$unzip_map_$_iter__13471(cljs.core.chunk_rest(s__13472__$2)));
  } else {
  return cljs.core.chunk_cons(cljs.core.chunk(b__13474),null);
  }
  } else {
  var vec__13481 = cljs.core.first(s__13472__$2);
  var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13481,(0),null);
  var vec__13484 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13481,(1),null);
  var v1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13484,(0),null);
  var v2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13484,(1),null);
  return cljs.core.cons(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v2], null),cljs$pprint$unzip_map_$_iter__13471(cljs.core.rest(s__13472__$2)));
  }
  } else {
  return null;
  }
  break;
  }
  }),null,null));
  });
  return iter__4523__auto__(m);
  })())], null);
  });
  cljs.pprint.tuple_map = (function cljs$pprint$tuple_map(m,v1){
  
  return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,(function (){var iter__4523__auto__ = (function cljs$pprint$tuple_map_$_iter__13489(s__13490){
  return (new cljs.core.LazySeq(null,(function (){
  var s__13490__$1 = s__13490;
  while(true){
  var temp__5720__auto__ = cljs.core.seq(s__13490__$1);
  if(temp__5720__auto__){
  var s__13490__$2 = temp__5720__auto__;
  if(cljs.core.chunked_seq_QMARK_(s__13490__$2)){
  var c__4521__auto__ = cljs.core.chunk_first(s__13490__$2);
  var size__4522__auto__ = cljs.core.count(c__4521__auto__);
  var b__13492 = cljs.core.chunk_buffer(size__4522__auto__);
  if((function (){var i__13491 = (0);
  while(true){
  if((i__13491 < size__4522__auto__)){
  var vec__13493 = cljs.core._nth.cljs$core$IFn$_invoke$arity$2(c__4521__auto__,i__13491);
  var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13493,(0),null);
  var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13493,(1),null);
  cljs.core.chunk_append(b__13492,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [v,v1], null)], null));
  
  var G__13499 = (i__13491 + (1));
  i__13491 = G__13499;
  continue;
  } else {
  return true;
  }
  break;
  }
  })()){
  return cljs.core.chunk_cons(cljs.core.chunk(b__13492),cljs$pprint$tuple_map_$_iter__13489(cljs.core.chunk_rest(s__13490__$2)));
  } else {
  return cljs.core.chunk_cons(cljs.core.chunk(b__13492),null);
  }
  } else {
  var vec__13496 = cljs.core.first(s__13490__$2);
  var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13496,(0),null);
  var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13496,(1),null);
  return cljs.core.cons(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [v,v1], null)], null),cljs$pprint$tuple_map_$_iter__13489(cljs.core.rest(s__13490__$2)));
  }
  } else {
  return null;
  }
  break;
  }
  }),null,null));
  });
  return iter__4523__auto__(m);
  })());
  });
  cljs.pprint.rtrim = (function cljs$pprint$rtrim(s,c){
  
  var len = cljs.core.count(s);
  if((((len > (0))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s,(cljs.core.count(s) - (1))),c)))){
  var n = (len - (1));
  while(true){
  if((n < (0))){
  return "";
  } else {
  if((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s,n),c)))){
  return cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),(n + (1)));
  } else {
  var G__13500 = (n - (1));
  n = G__13500;
  continue;
  
  }
  }
  break;
  }
  } else {
  return s;
  }
  });
  cljs.pprint.ltrim = (function cljs$pprint$ltrim(s,c){
  
  var len = cljs.core.count(s);
  if((((len > (0))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s,(0)),c)))){
  var n = (0);
  while(true){
  if(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(n,len)) || ((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s,n),c)))))){
  return cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,n);
  } else {
  var G__13501 = (n + (1));
  n = G__13501;
  continue;
  }
  break;
  }
  } else {
  return s;
  }
  });
  cljs.pprint.prefix_count = (function cljs$pprint$prefix_count(aseq,val){
  
  var test = ((cljs.core.coll_QMARK_(val))?cljs.core.set(val):cljs.core.PersistentHashSet.createAsIfByAssoc([val]));
  var pos = (0);
  while(true){
  if(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(pos,cljs.core.count(aseq))) || (cljs.core.not((function (){var G__13503 = cljs.core.nth.cljs$core$IFn$_invoke$arity$2(aseq,pos);
  return (test.cljs$core$IFn$_invoke$arity$1 ? test.cljs$core$IFn$_invoke$arity$1(G__13503) : test.call(null,G__13503));
  })())))){
  return pos;
  } else {
  var G__13504 = (pos + (1));
  pos = G__13504;
  continue;
  }
  break;
  }
  });
  
  /**
   * @interface
   */
  cljs.pprint.IPrettyFlush = function(){};
  
  cljs.pprint._ppflush = (function cljs$pprint$_ppflush(pp){
  if((((!((pp == null)))) && ((!((pp.cljs$pprint$IPrettyFlush$_ppflush$arity$1 == null)))))){
  return pp.cljs$pprint$IPrettyFlush$_ppflush$arity$1(pp);
  } else {
  var x__4433__auto__ = (((pp == null))?null:pp);
  var m__4434__auto__ = (cljs.pprint._ppflush[goog.typeOf(x__4433__auto__)]);
  if((!((m__4434__auto__ == null)))){
  return (m__4434__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4434__auto__.cljs$core$IFn$_invoke$arity$1(pp) : m__4434__auto__.call(null,pp));
  } else {
  var m__4431__auto__ = (cljs.pprint._ppflush["_"]);
  if((!((m__4431__auto__ == null)))){
  return (m__4431__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4431__auto__.cljs$core$IFn$_invoke$arity$1(pp) : m__4431__auto__.call(null,pp));
  } else {
  throw cljs.core.missing_protocol("IPrettyFlush.-ppflush",pp);
  }
  }
  }
  });
  
  cljs.pprint._STAR_default_page_width_STAR_ = (72);
  cljs.pprint.get_field = (function cljs$pprint$get_field(this$,sym){
  var G__13505 = cljs.core.deref(cljs.core.deref(this$));
  return (sym.cljs$core$IFn$_invoke$arity$1 ? sym.cljs$core$IFn$_invoke$arity$1(G__13505) : sym.call(null,G__13505));
  });
  cljs.pprint.set_field = (function cljs$pprint$set_field(this$,sym,new_val){
  return cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,sym,new_val);
  });
  cljs.pprint.get_column = (function cljs$pprint$get_column(this$){
  return cljs.pprint.get_field(this$,cljs.core.cst$kw$cur);
  });
  cljs.pprint.get_line = (function cljs$pprint$get_line(this$){
  return cljs.pprint.get_field(this$,cljs.core.cst$kw$line);
  });
  cljs.pprint.get_max_column = (function cljs$pprint$get_max_column(this$){
  return cljs.pprint.get_field(this$,cljs.core.cst$kw$max);
  });
  cljs.pprint.set_max_column = (function cljs$pprint$set_max_column(this$,new_max){
  cljs.pprint.set_field(this$,cljs.core.cst$kw$max,new_max);
  
  return null;
  });
  cljs.pprint.get_writer = (function cljs$pprint$get_writer(this$){
  return cljs.pprint.get_field(this$,cljs.core.cst$kw$base);
  });
  cljs.pprint.c_write_char = (function cljs$pprint$c_write_char(this$,c){
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(c,"\n")){
  cljs.pprint.set_field(this$,cljs.core.cst$kw$cur,(0));
  
  cljs.pprint.set_field(this$,cljs.core.cst$kw$line,(cljs.pprint.get_field(this$,cljs.core.cst$kw$line) + (1)));
  } else {
  cljs.pprint.set_field(this$,cljs.core.cst$kw$cur,(cljs.pprint.get_field(this$,cljs.core.cst$kw$cur) + (1)));
  }
  
  return cljs.core._write(cljs.pprint.get_field(this$,cljs.core.cst$kw$base),c);
  });
  cljs.pprint.column_writer = (function cljs$pprint$column_writer(var_args){
  var G__13508 = arguments.length;
  switch (G__13508) {
  case 1:
  return cljs.pprint.column_writer.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
  
  break;
  case 2:
  return cljs.pprint.column_writer.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.pprint.column_writer.cljs$core$IFn$_invoke$arity$1 = (function (writer){
  return cljs.pprint.column_writer.cljs$core$IFn$_invoke$arity$2(writer,cljs.pprint._STAR_default_page_width_STAR_);
  });
  
  cljs.pprint.column_writer.cljs$core$IFn$_invoke$arity$2 = (function (writer,max_columns){
  var fields = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentArrayMap(null, 4, [cljs.core.cst$kw$max,max_columns,cljs.core.cst$kw$cur,(0),cljs.core.cst$kw$line,(0),cljs.core.cst$kw$base,writer], null));
  if((typeof cljs !== 'undefined') && (typeof cljs.pprint !== 'undefined') && (typeof cljs.pprint.t_cljs$pprint13509 !== 'undefined')){
  } else {
  
  /**
  * @constructor
   * @implements {cljs.core.IWriter}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.IDeref}
   * @implements {cljs.core.IWithMeta}
  */
  cljs.pprint.t_cljs$pprint13509 = (function (writer,max_columns,fields,meta13510){
  this.writer = writer;
  this.max_columns = max_columns;
  this.fields = fields;
  this.meta13510 = meta13510;
  this.cljs$lang$protocol_mask$partition0$ = 1074167808;
  this.cljs$lang$protocol_mask$partition1$ = 0;
  });
  cljs.pprint.t_cljs$pprint13509.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = ((function (fields){
  return (function (_13511,meta13510__$1){
  var self__ = this;
  var _13511__$1 = this;
  return (new cljs.pprint.t_cljs$pprint13509(self__.writer,self__.max_columns,self__.fields,meta13510__$1));
  });})(fields))
  ;
  
  cljs.pprint.t_cljs$pprint13509.prototype.cljs$core$IMeta$_meta$arity$1 = ((function (fields){
  return (function (_13511){
  var self__ = this;
  var _13511__$1 = this;
  return self__.meta13510;
  });})(fields))
  ;
  
  cljs.pprint.t_cljs$pprint13509.prototype.cljs$core$IDeref$_deref$arity$1 = ((function (fields){
  return (function (_){
  var self__ = this;
  var ___$1 = this;
  return self__.fields;
  });})(fields))
  ;
  
  cljs.pprint.t_cljs$pprint13509.prototype.cljs$core$IWriter$_flush$arity$1 = ((function (fields){
  return (function (_){
  var self__ = this;
  var ___$1 = this;
  return cljs.core._flush(self__.writer);
  });})(fields))
  ;
  
  cljs.pprint.t_cljs$pprint13509.prototype.cljs$core$IWriter$_write$arity$2 = ((function (fields){
  return (function (this$,x){
  var self__ = this;
  var this$__$1 = this;
  var pred__13512 = cljs.core._EQ_;
  var expr__13513 = cljs.core.type(x);
  if(cljs.core.truth_((pred__13512.cljs$core$IFn$_invoke$arity$2 ? pred__13512.cljs$core$IFn$_invoke$arity$2(String,expr__13513) : pred__13512.call(null,String,expr__13513)))){
  var s = x;
  var nl = s.lastIndexOf("\n");
  if((nl < (0))){
  cljs.pprint.set_field(this$__$1,cljs.core.cst$kw$cur,(cljs.pprint.get_field(this$__$1,cljs.core.cst$kw$cur) + cljs.core.count(s)));
  } else {
  cljs.pprint.set_field(this$__$1,cljs.core.cst$kw$cur,((cljs.core.count(s) - nl) - (1)));
  
  cljs.pprint.set_field(this$__$1,cljs.core.cst$kw$line,(cljs.pprint.get_field(this$__$1,cljs.core.cst$kw$line) + cljs.core.count(cljs.core.filter.cljs$core$IFn$_invoke$arity$2(((function (s,nl,pred__13512,expr__13513,this$__$1,fields){
  return (function (p1__13506_SHARP_){
  return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(p1__13506_SHARP_,"\n");
  });})(s,nl,pred__13512,expr__13513,this$__$1,fields))
  ,s))));
  }
  
  return cljs.core._write(cljs.pprint.get_field(this$__$1,cljs.core.cst$kw$base),s);
  } else {
  if(cljs.core.truth_((pred__13512.cljs$core$IFn$_invoke$arity$2 ? pred__13512.cljs$core$IFn$_invoke$arity$2(Number,expr__13513) : pred__13512.call(null,Number,expr__13513)))){
  return cljs.pprint.c_write_char(this$__$1,x);
  } else {
  throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__13513)].join('')));
  }
  }
  });})(fields))
  ;
  
  cljs.pprint.t_cljs$pprint13509.getBasis = ((function (fields){
  return (function (){
  return new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$writer,cljs.core.cst$sym$max_DASH_columns,cljs.core.cst$sym$fields,cljs.core.cst$sym$meta13510], null);
  });})(fields))
  ;
  
  cljs.pprint.t_cljs$pprint13509.cljs$lang$type = true;
  
  cljs.pprint.t_cljs$pprint13509.cljs$lang$ctorStr = "cljs.pprint/t_cljs$pprint13509";
  
  cljs.pprint.t_cljs$pprint13509.cljs$lang$ctorPrWriter = ((function (fields){
  return (function (this__4374__auto__,writer__4375__auto__,opt__4376__auto__){
  return cljs.core._write(writer__4375__auto__,"cljs.pprint/t_cljs$pprint13509");
  });})(fields))
  ;
  
  /**
   * Positional factory function for cljs.pprint/t_cljs$pprint13509.
   */
  cljs.pprint.__GT_t_cljs$pprint13509 = ((function (fields){
  return (function cljs$pprint$__GT_t_cljs$pprint13509(writer__$1,max_columns__$1,fields__$1,meta13510){
  return (new cljs.pprint.t_cljs$pprint13509(writer__$1,max_columns__$1,fields__$1,meta13510));
  });})(fields))
  ;
  
  }
  
  return (new cljs.pprint.t_cljs$pprint13509(writer,max_columns,fields,cljs.core.PersistentArrayMap.EMPTY));
  });
  
  cljs.pprint.column_writer.cljs$lang$maxFixedArity = 2;
  
  
  /**
  * @constructor
   * @implements {cljs.core.IRecord}
   * @implements {cljs.core.IKVReduce}
   * @implements {cljs.core.IEquiv}
   * @implements {cljs.core.IHash}
   * @implements {cljs.core.ICollection}
   * @implements {cljs.core.ICounted}
   * @implements {cljs.core.ISeqable}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.ICloneable}
   * @implements {cljs.core.IPrintWithWriter}
   * @implements {cljs.core.IIterable}
   * @implements {cljs.core.IWithMeta}
   * @implements {cljs.core.IAssociative}
   * @implements {cljs.core.IMap}
   * @implements {cljs.core.ILookup}
  */
  cljs.pprint.logical_block = (function (parent,section,start_col,indent,done_nl,intra_block_nl,prefix,per_line_prefix,suffix,logical_block_callback,__meta,__extmap,__hash){
  this.parent = parent;
  this.section = section;
  this.start_col = start_col;
  this.indent = indent;
  this.done_nl = done_nl;
  this.intra_block_nl = intra_block_nl;
  this.prefix = prefix;
  this.per_line_prefix = per_line_prefix;
  this.suffix = suffix;
  this.logical_block_callback = logical_block_callback;
  this.__meta = __meta;
  this.__extmap = __extmap;
  this.__hash = __hash;
  this.cljs$lang$protocol_mask$partition0$ = 2230716170;
  this.cljs$lang$protocol_mask$partition1$ = 139264;
  });
  cljs.pprint.logical_block.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__4385__auto__,k__4386__auto__){
  var self__ = this;
  var this__4385__auto____$1 = this;
  return this__4385__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4386__auto__,null);
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__4387__auto__,k13517,else__4388__auto__){
  var self__ = this;
  var this__4387__auto____$1 = this;
  var G__13521 = k13517;
  var G__13521__$1 = (((G__13521 instanceof cljs.core.Keyword))?G__13521.fqn:null);
  switch (G__13521__$1) {
  case "parent":
  return self__.parent;
  
  break;
  case "section":
  return self__.section;
  
  break;
  case "start-col":
  return self__.start_col;
  
  break;
  case "indent":
  return self__.indent;
  
  break;
  case "done-nl":
  return self__.done_nl;
  
  break;
  case "intra-block-nl":
  return self__.intra_block_nl;
  
  break;
  case "prefix":
  return self__.prefix;
  
  break;
  case "per-line-prefix":
  return self__.per_line_prefix;
  
  break;
  case "suffix":
  return self__.suffix;
  
  break;
  case "logical-block-callback":
  return self__.logical_block_callback;
  
  break;
  default:
  return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k13517,else__4388__auto__);
  
  }
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__4404__auto__,f__4405__auto__,init__4406__auto__){
  var self__ = this;
  var this__4404__auto____$1 = this;
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (this__4404__auto____$1){
  return (function (ret__4407__auto__,p__13522){
  var vec__13523 = p__13522;
  var k__4408__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13523,(0),null);
  var v__4409__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13523,(1),null);
  return (f__4405__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4405__auto__.cljs$core$IFn$_invoke$arity$3(ret__4407__auto__,k__4408__auto__,v__4409__auto__) : f__4405__auto__.call(null,ret__4407__auto__,k__4408__auto__,v__4409__auto__));
  });})(this__4404__auto____$1))
  ,init__4406__auto__,this__4404__auto____$1);
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__4399__auto__,writer__4400__auto__,opts__4401__auto__){
  var self__ = this;
  var this__4399__auto____$1 = this;
  var pr_pair__4402__auto__ = ((function (this__4399__auto____$1){
  return (function (keyval__4403__auto__){
  return cljs.core.pr_sequential_writer(writer__4400__auto__,cljs.core.pr_writer,""," ","",opts__4401__auto__,keyval__4403__auto__);
  });})(this__4399__auto____$1))
  ;
  return cljs.core.pr_sequential_writer(writer__4400__auto__,pr_pair__4402__auto__,"#cljs.pprint.logical-block{",", ","}",opts__4401__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$parent,self__.parent],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$section,self__.section],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$start_DASH_col,self__.start_col],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$indent,self__.indent],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$done_DASH_nl,self__.done_nl],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$intra_DASH_block_DASH_nl,self__.intra_block_nl],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$prefix,self__.prefix],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$per_DASH_line_DASH_prefix,self__.per_line_prefix],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$suffix,self__.suffix],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$logical_DASH_block_DASH_callback,self__.logical_block_callback],null))], null),self__.__extmap));
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__13516){
  var self__ = this;
  var G__13516__$1 = this;
  return (new cljs.core.RecordIter((0),G__13516__$1,10,new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$parent,cljs.core.cst$kw$section,cljs.core.cst$kw$start_DASH_col,cljs.core.cst$kw$indent,cljs.core.cst$kw$done_DASH_nl,cljs.core.cst$kw$intra_DASH_block_DASH_nl,cljs.core.cst$kw$prefix,cljs.core.cst$kw$per_DASH_line_DASH_prefix,cljs.core.cst$kw$suffix,cljs.core.cst$kw$logical_DASH_block_DASH_callback], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__4383__auto__){
  var self__ = this;
  var this__4383__auto____$1 = this;
  return self__.__meta;
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__4380__auto__){
  var self__ = this;
  var this__4380__auto____$1 = this;
  return (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__4389__auto__){
  var self__ = this;
  var this__4389__auto____$1 = this;
  return (10 + cljs.core.count(self__.__extmap));
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__4381__auto__){
  var self__ = this;
  var this__4381__auto____$1 = this;
  var h__4243__auto__ = self__.__hash;
  if((!((h__4243__auto__ == null)))){
  return h__4243__auto__;
  } else {
  var h__4243__auto____$1 = (function (){var fexpr__13526 = ((function (h__4243__auto__,this__4381__auto____$1){
  return (function (coll__4382__auto__){
  return (1977012399 ^ cljs.core.hash_unordered_coll(coll__4382__auto__));
  });})(h__4243__auto__,this__4381__auto____$1))
  ;
  return fexpr__13526(this__4381__auto____$1);
  })();
  self__.__hash = h__4243__auto____$1;
  
  return h__4243__auto____$1;
  }
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this13518,other13519){
  var self__ = this;
  var this13518__$1 = this;
  return (((!((other13519 == null)))) && ((this13518__$1.constructor === other13519.constructor)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13518__$1.parent,other13519.parent)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13518__$1.section,other13519.section)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13518__$1.start_col,other13519.start_col)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13518__$1.indent,other13519.indent)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13518__$1.done_nl,other13519.done_nl)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13518__$1.intra_block_nl,other13519.intra_block_nl)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13518__$1.prefix,other13519.prefix)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13518__$1.per_line_prefix,other13519.per_line_prefix)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13518__$1.suffix,other13519.suffix)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13518__$1.logical_block_callback,other13519.logical_block_callback)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13518__$1.__extmap,other13519.__extmap)));
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__4394__auto__,k__4395__auto__){
  var self__ = this;
  var this__4394__auto____$1 = this;
  if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 10, [cljs.core.cst$kw$suffix,null,cljs.core.cst$kw$indent,null,cljs.core.cst$kw$parent,null,cljs.core.cst$kw$section,null,cljs.core.cst$kw$done_DASH_nl,null,cljs.core.cst$kw$start_DASH_col,null,cljs.core.cst$kw$prefix,null,cljs.core.cst$kw$per_DASH_line_DASH_prefix,null,cljs.core.cst$kw$logical_DASH_block_DASH_callback,null,cljs.core.cst$kw$intra_DASH_block_DASH_nl,null], null), null),k__4395__auto__)){
  return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4394__auto____$1),self__.__meta),k__4395__auto__);
  } else {
  return (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4395__auto__)),null));
  }
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__4392__auto__,k__4393__auto__,G__13516){
  var self__ = this;
  var this__4392__auto____$1 = this;
  var pred__13527 = cljs.core.keyword_identical_QMARK_;
  var expr__13528 = k__4393__auto__;
  if(cljs.core.truth_((function (){var G__13530 = cljs.core.cst$kw$parent;
  var G__13531 = expr__13528;
  return (pred__13527.cljs$core$IFn$_invoke$arity$2 ? pred__13527.cljs$core$IFn$_invoke$arity$2(G__13530,G__13531) : pred__13527.call(null,G__13530,G__13531));
  })())){
  return (new cljs.pprint.logical_block(G__13516,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13532 = cljs.core.cst$kw$section;
  var G__13533 = expr__13528;
  return (pred__13527.cljs$core$IFn$_invoke$arity$2 ? pred__13527.cljs$core$IFn$_invoke$arity$2(G__13532,G__13533) : pred__13527.call(null,G__13532,G__13533));
  })())){
  return (new cljs.pprint.logical_block(self__.parent,G__13516,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13534 = cljs.core.cst$kw$start_DASH_col;
  var G__13535 = expr__13528;
  return (pred__13527.cljs$core$IFn$_invoke$arity$2 ? pred__13527.cljs$core$IFn$_invoke$arity$2(G__13534,G__13535) : pred__13527.call(null,G__13534,G__13535));
  })())){
  return (new cljs.pprint.logical_block(self__.parent,self__.section,G__13516,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13536 = cljs.core.cst$kw$indent;
  var G__13537 = expr__13528;
  return (pred__13527.cljs$core$IFn$_invoke$arity$2 ? pred__13527.cljs$core$IFn$_invoke$arity$2(G__13536,G__13537) : pred__13527.call(null,G__13536,G__13537));
  })())){
  return (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,G__13516,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13538 = cljs.core.cst$kw$done_DASH_nl;
  var G__13539 = expr__13528;
  return (pred__13527.cljs$core$IFn$_invoke$arity$2 ? pred__13527.cljs$core$IFn$_invoke$arity$2(G__13538,G__13539) : pred__13527.call(null,G__13538,G__13539));
  })())){
  return (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,G__13516,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13540 = cljs.core.cst$kw$intra_DASH_block_DASH_nl;
  var G__13541 = expr__13528;
  return (pred__13527.cljs$core$IFn$_invoke$arity$2 ? pred__13527.cljs$core$IFn$_invoke$arity$2(G__13540,G__13541) : pred__13527.call(null,G__13540,G__13541));
  })())){
  return (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,G__13516,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13542 = cljs.core.cst$kw$prefix;
  var G__13543 = expr__13528;
  return (pred__13527.cljs$core$IFn$_invoke$arity$2 ? pred__13527.cljs$core$IFn$_invoke$arity$2(G__13542,G__13543) : pred__13527.call(null,G__13542,G__13543));
  })())){
  return (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,G__13516,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13544 = cljs.core.cst$kw$per_DASH_line_DASH_prefix;
  var G__13545 = expr__13528;
  return (pred__13527.cljs$core$IFn$_invoke$arity$2 ? pred__13527.cljs$core$IFn$_invoke$arity$2(G__13544,G__13545) : pred__13527.call(null,G__13544,G__13545));
  })())){
  return (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,G__13516,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13546 = cljs.core.cst$kw$suffix;
  var G__13547 = expr__13528;
  return (pred__13527.cljs$core$IFn$_invoke$arity$2 ? pred__13527.cljs$core$IFn$_invoke$arity$2(G__13546,G__13547) : pred__13527.call(null,G__13546,G__13547));
  })())){
  return (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,G__13516,self__.logical_block_callback,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13548 = cljs.core.cst$kw$logical_DASH_block_DASH_callback;
  var G__13549 = expr__13528;
  return (pred__13527.cljs$core$IFn$_invoke$arity$2 ? pred__13527.cljs$core$IFn$_invoke$arity$2(G__13548,G__13549) : pred__13527.call(null,G__13548,G__13549));
  })())){
  return (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,G__13516,self__.__meta,self__.__extmap,null));
  } else {
  return (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4393__auto__,G__13516),null));
  }
  }
  }
  }
  }
  }
  }
  }
  }
  }
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__4397__auto__){
  var self__ = this;
  var this__4397__auto____$1 = this;
  return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(cljs.core.cst$kw$parent,self__.parent,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$section,self__.section,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$start_DASH_col,self__.start_col,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$indent,self__.indent,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$done_DASH_nl,self__.done_nl,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$intra_DASH_block_DASH_nl,self__.intra_block_nl,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$prefix,self__.prefix,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$per_DASH_line_DASH_prefix,self__.per_line_prefix,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$suffix,self__.suffix,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$logical_DASH_block_DASH_callback,self__.logical_block_callback,null))], null),self__.__extmap));
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__4384__auto__,G__13516){
  var self__ = this;
  var this__4384__auto____$1 = this;
  return (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,G__13516,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.logical_block.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__4390__auto__,entry__4391__auto__){
  var self__ = this;
  var this__4390__auto____$1 = this;
  if(cljs.core.vector_QMARK_(entry__4391__auto__)){
  return this__4390__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(0)),cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(1)));
  } else {
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4390__auto____$1,entry__4391__auto__);
  }
  });
  
  cljs.pprint.logical_block.getBasis = (function (){
  return new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$parent,cljs.core.cst$sym$section,cljs.core.cst$sym$start_DASH_col,cljs.core.cst$sym$indent,cljs.core.cst$sym$done_DASH_nl,cljs.core.cst$sym$intra_DASH_block_DASH_nl,cljs.core.cst$sym$prefix,cljs.core.cst$sym$per_DASH_line_DASH_prefix,cljs.core.cst$sym$suffix,cljs.core.cst$sym$logical_DASH_block_DASH_callback], null);
  });
  
  cljs.pprint.logical_block.cljs$lang$type = true;
  
  cljs.pprint.logical_block.cljs$lang$ctorPrSeq = (function (this__4428__auto__){
  return (new cljs.core.List(null,"cljs.pprint/logical-block",null,(1),null));
  });
  
  cljs.pprint.logical_block.cljs$lang$ctorPrWriter = (function (this__4428__auto__,writer__4429__auto__){
  return cljs.core._write(writer__4429__auto__,"cljs.pprint/logical-block");
  });
  
  /**
   * Positional factory function for cljs.pprint/logical-block.
   */
  cljs.pprint.__GT_logical_block = (function cljs$pprint$__GT_logical_block(parent,section,start_col,indent,done_nl,intra_block_nl,prefix,per_line_prefix,suffix,logical_block_callback){
  return (new cljs.pprint.logical_block(parent,section,start_col,indent,done_nl,intra_block_nl,prefix,per_line_prefix,suffix,logical_block_callback,null,null,null));
  });
  
  /**
   * Factory function for cljs.pprint/logical-block, taking a map of keywords to field values.
   */
  cljs.pprint.map__GT_logical_block = (function cljs$pprint$map__GT_logical_block(G__13520){
  var extmap__4424__auto__ = (function (){var G__13550 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__13520,cljs.core.cst$kw$parent,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.cst$kw$section,cljs.core.cst$kw$start_DASH_col,cljs.core.cst$kw$indent,cljs.core.cst$kw$done_DASH_nl,cljs.core.cst$kw$intra_DASH_block_DASH_nl,cljs.core.cst$kw$prefix,cljs.core.cst$kw$per_DASH_line_DASH_prefix,cljs.core.cst$kw$suffix,cljs.core.cst$kw$logical_DASH_block_DASH_callback], 0));
  if(cljs.core.record_QMARK_(G__13520)){
  return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__13550);
  } else {
  return G__13550;
  }
  })();
  return (new cljs.pprint.logical_block(cljs.core.cst$kw$parent.cljs$core$IFn$_invoke$arity$1(G__13520),cljs.core.cst$kw$section.cljs$core$IFn$_invoke$arity$1(G__13520),cljs.core.cst$kw$start_DASH_col.cljs$core$IFn$_invoke$arity$1(G__13520),cljs.core.cst$kw$indent.cljs$core$IFn$_invoke$arity$1(G__13520),cljs.core.cst$kw$done_DASH_nl.cljs$core$IFn$_invoke$arity$1(G__13520),cljs.core.cst$kw$intra_DASH_block_DASH_nl.cljs$core$IFn$_invoke$arity$1(G__13520),cljs.core.cst$kw$prefix.cljs$core$IFn$_invoke$arity$1(G__13520),cljs.core.cst$kw$per_DASH_line_DASH_prefix.cljs$core$IFn$_invoke$arity$1(G__13520),cljs.core.cst$kw$suffix.cljs$core$IFn$_invoke$arity$1(G__13520),cljs.core.cst$kw$logical_DASH_block_DASH_callback.cljs$core$IFn$_invoke$arity$1(G__13520),null,cljs.core.not_empty(extmap__4424__auto__),null));
  });
  
  cljs.pprint.ancestor_QMARK_ = (function cljs$pprint$ancestor_QMARK_(parent,child){
  var child__$1 = cljs.core.cst$kw$parent.cljs$core$IFn$_invoke$arity$1(child);
  while(true){
  if((child__$1 == null)){
  return false;
  } else {
  if((parent === child__$1)){
  return true;
  } else {
  var G__13552 = cljs.core.cst$kw$parent.cljs$core$IFn$_invoke$arity$1(child__$1);
  child__$1 = G__13552;
  continue;
  
  }
  }
  break;
  }
  });
  cljs.pprint.buffer_length = (function cljs$pprint$buffer_length(l){
  var l__$1 = cljs.core.seq(l);
  if(l__$1){
  return (cljs.core.cst$kw$end_DASH_pos.cljs$core$IFn$_invoke$arity$1(cljs.core.last(l__$1)) - cljs.core.cst$kw$start_DASH_pos.cljs$core$IFn$_invoke$arity$1(cljs.core.first(l__$1)));
  } else {
  return (0);
  }
  });
  
  /**
  * @constructor
   * @implements {cljs.core.IRecord}
   * @implements {cljs.core.IKVReduce}
   * @implements {cljs.core.IEquiv}
   * @implements {cljs.core.IHash}
   * @implements {cljs.core.ICollection}
   * @implements {cljs.core.ICounted}
   * @implements {cljs.core.ISeqable}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.ICloneable}
   * @implements {cljs.core.IPrintWithWriter}
   * @implements {cljs.core.IIterable}
   * @implements {cljs.core.IWithMeta}
   * @implements {cljs.core.IAssociative}
   * @implements {cljs.core.IMap}
   * @implements {cljs.core.ILookup}
  */
  cljs.pprint.buffer_blob = (function (type_tag,data,trailing_white_space,start_pos,end_pos,__meta,__extmap,__hash){
  this.type_tag = type_tag;
  this.data = data;
  this.trailing_white_space = trailing_white_space;
  this.start_pos = start_pos;
  this.end_pos = end_pos;
  this.__meta = __meta;
  this.__extmap = __extmap;
  this.__hash = __hash;
  this.cljs$lang$protocol_mask$partition0$ = 2230716170;
  this.cljs$lang$protocol_mask$partition1$ = 139264;
  });
  cljs.pprint.buffer_blob.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__4385__auto__,k__4386__auto__){
  var self__ = this;
  var this__4385__auto____$1 = this;
  return this__4385__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4386__auto__,null);
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__4387__auto__,k13554,else__4388__auto__){
  var self__ = this;
  var this__4387__auto____$1 = this;
  var G__13558 = k13554;
  var G__13558__$1 = (((G__13558 instanceof cljs.core.Keyword))?G__13558.fqn:null);
  switch (G__13558__$1) {
  case "type-tag":
  return self__.type_tag;
  
  break;
  case "data":
  return self__.data;
  
  break;
  case "trailing-white-space":
  return self__.trailing_white_space;
  
  break;
  case "start-pos":
  return self__.start_pos;
  
  break;
  case "end-pos":
  return self__.end_pos;
  
  break;
  default:
  return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k13554,else__4388__auto__);
  
  }
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__4404__auto__,f__4405__auto__,init__4406__auto__){
  var self__ = this;
  var this__4404__auto____$1 = this;
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (this__4404__auto____$1){
  return (function (ret__4407__auto__,p__13559){
  var vec__13560 = p__13559;
  var k__4408__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13560,(0),null);
  var v__4409__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13560,(1),null);
  return (f__4405__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4405__auto__.cljs$core$IFn$_invoke$arity$3(ret__4407__auto__,k__4408__auto__,v__4409__auto__) : f__4405__auto__.call(null,ret__4407__auto__,k__4408__auto__,v__4409__auto__));
  });})(this__4404__auto____$1))
  ,init__4406__auto__,this__4404__auto____$1);
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__4399__auto__,writer__4400__auto__,opts__4401__auto__){
  var self__ = this;
  var this__4399__auto____$1 = this;
  var pr_pair__4402__auto__ = ((function (this__4399__auto____$1){
  return (function (keyval__4403__auto__){
  return cljs.core.pr_sequential_writer(writer__4400__auto__,cljs.core.pr_writer,""," ","",opts__4401__auto__,keyval__4403__auto__);
  });})(this__4399__auto____$1))
  ;
  return cljs.core.pr_sequential_writer(writer__4400__auto__,pr_pair__4402__auto__,"#cljs.pprint.buffer-blob{",", ","}",opts__4401__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$type_DASH_tag,self__.type_tag],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$data,self__.data],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$trailing_DASH_white_DASH_space,self__.trailing_white_space],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$start_DASH_pos,self__.start_pos],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$end_DASH_pos,self__.end_pos],null))], null),self__.__extmap));
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__13553){
  var self__ = this;
  var G__13553__$1 = this;
  return (new cljs.core.RecordIter((0),G__13553__$1,5,new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$type_DASH_tag,cljs.core.cst$kw$data,cljs.core.cst$kw$trailing_DASH_white_DASH_space,cljs.core.cst$kw$start_DASH_pos,cljs.core.cst$kw$end_DASH_pos], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__4383__auto__){
  var self__ = this;
  var this__4383__auto____$1 = this;
  return self__.__meta;
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__4380__auto__){
  var self__ = this;
  var this__4380__auto____$1 = this;
  return (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,self__.trailing_white_space,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__4389__auto__){
  var self__ = this;
  var this__4389__auto____$1 = this;
  return (5 + cljs.core.count(self__.__extmap));
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__4381__auto__){
  var self__ = this;
  var this__4381__auto____$1 = this;
  var h__4243__auto__ = self__.__hash;
  if((!((h__4243__auto__ == null)))){
  return h__4243__auto__;
  } else {
  var h__4243__auto____$1 = (function (){var fexpr__13563 = ((function (h__4243__auto__,this__4381__auto____$1){
  return (function (coll__4382__auto__){
  return (1809113693 ^ cljs.core.hash_unordered_coll(coll__4382__auto__));
  });})(h__4243__auto__,this__4381__auto____$1))
  ;
  return fexpr__13563(this__4381__auto____$1);
  })();
  self__.__hash = h__4243__auto____$1;
  
  return h__4243__auto____$1;
  }
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this13555,other13556){
  var self__ = this;
  var this13555__$1 = this;
  return (((!((other13556 == null)))) && ((this13555__$1.constructor === other13556.constructor)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13555__$1.type_tag,other13556.type_tag)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13555__$1.data,other13556.data)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13555__$1.trailing_white_space,other13556.trailing_white_space)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13555__$1.start_pos,other13556.start_pos)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13555__$1.end_pos,other13556.end_pos)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13555__$1.__extmap,other13556.__extmap)));
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__4394__auto__,k__4395__auto__){
  var self__ = this;
  var this__4394__auto____$1 = this;
  if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$end_DASH_pos,null,cljs.core.cst$kw$trailing_DASH_white_DASH_space,null,cljs.core.cst$kw$type_DASH_tag,null,cljs.core.cst$kw$start_DASH_pos,null,cljs.core.cst$kw$data,null], null), null),k__4395__auto__)){
  return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4394__auto____$1),self__.__meta),k__4395__auto__);
  } else {
  return (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,self__.trailing_white_space,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4395__auto__)),null));
  }
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__4392__auto__,k__4393__auto__,G__13553){
  var self__ = this;
  var this__4392__auto____$1 = this;
  var pred__13564 = cljs.core.keyword_identical_QMARK_;
  var expr__13565 = k__4393__auto__;
  if(cljs.core.truth_((function (){var G__13567 = cljs.core.cst$kw$type_DASH_tag;
  var G__13568 = expr__13565;
  return (pred__13564.cljs$core$IFn$_invoke$arity$2 ? pred__13564.cljs$core$IFn$_invoke$arity$2(G__13567,G__13568) : pred__13564.call(null,G__13567,G__13568));
  })())){
  return (new cljs.pprint.buffer_blob(G__13553,self__.data,self__.trailing_white_space,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13569 = cljs.core.cst$kw$data;
  var G__13570 = expr__13565;
  return (pred__13564.cljs$core$IFn$_invoke$arity$2 ? pred__13564.cljs$core$IFn$_invoke$arity$2(G__13569,G__13570) : pred__13564.call(null,G__13569,G__13570));
  })())){
  return (new cljs.pprint.buffer_blob(self__.type_tag,G__13553,self__.trailing_white_space,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13571 = cljs.core.cst$kw$trailing_DASH_white_DASH_space;
  var G__13572 = expr__13565;
  return (pred__13564.cljs$core$IFn$_invoke$arity$2 ? pred__13564.cljs$core$IFn$_invoke$arity$2(G__13571,G__13572) : pred__13564.call(null,G__13571,G__13572));
  })())){
  return (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,G__13553,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13573 = cljs.core.cst$kw$start_DASH_pos;
  var G__13574 = expr__13565;
  return (pred__13564.cljs$core$IFn$_invoke$arity$2 ? pred__13564.cljs$core$IFn$_invoke$arity$2(G__13573,G__13574) : pred__13564.call(null,G__13573,G__13574));
  })())){
  return (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,self__.trailing_white_space,G__13553,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13575 = cljs.core.cst$kw$end_DASH_pos;
  var G__13576 = expr__13565;
  return (pred__13564.cljs$core$IFn$_invoke$arity$2 ? pred__13564.cljs$core$IFn$_invoke$arity$2(G__13575,G__13576) : pred__13564.call(null,G__13575,G__13576));
  })())){
  return (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,self__.trailing_white_space,self__.start_pos,G__13553,self__.__meta,self__.__extmap,null));
  } else {
  return (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,self__.trailing_white_space,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4393__auto__,G__13553),null));
  }
  }
  }
  }
  }
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__4397__auto__){
  var self__ = this;
  var this__4397__auto____$1 = this;
  return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(cljs.core.cst$kw$type_DASH_tag,self__.type_tag,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$data,self__.data,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$trailing_DASH_white_DASH_space,self__.trailing_white_space,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$start_DASH_pos,self__.start_pos,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$end_DASH_pos,self__.end_pos,null))], null),self__.__extmap));
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__4384__auto__,G__13553){
  var self__ = this;
  var this__4384__auto____$1 = this;
  return (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,self__.trailing_white_space,self__.start_pos,self__.end_pos,G__13553,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.buffer_blob.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__4390__auto__,entry__4391__auto__){
  var self__ = this;
  var this__4390__auto____$1 = this;
  if(cljs.core.vector_QMARK_(entry__4391__auto__)){
  return this__4390__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(0)),cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(1)));
  } else {
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4390__auto____$1,entry__4391__auto__);
  }
  });
  
  cljs.pprint.buffer_blob.getBasis = (function (){
  return new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$type_DASH_tag,cljs.core.cst$sym$data,cljs.core.cst$sym$trailing_DASH_white_DASH_space,cljs.core.cst$sym$start_DASH_pos,cljs.core.cst$sym$end_DASH_pos], null);
  });
  
  cljs.pprint.buffer_blob.cljs$lang$type = true;
  
  cljs.pprint.buffer_blob.cljs$lang$ctorPrSeq = (function (this__4428__auto__){
  return (new cljs.core.List(null,"cljs.pprint/buffer-blob",null,(1),null));
  });
  
  cljs.pprint.buffer_blob.cljs$lang$ctorPrWriter = (function (this__4428__auto__,writer__4429__auto__){
  return cljs.core._write(writer__4429__auto__,"cljs.pprint/buffer-blob");
  });
  
  /**
   * Positional factory function for cljs.pprint/buffer-blob.
   */
  cljs.pprint.__GT_buffer_blob = (function cljs$pprint$__GT_buffer_blob(type_tag,data,trailing_white_space,start_pos,end_pos){
  return (new cljs.pprint.buffer_blob(type_tag,data,trailing_white_space,start_pos,end_pos,null,null,null));
  });
  
  /**
   * Factory function for cljs.pprint/buffer-blob, taking a map of keywords to field values.
   */
  cljs.pprint.map__GT_buffer_blob = (function cljs$pprint$map__GT_buffer_blob(G__13557){
  var extmap__4424__auto__ = (function (){var G__13577 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__13557,cljs.core.cst$kw$type_DASH_tag,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.cst$kw$data,cljs.core.cst$kw$trailing_DASH_white_DASH_space,cljs.core.cst$kw$start_DASH_pos,cljs.core.cst$kw$end_DASH_pos], 0));
  if(cljs.core.record_QMARK_(G__13557)){
  return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__13577);
  } else {
  return G__13577;
  }
  })();
  return (new cljs.pprint.buffer_blob(cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(G__13557),cljs.core.cst$kw$data.cljs$core$IFn$_invoke$arity$1(G__13557),cljs.core.cst$kw$trailing_DASH_white_DASH_space.cljs$core$IFn$_invoke$arity$1(G__13557),cljs.core.cst$kw$start_DASH_pos.cljs$core$IFn$_invoke$arity$1(G__13557),cljs.core.cst$kw$end_DASH_pos.cljs$core$IFn$_invoke$arity$1(G__13557),null,cljs.core.not_empty(extmap__4424__auto__),null));
  });
  
  
  cljs.pprint.make_buffer_blob = (function cljs$pprint$make_buffer_blob(data,trailing_white_space,start_pos,end_pos){
  return (new cljs.pprint.buffer_blob(cljs.core.cst$kw$buffer_DASH_blob,data,trailing_white_space,start_pos,end_pos,null,null,null));
  });
  
  cljs.pprint.buffer_blob_QMARK_ = (function cljs$pprint$buffer_blob_QMARK_(x__13328__auto__){
  return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(x__13328__auto__),cljs.core.cst$kw$buffer_DASH_blob);
  });
  
  /**
  * @constructor
   * @implements {cljs.core.IRecord}
   * @implements {cljs.core.IKVReduce}
   * @implements {cljs.core.IEquiv}
   * @implements {cljs.core.IHash}
   * @implements {cljs.core.ICollection}
   * @implements {cljs.core.ICounted}
   * @implements {cljs.core.ISeqable}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.ICloneable}
   * @implements {cljs.core.IPrintWithWriter}
   * @implements {cljs.core.IIterable}
   * @implements {cljs.core.IWithMeta}
   * @implements {cljs.core.IAssociative}
   * @implements {cljs.core.IMap}
   * @implements {cljs.core.ILookup}
  */
  cljs.pprint.nl_t = (function (type_tag,type,logical_block,start_pos,end_pos,__meta,__extmap,__hash){
  this.type_tag = type_tag;
  this.type = type;
  this.logical_block = logical_block;
  this.start_pos = start_pos;
  this.end_pos = end_pos;
  this.__meta = __meta;
  this.__extmap = __extmap;
  this.__hash = __hash;
  this.cljs$lang$protocol_mask$partition0$ = 2230716170;
  this.cljs$lang$protocol_mask$partition1$ = 139264;
  });
  cljs.pprint.nl_t.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__4385__auto__,k__4386__auto__){
  var self__ = this;
  var this__4385__auto____$1 = this;
  return this__4385__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4386__auto__,null);
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__4387__auto__,k13580,else__4388__auto__){
  var self__ = this;
  var this__4387__auto____$1 = this;
  var G__13584 = k13580;
  var G__13584__$1 = (((G__13584 instanceof cljs.core.Keyword))?G__13584.fqn:null);
  switch (G__13584__$1) {
  case "type-tag":
  return self__.type_tag;
  
  break;
  case "type":
  return self__.type;
  
  break;
  case "logical-block":
  return self__.logical_block;
  
  break;
  case "start-pos":
  return self__.start_pos;
  
  break;
  case "end-pos":
  return self__.end_pos;
  
  break;
  default:
  return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k13580,else__4388__auto__);
  
  }
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__4404__auto__,f__4405__auto__,init__4406__auto__){
  var self__ = this;
  var this__4404__auto____$1 = this;
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (this__4404__auto____$1){
  return (function (ret__4407__auto__,p__13585){
  var vec__13586 = p__13585;
  var k__4408__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13586,(0),null);
  var v__4409__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13586,(1),null);
  return (f__4405__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4405__auto__.cljs$core$IFn$_invoke$arity$3(ret__4407__auto__,k__4408__auto__,v__4409__auto__) : f__4405__auto__.call(null,ret__4407__auto__,k__4408__auto__,v__4409__auto__));
  });})(this__4404__auto____$1))
  ,init__4406__auto__,this__4404__auto____$1);
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__4399__auto__,writer__4400__auto__,opts__4401__auto__){
  var self__ = this;
  var this__4399__auto____$1 = this;
  var pr_pair__4402__auto__ = ((function (this__4399__auto____$1){
  return (function (keyval__4403__auto__){
  return cljs.core.pr_sequential_writer(writer__4400__auto__,cljs.core.pr_writer,""," ","",opts__4401__auto__,keyval__4403__auto__);
  });})(this__4399__auto____$1))
  ;
  return cljs.core.pr_sequential_writer(writer__4400__auto__,pr_pair__4402__auto__,"#cljs.pprint.nl-t{",", ","}",opts__4401__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$type_DASH_tag,self__.type_tag],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$type,self__.type],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$logical_DASH_block,self__.logical_block],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$start_DASH_pos,self__.start_pos],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$end_DASH_pos,self__.end_pos],null))], null),self__.__extmap));
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__13579){
  var self__ = this;
  var G__13579__$1 = this;
  return (new cljs.core.RecordIter((0),G__13579__$1,5,new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$type_DASH_tag,cljs.core.cst$kw$type,cljs.core.cst$kw$logical_DASH_block,cljs.core.cst$kw$start_DASH_pos,cljs.core.cst$kw$end_DASH_pos], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__4383__auto__){
  var self__ = this;
  var this__4383__auto____$1 = this;
  return self__.__meta;
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__4380__auto__){
  var self__ = this;
  var this__4380__auto____$1 = this;
  return (new cljs.pprint.nl_t(self__.type_tag,self__.type,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__4389__auto__){
  var self__ = this;
  var this__4389__auto____$1 = this;
  return (5 + cljs.core.count(self__.__extmap));
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__4381__auto__){
  var self__ = this;
  var this__4381__auto____$1 = this;
  var h__4243__auto__ = self__.__hash;
  if((!((h__4243__auto__ == null)))){
  return h__4243__auto__;
  } else {
  var h__4243__auto____$1 = (function (){var fexpr__13589 = ((function (h__4243__auto__,this__4381__auto____$1){
  return (function (coll__4382__auto__){
  return (-1640656800 ^ cljs.core.hash_unordered_coll(coll__4382__auto__));
  });})(h__4243__auto__,this__4381__auto____$1))
  ;
  return fexpr__13589(this__4381__auto____$1);
  })();
  self__.__hash = h__4243__auto____$1;
  
  return h__4243__auto____$1;
  }
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this13581,other13582){
  var self__ = this;
  var this13581__$1 = this;
  return (((!((other13582 == null)))) && ((this13581__$1.constructor === other13582.constructor)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13581__$1.type_tag,other13582.type_tag)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13581__$1.type,other13582.type)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13581__$1.logical_block,other13582.logical_block)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13581__$1.start_pos,other13582.start_pos)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13581__$1.end_pos,other13582.end_pos)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13581__$1.__extmap,other13582.__extmap)));
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__4394__auto__,k__4395__auto__){
  var self__ = this;
  var this__4394__auto____$1 = this;
  if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$end_DASH_pos,null,cljs.core.cst$kw$type,null,cljs.core.cst$kw$logical_DASH_block,null,cljs.core.cst$kw$type_DASH_tag,null,cljs.core.cst$kw$start_DASH_pos,null], null), null),k__4395__auto__)){
  return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4394__auto____$1),self__.__meta),k__4395__auto__);
  } else {
  return (new cljs.pprint.nl_t(self__.type_tag,self__.type,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4395__auto__)),null));
  }
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__4392__auto__,k__4393__auto__,G__13579){
  var self__ = this;
  var this__4392__auto____$1 = this;
  var pred__13590 = cljs.core.keyword_identical_QMARK_;
  var expr__13591 = k__4393__auto__;
  if(cljs.core.truth_((function (){var G__13593 = cljs.core.cst$kw$type_DASH_tag;
  var G__13594 = expr__13591;
  return (pred__13590.cljs$core$IFn$_invoke$arity$2 ? pred__13590.cljs$core$IFn$_invoke$arity$2(G__13593,G__13594) : pred__13590.call(null,G__13593,G__13594));
  })())){
  return (new cljs.pprint.nl_t(G__13579,self__.type,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13595 = cljs.core.cst$kw$type;
  var G__13596 = expr__13591;
  return (pred__13590.cljs$core$IFn$_invoke$arity$2 ? pred__13590.cljs$core$IFn$_invoke$arity$2(G__13595,G__13596) : pred__13590.call(null,G__13595,G__13596));
  })())){
  return (new cljs.pprint.nl_t(self__.type_tag,G__13579,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13597 = cljs.core.cst$kw$logical_DASH_block;
  var G__13598 = expr__13591;
  return (pred__13590.cljs$core$IFn$_invoke$arity$2 ? pred__13590.cljs$core$IFn$_invoke$arity$2(G__13597,G__13598) : pred__13590.call(null,G__13597,G__13598));
  })())){
  return (new cljs.pprint.nl_t(self__.type_tag,self__.type,G__13579,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13599 = cljs.core.cst$kw$start_DASH_pos;
  var G__13600 = expr__13591;
  return (pred__13590.cljs$core$IFn$_invoke$arity$2 ? pred__13590.cljs$core$IFn$_invoke$arity$2(G__13599,G__13600) : pred__13590.call(null,G__13599,G__13600));
  })())){
  return (new cljs.pprint.nl_t(self__.type_tag,self__.type,self__.logical_block,G__13579,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13601 = cljs.core.cst$kw$end_DASH_pos;
  var G__13602 = expr__13591;
  return (pred__13590.cljs$core$IFn$_invoke$arity$2 ? pred__13590.cljs$core$IFn$_invoke$arity$2(G__13601,G__13602) : pred__13590.call(null,G__13601,G__13602));
  })())){
  return (new cljs.pprint.nl_t(self__.type_tag,self__.type,self__.logical_block,self__.start_pos,G__13579,self__.__meta,self__.__extmap,null));
  } else {
  return (new cljs.pprint.nl_t(self__.type_tag,self__.type,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4393__auto__,G__13579),null));
  }
  }
  }
  }
  }
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__4397__auto__){
  var self__ = this;
  var this__4397__auto____$1 = this;
  return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(cljs.core.cst$kw$type_DASH_tag,self__.type_tag,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$type,self__.type,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$logical_DASH_block,self__.logical_block,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$start_DASH_pos,self__.start_pos,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$end_DASH_pos,self__.end_pos,null))], null),self__.__extmap));
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__4384__auto__,G__13579){
  var self__ = this;
  var this__4384__auto____$1 = this;
  return (new cljs.pprint.nl_t(self__.type_tag,self__.type,self__.logical_block,self__.start_pos,self__.end_pos,G__13579,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.nl_t.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__4390__auto__,entry__4391__auto__){
  var self__ = this;
  var this__4390__auto____$1 = this;
  if(cljs.core.vector_QMARK_(entry__4391__auto__)){
  return this__4390__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(0)),cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(1)));
  } else {
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4390__auto____$1,entry__4391__auto__);
  }
  });
  
  cljs.pprint.nl_t.getBasis = (function (){
  return new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$type_DASH_tag,cljs.core.cst$sym$type,cljs.core.cst$sym$logical_DASH_block,cljs.core.cst$sym$start_DASH_pos,cljs.core.cst$sym$end_DASH_pos], null);
  });
  
  cljs.pprint.nl_t.cljs$lang$type = true;
  
  cljs.pprint.nl_t.cljs$lang$ctorPrSeq = (function (this__4428__auto__){
  return (new cljs.core.List(null,"cljs.pprint/nl-t",null,(1),null));
  });
  
  cljs.pprint.nl_t.cljs$lang$ctorPrWriter = (function (this__4428__auto__,writer__4429__auto__){
  return cljs.core._write(writer__4429__auto__,"cljs.pprint/nl-t");
  });
  
  /**
   * Positional factory function for cljs.pprint/nl-t.
   */
  cljs.pprint.__GT_nl_t = (function cljs$pprint$__GT_nl_t(type_tag,type,logical_block,start_pos,end_pos){
  return (new cljs.pprint.nl_t(type_tag,type,logical_block,start_pos,end_pos,null,null,null));
  });
  
  /**
   * Factory function for cljs.pprint/nl-t, taking a map of keywords to field values.
   */
  cljs.pprint.map__GT_nl_t = (function cljs$pprint$map__GT_nl_t(G__13583){
  var extmap__4424__auto__ = (function (){var G__13603 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__13583,cljs.core.cst$kw$type_DASH_tag,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.cst$kw$type,cljs.core.cst$kw$logical_DASH_block,cljs.core.cst$kw$start_DASH_pos,cljs.core.cst$kw$end_DASH_pos], 0));
  if(cljs.core.record_QMARK_(G__13583)){
  return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__13603);
  } else {
  return G__13603;
  }
  })();
  return (new cljs.pprint.nl_t(cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(G__13583),cljs.core.cst$kw$type.cljs$core$IFn$_invoke$arity$1(G__13583),cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(G__13583),cljs.core.cst$kw$start_DASH_pos.cljs$core$IFn$_invoke$arity$1(G__13583),cljs.core.cst$kw$end_DASH_pos.cljs$core$IFn$_invoke$arity$1(G__13583),null,cljs.core.not_empty(extmap__4424__auto__),null));
  });
  
  
  cljs.pprint.make_nl_t = (function cljs$pprint$make_nl_t(type,logical_block,start_pos,end_pos){
  return (new cljs.pprint.nl_t(cljs.core.cst$kw$nl_DASH_t,type,logical_block,start_pos,end_pos,null,null,null));
  });
  
  cljs.pprint.nl_t_QMARK_ = (function cljs$pprint$nl_t_QMARK_(x__13328__auto__){
  return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(x__13328__auto__),cljs.core.cst$kw$nl_DASH_t);
  });
  
  /**
  * @constructor
   * @implements {cljs.core.IRecord}
   * @implements {cljs.core.IKVReduce}
   * @implements {cljs.core.IEquiv}
   * @implements {cljs.core.IHash}
   * @implements {cljs.core.ICollection}
   * @implements {cljs.core.ICounted}
   * @implements {cljs.core.ISeqable}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.ICloneable}
   * @implements {cljs.core.IPrintWithWriter}
   * @implements {cljs.core.IIterable}
   * @implements {cljs.core.IWithMeta}
   * @implements {cljs.core.IAssociative}
   * @implements {cljs.core.IMap}
   * @implements {cljs.core.ILookup}
  */
  cljs.pprint.start_block_t = (function (type_tag,logical_block,start_pos,end_pos,__meta,__extmap,__hash){
  this.type_tag = type_tag;
  this.logical_block = logical_block;
  this.start_pos = start_pos;
  this.end_pos = end_pos;
  this.__meta = __meta;
  this.__extmap = __extmap;
  this.__hash = __hash;
  this.cljs$lang$protocol_mask$partition0$ = 2230716170;
  this.cljs$lang$protocol_mask$partition1$ = 139264;
  });
  cljs.pprint.start_block_t.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__4385__auto__,k__4386__auto__){
  var self__ = this;
  var this__4385__auto____$1 = this;
  return this__4385__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4386__auto__,null);
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__4387__auto__,k13606,else__4388__auto__){
  var self__ = this;
  var this__4387__auto____$1 = this;
  var G__13610 = k13606;
  var G__13610__$1 = (((G__13610 instanceof cljs.core.Keyword))?G__13610.fqn:null);
  switch (G__13610__$1) {
  case "type-tag":
  return self__.type_tag;
  
  break;
  case "logical-block":
  return self__.logical_block;
  
  break;
  case "start-pos":
  return self__.start_pos;
  
  break;
  case "end-pos":
  return self__.end_pos;
  
  break;
  default:
  return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k13606,else__4388__auto__);
  
  }
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__4404__auto__,f__4405__auto__,init__4406__auto__){
  var self__ = this;
  var this__4404__auto____$1 = this;
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (this__4404__auto____$1){
  return (function (ret__4407__auto__,p__13611){
  var vec__13612 = p__13611;
  var k__4408__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13612,(0),null);
  var v__4409__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13612,(1),null);
  return (f__4405__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4405__auto__.cljs$core$IFn$_invoke$arity$3(ret__4407__auto__,k__4408__auto__,v__4409__auto__) : f__4405__auto__.call(null,ret__4407__auto__,k__4408__auto__,v__4409__auto__));
  });})(this__4404__auto____$1))
  ,init__4406__auto__,this__4404__auto____$1);
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__4399__auto__,writer__4400__auto__,opts__4401__auto__){
  var self__ = this;
  var this__4399__auto____$1 = this;
  var pr_pair__4402__auto__ = ((function (this__4399__auto____$1){
  return (function (keyval__4403__auto__){
  return cljs.core.pr_sequential_writer(writer__4400__auto__,cljs.core.pr_writer,""," ","",opts__4401__auto__,keyval__4403__auto__);
  });})(this__4399__auto____$1))
  ;
  return cljs.core.pr_sequential_writer(writer__4400__auto__,pr_pair__4402__auto__,"#cljs.pprint.start-block-t{",", ","}",opts__4401__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$type_DASH_tag,self__.type_tag],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$logical_DASH_block,self__.logical_block],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$start_DASH_pos,self__.start_pos],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$end_DASH_pos,self__.end_pos],null))], null),self__.__extmap));
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__13605){
  var self__ = this;
  var G__13605__$1 = this;
  return (new cljs.core.RecordIter((0),G__13605__$1,4,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$type_DASH_tag,cljs.core.cst$kw$logical_DASH_block,cljs.core.cst$kw$start_DASH_pos,cljs.core.cst$kw$end_DASH_pos], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__4383__auto__){
  var self__ = this;
  var this__4383__auto____$1 = this;
  return self__.__meta;
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__4380__auto__){
  var self__ = this;
  var this__4380__auto____$1 = this;
  return (new cljs.pprint.start_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__4389__auto__){
  var self__ = this;
  var this__4389__auto____$1 = this;
  return (4 + cljs.core.count(self__.__extmap));
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__4381__auto__){
  var self__ = this;
  var this__4381__auto____$1 = this;
  var h__4243__auto__ = self__.__hash;
  if((!((h__4243__auto__ == null)))){
  return h__4243__auto__;
  } else {
  var h__4243__auto____$1 = (function (){var fexpr__13615 = ((function (h__4243__auto__,this__4381__auto____$1){
  return (function (coll__4382__auto__){
  return (-414877272 ^ cljs.core.hash_unordered_coll(coll__4382__auto__));
  });})(h__4243__auto__,this__4381__auto____$1))
  ;
  return fexpr__13615(this__4381__auto____$1);
  })();
  self__.__hash = h__4243__auto____$1;
  
  return h__4243__auto____$1;
  }
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this13607,other13608){
  var self__ = this;
  var this13607__$1 = this;
  return (((!((other13608 == null)))) && ((this13607__$1.constructor === other13608.constructor)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13607__$1.type_tag,other13608.type_tag)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13607__$1.logical_block,other13608.logical_block)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13607__$1.start_pos,other13608.start_pos)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13607__$1.end_pos,other13608.end_pos)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13607__$1.__extmap,other13608.__extmap)));
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__4394__auto__,k__4395__auto__){
  var self__ = this;
  var this__4394__auto____$1 = this;
  if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [cljs.core.cst$kw$end_DASH_pos,null,cljs.core.cst$kw$logical_DASH_block,null,cljs.core.cst$kw$type_DASH_tag,null,cljs.core.cst$kw$start_DASH_pos,null], null), null),k__4395__auto__)){
  return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4394__auto____$1),self__.__meta),k__4395__auto__);
  } else {
  return (new cljs.pprint.start_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4395__auto__)),null));
  }
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__4392__auto__,k__4393__auto__,G__13605){
  var self__ = this;
  var this__4392__auto____$1 = this;
  var pred__13616 = cljs.core.keyword_identical_QMARK_;
  var expr__13617 = k__4393__auto__;
  if(cljs.core.truth_((function (){var G__13619 = cljs.core.cst$kw$type_DASH_tag;
  var G__13620 = expr__13617;
  return (pred__13616.cljs$core$IFn$_invoke$arity$2 ? pred__13616.cljs$core$IFn$_invoke$arity$2(G__13619,G__13620) : pred__13616.call(null,G__13619,G__13620));
  })())){
  return (new cljs.pprint.start_block_t(G__13605,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13621 = cljs.core.cst$kw$logical_DASH_block;
  var G__13622 = expr__13617;
  return (pred__13616.cljs$core$IFn$_invoke$arity$2 ? pred__13616.cljs$core$IFn$_invoke$arity$2(G__13621,G__13622) : pred__13616.call(null,G__13621,G__13622));
  })())){
  return (new cljs.pprint.start_block_t(self__.type_tag,G__13605,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13623 = cljs.core.cst$kw$start_DASH_pos;
  var G__13624 = expr__13617;
  return (pred__13616.cljs$core$IFn$_invoke$arity$2 ? pred__13616.cljs$core$IFn$_invoke$arity$2(G__13623,G__13624) : pred__13616.call(null,G__13623,G__13624));
  })())){
  return (new cljs.pprint.start_block_t(self__.type_tag,self__.logical_block,G__13605,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13625 = cljs.core.cst$kw$end_DASH_pos;
  var G__13626 = expr__13617;
  return (pred__13616.cljs$core$IFn$_invoke$arity$2 ? pred__13616.cljs$core$IFn$_invoke$arity$2(G__13625,G__13626) : pred__13616.call(null,G__13625,G__13626));
  })())){
  return (new cljs.pprint.start_block_t(self__.type_tag,self__.logical_block,self__.start_pos,G__13605,self__.__meta,self__.__extmap,null));
  } else {
  return (new cljs.pprint.start_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4393__auto__,G__13605),null));
  }
  }
  }
  }
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__4397__auto__){
  var self__ = this;
  var this__4397__auto____$1 = this;
  return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(cljs.core.cst$kw$type_DASH_tag,self__.type_tag,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$logical_DASH_block,self__.logical_block,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$start_DASH_pos,self__.start_pos,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$end_DASH_pos,self__.end_pos,null))], null),self__.__extmap));
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__4384__auto__,G__13605){
  var self__ = this;
  var this__4384__auto____$1 = this;
  return (new cljs.pprint.start_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,G__13605,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.start_block_t.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__4390__auto__,entry__4391__auto__){
  var self__ = this;
  var this__4390__auto____$1 = this;
  if(cljs.core.vector_QMARK_(entry__4391__auto__)){
  return this__4390__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(0)),cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(1)));
  } else {
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4390__auto____$1,entry__4391__auto__);
  }
  });
  
  cljs.pprint.start_block_t.getBasis = (function (){
  return new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$type_DASH_tag,cljs.core.cst$sym$logical_DASH_block,cljs.core.cst$sym$start_DASH_pos,cljs.core.cst$sym$end_DASH_pos], null);
  });
  
  cljs.pprint.start_block_t.cljs$lang$type = true;
  
  cljs.pprint.start_block_t.cljs$lang$ctorPrSeq = (function (this__4428__auto__){
  return (new cljs.core.List(null,"cljs.pprint/start-block-t",null,(1),null));
  });
  
  cljs.pprint.start_block_t.cljs$lang$ctorPrWriter = (function (this__4428__auto__,writer__4429__auto__){
  return cljs.core._write(writer__4429__auto__,"cljs.pprint/start-block-t");
  });
  
  /**
   * Positional factory function for cljs.pprint/start-block-t.
   */
  cljs.pprint.__GT_start_block_t = (function cljs$pprint$__GT_start_block_t(type_tag,logical_block,start_pos,end_pos){
  return (new cljs.pprint.start_block_t(type_tag,logical_block,start_pos,end_pos,null,null,null));
  });
  
  /**
   * Factory function for cljs.pprint/start-block-t, taking a map of keywords to field values.
   */
  cljs.pprint.map__GT_start_block_t = (function cljs$pprint$map__GT_start_block_t(G__13609){
  var extmap__4424__auto__ = (function (){var G__13627 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__13609,cljs.core.cst$kw$type_DASH_tag,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.cst$kw$logical_DASH_block,cljs.core.cst$kw$start_DASH_pos,cljs.core.cst$kw$end_DASH_pos], 0));
  if(cljs.core.record_QMARK_(G__13609)){
  return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__13627);
  } else {
  return G__13627;
  }
  })();
  return (new cljs.pprint.start_block_t(cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(G__13609),cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(G__13609),cljs.core.cst$kw$start_DASH_pos.cljs$core$IFn$_invoke$arity$1(G__13609),cljs.core.cst$kw$end_DASH_pos.cljs$core$IFn$_invoke$arity$1(G__13609),null,cljs.core.not_empty(extmap__4424__auto__),null));
  });
  
  
  cljs.pprint.make_start_block_t = (function cljs$pprint$make_start_block_t(logical_block,start_pos,end_pos){
  return (new cljs.pprint.start_block_t(cljs.core.cst$kw$start_DASH_block_DASH_t,logical_block,start_pos,end_pos,null,null,null));
  });
  
  cljs.pprint.start_block_t_QMARK_ = (function cljs$pprint$start_block_t_QMARK_(x__13328__auto__){
  return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(x__13328__auto__),cljs.core.cst$kw$start_DASH_block_DASH_t);
  });
  
  /**
  * @constructor
   * @implements {cljs.core.IRecord}
   * @implements {cljs.core.IKVReduce}
   * @implements {cljs.core.IEquiv}
   * @implements {cljs.core.IHash}
   * @implements {cljs.core.ICollection}
   * @implements {cljs.core.ICounted}
   * @implements {cljs.core.ISeqable}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.ICloneable}
   * @implements {cljs.core.IPrintWithWriter}
   * @implements {cljs.core.IIterable}
   * @implements {cljs.core.IWithMeta}
   * @implements {cljs.core.IAssociative}
   * @implements {cljs.core.IMap}
   * @implements {cljs.core.ILookup}
  */
  cljs.pprint.end_block_t = (function (type_tag,logical_block,start_pos,end_pos,__meta,__extmap,__hash){
  this.type_tag = type_tag;
  this.logical_block = logical_block;
  this.start_pos = start_pos;
  this.end_pos = end_pos;
  this.__meta = __meta;
  this.__extmap = __extmap;
  this.__hash = __hash;
  this.cljs$lang$protocol_mask$partition0$ = 2230716170;
  this.cljs$lang$protocol_mask$partition1$ = 139264;
  });
  cljs.pprint.end_block_t.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__4385__auto__,k__4386__auto__){
  var self__ = this;
  var this__4385__auto____$1 = this;
  return this__4385__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4386__auto__,null);
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__4387__auto__,k13630,else__4388__auto__){
  var self__ = this;
  var this__4387__auto____$1 = this;
  var G__13634 = k13630;
  var G__13634__$1 = (((G__13634 instanceof cljs.core.Keyword))?G__13634.fqn:null);
  switch (G__13634__$1) {
  case "type-tag":
  return self__.type_tag;
  
  break;
  case "logical-block":
  return self__.logical_block;
  
  break;
  case "start-pos":
  return self__.start_pos;
  
  break;
  case "end-pos":
  return self__.end_pos;
  
  break;
  default:
  return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k13630,else__4388__auto__);
  
  }
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__4404__auto__,f__4405__auto__,init__4406__auto__){
  var self__ = this;
  var this__4404__auto____$1 = this;
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (this__4404__auto____$1){
  return (function (ret__4407__auto__,p__13635){
  var vec__13636 = p__13635;
  var k__4408__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13636,(0),null);
  var v__4409__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13636,(1),null);
  return (f__4405__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4405__auto__.cljs$core$IFn$_invoke$arity$3(ret__4407__auto__,k__4408__auto__,v__4409__auto__) : f__4405__auto__.call(null,ret__4407__auto__,k__4408__auto__,v__4409__auto__));
  });})(this__4404__auto____$1))
  ,init__4406__auto__,this__4404__auto____$1);
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__4399__auto__,writer__4400__auto__,opts__4401__auto__){
  var self__ = this;
  var this__4399__auto____$1 = this;
  var pr_pair__4402__auto__ = ((function (this__4399__auto____$1){
  return (function (keyval__4403__auto__){
  return cljs.core.pr_sequential_writer(writer__4400__auto__,cljs.core.pr_writer,""," ","",opts__4401__auto__,keyval__4403__auto__);
  });})(this__4399__auto____$1))
  ;
  return cljs.core.pr_sequential_writer(writer__4400__auto__,pr_pair__4402__auto__,"#cljs.pprint.end-block-t{",", ","}",opts__4401__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$type_DASH_tag,self__.type_tag],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$logical_DASH_block,self__.logical_block],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$start_DASH_pos,self__.start_pos],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$end_DASH_pos,self__.end_pos],null))], null),self__.__extmap));
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__13629){
  var self__ = this;
  var G__13629__$1 = this;
  return (new cljs.core.RecordIter((0),G__13629__$1,4,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$type_DASH_tag,cljs.core.cst$kw$logical_DASH_block,cljs.core.cst$kw$start_DASH_pos,cljs.core.cst$kw$end_DASH_pos], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__4383__auto__){
  var self__ = this;
  var this__4383__auto____$1 = this;
  return self__.__meta;
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__4380__auto__){
  var self__ = this;
  var this__4380__auto____$1 = this;
  return (new cljs.pprint.end_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__4389__auto__){
  var self__ = this;
  var this__4389__auto____$1 = this;
  return (4 + cljs.core.count(self__.__extmap));
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__4381__auto__){
  var self__ = this;
  var this__4381__auto____$1 = this;
  var h__4243__auto__ = self__.__hash;
  if((!((h__4243__auto__ == null)))){
  return h__4243__auto__;
  } else {
  var h__4243__auto____$1 = (function (){var fexpr__13639 = ((function (h__4243__auto__,this__4381__auto____$1){
  return (function (coll__4382__auto__){
  return (1365867980 ^ cljs.core.hash_unordered_coll(coll__4382__auto__));
  });})(h__4243__auto__,this__4381__auto____$1))
  ;
  return fexpr__13639(this__4381__auto____$1);
  })();
  self__.__hash = h__4243__auto____$1;
  
  return h__4243__auto____$1;
  }
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this13631,other13632){
  var self__ = this;
  var this13631__$1 = this;
  return (((!((other13632 == null)))) && ((this13631__$1.constructor === other13632.constructor)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13631__$1.type_tag,other13632.type_tag)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13631__$1.logical_block,other13632.logical_block)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13631__$1.start_pos,other13632.start_pos)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13631__$1.end_pos,other13632.end_pos)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13631__$1.__extmap,other13632.__extmap)));
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__4394__auto__,k__4395__auto__){
  var self__ = this;
  var this__4394__auto____$1 = this;
  if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [cljs.core.cst$kw$end_DASH_pos,null,cljs.core.cst$kw$logical_DASH_block,null,cljs.core.cst$kw$type_DASH_tag,null,cljs.core.cst$kw$start_DASH_pos,null], null), null),k__4395__auto__)){
  return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4394__auto____$1),self__.__meta),k__4395__auto__);
  } else {
  return (new cljs.pprint.end_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4395__auto__)),null));
  }
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__4392__auto__,k__4393__auto__,G__13629){
  var self__ = this;
  var this__4392__auto____$1 = this;
  var pred__13640 = cljs.core.keyword_identical_QMARK_;
  var expr__13641 = k__4393__auto__;
  if(cljs.core.truth_((function (){var G__13643 = cljs.core.cst$kw$type_DASH_tag;
  var G__13644 = expr__13641;
  return (pred__13640.cljs$core$IFn$_invoke$arity$2 ? pred__13640.cljs$core$IFn$_invoke$arity$2(G__13643,G__13644) : pred__13640.call(null,G__13643,G__13644));
  })())){
  return (new cljs.pprint.end_block_t(G__13629,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13645 = cljs.core.cst$kw$logical_DASH_block;
  var G__13646 = expr__13641;
  return (pred__13640.cljs$core$IFn$_invoke$arity$2 ? pred__13640.cljs$core$IFn$_invoke$arity$2(G__13645,G__13646) : pred__13640.call(null,G__13645,G__13646));
  })())){
  return (new cljs.pprint.end_block_t(self__.type_tag,G__13629,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13647 = cljs.core.cst$kw$start_DASH_pos;
  var G__13648 = expr__13641;
  return (pred__13640.cljs$core$IFn$_invoke$arity$2 ? pred__13640.cljs$core$IFn$_invoke$arity$2(G__13647,G__13648) : pred__13640.call(null,G__13647,G__13648));
  })())){
  return (new cljs.pprint.end_block_t(self__.type_tag,self__.logical_block,G__13629,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13649 = cljs.core.cst$kw$end_DASH_pos;
  var G__13650 = expr__13641;
  return (pred__13640.cljs$core$IFn$_invoke$arity$2 ? pred__13640.cljs$core$IFn$_invoke$arity$2(G__13649,G__13650) : pred__13640.call(null,G__13649,G__13650));
  })())){
  return (new cljs.pprint.end_block_t(self__.type_tag,self__.logical_block,self__.start_pos,G__13629,self__.__meta,self__.__extmap,null));
  } else {
  return (new cljs.pprint.end_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4393__auto__,G__13629),null));
  }
  }
  }
  }
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__4397__auto__){
  var self__ = this;
  var this__4397__auto____$1 = this;
  return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(cljs.core.cst$kw$type_DASH_tag,self__.type_tag,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$logical_DASH_block,self__.logical_block,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$start_DASH_pos,self__.start_pos,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$end_DASH_pos,self__.end_pos,null))], null),self__.__extmap));
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__4384__auto__,G__13629){
  var self__ = this;
  var this__4384__auto____$1 = this;
  return (new cljs.pprint.end_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,G__13629,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.end_block_t.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__4390__auto__,entry__4391__auto__){
  var self__ = this;
  var this__4390__auto____$1 = this;
  if(cljs.core.vector_QMARK_(entry__4391__auto__)){
  return this__4390__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(0)),cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(1)));
  } else {
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4390__auto____$1,entry__4391__auto__);
  }
  });
  
  cljs.pprint.end_block_t.getBasis = (function (){
  return new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$type_DASH_tag,cljs.core.cst$sym$logical_DASH_block,cljs.core.cst$sym$start_DASH_pos,cljs.core.cst$sym$end_DASH_pos], null);
  });
  
  cljs.pprint.end_block_t.cljs$lang$type = true;
  
  cljs.pprint.end_block_t.cljs$lang$ctorPrSeq = (function (this__4428__auto__){
  return (new cljs.core.List(null,"cljs.pprint/end-block-t",null,(1),null));
  });
  
  cljs.pprint.end_block_t.cljs$lang$ctorPrWriter = (function (this__4428__auto__,writer__4429__auto__){
  return cljs.core._write(writer__4429__auto__,"cljs.pprint/end-block-t");
  });
  
  /**
   * Positional factory function for cljs.pprint/end-block-t.
   */
  cljs.pprint.__GT_end_block_t = (function cljs$pprint$__GT_end_block_t(type_tag,logical_block,start_pos,end_pos){
  return (new cljs.pprint.end_block_t(type_tag,logical_block,start_pos,end_pos,null,null,null));
  });
  
  /**
   * Factory function for cljs.pprint/end-block-t, taking a map of keywords to field values.
   */
  cljs.pprint.map__GT_end_block_t = (function cljs$pprint$map__GT_end_block_t(G__13633){
  var extmap__4424__auto__ = (function (){var G__13651 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__13633,cljs.core.cst$kw$type_DASH_tag,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.cst$kw$logical_DASH_block,cljs.core.cst$kw$start_DASH_pos,cljs.core.cst$kw$end_DASH_pos], 0));
  if(cljs.core.record_QMARK_(G__13633)){
  return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__13651);
  } else {
  return G__13651;
  }
  })();
  return (new cljs.pprint.end_block_t(cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(G__13633),cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(G__13633),cljs.core.cst$kw$start_DASH_pos.cljs$core$IFn$_invoke$arity$1(G__13633),cljs.core.cst$kw$end_DASH_pos.cljs$core$IFn$_invoke$arity$1(G__13633),null,cljs.core.not_empty(extmap__4424__auto__),null));
  });
  
  
  cljs.pprint.make_end_block_t = (function cljs$pprint$make_end_block_t(logical_block,start_pos,end_pos){
  return (new cljs.pprint.end_block_t(cljs.core.cst$kw$end_DASH_block_DASH_t,logical_block,start_pos,end_pos,null,null,null));
  });
  
  cljs.pprint.end_block_t_QMARK_ = (function cljs$pprint$end_block_t_QMARK_(x__13328__auto__){
  return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(x__13328__auto__),cljs.core.cst$kw$end_DASH_block_DASH_t);
  });
  
  /**
  * @constructor
   * @implements {cljs.core.IRecord}
   * @implements {cljs.core.IKVReduce}
   * @implements {cljs.core.IEquiv}
   * @implements {cljs.core.IHash}
   * @implements {cljs.core.ICollection}
   * @implements {cljs.core.ICounted}
   * @implements {cljs.core.ISeqable}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.ICloneable}
   * @implements {cljs.core.IPrintWithWriter}
   * @implements {cljs.core.IIterable}
   * @implements {cljs.core.IWithMeta}
   * @implements {cljs.core.IAssociative}
   * @implements {cljs.core.IMap}
   * @implements {cljs.core.ILookup}
  */
  cljs.pprint.indent_t = (function (type_tag,logical_block,relative_to,offset,start_pos,end_pos,__meta,__extmap,__hash){
  this.type_tag = type_tag;
  this.logical_block = logical_block;
  this.relative_to = relative_to;
  this.offset = offset;
  this.start_pos = start_pos;
  this.end_pos = end_pos;
  this.__meta = __meta;
  this.__extmap = __extmap;
  this.__hash = __hash;
  this.cljs$lang$protocol_mask$partition0$ = 2230716170;
  this.cljs$lang$protocol_mask$partition1$ = 139264;
  });
  cljs.pprint.indent_t.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__4385__auto__,k__4386__auto__){
  var self__ = this;
  var this__4385__auto____$1 = this;
  return this__4385__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4386__auto__,null);
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__4387__auto__,k13654,else__4388__auto__){
  var self__ = this;
  var this__4387__auto____$1 = this;
  var G__13658 = k13654;
  var G__13658__$1 = (((G__13658 instanceof cljs.core.Keyword))?G__13658.fqn:null);
  switch (G__13658__$1) {
  case "type-tag":
  return self__.type_tag;
  
  break;
  case "logical-block":
  return self__.logical_block;
  
  break;
  case "relative-to":
  return self__.relative_to;
  
  break;
  case "offset":
  return self__.offset;
  
  break;
  case "start-pos":
  return self__.start_pos;
  
  break;
  case "end-pos":
  return self__.end_pos;
  
  break;
  default:
  return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k13654,else__4388__auto__);
  
  }
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__4404__auto__,f__4405__auto__,init__4406__auto__){
  var self__ = this;
  var this__4404__auto____$1 = this;
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (this__4404__auto____$1){
  return (function (ret__4407__auto__,p__13659){
  var vec__13660 = p__13659;
  var k__4408__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13660,(0),null);
  var v__4409__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13660,(1),null);
  return (f__4405__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4405__auto__.cljs$core$IFn$_invoke$arity$3(ret__4407__auto__,k__4408__auto__,v__4409__auto__) : f__4405__auto__.call(null,ret__4407__auto__,k__4408__auto__,v__4409__auto__));
  });})(this__4404__auto____$1))
  ,init__4406__auto__,this__4404__auto____$1);
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__4399__auto__,writer__4400__auto__,opts__4401__auto__){
  var self__ = this;
  var this__4399__auto____$1 = this;
  var pr_pair__4402__auto__ = ((function (this__4399__auto____$1){
  return (function (keyval__4403__auto__){
  return cljs.core.pr_sequential_writer(writer__4400__auto__,cljs.core.pr_writer,""," ","",opts__4401__auto__,keyval__4403__auto__);
  });})(this__4399__auto____$1))
  ;
  return cljs.core.pr_sequential_writer(writer__4400__auto__,pr_pair__4402__auto__,"#cljs.pprint.indent-t{",", ","}",opts__4401__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$type_DASH_tag,self__.type_tag],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$logical_DASH_block,self__.logical_block],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$relative_DASH_to,self__.relative_to],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$offset,self__.offset],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$start_DASH_pos,self__.start_pos],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$end_DASH_pos,self__.end_pos],null))], null),self__.__extmap));
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__13653){
  var self__ = this;
  var G__13653__$1 = this;
  return (new cljs.core.RecordIter((0),G__13653__$1,6,new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$type_DASH_tag,cljs.core.cst$kw$logical_DASH_block,cljs.core.cst$kw$relative_DASH_to,cljs.core.cst$kw$offset,cljs.core.cst$kw$start_DASH_pos,cljs.core.cst$kw$end_DASH_pos], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__4383__auto__){
  var self__ = this;
  var this__4383__auto____$1 = this;
  return self__.__meta;
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__4380__auto__){
  var self__ = this;
  var this__4380__auto____$1 = this;
  return (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,self__.offset,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__4389__auto__){
  var self__ = this;
  var this__4389__auto____$1 = this;
  return (6 + cljs.core.count(self__.__extmap));
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__4381__auto__){
  var self__ = this;
  var this__4381__auto____$1 = this;
  var h__4243__auto__ = self__.__hash;
  if((!((h__4243__auto__ == null)))){
  return h__4243__auto__;
  } else {
  var h__4243__auto____$1 = (function (){var fexpr__13663 = ((function (h__4243__auto__,this__4381__auto____$1){
  return (function (coll__4382__auto__){
  return (-1602780238 ^ cljs.core.hash_unordered_coll(coll__4382__auto__));
  });})(h__4243__auto__,this__4381__auto____$1))
  ;
  return fexpr__13663(this__4381__auto____$1);
  })();
  self__.__hash = h__4243__auto____$1;
  
  return h__4243__auto____$1;
  }
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this13655,other13656){
  var self__ = this;
  var this13655__$1 = this;
  return (((!((other13656 == null)))) && ((this13655__$1.constructor === other13656.constructor)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13655__$1.type_tag,other13656.type_tag)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13655__$1.logical_block,other13656.logical_block)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13655__$1.relative_to,other13656.relative_to)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13655__$1.offset,other13656.offset)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13655__$1.start_pos,other13656.start_pos)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13655__$1.end_pos,other13656.end_pos)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13655__$1.__extmap,other13656.__extmap)));
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__4394__auto__,k__4395__auto__){
  var self__ = this;
  var this__4394__auto____$1 = this;
  if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [cljs.core.cst$kw$offset,null,cljs.core.cst$kw$end_DASH_pos,null,cljs.core.cst$kw$relative_DASH_to,null,cljs.core.cst$kw$logical_DASH_block,null,cljs.core.cst$kw$type_DASH_tag,null,cljs.core.cst$kw$start_DASH_pos,null], null), null),k__4395__auto__)){
  return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4394__auto____$1),self__.__meta),k__4395__auto__);
  } else {
  return (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,self__.offset,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4395__auto__)),null));
  }
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__4392__auto__,k__4393__auto__,G__13653){
  var self__ = this;
  var this__4392__auto____$1 = this;
  var pred__13664 = cljs.core.keyword_identical_QMARK_;
  var expr__13665 = k__4393__auto__;
  if(cljs.core.truth_((function (){var G__13667 = cljs.core.cst$kw$type_DASH_tag;
  var G__13668 = expr__13665;
  return (pred__13664.cljs$core$IFn$_invoke$arity$2 ? pred__13664.cljs$core$IFn$_invoke$arity$2(G__13667,G__13668) : pred__13664.call(null,G__13667,G__13668));
  })())){
  return (new cljs.pprint.indent_t(G__13653,self__.logical_block,self__.relative_to,self__.offset,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13669 = cljs.core.cst$kw$logical_DASH_block;
  var G__13670 = expr__13665;
  return (pred__13664.cljs$core$IFn$_invoke$arity$2 ? pred__13664.cljs$core$IFn$_invoke$arity$2(G__13669,G__13670) : pred__13664.call(null,G__13669,G__13670));
  })())){
  return (new cljs.pprint.indent_t(self__.type_tag,G__13653,self__.relative_to,self__.offset,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13671 = cljs.core.cst$kw$relative_DASH_to;
  var G__13672 = expr__13665;
  return (pred__13664.cljs$core$IFn$_invoke$arity$2 ? pred__13664.cljs$core$IFn$_invoke$arity$2(G__13671,G__13672) : pred__13664.call(null,G__13671,G__13672));
  })())){
  return (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,G__13653,self__.offset,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13673 = cljs.core.cst$kw$offset;
  var G__13674 = expr__13665;
  return (pred__13664.cljs$core$IFn$_invoke$arity$2 ? pred__13664.cljs$core$IFn$_invoke$arity$2(G__13673,G__13674) : pred__13664.call(null,G__13673,G__13674));
  })())){
  return (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,G__13653,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13675 = cljs.core.cst$kw$start_DASH_pos;
  var G__13676 = expr__13665;
  return (pred__13664.cljs$core$IFn$_invoke$arity$2 ? pred__13664.cljs$core$IFn$_invoke$arity$2(G__13675,G__13676) : pred__13664.call(null,G__13675,G__13676));
  })())){
  return (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,self__.offset,G__13653,self__.end_pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13677 = cljs.core.cst$kw$end_DASH_pos;
  var G__13678 = expr__13665;
  return (pred__13664.cljs$core$IFn$_invoke$arity$2 ? pred__13664.cljs$core$IFn$_invoke$arity$2(G__13677,G__13678) : pred__13664.call(null,G__13677,G__13678));
  })())){
  return (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,self__.offset,self__.start_pos,G__13653,self__.__meta,self__.__extmap,null));
  } else {
  return (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,self__.offset,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4393__auto__,G__13653),null));
  }
  }
  }
  }
  }
  }
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__4397__auto__){
  var self__ = this;
  var this__4397__auto____$1 = this;
  return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(cljs.core.cst$kw$type_DASH_tag,self__.type_tag,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$logical_DASH_block,self__.logical_block,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$relative_DASH_to,self__.relative_to,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$offset,self__.offset,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$start_DASH_pos,self__.start_pos,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$end_DASH_pos,self__.end_pos,null))], null),self__.__extmap));
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__4384__auto__,G__13653){
  var self__ = this;
  var this__4384__auto____$1 = this;
  return (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,self__.offset,self__.start_pos,self__.end_pos,G__13653,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.indent_t.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__4390__auto__,entry__4391__auto__){
  var self__ = this;
  var this__4390__auto____$1 = this;
  if(cljs.core.vector_QMARK_(entry__4391__auto__)){
  return this__4390__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(0)),cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(1)));
  } else {
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4390__auto____$1,entry__4391__auto__);
  }
  });
  
  cljs.pprint.indent_t.getBasis = (function (){
  return new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$type_DASH_tag,cljs.core.cst$sym$logical_DASH_block,cljs.core.cst$sym$relative_DASH_to,cljs.core.cst$sym$offset,cljs.core.cst$sym$start_DASH_pos,cljs.core.cst$sym$end_DASH_pos], null);
  });
  
  cljs.pprint.indent_t.cljs$lang$type = true;
  
  cljs.pprint.indent_t.cljs$lang$ctorPrSeq = (function (this__4428__auto__){
  return (new cljs.core.List(null,"cljs.pprint/indent-t",null,(1),null));
  });
  
  cljs.pprint.indent_t.cljs$lang$ctorPrWriter = (function (this__4428__auto__,writer__4429__auto__){
  return cljs.core._write(writer__4429__auto__,"cljs.pprint/indent-t");
  });
  
  /**
   * Positional factory function for cljs.pprint/indent-t.
   */
  cljs.pprint.__GT_indent_t = (function cljs$pprint$__GT_indent_t(type_tag,logical_block,relative_to,offset,start_pos,end_pos){
  return (new cljs.pprint.indent_t(type_tag,logical_block,relative_to,offset,start_pos,end_pos,null,null,null));
  });
  
  /**
   * Factory function for cljs.pprint/indent-t, taking a map of keywords to field values.
   */
  cljs.pprint.map__GT_indent_t = (function cljs$pprint$map__GT_indent_t(G__13657){
  var extmap__4424__auto__ = (function (){var G__13679 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__13657,cljs.core.cst$kw$type_DASH_tag,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.cst$kw$logical_DASH_block,cljs.core.cst$kw$relative_DASH_to,cljs.core.cst$kw$offset,cljs.core.cst$kw$start_DASH_pos,cljs.core.cst$kw$end_DASH_pos], 0));
  if(cljs.core.record_QMARK_(G__13657)){
  return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__13679);
  } else {
  return G__13679;
  }
  })();
  return (new cljs.pprint.indent_t(cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(G__13657),cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(G__13657),cljs.core.cst$kw$relative_DASH_to.cljs$core$IFn$_invoke$arity$1(G__13657),cljs.core.cst$kw$offset.cljs$core$IFn$_invoke$arity$1(G__13657),cljs.core.cst$kw$start_DASH_pos.cljs$core$IFn$_invoke$arity$1(G__13657),cljs.core.cst$kw$end_DASH_pos.cljs$core$IFn$_invoke$arity$1(G__13657),null,cljs.core.not_empty(extmap__4424__auto__),null));
  });
  
  
  cljs.pprint.make_indent_t = (function cljs$pprint$make_indent_t(logical_block,relative_to,offset,start_pos,end_pos){
  return (new cljs.pprint.indent_t(cljs.core.cst$kw$indent_DASH_t,logical_block,relative_to,offset,start_pos,end_pos,null,null,null));
  });
  
  cljs.pprint.indent_t_QMARK_ = (function cljs$pprint$indent_t_QMARK_(x__13328__auto__){
  return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(x__13328__auto__),cljs.core.cst$kw$indent_DASH_t);
  });
  cljs.pprint.pp_newline = (function cljs$pprint$pp_newline(){
  return "\n";
  });
  if((typeof cljs !== 'undefined') && (typeof cljs.pprint !== 'undefined') && (typeof cljs.pprint.write_token !== 'undefined')){
  } else {
  cljs.pprint.write_token = (function (){var method_table__4613__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var prefer_table__4614__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var method_cache__4615__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var cached_hierarchy__4616__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var hierarchy__4617__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$hierarchy,(function (){var fexpr__13683 = cljs.core.get_global_hierarchy;
  return (fexpr__13683.cljs$core$IFn$_invoke$arity$0 ? fexpr__13683.cljs$core$IFn$_invoke$arity$0() : fexpr__13683.call(null));
  })());
  return (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2("cljs.pprint","write-token"),((function (method_table__4613__auto__,prefer_table__4614__auto__,method_cache__4615__auto__,cached_hierarchy__4616__auto__,hierarchy__4617__auto__){
  return (function (p1__13682_SHARP_,p2__13681_SHARP_){
  return cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(p2__13681_SHARP_);
  });})(method_table__4613__auto__,prefer_table__4614__auto__,method_cache__4615__auto__,cached_hierarchy__4616__auto__,hierarchy__4617__auto__))
  ,cljs.core.cst$kw$default,hierarchy__4617__auto__,method_table__4613__auto__,prefer_table__4614__auto__,method_cache__4615__auto__,cached_hierarchy__4616__auto__));
  })();
  }
  cljs.pprint.write_token.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.cst$kw$start_DASH_block_DASH_t,(function (this$,token){
  var temp__5720__auto___13685 = cljs.core.cst$kw$logical_DASH_block_DASH_callback.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  if(cljs.core.truth_(temp__5720__auto___13685)){
  var cb_13686 = temp__5720__auto___13685;
  var G__13684_13687 = cljs.core.cst$kw$start;
  (cb_13686.cljs$core$IFn$_invoke$arity$1 ? cb_13686.cljs$core$IFn$_invoke$arity$1(G__13684_13687) : cb_13686.call(null,G__13684_13687));
  } else {
  }
  
  var lb = cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(token);
  var temp__5720__auto___13688 = cljs.core.cst$kw$prefix.cljs$core$IFn$_invoke$arity$1(lb);
  if(cljs.core.truth_(temp__5720__auto___13688)){
  var prefix_13689 = temp__5720__auto___13688;
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),prefix_13689);
  } else {
  }
  
  var col = cljs.pprint.get_column(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))));
  cljs.core.reset_BANG_(cljs.core.cst$kw$start_DASH_col.cljs$core$IFn$_invoke$arity$1(lb),col);
  
  return cljs.core.reset_BANG_(cljs.core.cst$kw$indent.cljs$core$IFn$_invoke$arity$1(lb),col);
  }));
  cljs.pprint.write_token.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.cst$kw$end_DASH_block_DASH_t,(function (this$,token){
  var temp__5720__auto___13691 = cljs.core.cst$kw$logical_DASH_block_DASH_callback.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  if(cljs.core.truth_(temp__5720__auto___13691)){
  var cb_13692 = temp__5720__auto___13691;
  var G__13690_13693 = cljs.core.cst$kw$end;
  (cb_13692.cljs$core$IFn$_invoke$arity$1 ? cb_13692.cljs$core$IFn$_invoke$arity$1(G__13690_13693) : cb_13692.call(null,G__13690_13693));
  } else {
  }
  
  var temp__5720__auto__ = cljs.core.cst$kw$suffix.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(token));
  if(cljs.core.truth_(temp__5720__auto__)){
  var suffix = temp__5720__auto__;
  return cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),suffix);
  } else {
  return null;
  }
  }));
  cljs.pprint.write_token.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.cst$kw$indent_DASH_t,(function (this$,token){
  var lb = cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(token);
  return cljs.core.reset_BANG_(cljs.core.cst$kw$indent.cljs$core$IFn$_invoke$arity$1(lb),(cljs.core.cst$kw$offset.cljs$core$IFn$_invoke$arity$1(token) + (function (){var pred__13694 = cljs.core._EQ_;
  var expr__13695 = cljs.core.cst$kw$relative_DASH_to.cljs$core$IFn$_invoke$arity$1(token);
  if(cljs.core.truth_((function (){var G__13697 = cljs.core.cst$kw$block;
  var G__13698 = expr__13695;
  return (pred__13694.cljs$core$IFn$_invoke$arity$2 ? pred__13694.cljs$core$IFn$_invoke$arity$2(G__13697,G__13698) : pred__13694.call(null,G__13697,G__13698));
  })())){
  return cljs.core.deref(cljs.core.cst$kw$start_DASH_col.cljs$core$IFn$_invoke$arity$1(lb));
  } else {
  if(cljs.core.truth_((function (){var G__13699 = cljs.core.cst$kw$current;
  var G__13700 = expr__13695;
  return (pred__13694.cljs$core$IFn$_invoke$arity$2 ? pred__13694.cljs$core$IFn$_invoke$arity$2(G__13699,G__13700) : pred__13694.call(null,G__13699,G__13700));
  })())){
  return cljs.pprint.get_column(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))));
  } else {
  throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__13695)].join('')));
  }
  }
  })()));
  }));
  cljs.pprint.write_token.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.cst$kw$buffer_DASH_blob,(function (this$,token){
  return cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),cljs.core.cst$kw$data.cljs$core$IFn$_invoke$arity$1(token));
  }));
  cljs.pprint.write_token.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.cst$kw$nl_DASH_t,(function (this$,token){
  if(cljs.core.truth_((function (){var or__4131__auto__ = cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$type.cljs$core$IFn$_invoke$arity$1(token),cljs.core.cst$kw$mandatory);
  if(or__4131__auto__){
  return or__4131__auto__;
  } else {
  var and__4120__auto__ = (!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$type.cljs$core$IFn$_invoke$arity$1(token),cljs.core.cst$kw$fill)));
  if(and__4120__auto__){
  return cljs.core.deref(cljs.core.cst$kw$done_DASH_nl.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(token)));
  } else {
  return and__4120__auto__;
  }
  }
  })())){
  (cljs.pprint.emit_nl.cljs$core$IFn$_invoke$arity$2 ? cljs.pprint.emit_nl.cljs$core$IFn$_invoke$arity$2(this$,token) : cljs.pprint.emit_nl.call(null,this$,token));
  } else {
  var temp__5718__auto___13701 = cljs.core.cst$kw$trailing_DASH_white_DASH_space.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  if(cljs.core.truth_(temp__5718__auto___13701)){
  var tws_13702 = temp__5718__auto___13701;
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),tws_13702);
  } else {
  }
  }
  
  return cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$trailing_DASH_white_DASH_space,null);
  }));
  cljs.pprint.write_tokens = (function cljs$pprint$write_tokens(this$,tokens,force_trailing_whitespace){
  var seq__13703 = cljs.core.seq(tokens);
  var chunk__13704 = null;
  var count__13705 = (0);
  var i__13706 = (0);
  while(true){
  if((i__13706 < count__13705)){
  var token = chunk__13704.cljs$core$IIndexed$_nth$arity$2(null,i__13706);
  if((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(token),cljs.core.cst$kw$nl_DASH_t)))){
  var temp__5718__auto___13707 = cljs.core.cst$kw$trailing_DASH_white_DASH_space.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  if(cljs.core.truth_(temp__5718__auto___13707)){
  var tws_13708 = temp__5718__auto___13707;
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),tws_13708);
  } else {
  }
  } else {
  }
  
  (cljs.pprint.write_token.cljs$core$IFn$_invoke$arity$2 ? cljs.pprint.write_token.cljs$core$IFn$_invoke$arity$2(this$,token) : cljs.pprint.write_token.call(null,this$,token));
  
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$trailing_DASH_white_DASH_space,cljs.core.cst$kw$trailing_DASH_white_DASH_space.cljs$core$IFn$_invoke$arity$1(token));
  
  var tws_13709 = cljs.core.cst$kw$trailing_DASH_white_DASH_space.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  if(cljs.core.truth_((function (){var and__4120__auto__ = force_trailing_whitespace;
  if(cljs.core.truth_(and__4120__auto__)){
  return tws_13709;
  } else {
  return and__4120__auto__;
  }
  })())){
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),tws_13709);
  
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$trailing_DASH_white_DASH_space,null);
  } else {
  }
  
  
  var G__13710 = seq__13703;
  var G__13711 = chunk__13704;
  var G__13712 = count__13705;
  var G__13713 = (i__13706 + (1));
  seq__13703 = G__13710;
  chunk__13704 = G__13711;
  count__13705 = G__13712;
  i__13706 = G__13713;
  continue;
  } else {
  var temp__5720__auto__ = cljs.core.seq(seq__13703);
  if(temp__5720__auto__){
  var seq__13703__$1 = temp__5720__auto__;
  if(cljs.core.chunked_seq_QMARK_(seq__13703__$1)){
  var c__4550__auto__ = cljs.core.chunk_first(seq__13703__$1);
  var G__13714 = cljs.core.chunk_rest(seq__13703__$1);
  var G__13715 = c__4550__auto__;
  var G__13716 = cljs.core.count(c__4550__auto__);
  var G__13717 = (0);
  seq__13703 = G__13714;
  chunk__13704 = G__13715;
  count__13705 = G__13716;
  i__13706 = G__13717;
  continue;
  } else {
  var token = cljs.core.first(seq__13703__$1);
  if((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$type_DASH_tag.cljs$core$IFn$_invoke$arity$1(token),cljs.core.cst$kw$nl_DASH_t)))){
  var temp__5718__auto___13718 = cljs.core.cst$kw$trailing_DASH_white_DASH_space.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  if(cljs.core.truth_(temp__5718__auto___13718)){
  var tws_13719 = temp__5718__auto___13718;
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),tws_13719);
  } else {
  }
  } else {
  }
  
  (cljs.pprint.write_token.cljs$core$IFn$_invoke$arity$2 ? cljs.pprint.write_token.cljs$core$IFn$_invoke$arity$2(this$,token) : cljs.pprint.write_token.call(null,this$,token));
  
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$trailing_DASH_white_DASH_space,cljs.core.cst$kw$trailing_DASH_white_DASH_space.cljs$core$IFn$_invoke$arity$1(token));
  
  var tws_13720 = cljs.core.cst$kw$trailing_DASH_white_DASH_space.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  if(cljs.core.truth_((function (){var and__4120__auto__ = force_trailing_whitespace;
  if(cljs.core.truth_(and__4120__auto__)){
  return tws_13720;
  } else {
  return and__4120__auto__;
  }
  })())){
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),tws_13720);
  
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$trailing_DASH_white_DASH_space,null);
  } else {
  }
  
  
  var G__13721 = cljs.core.next(seq__13703__$1);
  var G__13722 = null;
  var G__13723 = (0);
  var G__13724 = (0);
  seq__13703 = G__13721;
  chunk__13704 = G__13722;
  count__13705 = G__13723;
  i__13706 = G__13724;
  continue;
  }
  } else {
  return null;
  }
  }
  break;
  }
  });
  cljs.pprint.tokens_fit_QMARK_ = (function cljs$pprint$tokens_fit_QMARK_(this$,tokens){
  var maxcol = cljs.pprint.get_max_column(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))));
  return (((maxcol == null)) || (((cljs.pprint.get_column(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)))) + cljs.pprint.buffer_length(tokens)) < maxcol)));
  });
  cljs.pprint.linear_nl_QMARK_ = (function cljs$pprint$linear_nl_QMARK_(this$,lb,section){
  var or__4131__auto__ = cljs.core.deref(cljs.core.cst$kw$done_DASH_nl.cljs$core$IFn$_invoke$arity$1(lb));
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return (!(cljs.pprint.tokens_fit_QMARK_(this$,section)));
  }
  });
  cljs.pprint.miser_nl_QMARK_ = (function cljs$pprint$miser_nl_QMARK_(this$,lb,section){
  var miser_width = cljs.pprint.get_miser_width(this$);
  var maxcol = cljs.pprint.get_max_column(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))));
  var and__4120__auto__ = miser_width;
  if(cljs.core.truth_(and__4120__auto__)){
  var and__4120__auto____$1 = maxcol;
  if(cljs.core.truth_(and__4120__auto____$1)){
  var and__4120__auto____$2 = (cljs.core.deref(cljs.core.cst$kw$start_DASH_col.cljs$core$IFn$_invoke$arity$1(lb)) >= (maxcol - miser_width));
  if(and__4120__auto____$2){
  return cljs.pprint.linear_nl_QMARK_(this$,lb,section);
  } else {
  return and__4120__auto____$2;
  }
  } else {
  return and__4120__auto____$1;
  }
  } else {
  return and__4120__auto__;
  }
  });
  if((typeof cljs !== 'undefined') && (typeof cljs.pprint !== 'undefined') && (typeof cljs.pprint.emit_nl_QMARK_ !== 'undefined')){
  } else {
  cljs.pprint.emit_nl_QMARK_ = (function (){var method_table__4613__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var prefer_table__4614__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var method_cache__4615__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var cached_hierarchy__4616__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var hierarchy__4617__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$hierarchy,(function (){var fexpr__13725 = cljs.core.get_global_hierarchy;
  return (fexpr__13725.cljs$core$IFn$_invoke$arity$0 ? fexpr__13725.cljs$core$IFn$_invoke$arity$0() : fexpr__13725.call(null));
  })());
  return (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2("cljs.pprint","emit-nl?"),((function (method_table__4613__auto__,prefer_table__4614__auto__,method_cache__4615__auto__,cached_hierarchy__4616__auto__,hierarchy__4617__auto__){
  return (function (t,_,___$1,___$2){
  return cljs.core.cst$kw$type.cljs$core$IFn$_invoke$arity$1(t);
  });})(method_table__4613__auto__,prefer_table__4614__auto__,method_cache__4615__auto__,cached_hierarchy__4616__auto__,hierarchy__4617__auto__))
  ,cljs.core.cst$kw$default,hierarchy__4617__auto__,method_table__4613__auto__,prefer_table__4614__auto__,method_cache__4615__auto__,cached_hierarchy__4616__auto__));
  })();
  }
  cljs.pprint.emit_nl_QMARK_.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.cst$kw$linear,(function (newl,this$,section,_){
  var lb = cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(newl);
  return cljs.pprint.linear_nl_QMARK_(this$,lb,section);
  }));
  cljs.pprint.emit_nl_QMARK_.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.cst$kw$miser,(function (newl,this$,section,_){
  var lb = cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(newl);
  return cljs.pprint.miser_nl_QMARK_(this$,lb,section);
  }));
  cljs.pprint.emit_nl_QMARK_.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.cst$kw$fill,(function (newl,this$,section,subsection){
  var lb = cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(newl);
  var or__4131__auto__ = cljs.core.deref(cljs.core.cst$kw$intra_DASH_block_DASH_nl.cljs$core$IFn$_invoke$arity$1(lb));
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  var or__4131__auto____$1 = (!(cljs.pprint.tokens_fit_QMARK_(this$,subsection)));
  if(or__4131__auto____$1){
  return or__4131__auto____$1;
  } else {
  return cljs.pprint.miser_nl_QMARK_(this$,lb,section);
  }
  }
  }));
  cljs.pprint.emit_nl_QMARK_.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.cst$kw$mandatory,(function (_,___$1,___$2,___$3){
  return true;
  }));
  cljs.pprint.get_section = (function cljs$pprint$get_section(buffer){
  var nl = cljs.core.first(buffer);
  var lb = cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(nl);
  var section = cljs.core.seq(cljs.core.take_while.cljs$core$IFn$_invoke$arity$2(((function (nl,lb){
  return (function (p1__13726_SHARP_){
  return (!(((cljs.pprint.nl_t_QMARK_(p1__13726_SHARP_)) && (cljs.pprint.ancestor_QMARK_(cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(p1__13726_SHARP_),lb)))));
  });})(nl,lb))
  ,cljs.core.next(buffer)));
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [section,cljs.core.seq(cljs.core.drop.cljs$core$IFn$_invoke$arity$2((cljs.core.count(section) + (1)),buffer))], null);
  });
  cljs.pprint.get_sub_section = (function cljs$pprint$get_sub_section(buffer){
  var nl = cljs.core.first(buffer);
  var lb = cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(nl);
  var section = cljs.core.seq(cljs.core.take_while.cljs$core$IFn$_invoke$arity$2(((function (nl,lb){
  return (function (p1__13727_SHARP_){
  var nl_lb = cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(p1__13727_SHARP_);
  return (!(((cljs.pprint.nl_t_QMARK_(p1__13727_SHARP_)) && (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(nl_lb,lb)) || (cljs.pprint.ancestor_QMARK_(nl_lb,lb)))))));
  });})(nl,lb))
  ,cljs.core.next(buffer)));
  return section;
  });
  cljs.pprint.update_nl_state = (function cljs$pprint$update_nl_state(lb){
  cljs.core.reset_BANG_(cljs.core.cst$kw$intra_DASH_block_DASH_nl.cljs$core$IFn$_invoke$arity$1(lb),true);
  
  cljs.core.reset_BANG_(cljs.core.cst$kw$done_DASH_nl.cljs$core$IFn$_invoke$arity$1(lb),true);
  
  var lb__$1 = cljs.core.cst$kw$parent.cljs$core$IFn$_invoke$arity$1(lb);
  while(true){
  if(cljs.core.truth_(lb__$1)){
  cljs.core.reset_BANG_(cljs.core.cst$kw$done_DASH_nl.cljs$core$IFn$_invoke$arity$1(lb__$1),true);
  
  cljs.core.reset_BANG_(cljs.core.cst$kw$intra_DASH_block_DASH_nl.cljs$core$IFn$_invoke$arity$1(lb__$1),true);
  
  var G__13728 = cljs.core.cst$kw$parent.cljs$core$IFn$_invoke$arity$1(lb__$1);
  lb__$1 = G__13728;
  continue;
  } else {
  return null;
  }
  break;
  }
  });
  cljs.pprint.emit_nl = (function cljs$pprint$emit_nl(this$,nl){
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),cljs.pprint.pp_newline());
  
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$trailing_DASH_white_DASH_space,null);
  
  var lb = cljs.core.cst$kw$logical_DASH_block.cljs$core$IFn$_invoke$arity$1(nl);
  var prefix = cljs.core.cst$kw$per_DASH_line_DASH_prefix.cljs$core$IFn$_invoke$arity$1(lb);
  if(cljs.core.truth_(prefix)){
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),prefix);
  } else {
  }
  
  var istr_13729 = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((cljs.core.deref(cljs.core.cst$kw$indent.cljs$core$IFn$_invoke$arity$1(lb)) - cljs.core.count(prefix))," "));
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),istr_13729);
  
  return cljs.pprint.update_nl_state(lb);
  });
  cljs.pprint.split_at_newline = (function cljs$pprint$split_at_newline(tokens){
  var pre = cljs.core.seq(cljs.core.take_while.cljs$core$IFn$_invoke$arity$2((function (p1__13730_SHARP_){
  return (!(cljs.pprint.nl_t_QMARK_(p1__13730_SHARP_)));
  }),tokens));
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [pre,cljs.core.seq(cljs.core.drop.cljs$core$IFn$_invoke$arity$2(cljs.core.count(pre),tokens))], null);
  });
  cljs.pprint.write_token_string = (function cljs$pprint$write_token_string(this$,tokens){
  var vec__13731 = cljs.pprint.split_at_newline(tokens);
  var a = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13731,(0),null);
  var b = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13731,(1),null);
  if(cljs.core.truth_(a)){
  cljs.pprint.write_tokens(this$,a,false);
  } else {
  }
  
  if(cljs.core.truth_(b)){
  var vec__13734 = cljs.pprint.get_section(b);
  var section = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13734,(0),null);
  var remainder = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13734,(1),null);
  var newl = cljs.core.first(b);
  var do_nl = (function (){var G__13737 = newl;
  var G__13738 = this$;
  var G__13739 = section;
  var G__13740 = cljs.pprint.get_sub_section(b);
  return (cljs.pprint.emit_nl_QMARK_.cljs$core$IFn$_invoke$arity$4 ? cljs.pprint.emit_nl_QMARK_.cljs$core$IFn$_invoke$arity$4(G__13737,G__13738,G__13739,G__13740) : cljs.pprint.emit_nl_QMARK_.call(null,G__13737,G__13738,G__13739,G__13740));
  })();
  var result = (cljs.core.truth_(do_nl)?(function (){
  cljs.pprint.emit_nl(this$,newl);
  
  return cljs.core.next(b);
  })()
  :b);
  var long_section = (!(cljs.pprint.tokens_fit_QMARK_(this$,result)));
  var result__$1 = ((long_section)?(function (){var rem2 = (cljs.pprint.write_token_string.cljs$core$IFn$_invoke$arity$2 ? cljs.pprint.write_token_string.cljs$core$IFn$_invoke$arity$2(this$,section) : cljs.pprint.write_token_string.call(null,this$,section));
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(rem2,section)){
  cljs.pprint.write_tokens(this$,section,false);
  
  return remainder;
  } else {
  return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(rem2,remainder));
  }
  })():result);
  return result__$1;
  } else {
  return null;
  }
  });
  cljs.pprint.write_line = (function cljs$pprint$write_line(this$){
  var buffer = cljs.core.cst$kw$buffer.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  while(true){
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$buffer,cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,buffer));
  
  if((!(cljs.pprint.tokens_fit_QMARK_(this$,buffer)))){
  var new_buffer = cljs.pprint.write_token_string(this$,buffer);
  if((!((buffer === new_buffer)))){
  var G__13741 = new_buffer;
  buffer = G__13741;
  continue;
  } else {
  return null;
  }
  } else {
  return null;
  }
  break;
  }
  });
  cljs.pprint.add_to_buffer = (function cljs$pprint$add_to_buffer(this$,token){
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$buffer,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$buffer.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),token));
  
  if((!(cljs.pprint.tokens_fit_QMARK_(this$,cljs.core.cst$kw$buffer.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))))))){
  return cljs.pprint.write_line(this$);
  } else {
  return null;
  }
  });
  cljs.pprint.write_buffered_output = (function cljs$pprint$write_buffered_output(this$){
  cljs.pprint.write_line(this$);
  
  var temp__5718__auto__ = cljs.core.cst$kw$buffer.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  if(cljs.core.truth_(temp__5718__auto__)){
  var buf = temp__5718__auto__;
  cljs.pprint.write_tokens(this$,buf,true);
  
  return cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$buffer,cljs.core.PersistentVector.EMPTY);
  } else {
  return null;
  }
  });
  cljs.pprint.write_white_space = (function cljs$pprint$write_white_space(this$){
  var temp__5720__auto__ = cljs.core.cst$kw$trailing_DASH_white_DASH_space.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  if(cljs.core.truth_(temp__5720__auto__)){
  var tws = temp__5720__auto__;
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),tws);
  
  return cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$trailing_DASH_white_DASH_space,null);
  } else {
  return null;
  }
  });
  cljs.pprint.write_initial_lines = (function cljs$pprint$write_initial_lines(this$,s){
  var lines = clojure.string.split.cljs$core$IFn$_invoke$arity$3(s,"\n",(-1));
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(lines),(1))){
  return s;
  } else {
  var prefix = cljs.core.cst$kw$per_DASH_line_DASH_prefix.cljs$core$IFn$_invoke$arity$1(cljs.core.first(cljs.core.cst$kw$logical_DASH_blocks.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)))));
  var l = cljs.core.first(lines);
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$buffering,cljs.core.cst$kw$mode.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))))){
  var oldpos_13746 = cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  var newpos_13747 = (oldpos_13746 + cljs.core.count(l));
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$pos,newpos_13747);
  
  cljs.pprint.add_to_buffer(this$,cljs.pprint.make_buffer_blob(l,null,oldpos_13746,newpos_13747));
  
  cljs.pprint.write_buffered_output(this$);
  } else {
  cljs.pprint.write_white_space(this$);
  
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),l);
  }
  
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),"\n");
  
  var seq__13742_13748 = cljs.core.seq(cljs.core.next(cljs.core.butlast(lines)));
  var chunk__13743_13749 = null;
  var count__13744_13750 = (0);
  var i__13745_13751 = (0);
  while(true){
  if((i__13745_13751 < count__13744_13750)){
  var l_13752__$1 = chunk__13743_13749.cljs$core$IIndexed$_nth$arity$2(null,i__13745_13751);
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),l_13752__$1);
  
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),cljs.pprint.pp_newline());
  
  if(cljs.core.truth_(prefix)){
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),prefix);
  } else {
  }
  
  
  var G__13753 = seq__13742_13748;
  var G__13754 = chunk__13743_13749;
  var G__13755 = count__13744_13750;
  var G__13756 = (i__13745_13751 + (1));
  seq__13742_13748 = G__13753;
  chunk__13743_13749 = G__13754;
  count__13744_13750 = G__13755;
  i__13745_13751 = G__13756;
  continue;
  } else {
  var temp__5720__auto___13757 = cljs.core.seq(seq__13742_13748);
  if(temp__5720__auto___13757){
  var seq__13742_13758__$1 = temp__5720__auto___13757;
  if(cljs.core.chunked_seq_QMARK_(seq__13742_13758__$1)){
  var c__4550__auto___13759 = cljs.core.chunk_first(seq__13742_13758__$1);
  var G__13760 = cljs.core.chunk_rest(seq__13742_13758__$1);
  var G__13761 = c__4550__auto___13759;
  var G__13762 = cljs.core.count(c__4550__auto___13759);
  var G__13763 = (0);
  seq__13742_13748 = G__13760;
  chunk__13743_13749 = G__13761;
  count__13744_13750 = G__13762;
  i__13745_13751 = G__13763;
  continue;
  } else {
  var l_13764__$1 = cljs.core.first(seq__13742_13758__$1);
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),l_13764__$1);
  
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),cljs.pprint.pp_newline());
  
  if(cljs.core.truth_(prefix)){
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),prefix);
  } else {
  }
  
  
  var G__13765 = cljs.core.next(seq__13742_13758__$1);
  var G__13766 = null;
  var G__13767 = (0);
  var G__13768 = (0);
  seq__13742_13748 = G__13765;
  chunk__13743_13749 = G__13766;
  count__13744_13750 = G__13767;
  i__13745_13751 = G__13768;
  continue;
  }
  } else {
  }
  }
  break;
  }
  
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$buffering,cljs.core.cst$kw$writing);
  
  return cljs.core.last(lines);
  }
  });
  cljs.pprint.p_write_char = (function cljs$pprint$p_write_char(this$,c){
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$mode.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),cljs.core.cst$kw$writing)){
  cljs.pprint.write_white_space(this$);
  
  return cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),c);
  } else {
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(c,"\n")){
  return cljs.pprint.write_initial_lines(this$,"\n");
  } else {
  var oldpos = cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  var newpos = (oldpos + (1));
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$pos,newpos);
  
  return cljs.pprint.add_to_buffer(this$,cljs.pprint.make_buffer_blob(cljs.core.char$(c),null,oldpos,newpos));
  }
  }
  });
  cljs.pprint.pretty_writer = (function cljs$pprint$pretty_writer(writer,max_columns,miser_width){
  var lb = (new cljs.pprint.logical_block(null,null,cljs.core.atom.cljs$core$IFn$_invoke$arity$1((0)),cljs.core.atom.cljs$core$IFn$_invoke$arity$1((0)),cljs.core.atom.cljs$core$IFn$_invoke$arity$1(false),cljs.core.atom.cljs$core$IFn$_invoke$arity$1(false),null,null,null,null,null,null,null));
  var fields = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentHashMap.fromArrays([cljs.core.cst$kw$logical_DASH_blocks,cljs.core.cst$kw$miser_DASH_width,cljs.core.cst$kw$buffer_DASH_block,cljs.core.cst$kw$pretty_DASH_writer,cljs.core.cst$kw$sections,cljs.core.cst$kw$mode,cljs.core.cst$kw$pos,cljs.core.cst$kw$trailing_DASH_white_DASH_space,cljs.core.cst$kw$base,cljs.core.cst$kw$buffer_DASH_level,cljs.core.cst$kw$buffer],[lb,miser_width,lb,true,null,cljs.core.cst$kw$writing,(0),null,cljs.pprint.column_writer.cljs$core$IFn$_invoke$arity$2(writer,max_columns),(1),cljs.core.PersistentVector.EMPTY]));
  if((typeof cljs !== 'undefined') && (typeof cljs.pprint !== 'undefined') && (typeof cljs.pprint.t_cljs$pprint13769 !== 'undefined')){
  } else {
  
  /**
  * @constructor
   * @implements {cljs.core.IWriter}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.IDeref}
   * @implements {cljs.pprint.IPrettyFlush}
   * @implements {cljs.core.IWithMeta}
  */
  cljs.pprint.t_cljs$pprint13769 = (function (writer,max_columns,miser_width,lb,fields,meta13770){
  this.writer = writer;
  this.max_columns = max_columns;
  this.miser_width = miser_width;
  this.lb = lb;
  this.fields = fields;
  this.meta13770 = meta13770;
  this.cljs$lang$protocol_mask$partition0$ = 1074167808;
  this.cljs$lang$protocol_mask$partition1$ = 0;
  });
  cljs.pprint.t_cljs$pprint13769.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = ((function (lb,fields){
  return (function (_13771,meta13770__$1){
  var self__ = this;
  var _13771__$1 = this;
  return (new cljs.pprint.t_cljs$pprint13769(self__.writer,self__.max_columns,self__.miser_width,self__.lb,self__.fields,meta13770__$1));
  });})(lb,fields))
  ;
  
  cljs.pprint.t_cljs$pprint13769.prototype.cljs$core$IMeta$_meta$arity$1 = ((function (lb,fields){
  return (function (_13771){
  var self__ = this;
  var _13771__$1 = this;
  return self__.meta13770;
  });})(lb,fields))
  ;
  
  cljs.pprint.t_cljs$pprint13769.prototype.cljs$core$IDeref$_deref$arity$1 = ((function (lb,fields){
  return (function (_){
  var self__ = this;
  var ___$1 = this;
  return self__.fields;
  });})(lb,fields))
  ;
  
  cljs.pprint.t_cljs$pprint13769.prototype.cljs$core$IWriter$_write$arity$2 = ((function (lb,fields){
  return (function (this$,x){
  var self__ = this;
  var this$__$1 = this;
  var pred__13772 = cljs.core._EQ_;
  var expr__13773 = cljs.core.type(x);
  if(cljs.core.truth_((pred__13772.cljs$core$IFn$_invoke$arity$2 ? pred__13772.cljs$core$IFn$_invoke$arity$2(String,expr__13773) : pred__13772.call(null,String,expr__13773)))){
  var s0 = cljs.pprint.write_initial_lines(this$__$1,x);
  var s = clojure.string.replace_first(s0,/\s+$/,"");
  var white_space = cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s0,cljs.core.count(s));
  var mode = cljs.core.cst$kw$mode.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$__$1)));
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(mode,cljs.core.cst$kw$writing)){
  cljs.pprint.write_white_space(this$__$1);
  
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$__$1))),s);
  
  return cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$__$1),cljs.core.assoc,cljs.core.cst$kw$trailing_DASH_white_DASH_space,white_space);
  } else {
  var oldpos = cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$__$1)));
  var newpos = (oldpos + cljs.core.count(s0));
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$__$1),cljs.core.assoc,cljs.core.cst$kw$pos,newpos);
  
  return cljs.pprint.add_to_buffer(this$__$1,cljs.pprint.make_buffer_blob(s,white_space,oldpos,newpos));
  }
  } else {
  if(cljs.core.truth_((pred__13772.cljs$core$IFn$_invoke$arity$2 ? pred__13772.cljs$core$IFn$_invoke$arity$2(Number,expr__13773) : pred__13772.call(null,Number,expr__13773)))){
  return cljs.pprint.p_write_char(this$__$1,x);
  } else {
  throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__13773)].join('')));
  }
  }
  });})(lb,fields))
  ;
  
  cljs.pprint.t_cljs$pprint13769.prototype.cljs$core$IWriter$_flush$arity$1 = ((function (lb,fields){
  return (function (this$){
  var self__ = this;
  var this$__$1 = this;
  this$__$1.cljs$pprint$IPrettyFlush$_ppflush$arity$1(null);
  
  return cljs.core._flush(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$__$1))));
  });})(lb,fields))
  ;
  
  cljs.pprint.t_cljs$pprint13769.prototype.cljs$pprint$IPrettyFlush$ = cljs.core.PROTOCOL_SENTINEL;
  
  cljs.pprint.t_cljs$pprint13769.prototype.cljs$pprint$IPrettyFlush$_ppflush$arity$1 = ((function (lb,fields){
  return (function (this$){
  var self__ = this;
  var this$__$1 = this;
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$mode.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$__$1))),cljs.core.cst$kw$buffering)){
  cljs.pprint.write_tokens(this$__$1,cljs.core.cst$kw$buffer.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$__$1))),true);
  
  return cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$__$1),cljs.core.assoc,cljs.core.cst$kw$buffer,cljs.core.PersistentVector.EMPTY);
  } else {
  return cljs.pprint.write_white_space(this$__$1);
  }
  });})(lb,fields))
  ;
  
  cljs.pprint.t_cljs$pprint13769.getBasis = ((function (lb,fields){
  return (function (){
  return new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$writer,cljs.core.cst$sym$max_DASH_columns,cljs.core.cst$sym$miser_DASH_width,cljs.core.cst$sym$lb,cljs.core.cst$sym$fields,cljs.core.cst$sym$meta13770], null);
  });})(lb,fields))
  ;
  
  cljs.pprint.t_cljs$pprint13769.cljs$lang$type = true;
  
  cljs.pprint.t_cljs$pprint13769.cljs$lang$ctorStr = "cljs.pprint/t_cljs$pprint13769";
  
  cljs.pprint.t_cljs$pprint13769.cljs$lang$ctorPrWriter = ((function (lb,fields){
  return (function (this__4374__auto__,writer__4375__auto__,opt__4376__auto__){
  return cljs.core._write(writer__4375__auto__,"cljs.pprint/t_cljs$pprint13769");
  });})(lb,fields))
  ;
  
  /**
   * Positional factory function for cljs.pprint/t_cljs$pprint13769.
   */
  cljs.pprint.__GT_t_cljs$pprint13769 = ((function (lb,fields){
  return (function cljs$pprint$pretty_writer_$___GT_t_cljs$pprint13769(writer__$1,max_columns__$1,miser_width__$1,lb__$1,fields__$1,meta13770){
  return (new cljs.pprint.t_cljs$pprint13769(writer__$1,max_columns__$1,miser_width__$1,lb__$1,fields__$1,meta13770));
  });})(lb,fields))
  ;
  
  }
  
  return (new cljs.pprint.t_cljs$pprint13769(writer,max_columns,miser_width,lb,fields,cljs.core.PersistentArrayMap.EMPTY));
  });
  cljs.pprint.start_block = (function cljs$pprint$start_block(this$,prefix,per_line_prefix,suffix){
  var lb = (new cljs.pprint.logical_block(cljs.core.cst$kw$logical_DASH_blocks.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),null,cljs.core.atom.cljs$core$IFn$_invoke$arity$1((0)),cljs.core.atom.cljs$core$IFn$_invoke$arity$1((0)),cljs.core.atom.cljs$core$IFn$_invoke$arity$1(false),cljs.core.atom.cljs$core$IFn$_invoke$arity$1(false),prefix,per_line_prefix,suffix,null,null,null,null));
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$logical_DASH_blocks,lb);
  
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$mode.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),cljs.core.cst$kw$writing)){
  cljs.pprint.write_white_space(this$);
  
  var temp__5720__auto___13776 = cljs.core.cst$kw$logical_DASH_block_DASH_callback.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  if(cljs.core.truth_(temp__5720__auto___13776)){
  var cb_13777 = temp__5720__auto___13776;
  var G__13775_13778 = cljs.core.cst$kw$start;
  (cb_13777.cljs$core$IFn$_invoke$arity$1 ? cb_13777.cljs$core$IFn$_invoke$arity$1(G__13775_13778) : cb_13777.call(null,G__13775_13778));
  } else {
  }
  
  if(cljs.core.truth_(prefix)){
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),prefix);
  } else {
  }
  
  var col = cljs.pprint.get_column(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))));
  cljs.core.reset_BANG_(cljs.core.cst$kw$start_DASH_col.cljs$core$IFn$_invoke$arity$1(lb),col);
  
  return cljs.core.reset_BANG_(cljs.core.cst$kw$indent.cljs$core$IFn$_invoke$arity$1(lb),col);
  } else {
  var oldpos = cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  var newpos = (oldpos + (cljs.core.truth_(prefix)?cljs.core.count(prefix):(0)));
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$pos,newpos);
  
  return cljs.pprint.add_to_buffer(this$,cljs.pprint.make_start_block_t(lb,oldpos,newpos));
  }
  });
  cljs.pprint.end_block = (function cljs$pprint$end_block(this$){
  var lb = cljs.core.cst$kw$logical_DASH_blocks.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  var suffix = cljs.core.cst$kw$suffix.cljs$core$IFn$_invoke$arity$1(lb);
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$mode.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),cljs.core.cst$kw$writing)){
  cljs.pprint.write_white_space(this$);
  
  if(cljs.core.truth_(suffix)){
  cljs.core._write(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),suffix);
  } else {
  }
  
  var temp__5720__auto___13780 = cljs.core.cst$kw$logical_DASH_block_DASH_callback.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  if(cljs.core.truth_(temp__5720__auto___13780)){
  var cb_13781 = temp__5720__auto___13780;
  var G__13779_13782 = cljs.core.cst$kw$end;
  (cb_13781.cljs$core$IFn$_invoke$arity$1 ? cb_13781.cljs$core$IFn$_invoke$arity$1(G__13779_13782) : cb_13781.call(null,G__13779_13782));
  } else {
  }
  } else {
  var oldpos_13783 = cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  var newpos_13784 = (oldpos_13783 + (cljs.core.truth_(suffix)?cljs.core.count(suffix):(0)));
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$pos,newpos_13784);
  
  cljs.pprint.add_to_buffer(this$,cljs.pprint.make_end_block_t(lb,oldpos_13783,newpos_13784));
  }
  
  return cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$logical_DASH_blocks,cljs.core.cst$kw$parent.cljs$core$IFn$_invoke$arity$1(lb));
  });
  cljs.pprint.nl = (function cljs$pprint$nl(this$,type){
  cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,cljs.core.cst$kw$mode,cljs.core.cst$kw$buffering);
  
  var pos = cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  return cljs.pprint.add_to_buffer(this$,cljs.pprint.make_nl_t(type,cljs.core.cst$kw$logical_DASH_blocks.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),pos,pos));
  });
  cljs.pprint.indent = (function cljs$pprint$indent(this$,relative_to,offset){
  var lb = cljs.core.cst$kw$logical_DASH_blocks.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$mode.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),cljs.core.cst$kw$writing)){
  cljs.pprint.write_white_space(this$);
  
  return cljs.core.reset_BANG_(cljs.core.cst$kw$indent.cljs$core$IFn$_invoke$arity$1(lb),(offset + (function (){var pred__13785 = cljs.core._EQ_;
  var expr__13786 = relative_to;
  if(cljs.core.truth_((function (){var G__13788 = cljs.core.cst$kw$block;
  var G__13789 = expr__13786;
  return (pred__13785.cljs$core$IFn$_invoke$arity$2 ? pred__13785.cljs$core$IFn$_invoke$arity$2(G__13788,G__13789) : pred__13785.call(null,G__13788,G__13789));
  })())){
  return cljs.core.deref(cljs.core.cst$kw$start_DASH_col.cljs$core$IFn$_invoke$arity$1(lb));
  } else {
  if(cljs.core.truth_((function (){var G__13790 = cljs.core.cst$kw$current;
  var G__13791 = expr__13786;
  return (pred__13785.cljs$core$IFn$_invoke$arity$2 ? pred__13785.cljs$core$IFn$_invoke$arity$2(G__13790,G__13791) : pred__13785.call(null,G__13790,G__13791));
  })())){
  return cljs.pprint.get_column(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))));
  } else {
  throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__13786)].join('')));
  }
  }
  })()));
  } else {
  var pos = cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  return cljs.pprint.add_to_buffer(this$,cljs.pprint.make_indent_t(lb,relative_to,offset,pos,pos));
  }
  });
  cljs.pprint.get_miser_width = (function cljs$pprint$get_miser_width(this$){
  return cljs.core.cst$kw$miser_DASH_width.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));
  });
  /**
   * Bind to true if you want write to use pretty printing
   */
  cljs.pprint._STAR_print_pretty_STAR_ = true;
  if((typeof cljs !== 'undefined') && (typeof cljs.pprint !== 'undefined') && (typeof cljs.pprint._STAR_print_pprint_dispatch_STAR_ !== 'undefined')){
  } else {
  /**
   * The pretty print dispatch function. Use with-pprint-dispatch or
   * set-pprint-dispatch to modify.
   */
  cljs.pprint._STAR_print_pprint_dispatch_STAR_ = null;
  }
  /**
   * Pretty printing will try to avoid anything going beyond this column.
   * Set it to nil to have pprint let the line be arbitrarily long. This will ignore all
   * non-mandatory newlines.
   */
  cljs.pprint._STAR_print_right_margin_STAR_ = (72);
  /**
   * The column at which to enter miser style. Depending on the dispatch table,
   * miser style add newlines in more places to try to keep lines short allowing for further
   * levels of nesting.
   */
  cljs.pprint._STAR_print_miser_width_STAR_ = (40);
  /**
   * Maximum number of lines to print in a pretty print instance (N.B. This is not yet used)
   */
  cljs.pprint._STAR_print_lines_STAR_ = null;
  /**
   * Mark circular structures (N.B. This is not yet used)
   */
  cljs.pprint._STAR_print_circle_STAR_ = null;
  /**
   * Mark repeated structures rather than repeat them (N.B. This is not yet used)
   */
  cljs.pprint._STAR_print_shared_STAR_ = null;
  /**
   * Don't print namespaces with symbols. This is particularly useful when
   * pretty printing the results of macro expansions
   */
  cljs.pprint._STAR_print_suppress_namespaces_STAR_ = null;
  /**
   * Print a radix specifier in front of integers and rationals. If *print-base* is 2, 8,
   * or 16, then the radix specifier used is #b, #o, or #x, respectively. Otherwise the
   * radix specifier is in the form #XXr where XX is the decimal value of *print-base* 
   */
  cljs.pprint._STAR_print_radix_STAR_ = null;
  /**
   * The base to use for printing integers and rationals.
   */
  cljs.pprint._STAR_print_base_STAR_ = (10);
  cljs.pprint._STAR_current_level_STAR_ = (0);
  cljs.pprint._STAR_current_length_STAR_ = null;
  cljs.pprint.table_ize = (function cljs$pprint$table_ize(t,m){
  return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((function (p1__13792_SHARP_){
  var temp__5720__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(t,cljs.core.key(p1__13792_SHARP_));
  if(cljs.core.truth_(temp__5720__auto__)){
  var v = temp__5720__auto__;
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [v,cljs.core.val(p1__13792_SHARP_)], null);
  } else {
  return null;
  }
  }),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([m], 0)));
  });
  /**
   * Return true iff x is a PrettyWriter
   */
  cljs.pprint.pretty_writer_QMARK_ = (function cljs$pprint$pretty_writer_QMARK_(x){
  var and__4120__auto__ = (((!((x == null))))?(((((x.cljs$lang$protocol_mask$partition0$ & (32768))) || ((cljs.core.PROTOCOL_SENTINEL === x.cljs$core$IDeref$))))?true:(((!x.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,x):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,x));
  if(and__4120__auto__){
  return cljs.core.cst$kw$pretty_DASH_writer.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(x)));
  } else {
  return and__4120__auto__;
  }
  });
  /**
   * Wrap base-writer in a PrettyWriter with the specified right-margin and miser-width
   */
  cljs.pprint.make_pretty_writer = (function cljs$pprint$make_pretty_writer(base_writer,right_margin,miser_width){
  return cljs.pprint.pretty_writer(base_writer,right_margin,miser_width);
  });
  /**
   * Write an object to *out* subject to the current bindings of the printer control
   * variables. Use the kw-args argument to override individual variables for this call (and
   * any recursive calls).
   * 
   * *out* must be a PrettyWriter if pretty printing is enabled. This is the responsibility
   * of the caller.
   * 
   * This method is primarily intended for use by pretty print dispatch functions that
   * already know that the pretty printer will have set up their environment appropriately.
   * Normal library clients should use the standard "write" interface. 
   */
  cljs.pprint.write_out = (function cljs$pprint$write_out(object){
  var length_reached = (function (){var and__4120__auto__ = cljs.pprint._STAR_current_length_STAR_;
  if(cljs.core.truth_(and__4120__auto__)){
  var and__4120__auto____$1 = cljs.core._STAR_print_length_STAR_;
  if(cljs.core.truth_(and__4120__auto____$1)){
  return (cljs.pprint._STAR_current_length_STAR_ >= cljs.core._STAR_print_length_STAR_);
  } else {
  return and__4120__auto____$1;
  }
  } else {
  return and__4120__auto__;
  }
  })();
  if((!(cljs.pprint._STAR_print_pretty_STAR_))){
  (cljs.pprint.pr.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.pr.cljs$core$IFn$_invoke$arity$1(object) : cljs.pprint.pr.call(null,object));
  } else {
  if(cljs.core.truth_(length_reached)){
  cljs.core._write(cljs.core._STAR_out_STAR_,"...");
  } else {
  if(cljs.core.truth_(cljs.pprint._STAR_current_length_STAR_)){
  cljs.pprint._STAR_current_length_STAR_ = (cljs.pprint._STAR_current_length_STAR_ + (1));
  } else {
  }
  
  (cljs.pprint._STAR_print_pprint_dispatch_STAR_.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint._STAR_print_pprint_dispatch_STAR_.cljs$core$IFn$_invoke$arity$1(object) : cljs.pprint._STAR_print_pprint_dispatch_STAR_.call(null,object));
  }
  }
  
  return length_reached;
  });
  /**
   * Write an object subject to the current bindings of the printer control variables.
   * Use the kw-args argument to override individual variables for this call (and any
   * recursive calls). Returns the string result if :stream is nil or nil otherwise.
   * 
   * The following keyword arguments can be passed with values:
   *   Keyword              Meaning                              Default value
   *   :stream              Writer for output or nil             true (indicates *out*)
   *   :base                Base to use for writing rationals    Current value of *print-base*
   *   :circle*             If true, mark circular structures    Current value of *print-circle*
   *   :length              Maximum elements to show in sublists Current value of *print-length*
   *   :level               Maximum depth                        Current value of *print-level*
   *   :lines*              Maximum lines of output              Current value of *print-lines*
   *   :miser-width         Width to enter miser mode            Current value of *print-miser-width*
   *   :dispatch            The pretty print dispatch function   Current value of *print-pprint-dispatch*
   *   :pretty              If true, do pretty printing          Current value of *print-pretty*
   *   :radix               If true, prepend a radix specifier   Current value of *print-radix*
   *   :readably*           If true, print readably              Current value of *print-readably*
   *   :right-margin        The column for the right margin      Current value of *print-right-margin*
   *   :suppress-namespaces If true, no namespaces in symbols    Current value of *print-suppress-namespaces*
   * 
   *   * = not yet supported
   */
  cljs.pprint.write = (function cljs$pprint$write(var_args){
  var args__4736__auto__ = [];
  var len__4730__auto___13825 = arguments.length;
  var i__4731__auto___13826 = (0);
  while(true){
  if((i__4731__auto___13826 < len__4730__auto___13825)){
  args__4736__auto__.push((arguments[i__4731__auto___13826]));
  
  var G__13827 = (i__4731__auto___13826 + (1));
  i__4731__auto___13826 = G__13827;
  continue;
  } else {
  }
  break;
  }
  
  var argseq__4737__auto__ = ((((1) < args__4736__auto__.length))?(new cljs.core.IndexedSeq(args__4736__auto__.slice((1)),(0),null)):null);
  return cljs.pprint.write.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4737__auto__);
  });
  
  cljs.pprint.write.cljs$core$IFn$_invoke$arity$variadic = (function (object,kw_args){
  var options = cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$stream,true], null),cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,kw_args)], 0));
  var _STAR_print_base_STAR__orig_val__13797 = cljs.pprint._STAR_print_base_STAR_;
  var _STAR_print_circle_STAR__orig_val__13798 = cljs.pprint._STAR_print_circle_STAR_;
  var _STAR_print_length_STAR__orig_val__13799 = cljs.core._STAR_print_length_STAR_;
  var _STAR_print_level_STAR__orig_val__13800 = cljs.core._STAR_print_level_STAR_;
  var _STAR_print_lines_STAR__orig_val__13801 = cljs.pprint._STAR_print_lines_STAR_;
  var _STAR_print_miser_width_STAR__orig_val__13802 = cljs.pprint._STAR_print_miser_width_STAR_;
  var _STAR_print_pprint_dispatch_STAR__orig_val__13803 = cljs.pprint._STAR_print_pprint_dispatch_STAR_;
  var _STAR_print_pretty_STAR__orig_val__13804 = cljs.pprint._STAR_print_pretty_STAR_;
  var _STAR_print_radix_STAR__orig_val__13805 = cljs.pprint._STAR_print_radix_STAR_;
  var _STAR_print_readably_STAR__orig_val__13806 = cljs.core._STAR_print_readably_STAR_;
  var _STAR_print_right_margin_STAR__orig_val__13807 = cljs.pprint._STAR_print_right_margin_STAR_;
  var _STAR_print_suppress_namespaces_STAR__orig_val__13808 = cljs.pprint._STAR_print_suppress_namespaces_STAR_;
  var _STAR_print_base_STAR__temp_val__13809 = cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_base_STAR_);
  var _STAR_print_circle_STAR__temp_val__13810 = cljs.core.cst$kw$circle.cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_circle_STAR_);
  var _STAR_print_length_STAR__temp_val__13811 = cljs.core.cst$kw$length.cljs$core$IFn$_invoke$arity$2(options,cljs.core._STAR_print_length_STAR_);
  var _STAR_print_level_STAR__temp_val__13812 = cljs.core.cst$kw$level.cljs$core$IFn$_invoke$arity$2(options,cljs.core._STAR_print_level_STAR_);
  var _STAR_print_lines_STAR__temp_val__13813 = cljs.core.cst$kw$lines.cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_lines_STAR_);
  var _STAR_print_miser_width_STAR__temp_val__13814 = cljs.core.cst$kw$miser_DASH_width.cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_miser_width_STAR_);
  var _STAR_print_pprint_dispatch_STAR__temp_val__13815 = cljs.core.cst$kw$dispatch.cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_pprint_dispatch_STAR_);
  var _STAR_print_pretty_STAR__temp_val__13816 = cljs.core.cst$kw$pretty.cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_pretty_STAR_);
  var _STAR_print_radix_STAR__temp_val__13817 = cljs.core.cst$kw$radix.cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_radix_STAR_);
  var _STAR_print_readably_STAR__temp_val__13818 = cljs.core.cst$kw$readably.cljs$core$IFn$_invoke$arity$2(options,cljs.core._STAR_print_readably_STAR_);
  var _STAR_print_right_margin_STAR__temp_val__13819 = cljs.core.cst$kw$right_DASH_margin.cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_right_margin_STAR_);
  var _STAR_print_suppress_namespaces_STAR__temp_val__13820 = cljs.core.cst$kw$suppress_DASH_namespaces.cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_suppress_namespaces_STAR_);
  cljs.pprint._STAR_print_base_STAR_ = _STAR_print_base_STAR__temp_val__13809;
  
  cljs.pprint._STAR_print_circle_STAR_ = _STAR_print_circle_STAR__temp_val__13810;
  
  cljs.core._STAR_print_length_STAR_ = _STAR_print_length_STAR__temp_val__13811;
  
  cljs.core._STAR_print_level_STAR_ = _STAR_print_level_STAR__temp_val__13812;
  
  cljs.pprint._STAR_print_lines_STAR_ = _STAR_print_lines_STAR__temp_val__13813;
  
  cljs.pprint._STAR_print_miser_width_STAR_ = _STAR_print_miser_width_STAR__temp_val__13814;
  
  cljs.pprint._STAR_print_pprint_dispatch_STAR_ = _STAR_print_pprint_dispatch_STAR__temp_val__13815;
  
  cljs.pprint._STAR_print_pretty_STAR_ = _STAR_print_pretty_STAR__temp_val__13816;
  
  cljs.pprint._STAR_print_radix_STAR_ = _STAR_print_radix_STAR__temp_val__13817;
  
  cljs.core._STAR_print_readably_STAR_ = _STAR_print_readably_STAR__temp_val__13818;
  
  cljs.pprint._STAR_print_right_margin_STAR_ = _STAR_print_right_margin_STAR__temp_val__13819;
  
  cljs.pprint._STAR_print_suppress_namespaces_STAR_ = _STAR_print_suppress_namespaces_STAR__temp_val__13820;
  
  try{try{var sb = (new goog.string.StringBuffer());
  var optval = ((cljs.core.contains_QMARK_(options,cljs.core.cst$kw$stream))?cljs.core.cst$kw$stream.cljs$core$IFn$_invoke$arity$1(options):true);
  var base_writer = ((((optval === true) || ((optval == null))))?(new cljs.core.StringBufferWriter(sb)):optval);
  if(cljs.pprint._STAR_print_pretty_STAR_){
  var base_writer__13311__auto___13828 = base_writer;
  var new_writer__13312__auto___13829 = cljs.core.not(cljs.pprint.pretty_writer_QMARK_(base_writer__13311__auto___13828));
  var _STAR_out_STAR__orig_val__13821_13830 = cljs.core._STAR_out_STAR_;
  var _STAR_out_STAR__temp_val__13822_13831 = ((new_writer__13312__auto___13829)?cljs.pprint.make_pretty_writer(base_writer__13311__auto___13828,cljs.pprint._STAR_print_right_margin_STAR_,cljs.pprint._STAR_print_miser_width_STAR_):base_writer__13311__auto___13828);
  cljs.core._STAR_out_STAR_ = _STAR_out_STAR__temp_val__13822_13831;
  
  try{cljs.pprint.write_out(object);
  
  cljs.pprint._ppflush(cljs.core._STAR_out_STAR_);
  }finally {cljs.core._STAR_out_STAR_ = _STAR_out_STAR__orig_val__13821_13830;
  }} else {
  var _STAR_out_STAR__orig_val__13823_13832 = cljs.core._STAR_out_STAR_;
  var _STAR_out_STAR__temp_val__13824_13833 = base_writer;
  cljs.core._STAR_out_STAR_ = _STAR_out_STAR__temp_val__13824_13833;
  
  try{(cljs.pprint.pr.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.pr.cljs$core$IFn$_invoke$arity$1(object) : cljs.pprint.pr.call(null,object));
  }finally {cljs.core._STAR_out_STAR_ = _STAR_out_STAR__orig_val__13823_13832;
  }}
  
  if(optval === true){
  cljs.core.string_print(cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb));
  } else {
  }
  
  if((optval == null)){
  return cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb);
  } else {
  return null;
  }
  }finally {}}finally {cljs.pprint._STAR_print_suppress_namespaces_STAR_ = _STAR_print_suppress_namespaces_STAR__orig_val__13808;
  
  cljs.pprint._STAR_print_right_margin_STAR_ = _STAR_print_right_margin_STAR__orig_val__13807;
  
  cljs.core._STAR_print_readably_STAR_ = _STAR_print_readably_STAR__orig_val__13806;
  
  cljs.pprint._STAR_print_radix_STAR_ = _STAR_print_radix_STAR__orig_val__13805;
  
  cljs.pprint._STAR_print_pretty_STAR_ = _STAR_print_pretty_STAR__orig_val__13804;
  
  cljs.pprint._STAR_print_pprint_dispatch_STAR_ = _STAR_print_pprint_dispatch_STAR__orig_val__13803;
  
  cljs.pprint._STAR_print_miser_width_STAR_ = _STAR_print_miser_width_STAR__orig_val__13802;
  
  cljs.pprint._STAR_print_lines_STAR_ = _STAR_print_lines_STAR__orig_val__13801;
  
  cljs.core._STAR_print_level_STAR_ = _STAR_print_level_STAR__orig_val__13800;
  
  cljs.core._STAR_print_length_STAR_ = _STAR_print_length_STAR__orig_val__13799;
  
  cljs.pprint._STAR_print_circle_STAR_ = _STAR_print_circle_STAR__orig_val__13798;
  
  cljs.pprint._STAR_print_base_STAR_ = _STAR_print_base_STAR__orig_val__13797;
  }});
  
  cljs.pprint.write.cljs$lang$maxFixedArity = (1);
  
  /** @this {Function} */
  cljs.pprint.write.cljs$lang$applyTo = (function (seq13795){
  var G__13796 = cljs.core.first(seq13795);
  var seq13795__$1 = cljs.core.next(seq13795);
  var self__4717__auto__ = this;
  return self__4717__auto__.cljs$core$IFn$_invoke$arity$variadic(G__13796,seq13795__$1);
  });
  
  cljs.pprint.pprint = (function cljs$pprint$pprint(var_args){
  var G__13835 = arguments.length;
  switch (G__13835) {
  case 1:
  return cljs.pprint.pprint.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
  
  break;
  case 2:
  return cljs.pprint.pprint.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.pprint.pprint.cljs$core$IFn$_invoke$arity$1 = (function (object){
  var sb = (new goog.string.StringBuffer());
  var _STAR_out_STAR__orig_val__13836 = cljs.core._STAR_out_STAR_;
  var _STAR_out_STAR__temp_val__13837 = (new cljs.core.StringBufferWriter(sb));
  cljs.core._STAR_out_STAR_ = _STAR_out_STAR__temp_val__13837;
  
  try{cljs.pprint.pprint.cljs$core$IFn$_invoke$arity$2(object,cljs.core._STAR_out_STAR_);
  
  return cljs.core.string_print(cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb));
  }finally {cljs.core._STAR_out_STAR_ = _STAR_out_STAR__orig_val__13836;
  }});
  
  cljs.pprint.pprint.cljs$core$IFn$_invoke$arity$2 = (function (object,writer){
  var base_writer__13311__auto__ = writer;
  var new_writer__13312__auto__ = cljs.core.not(cljs.pprint.pretty_writer_QMARK_(base_writer__13311__auto__));
  var _STAR_out_STAR__orig_val__13838 = cljs.core._STAR_out_STAR_;
  var _STAR_out_STAR__temp_val__13839 = ((new_writer__13312__auto__)?cljs.pprint.make_pretty_writer(base_writer__13311__auto__,cljs.pprint._STAR_print_right_margin_STAR_,cljs.pprint._STAR_print_miser_width_STAR_):base_writer__13311__auto__);
  cljs.core._STAR_out_STAR_ = _STAR_out_STAR__temp_val__13839;
  
  try{var _STAR_print_pretty_STAR__orig_val__13840_13843 = cljs.pprint._STAR_print_pretty_STAR_;
  var _STAR_print_pretty_STAR__temp_val__13841_13844 = true;
  cljs.pprint._STAR_print_pretty_STAR_ = _STAR_print_pretty_STAR__temp_val__13841_13844;
  
  try{cljs.pprint.write_out(object);
  }finally {cljs.pprint._STAR_print_pretty_STAR_ = _STAR_print_pretty_STAR__orig_val__13840_13843;
  }
  if((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),cljs.pprint.get_column(cljs.core._STAR_out_STAR_))))){
  cljs.core._write(cljs.core._STAR_out_STAR_,"\n");
  } else {
  }
  
  return cljs.pprint._ppflush(cljs.core._STAR_out_STAR_);
  }finally {cljs.core._STAR_out_STAR_ = _STAR_out_STAR__orig_val__13838;
  }});
  
  cljs.pprint.pprint.cljs$lang$maxFixedArity = 2;
  
  cljs.pprint.set_pprint_dispatch = (function cljs$pprint$set_pprint_dispatch(function$){
  cljs.pprint._STAR_print_pprint_dispatch_STAR_ = function$;
  
  return null;
  });
  cljs.pprint.check_enumerated_arg = (function cljs$pprint$check_enumerated_arg(arg,choices){
  if(cljs.core.not((choices.cljs$core$IFn$_invoke$arity$1 ? choices.cljs$core$IFn$_invoke$arity$1(arg) : choices.call(null,arg)))){
  throw (new Error(["Bad argument: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arg),". It must be one of ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(choices)].join('')));
  } else {
  return null;
  }
  });
  cljs.pprint.level_exceeded = (function cljs$pprint$level_exceeded(){
  var and__4120__auto__ = cljs.core._STAR_print_level_STAR_;
  if(cljs.core.truth_(and__4120__auto__)){
  return (cljs.pprint._STAR_current_level_STAR_ >= cljs.core._STAR_print_level_STAR_);
  } else {
  return and__4120__auto__;
  }
  });
  /**
   * Print a conditional newline to a pretty printing stream. kind specifies if the
   *   newline is :linear, :miser, :fill, or :mandatory.
   * 
   *   This function is intended for use when writing custom dispatch functions.
   * 
   *   Output is sent to *out* which must be a pretty printing writer.
   */
  cljs.pprint.pprint_newline = (function cljs$pprint$pprint_newline(kind){
  cljs.pprint.check_enumerated_arg(kind,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [cljs.core.cst$kw$mandatory,null,cljs.core.cst$kw$miser,null,cljs.core.cst$kw$fill,null,cljs.core.cst$kw$linear,null], null), null));
  
  return cljs.pprint.nl(cljs.core._STAR_out_STAR_,kind);
  });
  /**
   * Create an indent at this point in the pretty printing stream. This defines how
   * following lines are indented. relative-to can be either :block or :current depending
   * whether the indent should be computed relative to the start of the logical block or
   * the current column position. n is an offset.
   * 
   * This function is intended for use when writing custom dispatch functions.
   * 
   * Output is sent to *out* which must be a pretty printing writer.
   */
  cljs.pprint.pprint_indent = (function cljs$pprint$pprint_indent(relative_to,n){
  cljs.pprint.check_enumerated_arg(relative_to,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [cljs.core.cst$kw$block,null,cljs.core.cst$kw$current,null], null), null));
  
  return cljs.pprint.indent(cljs.core._STAR_out_STAR_,relative_to,n);
  });
  /**
   * Tab at this point in the pretty printing stream. kind specifies whether the tab
   * is :line, :section, :line-relative, or :section-relative.
   * 
   * Colnum and colinc specify the target column and the increment to move the target
   * forward if the output is already past the original target.
   * 
   * This function is intended for use when writing custom dispatch functions.
   * 
   * Output is sent to *out* which must be a pretty printing writer.
   * 
   * THIS FUNCTION IS NOT YET IMPLEMENTED.
   */
  cljs.pprint.pprint_tab = (function cljs$pprint$pprint_tab(kind,colnum,colinc){
  cljs.pprint.check_enumerated_arg(kind,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [cljs.core.cst$kw$section,null,cljs.core.cst$kw$line,null,cljs.core.cst$kw$line_DASH_relative,null,cljs.core.cst$kw$section_DASH_relative,null], null), null));
  
  throw (new Error("pprint-tab is not yet implemented"));
  });
  /**
   * An implementation of a Common Lisp compatible format function. cl-format formats its
   * arguments to an output stream or string based on the format control string given. It
   * supports sophisticated formatting of structured data.
   * 
   * Writer satisfies IWriter, true to output via *print-fn* or nil to output
   * to a string, format-in is the format control string and the remaining arguments
   * are the data to be formatted.
   * 
   * The format control string is a string to be output with embedded 'format directives'
   * describing how to format the various arguments passed in.
   * 
   * If writer is nil, cl-format returns the formatted result string. Otherwise, cl-format
   * returns nil.
   * 
   * For example:
   *  (let [results [46 38 22]]
   *      (cl-format true "There ~[are~;is~:;are~]~:* ~d result~:p: ~{~d~^, ~}~%"
   *                 (count results) results))
   * 
   * Prints via *print-fn*:
   *  There are 3 results: 46, 38, 22
   * 
   * Detailed documentation on format control strings is available in the "Common Lisp the
   * Language, 2nd edition", Chapter 22 (available online at:
   * http://www.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/html/cltl/clm/node200.html#SECTION002633000000000000000)
   * and in the Common Lisp HyperSpec at
   * http://www.lispworks.com/documentation/HyperSpec/Body/22_c.htm
   */
  cljs.pprint.cl_format = (function cljs$pprint$cl_format(var_args){
  var args__4736__auto__ = [];
  var len__4730__auto___13848 = arguments.length;
  var i__4731__auto___13849 = (0);
  while(true){
  if((i__4731__auto___13849 < len__4730__auto___13848)){
  args__4736__auto__.push((arguments[i__4731__auto___13849]));
  
  var G__13850 = (i__4731__auto___13849 + (1));
  i__4731__auto___13849 = G__13850;
  continue;
  } else {
  }
  break;
  }
  
  var argseq__4737__auto__ = ((((2) < args__4736__auto__.length))?(new cljs.core.IndexedSeq(args__4736__auto__.slice((2)),(0),null)):null);
  return cljs.pprint.cl_format.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4737__auto__);
  });
  
  cljs.pprint.cl_format.cljs$core$IFn$_invoke$arity$variadic = (function (writer,format_in,args){
  var compiled_format = ((typeof format_in === 'string')?cljs.pprint.compile_format(format_in):format_in);
  var navigator = cljs.pprint.init_navigator(args);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$3(writer,compiled_format,navigator);
  });
  
  cljs.pprint.cl_format.cljs$lang$maxFixedArity = (2);
  
  /** @this {Function} */
  cljs.pprint.cl_format.cljs$lang$applyTo = (function (seq13845){
  var G__13846 = cljs.core.first(seq13845);
  var seq13845__$1 = cljs.core.next(seq13845);
  var G__13847 = cljs.core.first(seq13845__$1);
  var seq13845__$2 = cljs.core.next(seq13845__$1);
  var self__4717__auto__ = this;
  return self__4717__auto__.cljs$core$IFn$_invoke$arity$variadic(G__13846,G__13847,seq13845__$2);
  });
  
  cljs.pprint._STAR_format_str_STAR_ = null;
  cljs.pprint.format_error = (function cljs$pprint$format_error(message,offset){
  var full_message = [cljs.core.str.cljs$core$IFn$_invoke$arity$1(message),"\n",cljs.pprint._STAR_format_str_STAR_,"\n",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(offset," "))),"^","\n"].join('');
  throw Error(full_message);
  });
  
  /**
  * @constructor
   * @implements {cljs.core.IRecord}
   * @implements {cljs.core.IKVReduce}
   * @implements {cljs.core.IEquiv}
   * @implements {cljs.core.IHash}
   * @implements {cljs.core.ICollection}
   * @implements {cljs.core.ICounted}
   * @implements {cljs.core.ISeqable}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.ICloneable}
   * @implements {cljs.core.IPrintWithWriter}
   * @implements {cljs.core.IIterable}
   * @implements {cljs.core.IWithMeta}
   * @implements {cljs.core.IAssociative}
   * @implements {cljs.core.IMap}
   * @implements {cljs.core.ILookup}
  */
  cljs.pprint.arg_navigator = (function (seq,rest,pos,__meta,__extmap,__hash){
  this.seq = seq;
  this.rest = rest;
  this.pos = pos;
  this.__meta = __meta;
  this.__extmap = __extmap;
  this.__hash = __hash;
  this.cljs$lang$protocol_mask$partition0$ = 2230716170;
  this.cljs$lang$protocol_mask$partition1$ = 139264;
  });
  cljs.pprint.arg_navigator.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__4385__auto__,k__4386__auto__){
  var self__ = this;
  var this__4385__auto____$1 = this;
  return this__4385__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4386__auto__,null);
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__4387__auto__,k13852,else__4388__auto__){
  var self__ = this;
  var this__4387__auto____$1 = this;
  var G__13856 = k13852;
  var G__13856__$1 = (((G__13856 instanceof cljs.core.Keyword))?G__13856.fqn:null);
  switch (G__13856__$1) {
  case "seq":
  return self__.seq;
  
  break;
  case "rest":
  return self__.rest;
  
  break;
  case "pos":
  return self__.pos;
  
  break;
  default:
  return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k13852,else__4388__auto__);
  
  }
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__4404__auto__,f__4405__auto__,init__4406__auto__){
  var self__ = this;
  var this__4404__auto____$1 = this;
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (this__4404__auto____$1){
  return (function (ret__4407__auto__,p__13857){
  var vec__13858 = p__13857;
  var k__4408__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13858,(0),null);
  var v__4409__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13858,(1),null);
  return (f__4405__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4405__auto__.cljs$core$IFn$_invoke$arity$3(ret__4407__auto__,k__4408__auto__,v__4409__auto__) : f__4405__auto__.call(null,ret__4407__auto__,k__4408__auto__,v__4409__auto__));
  });})(this__4404__auto____$1))
  ,init__4406__auto__,this__4404__auto____$1);
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__4399__auto__,writer__4400__auto__,opts__4401__auto__){
  var self__ = this;
  var this__4399__auto____$1 = this;
  var pr_pair__4402__auto__ = ((function (this__4399__auto____$1){
  return (function (keyval__4403__auto__){
  return cljs.core.pr_sequential_writer(writer__4400__auto__,cljs.core.pr_writer,""," ","",opts__4401__auto__,keyval__4403__auto__);
  });})(this__4399__auto____$1))
  ;
  return cljs.core.pr_sequential_writer(writer__4400__auto__,pr_pair__4402__auto__,"#cljs.pprint.arg-navigator{",", ","}",opts__4401__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$seq,self__.seq],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$rest,self__.rest],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$pos,self__.pos],null))], null),self__.__extmap));
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__13851){
  var self__ = this;
  var G__13851__$1 = this;
  return (new cljs.core.RecordIter((0),G__13851__$1,3,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$seq,cljs.core.cst$kw$rest,cljs.core.cst$kw$pos], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__4383__auto__){
  var self__ = this;
  var this__4383__auto____$1 = this;
  return self__.__meta;
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__4380__auto__){
  var self__ = this;
  var this__4380__auto____$1 = this;
  return (new cljs.pprint.arg_navigator(self__.seq,self__.rest,self__.pos,self__.__meta,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__4389__auto__){
  var self__ = this;
  var this__4389__auto____$1 = this;
  return (3 + cljs.core.count(self__.__extmap));
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__4381__auto__){
  var self__ = this;
  var this__4381__auto____$1 = this;
  var h__4243__auto__ = self__.__hash;
  if((!((h__4243__auto__ == null)))){
  return h__4243__auto__;
  } else {
  var h__4243__auto____$1 = (function (){var fexpr__13861 = ((function (h__4243__auto__,this__4381__auto____$1){
  return (function (coll__4382__auto__){
  return (-402038447 ^ cljs.core.hash_unordered_coll(coll__4382__auto__));
  });})(h__4243__auto__,this__4381__auto____$1))
  ;
  return fexpr__13861(this__4381__auto____$1);
  })();
  self__.__hash = h__4243__auto____$1;
  
  return h__4243__auto____$1;
  }
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this13853,other13854){
  var self__ = this;
  var this13853__$1 = this;
  return (((!((other13854 == null)))) && ((this13853__$1.constructor === other13854.constructor)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13853__$1.seq,other13854.seq)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13853__$1.rest,other13854.rest)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13853__$1.pos,other13854.pos)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13853__$1.__extmap,other13854.__extmap)));
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__4394__auto__,k__4395__auto__){
  var self__ = this;
  var this__4394__auto____$1 = this;
  if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$pos,null,cljs.core.cst$kw$seq,null,cljs.core.cst$kw$rest,null], null), null),k__4395__auto__)){
  return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4394__auto____$1),self__.__meta),k__4395__auto__);
  } else {
  return (new cljs.pprint.arg_navigator(self__.seq,self__.rest,self__.pos,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4395__auto__)),null));
  }
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__4392__auto__,k__4393__auto__,G__13851){
  var self__ = this;
  var this__4392__auto____$1 = this;
  var pred__13862 = cljs.core.keyword_identical_QMARK_;
  var expr__13863 = k__4393__auto__;
  if(cljs.core.truth_((function (){var G__13865 = cljs.core.cst$kw$seq;
  var G__13866 = expr__13863;
  return (pred__13862.cljs$core$IFn$_invoke$arity$2 ? pred__13862.cljs$core$IFn$_invoke$arity$2(G__13865,G__13866) : pred__13862.call(null,G__13865,G__13866));
  })())){
  return (new cljs.pprint.arg_navigator(G__13851,self__.rest,self__.pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13867 = cljs.core.cst$kw$rest;
  var G__13868 = expr__13863;
  return (pred__13862.cljs$core$IFn$_invoke$arity$2 ? pred__13862.cljs$core$IFn$_invoke$arity$2(G__13867,G__13868) : pred__13862.call(null,G__13867,G__13868));
  })())){
  return (new cljs.pprint.arg_navigator(self__.seq,G__13851,self__.pos,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13869 = cljs.core.cst$kw$pos;
  var G__13870 = expr__13863;
  return (pred__13862.cljs$core$IFn$_invoke$arity$2 ? pred__13862.cljs$core$IFn$_invoke$arity$2(G__13869,G__13870) : pred__13862.call(null,G__13869,G__13870));
  })())){
  return (new cljs.pprint.arg_navigator(self__.seq,self__.rest,G__13851,self__.__meta,self__.__extmap,null));
  } else {
  return (new cljs.pprint.arg_navigator(self__.seq,self__.rest,self__.pos,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4393__auto__,G__13851),null));
  }
  }
  }
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__4397__auto__){
  var self__ = this;
  var this__4397__auto____$1 = this;
  return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(cljs.core.cst$kw$seq,self__.seq,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$rest,self__.rest,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$pos,self__.pos,null))], null),self__.__extmap));
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__4384__auto__,G__13851){
  var self__ = this;
  var this__4384__auto____$1 = this;
  return (new cljs.pprint.arg_navigator(self__.seq,self__.rest,self__.pos,G__13851,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.arg_navigator.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__4390__auto__,entry__4391__auto__){
  var self__ = this;
  var this__4390__auto____$1 = this;
  if(cljs.core.vector_QMARK_(entry__4391__auto__)){
  return this__4390__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(0)),cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(1)));
  } else {
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4390__auto____$1,entry__4391__auto__);
  }
  });
  
  cljs.pprint.arg_navigator.getBasis = (function (){
  return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$seq,cljs.core.cst$sym$rest,cljs.core.cst$sym$pos], null);
  });
  
  cljs.pprint.arg_navigator.cljs$lang$type = true;
  
  cljs.pprint.arg_navigator.cljs$lang$ctorPrSeq = (function (this__4428__auto__){
  return (new cljs.core.List(null,"cljs.pprint/arg-navigator",null,(1),null));
  });
  
  cljs.pprint.arg_navigator.cljs$lang$ctorPrWriter = (function (this__4428__auto__,writer__4429__auto__){
  return cljs.core._write(writer__4429__auto__,"cljs.pprint/arg-navigator");
  });
  
  /**
   * Positional factory function for cljs.pprint/arg-navigator.
   */
  cljs.pprint.__GT_arg_navigator = (function cljs$pprint$__GT_arg_navigator(seq,rest,pos){
  return (new cljs.pprint.arg_navigator(seq,rest,pos,null,null,null));
  });
  
  /**
   * Factory function for cljs.pprint/arg-navigator, taking a map of keywords to field values.
   */
  cljs.pprint.map__GT_arg_navigator = (function cljs$pprint$map__GT_arg_navigator(G__13855){
  var extmap__4424__auto__ = (function (){var G__13871 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__13855,cljs.core.cst$kw$seq,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.cst$kw$rest,cljs.core.cst$kw$pos], 0));
  if(cljs.core.record_QMARK_(G__13855)){
  return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__13871);
  } else {
  return G__13871;
  }
  })();
  return (new cljs.pprint.arg_navigator(cljs.core.cst$kw$seq.cljs$core$IFn$_invoke$arity$1(G__13855),cljs.core.cst$kw$rest.cljs$core$IFn$_invoke$arity$1(G__13855),cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(G__13855),null,cljs.core.not_empty(extmap__4424__auto__),null));
  });
  
  /**
   * Create a new arg-navigator from the sequence with the position set to 0
   */
  cljs.pprint.init_navigator = (function cljs$pprint$init_navigator(s){
  var s__$1 = cljs.core.seq(s);
  return (new cljs.pprint.arg_navigator(s__$1,s__$1,(0),null,null,null));
  });
  cljs.pprint.next_arg = (function cljs$pprint$next_arg(navigator){
  var rst = cljs.core.cst$kw$rest.cljs$core$IFn$_invoke$arity$1(navigator);
  if(cljs.core.truth_(rst)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(rst),(new cljs.pprint.arg_navigator(cljs.core.cst$kw$seq.cljs$core$IFn$_invoke$arity$1(navigator),cljs.core.next(rst),(cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(navigator) + (1)),null,null,null))], null);
  } else {
  throw Error("Not enough arguments for format definition");
  }
  });
  cljs.pprint.next_arg_or_nil = (function cljs$pprint$next_arg_or_nil(navigator){
  var rst = cljs.core.cst$kw$rest.cljs$core$IFn$_invoke$arity$1(navigator);
  if(cljs.core.truth_(rst)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(rst),(new cljs.pprint.arg_navigator(cljs.core.cst$kw$seq.cljs$core$IFn$_invoke$arity$1(navigator),cljs.core.next(rst),(cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(navigator) + (1)),null,null,null))], null);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,navigator], null);
  }
  });
  cljs.pprint.get_format_arg = (function cljs$pprint$get_format_arg(navigator){
  var vec__13873 = cljs.pprint.next_arg(navigator);
  var raw_format = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13873,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13873,(1),null);
  var compiled_format = ((typeof raw_format === 'string')?cljs.pprint.compile_format(raw_format):raw_format);
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [compiled_format,navigator__$1], null);
  });
  cljs.pprint.absolute_reposition = (function cljs$pprint$absolute_reposition(navigator,position){
  if((position >= cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(navigator))){
  var G__13876 = navigator;
  var G__13877 = (cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(navigator) - position);
  return (cljs.pprint.relative_reposition.cljs$core$IFn$_invoke$arity$2 ? cljs.pprint.relative_reposition.cljs$core$IFn$_invoke$arity$2(G__13876,G__13877) : cljs.pprint.relative_reposition.call(null,G__13876,G__13877));
  } else {
  return (new cljs.pprint.arg_navigator(cljs.core.cst$kw$seq.cljs$core$IFn$_invoke$arity$1(navigator),cljs.core.drop.cljs$core$IFn$_invoke$arity$2(position,cljs.core.cst$kw$seq.cljs$core$IFn$_invoke$arity$1(navigator)),position,null,null,null));
  }
  });
  cljs.pprint.relative_reposition = (function cljs$pprint$relative_reposition(navigator,position){
  var newpos = (cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(navigator) + position);
  if((position < (0))){
  return cljs.pprint.absolute_reposition(navigator,newpos);
  } else {
  return (new cljs.pprint.arg_navigator(cljs.core.cst$kw$seq.cljs$core$IFn$_invoke$arity$1(navigator),cljs.core.drop.cljs$core$IFn$_invoke$arity$2(position,cljs.core.cst$kw$rest.cljs$core$IFn$_invoke$arity$1(navigator)),newpos,null,null,null));
  }
  });
  
  /**
  * @constructor
   * @implements {cljs.core.IRecord}
   * @implements {cljs.core.IKVReduce}
   * @implements {cljs.core.IEquiv}
   * @implements {cljs.core.IHash}
   * @implements {cljs.core.ICollection}
   * @implements {cljs.core.ICounted}
   * @implements {cljs.core.ISeqable}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.ICloneable}
   * @implements {cljs.core.IPrintWithWriter}
   * @implements {cljs.core.IIterable}
   * @implements {cljs.core.IWithMeta}
   * @implements {cljs.core.IAssociative}
   * @implements {cljs.core.IMap}
   * @implements {cljs.core.ILookup}
  */
  cljs.pprint.compiled_directive = (function (func,def,params,offset,__meta,__extmap,__hash){
  this.func = func;
  this.def = def;
  this.params = params;
  this.offset = offset;
  this.__meta = __meta;
  this.__extmap = __extmap;
  this.__hash = __hash;
  this.cljs$lang$protocol_mask$partition0$ = 2230716170;
  this.cljs$lang$protocol_mask$partition1$ = 139264;
  });
  cljs.pprint.compiled_directive.prototype.cljs$core$ILookup$_lookup$arity$2 = (function (this__4385__auto__,k__4386__auto__){
  var self__ = this;
  var this__4385__auto____$1 = this;
  return this__4385__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4386__auto__,null);
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$ILookup$_lookup$arity$3 = (function (this__4387__auto__,k13879,else__4388__auto__){
  var self__ = this;
  var this__4387__auto____$1 = this;
  var G__13883 = k13879;
  var G__13883__$1 = (((G__13883 instanceof cljs.core.Keyword))?G__13883.fqn:null);
  switch (G__13883__$1) {
  case "func":
  return self__.func;
  
  break;
  case "def":
  return self__.def;
  
  break;
  case "params":
  return self__.params;
  
  break;
  case "offset":
  return self__.offset;
  
  break;
  default:
  return cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k13879,else__4388__auto__);
  
  }
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 = (function (this__4404__auto__,f__4405__auto__,init__4406__auto__){
  var self__ = this;
  var this__4404__auto____$1 = this;
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (this__4404__auto____$1){
  return (function (ret__4407__auto__,p__13884){
  var vec__13885 = p__13884;
  var k__4408__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13885,(0),null);
  var v__4409__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13885,(1),null);
  return (f__4405__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4405__auto__.cljs$core$IFn$_invoke$arity$3(ret__4407__auto__,k__4408__auto__,v__4409__auto__) : f__4405__auto__.call(null,ret__4407__auto__,k__4408__auto__,v__4409__auto__));
  });})(this__4404__auto____$1))
  ,init__4406__auto__,this__4404__auto____$1);
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 = (function (this__4399__auto__,writer__4400__auto__,opts__4401__auto__){
  var self__ = this;
  var this__4399__auto____$1 = this;
  var pr_pair__4402__auto__ = ((function (this__4399__auto____$1){
  return (function (keyval__4403__auto__){
  return cljs.core.pr_sequential_writer(writer__4400__auto__,cljs.core.pr_writer,""," ","",opts__4401__auto__,keyval__4403__auto__);
  });})(this__4399__auto____$1))
  ;
  return cljs.core.pr_sequential_writer(writer__4400__auto__,pr_pair__4402__auto__,"#cljs.pprint.compiled-directive{",", ","}",opts__4401__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$func,self__.func],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$def,self__.def],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$params,self__.params],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.cst$kw$offset,self__.offset],null))], null),self__.__extmap));
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$IIterable$_iterator$arity$1 = (function (G__13878){
  var self__ = this;
  var G__13878__$1 = this;
  return (new cljs.core.RecordIter((0),G__13878__$1,4,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$func,cljs.core.cst$kw$def,cljs.core.cst$kw$params,cljs.core.cst$kw$offset], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$IMeta$_meta$arity$1 = (function (this__4383__auto__){
  var self__ = this;
  var this__4383__auto____$1 = this;
  return self__.__meta;
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$ICloneable$_clone$arity$1 = (function (this__4380__auto__){
  var self__ = this;
  var this__4380__auto____$1 = this;
  return (new cljs.pprint.compiled_directive(self__.func,self__.def,self__.params,self__.offset,self__.__meta,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$ICounted$_count$arity$1 = (function (this__4389__auto__){
  var self__ = this;
  var this__4389__auto____$1 = this;
  return (4 + cljs.core.count(self__.__extmap));
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$IHash$_hash$arity$1 = (function (this__4381__auto__){
  var self__ = this;
  var this__4381__auto____$1 = this;
  var h__4243__auto__ = self__.__hash;
  if((!((h__4243__auto__ == null)))){
  return h__4243__auto__;
  } else {
  var h__4243__auto____$1 = (function (){var fexpr__13888 = ((function (h__4243__auto__,this__4381__auto____$1){
  return (function (coll__4382__auto__){
  return (-829256337 ^ cljs.core.hash_unordered_coll(coll__4382__auto__));
  });})(h__4243__auto__,this__4381__auto____$1))
  ;
  return fexpr__13888(this__4381__auto____$1);
  })();
  self__.__hash = h__4243__auto____$1;
  
  return h__4243__auto____$1;
  }
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$IEquiv$_equiv$arity$2 = (function (this13880,other13881){
  var self__ = this;
  var this13880__$1 = this;
  return (((!((other13881 == null)))) && ((this13880__$1.constructor === other13881.constructor)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13880__$1.func,other13881.func)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13880__$1.def,other13881.def)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13880__$1.params,other13881.params)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13880__$1.offset,other13881.offset)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this13880__$1.__extmap,other13881.__extmap)));
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$IMap$_dissoc$arity$2 = (function (this__4394__auto__,k__4395__auto__){
  var self__ = this;
  var this__4394__auto____$1 = this;
  if(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [cljs.core.cst$kw$offset,null,cljs.core.cst$kw$func,null,cljs.core.cst$kw$params,null,cljs.core.cst$kw$def,null], null), null),k__4395__auto__)){
  return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4394__auto____$1),self__.__meta),k__4395__auto__);
  } else {
  return (new cljs.pprint.compiled_directive(self__.func,self__.def,self__.params,self__.offset,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4395__auto__)),null));
  }
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$IAssociative$_assoc$arity$3 = (function (this__4392__auto__,k__4393__auto__,G__13878){
  var self__ = this;
  var this__4392__auto____$1 = this;
  var pred__13889 = cljs.core.keyword_identical_QMARK_;
  var expr__13890 = k__4393__auto__;
  if(cljs.core.truth_((function (){var G__13892 = cljs.core.cst$kw$func;
  var G__13893 = expr__13890;
  return (pred__13889.cljs$core$IFn$_invoke$arity$2 ? pred__13889.cljs$core$IFn$_invoke$arity$2(G__13892,G__13893) : pred__13889.call(null,G__13892,G__13893));
  })())){
  return (new cljs.pprint.compiled_directive(G__13878,self__.def,self__.params,self__.offset,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13894 = cljs.core.cst$kw$def;
  var G__13895 = expr__13890;
  return (pred__13889.cljs$core$IFn$_invoke$arity$2 ? pred__13889.cljs$core$IFn$_invoke$arity$2(G__13894,G__13895) : pred__13889.call(null,G__13894,G__13895));
  })())){
  return (new cljs.pprint.compiled_directive(self__.func,G__13878,self__.params,self__.offset,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13896 = cljs.core.cst$kw$params;
  var G__13897 = expr__13890;
  return (pred__13889.cljs$core$IFn$_invoke$arity$2 ? pred__13889.cljs$core$IFn$_invoke$arity$2(G__13896,G__13897) : pred__13889.call(null,G__13896,G__13897));
  })())){
  return (new cljs.pprint.compiled_directive(self__.func,self__.def,G__13878,self__.offset,self__.__meta,self__.__extmap,null));
  } else {
  if(cljs.core.truth_((function (){var G__13898 = cljs.core.cst$kw$offset;
  var G__13899 = expr__13890;
  return (pred__13889.cljs$core$IFn$_invoke$arity$2 ? pred__13889.cljs$core$IFn$_invoke$arity$2(G__13898,G__13899) : pred__13889.call(null,G__13898,G__13899));
  })())){
  return (new cljs.pprint.compiled_directive(self__.func,self__.def,self__.params,G__13878,self__.__meta,self__.__extmap,null));
  } else {
  return (new cljs.pprint.compiled_directive(self__.func,self__.def,self__.params,self__.offset,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4393__auto__,G__13878),null));
  }
  }
  }
  }
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$ISeqable$_seq$arity$1 = (function (this__4397__auto__){
  var self__ = this;
  var this__4397__auto____$1 = this;
  return cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(cljs.core.cst$kw$func,self__.func,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$def,self__.def,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$params,self__.params,null)),(new cljs.core.MapEntry(cljs.core.cst$kw$offset,self__.offset,null))], null),self__.__extmap));
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (this__4384__auto__,G__13878){
  var self__ = this;
  var this__4384__auto____$1 = this;
  return (new cljs.pprint.compiled_directive(self__.func,self__.def,self__.params,self__.offset,G__13878,self__.__extmap,self__.__hash));
  });
  
  cljs.pprint.compiled_directive.prototype.cljs$core$ICollection$_conj$arity$2 = (function (this__4390__auto__,entry__4391__auto__){
  var self__ = this;
  var this__4390__auto____$1 = this;
  if(cljs.core.vector_QMARK_(entry__4391__auto__)){
  return this__4390__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(0)),cljs.core._nth.cljs$core$IFn$_invoke$arity$2(entry__4391__auto__,(1)));
  } else {
  return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4390__auto____$1,entry__4391__auto__);
  }
  });
  
  cljs.pprint.compiled_directive.getBasis = (function (){
  return new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$func,cljs.core.cst$sym$def,cljs.core.cst$sym$params,cljs.core.cst$sym$offset], null);
  });
  
  cljs.pprint.compiled_directive.cljs$lang$type = true;
  
  cljs.pprint.compiled_directive.cljs$lang$ctorPrSeq = (function (this__4428__auto__){
  return (new cljs.core.List(null,"cljs.pprint/compiled-directive",null,(1),null));
  });
  
  cljs.pprint.compiled_directive.cljs$lang$ctorPrWriter = (function (this__4428__auto__,writer__4429__auto__){
  return cljs.core._write(writer__4429__auto__,"cljs.pprint/compiled-directive");
  });
  
  /**
   * Positional factory function for cljs.pprint/compiled-directive.
   */
  cljs.pprint.__GT_compiled_directive = (function cljs$pprint$__GT_compiled_directive(func,def,params,offset){
  return (new cljs.pprint.compiled_directive(func,def,params,offset,null,null,null));
  });
  
  /**
   * Factory function for cljs.pprint/compiled-directive, taking a map of keywords to field values.
   */
  cljs.pprint.map__GT_compiled_directive = (function cljs$pprint$map__GT_compiled_directive(G__13882){
  var extmap__4424__auto__ = (function (){var G__13900 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__13882,cljs.core.cst$kw$func,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.cst$kw$def,cljs.core.cst$kw$params,cljs.core.cst$kw$offset], 0));
  if(cljs.core.record_QMARK_(G__13882)){
  return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__13900);
  } else {
  return G__13900;
  }
  })();
  return (new cljs.pprint.compiled_directive(cljs.core.cst$kw$func.cljs$core$IFn$_invoke$arity$1(G__13882),cljs.core.cst$kw$def.cljs$core$IFn$_invoke$arity$1(G__13882),cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(G__13882),cljs.core.cst$kw$offset.cljs$core$IFn$_invoke$arity$1(G__13882),null,cljs.core.not_empty(extmap__4424__auto__),null));
  });
  
  cljs.pprint.realize_parameter = (function cljs$pprint$realize_parameter(p__13902,navigator){
  var vec__13903 = p__13902;
  var param = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13903,(0),null);
  var vec__13906 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13903,(1),null);
  var raw_val = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13906,(0),null);
  var offset = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13906,(1),null);
  var vec__13909 = ((cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null], null), null),param))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [raw_val,navigator], null):((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(raw_val,cljs.core.cst$kw$parameter_DASH_from_DASH_args))?cljs.pprint.next_arg(navigator):((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(raw_val,cljs.core.cst$kw$remaining_DASH_arg_DASH_count))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.count(cljs.core.cst$kw$rest.cljs$core$IFn$_invoke$arity$1(navigator)),navigator], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [raw_val,navigator], null)
  )));
  var real_param = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13909,(0),null);
  var new_navigator = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13909,(1),null);
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [param,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [real_param,offset], null)], null),new_navigator], null);
  });
  cljs.pprint.realize_parameter_list = (function cljs$pprint$realize_parameter_list(parameter_map,navigator){
  var vec__13912 = cljs.pprint.map_passing_context(cljs.pprint.realize_parameter,navigator,parameter_map);
  var pairs = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13912,(0),null);
  var new_navigator = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13912,(1),null);
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,pairs),new_navigator], null);
  });
  cljs.pprint.special_radix_markers = new cljs.core.PersistentArrayMap(null, 3, [(2),"#b",(8),"#o",(16),"#x"], null);
  cljs.pprint.format_simple_number = (function cljs$pprint$format_simple_number(n){
  if(cljs.core.integer_QMARK_(n)){
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.pprint._STAR_print_base_STAR_,(10))){
  return [cljs.core.str.cljs$core$IFn$_invoke$arity$1(n),(cljs.core.truth_(cljs.pprint._STAR_print_radix_STAR_)?".":null)].join('');
  } else {
  return [cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_(cljs.pprint._STAR_print_radix_STAR_)?(function (){var or__4131__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.pprint.special_radix_markers,cljs.pprint._STAR_print_base_STAR_);
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return ["#",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.pprint._STAR_print_base_STAR_),"r"].join('');
  }
  })():null)),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.pprint.opt_base_str(cljs.pprint._STAR_print_base_STAR_,n))].join('');
  }
  } else {
  return null;
  
  }
  });
  cljs.pprint.format_ascii = (function cljs$pprint$format_ascii(print_func,params,arg_navigator,offsets){
  var vec__13915 = cljs.pprint.next_arg(arg_navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13915,(0),null);
  var arg_navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13915,(1),null);
  var base_output = (function (){var or__4131__auto__ = cljs.pprint.format_simple_number(arg);
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return (print_func.cljs$core$IFn$_invoke$arity$1 ? print_func.cljs$core$IFn$_invoke$arity$1(arg) : print_func.call(null,arg));
  }
  })();
  var base_width = base_output.length;
  var min_width = (base_width + cljs.core.cst$kw$minpad.cljs$core$IFn$_invoke$arity$1(params));
  var width = (((min_width >= cljs.core.cst$kw$mincol.cljs$core$IFn$_invoke$arity$1(params)))?min_width:(min_width + ((cljs.core.quot(((cljs.core.cst$kw$mincol.cljs$core$IFn$_invoke$arity$1(params) - min_width) - (1)),cljs.core.cst$kw$colinc.cljs$core$IFn$_invoke$arity$1(params)) + (1)) * cljs.core.cst$kw$colinc.cljs$core$IFn$_invoke$arity$1(params))));
  var chars = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((width - base_width),cljs.core.cst$kw$padchar.cljs$core$IFn$_invoke$arity$1(params)));
  if(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))){
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[cljs.core.str.cljs$core$IFn$_invoke$arity$1(chars),cljs.core.str.cljs$core$IFn$_invoke$arity$1(base_output)].join('')], 0));
  } else {
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[cljs.core.str.cljs$core$IFn$_invoke$arity$1(base_output),cljs.core.str.cljs$core$IFn$_invoke$arity$1(chars)].join('')], 0));
  }
  
  return arg_navigator__$1;
  });
  /**
   * returns true if a number is actually an integer (that is, has no fractional part)
   */
  cljs.pprint.integral_QMARK_ = (function cljs$pprint$integral_QMARK_(x){
  if(cljs.core.integer_QMARK_(x)){
  return true;
  } else {
  if(cljs.pprint.float_QMARK_(x)){
  return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(x,Math.floor(x));
  } else {
  return false;
  
  }
  }
  });
  /**
   * Return the list of remainders (essentially the 'digits') of val in the given base
   */
  cljs.pprint.remainders = (function cljs$pprint$remainders(base,val){
  return cljs.core.reverse(cljs.core.first(cljs.pprint.consume((function (p1__13918_SHARP_){
  if((p1__13918_SHARP_ > (0))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.rem(p1__13918_SHARP_,base),cljs.core.quot(p1__13918_SHARP_,base)], null);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null], null);
  }
  }),val)));
  });
  /**
   * Return val as a string in the given base
   */
  cljs.pprint.base_str = (function cljs$pprint$base_str(base,val){
  if((val === (0))){
  return "0";
  } else {
  var xlated_val = val
  ;
  return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.map.cljs$core$IFn$_invoke$arity$2(((function (xlated_val){
  return (function (p1__13919_SHARP_){
  if((p1__13919_SHARP_ < (10))){
  return cljs.core.char$((cljs.pprint.char_code("0") + p1__13919_SHARP_));
  } else {
  return cljs.core.char$((cljs.pprint.char_code("a") + (p1__13919_SHARP_ - (10))));
  }
  });})(xlated_val))
  ,cljs.pprint.remainders(base,val)));
  }
  });
  cljs.pprint.javascript_base_formats = new cljs.core.PersistentArrayMap(null, 3, [(8),"%o",(10),"%d",(16),"%x"], null);
  /**
   * Return val as a string in the given base. No cljs format, so no improved performance.
   */
  cljs.pprint.opt_base_str = (function cljs$pprint$opt_base_str(base,val){
  return cljs.pprint.base_str(base,val);
  });
  cljs.pprint.group_by_STAR_ = (function cljs$pprint$group_by_STAR_(unit,lis){
  return cljs.core.reverse(cljs.core.first(cljs.pprint.consume((function (x){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.seq(cljs.core.reverse(cljs.core.take.cljs$core$IFn$_invoke$arity$2(unit,x))),cljs.core.seq(cljs.core.drop.cljs$core$IFn$_invoke$arity$2(unit,x))], null);
  }),cljs.core.reverse(lis))));
  });
  cljs.pprint.format_integer = (function cljs$pprint$format_integer(base,params,arg_navigator,offsets){
  var vec__13921 = cljs.pprint.next_arg(arg_navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13921,(0),null);
  var arg_navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13921,(1),null);
  if(cljs.pprint.integral_QMARK_(arg)){
  var neg_13924 = (arg < (0));
  var pos_arg_13925 = ((neg_13924)?(- arg):arg);
  var raw_str_13926 = cljs.pprint.opt_base_str(base,pos_arg_13925);
  var group_str_13927 = (cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))?(function (){var groups = cljs.core.map.cljs$core$IFn$_invoke$arity$2(((function (neg_13924,pos_arg_13925,raw_str_13926,vec__13921,arg,arg_navigator__$1){
  return (function (p1__13920_SHARP_){
  return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,p1__13920_SHARP_);
  });})(neg_13924,pos_arg_13925,raw_str_13926,vec__13921,arg,arg_navigator__$1))
  ,cljs.pprint.group_by_STAR_(cljs.core.cst$kw$commainterval.cljs$core$IFn$_invoke$arity$1(params),raw_str_13926));
  var commas = cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(cljs.core.count(groups),cljs.core.cst$kw$commachar.cljs$core$IFn$_invoke$arity$1(params));
  return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.next(cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(commas,groups)));
  })():raw_str_13926);
  var signed_str_13928 = ((neg_13924)?["-",cljs.core.str.cljs$core$IFn$_invoke$arity$1(group_str_13927)].join(''):(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))?["+",cljs.core.str.cljs$core$IFn$_invoke$arity$1(group_str_13927)].join(''):group_str_13927
  ));
  var padded_str_13929 = (((signed_str_13928.length < cljs.core.cst$kw$mincol.cljs$core$IFn$_invoke$arity$1(params)))?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((cljs.core.cst$kw$mincol.cljs$core$IFn$_invoke$arity$1(params) - signed_str_13928.length),cljs.core.cst$kw$padchar.cljs$core$IFn$_invoke$arity$1(params)))),cljs.core.str.cljs$core$IFn$_invoke$arity$1(signed_str_13928)].join(''):signed_str_13928);
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([padded_str_13929], 0));
  } else {
  cljs.pprint.format_ascii(cljs.core.print_str,new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$mincol,cljs.core.cst$kw$mincol.cljs$core$IFn$_invoke$arity$1(params),cljs.core.cst$kw$colinc,(1),cljs.core.cst$kw$minpad,(0),cljs.core.cst$kw$padchar,cljs.core.cst$kw$padchar.cljs$core$IFn$_invoke$arity$1(params),cljs.core.cst$kw$at,true], null),cljs.pprint.init_navigator(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [arg], null)),null);
  }
  
  return arg_navigator__$1;
  });
  cljs.pprint.english_cardinal_units = new cljs.core.PersistentVector(null, 20, 5, cljs.core.PersistentVector.EMPTY_NODE, ["zero","one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"], null);
  cljs.pprint.english_ordinal_units = new cljs.core.PersistentVector(null, 20, 5, cljs.core.PersistentVector.EMPTY_NODE, ["zeroth","first","second","third","fourth","fifth","sixth","seventh","eighth","ninth","tenth","eleventh","twelfth","thirteenth","fourteenth","fifteenth","sixteenth","seventeenth","eighteenth","nineteenth"], null);
  cljs.pprint.english_cardinal_tens = new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, ["","","twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"], null);
  cljs.pprint.english_ordinal_tens = new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, ["","","twentieth","thirtieth","fortieth","fiftieth","sixtieth","seventieth","eightieth","ninetieth"], null);
  cljs.pprint.english_scale_numbers = new cljs.core.PersistentVector(null, 22, 5, cljs.core.PersistentVector.EMPTY_NODE, ["","thousand","million","billion","trillion","quadrillion","quintillion","sextillion","septillion","octillion","nonillion","decillion","undecillion","duodecillion","tredecillion","quattuordecillion","quindecillion","sexdecillion","septendecillion","octodecillion","novemdecillion","vigintillion"], null);
  /**
   * Convert a number less than 1000 to a cardinal english string
   */
  cljs.pprint.format_simple_cardinal = (function cljs$pprint$format_simple_cardinal(num){
  var hundreds = cljs.core.quot(num,(100));
  var tens = cljs.core.rem(num,(100));
  return [(((hundreds > (0)))?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_cardinal_units,hundreds))," hundred"].join(''):null),(((((hundreds > (0))) && ((tens > (0)))))?" ":null),cljs.core.str.cljs$core$IFn$_invoke$arity$1((((tens > (0)))?(((tens < (20)))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_cardinal_units,tens):(function (){var ten_digit = cljs.core.quot(tens,(10));
  var unit_digit = cljs.core.rem(tens,(10));
  return [cljs.core.str.cljs$core$IFn$_invoke$arity$1((((ten_digit > (0)))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_cardinal_tens,ten_digit):null)),(((((ten_digit > (0))) && ((unit_digit > (0)))))?"-":null),cljs.core.str.cljs$core$IFn$_invoke$arity$1((((unit_digit > (0)))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_cardinal_units,unit_digit):null))].join('');
  })()):null))].join('');
  });
  /**
   * Take a sequence of parts, add scale numbers (e.g., million) and combine into a string
   *   offset is a factor of 10^3 to multiply by
   */
  cljs.pprint.add_english_scales = (function cljs$pprint$add_english_scales(parts,offset){
  var cnt = cljs.core.count(parts);
  var acc = cljs.core.PersistentVector.EMPTY;
  var pos = (cnt - (1));
  var this$ = cljs.core.first(parts);
  var remainder = cljs.core.next(parts);
  while(true){
  if((remainder == null)){
  return [cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.interpose.cljs$core$IFn$_invoke$arity$2(", ",acc))),(((((!(cljs.core.empty_QMARK_(this$)))) && ((!(cljs.core.empty_QMARK_(acc))))))?", ":null),cljs.core.str.cljs$core$IFn$_invoke$arity$1(this$),(((((!(cljs.core.empty_QMARK_(this$)))) && (((pos + offset) > (0)))))?[" ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_scale_numbers,(pos + offset)))].join(''):null)].join('');
  } else {
  var G__13930 = ((cljs.core.empty_QMARK_(this$))?acc:cljs.core.conj.cljs$core$IFn$_invoke$arity$2(acc,[cljs.core.str.cljs$core$IFn$_invoke$arity$1(this$)," ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_scale_numbers,(pos + offset)))].join('')));
  var G__13931 = (pos - (1));
  var G__13932 = cljs.core.first(remainder);
  var G__13933 = cljs.core.next(remainder);
  acc = G__13930;
  pos = G__13931;
  this$ = G__13932;
  remainder = G__13933;
  continue;
  }
  break;
  }
  });
  cljs.pprint.format_cardinal_english = (function cljs$pprint$format_cardinal_english(params,navigator,offsets){
  var vec__13934 = cljs.pprint.next_arg(navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13934,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13934,(1),null);
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),arg)){
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["zero"], 0));
  } else {
  var abs_arg_13937 = (((arg < (0)))?(- arg):arg);
  var parts_13938 = cljs.pprint.remainders((1000),abs_arg_13937);
  if((cljs.core.count(parts_13938) <= cljs.core.count(cljs.pprint.english_scale_numbers))){
  var parts_strs_13939 = cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.pprint.format_simple_cardinal,parts_13938);
  var full_str_13940 = cljs.pprint.add_english_scales(parts_strs_13939,(0));
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[(((arg < (0)))?"minus ":null),full_str_13940].join('')], 0));
  } else {
  cljs.pprint.format_integer((10),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$mincol,(0),cljs.core.cst$kw$padchar," ",cljs.core.cst$kw$commachar,",",cljs.core.cst$kw$commainterval,(3),cljs.core.cst$kw$colon,true], null),cljs.pprint.init_navigator(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [arg], null)),new cljs.core.PersistentArrayMap(null, 4, [cljs.core.cst$kw$mincol,(0),cljs.core.cst$kw$padchar,(0),cljs.core.cst$kw$commachar,(0),cljs.core.cst$kw$commainterval,(0)], null));
  }
  }
  
  return navigator__$1;
  });
  /**
   * Convert a number less than 1000 to a ordinal english string
   *   Note this should only be used for the last one in the sequence
   */
  cljs.pprint.format_simple_ordinal = (function cljs$pprint$format_simple_ordinal(num){
  var hundreds = cljs.core.quot(num,(100));
  var tens = cljs.core.rem(num,(100));
  return [(((hundreds > (0)))?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_cardinal_units,hundreds))," hundred"].join(''):null),(((((hundreds > (0))) && ((tens > (0)))))?" ":null),cljs.core.str.cljs$core$IFn$_invoke$arity$1((((tens > (0)))?(((tens < (20)))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_ordinal_units,tens):(function (){var ten_digit = cljs.core.quot(tens,(10));
  var unit_digit = cljs.core.rem(tens,(10));
  if((((ten_digit > (0))) && ((!((unit_digit > (0))))))){
  return cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_ordinal_tens,ten_digit);
  } else {
  return [cljs.core.str.cljs$core$IFn$_invoke$arity$1((((ten_digit > (0)))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_cardinal_tens,ten_digit):null)),(((((ten_digit > (0))) && ((unit_digit > (0)))))?"-":null),cljs.core.str.cljs$core$IFn$_invoke$arity$1((((unit_digit > (0)))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_ordinal_units,unit_digit):null))].join('');
  }
  })()):(((hundreds > (0)))?"th":null)))].join('');
  });
  cljs.pprint.format_ordinal_english = (function cljs$pprint$format_ordinal_english(params,navigator,offsets){
  var vec__13941 = cljs.pprint.next_arg(navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13941,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13941,(1),null);
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),arg)){
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["zeroth"], 0));
  } else {
  var abs_arg_13944 = (((arg < (0)))?(- arg):arg);
  var parts_13945 = cljs.pprint.remainders((1000),abs_arg_13944);
  if((cljs.core.count(parts_13945) <= cljs.core.count(cljs.pprint.english_scale_numbers))){
  var parts_strs_13946 = cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.pprint.format_simple_cardinal,cljs.core.drop_last.cljs$core$IFn$_invoke$arity$1(parts_13945));
  var head_str_13947 = cljs.pprint.add_english_scales(parts_strs_13946,(1));
  var tail_str_13948 = cljs.pprint.format_simple_ordinal(cljs.core.last(parts_13945));
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[(((arg < (0)))?"minus ":null),(((((!(cljs.core.empty_QMARK_(head_str_13947)))) && ((!(cljs.core.empty_QMARK_(tail_str_13948))))))?[head_str_13947,", ",tail_str_13948].join(''):(((!(cljs.core.empty_QMARK_(head_str_13947))))?[head_str_13947,"th"].join(''):tail_str_13948
  ))].join('')], 0));
  } else {
  cljs.pprint.format_integer((10),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$mincol,(0),cljs.core.cst$kw$padchar," ",cljs.core.cst$kw$commachar,",",cljs.core.cst$kw$commainterval,(3),cljs.core.cst$kw$colon,true], null),cljs.pprint.init_navigator(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [arg], null)),new cljs.core.PersistentArrayMap(null, 4, [cljs.core.cst$kw$mincol,(0),cljs.core.cst$kw$padchar,(0),cljs.core.cst$kw$commachar,(0),cljs.core.cst$kw$commainterval,(0)], null));
  
  var low_two_digits_13949 = cljs.core.rem(arg,(100));
  var not_teens_13950 = ((((11) < low_two_digits_13949)) || (((19) > low_two_digits_13949)));
  var low_digit_13951 = cljs.core.rem(low_two_digits_13949,(10));
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(((((low_digit_13951 === (1))) && (not_teens_13950)))?"st":(((((low_digit_13951 === (2))) && (not_teens_13950)))?"nd":(((((low_digit_13951 === (3))) && (not_teens_13950)))?"rd":"th"
  )))], 0));
  }
  }
  
  return navigator__$1;
  });
  cljs.pprint.old_roman_table = new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, ["I","II","III","IIII","V","VI","VII","VIII","VIIII"], null),new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, ["X","XX","XXX","XXXX","L","LX","LXX","LXXX","LXXXX"], null),new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, ["C","CC","CCC","CCCC","D","DC","DCC","DCCC","DCCCC"], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, ["M","MM","MMM"], null)], null);
  cljs.pprint.new_roman_table = new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, ["I","II","III","IV","V","VI","VII","VIII","IX"], null),new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, ["X","XX","XXX","XL","L","LX","LXX","LXXX","XC"], null),new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, ["C","CC","CCC","CD","D","DC","DCC","DCCC","CM"], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, ["M","MM","MMM"], null)], null);
  /**
   * Format a roman numeral using the specified look-up table
   */
  cljs.pprint.format_roman = (function cljs$pprint$format_roman(table,params,navigator,offsets){
  var vec__13952 = cljs.pprint.next_arg(navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13952,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13952,(1),null);
  if(((typeof arg === 'number') && ((arg > (0))) && ((arg < (4000))))){
  var digits_13955 = cljs.pprint.remainders((10),arg);
  var acc_13956 = cljs.core.PersistentVector.EMPTY;
  var pos_13957 = (cljs.core.count(digits_13955) - (1));
  var digits_13958__$1 = digits_13955;
  while(true){
  if(cljs.core.empty_QMARK_(digits_13958__$1)){
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,acc_13956)], 0));
  } else {
  var digit_13959 = cljs.core.first(digits_13958__$1);
  var G__13960 = ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),digit_13959))?acc_13956:cljs.core.conj.cljs$core$IFn$_invoke$arity$2(acc_13956,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(table,pos_13957),(digit_13959 - (1)))));
  var G__13961 = (pos_13957 - (1));
  var G__13962 = cljs.core.next(digits_13958__$1);
  acc_13956 = G__13960;
  pos_13957 = G__13961;
  digits_13958__$1 = G__13962;
  continue;
  }
  break;
  }
  } else {
  cljs.pprint.format_integer((10),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$mincol,(0),cljs.core.cst$kw$padchar," ",cljs.core.cst$kw$commachar,",",cljs.core.cst$kw$commainterval,(3),cljs.core.cst$kw$colon,true], null),cljs.pprint.init_navigator(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [arg], null)),new cljs.core.PersistentArrayMap(null, 4, [cljs.core.cst$kw$mincol,(0),cljs.core.cst$kw$padchar,(0),cljs.core.cst$kw$commachar,(0),cljs.core.cst$kw$commainterval,(0)], null));
  }
  
  return navigator__$1;
  });
  cljs.pprint.format_old_roman = (function cljs$pprint$format_old_roman(params,navigator,offsets){
  return cljs.pprint.format_roman(cljs.pprint.old_roman_table,params,navigator,offsets);
  });
  cljs.pprint.format_new_roman = (function cljs$pprint$format_new_roman(params,navigator,offsets){
  return cljs.pprint.format_roman(cljs.pprint.new_roman_table,params,navigator,offsets);
  });
  cljs.pprint.special_chars = new cljs.core.PersistentArrayMap(null, 5, [(8),"Backspace",(9),"Tab",(10),"Newline",(13),"Return",(32),"Space"], null);
  cljs.pprint.pretty_character = (function cljs$pprint$pretty_character(params,navigator,offsets){
  var vec__13963 = cljs.pprint.next_arg(navigator);
  var c = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13963,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13963,(1),null);
  var as_int = cljs.pprint.char_code(c);
  var base_char = (as_int & (127));
  var meta = (as_int & (128));
  var special = cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.pprint.special_chars,base_char);
  if((meta > (0))){
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["Meta-"], 0));
  } else {
  }
  
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(cljs.core.truth_(special)?special:(((base_char < (32)))?["Control-",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.char$((base_char + (64))))].join(''):((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(base_char,(127)))?"Control-?":cljs.core.char$(base_char)
  )))], 0));
  
  return navigator__$1;
  });
  cljs.pprint.readable_character = (function cljs$pprint$readable_character(params,navigator,offsets){
  var vec__13966 = cljs.pprint.next_arg(navigator);
  var c = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13966,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13966,(1),null);
  var pred__13969_13976 = cljs.core._EQ_;
  var expr__13970_13977 = cljs.core.cst$kw$char_DASH_format.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_((function (){var G__13972 = "o";
  var G__13973 = expr__13970_13977;
  return (pred__13969_13976.cljs$core$IFn$_invoke$arity$2 ? pred__13969_13976.cljs$core$IFn$_invoke$arity$2(G__13972,G__13973) : pred__13969_13976.call(null,G__13972,G__13973));
  })())){
  cljs.pprint.cl_format.cljs$core$IFn$_invoke$arity$variadic(true,"\\o~3, '0o",cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.pprint.char_code(c)], 0));
  } else {
  if(cljs.core.truth_((function (){var G__13974 = "u";
  var G__13975 = expr__13970_13977;
  return (pred__13969_13976.cljs$core$IFn$_invoke$arity$2 ? pred__13969_13976.cljs$core$IFn$_invoke$arity$2(G__13974,G__13975) : pred__13969_13976.call(null,G__13974,G__13975));
  })())){
  cljs.pprint.cl_format.cljs$core$IFn$_invoke$arity$variadic(true,"\\u~4, '0x",cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.pprint.char_code(c)], 0));
  } else {
  if(cljs.core.truth_((pred__13969_13976.cljs$core$IFn$_invoke$arity$2 ? pred__13969_13976.cljs$core$IFn$_invoke$arity$2(null,expr__13970_13977) : pred__13969_13976.call(null,null,expr__13970_13977)))){
  cljs.pprint.print_char(c);
  } else {
  throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__13970_13977)].join('')));
  }
  }
  }
  
  return navigator__$1;
  });
  cljs.pprint.plain_character = (function cljs$pprint$plain_character(params,navigator,offsets){
  var vec__13978 = cljs.pprint.next_arg(navigator);
  var char$ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13978,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13978,(1),null);
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([char$], 0));
  
  return navigator__$1;
  });
  cljs.pprint.abort_QMARK_ = (function cljs$pprint$abort_QMARK_(context){
  var token = cljs.core.first(context);
  return ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$up_DASH_arrow,token)) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$colon_DASH_up_DASH_arrow,token)));
  });
  cljs.pprint.execute_sub_format = (function cljs$pprint$execute_sub_format(format,args,base_args){
  return cljs.core.second(cljs.pprint.map_passing_context((function (element,context){
  if(cljs.pprint.abort_QMARK_(context)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,context], null);
  } else {
  var vec__13981 = cljs.pprint.realize_parameter_list(cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(element),context);
  var params = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13981,(0),null);
  var args__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13981,(1),null);
  var vec__13984 = cljs.pprint.unzip_map(params);
  var params__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13984,(0),null);
  var offsets = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13984,(1),null);
  var params__$2 = cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(params__$1,cljs.core.cst$kw$base_DASH_args,base_args);
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$func.cljs$core$IFn$_invoke$arity$1(element),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [params__$2,args__$1,offsets], null))], null);
  }
  }),args,format));
  });
  /**
   * Produce string parts for the mantissa (normalize 1-9) and exponent
   */
  cljs.pprint.float_parts_base = (function cljs$pprint$float_parts_base(f){
  var s = clojure.string.lower_case(cljs.core.str.cljs$core$IFn$_invoke$arity$1(f));
  var exploc = s.indexOf("e");
  var dotloc = s.indexOf(".");
  if((exploc < (0))){
  if((dotloc < (0))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [s,cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.count(s) - (1)))], null);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),dotloc)),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(dotloc + (1))))].join(''),cljs.core.str.cljs$core$IFn$_invoke$arity$1((dotloc - (1)))], null);
  }
  } else {
  if((dotloc < (0))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),exploc),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(exploc + (1)))], null);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),(1))),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(2),exploc))].join(''),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(exploc + (1)))], null);
  }
  }
  });
  /**
   * Take care of leading and trailing zeros in decomposed floats
   */
  cljs.pprint.float_parts = (function cljs$pprint$float_parts(f){
  var vec__13987 = cljs.pprint.float_parts_base(f);
  var m = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13987,(0),null);
  var e = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13987,(1),null);
  var m1 = cljs.pprint.rtrim(m,"0");
  var m2 = cljs.pprint.ltrim(m1,"0");
  var delta = (cljs.core.count(m1) - cljs.core.count(m2));
  var e__$1 = (((((cljs.core.count(e) > (0))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(e,(0)),"+"))))?cljs.core.subs.cljs$core$IFn$_invoke$arity$2(e,(1)):e);
  if(cljs.core.empty_QMARK_(m2)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["0",(0)], null);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [m2,(parseInt(e__$1,(10)) - delta)], null);
  }
  });
  /**
   * Assumption: The input string consists of one or more decimal digits,
   *   and no other characters. Return a string containing one or more
   *   decimal digits containing a decimal number one larger than the input
   *   string. The output string will always be the same length as the input
   *   string, or one character longer.
   */
  cljs.pprint.inc_s = (function cljs$pprint$inc_s(s){
  var len_1 = (cljs.core.count(s) - (1));
  var i = (len_1 | (0));
  while(true){
  if((i < (0))){
  return cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.str,"1",cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((len_1 + (1)),"0"));
  } else {
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2("9",s.charAt(i))){
  var G__13990 = (i - (1));
  i = G__13990;
  continue;
  } else {
  return cljs.core.apply.cljs$core$IFn$_invoke$arity$4(cljs.core.str,cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),i),cljs.core.char$((cljs.pprint.char_code(s.charAt(i)) + (1))),cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((len_1 - i),"0"));
  
  }
  }
  break;
  }
  });
  cljs.pprint.round_str = (function cljs$pprint$round_str(m,e,d,w){
  if(cljs.core.truth_((function (){var or__4131__auto__ = d;
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return w;
  }
  })())){
  var len = cljs.core.count(m);
  var w__$1 = (cljs.core.truth_(w)?(function (){var x__4219__auto__ = (2);
  var y__4220__auto__ = w;
  return ((x__4219__auto__ > y__4220__auto__) ? x__4219__auto__ : y__4220__auto__);
  })():(0));
  var round_pos = (cljs.core.truth_(d)?((e + d) + (1)):(((e >= (0)))?(function (){var x__4219__auto__ = (e + (1));
  var y__4220__auto__ = (w__$1 - (1));
  return ((x__4219__auto__ > y__4220__auto__) ? x__4219__auto__ : y__4220__auto__);
  })():(w__$1 + e)
  ));
  var vec__13991 = ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(round_pos,(0)))?new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [["0",cljs.core.str.cljs$core$IFn$_invoke$arity$1(m)].join(''),(e + (1)),(1),(len + (1))], null):new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [m,e,round_pos,len], null));
  var m1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13991,(0),null);
  var e1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13991,(1),null);
  var round_pos__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13991,(2),null);
  var len__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13991,(3),null);
  if(cljs.core.truth_(round_pos__$1)){
  if((round_pos__$1 < (0))){
  return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, ["0",(0),false], null);
  } else {
  if((len__$1 > round_pos__$1)){
  var round_char = cljs.core.nth.cljs$core$IFn$_invoke$arity$2(m1,round_pos__$1);
  var result = cljs.core.subs.cljs$core$IFn$_invoke$arity$3(m1,(0),round_pos__$1);
  if((cljs.pprint.char_code(round_char) >= cljs.pprint.char_code("5"))){
  var round_up_result = cljs.pprint.inc_s(result);
  var expanded = (cljs.core.count(round_up_result) > cljs.core.count(result));
  return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [((expanded)?cljs.core.subs.cljs$core$IFn$_invoke$arity$3(round_up_result,(0),(cljs.core.count(round_up_result) - (1))):round_up_result),e1,expanded], null);
  } else {
  return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [result,e1,false], null);
  }
  } else {
  return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [m,e,false], null);
  }
  }
  } else {
  return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [m,e,false], null);
  }
  } else {
  return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [m,e,false], null);
  }
  });
  cljs.pprint.expand_fixed = (function cljs$pprint$expand_fixed(m,e,d){
  var vec__13994 = (((e < (0)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(((- e) - (1)),"0"))),cljs.core.str.cljs$core$IFn$_invoke$arity$1(m)].join(''),(-1)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [m,e], null));
  var m1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13994,(0),null);
  var e1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13994,(1),null);
  var len = cljs.core.count(m1);
  var target_len = (cljs.core.truth_(d)?((e1 + d) + (1)):(e1 + (1)));
  if((len < target_len)){
  return [cljs.core.str.cljs$core$IFn$_invoke$arity$1(m1),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((target_len - len),"0")))].join('');
  } else {
  return m1;
  }
  });
  /**
   * Insert the decimal point at the right spot in the number to match an exponent
   */
  cljs.pprint.insert_decimal = (function cljs$pprint$insert_decimal(m,e){
  if((e < (0))){
  return [".",cljs.core.str.cljs$core$IFn$_invoke$arity$1(m)].join('');
  } else {
  var loc = (e + (1));
  return [cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(m,(0),loc)),".",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(m,loc))].join('');
  }
  });
  cljs.pprint.get_fixed = (function cljs$pprint$get_fixed(m,e,d){
  return cljs.pprint.insert_decimal(cljs.pprint.expand_fixed(m,e,d),e);
  });
  /**
   * Insert the decimal point at the right spot in the number to match an exponent
   */
  cljs.pprint.insert_scaled_decimal = (function cljs$pprint$insert_scaled_decimal(m,k){
  if((k < (0))){
  return [".",cljs.core.str.cljs$core$IFn$_invoke$arity$1(m)].join('');
  } else {
  return [cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(m,(0),k)),".",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(m,k))].join('');
  }
  });
  cljs.pprint.convert_ratio = (function cljs$pprint$convert_ratio(x){
  return x;
  });
  cljs.pprint.fixed_float = (function cljs$pprint$fixed_float(params,navigator,offsets){
  var w = cljs.core.cst$kw$w.cljs$core$IFn$_invoke$arity$1(params);
  var d = cljs.core.cst$kw$d.cljs$core$IFn$_invoke$arity$1(params);
  var vec__13997 = cljs.pprint.next_arg(navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13997,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__13997,(1),null);
  var vec__14000 = (((arg < (0)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["-",(- arg)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["+",arg], null));
  var sign = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14000,(0),null);
  var abs = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14000,(1),null);
  var abs__$1 = cljs.pprint.convert_ratio(abs);
  var vec__14003 = cljs.pprint.float_parts(abs__$1);
  var mantissa = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14003,(0),null);
  var exp = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14003,(1),null);
  var scaled_exp = (exp + cljs.core.cst$kw$k.cljs$core$IFn$_invoke$arity$1(params));
  var add_sign = (function (){var or__4131__auto__ = cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return (arg < (0));
  }
  })();
  var append_zero = ((cljs.core.not(d)) && (((cljs.core.count(mantissa) - (1)) <= scaled_exp)));
  var vec__14006 = cljs.pprint.round_str(mantissa,scaled_exp,d,(cljs.core.truth_(w)?(w - (cljs.core.truth_(add_sign)?(1):(0))):null));
  var rounded_mantissa = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14006,(0),null);
  var scaled_exp__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14006,(1),null);
  var expanded = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14006,(2),null);
  var fixed_repr = cljs.pprint.get_fixed(rounded_mantissa,(cljs.core.truth_(expanded)?(scaled_exp__$1 + (1)):scaled_exp__$1),d);
  var fixed_repr__$1 = (cljs.core.truth_((function (){var and__4120__auto__ = w;
  if(cljs.core.truth_(and__4120__auto__)){
  var and__4120__auto____$1 = d;
  if(cljs.core.truth_(and__4120__auto____$1)){
  return (((d >= (1))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(fixed_repr.charAt((0)),"0")) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(fixed_repr.charAt((1)),".")) && ((cljs.core.count(fixed_repr) > (w - (cljs.core.truth_(add_sign)?(1):(0))))));
  } else {
  return and__4120__auto____$1;
  }
  } else {
  return and__4120__auto__;
  }
  })())?cljs.core.subs.cljs$core$IFn$_invoke$arity$2(fixed_repr,(1)):fixed_repr);
  var prepend_zero = cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.first(fixed_repr__$1),".");
  if(cljs.core.truth_(w)){
  var len_14009 = cljs.core.count(fixed_repr__$1);
  var signed_len_14010 = (cljs.core.truth_(add_sign)?(len_14009 + (1)):len_14009);
  var prepend_zero_14011__$1 = ((prepend_zero) && ((!((signed_len_14010 >= w)))));
  var append_zero_14012__$1 = ((append_zero) && ((!((signed_len_14010 >= w)))));
  var full_len_14013 = ((((prepend_zero_14011__$1) || (append_zero_14012__$1)))?(signed_len_14010 + (1)):signed_len_14010);
  if(cljs.core.truth_((function (){var and__4120__auto__ = (full_len_14013 > w);
  if(and__4120__auto__){
  return cljs.core.cst$kw$overflowchar.cljs$core$IFn$_invoke$arity$1(params);
  } else {
  return and__4120__auto__;
  }
  })())){
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(w,cljs.core.cst$kw$overflowchar.cljs$core$IFn$_invoke$arity$1(params)))], 0));
  } else {
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((w - full_len_14013),cljs.core.cst$kw$padchar.cljs$core$IFn$_invoke$arity$1(params)))),cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_(add_sign)?sign:null)),((prepend_zero_14011__$1)?"0":null),cljs.core.str.cljs$core$IFn$_invoke$arity$1(fixed_repr__$1),((append_zero_14012__$1)?"0":null)].join('')], 0));
  }
  } else {
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_(add_sign)?sign:null)),((prepend_zero)?"0":null),cljs.core.str.cljs$core$IFn$_invoke$arity$1(fixed_repr__$1),((append_zero)?"0":null)].join('')], 0));
  }
  
  return navigator__$1;
  });
  cljs.pprint.exponential_float = (function cljs$pprint$exponential_float(params,navigator,offset){
  var vec__14014 = cljs.pprint.next_arg(navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14014,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14014,(1),null);
  var arg__$1 = cljs.pprint.convert_ratio(arg);
  var G__14020_14030 = cljs.pprint.float_parts((((arg__$1 < (0)))?(- arg__$1):arg__$1));
  var vec__14021_14031 = G__14020_14030;
  var mantissa_14032 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14021_14031,(0),null);
  var exp_14033 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14021_14031,(1),null);
  var G__14020_14034__$1 = G__14020_14030;
  while(true){
  var vec__14024_14035 = G__14020_14034__$1;
  var mantissa_14036__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14024_14035,(0),null);
  var exp_14037__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14024_14035,(1),null);
  var w_14038 = cljs.core.cst$kw$w.cljs$core$IFn$_invoke$arity$1(params);
  var d_14039 = cljs.core.cst$kw$d.cljs$core$IFn$_invoke$arity$1(params);
  var e_14040 = cljs.core.cst$kw$e.cljs$core$IFn$_invoke$arity$1(params);
  var k_14041 = cljs.core.cst$kw$k.cljs$core$IFn$_invoke$arity$1(params);
  var expchar_14042 = (function (){var or__4131__auto__ = cljs.core.cst$kw$exponentchar.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return "E";
  }
  })();
  var add_sign_14043 = (function (){var or__4131__auto__ = cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return (arg__$1 < (0));
  }
  })();
  var prepend_zero_14044 = (k_14041 <= (0));
  var scaled_exp_14045 = (exp_14037__$1 - (k_14041 - (1)));
  var scaled_exp_str_14046 = cljs.core.str.cljs$core$IFn$_invoke$arity$1(Math.abs(scaled_exp_14045));
  var scaled_exp_str_14047__$1 = [cljs.core.str.cljs$core$IFn$_invoke$arity$1(expchar_14042),(((scaled_exp_14045 < (0)))?"-":"+"),cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_(e_14040)?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((e_14040 - cljs.core.count(scaled_exp_str_14046)),"0")):null)),scaled_exp_str_14046].join('');
  var exp_width_14048 = cljs.core.count(scaled_exp_str_14047__$1);
  var base_mantissa_width_14049 = cljs.core.count(mantissa_14036__$1);
  var scaled_mantissa_14050 = [cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((- k_14041),"0"))),cljs.core.str.cljs$core$IFn$_invoke$arity$1(mantissa_14036__$1),cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_(d_14039)?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(((d_14039 - (base_mantissa_width_14049 - (1))) - (((k_14041 < (0)))?(- k_14041):(0))),"0")):null))].join('');
  var w_mantissa_14051 = (cljs.core.truth_(w_14038)?(w_14038 - exp_width_14048):null);
  var vec__14027_14052 = cljs.pprint.round_str(scaled_mantissa_14050,(0),((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k_14041,(0)))?(d_14039 - (1)):(((k_14041 > (0)))?d_14039:(((k_14041 < (0)))?(d_14039 - (1)):null))),(cljs.core.truth_(w_mantissa_14051)?(w_mantissa_14051 - (cljs.core.truth_(add_sign_14043)?(1):(0))):null));
  var rounded_mantissa_14053 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14027_14052,(0),null);
  var __14054 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14027_14052,(1),null);
  var incr_exp_14055 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14027_14052,(2),null);
  var full_mantissa_14056 = cljs.pprint.insert_scaled_decimal(rounded_mantissa_14053,k_14041);
  var append_zero_14057 = ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k_14041,cljs.core.count(rounded_mantissa_14053))) && ((d_14039 == null)));
  if(cljs.core.not(incr_exp_14055)){
  if(cljs.core.truth_(w_14038)){
  var len_14058 = (cljs.core.count(full_mantissa_14056) + exp_width_14048);
  var signed_len_14059 = (cljs.core.truth_(add_sign_14043)?(len_14058 + (1)):len_14058);
  var prepend_zero_14060__$1 = ((prepend_zero_14044) && ((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(signed_len_14059,w_14038)))));
  var full_len_14061 = ((prepend_zero_14060__$1)?(signed_len_14059 + (1)):signed_len_14059);
  var append_zero_14062__$1 = ((append_zero_14057) && ((full_len_14061 < w_14038)));
  if(cljs.core.truth_((function (){var and__4120__auto__ = (function (){var or__4131__auto__ = (full_len_14061 > w_14038);
  if(or__4131__auto__){
  return or__4131__auto__;
  } else {
  var and__4120__auto__ = e_14040;
  if(cljs.core.truth_(and__4120__auto__)){
  return ((exp_width_14048 - (2)) > e_14040);
  } else {
  return and__4120__auto__;
  }
  }
  })();
  if(cljs.core.truth_(and__4120__auto__)){
  return cljs.core.cst$kw$overflowchar.cljs$core$IFn$_invoke$arity$1(params);
  } else {
  return and__4120__auto__;
  }
  })())){
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(w_14038,cljs.core.cst$kw$overflowchar.cljs$core$IFn$_invoke$arity$1(params)))], 0));
  } else {
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(((w_14038 - full_len_14061) - ((append_zero_14062__$1)?(1):(0))),cljs.core.cst$kw$padchar.cljs$core$IFn$_invoke$arity$1(params)))),(cljs.core.truth_(add_sign_14043)?(((arg__$1 < (0)))?"-":"+"):null),((prepend_zero_14060__$1)?"0":null),full_mantissa_14056,((append_zero_14062__$1)?"0":null),scaled_exp_str_14047__$1].join('')], 0));
  }
  } else {
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[(cljs.core.truth_(add_sign_14043)?(((arg__$1 < (0)))?"-":"+"):null),((prepend_zero_14044)?"0":null),full_mantissa_14056,((append_zero_14057)?"0":null),scaled_exp_str_14047__$1].join('')], 0));
  }
  } else {
  var G__14063 = new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [rounded_mantissa_14053,(exp_14037__$1 + (1))], null);
  G__14020_14034__$1 = G__14063;
  continue;
  }
  break;
  }
  
  return navigator__$1;
  });
  cljs.pprint.general_float = (function cljs$pprint$general_float(params,navigator,offsets){
  var vec__14064 = cljs.pprint.next_arg(navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14064,(0),null);
  var _ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14064,(1),null);
  var arg__$1 = cljs.pprint.convert_ratio(arg);
  var vec__14067 = cljs.pprint.float_parts((((arg__$1 < (0)))?(- arg__$1):arg__$1));
  var mantissa = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14067,(0),null);
  var exp = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14067,(1),null);
  var w = cljs.core.cst$kw$w.cljs$core$IFn$_invoke$arity$1(params);
  var d = cljs.core.cst$kw$d.cljs$core$IFn$_invoke$arity$1(params);
  var e = cljs.core.cst$kw$e.cljs$core$IFn$_invoke$arity$1(params);
  var n = ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(arg__$1,0.0))?(0):(exp + (1)));
  var ee = (cljs.core.truth_(e)?(e + (2)):(4));
  var ww = (cljs.core.truth_(w)?(w - ee):null);
  var d__$1 = (cljs.core.truth_(d)?d:(function (){var x__4219__auto__ = cljs.core.count(mantissa);
  var y__4220__auto__ = (function (){var x__4222__auto__ = n;
  var y__4223__auto__ = (7);
  return ((x__4222__auto__ < y__4223__auto__) ? x__4222__auto__ : y__4223__auto__);
  })();
  return ((x__4219__auto__ > y__4220__auto__) ? x__4219__auto__ : y__4220__auto__);
  })());
  var dd = (d__$1 - n);
  if(((((0) <= dd)) && ((dd <= d__$1)))){
  var navigator__$1 = cljs.pprint.fixed_float(new cljs.core.PersistentArrayMap(null, 6, [cljs.core.cst$kw$w,ww,cljs.core.cst$kw$d,dd,cljs.core.cst$kw$k,(0),cljs.core.cst$kw$overflowchar,cljs.core.cst$kw$overflowchar.cljs$core$IFn$_invoke$arity$1(params),cljs.core.cst$kw$padchar,cljs.core.cst$kw$padchar.cljs$core$IFn$_invoke$arity$1(params),cljs.core.cst$kw$at,cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params)], null),navigator,offsets);
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(ee," "))], 0));
  
  return navigator__$1;
  } else {
  return cljs.pprint.exponential_float(params,navigator,offsets);
  }
  });
  cljs.pprint.dollar_float = (function cljs$pprint$dollar_float(params,navigator,offsets){
  var vec__14070 = cljs.pprint.next_arg(navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14070,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14070,(1),null);
  var vec__14073 = cljs.pprint.float_parts(Math.abs(arg));
  var mantissa = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14073,(0),null);
  var exp = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14073,(1),null);
  var d = cljs.core.cst$kw$d.cljs$core$IFn$_invoke$arity$1(params);
  var n = cljs.core.cst$kw$n.cljs$core$IFn$_invoke$arity$1(params);
  var w = cljs.core.cst$kw$w.cljs$core$IFn$_invoke$arity$1(params);
  var add_sign = (function (){var or__4131__auto__ = cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return (arg < (0));
  }
  })();
  var vec__14076 = cljs.pprint.round_str(mantissa,exp,d,null);
  var rounded_mantissa = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14076,(0),null);
  var scaled_exp = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14076,(1),null);
  var expanded = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14076,(2),null);
  var fixed_repr = cljs.pprint.get_fixed(rounded_mantissa,(cljs.core.truth_(expanded)?(scaled_exp + (1)):scaled_exp),d);
  var full_repr = [cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((n - fixed_repr.indexOf(".")),"0"))),fixed_repr].join('');
  var full_len = (cljs.core.count(full_repr) + (cljs.core.truth_(add_sign)?(1):(0)));
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[(cljs.core.truth_((function (){var and__4120__auto__ = cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_(and__4120__auto__)){
  return add_sign;
  } else {
  return and__4120__auto__;
  }
  })())?(((arg < (0)))?"-":"+"):null),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((w - full_len),cljs.core.cst$kw$padchar.cljs$core$IFn$_invoke$arity$1(params)))),(cljs.core.truth_((function (){var and__4120__auto__ = cljs.core.not(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params));
  if(and__4120__auto__){
  return add_sign;
  } else {
  return and__4120__auto__;
  }
  })())?(((arg < (0)))?"-":"+"):null),full_repr].join('')], 0));
  
  return navigator__$1;
  });
  cljs.pprint.choice_conditional = (function cljs$pprint$choice_conditional(params,arg_navigator,offsets){
  var arg = cljs.core.cst$kw$selector.cljs$core$IFn$_invoke$arity$1(params);
  var vec__14079 = (cljs.core.truth_(arg)?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [arg,arg_navigator], null):cljs.pprint.next_arg(arg_navigator));
  var arg__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14079,(0),null);
  var navigator = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14079,(1),null);
  var clauses = cljs.core.cst$kw$clauses.cljs$core$IFn$_invoke$arity$1(params);
  var clause = (((((arg__$1 < (0))) || ((arg__$1 >= cljs.core.count(clauses)))))?cljs.core.first(cljs.core.cst$kw$else.cljs$core$IFn$_invoke$arity$1(params)):cljs.core.nth.cljs$core$IFn$_invoke$arity$2(clauses,arg__$1));
  if(cljs.core.truth_(clause)){
  return cljs.pprint.execute_sub_format(clause,navigator,cljs.core.cst$kw$base_DASH_args.cljs$core$IFn$_invoke$arity$1(params));
  } else {
  return navigator;
  }
  });
  cljs.pprint.boolean_conditional = (function cljs$pprint$boolean_conditional(params,arg_navigator,offsets){
  var vec__14082 = cljs.pprint.next_arg(arg_navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14082,(0),null);
  var navigator = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14082,(1),null);
  var clauses = cljs.core.cst$kw$clauses.cljs$core$IFn$_invoke$arity$1(params);
  var clause = (cljs.core.truth_(arg)?cljs.core.second(clauses):cljs.core.first(clauses));
  if(cljs.core.truth_(clause)){
  return cljs.pprint.execute_sub_format(clause,navigator,cljs.core.cst$kw$base_DASH_args.cljs$core$IFn$_invoke$arity$1(params));
  } else {
  return navigator;
  }
  });
  cljs.pprint.check_arg_conditional = (function cljs$pprint$check_arg_conditional(params,arg_navigator,offsets){
  var vec__14085 = cljs.pprint.next_arg(arg_navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14085,(0),null);
  var navigator = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14085,(1),null);
  var clauses = cljs.core.cst$kw$clauses.cljs$core$IFn$_invoke$arity$1(params);
  var clause = (cljs.core.truth_(arg)?cljs.core.first(clauses):null);
  if(cljs.core.truth_(arg)){
  if(cljs.core.truth_(clause)){
  return cljs.pprint.execute_sub_format(clause,arg_navigator,cljs.core.cst$kw$base_DASH_args.cljs$core$IFn$_invoke$arity$1(params));
  } else {
  return arg_navigator;
  }
  } else {
  return navigator;
  }
  });
  cljs.pprint.iterate_sublist = (function cljs$pprint$iterate_sublist(params,navigator,offsets){
  var max_count = cljs.core.cst$kw$max_DASH_iterations.cljs$core$IFn$_invoke$arity$1(params);
  var param_clause = cljs.core.first(cljs.core.cst$kw$clauses.cljs$core$IFn$_invoke$arity$1(params));
  var vec__14088 = ((cljs.core.empty_QMARK_(param_clause))?cljs.pprint.get_format_arg(navigator):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [param_clause,navigator], null));
  var clause = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14088,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14088,(1),null);
  var vec__14091 = cljs.pprint.next_arg(navigator__$1);
  var arg_list = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14091,(0),null);
  var navigator__$2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14091,(1),null);
  var args = cljs.pprint.init_navigator(arg_list);
  var count = (0);
  var args__$1 = args;
  var last_pos = ((-1) | (0));
  while(true){
  if(((cljs.core.not(max_count)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(args__$1),last_pos)) && ((count > (1))))){
  throw Error("%{ construct not consuming any arguments: Infinite loop!");
  } else {
  }
  
  if(cljs.core.truth_((function (){var or__4131__auto__ = ((cljs.core.empty_QMARK_(cljs.core.cst$kw$rest.cljs$core$IFn$_invoke$arity$1(args__$1))) && (((cljs.core.not(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$right_DASH_params.cljs$core$IFn$_invoke$arity$1(params)))) || ((count > (0))))));
  if(or__4131__auto__){
  return or__4131__auto__;
  } else {
  var and__4120__auto__ = max_count;
  if(cljs.core.truth_(and__4120__auto__)){
  return (count >= max_count);
  } else {
  return and__4120__auto__;
  }
  }
  })())){
  return navigator__$2;
  } else {
  var iter_result = cljs.pprint.execute_sub_format(clause,args__$1,cljs.core.cst$kw$base_DASH_args.cljs$core$IFn$_invoke$arity$1(params));
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$up_DASH_arrow,cljs.core.first(iter_result))){
  return navigator__$2;
  } else {
  var G__14094 = (count + (1));
  var G__14095 = iter_result;
  var G__14096 = cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(args__$1);
  count = G__14094;
  args__$1 = G__14095;
  last_pos = G__14096;
  continue;
  }
  }
  break;
  }
  });
  cljs.pprint.iterate_list_of_sublists = (function cljs$pprint$iterate_list_of_sublists(params,navigator,offsets){
  var max_count = cljs.core.cst$kw$max_DASH_iterations.cljs$core$IFn$_invoke$arity$1(params);
  var param_clause = cljs.core.first(cljs.core.cst$kw$clauses.cljs$core$IFn$_invoke$arity$1(params));
  var vec__14097 = ((cljs.core.empty_QMARK_(param_clause))?cljs.pprint.get_format_arg(navigator):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [param_clause,navigator], null));
  var clause = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14097,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14097,(1),null);
  var vec__14100 = cljs.pprint.next_arg(navigator__$1);
  var arg_list = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14100,(0),null);
  var navigator__$2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14100,(1),null);
  var count = (0);
  var arg_list__$1 = arg_list;
  while(true){
  if(cljs.core.truth_((function (){var or__4131__auto__ = ((cljs.core.empty_QMARK_(arg_list__$1)) && (((cljs.core.not(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$right_DASH_params.cljs$core$IFn$_invoke$arity$1(params)))) || ((count > (0))))));
  if(or__4131__auto__){
  return or__4131__auto__;
  } else {
  var and__4120__auto__ = max_count;
  if(cljs.core.truth_(and__4120__auto__)){
  return (count >= max_count);
  } else {
  return and__4120__auto__;
  }
  }
  })())){
  return navigator__$2;
  } else {
  var iter_result = cljs.pprint.execute_sub_format(clause,cljs.pprint.init_navigator(cljs.core.first(arg_list__$1)),cljs.pprint.init_navigator(cljs.core.next(arg_list__$1)));
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$colon_DASH_up_DASH_arrow,cljs.core.first(iter_result))){
  return navigator__$2;
  } else {
  var G__14103 = (count + (1));
  var G__14104 = cljs.core.next(arg_list__$1);
  count = G__14103;
  arg_list__$1 = G__14104;
  continue;
  }
  }
  break;
  }
  });
  cljs.pprint.iterate_main_list = (function cljs$pprint$iterate_main_list(params,navigator,offsets){
  var max_count = cljs.core.cst$kw$max_DASH_iterations.cljs$core$IFn$_invoke$arity$1(params);
  var param_clause = cljs.core.first(cljs.core.cst$kw$clauses.cljs$core$IFn$_invoke$arity$1(params));
  var vec__14105 = ((cljs.core.empty_QMARK_(param_clause))?cljs.pprint.get_format_arg(navigator):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [param_clause,navigator], null));
  var clause = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14105,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14105,(1),null);
  var count = (0);
  var navigator__$2 = navigator__$1;
  var last_pos = ((-1) | (0));
  while(true){
  if(((cljs.core.not(max_count)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(navigator__$2),last_pos)) && ((count > (1))))){
  throw Error("%@{ construct not consuming any arguments: Infinite loop!");
  } else {
  }
  
  if(cljs.core.truth_((function (){var or__4131__auto__ = ((cljs.core.empty_QMARK_(cljs.core.cst$kw$rest.cljs$core$IFn$_invoke$arity$1(navigator__$2))) && (((cljs.core.not(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$right_DASH_params.cljs$core$IFn$_invoke$arity$1(params)))) || ((count > (0))))));
  if(or__4131__auto__){
  return or__4131__auto__;
  } else {
  var and__4120__auto__ = max_count;
  if(cljs.core.truth_(and__4120__auto__)){
  return (count >= max_count);
  } else {
  return and__4120__auto__;
  }
  }
  })())){
  return navigator__$2;
  } else {
  var iter_result = cljs.pprint.execute_sub_format(clause,navigator__$2,cljs.core.cst$kw$base_DASH_args.cljs$core$IFn$_invoke$arity$1(params));
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$up_DASH_arrow,cljs.core.first(iter_result))){
  return cljs.core.second(iter_result);
  } else {
  var G__14108 = (count + (1));
  var G__14109 = iter_result;
  var G__14110 = cljs.core.cst$kw$pos.cljs$core$IFn$_invoke$arity$1(navigator__$2);
  count = G__14108;
  navigator__$2 = G__14109;
  last_pos = G__14110;
  continue;
  }
  }
  break;
  }
  });
  cljs.pprint.iterate_main_sublists = (function cljs$pprint$iterate_main_sublists(params,navigator,offsets){
  var max_count = cljs.core.cst$kw$max_DASH_iterations.cljs$core$IFn$_invoke$arity$1(params);
  var param_clause = cljs.core.first(cljs.core.cst$kw$clauses.cljs$core$IFn$_invoke$arity$1(params));
  var vec__14111 = ((cljs.core.empty_QMARK_(param_clause))?cljs.pprint.get_format_arg(navigator):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [param_clause,navigator], null));
  var clause = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14111,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14111,(1),null);
  var count = (0);
  var navigator__$2 = navigator__$1;
  while(true){
  if(cljs.core.truth_((function (){var or__4131__auto__ = ((cljs.core.empty_QMARK_(cljs.core.cst$kw$rest.cljs$core$IFn$_invoke$arity$1(navigator__$2))) && (((cljs.core.not(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$right_DASH_params.cljs$core$IFn$_invoke$arity$1(params)))) || ((count > (0))))));
  if(or__4131__auto__){
  return or__4131__auto__;
  } else {
  var and__4120__auto__ = max_count;
  if(cljs.core.truth_(and__4120__auto__)){
  return (count >= max_count);
  } else {
  return and__4120__auto__;
  }
  }
  })())){
  return navigator__$2;
  } else {
  var vec__14117 = cljs.pprint.next_arg_or_nil(navigator__$2);
  var sublist = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14117,(0),null);
  var navigator__$3 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14117,(1),null);
  var iter_result = cljs.pprint.execute_sub_format(clause,cljs.pprint.init_navigator(sublist),navigator__$3);
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$colon_DASH_up_DASH_arrow,cljs.core.first(iter_result))){
  return navigator__$3;
  } else {
  var G__14120 = (count + (1));
  var G__14121 = navigator__$3;
  count = G__14120;
  navigator__$2 = G__14121;
  continue;
  }
  }
  break;
  }
  });
  cljs.pprint.logical_block_or_justify = (function cljs$pprint$logical_block_or_justify(params,navigator,offsets){
  if(cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$right_DASH_params.cljs$core$IFn$_invoke$arity$1(params)))){
  return cljs.pprint.format_logical_block(params,navigator,offsets);
  } else {
  return cljs.pprint.justify_clauses(params,navigator,offsets);
  }
  });
  cljs.pprint.render_clauses = (function cljs$pprint$render_clauses(clauses,navigator,base_navigator){
  var clauses__$1 = clauses;
  var acc = cljs.core.PersistentVector.EMPTY;
  var navigator__$1 = navigator;
  while(true){
  if(cljs.core.empty_QMARK_(clauses__$1)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [acc,navigator__$1], null);
  } else {
  var clause = cljs.core.first(clauses__$1);
  var vec__14127 = (function (){var sb = (new goog.string.StringBuffer());
  var _STAR_out_STAR__orig_val__14130 = cljs.core._STAR_out_STAR_;
  var _STAR_out_STAR__temp_val__14131 = (new cljs.core.StringBufferWriter(sb));
  cljs.core._STAR_out_STAR_ = _STAR_out_STAR__temp_val__14131;
  
  try{return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.pprint.execute_sub_format(clause,navigator__$1,base_navigator),cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb)], null);
  }finally {cljs.core._STAR_out_STAR_ = _STAR_out_STAR__orig_val__14130;
  }})();
  var iter_result = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14127,(0),null);
  var result_str = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14127,(1),null);
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$up_DASH_arrow,cljs.core.first(iter_result))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [acc,cljs.core.second(iter_result)], null);
  } else {
  var G__14132 = cljs.core.next(clauses__$1);
  var G__14133 = cljs.core.conj.cljs$core$IFn$_invoke$arity$2(acc,result_str);
  var G__14134 = iter_result;
  clauses__$1 = G__14132;
  acc = G__14133;
  navigator__$1 = G__14134;
  continue;
  }
  }
  break;
  }
  });
  cljs.pprint.justify_clauses = (function cljs$pprint$justify_clauses(params,navigator,offsets){
  var vec__14135 = (function (){var temp__5720__auto__ = cljs.core.cst$kw$else.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_(temp__5720__auto__)){
  var else$ = temp__5720__auto__;
  return cljs.pprint.render_clauses(else$,navigator,cljs.core.cst$kw$base_DASH_args.cljs$core$IFn$_invoke$arity$1(params));
  } else {
  return null;
  }
  })();
  var vec__14138 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14135,(0),null);
  var eol_str = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14138,(0),null);
  var new_navigator = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14135,(1),null);
  var navigator__$1 = (function (){var or__4131__auto__ = new_navigator;
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return navigator;
  }
  })();
  var vec__14141 = (function (){var temp__5720__auto__ = cljs.core.cst$kw$else_DASH_params.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_(temp__5720__auto__)){
  var p = temp__5720__auto__;
  return cljs.pprint.realize_parameter_list(p,navigator__$1);
  } else {
  return null;
  }
  })();
  var else_params = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14141,(0),null);
  var new_navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14141,(1),null);
  var navigator__$2 = (function (){var or__4131__auto__ = new_navigator__$1;
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return navigator__$1;
  }
  })();
  var min_remaining = (function (){var or__4131__auto__ = cljs.core.first(cljs.core.cst$kw$min_DASH_remaining.cljs$core$IFn$_invoke$arity$1(else_params));
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return (0);
  }
  })();
  var max_columns = (function (){var or__4131__auto__ = cljs.core.first(cljs.core.cst$kw$max_DASH_columns.cljs$core$IFn$_invoke$arity$1(else_params));
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return cljs.pprint.get_max_column(cljs.core._STAR_out_STAR_);
  }
  })();
  var clauses = cljs.core.cst$kw$clauses.cljs$core$IFn$_invoke$arity$1(params);
  var vec__14144 = cljs.pprint.render_clauses(clauses,navigator__$2,cljs.core.cst$kw$base_DASH_args.cljs$core$IFn$_invoke$arity$1(params));
  var strs = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14144,(0),null);
  var navigator__$3 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14144,(1),null);
  var slots = (function (){var x__4219__auto__ = (1);
  var y__4220__auto__ = (((cljs.core.count(strs) - (1)) + (cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))?(1):(0))) + (cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))?(1):(0)));
  return ((x__4219__auto__ > y__4220__auto__) ? x__4219__auto__ : y__4220__auto__);
  })();
  var chars = cljs.core.reduce.cljs$core$IFn$_invoke$arity$2(cljs.core._PLUS_,cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.count,strs));
  var mincol = cljs.core.cst$kw$mincol.cljs$core$IFn$_invoke$arity$1(params);
  var minpad = cljs.core.cst$kw$minpad.cljs$core$IFn$_invoke$arity$1(params);
  var colinc = cljs.core.cst$kw$colinc.cljs$core$IFn$_invoke$arity$1(params);
  var minout = (chars + (slots * minpad));
  var result_columns = (((minout <= mincol))?mincol:(mincol + (colinc * ((1) + cljs.core.quot(((minout - mincol) - (1)),colinc)))));
  var total_pad = (result_columns - chars);
  var pad = (function (){var x__4219__auto__ = minpad;
  var y__4220__auto__ = cljs.core.quot(total_pad,slots);
  return ((x__4219__auto__ > y__4220__auto__) ? x__4219__auto__ : y__4220__auto__);
  })();
  var extra_pad = (total_pad - (pad * slots));
  var pad_str = cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(pad,cljs.core.cst$kw$padchar.cljs$core$IFn$_invoke$arity$1(params)));
  if(cljs.core.truth_((function (){var and__4120__auto__ = eol_str;
  if(cljs.core.truth_(and__4120__auto__)){
  return (((cljs.pprint.get_column(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(cljs.core._STAR_out_STAR_)))) + min_remaining) + result_columns) > max_columns);
  } else {
  return and__4120__auto__;
  }
  })())){
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([eol_str], 0));
  } else {
  }
  
  var slots_14147__$1 = slots;
  var extra_pad_14148__$1 = extra_pad;
  var strs_14149__$1 = strs;
  var pad_only_14150 = (function (){var or__4131__auto__ = cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(strs_14149__$1),(1))) && (cljs.core.not(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))));
  }
  })();
  while(true){
  if(cljs.core.seq(strs_14149__$1)){
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[cljs.core.str.cljs$core$IFn$_invoke$arity$1(((cljs.core.not(pad_only_14150))?cljs.core.first(strs_14149__$1):null)),cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_((function (){var or__4131__auto__ = pad_only_14150;
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  var or__4131__auto____$1 = cljs.core.next(strs_14149__$1);
  if(or__4131__auto____$1){
  return or__4131__auto____$1;
  } else {
  return cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params);
  }
  }
  })())?pad_str:null)),cljs.core.str.cljs$core$IFn$_invoke$arity$1((((extra_pad_14148__$1 > (0)))?cljs.core.cst$kw$padchar.cljs$core$IFn$_invoke$arity$1(params):null))].join('')], 0));
  
  var G__14151 = (slots_14147__$1 - (1));
  var G__14152 = (extra_pad_14148__$1 - (1));
  var G__14153 = (cljs.core.truth_(pad_only_14150)?strs_14149__$1:cljs.core.next(strs_14149__$1));
  var G__14154 = false;
  slots_14147__$1 = G__14151;
  extra_pad_14148__$1 = G__14152;
  strs_14149__$1 = G__14153;
  pad_only_14150 = G__14154;
  continue;
  } else {
  }
  break;
  }
  
  return navigator__$3;
  });
  /**
   * Returns a proxy that wraps writer, converting all characters to lower case
   */
  cljs.pprint.downcase_writer = (function cljs$pprint$downcase_writer(writer){
  if((typeof cljs !== 'undefined') && (typeof cljs.pprint !== 'undefined') && (typeof cljs.pprint.t_cljs$pprint14155 !== 'undefined')){
  } else {
  
  /**
  * @constructor
   * @implements {cljs.core.IWriter}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.IWithMeta}
  */
  cljs.pprint.t_cljs$pprint14155 = (function (writer,meta14156){
  this.writer = writer;
  this.meta14156 = meta14156;
  this.cljs$lang$protocol_mask$partition0$ = 1074135040;
  this.cljs$lang$protocol_mask$partition1$ = 0;
  });
  cljs.pprint.t_cljs$pprint14155.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_14157,meta14156__$1){
  var self__ = this;
  var _14157__$1 = this;
  return (new cljs.pprint.t_cljs$pprint14155(self__.writer,meta14156__$1));
  });
  
  cljs.pprint.t_cljs$pprint14155.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_14157){
  var self__ = this;
  var _14157__$1 = this;
  return self__.meta14156;
  });
  
  cljs.pprint.t_cljs$pprint14155.prototype.cljs$core$IWriter$_flush$arity$1 = (function (_){
  var self__ = this;
  var ___$1 = this;
  return cljs.core._flush(self__.writer);
  });
  
  cljs.pprint.t_cljs$pprint14155.prototype.cljs$core$IWriter$_write$arity$2 = (function (this$,x){
  var self__ = this;
  var this$__$1 = this;
  var pred__14158 = cljs.core._EQ_;
  var expr__14159 = cljs.core.type(x);
  if(cljs.core.truth_((pred__14158.cljs$core$IFn$_invoke$arity$2 ? pred__14158.cljs$core$IFn$_invoke$arity$2(String,expr__14159) : pred__14158.call(null,String,expr__14159)))){
  var s = x;
  return cljs.core._write(self__.writer,clojure.string.lower_case(s));
  } else {
  if(cljs.core.truth_((pred__14158.cljs$core$IFn$_invoke$arity$2 ? pred__14158.cljs$core$IFn$_invoke$arity$2(Number,expr__14159) : pred__14158.call(null,Number,expr__14159)))){
  var c = x;
  return cljs.core._write(self__.writer,clojure.string.lower_case(cljs.core.char$(c)));
  } else {
  throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__14159)].join('')));
  }
  }
  });
  
  cljs.pprint.t_cljs$pprint14155.getBasis = (function (){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$writer,cljs.core.cst$sym$meta14156], null);
  });
  
  cljs.pprint.t_cljs$pprint14155.cljs$lang$type = true;
  
  cljs.pprint.t_cljs$pprint14155.cljs$lang$ctorStr = "cljs.pprint/t_cljs$pprint14155";
  
  cljs.pprint.t_cljs$pprint14155.cljs$lang$ctorPrWriter = (function (this__4374__auto__,writer__4375__auto__,opt__4376__auto__){
  return cljs.core._write(writer__4375__auto__,"cljs.pprint/t_cljs$pprint14155");
  });
  
  /**
   * Positional factory function for cljs.pprint/t_cljs$pprint14155.
   */
  cljs.pprint.__GT_t_cljs$pprint14155 = (function cljs$pprint$downcase_writer_$___GT_t_cljs$pprint14155(writer__$1,meta14156){
  return (new cljs.pprint.t_cljs$pprint14155(writer__$1,meta14156));
  });
  
  }
  
  return (new cljs.pprint.t_cljs$pprint14155(writer,cljs.core.PersistentArrayMap.EMPTY));
  });
  /**
   * Returns a proxy that wraps writer, converting all characters to upper case
   */
  cljs.pprint.upcase_writer = (function cljs$pprint$upcase_writer(writer){
  if((typeof cljs !== 'undefined') && (typeof cljs.pprint !== 'undefined') && (typeof cljs.pprint.t_cljs$pprint14161 !== 'undefined')){
  } else {
  
  /**
  * @constructor
   * @implements {cljs.core.IWriter}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.IWithMeta}
  */
  cljs.pprint.t_cljs$pprint14161 = (function (writer,meta14162){
  this.writer = writer;
  this.meta14162 = meta14162;
  this.cljs$lang$protocol_mask$partition0$ = 1074135040;
  this.cljs$lang$protocol_mask$partition1$ = 0;
  });
  cljs.pprint.t_cljs$pprint14161.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_14163,meta14162__$1){
  var self__ = this;
  var _14163__$1 = this;
  return (new cljs.pprint.t_cljs$pprint14161(self__.writer,meta14162__$1));
  });
  
  cljs.pprint.t_cljs$pprint14161.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_14163){
  var self__ = this;
  var _14163__$1 = this;
  return self__.meta14162;
  });
  
  cljs.pprint.t_cljs$pprint14161.prototype.cljs$core$IWriter$_flush$arity$1 = (function (_){
  var self__ = this;
  var ___$1 = this;
  return cljs.core._flush(self__.writer);
  });
  
  cljs.pprint.t_cljs$pprint14161.prototype.cljs$core$IWriter$_write$arity$2 = (function (this$,x){
  var self__ = this;
  var this$__$1 = this;
  var pred__14164 = cljs.core._EQ_;
  var expr__14165 = cljs.core.type(x);
  if(cljs.core.truth_((pred__14164.cljs$core$IFn$_invoke$arity$2 ? pred__14164.cljs$core$IFn$_invoke$arity$2(String,expr__14165) : pred__14164.call(null,String,expr__14165)))){
  var s = x;
  return cljs.core._write(self__.writer,clojure.string.upper_case(s));
  } else {
  if(cljs.core.truth_((pred__14164.cljs$core$IFn$_invoke$arity$2 ? pred__14164.cljs$core$IFn$_invoke$arity$2(Number,expr__14165) : pred__14164.call(null,Number,expr__14165)))){
  var c = x;
  return cljs.core._write(self__.writer,clojure.string.upper_case(cljs.core.char$(c)));
  } else {
  throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__14165)].join('')));
  }
  }
  });
  
  cljs.pprint.t_cljs$pprint14161.getBasis = (function (){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$writer,cljs.core.cst$sym$meta14162], null);
  });
  
  cljs.pprint.t_cljs$pprint14161.cljs$lang$type = true;
  
  cljs.pprint.t_cljs$pprint14161.cljs$lang$ctorStr = "cljs.pprint/t_cljs$pprint14161";
  
  cljs.pprint.t_cljs$pprint14161.cljs$lang$ctorPrWriter = (function (this__4374__auto__,writer__4375__auto__,opt__4376__auto__){
  return cljs.core._write(writer__4375__auto__,"cljs.pprint/t_cljs$pprint14161");
  });
  
  /**
   * Positional factory function for cljs.pprint/t_cljs$pprint14161.
   */
  cljs.pprint.__GT_t_cljs$pprint14161 = (function cljs$pprint$upcase_writer_$___GT_t_cljs$pprint14161(writer__$1,meta14162){
  return (new cljs.pprint.t_cljs$pprint14161(writer__$1,meta14162));
  });
  
  }
  
  return (new cljs.pprint.t_cljs$pprint14161(writer,cljs.core.PersistentArrayMap.EMPTY));
  });
  /**
   * Capitalizes the words in a string. If first? is false, don't capitalize the
   *                                    first character of the string even if it's a letter.
   */
  cljs.pprint.capitalize_string = (function cljs$pprint$capitalize_string(s,first_QMARK_){
  var f = cljs.core.first(s);
  var s__$1 = (cljs.core.truth_((function (){var and__4120__auto__ = first_QMARK_;
  if(cljs.core.truth_(and__4120__auto__)){
  var and__4120__auto____$1 = f;
  if(cljs.core.truth_(and__4120__auto____$1)){
  return goog.string.isUnicodeChar(f);
  } else {
  return and__4120__auto____$1;
  }
  } else {
  return and__4120__auto__;
  }
  })())?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(clojure.string.upper_case(f)),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(1)))].join(''):s);
  return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.first(cljs.pprint.consume(((function (f,s__$1){
  return (function (s__$2){
  if(cljs.core.empty_QMARK_(s__$2)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null], null);
  } else {
  var m = RegExp("\\W\\w","g").exec(s__$2);
  var offset = (function (){var and__4120__auto__ = m;
  if(cljs.core.truth_(and__4120__auto__)){
  return (m.index + (1));
  } else {
  return and__4120__auto__;
  }
  })();
  if(cljs.core.truth_(offset)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s__$2,(0),offset)),cljs.core.str.cljs$core$IFn$_invoke$arity$1(clojure.string.upper_case(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s__$2,offset)))].join(''),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s__$2,(offset + (1)))], null);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [s__$2,null], null);
  }
  }
  });})(f,s__$1))
  ,s__$1)));
  });
  /**
   * Returns a proxy that wraps writer, capitalizing all words
   */
  cljs.pprint.capitalize_word_writer = (function cljs$pprint$capitalize_word_writer(writer){
  var last_was_whitespace_QMARK_ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(true);
  if((typeof cljs !== 'undefined') && (typeof cljs.pprint !== 'undefined') && (typeof cljs.pprint.t_cljs$pprint14167 !== 'undefined')){
  } else {
  
  /**
  * @constructor
   * @implements {cljs.core.IWriter}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.IWithMeta}
  */
  cljs.pprint.t_cljs$pprint14167 = (function (writer,last_was_whitespace_QMARK_,meta14168){
  this.writer = writer;
  this.last_was_whitespace_QMARK_ = last_was_whitespace_QMARK_;
  this.meta14168 = meta14168;
  this.cljs$lang$protocol_mask$partition0$ = 1074135040;
  this.cljs$lang$protocol_mask$partition1$ = 0;
  });
  cljs.pprint.t_cljs$pprint14167.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = ((function (last_was_whitespace_QMARK_){
  return (function (_14169,meta14168__$1){
  var self__ = this;
  var _14169__$1 = this;
  return (new cljs.pprint.t_cljs$pprint14167(self__.writer,self__.last_was_whitespace_QMARK_,meta14168__$1));
  });})(last_was_whitespace_QMARK_))
  ;
  
  cljs.pprint.t_cljs$pprint14167.prototype.cljs$core$IMeta$_meta$arity$1 = ((function (last_was_whitespace_QMARK_){
  return (function (_14169){
  var self__ = this;
  var _14169__$1 = this;
  return self__.meta14168;
  });})(last_was_whitespace_QMARK_))
  ;
  
  cljs.pprint.t_cljs$pprint14167.prototype.cljs$core$IWriter$_flush$arity$1 = ((function (last_was_whitespace_QMARK_){
  return (function (_){
  var self__ = this;
  var ___$1 = this;
  return cljs.core._flush(self__.writer);
  });})(last_was_whitespace_QMARK_))
  ;
  
  cljs.pprint.t_cljs$pprint14167.prototype.cljs$core$IWriter$_write$arity$2 = ((function (last_was_whitespace_QMARK_){
  return (function (this$,x){
  var self__ = this;
  var this$__$1 = this;
  var pred__14170 = cljs.core._EQ_;
  var expr__14171 = cljs.core.type(x);
  if(cljs.core.truth_((pred__14170.cljs$core$IFn$_invoke$arity$2 ? pred__14170.cljs$core$IFn$_invoke$arity$2(String,expr__14171) : pred__14170.call(null,String,expr__14171)))){
  var s = x;
  cljs.core._write(self__.writer,cljs.pprint.capitalize_string(s.toLowerCase(),cljs.core.deref(self__.last_was_whitespace_QMARK_)));
  
  if((s.length > (0))){
  return cljs.core.reset_BANG_(self__.last_was_whitespace_QMARK_,(function (){var G__14173 = cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s,(cljs.core.count(s) - (1)));
  return goog.string.isEmptyOrWhitespace(G__14173);
  })());
  } else {
  return null;
  }
  } else {
  if(cljs.core.truth_((pred__14170.cljs$core$IFn$_invoke$arity$2 ? pred__14170.cljs$core$IFn$_invoke$arity$2(Number,expr__14171) : pred__14170.call(null,Number,expr__14171)))){
  var c = cljs.core.char$(x);
  var mod_c = (cljs.core.truth_(cljs.core.deref(self__.last_was_whitespace_QMARK_))?clojure.string.upper_case(c):c);
  cljs.core._write(self__.writer,mod_c);
  
  return cljs.core.reset_BANG_(self__.last_was_whitespace_QMARK_,goog.string.isEmptyOrWhitespace(c));
  } else {
  throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__14171)].join('')));
  }
  }
  });})(last_was_whitespace_QMARK_))
  ;
  
  cljs.pprint.t_cljs$pprint14167.getBasis = ((function (last_was_whitespace_QMARK_){
  return (function (){
  return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$writer,cljs.core.cst$sym$last_DASH_was_DASH_whitespace_QMARK_,cljs.core.cst$sym$meta14168], null);
  });})(last_was_whitespace_QMARK_))
  ;
  
  cljs.pprint.t_cljs$pprint14167.cljs$lang$type = true;
  
  cljs.pprint.t_cljs$pprint14167.cljs$lang$ctorStr = "cljs.pprint/t_cljs$pprint14167";
  
  cljs.pprint.t_cljs$pprint14167.cljs$lang$ctorPrWriter = ((function (last_was_whitespace_QMARK_){
  return (function (this__4374__auto__,writer__4375__auto__,opt__4376__auto__){
  return cljs.core._write(writer__4375__auto__,"cljs.pprint/t_cljs$pprint14167");
  });})(last_was_whitespace_QMARK_))
  ;
  
  /**
   * Positional factory function for cljs.pprint/t_cljs$pprint14167.
   */
  cljs.pprint.__GT_t_cljs$pprint14167 = ((function (last_was_whitespace_QMARK_){
  return (function cljs$pprint$capitalize_word_writer_$___GT_t_cljs$pprint14167(writer__$1,last_was_whitespace_QMARK___$1,meta14168){
  return (new cljs.pprint.t_cljs$pprint14167(writer__$1,last_was_whitespace_QMARK___$1,meta14168));
  });})(last_was_whitespace_QMARK_))
  ;
  
  }
  
  return (new cljs.pprint.t_cljs$pprint14167(writer,last_was_whitespace_QMARK_,cljs.core.PersistentArrayMap.EMPTY));
  });
  /**
   * Returns a proxy that wraps writer, capitalizing the first word
   */
  cljs.pprint.init_cap_writer = (function cljs$pprint$init_cap_writer(writer){
  var capped = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(false);
  if((typeof cljs !== 'undefined') && (typeof cljs.pprint !== 'undefined') && (typeof cljs.pprint.t_cljs$pprint14174 !== 'undefined')){
  } else {
  
  /**
  * @constructor
   * @implements {cljs.core.IWriter}
   * @implements {cljs.core.IMeta}
   * @implements {cljs.core.IWithMeta}
  */
  cljs.pprint.t_cljs$pprint14174 = (function (writer,capped,meta14175){
  this.writer = writer;
  this.capped = capped;
  this.meta14175 = meta14175;
  this.cljs$lang$protocol_mask$partition0$ = 1074135040;
  this.cljs$lang$protocol_mask$partition1$ = 0;
  });
  cljs.pprint.t_cljs$pprint14174.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = ((function (capped){
  return (function (_14176,meta14175__$1){
  var self__ = this;
  var _14176__$1 = this;
  return (new cljs.pprint.t_cljs$pprint14174(self__.writer,self__.capped,meta14175__$1));
  });})(capped))
  ;
  
  cljs.pprint.t_cljs$pprint14174.prototype.cljs$core$IMeta$_meta$arity$1 = ((function (capped){
  return (function (_14176){
  var self__ = this;
  var _14176__$1 = this;
  return self__.meta14175;
  });})(capped))
  ;
  
  cljs.pprint.t_cljs$pprint14174.prototype.cljs$core$IWriter$_flush$arity$1 = ((function (capped){
  return (function (_){
  var self__ = this;
  var ___$1 = this;
  return cljs.core._flush(self__.writer);
  });})(capped))
  ;
  
  cljs.pprint.t_cljs$pprint14174.prototype.cljs$core$IWriter$_write$arity$2 = ((function (capped){
  return (function (this$,x){
  var self__ = this;
  var this$__$1 = this;
  var pred__14177 = cljs.core._EQ_;
  var expr__14178 = cljs.core.type(x);
  if(cljs.core.truth_((pred__14177.cljs$core$IFn$_invoke$arity$2 ? pred__14177.cljs$core$IFn$_invoke$arity$2(String,expr__14178) : pred__14177.call(null,String,expr__14178)))){
  var s = clojure.string.lower_case(x);
  if(cljs.core.not(cljs.core.deref(self__.capped))){
  var m = RegExp("\\S","g").exec(s);
  var offset = (function (){var and__4120__auto__ = m;
  if(cljs.core.truth_(and__4120__auto__)){
  return m.index;
  } else {
  return and__4120__auto__;
  }
  })();
  if(cljs.core.truth_(offset)){
  cljs.core._write(self__.writer,[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),offset)),cljs.core.str.cljs$core$IFn$_invoke$arity$1(clojure.string.upper_case(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s,offset))),cljs.core.str.cljs$core$IFn$_invoke$arity$1(clojure.string.lower_case(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(offset + (1)))))].join(''));
  
  return cljs.core.reset_BANG_(self__.capped,true);
  } else {
  return cljs.core._write(self__.writer,s);
  }
  } else {
  return cljs.core._write(self__.writer,clojure.string.lower_case(s));
  }
  } else {
  if(cljs.core.truth_((pred__14177.cljs$core$IFn$_invoke$arity$2 ? pred__14177.cljs$core$IFn$_invoke$arity$2(Number,expr__14178) : pred__14177.call(null,Number,expr__14178)))){
  var c = cljs.core.char$(x);
  if(cljs.core.truth_((function (){var and__4120__auto__ = cljs.core.not(cljs.core.deref(self__.capped));
  if(and__4120__auto__){
  return goog.string.isUnicodeChar(c);
  } else {
  return and__4120__auto__;
  }
  })())){
  cljs.core.reset_BANG_(self__.capped,true);
  
  return cljs.core._write(self__.writer,clojure.string.upper_case(c));
  } else {
  return cljs.core._write(self__.writer,clojure.string.lower_case(c));
  }
  } else {
  throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__14178)].join('')));
  }
  }
  });})(capped))
  ;
  
  cljs.pprint.t_cljs$pprint14174.getBasis = ((function (capped){
  return (function (){
  return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$writer,cljs.core.cst$sym$capped,cljs.core.cst$sym$meta14175], null);
  });})(capped))
  ;
  
  cljs.pprint.t_cljs$pprint14174.cljs$lang$type = true;
  
  cljs.pprint.t_cljs$pprint14174.cljs$lang$ctorStr = "cljs.pprint/t_cljs$pprint14174";
  
  cljs.pprint.t_cljs$pprint14174.cljs$lang$ctorPrWriter = ((function (capped){
  return (function (this__4374__auto__,writer__4375__auto__,opt__4376__auto__){
  return cljs.core._write(writer__4375__auto__,"cljs.pprint/t_cljs$pprint14174");
  });})(capped))
  ;
  
  /**
   * Positional factory function for cljs.pprint/t_cljs$pprint14174.
   */
  cljs.pprint.__GT_t_cljs$pprint14174 = ((function (capped){
  return (function cljs$pprint$init_cap_writer_$___GT_t_cljs$pprint14174(writer__$1,capped__$1,meta14175){
  return (new cljs.pprint.t_cljs$pprint14174(writer__$1,capped__$1,meta14175));
  });})(capped))
  ;
  
  }
  
  return (new cljs.pprint.t_cljs$pprint14174(writer,capped,cljs.core.PersistentArrayMap.EMPTY));
  });
  cljs.pprint.modify_case = (function cljs$pprint$modify_case(make_writer,params,navigator,offsets){
  var clause = cljs.core.first(cljs.core.cst$kw$clauses.cljs$core$IFn$_invoke$arity$1(params));
  var _STAR_out_STAR__orig_val__14180 = cljs.core._STAR_out_STAR_;
  var _STAR_out_STAR__temp_val__14181 = (make_writer.cljs$core$IFn$_invoke$arity$1 ? make_writer.cljs$core$IFn$_invoke$arity$1(cljs.core._STAR_out_STAR_) : make_writer.call(null,cljs.core._STAR_out_STAR_));
  cljs.core._STAR_out_STAR_ = _STAR_out_STAR__temp_val__14181;
  
  try{return cljs.pprint.execute_sub_format(clause,navigator,cljs.core.cst$kw$base_DASH_args.cljs$core$IFn$_invoke$arity$1(params));
  }finally {cljs.core._STAR_out_STAR_ = _STAR_out_STAR__orig_val__14180;
  }});
  /**
   * Returns the IWriter passed in wrapped in a pretty writer proxy, unless it's
   * already a pretty writer. Generally, it is unnecessary to call this function, since pprint,
   * write, and cl-format all call it if they need to. However if you want the state to be
   * preserved across calls, you will want to wrap them with this.
   * 
   * For example, when you want to generate column-aware output with multiple calls to cl-format,
   * do it like in this example:
   * 
   *  (defn print-table [aseq column-width]
   *    (binding [*out* (get-pretty-writer *out*)]
   *      (doseq [row aseq]
   *        (doseq [col row]
   *          (cl-format true "~4D~7,vT" col column-width))
   *        (prn))))
   * 
   * Now when you run:
   * 
   *  user> (print-table (map #(vector % (* % %) (* % % %)) (range 1 11)) 8)
   * 
   * It prints a table of squares and cubes for the numbers from 1 to 10:
   * 
   *     1      1       1
   *     2      4       8
   *     3      9      27
   *     4     16      64
   *     5     25     125
   *     6     36     216
   *     7     49     343
   *     8     64     512
   *     9     81     729
   *    10    100    1000
   */
  cljs.pprint.get_pretty_writer = (function cljs$pprint$get_pretty_writer(writer){
  if(cljs.core.truth_(cljs.pprint.pretty_writer_QMARK_(writer))){
  return writer;
  } else {
  return cljs.pprint.pretty_writer(writer,cljs.pprint._STAR_print_right_margin_STAR_,cljs.pprint._STAR_print_miser_width_STAR_);
  }
  });
  /**
   * Make a newline if *out* is not already at the beginning of the line. If *out* is
   * not a pretty writer (which keeps track of columns), this function always outputs a newline.
   */
  cljs.pprint.fresh_line = (function cljs$pprint$fresh_line(){
  if((((!((cljs.core._STAR_out_STAR_ == null))))?(((((cljs.core._STAR_out_STAR_.cljs$lang$protocol_mask$partition0$ & (32768))) || ((cljs.core.PROTOCOL_SENTINEL === cljs.core._STAR_out_STAR_.cljs$core$IDeref$))))?true:(((!cljs.core._STAR_out_STAR_.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,cljs.core._STAR_out_STAR_):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,cljs.core._STAR_out_STAR_))){
  if((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),cljs.pprint.get_column(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(cljs.core._STAR_out_STAR_)))))))){
  return cljs.pprint.prn();
  } else {
  return null;
  }
  } else {
  return cljs.pprint.prn();
  }
  });
  cljs.pprint.absolute_tabulation = (function cljs$pprint$absolute_tabulation(params,navigator,offsets){
  var colnum_14183 = cljs.core.cst$kw$colnum.cljs$core$IFn$_invoke$arity$1(params);
  var colinc_14184 = cljs.core.cst$kw$colinc.cljs$core$IFn$_invoke$arity$1(params);
  var current_14185 = cljs.pprint.get_column(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(cljs.core._STAR_out_STAR_))));
  var space_count_14186 = (((current_14185 < colnum_14183))?(colnum_14183 - current_14185):((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(colinc_14184,(0)))?(0):(colinc_14184 - cljs.core.rem((current_14185 - colnum_14183),colinc_14184))
  ));
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(space_count_14186," "))], 0));
  
  return navigator;
  });
  cljs.pprint.relative_tabulation = (function cljs$pprint$relative_tabulation(params,navigator,offsets){
  var colrel_14187 = cljs.core.cst$kw$colnum.cljs$core$IFn$_invoke$arity$1(params);
  var colinc_14188 = cljs.core.cst$kw$colinc.cljs$core$IFn$_invoke$arity$1(params);
  var start_col_14189 = (colrel_14187 + cljs.pprint.get_column(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(cljs.core._STAR_out_STAR_)))));
  var offset_14190 = (((colinc_14188 > (0)))?cljs.core.rem(start_col_14189,colinc_14188):(0));
  var space_count_14191 = (colrel_14187 + ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),offset_14190))?(0):(colinc_14188 - offset_14190)));
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(space_count_14191," "))], 0));
  
  return navigator;
  });
  cljs.pprint.format_logical_block = (function cljs$pprint$format_logical_block(params,navigator,offsets){
  var clauses = cljs.core.cst$kw$clauses.cljs$core$IFn$_invoke$arity$1(params);
  var clause_count = cljs.core.count(clauses);
  var prefix = (((clause_count > (1)))?cljs.core.cst$kw$string.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(cljs.core.first(cljs.core.first(clauses)))):(cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))?"(":null));
  var body = cljs.core.nth.cljs$core$IFn$_invoke$arity$2(clauses,(((clause_count > (1)))?(1):(0)));
  var suffix = (((clause_count > (2)))?cljs.core.cst$kw$string.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(cljs.core.first(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(clauses,(2))))):(cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))?")":null));
  var vec__14192 = cljs.pprint.next_arg(navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14192,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14192,(1),null);
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14195_14199 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14196_14200 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14197_14201 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14198_14202 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14197_14201;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14198_14202;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,prefix,null,suffix);
  
  cljs.pprint.execute_sub_format(body,cljs.pprint.init_navigator(arg),cljs.core.cst$kw$base_DASH_args.cljs$core$IFn$_invoke$arity$1(params));
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14196_14200;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14195_14199;
  }}
  
  
  return navigator__$1;
  });
  cljs.pprint.set_indent = (function cljs$pprint$set_indent(params,navigator,offsets){
  var relative_to = (cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))?cljs.core.cst$kw$current:cljs.core.cst$kw$block);
  cljs.pprint.pprint_indent(relative_to,cljs.core.cst$kw$n.cljs$core$IFn$_invoke$arity$1(params));
  
  return navigator;
  });
  cljs.pprint.conditional_newline = (function cljs$pprint$conditional_newline(params,navigator,offsets){
  var kind = (cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))?(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))?cljs.core.cst$kw$mandatory:cljs.core.cst$kw$fill):(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))?cljs.core.cst$kw$miser:cljs.core.cst$kw$linear));
  cljs.pprint.pprint_newline(kind);
  
  return navigator;
  });
  cljs.pprint.directive_table = cljs.core.PersistentHashMap.fromArrays(["A","S","D","B","O","X","R","P","C","F","E","G","$","%","&","|","~","\n","T","*","?","(",")","[",";","]","{","}","<",">","^","W","_","I"],[new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"A",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(4),[cljs.core.cst$kw$mincol,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$colinc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),cljs.core.cst$kw$minpad,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$padchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ",String], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (p1__14203_SHARP_,p2__14204_SHARP_,p3__14205_SHARP_){
  return cljs.pprint.format_ascii(cljs.core.print_str,p1__14203_SHARP_,p2__14204_SHARP_,p3__14205_SHARP_);
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"S",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(4),[cljs.core.cst$kw$mincol,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$colinc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),cljs.core.cst$kw$minpad,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$padchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ",String], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (p1__14206_SHARP_,p2__14207_SHARP_,p3__14208_SHARP_){
  return cljs.pprint.format_ascii(cljs.core.pr_str,p1__14206_SHARP_,p2__14207_SHARP_,p3__14208_SHARP_);
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"D",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(4),[cljs.core.cst$kw$mincol,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$padchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ",String], null),cljs.core.cst$kw$commachar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [",",String], null),cljs.core.cst$kw$commainterval,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(3),Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (p1__14209_SHARP_,p2__14210_SHARP_,p3__14211_SHARP_){
  return cljs.pprint.format_integer((10),p1__14209_SHARP_,p2__14210_SHARP_,p3__14211_SHARP_);
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"B",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(4),[cljs.core.cst$kw$mincol,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$padchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ",String], null),cljs.core.cst$kw$commachar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [",",String], null),cljs.core.cst$kw$commainterval,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(3),Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (p1__14212_SHARP_,p2__14213_SHARP_,p3__14214_SHARP_){
  return cljs.pprint.format_integer((2),p1__14212_SHARP_,p2__14213_SHARP_,p3__14214_SHARP_);
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"O",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(4),[cljs.core.cst$kw$mincol,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$padchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ",String], null),cljs.core.cst$kw$commachar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [",",String], null),cljs.core.cst$kw$commainterval,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(3),Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (p1__14215_SHARP_,p2__14216_SHARP_,p3__14217_SHARP_){
  return cljs.pprint.format_integer((8),p1__14215_SHARP_,p2__14216_SHARP_,p3__14217_SHARP_);
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"X",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(4),[cljs.core.cst$kw$mincol,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$padchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ",String], null),cljs.core.cst$kw$commachar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [",",String], null),cljs.core.cst$kw$commainterval,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(3),Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (p1__14218_SHARP_,p2__14219_SHARP_,p3__14220_SHARP_){
  return cljs.pprint.format_integer((16),p1__14218_SHARP_,p2__14219_SHARP_,p3__14220_SHARP_);
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"R",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(5),[cljs.core.cst$kw$base,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),cljs.core.cst$kw$mincol,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$padchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ",String], null),cljs.core.cst$kw$commachar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [",",String], null),cljs.core.cst$kw$commainterval,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(3),Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  if(cljs.core.truth_(cljs.core.first(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(params)))){
  return (function (p1__14221_SHARP_,p2__14222_SHARP_,p3__14223_SHARP_){
  return cljs.pprint.format_integer(cljs.core.cst$kw$base.cljs$core$IFn$_invoke$arity$1(p1__14221_SHARP_),p1__14221_SHARP_,p2__14222_SHARP_,p3__14223_SHARP_);
  });
  } else {
  if(cljs.core.truth_((function (){var and__4120__auto__ = cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_(and__4120__auto__)){
  return cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params);
  } else {
  return and__4120__auto__;
  }
  })())){
  return (function (p1__14224_SHARP_,p2__14225_SHARP_,p3__14226_SHARP_){
  return cljs.pprint.format_old_roman(p1__14224_SHARP_,p2__14225_SHARP_,p3__14226_SHARP_);
  });
  } else {
  if(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))){
  return (function (p1__14227_SHARP_,p2__14228_SHARP_,p3__14229_SHARP_){
  return cljs.pprint.format_new_roman(p1__14227_SHARP_,p2__14228_SHARP_,p3__14229_SHARP_);
  });
  } else {
  if(cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))){
  return (function (p1__14230_SHARP_,p2__14231_SHARP_,p3__14232_SHARP_){
  return cljs.pprint.format_ordinal_english(p1__14230_SHARP_,p2__14231_SHARP_,p3__14232_SHARP_);
  });
  } else {
  return (function (p1__14233_SHARP_,p2__14234_SHARP_,p3__14235_SHARP_){
  return cljs.pprint.format_cardinal_english(p1__14233_SHARP_,p2__14234_SHARP_,p3__14235_SHARP_);
  });
  
  }
  }
  }
  }
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"P",cljs.core.cst$kw$params,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (params__$1,navigator,offsets){
  var navigator__$1 = (cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params__$1))?cljs.pprint.relative_reposition(navigator,(-1)):navigator);
  var strs = (cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params__$1))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["y","ies"], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["","s"], null));
  var vec__14245 = cljs.pprint.next_arg(navigator__$1);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14245,(0),null);
  var navigator__$2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14245,(1),null);
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(arg,(1)))?cljs.core.first(strs):cljs.core.second(strs))], 0));
  
  return navigator__$2;
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"C",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(1),[cljs.core.cst$kw$char_DASH_format,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,String], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  if(cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))){
  return cljs.pprint.pretty_character;
  } else {
  if(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))){
  return cljs.pprint.readable_character;
  } else {
  return cljs.pprint.plain_character;
  
  }
  }
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"F",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(5),[cljs.core.cst$kw$w,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),cljs.core.cst$kw$d,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),cljs.core.cst$kw$k,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$overflowchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,String], null),cljs.core.cst$kw$padchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ",String], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$at,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return cljs.pprint.fixed_float;
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"E",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(7),[cljs.core.cst$kw$w,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),cljs.core.cst$kw$d,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),cljs.core.cst$kw$e,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),cljs.core.cst$kw$k,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),cljs.core.cst$kw$overflowchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,String], null),cljs.core.cst$kw$padchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ",String], null),cljs.core.cst$kw$exponentchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,String], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$at,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return cljs.pprint.exponential_float;
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"G",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(7),[cljs.core.cst$kw$w,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),cljs.core.cst$kw$d,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),cljs.core.cst$kw$e,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),cljs.core.cst$kw$k,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),cljs.core.cst$kw$overflowchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,String], null),cljs.core.cst$kw$padchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ",String], null),cljs.core.cst$kw$exponentchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,String], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$at,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return cljs.pprint.general_float;
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"$",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(4),[cljs.core.cst$kw$d,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(2),Number], null),cljs.core.cst$kw$n,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),cljs.core.cst$kw$w,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$padchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ",String], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return cljs.pprint.dollar_float;
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"%",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(1),[cljs.core.cst$kw$count,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null)],null)),cljs.core.cst$kw$flags,cljs.core.PersistentHashSet.EMPTY,cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (params__$1,arg_navigator,offsets){
  var n__4607__auto___14263 = cljs.core.cst$kw$count.cljs$core$IFn$_invoke$arity$1(params__$1);
  var i_14264 = (0);
  while(true){
  if((i_14264 < n__4607__auto___14263)){
  cljs.pprint.prn();
  
  var G__14265 = (i_14264 + (1));
  i_14264 = G__14265;
  continue;
  } else {
  }
  break;
  }
  
  return arg_navigator;
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"&",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(1),[cljs.core.cst$kw$count,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$pretty,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (params__$1,arg_navigator,offsets){
  var cnt_14266 = cljs.core.cst$kw$count.cljs$core$IFn$_invoke$arity$1(params__$1);
  if((cnt_14266 > (0))){
  cljs.pprint.fresh_line();
  } else {
  }
  
  var n__4607__auto___14267 = (cnt_14266 - (1));
  var i_14268 = (0);
  while(true){
  if((i_14268 < n__4607__auto___14267)){
  cljs.pprint.prn();
  
  var G__14269 = (i_14268 + (1));
  i_14268 = G__14269;
  continue;
  } else {
  }
  break;
  }
  
  return arg_navigator;
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"|",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(1),[cljs.core.cst$kw$count,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null)],null)),cljs.core.cst$kw$flags,cljs.core.PersistentHashSet.EMPTY,cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (params__$1,arg_navigator,offsets){
  var n__4607__auto___14270 = cljs.core.cst$kw$count.cljs$core$IFn$_invoke$arity$1(params__$1);
  var i_14271 = (0);
  while(true){
  if((i_14271 < n__4607__auto___14270)){
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["\f"], 0));
  
  var G__14272 = (i_14271 + (1));
  i_14271 = G__14272;
  continue;
  } else {
  }
  break;
  }
  
  return arg_navigator;
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"~",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(1),[cljs.core.cst$kw$n,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null)],null)),cljs.core.cst$kw$flags,cljs.core.PersistentHashSet.EMPTY,cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (params__$1,arg_navigator,offsets){
  var n = cljs.core.cst$kw$n.cljs$core$IFn$_invoke$arity$1(params__$1);
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(n,"~"))], 0));
  
  return arg_navigator;
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"\n",cljs.core.cst$kw$params,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (params__$1,arg_navigator,offsets){
  if(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params__$1))){
  cljs.pprint.prn();
  } else {
  }
  
  return arg_navigator;
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"T",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(2),[cljs.core.cst$kw$colnum,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),cljs.core.cst$kw$colinc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [cljs.core.cst$kw$at,null,cljs.core.cst$kw$pretty,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  if(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))){
  return (function (p1__14236_SHARP_,p2__14237_SHARP_,p3__14238_SHARP_){
  return cljs.pprint.relative_tabulation(p1__14236_SHARP_,p2__14237_SHARP_,p3__14238_SHARP_);
  });
  } else {
  return (function (p1__14239_SHARP_,p2__14240_SHARP_,p3__14241_SHARP_){
  return cljs.pprint.absolute_tabulation(p1__14239_SHARP_,p2__14240_SHARP_,p3__14241_SHARP_);
  });
  }
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"*",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(1),[cljs.core.cst$kw$n,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (params__$1,navigator,offsets){
  var n = cljs.core.cst$kw$n.cljs$core$IFn$_invoke$arity$1(params__$1);
  if(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params__$1))){
  return cljs.pprint.absolute_reposition(navigator,n);
  } else {
  return cljs.pprint.relative_reposition(navigator,(cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params__$1))?(- n):n));
  }
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"?",cljs.core.cst$kw$params,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$at,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  if(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))){
  return (function (params__$1,navigator,offsets){
  var vec__14248 = cljs.pprint.get_format_arg(navigator);
  var subformat = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14248,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14248,(1),null);
  return cljs.pprint.execute_sub_format(subformat,navigator__$1,cljs.core.cst$kw$base_DASH_args.cljs$core$IFn$_invoke$arity$1(params__$1));
  });
  } else {
  return (function (params__$1,navigator,offsets){
  var vec__14251 = cljs.pprint.get_format_arg(navigator);
  var subformat = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14251,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14251,(1),null);
  var vec__14254 = cljs.pprint.next_arg(navigator__$1);
  var subargs = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14254,(0),null);
  var navigator__$2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14254,(1),null);
  var sub_navigator = cljs.pprint.init_navigator(subargs);
  cljs.pprint.execute_sub_format(subformat,sub_navigator,cljs.core.cst$kw$base_DASH_args.cljs$core$IFn$_invoke$arity$1(params__$1));
  
  return navigator__$2;
  });
  }
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"(",cljs.core.cst$kw$params,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$right,")",cljs.core.cst$kw$allows_DASH_separator,null,cljs.core.cst$kw$else,null], null),cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  var mod_case_writer = (cljs.core.truth_((function (){var and__4120__auto__ = cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_(and__4120__auto__)){
  return cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params);
  } else {
  return and__4120__auto__;
  }
  })())?cljs.pprint.upcase_writer:(cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))?cljs.pprint.capitalize_word_writer:(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))?cljs.pprint.init_cap_writer:cljs.pprint.downcase_writer
  )));
  return ((function (mod_case_writer){
  return (function (p1__14242_SHARP_,p2__14243_SHARP_,p3__14244_SHARP_){
  return cljs.pprint.modify_case(mod_case_writer,p1__14242_SHARP_,p2__14243_SHARP_,p3__14244_SHARP_);
  });
  ;})(mod_case_writer))
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,")",cljs.core.cst$kw$params,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$flags,cljs.core.PersistentHashSet.EMPTY,cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return null;
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"[",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(1),[cljs.core.cst$kw$selector,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null], null), null),cljs.core.cst$kw$bracket_DASH_info,new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$right,"]",cljs.core.cst$kw$allows_DASH_separator,true,cljs.core.cst$kw$else,cljs.core.cst$kw$last], null),cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  if(cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))){
  return cljs.pprint.boolean_conditional;
  } else {
  if(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))){
  return cljs.pprint.check_arg_conditional;
  } else {
  return cljs.pprint.choice_conditional;
  
  }
  }
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,";",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(2),[cljs.core.cst$kw$min_DASH_remaining,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),cljs.core.cst$kw$max_DASH_columns,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$colon,null], null), null),cljs.core.cst$kw$bracket_DASH_info,new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$separator,true], null),cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return null;
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"]",cljs.core.cst$kw$params,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$flags,cljs.core.PersistentHashSet.EMPTY,cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return null;
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"{",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(1),[cljs.core.cst$kw$max_DASH_iterations,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,new cljs.core.PersistentArrayMap(null, 2, [cljs.core.cst$kw$right,"}",cljs.core.cst$kw$allows_DASH_separator,false], null),cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  if(cljs.core.truth_((function (){var and__4120__auto__ = cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_(and__4120__auto__)){
  return cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params);
  } else {
  return and__4120__auto__;
  }
  })())){
  return cljs.pprint.iterate_main_sublists;
  } else {
  if(cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))){
  return cljs.pprint.iterate_list_of_sublists;
  } else {
  if(cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))){
  return cljs.pprint.iterate_main_list;
  } else {
  return cljs.pprint.iterate_sublist;
  
  }
  }
  }
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"}",cljs.core.cst$kw$params,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$colon,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return null;
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"<",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(4),[cljs.core.cst$kw$mincol,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$colinc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),cljs.core.cst$kw$minpad,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),cljs.core.cst$kw$padchar,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ",String], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null,cljs.core.cst$kw$pretty,null], null), null),cljs.core.cst$kw$bracket_DASH_info,new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$right,">",cljs.core.cst$kw$allows_DASH_separator,true,cljs.core.cst$kw$else,cljs.core.cst$kw$first], null),cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return cljs.pprint.logical_block_or_justify;
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,">",cljs.core.cst$kw$params,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$colon,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return null;
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"^",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(3),[cljs.core.cst$kw$arg1,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),cljs.core.cst$kw$arg2,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),cljs.core.cst$kw$arg3,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$colon,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return (function (params__$1,navigator,offsets){
  var arg1 = cljs.core.cst$kw$arg1.cljs$core$IFn$_invoke$arity$1(params__$1);
  var arg2 = cljs.core.cst$kw$arg2.cljs$core$IFn$_invoke$arity$1(params__$1);
  var arg3 = cljs.core.cst$kw$arg3.cljs$core$IFn$_invoke$arity$1(params__$1);
  var exit = (cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params__$1))?cljs.core.cst$kw$colon_DASH_up_DASH_arrow:cljs.core.cst$kw$up_DASH_arrow);
  if(cljs.core.truth_((function (){var and__4120__auto__ = arg1;
  if(cljs.core.truth_(and__4120__auto__)){
  var and__4120__auto____$1 = arg2;
  if(cljs.core.truth_(and__4120__auto____$1)){
  return arg3;
  } else {
  return and__4120__auto____$1;
  }
  } else {
  return and__4120__auto__;
  }
  })())){
  if((((arg1 <= arg2)) && ((arg2 <= arg3)))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [exit,navigator], null);
  } else {
  return navigator;
  }
  } else {
  if(cljs.core.truth_((function (){var and__4120__auto__ = arg1;
  if(cljs.core.truth_(and__4120__auto__)){
  return arg2;
  } else {
  return and__4120__auto__;
  }
  })())){
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(arg1,arg2)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [exit,navigator], null);
  } else {
  return navigator;
  }
  } else {
  if(cljs.core.truth_(arg1)){
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(arg1,(0))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [exit,navigator], null);
  } else {
  return navigator;
  }
  } else {
  if((cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params__$1))?cljs.core.empty_QMARK_(cljs.core.cst$kw$rest.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$base_DASH_args.cljs$core$IFn$_invoke$arity$1(params__$1))):cljs.core.empty_QMARK_(cljs.core.cst$kw$rest.cljs$core$IFn$_invoke$arity$1(navigator)))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [exit,navigator], null);
  } else {
  return navigator;
  }
  
  }
  }
  }
  });
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"W",cljs.core.cst$kw$params,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null,cljs.core.cst$kw$pretty,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  if(cljs.core.truth_((function (){var or__4131__auto__ = cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params);
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params);
  }
  })())){
  var bindings = cljs.core.concat.cljs$core$IFn$_invoke$arity$2((cljs.core.truth_(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(params))?new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$level,null,cljs.core.cst$kw$length,null], null):cljs.core.PersistentVector.EMPTY),(cljs.core.truth_(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$pretty,true], null):cljs.core.PersistentVector.EMPTY));
  return ((function (bindings){
  return (function (params__$1,navigator,offsets){
  var vec__14257 = cljs.pprint.next_arg(navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14257,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14257,(1),null);
  if(cljs.core.truth_(cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.pprint.write,arg,bindings))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$up_DASH_arrow,navigator__$1], null);
  } else {
  return navigator__$1;
  }
  });
  ;})(bindings))
  } else {
  return (function (params__$1,navigator,offsets){
  var vec__14260 = cljs.pprint.next_arg(navigator);
  var arg = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14260,(0),null);
  var navigator__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14260,(1),null);
  if(cljs.core.truth_(cljs.pprint.write_out(arg))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$up_DASH_arrow,navigator__$1], null);
  } else {
  return navigator__$1;
  }
  });
  }
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"_",cljs.core.cst$kw$params,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$colon,null,cljs.core.cst$kw$at,null,cljs.core.cst$kw$both,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return cljs.pprint.conditional_newline;
  })], null),new cljs.core.PersistentArrayMap(null, 5, [cljs.core.cst$kw$directive,"I",cljs.core.cst$kw$params,(new cljs.core.PersistentArrayMap(null,(1),[cljs.core.cst$kw$n,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null)],null)),cljs.core.cst$kw$flags,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$colon,null], null), null),cljs.core.cst$kw$bracket_DASH_info,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$generator_DASH_fn,(function (params,offset){
  return cljs.pprint.set_indent;
  })], null)]);
  cljs.pprint.param_pattern = /^([vV]|#|('.)|([+-]?\d+)|(?=,))/;
  cljs.pprint.special_params = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [cljs.core.cst$kw$remaining_DASH_arg_DASH_count,null,cljs.core.cst$kw$parameter_DASH_from_DASH_args,null], null), null);
  cljs.pprint.extract_param = (function cljs$pprint$extract_param(p__14273){
  var vec__14274 = p__14273;
  var s = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14274,(0),null);
  var offset = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14274,(1),null);
  var saw_comma = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14274,(2),null);
  var m = (new RegExp(cljs.pprint.param_pattern.source,"g"));
  var param = m.exec(s);
  if(cljs.core.truth_(param)){
  var token_str = cljs.core.first(param);
  var remainder = cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,m.lastIndex);
  var new_offset = (offset + m.lastIndex);
  if((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(",",cljs.core.nth.cljs$core$IFn$_invoke$arity$2(remainder,(0)))))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [token_str,offset], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [remainder,new_offset,false], null)], null);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [token_str,offset], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.subs.cljs$core$IFn$_invoke$arity$2(remainder,(1)),(new_offset + (1)),true], null)], null);
  }
  } else {
  if(cljs.core.truth_(saw_comma)){
  return cljs.pprint.format_error("Badly formed parameters in format directive",offset);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [s,offset], null)], null);
  }
  }
  });
  cljs.pprint.extract_params = (function cljs$pprint$extract_params(s,offset){
  return cljs.pprint.consume(cljs.pprint.extract_param,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [s,offset,false], null));
  });
  /**
   * Translate the string representation of a param to the internalized
   *                                    representation
   */
  cljs.pprint.translate_param = (function cljs$pprint$translate_param(p__14277){
  var vec__14278 = p__14277;
  var p = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14278,(0),null);
  var offset = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14278,(1),null);
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(p.length,(0)))?null:((((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(p.length,(1))) && (cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, ["V",null,"v",null], null), null),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(p,(0))))))?cljs.core.cst$kw$parameter_DASH_from_DASH_args:((((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(p.length,(1))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2("#",cljs.core.nth.cljs$core$IFn$_invoke$arity$2(p,(0))))))?cljs.core.cst$kw$remaining_DASH_arg_DASH_count:((((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(p.length,(2))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2("'",cljs.core.nth.cljs$core$IFn$_invoke$arity$2(p,(0))))))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(p,(1)):parseInt(p,(10))
  )))),offset], null);
  });
  cljs.pprint.flag_defs = new cljs.core.PersistentArrayMap(null, 2, [":",cljs.core.cst$kw$colon,"@",cljs.core.cst$kw$at], null);
  cljs.pprint.extract_flags = (function cljs$pprint$extract_flags(s,offset){
  return cljs.pprint.consume((function (p__14281){
  var vec__14282 = p__14281;
  var s__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14282,(0),null);
  var offset__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14282,(1),null);
  var flags = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14282,(2),null);
  if(cljs.core.empty_QMARK_(s__$1)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [s__$1,offset__$1,flags], null)], null);
  } else {
  var flag = cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.pprint.flag_defs,cljs.core.first(s__$1));
  if(cljs.core.truth_(flag)){
  if(cljs.core.contains_QMARK_(flags,flag)){
  return cljs.pprint.format_error(["Flag \"",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first(s__$1)),"\" appears more than once in a directive"].join(''),offset__$1);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s__$1,(1)),(offset__$1 + (1)),cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(flags,flag,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,offset__$1], null))], null)], null);
  }
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [s__$1,offset__$1,flags], null)], null);
  }
  }
  }),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [s,offset,cljs.core.PersistentArrayMap.EMPTY], null));
  });
  cljs.pprint.check_flags = (function cljs$pprint$check_flags(def,flags){
  var allowed = cljs.core.cst$kw$flags.cljs$core$IFn$_invoke$arity$1(def);
  if(cljs.core.truth_((function (){var and__4120__auto__ = cljs.core.not(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(allowed));
  if(and__4120__auto__){
  return cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(flags);
  } else {
  return and__4120__auto__;
  }
  })())){
  cljs.pprint.format_error(["\"@\" is an illegal flag for format directive \"",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$directive.cljs$core$IFn$_invoke$arity$1(def)),"\""].join(''),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(flags),(1)));
  } else {
  }
  
  if(cljs.core.truth_((function (){var and__4120__auto__ = cljs.core.not(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(allowed));
  if(and__4120__auto__){
  return cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(flags);
  } else {
  return and__4120__auto__;
  }
  })())){
  cljs.pprint.format_error(["\":\" is an illegal flag for format directive \"",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$directive.cljs$core$IFn$_invoke$arity$1(def)),"\""].join(''),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(flags),(1)));
  } else {
  }
  
  if(cljs.core.truth_((function (){var and__4120__auto__ = cljs.core.not(cljs.core.cst$kw$both.cljs$core$IFn$_invoke$arity$1(allowed));
  if(and__4120__auto__){
  var and__4120__auto____$1 = cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(flags);
  if(cljs.core.truth_(and__4120__auto____$1)){
  return cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(flags);
  } else {
  return and__4120__auto____$1;
  }
  } else {
  return and__4120__auto__;
  }
  })())){
  return cljs.pprint.format_error(["Cannot combine \"@\" and \":\" flags for format directive \"",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$directive.cljs$core$IFn$_invoke$arity$1(def)),"\""].join(''),(function (){var x__4222__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(flags),(1));
  var y__4223__auto__ = cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$at.cljs$core$IFn$_invoke$arity$1(flags),(1));
  return ((x__4222__auto__ < y__4223__auto__) ? x__4222__auto__ : y__4223__auto__);
  })());
  } else {
  return null;
  }
  });
  /**
   * Takes a directive definition and the list of actual parameters and
   * a map of flags and returns a map of the parameters and flags with defaults
   * filled in. We check to make sure that there are the right types and number
   * of parameters as well.
   */
  cljs.pprint.map_params = (function cljs$pprint$map_params(def,params,flags,offset){
  cljs.pprint.check_flags(def,flags);
  
  if((cljs.core.count(params) > cljs.core.count(cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(def)))){
  cljs.pprint.format_error(cljs.pprint.cl_format.cljs$core$IFn$_invoke$arity$variadic(null,"Too many parameters for directive \"~C\": ~D~:* ~[were~;was~:;were~] specified but only ~D~:* ~[are~;is~:;are~] allowed",cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.cst$kw$directive.cljs$core$IFn$_invoke$arity$1(def),cljs.core.count(params),cljs.core.count(cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(def))], 0)),cljs.core.second(cljs.core.first(params)));
  } else {
  }
  
  cljs.core.doall.cljs$core$IFn$_invoke$arity$1(cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (p1__14285_SHARP_,p2__14286_SHARP_){
  var val = cljs.core.first(p1__14285_SHARP_);
  if((!((((val == null)) || (cljs.core.contains_QMARK_(cljs.pprint.special_params,val)) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.second(cljs.core.second(p2__14286_SHARP_)),cljs.core.type(val))))))){
  return cljs.pprint.format_error(["Parameter ",cljs.core.name(cljs.core.first(p2__14286_SHARP_))," has bad type in directive \"",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$directive.cljs$core$IFn$_invoke$arity$1(def)),"\": ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.type(val))].join(''),cljs.core.second(p1__14285_SHARP_));
  } else {
  return null;
  }
  }),params,cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(def)));
  
  return cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.reverse((function (){var iter__4523__auto__ = (function cljs$pprint$map_params_$_iter__14290(s__14291){
  return (new cljs.core.LazySeq(null,(function (){
  var s__14291__$1 = s__14291;
  while(true){
  var temp__5720__auto__ = cljs.core.seq(s__14291__$1);
  if(temp__5720__auto__){
  var s__14291__$2 = temp__5720__auto__;
  if(cljs.core.chunked_seq_QMARK_(s__14291__$2)){
  var c__4521__auto__ = cljs.core.chunk_first(s__14291__$2);
  var size__4522__auto__ = cljs.core.count(c__4521__auto__);
  var b__14293 = cljs.core.chunk_buffer(size__4522__auto__);
  if((function (){var i__14292 = (0);
  while(true){
  if((i__14292 < size__4522__auto__)){
  var vec__14294 = cljs.core._nth.cljs$core$IFn$_invoke$arity$2(c__4521__auto__,i__14292);
  var name = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14294,(0),null);
  var vec__14297 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14294,(1),null);
  var default$ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14297,(0),null);
  cljs.core.chunk_append(b__14293,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [name,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [default$,offset], null)], null));
  
  var G__14306 = (i__14292 + (1));
  i__14292 = G__14306;
  continue;
  } else {
  return true;
  }
  break;
  }
  })()){
  return cljs.core.chunk_cons(cljs.core.chunk(b__14293),cljs$pprint$map_params_$_iter__14290(cljs.core.chunk_rest(s__14291__$2)));
  } else {
  return cljs.core.chunk_cons(cljs.core.chunk(b__14293),null);
  }
  } else {
  var vec__14300 = cljs.core.first(s__14291__$2);
  var name = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14300,(0),null);
  var vec__14303 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14300,(1),null);
  var default$ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14303,(0),null);
  return cljs.core.cons(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [name,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [default$,offset], null)], null),cljs$pprint$map_params_$_iter__14290(cljs.core.rest(s__14291__$2)));
  }
  } else {
  return null;
  }
  break;
  }
  }),null,null));
  });
  return iter__4523__auto__(cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(def));
  })())),cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__14287_SHARP_,p2__14288_SHARP_){
  return cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc,p1__14287_SHARP_,p2__14288_SHARP_);
  }),cljs.core.PersistentArrayMap.EMPTY,cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__14289_SHARP_){
  return cljs.core.first(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(p1__14289_SHARP_,(1)));
  }),cljs.core.zipmap(cljs.core.keys(cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(def)),params))),flags], 0));
  });
  cljs.pprint.compile_directive = (function cljs$pprint$compile_directive(s,offset){
  var vec__14307 = cljs.pprint.extract_params(s,offset);
  var raw_params = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14307,(0),null);
  var vec__14310 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14307,(1),null);
  var rest = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14310,(0),null);
  var offset__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14310,(1),null);
  var vec__14313 = cljs.pprint.extract_flags(rest,offset__$1);
  var _ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14313,(0),null);
  var vec__14316 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14313,(1),null);
  var rest__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14316,(0),null);
  var offset__$2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14316,(1),null);
  var flags = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14316,(2),null);
  var directive = cljs.core.first(rest__$1);
  var def = cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.pprint.directive_table,clojure.string.upper_case(directive));
  var params = (cljs.core.truth_(def)?cljs.pprint.map_params(def,cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.pprint.translate_param,raw_params),flags,offset__$2):null);
  if(cljs.core.not(directive)){
  cljs.pprint.format_error("Format string ended in the middle of a directive",offset__$2);
  } else {
  }
  
  if(cljs.core.not(def)){
  cljs.pprint.format_error(["Directive \"",cljs.core.str.cljs$core$IFn$_invoke$arity$1(directive),"\" is undefined"].join(''),offset__$2);
  } else {
  }
  
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.pprint.compiled_directive((function (){var fexpr__14319 = cljs.core.cst$kw$generator_DASH_fn.cljs$core$IFn$_invoke$arity$1(def);
  return (fexpr__14319.cljs$core$IFn$_invoke$arity$2 ? fexpr__14319.cljs$core$IFn$_invoke$arity$2(params,offset__$2) : fexpr__14319.call(null,params,offset__$2));
  })(),def,params,offset__$2,null,null,null)),(function (){var remainder = cljs.core.subs.cljs$core$IFn$_invoke$arity$2(rest__$1,(1));
  var offset__$3 = (offset__$2 + (1));
  var trim_QMARK_ = ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2("\n",cljs.core.cst$kw$directive.cljs$core$IFn$_invoke$arity$1(def))) && (cljs.core.not(cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(params))));
  var trim_count = ((trim_QMARK_)?cljs.pprint.prefix_count(remainder,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [" ","\t"], null)):(0));
  var remainder__$1 = cljs.core.subs.cljs$core$IFn$_invoke$arity$2(remainder,trim_count);
  var offset__$4 = (offset__$3 + trim_count);
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [remainder__$1,offset__$4], null);
  })()], null);
  });
  cljs.pprint.compile_raw_string = (function cljs$pprint$compile_raw_string(s,offset){
  return (new cljs.pprint.compiled_directive((function (_,a,___$1){
  cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([s], 0));
  
  return a;
  }),null,new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$string,s], null),offset,null,null,null));
  });
  cljs.pprint.right_bracket = (function cljs$pprint$right_bracket(this$){
  return cljs.core.cst$kw$right.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$bracket_DASH_info.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$def.cljs$core$IFn$_invoke$arity$1(this$)));
  });
  cljs.pprint.separator_QMARK_ = (function cljs$pprint$separator_QMARK_(this$){
  return cljs.core.cst$kw$separator.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$bracket_DASH_info.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$def.cljs$core$IFn$_invoke$arity$1(this$)));
  });
  cljs.pprint.else_separator_QMARK_ = (function cljs$pprint$else_separator_QMARK_(this$){
  var and__4120__auto__ = cljs.core.cst$kw$separator.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$bracket_DASH_info.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$def.cljs$core$IFn$_invoke$arity$1(this$)));
  if(cljs.core.truth_(and__4120__auto__)){
  return cljs.core.cst$kw$colon.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(this$));
  } else {
  return and__4120__auto__;
  }
  });
  cljs.pprint.process_bracket = (function cljs$pprint$process_bracket(this$,remainder){
  var vec__14320 = cljs.pprint.collect_clauses(cljs.core.cst$kw$bracket_DASH_info.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$def.cljs$core$IFn$_invoke$arity$1(this$)),cljs.core.cst$kw$offset.cljs$core$IFn$_invoke$arity$1(this$),remainder);
  var subex = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14320,(0),null);
  var remainder__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14320,(1),null);
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.pprint.compiled_directive(cljs.core.cst$kw$func.cljs$core$IFn$_invoke$arity$1(this$),cljs.core.cst$kw$def.cljs$core$IFn$_invoke$arity$1(this$),cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(this$),cljs.pprint.tuple_map(subex,cljs.core.cst$kw$offset.cljs$core$IFn$_invoke$arity$1(this$))], 0)),cljs.core.cst$kw$offset.cljs$core$IFn$_invoke$arity$1(this$),null,null,null)),remainder__$1], null);
  });
  cljs.pprint.process_clause = (function cljs$pprint$process_clause(bracket_info,offset,remainder){
  return cljs.pprint.consume((function (remainder__$1){
  if(cljs.core.empty_QMARK_(remainder__$1)){
  return cljs.pprint.format_error("No closing bracket found.",offset);
  } else {
  var this$ = cljs.core.first(remainder__$1);
  var remainder__$2 = cljs.core.next(remainder__$1);
  if(cljs.core.truth_(cljs.pprint.right_bracket(this$))){
  return cljs.pprint.process_bracket(this$,remainder__$2);
  } else {
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$right.cljs$core$IFn$_invoke$arity$1(bracket_info),cljs.core.cst$kw$directive.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$def.cljs$core$IFn$_invoke$arity$1(this$)))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$right_DASH_bracket,cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(this$),null,remainder__$2], null)], null);
  } else {
  if(cljs.core.truth_(cljs.pprint.else_separator_QMARK_(this$))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$else,null,cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(this$),remainder__$2], null)], null);
  } else {
  if(cljs.core.truth_(cljs.pprint.separator_QMARK_(this$))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$kw$separator,null,null,remainder__$2], null)], null);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [this$,remainder__$2], null);
  
  }
  }
  }
  }
  }
  }),remainder);
  });
  cljs.pprint.collect_clauses = (function cljs$pprint$collect_clauses(bracket_info,offset,remainder){
  return cljs.core.second(cljs.pprint.consume((function (p__14323){
  var vec__14324 = p__14323;
  var clause_map = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14324,(0),null);
  var saw_else = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14324,(1),null);
  var remainder__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14324,(2),null);
  var vec__14327 = cljs.pprint.process_clause(bracket_info,offset,remainder__$1);
  var clause = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14327,(0),null);
  var vec__14330 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14327,(1),null);
  var type = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14330,(0),null);
  var right_params = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14330,(1),null);
  var else_params = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14330,(2),null);
  var remainder__$2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14330,(3),null);
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(type,cljs.core.cst$kw$right_DASH_bracket)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.merge_with.cljs$core$IFn$_invoke$arity$variadic(cljs.core.concat,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([clause_map,cljs.core.PersistentArrayMap.createAsIfByAssoc([(cljs.core.truth_(saw_else)?cljs.core.cst$kw$else:cljs.core.cst$kw$clauses),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [clause], null),cljs.core.cst$kw$right_DASH_params,right_params])], 0)),remainder__$2], null)], null);
  } else {
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(type,cljs.core.cst$kw$else)){
  if(cljs.core.truth_(cljs.core.cst$kw$else.cljs$core$IFn$_invoke$arity$1(clause_map))){
  return cljs.pprint.format_error("Two else clauses (\"~:;\") inside bracket construction.",offset);
  } else {
  if(cljs.core.not(cljs.core.cst$kw$else.cljs$core$IFn$_invoke$arity$1(bracket_info))){
  return cljs.pprint.format_error("An else clause (\"~:;\") is in a bracket type that doesn't support it.",offset);
  } else {
  if(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$first,cljs.core.cst$kw$else.cljs$core$IFn$_invoke$arity$1(bracket_info))) && (cljs.core.seq(cljs.core.cst$kw$clauses.cljs$core$IFn$_invoke$arity$1(clause_map))))){
  return cljs.pprint.format_error("The else clause (\"~:;\") is only allowed in the first position for this directive.",offset);
  } else {
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$first,cljs.core.cst$kw$else.cljs$core$IFn$_invoke$arity$1(bracket_info))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.merge_with.cljs$core$IFn$_invoke$arity$variadic(cljs.core.concat,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([clause_map,new cljs.core.PersistentArrayMap(null, 2, [cljs.core.cst$kw$else,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [clause], null),cljs.core.cst$kw$else_DASH_params,else_params], null)], 0)),false,remainder__$2], null)], null);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.merge_with.cljs$core$IFn$_invoke$arity$variadic(cljs.core.concat,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([clause_map,new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$clauses,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [clause], null)], null)], 0)),true,remainder__$2], null)], null);
  }
  
  }
  }
  }
  } else {
  if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(type,cljs.core.cst$kw$separator)){
  if(cljs.core.truth_(saw_else)){
  return cljs.pprint.format_error("A plain clause (with \"~;\") follows an else clause (\"~:;\") inside bracket construction.",offset);
  } else {
  if(cljs.core.not(cljs.core.cst$kw$allows_DASH_separator.cljs$core$IFn$_invoke$arity$1(bracket_info))){
  return cljs.pprint.format_error("A separator (\"~;\") is in a bracket type that doesn't support it.",offset);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.merge_with.cljs$core$IFn$_invoke$arity$variadic(cljs.core.concat,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([clause_map,new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$clauses,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [clause], null)], null)], 0)),false,remainder__$2], null)], null);
  
  }
  }
  } else {
  return null;
  }
  }
  }
  }),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$clauses,cljs.core.PersistentVector.EMPTY], null),false,remainder], null)));
  });
  /**
   * Take a linearly compiled format and process the bracket directives to give it
   * the appropriate tree structure
   */
  cljs.pprint.process_nesting = (function cljs$pprint$process_nesting(format){
  return cljs.core.first(cljs.pprint.consume((function (remainder){
  var this$ = cljs.core.first(remainder);
  var remainder__$1 = cljs.core.next(remainder);
  var bracket = cljs.core.cst$kw$bracket_DASH_info.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$def.cljs$core$IFn$_invoke$arity$1(this$));
  if(cljs.core.truth_(cljs.core.cst$kw$right.cljs$core$IFn$_invoke$arity$1(bracket))){
  return cljs.pprint.process_bracket(this$,remainder__$1);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [this$,remainder__$1], null);
  }
  }),format));
  });
  /**
   * Compiles format-str into a compiled format which can be used as an argument
   * to cl-format just like a plain format string. Use this function for improved
   * performance when you're using the same format string repeatedly
   */
  cljs.pprint.compile_format = (function cljs$pprint$compile_format(format_str){
  var _STAR_format_str_STAR__orig_val__14333 = cljs.pprint._STAR_format_str_STAR_;
  var _STAR_format_str_STAR__temp_val__14334 = format_str;
  cljs.pprint._STAR_format_str_STAR_ = _STAR_format_str_STAR__temp_val__14334;
  
  try{return cljs.pprint.process_nesting(cljs.core.first(cljs.pprint.consume(((function (_STAR_format_str_STAR__orig_val__14333,_STAR_format_str_STAR__temp_val__14334){
  return (function (p__14335){
  var vec__14336 = p__14335;
  var s = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14336,(0),null);
  var offset = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14336,(1),null);
  if(cljs.core.empty_QMARK_(s)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,s], null);
  } else {
  var tilde = s.indexOf("~");
  if((tilde < (0))){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.pprint.compile_raw_string(s,offset),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["",(offset + s.length)], null)], null);
  } else {
  if((tilde === (0))){
  return cljs.pprint.compile_directive(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(1)),(offset + (1)));
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.pprint.compile_raw_string(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),tilde),offset),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,tilde),(tilde + offset)], null)], null);
  
  }
  }
  }
  });})(_STAR_format_str_STAR__orig_val__14333,_STAR_format_str_STAR__temp_val__14334))
  ,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [format_str,(0)], null))));
  }finally {cljs.pprint._STAR_format_str_STAR_ = _STAR_format_str_STAR__orig_val__14333;
  }});
  /**
   * determine whether a given compiled format has any directives that depend on the
   * column number or pretty printing
   */
  cljs.pprint.needs_pretty = (function cljs$pprint$needs_pretty(format){
  var format__$1 = format;
  while(true){
  if(cljs.core.empty_QMARK_(format__$1)){
  return false;
  } else {
  if(cljs.core.truth_((function (){var or__4131__auto__ = cljs.core.cst$kw$pretty.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$flags.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$def.cljs$core$IFn$_invoke$arity$1(cljs.core.first(format__$1))));
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  var or__4131__auto____$1 = cljs.core.some(cljs.pprint.needs_pretty,cljs.core.first(cljs.core.cst$kw$clauses.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(cljs.core.first(format__$1)))));
  if(cljs.core.truth_(or__4131__auto____$1)){
  return or__4131__auto____$1;
  } else {
  return cljs.core.some(cljs.pprint.needs_pretty,cljs.core.first(cljs.core.cst$kw$else.cljs$core$IFn$_invoke$arity$1(cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(cljs.core.first(format__$1)))));
  }
  }
  })())){
  return true;
  } else {
  var G__14339 = cljs.core.next(format__$1);
  format__$1 = G__14339;
  continue;
  }
  }
  break;
  }
  });
  /**
   * Executes the format with the arguments.
   */
  cljs.pprint.execute_format = (function cljs$pprint$execute_format(var_args){
  var G__14341 = arguments.length;
  switch (G__14341) {
  case 3:
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
  
  break;
  case 2:
  return cljs.pprint.execute_format.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.pprint.execute_format.cljs$core$IFn$_invoke$arity$3 = (function (stream,format,args){
  var sb = (new goog.string.StringBuffer());
  var real_stream = ((((cljs.core.not(stream)) || (stream === true)))?(new cljs.core.StringBufferWriter(sb)):stream);
  var wrapped_stream = ((((cljs.pprint.needs_pretty(format)) && (cljs.core.not(cljs.pprint.pretty_writer_QMARK_(real_stream)))))?cljs.pprint.get_pretty_writer(real_stream):real_stream);
  var _STAR_out_STAR__orig_val__14342 = cljs.core._STAR_out_STAR_;
  var _STAR_out_STAR__temp_val__14343 = wrapped_stream;
  cljs.core._STAR_out_STAR_ = _STAR_out_STAR__temp_val__14343;
  
  try{try{cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(format,args);
  }finally {if((!((real_stream === wrapped_stream)))){
  cljs.core._flush(wrapped_stream);
  } else {
  }
  }
  if(cljs.core.not(stream)){
  return cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb);
  } else {
  if(stream === true){
  return cljs.core.string_print(cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb));
  } else {
  return null;
  
  }
  }
  }finally {cljs.core._STAR_out_STAR_ = _STAR_out_STAR__orig_val__14342;
  }});
  
  cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2 = (function (format,args){
  cljs.pprint.map_passing_context((function (element,context){
  if(cljs.pprint.abort_QMARK_(context)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,context], null);
  } else {
  var vec__14344 = cljs.pprint.realize_parameter_list(cljs.core.cst$kw$params.cljs$core$IFn$_invoke$arity$1(element),context);
  var params = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14344,(0),null);
  var args__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14344,(1),null);
  var vec__14347 = cljs.pprint.unzip_map(params);
  var params__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14347,(0),null);
  var offsets = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14347,(1),null);
  var params__$2 = cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(params__$1,cljs.core.cst$kw$base_DASH_args,args__$1);
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.cst$kw$func.cljs$core$IFn$_invoke$arity$1(element),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [params__$2,args__$1,offsets], null))], null);
  }
  }),args,format);
  
  return null;
  });
  
  cljs.pprint.execute_format.cljs$lang$maxFixedArity = 3;
  
  cljs.pprint.cached_compile = cljs.core.memoize(cljs.pprint.compile_format);
  /**
   * Installs a function as a new method of multimethod associated with dispatch-value. 
   */
  cljs.pprint.use_method = (function cljs$pprint$use_method(multifn,dispatch_val,func){
  return cljs.core._add_method(multifn,dispatch_val,func);
  });
  cljs.pprint.reader_macros = new cljs.core.PersistentArrayMap(null, 6, [cljs.core.cst$sym$quote,"'",cljs.core.cst$sym$var,"#'",cljs.core.cst$sym$clojure$core_SLASH_deref,"@",cljs.core.cst$sym$clojure$core_SLASH_unquote,"~",cljs.core.cst$sym$cljs$core_SLASH_deref,"@",cljs.core.cst$sym$cljs$core_SLASH_unquote,"~"], null);
  cljs.pprint.pprint_reader_macro = (function cljs$pprint$pprint_reader_macro(alis){
  var macro_char = (function (){var G__14351 = cljs.core.first(alis);
  return (cljs.pprint.reader_macros.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.reader_macros.cljs$core$IFn$_invoke$arity$1(G__14351) : cljs.pprint.reader_macros.call(null,G__14351));
  })();
  if(cljs.core.truth_((function (){var and__4120__auto__ = macro_char;
  if(cljs.core.truth_(and__4120__auto__)){
  return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((2),cljs.core.count(alis));
  } else {
  return and__4120__auto__;
  }
  })())){
  cljs.core._write(cljs.core._STAR_out_STAR_,macro_char);
  
  cljs.pprint.write_out(cljs.core.second(alis));
  
  return true;
  } else {
  return null;
  }
  });
  cljs.pprint.pprint_simple_list = (function cljs$pprint$pprint_simple_list(alis){
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14352_14357 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14353_14358 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14354_14359 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14355_14360 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14354_14359;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14355_14360;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,"(",null,")");
  
  var length_count14356_14361 = (0);
  var alis_14362__$1 = cljs.core.seq(alis);
  while(true){
  if(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count14356_14361 < cljs.core._STAR_print_length_STAR_)))){
  if(alis_14362__$1){
  cljs.pprint.write_out(cljs.core.first(alis_14362__$1));
  
  if(cljs.core.next(alis_14362__$1)){
  cljs.core._write(cljs.core._STAR_out_STAR_," ");
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$linear);
  
  var G__14363 = (length_count14356_14361 + (1));
  var G__14364 = cljs.core.next(alis_14362__$1);
  length_count14356_14361 = G__14363;
  alis_14362__$1 = G__14364;
  continue;
  } else {
  }
  } else {
  }
  } else {
  cljs.core._write(cljs.core._STAR_out_STAR_,"...");
  }
  break;
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14353_14358;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14352_14357;
  }}
  
  return null;
  });
  cljs.pprint.pprint_list = (function cljs$pprint$pprint_list(alis){
  if(cljs.core.not(cljs.pprint.pprint_reader_macro(alis))){
  return cljs.pprint.pprint_simple_list(alis);
  } else {
  return null;
  }
  });
  cljs.pprint.pprint_vector = (function cljs$pprint$pprint_vector(avec){
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14365_14370 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14366_14371 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14367_14372 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14368_14373 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14367_14372;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14368_14373;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,"[",null,"]");
  
  var length_count14369_14374 = (0);
  var aseq_14375 = cljs.core.seq(avec);
  while(true){
  if(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count14369_14374 < cljs.core._STAR_print_length_STAR_)))){
  if(aseq_14375){
  cljs.pprint.write_out(cljs.core.first(aseq_14375));
  
  if(cljs.core.next(aseq_14375)){
  cljs.core._write(cljs.core._STAR_out_STAR_," ");
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$linear);
  
  var G__14376 = (length_count14369_14374 + (1));
  var G__14377 = cljs.core.next(aseq_14375);
  length_count14369_14374 = G__14376;
  aseq_14375 = G__14377;
  continue;
  } else {
  }
  } else {
  }
  } else {
  cljs.core._write(cljs.core._STAR_out_STAR_,"...");
  }
  break;
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14366_14371;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14365_14370;
  }}
  
  return null;
  });
  cljs.pprint.pprint_array = (function (){var format_in__13376__auto__ = "~<[~;~@{~w~^, ~:_~}~;]~:>";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__){
  return (function() { 
  var G__14378__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14378 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14379__i = 0, G__14379__a = new Array(arguments.length -  0);
  while (G__14379__i < G__14379__a.length) {G__14379__a[G__14379__i] = arguments[G__14379__i + 0]; ++G__14379__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14379__a,0,null);
  } 
  return G__14378__delegate.call(this,args__13378__auto__);};
  G__14378.cljs$lang$maxFixedArity = 0;
  G__14378.cljs$lang$applyTo = (function (arglist__14380){
  var args__13378__auto__ = cljs.core.seq(arglist__14380);
  return G__14378__delegate(args__13378__auto__);
  });
  G__14378.cljs$core$IFn$_invoke$arity$variadic = G__14378__delegate;
  return G__14378;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__))
  })();
  cljs.pprint.pprint_map = (function cljs$pprint$pprint_map(amap){
  var vec__14381 = (((!(cljs.core.record_QMARK_(amap))))?(function (){var fexpr__14384 = new cljs.core.Var(function(){return cljs.core.lift_ns;},cljs.core.cst$sym$cljs$core_SLASH_lift_DASH_ns,cljs.core.PersistentHashMap.fromArrays([cljs.core.cst$kw$private,cljs.core.cst$kw$ns,cljs.core.cst$kw$name,cljs.core.cst$kw$file,cljs.core.cst$kw$end_DASH_column,cljs.core.cst$kw$column,cljs.core.cst$kw$line,cljs.core.cst$kw$end_DASH_line,cljs.core.cst$kw$arglists,cljs.core.cst$kw$doc,cljs.core.cst$kw$test],[true,cljs.core.cst$sym$cljs$core,cljs.core.cst$sym$lift_DASH_ns,"cljs/core.cljs",15,1,10284,10284,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$m], null)),"Returns [lifted-ns lifted-map] or nil if m can't be lifted.",(cljs.core.truth_(cljs.core.lift_ns)?cljs.core.lift_ns.cljs$lang$test:null)]));
  return (fexpr__14384.cljs$core$IFn$_invoke$arity$1 ? fexpr__14384.cljs$core$IFn$_invoke$arity$1(amap) : fexpr__14384.call(null,amap));
  })():null);
  var ns = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14381,(0),null);
  var lift_map = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14381,(1),null);
  var amap__$1 = (function (){var or__4131__auto__ = lift_map;
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return amap;
  }
  })();
  var prefix = (cljs.core.truth_(ns)?["#:",cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns),"{"].join(''):"{");
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14385_14394 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14386_14395 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14387_14396 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14388_14397 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14387_14396;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14388_14397;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,prefix,null,"}");
  
  var length_count14389_14398 = (0);
  var aseq_14399 = cljs.core.seq(amap__$1);
  while(true){
  if(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count14389_14398 < cljs.core._STAR_print_length_STAR_)))){
  if(aseq_14399){
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14390_14400 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14391_14401 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14392_14402 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14393_14403 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14392_14402;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14393_14403;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,null,null,null);
  
  cljs.pprint.write_out(cljs.core.ffirst(aseq_14399));
  
  cljs.core._write(cljs.core._STAR_out_STAR_," ");
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$linear);
  
  cljs.pprint._STAR_current_length_STAR_ = (0);
  
  cljs.pprint.write_out(cljs.core.fnext(cljs.core.first(aseq_14399)));
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14391_14401;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14390_14400;
  }}
  
  
  if(cljs.core.next(aseq_14399)){
  cljs.core._write(cljs.core._STAR_out_STAR_,", ");
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$linear);
  
  var G__14404 = (length_count14389_14398 + (1));
  var G__14405 = cljs.core.next(aseq_14399);
  length_count14389_14398 = G__14404;
  aseq_14399 = G__14405;
  continue;
  } else {
  }
  } else {
  }
  } else {
  cljs.core._write(cljs.core._STAR_out_STAR_,"...");
  }
  break;
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14386_14395;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14385_14394;
  }}
  
  return null;
  });
  cljs.pprint.pprint_simple_default = (function cljs$pprint$pprint_simple_default(obj){
  return cljs.core._write(cljs.core._STAR_out_STAR_,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([obj], 0)));
  });
  cljs.pprint.pprint_set = (function (){var format_in__13376__auto__ = "~<#{~;~@{~w~^ ~:_~}~;}~:>";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__){
  return (function() { 
  var G__14406__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14406 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14407__i = 0, G__14407__a = new Array(arguments.length -  0);
  while (G__14407__i < G__14407__a.length) {G__14407__a[G__14407__i] = arguments[G__14407__i + 0]; ++G__14407__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14407__a,0,null);
  } 
  return G__14406__delegate.call(this,args__13378__auto__);};
  G__14406.cljs$lang$maxFixedArity = 0;
  G__14406.cljs$lang$applyTo = (function (arglist__14408){
  var args__13378__auto__ = cljs.core.seq(arglist__14408);
  return G__14406__delegate(args__13378__auto__);
  });
  G__14406.cljs$core$IFn$_invoke$arity$variadic = G__14406__delegate;
  return G__14406;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__))
  })();
  cljs.pprint.type_map = new cljs.core.PersistentArrayMap(null, 2, ["core$future_call","Future","core$promise","Promise"], null);
  /**
   * Map ugly type names to something simpler
   */
  cljs.pprint.map_ref_type = (function cljs$pprint$map_ref_type(name){
  var or__4131__auto__ = (function (){var temp__5720__auto__ = cljs.core.re_find(/^[^$]+\$[^$]+/,name);
  if(cljs.core.truth_(temp__5720__auto__)){
  var match = temp__5720__auto__;
  return (cljs.pprint.type_map.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.type_map.cljs$core$IFn$_invoke$arity$1(match) : cljs.pprint.type_map.call(null,match));
  } else {
  return null;
  }
  })();
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return name;
  }
  });
  cljs.pprint.pprint_ideref = (function cljs$pprint$pprint_ideref(o){
  var prefix = ["#<",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.pprint.map_ref_type(cljs.core.type(o).name)),"@",cljs.core.str.cljs$core$IFn$_invoke$arity$1(goog.getUid(o)),": "].join('');
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14409_14415 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14410_14416 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14411_14417 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14412_14418 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14411_14417;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14412_14418;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,prefix,null,">");
  
  cljs.pprint.pprint_indent(cljs.core.cst$kw$block,(- (cljs.core.count(prefix) - (2))));
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$linear);
  
  cljs.pprint.write_out((((function (){var and__4120__auto__ = (((!((o == null))))?(((((o.cljs$lang$protocol_mask$partition1$ & (1))) || ((cljs.core.PROTOCOL_SENTINEL === o.cljs$core$IPending$))))?true:(((!o.cljs$lang$protocol_mask$partition1$))?cljs.core.native_satisfies_QMARK_(cljs.core.IPending,o):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IPending,o));
  if(and__4120__auto__){
  return (!(cljs.core._realized_QMARK_(o)));
  } else {
  return and__4120__auto__;
  }
  })())?cljs.core.cst$kw$not_DASH_delivered:cljs.core.deref(o)));
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14410_14416;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14409_14415;
  }}
  
  return null;
  });
  cljs.pprint.pprint_pqueue = (function (){var format_in__13376__auto__ = "~<<-(~;~@{~w~^ ~_~}~;)-<~:>";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__){
  return (function() { 
  var G__14419__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14419 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14420__i = 0, G__14420__a = new Array(arguments.length -  0);
  while (G__14420__i < G__14420__a.length) {G__14420__a[G__14420__i] = arguments[G__14420__i + 0]; ++G__14420__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14420__a,0,null);
  } 
  return G__14419__delegate.call(this,args__13378__auto__);};
  G__14419.cljs$lang$maxFixedArity = 0;
  G__14419.cljs$lang$applyTo = (function (arglist__14421){
  var args__13378__auto__ = cljs.core.seq(arglist__14421);
  return G__14419__delegate(args__13378__auto__);
  });
  G__14419.cljs$core$IFn$_invoke$arity$variadic = G__14419__delegate;
  return G__14419;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__))
  })();
  cljs.pprint.type_dispatcher = (function cljs$pprint$type_dispatcher(obj){
  if((obj instanceof cljs.core.PersistentQueue)){
  return cljs.core.cst$kw$queue;
  } else {
  if((((!((obj == null))))?(((((obj.cljs$lang$protocol_mask$partition0$ & (32768))) || ((cljs.core.PROTOCOL_SENTINEL === obj.cljs$core$IDeref$))))?true:(((!obj.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,obj):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,obj))){
  return cljs.core.cst$kw$deref;
  } else {
  if((obj instanceof cljs.core.Symbol)){
  return cljs.core.cst$kw$symbol;
  } else {
  if(cljs.core.seq_QMARK_(obj)){
  return cljs.core.cst$kw$list;
  } else {
  if(cljs.core.map_QMARK_(obj)){
  return cljs.core.cst$kw$map;
  } else {
  if(cljs.core.vector_QMARK_(obj)){
  return cljs.core.cst$kw$vector;
  } else {
  if(cljs.core.set_QMARK_(obj)){
  return cljs.core.cst$kw$set;
  } else {
  if((obj == null)){
  return null;
  } else {
  return cljs.core.cst$kw$default;
  
  }
  }
  }
  }
  }
  }
  }
  }
  });
  if((typeof cljs !== 'undefined') && (typeof cljs.pprint !== 'undefined') && (typeof cljs.pprint.simple_dispatch !== 'undefined')){
  } else {
  /**
   * The pretty print dispatch function for simple data structure format.
   */
  cljs.pprint.simple_dispatch = (function (){var method_table__4613__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var prefer_table__4614__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var method_cache__4615__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var cached_hierarchy__4616__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var hierarchy__4617__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$hierarchy,(function (){var fexpr__14423 = cljs.core.get_global_hierarchy;
  return (fexpr__14423.cljs$core$IFn$_invoke$arity$0 ? fexpr__14423.cljs$core$IFn$_invoke$arity$0() : fexpr__14423.call(null));
  })());
  return (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2("cljs.pprint","simple-dispatch"),cljs.pprint.type_dispatcher,cljs.core.cst$kw$default,hierarchy__4617__auto__,method_table__4613__auto__,prefer_table__4614__auto__,method_cache__4615__auto__,cached_hierarchy__4616__auto__));
  })();
  }
  cljs.pprint.use_method(cljs.pprint.simple_dispatch,cljs.core.cst$kw$list,cljs.pprint.pprint_list);
  cljs.pprint.use_method(cljs.pprint.simple_dispatch,cljs.core.cst$kw$vector,cljs.pprint.pprint_vector);
  cljs.pprint.use_method(cljs.pprint.simple_dispatch,cljs.core.cst$kw$map,cljs.pprint.pprint_map);
  cljs.pprint.use_method(cljs.pprint.simple_dispatch,cljs.core.cst$kw$set,cljs.pprint.pprint_set);
  cljs.pprint.use_method(cljs.pprint.simple_dispatch,null,(function (){
  return cljs.core._write(cljs.core._STAR_out_STAR_,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([null], 0)));
  }));
  cljs.pprint.use_method(cljs.pprint.simple_dispatch,cljs.core.cst$kw$default,cljs.pprint.pprint_simple_default);
  cljs.pprint.set_pprint_dispatch(cljs.pprint.simple_dispatch);
  /**
   * Figure out which kind of brackets to use
   */
  cljs.pprint.brackets = (function cljs$pprint$brackets(form){
  if(cljs.core.vector_QMARK_(form)){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["[","]"], null);
  } else {
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["(",")"], null);
  }
  });
  /**
   * Pretty print a single reference (import, use, etc.) from a namespace decl
   */
  cljs.pprint.pprint_ns_reference = (function cljs$pprint$pprint_ns_reference(reference){
  if(cljs.core.sequential_QMARK_(reference)){
  var vec__14424 = cljs.pprint.brackets(reference);
  var start = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14424,(0),null);
  var end = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14424,(1),null);
  var vec__14427 = reference;
  var seq__14428 = cljs.core.seq(vec__14427);
  var first__14429 = cljs.core.first(seq__14428);
  var seq__14428__$1 = cljs.core.next(seq__14428);
  var keyw = first__14429;
  var args = seq__14428__$1;
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14430_14450 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14431_14451 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14432_14452 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14433_14453 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14432_14452;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14433_14453;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,start,null,end);
  
  var fexpr__14434_14454 = (function (){var format_in__13376__auto__ = "~w~:i";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args){
  return (function() { 
  var G__14455__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14455 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14456__i = 0, G__14456__a = new Array(arguments.length -  0);
  while (G__14456__i < G__14456__a.length) {G__14456__a[G__14456__i] = arguments[G__14456__i + 0]; ++G__14456__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14456__a,0,null);
  } 
  return G__14455__delegate.call(this,args__13378__auto__);};
  G__14455.cljs$lang$maxFixedArity = 0;
  G__14455.cljs$lang$applyTo = (function (arglist__14457){
  var args__13378__auto__ = cljs.core.seq(arglist__14457);
  return G__14455__delegate(args__13378__auto__);
  });
  G__14455.cljs$core$IFn$_invoke$arity$variadic = G__14455__delegate;
  return G__14455;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args))
  })();
  (fexpr__14434_14454.cljs$core$IFn$_invoke$arity$1 ? fexpr__14434_14454.cljs$core$IFn$_invoke$arity$1(keyw) : fexpr__14434_14454.call(null,keyw));
  
  var args_14458__$1 = args;
  while(true){
  if(cljs.core.seq(args_14458__$1)){
  var fexpr__14435_14459 = (function (){var format_in__13376__auto__ = " ";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (args_14458__$1,format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args){
  return (function() { 
  var G__14460__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14460 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14461__i = 0, G__14461__a = new Array(arguments.length -  0);
  while (G__14461__i < G__14461__a.length) {G__14461__a[G__14461__i] = arguments[G__14461__i + 0]; ++G__14461__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14461__a,0,null);
  } 
  return G__14460__delegate.call(this,args__13378__auto__);};
  G__14460.cljs$lang$maxFixedArity = 0;
  G__14460.cljs$lang$applyTo = (function (arglist__14462){
  var args__13378__auto__ = cljs.core.seq(arglist__14462);
  return G__14460__delegate(args__13378__auto__);
  });
  G__14460.cljs$core$IFn$_invoke$arity$variadic = G__14460__delegate;
  return G__14460;
  })()
  ;
  ;})(args_14458__$1,format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args))
  })();
  (fexpr__14435_14459.cljs$core$IFn$_invoke$arity$0 ? fexpr__14435_14459.cljs$core$IFn$_invoke$arity$0() : fexpr__14435_14459.call(null));
  
  var arg_14463 = cljs.core.first(args_14458__$1);
  if(cljs.core.sequential_QMARK_(arg_14463)){
  var vec__14436_14464 = cljs.pprint.brackets(arg_14463);
  var start_14465__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14436_14464,(0),null);
  var end_14466__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14436_14464,(1),null);
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14439_14467 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14440_14468 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14441_14469 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14442_14470 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14441_14469;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14442_14470;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,start_14465__$1,null,end_14466__$1);
  
  if(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(arg_14463),(3))) && ((cljs.core.second(arg_14463) instanceof cljs.core.Keyword)))){
  var vec__14443_14471 = arg_14463;
  var ns_14472 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14443_14471,(0),null);
  var kw_14473 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14443_14471,(1),null);
  var lis_14474 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14443_14471,(2),null);
  var fexpr__14446_14475 = (function (){var format_in__13376__auto__ = "~w ~w ";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (args_14458__$1,format_in__13376__auto__,cf__13377__auto__,vec__14443_14471,ns_14472,kw_14473,lis_14474,_STAR_current_level_STAR__orig_val__14439_14467,_STAR_current_length_STAR__orig_val__14440_14468,_STAR_current_level_STAR__temp_val__14441_14469,_STAR_current_length_STAR__temp_val__14442_14470,vec__14436_14464,start_14465__$1,end_14466__$1,arg_14463,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args){
  return (function() { 
  var G__14476__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14476 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14477__i = 0, G__14477__a = new Array(arguments.length -  0);
  while (G__14477__i < G__14477__a.length) {G__14477__a[G__14477__i] = arguments[G__14477__i + 0]; ++G__14477__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14477__a,0,null);
  } 
  return G__14476__delegate.call(this,args__13378__auto__);};
  G__14476.cljs$lang$maxFixedArity = 0;
  G__14476.cljs$lang$applyTo = (function (arglist__14478){
  var args__13378__auto__ = cljs.core.seq(arglist__14478);
  return G__14476__delegate(args__13378__auto__);
  });
  G__14476.cljs$core$IFn$_invoke$arity$variadic = G__14476__delegate;
  return G__14476;
  })()
  ;
  ;})(args_14458__$1,format_in__13376__auto__,cf__13377__auto__,vec__14443_14471,ns_14472,kw_14473,lis_14474,_STAR_current_level_STAR__orig_val__14439_14467,_STAR_current_length_STAR__orig_val__14440_14468,_STAR_current_level_STAR__temp_val__14441_14469,_STAR_current_length_STAR__temp_val__14442_14470,vec__14436_14464,start_14465__$1,end_14466__$1,arg_14463,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args))
  })();
  (fexpr__14446_14475.cljs$core$IFn$_invoke$arity$2 ? fexpr__14446_14475.cljs$core$IFn$_invoke$arity$2(ns_14472,kw_14473) : fexpr__14446_14475.call(null,ns_14472,kw_14473));
  
  if(cljs.core.sequential_QMARK_(lis_14474)){
  var fexpr__14447_14479 = (function (){var format_in__13376__auto__ = ((cljs.core.vector_QMARK_(lis_14474))?"~<[~;~@{~w~^ ~:_~}~;]~:>":"~<(~;~@{~w~^ ~:_~}~;)~:>");
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (args_14458__$1,format_in__13376__auto__,cf__13377__auto__,vec__14443_14471,ns_14472,kw_14473,lis_14474,_STAR_current_level_STAR__orig_val__14439_14467,_STAR_current_length_STAR__orig_val__14440_14468,_STAR_current_level_STAR__temp_val__14441_14469,_STAR_current_length_STAR__temp_val__14442_14470,vec__14436_14464,start_14465__$1,end_14466__$1,arg_14463,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args){
  return (function() { 
  var G__14480__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14480 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14481__i = 0, G__14481__a = new Array(arguments.length -  0);
  while (G__14481__i < G__14481__a.length) {G__14481__a[G__14481__i] = arguments[G__14481__i + 0]; ++G__14481__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14481__a,0,null);
  } 
  return G__14480__delegate.call(this,args__13378__auto__);};
  G__14480.cljs$lang$maxFixedArity = 0;
  G__14480.cljs$lang$applyTo = (function (arglist__14482){
  var args__13378__auto__ = cljs.core.seq(arglist__14482);
  return G__14480__delegate(args__13378__auto__);
  });
  G__14480.cljs$core$IFn$_invoke$arity$variadic = G__14480__delegate;
  return G__14480;
  })()
  ;
  ;})(args_14458__$1,format_in__13376__auto__,cf__13377__auto__,vec__14443_14471,ns_14472,kw_14473,lis_14474,_STAR_current_level_STAR__orig_val__14439_14467,_STAR_current_length_STAR__orig_val__14440_14468,_STAR_current_level_STAR__temp_val__14441_14469,_STAR_current_length_STAR__temp_val__14442_14470,vec__14436_14464,start_14465__$1,end_14466__$1,arg_14463,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args))
  })();
  (fexpr__14447_14479.cljs$core$IFn$_invoke$arity$1 ? fexpr__14447_14479.cljs$core$IFn$_invoke$arity$1(lis_14474) : fexpr__14447_14479.call(null,lis_14474));
  } else {
  cljs.pprint.write_out(lis_14474);
  }
  } else {
  cljs.core.apply.cljs$core$IFn$_invoke$arity$2((function (){var format_in__13376__auto__ = "~w ~:i~@{~w~^ ~:_~}";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (args_14458__$1,format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14439_14467,_STAR_current_length_STAR__orig_val__14440_14468,_STAR_current_level_STAR__temp_val__14441_14469,_STAR_current_length_STAR__temp_val__14442_14470,vec__14436_14464,start_14465__$1,end_14466__$1,arg_14463,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args){
  return (function() { 
  var G__14483__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14483 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14484__i = 0, G__14484__a = new Array(arguments.length -  0);
  while (G__14484__i < G__14484__a.length) {G__14484__a[G__14484__i] = arguments[G__14484__i + 0]; ++G__14484__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14484__a,0,null);
  } 
  return G__14483__delegate.call(this,args__13378__auto__);};
  G__14483.cljs$lang$maxFixedArity = 0;
  G__14483.cljs$lang$applyTo = (function (arglist__14485){
  var args__13378__auto__ = cljs.core.seq(arglist__14485);
  return G__14483__delegate(args__13378__auto__);
  });
  G__14483.cljs$core$IFn$_invoke$arity$variadic = G__14483__delegate;
  return G__14483;
  })()
  ;
  ;})(args_14458__$1,format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14439_14467,_STAR_current_length_STAR__orig_val__14440_14468,_STAR_current_level_STAR__temp_val__14441_14469,_STAR_current_length_STAR__temp_val__14442_14470,vec__14436_14464,start_14465__$1,end_14466__$1,arg_14463,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args))
  })(),arg_14463);
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14440_14468;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14439_14467;
  }}
  
  
  if(cljs.core.next(args_14458__$1)){
  var fexpr__14448_14486 = (function (){var format_in__13376__auto__ = "~_";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (args_14458__$1,format_in__13376__auto__,cf__13377__auto__,vec__14436_14464,start_14465__$1,end_14466__$1,arg_14463,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args){
  return (function() { 
  var G__14487__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14487 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14488__i = 0, G__14488__a = new Array(arguments.length -  0);
  while (G__14488__i < G__14488__a.length) {G__14488__a[G__14488__i] = arguments[G__14488__i + 0]; ++G__14488__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14488__a,0,null);
  } 
  return G__14487__delegate.call(this,args__13378__auto__);};
  G__14487.cljs$lang$maxFixedArity = 0;
  G__14487.cljs$lang$applyTo = (function (arglist__14489){
  var args__13378__auto__ = cljs.core.seq(arglist__14489);
  return G__14487__delegate(args__13378__auto__);
  });
  G__14487.cljs$core$IFn$_invoke$arity$variadic = G__14487__delegate;
  return G__14487;
  })()
  ;
  ;})(args_14458__$1,format_in__13376__auto__,cf__13377__auto__,vec__14436_14464,start_14465__$1,end_14466__$1,arg_14463,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args))
  })();
  (fexpr__14448_14486.cljs$core$IFn$_invoke$arity$0 ? fexpr__14448_14486.cljs$core$IFn$_invoke$arity$0() : fexpr__14448_14486.call(null));
  } else {
  }
  } else {
  cljs.pprint.write_out(arg_14463);
  
  if(cljs.core.next(args_14458__$1)){
  var fexpr__14449_14490 = (function (){var format_in__13376__auto__ = "~:_";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (args_14458__$1,format_in__13376__auto__,cf__13377__auto__,arg_14463,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args){
  return (function() { 
  var G__14491__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14491 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14492__i = 0, G__14492__a = new Array(arguments.length -  0);
  while (G__14492__i < G__14492__a.length) {G__14492__a[G__14492__i] = arguments[G__14492__i + 0]; ++G__14492__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14492__a,0,null);
  } 
  return G__14491__delegate.call(this,args__13378__auto__);};
  G__14491.cljs$lang$maxFixedArity = 0;
  G__14491.cljs$lang$applyTo = (function (arglist__14493){
  var args__13378__auto__ = cljs.core.seq(arglist__14493);
  return G__14491__delegate(args__13378__auto__);
  });
  G__14491.cljs$core$IFn$_invoke$arity$variadic = G__14491__delegate;
  return G__14491;
  })()
  ;
  ;})(args_14458__$1,format_in__13376__auto__,cf__13377__auto__,arg_14463,_STAR_current_level_STAR__orig_val__14430_14450,_STAR_current_length_STAR__orig_val__14431_14451,_STAR_current_level_STAR__temp_val__14432_14452,_STAR_current_length_STAR__temp_val__14433_14453,vec__14424,start,end,vec__14427,seq__14428,first__14429,seq__14428__$1,keyw,args))
  })();
  (fexpr__14449_14490.cljs$core$IFn$_invoke$arity$0 ? fexpr__14449_14490.cljs$core$IFn$_invoke$arity$0() : fexpr__14449_14490.call(null));
  } else {
  }
  }
  
  var G__14494 = cljs.core.next(args_14458__$1);
  args_14458__$1 = G__14494;
  continue;
  } else {
  }
  break;
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14431_14451;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14430_14450;
  }}
  
  return null;
  } else {
  return cljs.pprint.write_out(reference);
  }
  });
  /**
   * The pretty print dispatch chunk for the ns macro
   */
  cljs.pprint.pprint_ns = (function cljs$pprint$pprint_ns(alis){
  if(cljs.core.next(alis)){
  var vec__14495 = alis;
  var seq__14496 = cljs.core.seq(vec__14495);
  var first__14497 = cljs.core.first(seq__14496);
  var seq__14496__$1 = cljs.core.next(seq__14496);
  var ns_sym = first__14497;
  var first__14497__$1 = cljs.core.first(seq__14496__$1);
  var seq__14496__$2 = cljs.core.next(seq__14496__$1);
  var ns_name = first__14497__$1;
  var stuff = seq__14496__$2;
  var vec__14498 = ((typeof cljs.core.first(stuff) === 'string')?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(stuff),cljs.core.next(stuff)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,stuff], null));
  var doc_str = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14498,(0),null);
  var stuff__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14498,(1),null);
  var vec__14501 = ((cljs.core.map_QMARK_(cljs.core.first(stuff__$1)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(stuff__$1),cljs.core.next(stuff__$1)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,stuff__$1], null));
  var attr_map = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14501,(0),null);
  var references = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14501,(1),null);
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14504_14513 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14505_14514 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14506_14515 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14507_14516 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14506_14515;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14507_14516;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,"(",null,")");
  
  var fexpr__14508_14517 = (function (){var format_in__13376__auto__ = "~w ~1I~@_~w";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14504_14513,_STAR_current_length_STAR__orig_val__14505_14514,_STAR_current_level_STAR__temp_val__14506_14515,_STAR_current_length_STAR__temp_val__14507_14516,vec__14495,seq__14496,first__14497,seq__14496__$1,ns_sym,first__14497__$1,seq__14496__$2,ns_name,stuff,vec__14498,doc_str,stuff__$1,vec__14501,attr_map,references){
  return (function() { 
  var G__14518__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14518 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14519__i = 0, G__14519__a = new Array(arguments.length -  0);
  while (G__14519__i < G__14519__a.length) {G__14519__a[G__14519__i] = arguments[G__14519__i + 0]; ++G__14519__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14519__a,0,null);
  } 
  return G__14518__delegate.call(this,args__13378__auto__);};
  G__14518.cljs$lang$maxFixedArity = 0;
  G__14518.cljs$lang$applyTo = (function (arglist__14520){
  var args__13378__auto__ = cljs.core.seq(arglist__14520);
  return G__14518__delegate(args__13378__auto__);
  });
  G__14518.cljs$core$IFn$_invoke$arity$variadic = G__14518__delegate;
  return G__14518;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14504_14513,_STAR_current_length_STAR__orig_val__14505_14514,_STAR_current_level_STAR__temp_val__14506_14515,_STAR_current_length_STAR__temp_val__14507_14516,vec__14495,seq__14496,first__14497,seq__14496__$1,ns_sym,first__14497__$1,seq__14496__$2,ns_name,stuff,vec__14498,doc_str,stuff__$1,vec__14501,attr_map,references))
  })();
  (fexpr__14508_14517.cljs$core$IFn$_invoke$arity$2 ? fexpr__14508_14517.cljs$core$IFn$_invoke$arity$2(ns_sym,ns_name) : fexpr__14508_14517.call(null,ns_sym,ns_name));
  
  if(cljs.core.truth_((function (){var or__4131__auto__ = doc_str;
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  var or__4131__auto____$1 = attr_map;
  if(cljs.core.truth_(or__4131__auto____$1)){
  return or__4131__auto____$1;
  } else {
  return cljs.core.seq(references);
  }
  }
  })())){
  var fexpr__14509_14521 = (function (){var format_in__13376__auto__ = "~@:_";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14504_14513,_STAR_current_length_STAR__orig_val__14505_14514,_STAR_current_level_STAR__temp_val__14506_14515,_STAR_current_length_STAR__temp_val__14507_14516,vec__14495,seq__14496,first__14497,seq__14496__$1,ns_sym,first__14497__$1,seq__14496__$2,ns_name,stuff,vec__14498,doc_str,stuff__$1,vec__14501,attr_map,references){
  return (function() { 
  var G__14522__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14522 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14523__i = 0, G__14523__a = new Array(arguments.length -  0);
  while (G__14523__i < G__14523__a.length) {G__14523__a[G__14523__i] = arguments[G__14523__i + 0]; ++G__14523__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14523__a,0,null);
  } 
  return G__14522__delegate.call(this,args__13378__auto__);};
  G__14522.cljs$lang$maxFixedArity = 0;
  G__14522.cljs$lang$applyTo = (function (arglist__14524){
  var args__13378__auto__ = cljs.core.seq(arglist__14524);
  return G__14522__delegate(args__13378__auto__);
  });
  G__14522.cljs$core$IFn$_invoke$arity$variadic = G__14522__delegate;
  return G__14522;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14504_14513,_STAR_current_length_STAR__orig_val__14505_14514,_STAR_current_level_STAR__temp_val__14506_14515,_STAR_current_length_STAR__temp_val__14507_14516,vec__14495,seq__14496,first__14497,seq__14496__$1,ns_sym,first__14497__$1,seq__14496__$2,ns_name,stuff,vec__14498,doc_str,stuff__$1,vec__14501,attr_map,references))
  })();
  (fexpr__14509_14521.cljs$core$IFn$_invoke$arity$0 ? fexpr__14509_14521.cljs$core$IFn$_invoke$arity$0() : fexpr__14509_14521.call(null));
  } else {
  }
  
  if(cljs.core.truth_(doc_str)){
  cljs.pprint.cl_format.cljs$core$IFn$_invoke$arity$variadic(true,"\"~a\"~:[~;~:@_~]",cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([doc_str,(function (){var or__4131__auto__ = attr_map;
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return cljs.core.seq(references);
  }
  })()], 0));
  } else {
  }
  
  if(cljs.core.truth_(attr_map)){
  var G__14511_14525 = attr_map;
  var G__14512_14526 = cljs.core.seq(references);
  var fexpr__14510_14527 = (function (){var format_in__13376__auto__ = "~w~:[~;~:@_~]";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__,G__14511_14525,G__14512_14526,_STAR_current_level_STAR__orig_val__14504_14513,_STAR_current_length_STAR__orig_val__14505_14514,_STAR_current_level_STAR__temp_val__14506_14515,_STAR_current_length_STAR__temp_val__14507_14516,vec__14495,seq__14496,first__14497,seq__14496__$1,ns_sym,first__14497__$1,seq__14496__$2,ns_name,stuff,vec__14498,doc_str,stuff__$1,vec__14501,attr_map,references){
  return (function() { 
  var G__14528__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14528 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14529__i = 0, G__14529__a = new Array(arguments.length -  0);
  while (G__14529__i < G__14529__a.length) {G__14529__a[G__14529__i] = arguments[G__14529__i + 0]; ++G__14529__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14529__a,0,null);
  } 
  return G__14528__delegate.call(this,args__13378__auto__);};
  G__14528.cljs$lang$maxFixedArity = 0;
  G__14528.cljs$lang$applyTo = (function (arglist__14530){
  var args__13378__auto__ = cljs.core.seq(arglist__14530);
  return G__14528__delegate(args__13378__auto__);
  });
  G__14528.cljs$core$IFn$_invoke$arity$variadic = G__14528__delegate;
  return G__14528;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__,G__14511_14525,G__14512_14526,_STAR_current_level_STAR__orig_val__14504_14513,_STAR_current_length_STAR__orig_val__14505_14514,_STAR_current_level_STAR__temp_val__14506_14515,_STAR_current_length_STAR__temp_val__14507_14516,vec__14495,seq__14496,first__14497,seq__14496__$1,ns_sym,first__14497__$1,seq__14496__$2,ns_name,stuff,vec__14498,doc_str,stuff__$1,vec__14501,attr_map,references))
  })();
  (fexpr__14510_14527.cljs$core$IFn$_invoke$arity$2 ? fexpr__14510_14527.cljs$core$IFn$_invoke$arity$2(G__14511_14525,G__14512_14526) : fexpr__14510_14527.call(null,G__14511_14525,G__14512_14526));
  } else {
  }
  
  var references_14531__$1 = references;
  while(true){
  cljs.pprint.pprint_ns_reference(cljs.core.first(references_14531__$1));
  
  var temp__5720__auto___14532 = cljs.core.next(references_14531__$1);
  if(temp__5720__auto___14532){
  var references_14533__$2 = temp__5720__auto___14532;
  cljs.pprint.pprint_newline(cljs.core.cst$kw$linear);
  
  var G__14534 = references_14533__$2;
  references_14531__$1 = G__14534;
  continue;
  } else {
  }
  break;
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14505_14514;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14504_14513;
  }}
  
  return null;
  } else {
  return cljs.pprint.write_out(alis);
  }
  });
  cljs.pprint.pprint_hold_first = (function (){var format_in__13376__auto__ = "~:<~w~^ ~@_~w~^ ~_~@{~w~^ ~_~}~:>";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__){
  return (function() { 
  var G__14535__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14535 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14536__i = 0, G__14536__a = new Array(arguments.length -  0);
  while (G__14536__i < G__14536__a.length) {G__14536__a[G__14536__i] = arguments[G__14536__i + 0]; ++G__14536__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14536__a,0,null);
  } 
  return G__14535__delegate.call(this,args__13378__auto__);};
  G__14535.cljs$lang$maxFixedArity = 0;
  G__14535.cljs$lang$applyTo = (function (arglist__14537){
  var args__13378__auto__ = cljs.core.seq(arglist__14537);
  return G__14535__delegate(args__13378__auto__);
  });
  G__14535.cljs$core$IFn$_invoke$arity$variadic = G__14535__delegate;
  return G__14535;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__))
  })();
  cljs.pprint.single_defn = (function cljs$pprint$single_defn(alis,has_doc_str_QMARK_){
  if(cljs.core.seq(alis)){
  if(cljs.core.truth_(has_doc_str_QMARK_)){
  var fexpr__14538_14541 = (function (){var format_in__13376__auto__ = " ~_";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__){
  return (function() { 
  var G__14542__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14542 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14543__i = 0, G__14543__a = new Array(arguments.length -  0);
  while (G__14543__i < G__14543__a.length) {G__14543__a[G__14543__i] = arguments[G__14543__i + 0]; ++G__14543__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14543__a,0,null);
  } 
  return G__14542__delegate.call(this,args__13378__auto__);};
  G__14542.cljs$lang$maxFixedArity = 0;
  G__14542.cljs$lang$applyTo = (function (arglist__14544){
  var args__13378__auto__ = cljs.core.seq(arglist__14544);
  return G__14542__delegate(args__13378__auto__);
  });
  G__14542.cljs$core$IFn$_invoke$arity$variadic = G__14542__delegate;
  return G__14542;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__))
  })();
  (fexpr__14538_14541.cljs$core$IFn$_invoke$arity$0 ? fexpr__14538_14541.cljs$core$IFn$_invoke$arity$0() : fexpr__14538_14541.call(null));
  } else {
  var fexpr__14539_14545 = (function (){var format_in__13376__auto__ = " ~@_";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__){
  return (function() { 
  var G__14546__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14546 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14547__i = 0, G__14547__a = new Array(arguments.length -  0);
  while (G__14547__i < G__14547__a.length) {G__14547__a[G__14547__i] = arguments[G__14547__i + 0]; ++G__14547__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14547__a,0,null);
  } 
  return G__14546__delegate.call(this,args__13378__auto__);};
  G__14546.cljs$lang$maxFixedArity = 0;
  G__14546.cljs$lang$applyTo = (function (arglist__14548){
  var args__13378__auto__ = cljs.core.seq(arglist__14548);
  return G__14546__delegate(args__13378__auto__);
  });
  G__14546.cljs$core$IFn$_invoke$arity$variadic = G__14546__delegate;
  return G__14546;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__))
  })();
  (fexpr__14539_14545.cljs$core$IFn$_invoke$arity$0 ? fexpr__14539_14545.cljs$core$IFn$_invoke$arity$0() : fexpr__14539_14545.call(null));
  }
  
  var fexpr__14540 = (function (){var format_in__13376__auto__ = "~{~w~^ ~_~}";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__){
  return (function() { 
  var G__14549__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14549 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14550__i = 0, G__14550__a = new Array(arguments.length -  0);
  while (G__14550__i < G__14550__a.length) {G__14550__a[G__14550__i] = arguments[G__14550__i + 0]; ++G__14550__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14550__a,0,null);
  } 
  return G__14549__delegate.call(this,args__13378__auto__);};
  G__14549.cljs$lang$maxFixedArity = 0;
  G__14549.cljs$lang$applyTo = (function (arglist__14551){
  var args__13378__auto__ = cljs.core.seq(arglist__14551);
  return G__14549__delegate(args__13378__auto__);
  });
  G__14549.cljs$core$IFn$_invoke$arity$variadic = G__14549__delegate;
  return G__14549;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__))
  })();
  return (fexpr__14540.cljs$core$IFn$_invoke$arity$1 ? fexpr__14540.cljs$core$IFn$_invoke$arity$1(alis) : fexpr__14540.call(null,alis));
  } else {
  return null;
  }
  });
  cljs.pprint.multi_defn = (function cljs$pprint$multi_defn(alis,has_doc_str_QMARK_){
  if(cljs.core.seq(alis)){
  var fexpr__14552 = (function (){var format_in__13376__auto__ = " ~_~{~w~^ ~_~}";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__){
  return (function() { 
  var G__14553__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14553 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14554__i = 0, G__14554__a = new Array(arguments.length -  0);
  while (G__14554__i < G__14554__a.length) {G__14554__a[G__14554__i] = arguments[G__14554__i + 0]; ++G__14554__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14554__a,0,null);
  } 
  return G__14553__delegate.call(this,args__13378__auto__);};
  G__14553.cljs$lang$maxFixedArity = 0;
  G__14553.cljs$lang$applyTo = (function (arglist__14555){
  var args__13378__auto__ = cljs.core.seq(arglist__14555);
  return G__14553__delegate(args__13378__auto__);
  });
  G__14553.cljs$core$IFn$_invoke$arity$variadic = G__14553__delegate;
  return G__14553;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__))
  })();
  return (fexpr__14552.cljs$core$IFn$_invoke$arity$1 ? fexpr__14552.cljs$core$IFn$_invoke$arity$1(alis) : fexpr__14552.call(null,alis));
  } else {
  return null;
  }
  });
  cljs.pprint.pprint_defn = (function cljs$pprint$pprint_defn(alis){
  if(cljs.core.next(alis)){
  var vec__14556 = alis;
  var seq__14557 = cljs.core.seq(vec__14556);
  var first__14558 = cljs.core.first(seq__14557);
  var seq__14557__$1 = cljs.core.next(seq__14557);
  var defn_sym = first__14558;
  var first__14558__$1 = cljs.core.first(seq__14557__$1);
  var seq__14557__$2 = cljs.core.next(seq__14557__$1);
  var defn_name = first__14558__$1;
  var stuff = seq__14557__$2;
  var vec__14559 = ((typeof cljs.core.first(stuff) === 'string')?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(stuff),cljs.core.next(stuff)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,stuff], null));
  var doc_str = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14559,(0),null);
  var stuff__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14559,(1),null);
  var vec__14562 = ((cljs.core.map_QMARK_(cljs.core.first(stuff__$1)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(stuff__$1),cljs.core.next(stuff__$1)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,stuff__$1], null));
  var attr_map = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14562,(0),null);
  var stuff__$2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14562,(1),null);
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14565_14572 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14566_14573 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14567_14574 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14568_14575 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14567_14574;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14568_14575;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,"(",null,")");
  
  var fexpr__14569_14576 = (function (){var format_in__13376__auto__ = "~w ~1I~@_~w";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14565_14572,_STAR_current_length_STAR__orig_val__14566_14573,_STAR_current_level_STAR__temp_val__14567_14574,_STAR_current_length_STAR__temp_val__14568_14575,vec__14556,seq__14557,first__14558,seq__14557__$1,defn_sym,first__14558__$1,seq__14557__$2,defn_name,stuff,vec__14559,doc_str,stuff__$1,vec__14562,attr_map,stuff__$2){
  return (function() { 
  var G__14577__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14577 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14578__i = 0, G__14578__a = new Array(arguments.length -  0);
  while (G__14578__i < G__14578__a.length) {G__14578__a[G__14578__i] = arguments[G__14578__i + 0]; ++G__14578__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14578__a,0,null);
  } 
  return G__14577__delegate.call(this,args__13378__auto__);};
  G__14577.cljs$lang$maxFixedArity = 0;
  G__14577.cljs$lang$applyTo = (function (arglist__14579){
  var args__13378__auto__ = cljs.core.seq(arglist__14579);
  return G__14577__delegate(args__13378__auto__);
  });
  G__14577.cljs$core$IFn$_invoke$arity$variadic = G__14577__delegate;
  return G__14577;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14565_14572,_STAR_current_length_STAR__orig_val__14566_14573,_STAR_current_level_STAR__temp_val__14567_14574,_STAR_current_length_STAR__temp_val__14568_14575,vec__14556,seq__14557,first__14558,seq__14557__$1,defn_sym,first__14558__$1,seq__14557__$2,defn_name,stuff,vec__14559,doc_str,stuff__$1,vec__14562,attr_map,stuff__$2))
  })();
  (fexpr__14569_14576.cljs$core$IFn$_invoke$arity$2 ? fexpr__14569_14576.cljs$core$IFn$_invoke$arity$2(defn_sym,defn_name) : fexpr__14569_14576.call(null,defn_sym,defn_name));
  
  if(cljs.core.truth_(doc_str)){
  var fexpr__14570_14580 = (function (){var format_in__13376__auto__ = " ~_~w";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14565_14572,_STAR_current_length_STAR__orig_val__14566_14573,_STAR_current_level_STAR__temp_val__14567_14574,_STAR_current_length_STAR__temp_val__14568_14575,vec__14556,seq__14557,first__14558,seq__14557__$1,defn_sym,first__14558__$1,seq__14557__$2,defn_name,stuff,vec__14559,doc_str,stuff__$1,vec__14562,attr_map,stuff__$2){
  return (function() { 
  var G__14581__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14581 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14582__i = 0, G__14582__a = new Array(arguments.length -  0);
  while (G__14582__i < G__14582__a.length) {G__14582__a[G__14582__i] = arguments[G__14582__i + 0]; ++G__14582__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14582__a,0,null);
  } 
  return G__14581__delegate.call(this,args__13378__auto__);};
  G__14581.cljs$lang$maxFixedArity = 0;
  G__14581.cljs$lang$applyTo = (function (arglist__14583){
  var args__13378__auto__ = cljs.core.seq(arglist__14583);
  return G__14581__delegate(args__13378__auto__);
  });
  G__14581.cljs$core$IFn$_invoke$arity$variadic = G__14581__delegate;
  return G__14581;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14565_14572,_STAR_current_length_STAR__orig_val__14566_14573,_STAR_current_level_STAR__temp_val__14567_14574,_STAR_current_length_STAR__temp_val__14568_14575,vec__14556,seq__14557,first__14558,seq__14557__$1,defn_sym,first__14558__$1,seq__14557__$2,defn_name,stuff,vec__14559,doc_str,stuff__$1,vec__14562,attr_map,stuff__$2))
  })();
  (fexpr__14570_14580.cljs$core$IFn$_invoke$arity$1 ? fexpr__14570_14580.cljs$core$IFn$_invoke$arity$1(doc_str) : fexpr__14570_14580.call(null,doc_str));
  } else {
  }
  
  if(cljs.core.truth_(attr_map)){
  var fexpr__14571_14584 = (function (){var format_in__13376__auto__ = " ~_~w";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14565_14572,_STAR_current_length_STAR__orig_val__14566_14573,_STAR_current_level_STAR__temp_val__14567_14574,_STAR_current_length_STAR__temp_val__14568_14575,vec__14556,seq__14557,first__14558,seq__14557__$1,defn_sym,first__14558__$1,seq__14557__$2,defn_name,stuff,vec__14559,doc_str,stuff__$1,vec__14562,attr_map,stuff__$2){
  return (function() { 
  var G__14585__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14585 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14586__i = 0, G__14586__a = new Array(arguments.length -  0);
  while (G__14586__i < G__14586__a.length) {G__14586__a[G__14586__i] = arguments[G__14586__i + 0]; ++G__14586__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14586__a,0,null);
  } 
  return G__14585__delegate.call(this,args__13378__auto__);};
  G__14585.cljs$lang$maxFixedArity = 0;
  G__14585.cljs$lang$applyTo = (function (arglist__14587){
  var args__13378__auto__ = cljs.core.seq(arglist__14587);
  return G__14585__delegate(args__13378__auto__);
  });
  G__14585.cljs$core$IFn$_invoke$arity$variadic = G__14585__delegate;
  return G__14585;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14565_14572,_STAR_current_length_STAR__orig_val__14566_14573,_STAR_current_level_STAR__temp_val__14567_14574,_STAR_current_length_STAR__temp_val__14568_14575,vec__14556,seq__14557,first__14558,seq__14557__$1,defn_sym,first__14558__$1,seq__14557__$2,defn_name,stuff,vec__14559,doc_str,stuff__$1,vec__14562,attr_map,stuff__$2))
  })();
  (fexpr__14571_14584.cljs$core$IFn$_invoke$arity$1 ? fexpr__14571_14584.cljs$core$IFn$_invoke$arity$1(attr_map) : fexpr__14571_14584.call(null,attr_map));
  } else {
  }
  
  if(cljs.core.vector_QMARK_(cljs.core.first(stuff__$2))){
  cljs.pprint.single_defn(stuff__$2,(function (){var or__4131__auto__ = doc_str;
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return attr_map;
  }
  })());
  } else {
  cljs.pprint.multi_defn(stuff__$2,(function (){var or__4131__auto__ = doc_str;
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return attr_map;
  }
  })());
  
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14566_14573;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14565_14572;
  }}
  
  return null;
  } else {
  return cljs.pprint.pprint_simple_code_list(alis);
  }
  });
  cljs.pprint.pprint_binding_form = (function cljs$pprint$pprint_binding_form(binding_vec){
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14588_14597 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14589_14598 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14590_14599 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14591_14600 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14590_14599;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14591_14600;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,"[",null,"]");
  
  var length_count14592_14601 = (0);
  var binding_14602 = binding_vec;
  while(true){
  if(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count14592_14601 < cljs.core._STAR_print_length_STAR_)))){
  if(cljs.core.seq(binding_14602)){
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14593_14603 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14594_14604 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14595_14605 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14596_14606 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14595_14605;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14596_14606;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,null,null,null);
  
  
  cljs.pprint.write_out(cljs.core.first(binding_14602));
  
  if(cljs.core.next(binding_14602)){
  cljs.core._write(cljs.core._STAR_out_STAR_," ");
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$miser);
  
  cljs.pprint.write_out(cljs.core.second(binding_14602));
  } else {
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14594_14604;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14593_14603;
  }}
  
  
  if(cljs.core.next(cljs.core.rest(binding_14602))){
  cljs.core._write(cljs.core._STAR_out_STAR_," ");
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$linear);
  
  var G__14607 = (length_count14592_14601 + (1));
  var G__14608 = cljs.core.next(cljs.core.rest(binding_14602));
  length_count14592_14601 = G__14607;
  binding_14602 = G__14608;
  continue;
  } else {
  }
  } else {
  }
  } else {
  cljs.core._write(cljs.core._STAR_out_STAR_,"...");
  }
  break;
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14589_14598;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14588_14597;
  }}
  
  return null;
  });
  cljs.pprint.pprint_let = (function cljs$pprint$pprint_let(alis){
  var base_sym = cljs.core.first(alis);
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14609_14616 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14610_14617 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14611_14618 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14612_14619 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14611_14618;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14612_14619;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,"(",null,")");
  
  if(((cljs.core.next(alis)) && (cljs.core.vector_QMARK_(cljs.core.second(alis))))){
  var fexpr__14613_14620 = (function (){var format_in__13376__auto__ = "~w ~1I~@_";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14609_14616,_STAR_current_length_STAR__orig_val__14610_14617,_STAR_current_level_STAR__temp_val__14611_14618,_STAR_current_length_STAR__temp_val__14612_14619,base_sym){
  return (function() { 
  var G__14621__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14621 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14622__i = 0, G__14622__a = new Array(arguments.length -  0);
  while (G__14622__i < G__14622__a.length) {G__14622__a[G__14622__i] = arguments[G__14622__i + 0]; ++G__14622__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14622__a,0,null);
  } 
  return G__14621__delegate.call(this,args__13378__auto__);};
  G__14621.cljs$lang$maxFixedArity = 0;
  G__14621.cljs$lang$applyTo = (function (arglist__14623){
  var args__13378__auto__ = cljs.core.seq(arglist__14623);
  return G__14621__delegate(args__13378__auto__);
  });
  G__14621.cljs$core$IFn$_invoke$arity$variadic = G__14621__delegate;
  return G__14621;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14609_14616,_STAR_current_length_STAR__orig_val__14610_14617,_STAR_current_level_STAR__temp_val__14611_14618,_STAR_current_length_STAR__temp_val__14612_14619,base_sym))
  })();
  (fexpr__14613_14620.cljs$core$IFn$_invoke$arity$1 ? fexpr__14613_14620.cljs$core$IFn$_invoke$arity$1(base_sym) : fexpr__14613_14620.call(null,base_sym));
  
  cljs.pprint.pprint_binding_form(cljs.core.second(alis));
  
  var G__14615_14624 = cljs.core.next(cljs.core.rest(alis));
  var fexpr__14614_14625 = (function (){var format_in__13376__auto__ = " ~_~{~w~^ ~_~}";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__,G__14615_14624,_STAR_current_level_STAR__orig_val__14609_14616,_STAR_current_length_STAR__orig_val__14610_14617,_STAR_current_level_STAR__temp_val__14611_14618,_STAR_current_length_STAR__temp_val__14612_14619,base_sym){
  return (function() { 
  var G__14626__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14626 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14627__i = 0, G__14627__a = new Array(arguments.length -  0);
  while (G__14627__i < G__14627__a.length) {G__14627__a[G__14627__i] = arguments[G__14627__i + 0]; ++G__14627__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14627__a,0,null);
  } 
  return G__14626__delegate.call(this,args__13378__auto__);};
  G__14626.cljs$lang$maxFixedArity = 0;
  G__14626.cljs$lang$applyTo = (function (arglist__14628){
  var args__13378__auto__ = cljs.core.seq(arglist__14628);
  return G__14626__delegate(args__13378__auto__);
  });
  G__14626.cljs$core$IFn$_invoke$arity$variadic = G__14626__delegate;
  return G__14626;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__,G__14615_14624,_STAR_current_level_STAR__orig_val__14609_14616,_STAR_current_length_STAR__orig_val__14610_14617,_STAR_current_level_STAR__temp_val__14611_14618,_STAR_current_length_STAR__temp_val__14612_14619,base_sym))
  })();
  (fexpr__14614_14625.cljs$core$IFn$_invoke$arity$1 ? fexpr__14614_14625.cljs$core$IFn$_invoke$arity$1(G__14615_14624) : fexpr__14614_14625.call(null,G__14615_14624));
  } else {
  cljs.pprint.pprint_simple_code_list(alis);
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14610_14617;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14609_14616;
  }}
  
  return null;
  });
  cljs.pprint.pprint_if = (function (){var format_in__13376__auto__ = "~:<~1I~w~^ ~@_~w~@{ ~_~w~}~:>";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__){
  return (function() { 
  var G__14629__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14629 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14630__i = 0, G__14630__a = new Array(arguments.length -  0);
  while (G__14630__i < G__14630__a.length) {G__14630__a[G__14630__i] = arguments[G__14630__i + 0]; ++G__14630__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14630__a,0,null);
  } 
  return G__14629__delegate.call(this,args__13378__auto__);};
  G__14629.cljs$lang$maxFixedArity = 0;
  G__14629.cljs$lang$applyTo = (function (arglist__14631){
  var args__13378__auto__ = cljs.core.seq(arglist__14631);
  return G__14629__delegate(args__13378__auto__);
  });
  G__14629.cljs$core$IFn$_invoke$arity$variadic = G__14629__delegate;
  return G__14629;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__))
  })();
  cljs.pprint.pprint_cond = (function cljs$pprint$pprint_cond(alis){
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14632_14641 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14633_14642 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14634_14643 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14635_14644 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14634_14643;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14635_14644;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,"(",null,")");
  
  cljs.pprint.pprint_indent(cljs.core.cst$kw$block,(1));
  
  cljs.pprint.write_out(cljs.core.first(alis));
  
  if(cljs.core.next(alis)){
  cljs.core._write(cljs.core._STAR_out_STAR_," ");
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$linear);
  
  var length_count14636_14645 = (0);
  var alis_14646__$1 = cljs.core.next(alis);
  while(true){
  if(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count14636_14645 < cljs.core._STAR_print_length_STAR_)))){
  if(alis_14646__$1){
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14637_14647 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14638_14648 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14639_14649 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14640_14650 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14639_14649;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14640_14650;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,null,null,null);
  
  
  cljs.pprint.write_out(cljs.core.first(alis_14646__$1));
  
  if(cljs.core.next(alis_14646__$1)){
  cljs.core._write(cljs.core._STAR_out_STAR_," ");
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$miser);
  
  cljs.pprint.write_out(cljs.core.second(alis_14646__$1));
  } else {
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14638_14648;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14637_14647;
  }}
  
  
  if(cljs.core.next(cljs.core.rest(alis_14646__$1))){
  cljs.core._write(cljs.core._STAR_out_STAR_," ");
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$linear);
  
  var G__14651 = (length_count14636_14645 + (1));
  var G__14652 = cljs.core.next(cljs.core.rest(alis_14646__$1));
  length_count14636_14645 = G__14651;
  alis_14646__$1 = G__14652;
  continue;
  } else {
  }
  } else {
  }
  } else {
  cljs.core._write(cljs.core._STAR_out_STAR_,"...");
  }
  break;
  }
  } else {
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14633_14642;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14632_14641;
  }}
  
  return null;
  });
  cljs.pprint.pprint_condp = (function cljs$pprint$pprint_condp(alis){
  if((cljs.core.count(alis) > (3))){
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14653_14662 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14654_14663 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14655_14664 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14656_14665 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14655_14664;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14656_14665;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,"(",null,")");
  
  cljs.pprint.pprint_indent(cljs.core.cst$kw$block,(1));
  
  cljs.core.apply.cljs$core$IFn$_invoke$arity$2((function (){var format_in__13376__auto__ = "~w ~@_~w ~@_~w ~_";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14653_14662,_STAR_current_length_STAR__orig_val__14654_14663,_STAR_current_level_STAR__temp_val__14655_14664,_STAR_current_length_STAR__temp_val__14656_14665){
  return (function() { 
  var G__14666__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14666 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14667__i = 0, G__14667__a = new Array(arguments.length -  0);
  while (G__14667__i < G__14667__a.length) {G__14667__a[G__14667__i] = arguments[G__14667__i + 0]; ++G__14667__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14667__a,0,null);
  } 
  return G__14666__delegate.call(this,args__13378__auto__);};
  G__14666.cljs$lang$maxFixedArity = 0;
  G__14666.cljs$lang$applyTo = (function (arglist__14668){
  var args__13378__auto__ = cljs.core.seq(arglist__14668);
  return G__14666__delegate(args__13378__auto__);
  });
  G__14666.cljs$core$IFn$_invoke$arity$variadic = G__14666__delegate;
  return G__14666;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__,_STAR_current_level_STAR__orig_val__14653_14662,_STAR_current_length_STAR__orig_val__14654_14663,_STAR_current_level_STAR__temp_val__14655_14664,_STAR_current_length_STAR__temp_val__14656_14665))
  })(),alis);
  
  var length_count14657_14669 = (0);
  var alis_14670__$1 = cljs.core.seq(cljs.core.drop.cljs$core$IFn$_invoke$arity$2((3),alis));
  while(true){
  if(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count14657_14669 < cljs.core._STAR_print_length_STAR_)))){
  if(alis_14670__$1){
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14658_14671 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14659_14672 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14660_14673 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14661_14674 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14660_14673;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14661_14674;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,null,null,null);
  
  
  cljs.pprint.write_out(cljs.core.first(alis_14670__$1));
  
  if(cljs.core.next(alis_14670__$1)){
  cljs.core._write(cljs.core._STAR_out_STAR_," ");
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$miser);
  
  cljs.pprint.write_out(cljs.core.second(alis_14670__$1));
  } else {
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14659_14672;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14658_14671;
  }}
  
  
  if(cljs.core.next(cljs.core.rest(alis_14670__$1))){
  cljs.core._write(cljs.core._STAR_out_STAR_," ");
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$linear);
  
  var G__14675 = (length_count14657_14669 + (1));
  var G__14676 = cljs.core.next(cljs.core.rest(alis_14670__$1));
  length_count14657_14669 = G__14675;
  alis_14670__$1 = G__14676;
  continue;
  } else {
  }
  } else {
  }
  } else {
  cljs.core._write(cljs.core._STAR_out_STAR_,"...");
  }
  break;
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14654_14663;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14653_14662;
  }}
  
  return null;
  } else {
  return cljs.pprint.pprint_simple_code_list(alis);
  }
  });
  cljs.pprint._STAR_symbol_map_STAR_ = cljs.core.PersistentArrayMap.EMPTY;
  cljs.pprint.pprint_anon_func = (function cljs$pprint$pprint_anon_func(alis){
  var args = cljs.core.second(alis);
  var nlis = cljs.core.first(cljs.core.rest(cljs.core.rest(alis)));
  if(cljs.core.vector_QMARK_(args)){
  var _STAR_symbol_map_STAR__orig_val__14679 = cljs.pprint._STAR_symbol_map_STAR_;
  var _STAR_symbol_map_STAR__temp_val__14680 = ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((1),cljs.core.count(args)))?cljs.core.PersistentArrayMap.createAsIfByAssoc([cljs.core.first(args),"%"]):cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$3(((function (_STAR_symbol_map_STAR__orig_val__14679,args,nlis){
  return (function (p1__14677_SHARP_,p2__14678_SHARP_){
  return (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[p1__14677_SHARP_,["%",cljs.core.str.cljs$core$IFn$_invoke$arity$1(p2__14678_SHARP_)].join('')],null));
  });})(_STAR_symbol_map_STAR__orig_val__14679,args,nlis))
  ,args,cljs.core.range.cljs$core$IFn$_invoke$arity$2((1),(cljs.core.count(args) + (1))))));
  cljs.pprint._STAR_symbol_map_STAR_ = _STAR_symbol_map_STAR__temp_val__14680;
  
  try{var fexpr__14681 = (function (){var format_in__13376__auto__ = "~<#(~;~@{~w~^ ~_~}~;)~:>";
  var cf__13377__auto__ = ((typeof format_in__13376__auto__ === 'string')?(cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.cached_compile.cljs$core$IFn$_invoke$arity$1(format_in__13376__auto__) : cljs.pprint.cached_compile.call(null,format_in__13376__auto__)):format_in__13376__auto__);
  return ((function (format_in__13376__auto__,cf__13377__auto__,_STAR_symbol_map_STAR__orig_val__14679,_STAR_symbol_map_STAR__temp_val__14680,args,nlis){
  return (function() { 
  var G__14682__delegate = function (args__13378__auto__){
  var navigator__13379__auto__ = cljs.pprint.init_navigator(args__13378__auto__);
  return cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__13377__auto__,navigator__13379__auto__);
  };
  var G__14682 = function (var_args){
  var args__13378__auto__ = null;
  if (arguments.length > 0) {
  var G__14683__i = 0, G__14683__a = new Array(arguments.length -  0);
  while (G__14683__i < G__14683__a.length) {G__14683__a[G__14683__i] = arguments[G__14683__i + 0]; ++G__14683__i;}
    args__13378__auto__ = new cljs.core.IndexedSeq(G__14683__a,0,null);
  } 
  return G__14682__delegate.call(this,args__13378__auto__);};
  G__14682.cljs$lang$maxFixedArity = 0;
  G__14682.cljs$lang$applyTo = (function (arglist__14684){
  var args__13378__auto__ = cljs.core.seq(arglist__14684);
  return G__14682__delegate(args__13378__auto__);
  });
  G__14682.cljs$core$IFn$_invoke$arity$variadic = G__14682__delegate;
  return G__14682;
  })()
  ;
  ;})(format_in__13376__auto__,cf__13377__auto__,_STAR_symbol_map_STAR__orig_val__14679,_STAR_symbol_map_STAR__temp_val__14680,args,nlis))
  })();
  return (fexpr__14681.cljs$core$IFn$_invoke$arity$1 ? fexpr__14681.cljs$core$IFn$_invoke$arity$1(nlis) : fexpr__14681.call(null,nlis));
  }finally {cljs.pprint._STAR_symbol_map_STAR_ = _STAR_symbol_map_STAR__orig_val__14679;
  }} else {
  return cljs.pprint.pprint_simple_code_list(alis);
  }
  });
  cljs.pprint.pprint_simple_code_list = (function cljs$pprint$pprint_simple_code_list(alis){
  if(cljs.core.truth_(cljs.pprint.level_exceeded())){
  cljs.core._write(cljs.core._STAR_out_STAR_,"#");
  } else {
  var _STAR_current_level_STAR__orig_val__14685_14690 = cljs.pprint._STAR_current_level_STAR_;
  var _STAR_current_length_STAR__orig_val__14686_14691 = cljs.pprint._STAR_current_length_STAR_;
  var _STAR_current_level_STAR__temp_val__14687_14692 = (cljs.pprint._STAR_current_level_STAR_ + (1));
  var _STAR_current_length_STAR__temp_val__14688_14693 = (0);
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__temp_val__14687_14692;
  
  cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__temp_val__14688_14693;
  
  try{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,"(",null,")");
  
  cljs.pprint.pprint_indent(cljs.core.cst$kw$block,(1));
  
  var length_count14689_14694 = (0);
  var alis_14695__$1 = cljs.core.seq(alis);
  while(true){
  if(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count14689_14694 < cljs.core._STAR_print_length_STAR_)))){
  if(alis_14695__$1){
  cljs.pprint.write_out(cljs.core.first(alis_14695__$1));
  
  if(cljs.core.next(alis_14695__$1)){
  cljs.core._write(cljs.core._STAR_out_STAR_," ");
  
  cljs.pprint.pprint_newline(cljs.core.cst$kw$linear);
  
  var G__14696 = (length_count14689_14694 + (1));
  var G__14697 = cljs.core.next(alis_14695__$1);
  length_count14689_14694 = G__14696;
  alis_14695__$1 = G__14697;
  continue;
  } else {
  }
  } else {
  }
  } else {
  cljs.core._write(cljs.core._STAR_out_STAR_,"...");
  }
  break;
  }
  
  cljs.pprint.end_block(cljs.core._STAR_out_STAR_);
  }finally {cljs.pprint._STAR_current_length_STAR_ = _STAR_current_length_STAR__orig_val__14686_14691;
  
  cljs.pprint._STAR_current_level_STAR_ = _STAR_current_level_STAR__orig_val__14685_14690;
  }}
  
  return null;
  });
  cljs.pprint.two_forms = (function cljs$pprint$two_forms(amap){
  return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic(cljs.core.identity,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var iter__4523__auto__ = (function cljs$pprint$two_forms_$_iter__14698(s__14699){
  return (new cljs.core.LazySeq(null,(function (){
  var s__14699__$1 = s__14699;
  while(true){
  var temp__5720__auto__ = cljs.core.seq(s__14699__$1);
  if(temp__5720__auto__){
  var s__14699__$2 = temp__5720__auto__;
  if(cljs.core.chunked_seq_QMARK_(s__14699__$2)){
  var c__4521__auto__ = cljs.core.chunk_first(s__14699__$2);
  var size__4522__auto__ = cljs.core.count(c__4521__auto__);
  var b__14701 = cljs.core.chunk_buffer(size__4522__auto__);
  if((function (){var i__14700 = (0);
  while(true){
  if((i__14700 < size__4522__auto__)){
  var x = cljs.core._nth.cljs$core$IFn$_invoke$arity$2(c__4521__auto__,i__14700);
  cljs.core.chunk_append(b__14701,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [x,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(cljs.core.first(x))),cljs.core.second(x)], null)], null));
  
  var G__14702 = (i__14700 + (1));
  i__14700 = G__14702;
  continue;
  } else {
  return true;
  }
  break;
  }
  })()){
  return cljs.core.chunk_cons(cljs.core.chunk(b__14701),cljs$pprint$two_forms_$_iter__14698(cljs.core.chunk_rest(s__14699__$2)));
  } else {
  return cljs.core.chunk_cons(cljs.core.chunk(b__14701),null);
  }
  } else {
  var x = cljs.core.first(s__14699__$2);
  return cljs.core.cons(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [x,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(cljs.core.first(x))),cljs.core.second(x)], null)], null),cljs$pprint$two_forms_$_iter__14698(cljs.core.rest(s__14699__$2)));
  }
  } else {
  return null;
  }
  break;
  }
  }),null,null));
  });
  return iter__4523__auto__(amap);
  })()], 0)));
  });
  cljs.pprint.add_core_ns = (function cljs$pprint$add_core_ns(amap){
  var core = "clojure.core";
  return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$2(((function (core){
  return (function (p1__14703_SHARP_){
  var vec__14704 = p1__14703_SHARP_;
  var s = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14704,(0),null);
  var f = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14704,(1),null);
  if(cljs.core.not((function (){var or__4131__auto__ = cljs.core.namespace(s);
  if(cljs.core.truth_(or__4131__auto__)){
  return or__4131__auto__;
  } else {
  return cljs.core.special_symbol_QMARK_(s);
  }
  })())){
  return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(core,cljs.core.name(s)),f], null);
  } else {
  return p1__14703_SHARP_;
  }
  });})(core))
  ,amap));
  });
  cljs.pprint._STAR_code_table_STAR_ = cljs.pprint.two_forms(cljs.pprint.add_core_ns(cljs.core.PersistentHashMap.fromArrays([cljs.core.cst$sym$_DOT_,cljs.core.cst$sym$fn_STAR_,cljs.core.cst$sym$when_DASH_first,cljs.core.cst$sym$if,cljs.core.cst$sym$condp,cljs.core.cst$sym$$$,cljs.core.cst$sym$defmacro,cljs.core.cst$sym$defn,cljs.core.cst$sym$loop,cljs.core.cst$sym$struct,cljs.core.cst$sym$doseq,cljs.core.cst$sym$if_DASH_not,cljs.core.cst$sym$when_DASH_not,cljs.core.cst$sym$def,cljs.core.cst$sym$when,cljs.core.cst$sym$with_DASH_open,cljs.core.cst$sym$with_DASH_local_DASH_vars,cljs.core.cst$sym$defonce,cljs.core.cst$sym$when_DASH_let,cljs.core.cst$sym$ns,cljs.core.cst$sym$dotimes,cljs.core.cst$sym$cond,cljs.core.cst$sym$let,cljs.core.cst$sym$fn,cljs.core.cst$sym$defn_DASH_,cljs.core.cst$sym$locking,cljs.core.cst$sym$_DASH__GT_,cljs.core.cst$sym$if_DASH_let,cljs.core.cst$sym$binding,cljs.core.cst$sym$struct_DASH_map],[cljs.pprint.pprint_hold_first,cljs.pprint.pprint_anon_func,cljs.pprint.pprint_let,cljs.pprint.pprint_if,cljs.pprint.pprint_condp,cljs.pprint.pprint_hold_first,cljs.pprint.pprint_defn,cljs.pprint.pprint_defn,cljs.pprint.pprint_let,cljs.pprint.pprint_hold_first,cljs.pprint.pprint_let,cljs.pprint.pprint_if,cljs.pprint.pprint_if,cljs.pprint.pprint_hold_first,cljs.pprint.pprint_if,cljs.pprint.pprint_let,cljs.pprint.pprint_let,cljs.pprint.pprint_hold_first,cljs.pprint.pprint_let,cljs.pprint.pprint_ns,cljs.pprint.pprint_let,cljs.pprint.pprint_cond,cljs.pprint.pprint_let,cljs.pprint.pprint_defn,cljs.pprint.pprint_defn,cljs.pprint.pprint_hold_first,cljs.pprint.pprint_hold_first,cljs.pprint.pprint_let,cljs.pprint.pprint_let,cljs.pprint.pprint_hold_first])));
  cljs.pprint.pprint_code_list = (function cljs$pprint$pprint_code_list(alis){
  if(cljs.core.not(cljs.pprint.pprint_reader_macro(alis))){
  var temp__5718__auto__ = (function (){var G__14707 = cljs.core.first(alis);
  return (cljs.pprint._STAR_code_table_STAR_.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint._STAR_code_table_STAR_.cljs$core$IFn$_invoke$arity$1(G__14707) : cljs.pprint._STAR_code_table_STAR_.call(null,G__14707));
  })();
  if(cljs.core.truth_(temp__5718__auto__)){
  var special_form = temp__5718__auto__;
  return (special_form.cljs$core$IFn$_invoke$arity$1 ? special_form.cljs$core$IFn$_invoke$arity$1(alis) : special_form.call(null,alis));
  } else {
  return cljs.pprint.pprint_simple_code_list(alis);
  }
  } else {
  return null;
  }
  });
  cljs.pprint.pprint_code_symbol = (function cljs$pprint$pprint_code_symbol(sym){
  var temp__5718__auto__ = (sym.cljs$core$IFn$_invoke$arity$1 ? sym.cljs$core$IFn$_invoke$arity$1(cljs.pprint._STAR_symbol_map_STAR_) : sym.call(null,cljs.pprint._STAR_symbol_map_STAR_));
  if(cljs.core.truth_(temp__5718__auto__)){
  var arg_num = temp__5718__auto__;
  return cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([arg_num], 0));
  } else {
  if(cljs.core.truth_(cljs.pprint._STAR_print_suppress_namespaces_STAR_)){
  return cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.name(sym)], 0));
  } else {
  return (cljs.pprint.pr.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.pr.cljs$core$IFn$_invoke$arity$1(sym) : cljs.pprint.pr.call(null,sym));
  }
  }
  });
  if((typeof cljs !== 'undefined') && (typeof cljs.pprint !== 'undefined') && (typeof cljs.pprint.code_dispatch !== 'undefined')){
  } else {
  /**
   * The pretty print dispatch function for pretty printing Clojure code.
   */
  cljs.pprint.code_dispatch = (function (){var method_table__4613__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var prefer_table__4614__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var method_cache__4615__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var cached_hierarchy__4616__auto__ = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);
  var hierarchy__4617__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$hierarchy,(function (){var fexpr__14708 = cljs.core.get_global_hierarchy;
  return (fexpr__14708.cljs$core$IFn$_invoke$arity$0 ? fexpr__14708.cljs$core$IFn$_invoke$arity$0() : fexpr__14708.call(null));
  })());
  return (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2("cljs.pprint","code-dispatch"),cljs.pprint.type_dispatcher,cljs.core.cst$kw$default,hierarchy__4617__auto__,method_table__4613__auto__,prefer_table__4614__auto__,method_cache__4615__auto__,cached_hierarchy__4616__auto__));
  })();
  }
  cljs.pprint.use_method(cljs.pprint.code_dispatch,cljs.core.cst$kw$list,cljs.pprint.pprint_code_list);
  cljs.pprint.use_method(cljs.pprint.code_dispatch,cljs.core.cst$kw$symbol,cljs.pprint.pprint_code_symbol);
  cljs.pprint.use_method(cljs.pprint.code_dispatch,cljs.core.cst$kw$vector,cljs.pprint.pprint_vector);
  cljs.pprint.use_method(cljs.pprint.code_dispatch,cljs.core.cst$kw$map,cljs.pprint.pprint_map);
  cljs.pprint.use_method(cljs.pprint.code_dispatch,cljs.core.cst$kw$set,cljs.pprint.pprint_set);
  cljs.pprint.use_method(cljs.pprint.code_dispatch,cljs.core.cst$kw$queue,cljs.pprint.pprint_pqueue);
  cljs.pprint.use_method(cljs.pprint.code_dispatch,cljs.core.cst$kw$deref,cljs.pprint.pprint_ideref);
  cljs.pprint.use_method(cljs.pprint.code_dispatch,null,cljs.pprint.pr);
  cljs.pprint.use_method(cljs.pprint.code_dispatch,cljs.core.cst$kw$default,cljs.pprint.pprint_simple_default);
  cljs.pprint.set_pprint_dispatch(cljs.pprint.simple_dispatch);
  cljs.pprint.add_padding = (function cljs$pprint$add_padding(width,s){
  var padding = (function (){var x__4219__auto__ = (0);
  var y__4220__auto__ = (width - cljs.core.count(s));
  return ((x__4219__auto__ > y__4220__auto__) ? x__4219__auto__ : y__4220__auto__);
  })();
  return cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.str,clojure.string.join.cljs$core$IFn$_invoke$arity$1(cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(padding," ")),s);
  });
  /**
   * Prints a collection of maps in a textual table. Prints table headings
   * ks, and then a line of output for each row, corresponding to the keys
   * in ks. If ks are not specified, use the keys of the first item in rows.
   */
  cljs.pprint.print_table = (function cljs$pprint$print_table(var_args){
  var G__14713 = arguments.length;
  switch (G__14713) {
  case 2:
  return cljs.pprint.print_table.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
  
  break;
  case 1:
  return cljs.pprint.print_table.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
  
  break;
  default:
  throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
  
  }
  });
  
  cljs.pprint.print_table.cljs$core$IFn$_invoke$arity$2 = (function (ks,rows){
  if(cljs.core.seq(rows)){
  var widths = cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (k){
  return cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.max,cljs.core.count(cljs.core.str.cljs$core$IFn$_invoke$arity$1(k)),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__14709_SHARP_){
  return cljs.core.count(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.get.cljs$core$IFn$_invoke$arity$2(p1__14709_SHARP_,k)));
  }),rows));
  }),ks);
  var spacers = cljs.core.map.cljs$core$IFn$_invoke$arity$2(((function (widths){
  return (function (p1__14710_SHARP_){
  return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(p1__14710_SHARP_,"-"));
  });})(widths))
  ,widths);
  var fmt_row = ((function (widths,spacers){
  return (function (leader,divider,trailer,row){
  return [cljs.core.str.cljs$core$IFn$_invoke$arity$1(leader),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.interpose.cljs$core$IFn$_invoke$arity$2(divider,(function (){var iter__4523__auto__ = ((function (widths,spacers){
  return (function cljs$pprint$iter__14724(s__14725){
  return (new cljs.core.LazySeq(null,((function (widths,spacers){
  return (function (){
  var s__14725__$1 = s__14725;
  while(true){
  var temp__5720__auto__ = cljs.core.seq(s__14725__$1);
  if(temp__5720__auto__){
  var s__14725__$2 = temp__5720__auto__;
  if(cljs.core.chunked_seq_QMARK_(s__14725__$2)){
  var c__4521__auto__ = cljs.core.chunk_first(s__14725__$2);
  var size__4522__auto__ = cljs.core.count(c__4521__auto__);
  var b__14727 = cljs.core.chunk_buffer(size__4522__auto__);
  if((function (){var i__14726 = (0);
  while(true){
  if((i__14726 < size__4522__auto__)){
  var vec__14728 = cljs.core._nth.cljs$core$IFn$_invoke$arity$2(c__4521__auto__,i__14726);
  var col = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14728,(0),null);
  var width = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14728,(1),null);
  cljs.core.chunk_append(b__14727,cljs.pprint.add_padding(width,cljs.core.str.cljs$core$IFn$_invoke$arity$1(col)));
  
  var G__14739 = (i__14726 + (1));
  i__14726 = G__14739;
  continue;
  } else {
  return true;
  }
  break;
  }
  })()){
  return cljs.core.chunk_cons(cljs.core.chunk(b__14727),cljs$pprint$iter__14724(cljs.core.chunk_rest(s__14725__$2)));
  } else {
  return cljs.core.chunk_cons(cljs.core.chunk(b__14727),null);
  }
  } else {
  var vec__14731 = cljs.core.first(s__14725__$2);
  var col = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14731,(0),null);
  var width = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__14731,(1),null);
  return cljs.core.cons(cljs.pprint.add_padding(width,cljs.core.str.cljs$core$IFn$_invoke$arity$1(col)),cljs$pprint$iter__14724(cljs.core.rest(s__14725__$2)));
  }
  } else {
  return null;
  }
  break;
  }
  });})(widths,spacers))
  ,null,null));
  });})(widths,spacers))
  ;
  return iter__4523__auto__(cljs.core.map.cljs$core$IFn$_invoke$arity$3(cljs.core.vector,cljs.core.map.cljs$core$IFn$_invoke$arity$2(((function (iter__4523__auto__,widths,spacers){
  return (function (p1__14711_SHARP_){
  return cljs.core.get.cljs$core$IFn$_invoke$arity$2(row,p1__14711_SHARP_);
  });})(iter__4523__auto__,widths,spacers))
  ,ks),widths));
  })()))),cljs.core.str.cljs$core$IFn$_invoke$arity$1(trailer)].join('');
  });})(widths,spacers))
  ;
  cljs.core.println();
  
  cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([fmt_row("| "," | "," |",cljs.core.zipmap(ks,ks))], 0));
  
  cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([fmt_row("|-","-+-","-|",cljs.core.zipmap(ks,spacers))], 0));
  
  var seq__14734 = cljs.core.seq(rows);
  var chunk__14735 = null;
  var count__14736 = (0);
  var i__14737 = (0);
  while(true){
  if((i__14737 < count__14736)){
  var row = chunk__14735.cljs$core$IIndexed$_nth$arity$2(null,i__14737);
  cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([fmt_row("| "," | "," |",row)], 0));
  
  
  var G__14740 = seq__14734;
  var G__14741 = chunk__14735;
  var G__14742 = count__14736;
  var G__14743 = (i__14737 + (1));
  seq__14734 = G__14740;
  chunk__14735 = G__14741;
  count__14736 = G__14742;
  i__14737 = G__14743;
  continue;
  } else {
  var temp__5720__auto__ = cljs.core.seq(seq__14734);
  if(temp__5720__auto__){
  var seq__14734__$1 = temp__5720__auto__;
  if(cljs.core.chunked_seq_QMARK_(seq__14734__$1)){
  var c__4550__auto__ = cljs.core.chunk_first(seq__14734__$1);
  var G__14744 = cljs.core.chunk_rest(seq__14734__$1);
  var G__14745 = c__4550__auto__;
  var G__14746 = cljs.core.count(c__4550__auto__);
  var G__14747 = (0);
  seq__14734 = G__14744;
  chunk__14735 = G__14745;
  count__14736 = G__14746;
  i__14737 = G__14747;
  continue;
  } else {
  var row = cljs.core.first(seq__14734__$1);
  cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([fmt_row("| "," | "," |",row)], 0));
  
  
  var G__14748 = cljs.core.next(seq__14734__$1);
  var G__14749 = null;
  var G__14750 = (0);
  var G__14751 = (0);
  seq__14734 = G__14748;
  chunk__14735 = G__14749;
  count__14736 = G__14750;
  i__14737 = G__14751;
  continue;
  }
  } else {
  return null;
  }
  }
  break;
  }
  } else {
  return null;
  }
  });
  
  cljs.pprint.print_table.cljs$core$IFn$_invoke$arity$1 = (function (rows){
  return cljs.pprint.print_table.cljs$core$IFn$_invoke$arity$2(cljs.core.keys(cljs.core.first(rows)),rows);
  });
  
  cljs.pprint.print_table.cljs$lang$maxFixedArity = 2;
  
  