datahike 0.7.1630

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (282) hide show
  1. package/README.md +226 -0
  2. package/cljs.analyzer.api.js +427 -0
  3. package/cljs.analyzer.api.js.map +1 -0
  4. package/cljs.analyzer.impl.js +86 -0
  5. package/cljs.analyzer.impl.js.map +1 -0
  6. package/cljs.analyzer.impl.namespaces.js +219 -0
  7. package/cljs.analyzer.impl.namespaces.js.map +1 -0
  8. package/cljs.analyzer.js +7186 -0
  9. package/cljs.analyzer.js.map +1 -0
  10. package/cljs.analyzer.passes.and_or.js +141 -0
  11. package/cljs.analyzer.passes.and_or.js.map +1 -0
  12. package/cljs.analyzer.passes.js +104 -0
  13. package/cljs.analyzer.passes.js.map +1 -0
  14. package/cljs.cache.js +1145 -0
  15. package/cljs.cache.js.map +1 -0
  16. package/cljs.cache.wrapped.js +352 -0
  17. package/cljs.cache.wrapped.js.map +1 -0
  18. package/cljs.core.async.impl.buffers.js +489 -0
  19. package/cljs.core.async.impl.buffers.js.map +1 -0
  20. package/cljs.core.async.impl.channels.js +711 -0
  21. package/cljs.core.async.impl.channels.js.map +1 -0
  22. package/cljs.core.async.impl.dispatch.js +81 -0
  23. package/cljs.core.async.impl.dispatch.js.map +1 -0
  24. package/cljs.core.async.impl.ioc_helpers.js +192 -0
  25. package/cljs.core.async.impl.ioc_helpers.js.map +1 -0
  26. package/cljs.core.async.impl.protocols.js +368 -0
  27. package/cljs.core.async.impl.protocols.js.map +1 -0
  28. package/cljs.core.async.impl.timers.js +510 -0
  29. package/cljs.core.async.impl.timers.js.map +1 -0
  30. package/cljs.core.async.js +8813 -0
  31. package/cljs.core.async.js.map +1 -0
  32. package/cljs.core.js +38764 -0
  33. package/cljs.core.js.map +1 -0
  34. package/cljs.env.js +60 -0
  35. package/cljs.env.js.map +1 -0
  36. package/cljs.nodejs.js +80 -0
  37. package/cljs.nodejs.js.map +1 -0
  38. package/cljs.reader.js +462 -0
  39. package/cljs.reader.js.map +1 -0
  40. package/cljs.spec.alpha.js +5312 -0
  41. package/cljs.spec.alpha.js.map +1 -0
  42. package/cljs.spec.gen.alpha.js +2020 -0
  43. package/cljs.spec.gen.alpha.js.map +1 -0
  44. package/cljs.tagged_literals.js +103 -0
  45. package/cljs.tagged_literals.js.map +1 -0
  46. package/cljs.tools.reader.edn.js +960 -0
  47. package/cljs.tools.reader.edn.js.map +1 -0
  48. package/cljs.tools.reader.impl.commons.js +217 -0
  49. package/cljs.tools.reader.impl.commons.js.map +1 -0
  50. package/cljs.tools.reader.impl.errors.js +441 -0
  51. package/cljs.tools.reader.impl.errors.js.map +1 -0
  52. package/cljs.tools.reader.impl.inspect.js +182 -0
  53. package/cljs.tools.reader.impl.inspect.js.map +1 -0
  54. package/cljs.tools.reader.impl.utils.js +429 -0
  55. package/cljs.tools.reader.impl.utils.js.map +1 -0
  56. package/cljs.tools.reader.js +1830 -0
  57. package/cljs.tools.reader.js.map +1 -0
  58. package/cljs.tools.reader.reader_types.js +838 -0
  59. package/cljs.tools.reader.reader_types.js.map +1 -0
  60. package/cljs_env.js +18192 -0
  61. package/cljs_node_io.core.js +1278 -0
  62. package/cljs_node_io.core.js.map +1 -0
  63. package/cljs_node_io.file.js +918 -0
  64. package/cljs_node_io.file.js.map +1 -0
  65. package/cljs_node_io.fs.js +3911 -0
  66. package/cljs_node_io.fs.js.map +1 -0
  67. package/clojure.data.js +319 -0
  68. package/clojure.data.js.map +1 -0
  69. package/clojure.edn.js +119 -0
  70. package/clojure.edn.js.map +1 -0
  71. package/clojure.set.js +406 -0
  72. package/clojure.set.js.map +1 -0
  73. package/clojure.string.js +502 -0
  74. package/clojure.string.js.map +1 -0
  75. package/clojure.walk.js +156 -0
  76. package/clojure.walk.js.map +1 -0
  77. package/datahike.api.impl.js +621 -0
  78. package/datahike.api.impl.js.map +1 -0
  79. package/datahike.api.specification.js +85 -0
  80. package/datahike.api.specification.js.map +1 -0
  81. package/datahike.array.js +275 -0
  82. package/datahike.array.js.map +1 -0
  83. package/datahike.config.js +437 -0
  84. package/datahike.config.js.map +1 -0
  85. package/datahike.connections.js +55 -0
  86. package/datahike.connections.js.map +1 -0
  87. package/datahike.connector.js +1248 -0
  88. package/datahike.connector.js.map +1 -0
  89. package/datahike.constants.js +66 -0
  90. package/datahike.constants.js.map +1 -0
  91. package/datahike.core.js +628 -0
  92. package/datahike.core.js.map +1 -0
  93. package/datahike.datom.js +963 -0
  94. package/datahike.datom.js.map +1 -0
  95. package/datahike.db.interface.js +819 -0
  96. package/datahike.db.interface.js.map +1 -0
  97. package/datahike.db.js +3095 -0
  98. package/datahike.db.js.map +1 -0
  99. package/datahike.db.search.js +1004 -0
  100. package/datahike.db.search.js.map +1 -0
  101. package/datahike.db.transaction.js +1904 -0
  102. package/datahike.db.transaction.js.map +1 -0
  103. package/datahike.db.utils.js +642 -0
  104. package/datahike.db.utils.js.map +1 -0
  105. package/datahike.gc.js +1618 -0
  106. package/datahike.gc.js.map +1 -0
  107. package/datahike.impl.entity.js +604 -0
  108. package/datahike.impl.entity.js.map +1 -0
  109. package/datahike.index.interface.js +484 -0
  110. package/datahike.index.interface.js.map +1 -0
  111. package/datahike.index.js +50 -0
  112. package/datahike.index.js.map +1 -0
  113. package/datahike.index.persistent_set.js +1250 -0
  114. package/datahike.index.persistent_set.js.map +1 -0
  115. package/datahike.js.api.js +2211 -0
  116. package/datahike.js.api.js.map +1 -0
  117. package/datahike.lru.js +404 -0
  118. package/datahike.lru.js.map +1 -0
  119. package/datahike.pull_api.js +533 -0
  120. package/datahike.pull_api.js.map +1 -0
  121. package/datahike.query.js +11891 -0
  122. package/datahike.query.js.map +1 -0
  123. package/datahike.query_stats.js +152 -0
  124. package/datahike.query_stats.js.map +1 -0
  125. package/datahike.readers.js +166 -0
  126. package/datahike.readers.js.map +1 -0
  127. package/datahike.schema.js +251 -0
  128. package/datahike.schema.js.map +1 -0
  129. package/datahike.schema_cache.js +66 -0
  130. package/datahike.schema_cache.js.map +1 -0
  131. package/datahike.spec.js +70 -0
  132. package/datahike.spec.js.map +1 -0
  133. package/datahike.store.js +514 -0
  134. package/datahike.store.js.map +1 -0
  135. package/datahike.tools.js +436 -0
  136. package/datahike.tools.js.map +1 -0
  137. package/datahike.writer.js +3463 -0
  138. package/datahike.writer.js.map +1 -0
  139. package/datahike.writing.js +3168 -0
  140. package/datahike.writing.js.map +1 -0
  141. package/datalog.parser.impl.js +1421 -0
  142. package/datalog.parser.impl.js.map +1 -0
  143. package/datalog.parser.impl.proto.js +213 -0
  144. package/datalog.parser.impl.proto.js.map +1 -0
  145. package/datalog.parser.impl.util.js +117 -0
  146. package/datalog.parser.impl.util.js.map +1 -0
  147. package/datalog.parser.js +47 -0
  148. package/datalog.parser.js.map +1 -0
  149. package/datalog.parser.pull.js +2603 -0
  150. package/datalog.parser.pull.js.map +1 -0
  151. package/datalog.parser.type.js +7502 -0
  152. package/datalog.parser.type.js.map +1 -0
  153. package/datalog.parser.util.js +60 -0
  154. package/datalog.parser.util.js.map +1 -0
  155. package/environ.core.js +263 -0
  156. package/environ.core.js.map +1 -0
  157. package/fress.api.js +607 -0
  158. package/fress.api.js.map +1 -0
  159. package/fress.impl.adler32.js +435 -0
  160. package/fress.impl.adler32.js.map +1 -0
  161. package/fress.impl.bigint.js +185 -0
  162. package/fress.impl.bigint.js.map +1 -0
  163. package/fress.impl.buffer.js +1087 -0
  164. package/fress.impl.buffer.js.map +1 -0
  165. package/fress.impl.codes.js +105 -0
  166. package/fress.impl.codes.js.map +1 -0
  167. package/fress.impl.hopmap.js +603 -0
  168. package/fress.impl.hopmap.js.map +1 -0
  169. package/fress.impl.ranges.js +49 -0
  170. package/fress.impl.ranges.js.map +1 -0
  171. package/fress.impl.raw_input.js +837 -0
  172. package/fress.impl.raw_input.js.map +1 -0
  173. package/fress.impl.raw_output.js +653 -0
  174. package/fress.impl.raw_output.js.map +1 -0
  175. package/fress.impl.table.js +133 -0
  176. package/fress.impl.table.js.map +1 -0
  177. package/fress.reader.js +2312 -0
  178. package/fress.reader.js.map +1 -0
  179. package/fress.util.js +458 -0
  180. package/fress.util.js.map +1 -0
  181. package/fress.writer.js +2141 -0
  182. package/fress.writer.js.map +1 -0
  183. package/geheimnis.aes.js +132 -0
  184. package/geheimnis.aes.js.map +1 -0
  185. package/hasch.base64.js +42 -0
  186. package/hasch.base64.js.map +1 -0
  187. package/hasch.benc.js +201 -0
  188. package/hasch.benc.js.map +1 -0
  189. package/hasch.core.js +188 -0
  190. package/hasch.core.js.map +1 -0
  191. package/hasch.platform.js +221 -0
  192. package/hasch.platform.js.map +1 -0
  193. package/incognito.base.js +276 -0
  194. package/incognito.base.js.map +1 -0
  195. package/incognito.edn.js +54 -0
  196. package/incognito.edn.js.map +1 -0
  197. package/incognito.fressian.js +330 -0
  198. package/incognito.fressian.js.map +1 -0
  199. package/index.d.ts +660 -0
  200. package/is.simm.partial_cps.async.js +142 -0
  201. package/is.simm.partial_cps.async.js.map +1 -0
  202. package/is.simm.partial_cps.runtime.js +65 -0
  203. package/is.simm.partial_cps.runtime.js.map +1 -0
  204. package/is.simm.partial_cps.sequence.js +1255 -0
  205. package/is.simm.partial_cps.sequence.js.map +1 -0
  206. package/konserve.cache.js +2519 -0
  207. package/konserve.cache.js.map +1 -0
  208. package/konserve.compressor.js +502 -0
  209. package/konserve.compressor.js.map +1 -0
  210. package/konserve.core.js +8052 -0
  211. package/konserve.core.js.map +1 -0
  212. package/konserve.encryptor.js +553 -0
  213. package/konserve.encryptor.js.map +1 -0
  214. package/konserve.gc.js +541 -0
  215. package/konserve.gc.js.map +1 -0
  216. package/konserve.impl.defaults.js +8290 -0
  217. package/konserve.impl.defaults.js.map +1 -0
  218. package/konserve.impl.storage_layout.js +849 -0
  219. package/konserve.impl.storage_layout.js.map +1 -0
  220. package/konserve.memory.js +2102 -0
  221. package/konserve.memory.js.map +1 -0
  222. package/konserve.node_filestore.js +2951 -0
  223. package/konserve.node_filestore.js.map +1 -0
  224. package/konserve.protocols.js +590 -0
  225. package/konserve.protocols.js.map +1 -0
  226. package/konserve.serializers.js +562 -0
  227. package/konserve.serializers.js.map +1 -0
  228. package/konserve.store.js +2245 -0
  229. package/konserve.store.js.map +1 -0
  230. package/konserve.tiered.js +9574 -0
  231. package/konserve.tiered.js.map +1 -0
  232. package/konserve.utils.js +180 -0
  233. package/konserve.utils.js.map +1 -0
  234. package/me.tonsky.persistent_sorted_set.arrays.js +66 -0
  235. package/me.tonsky.persistent_sorted_set.arrays.js.map +1 -0
  236. package/me.tonsky.persistent_sorted_set.branch.js +2779 -0
  237. package/me.tonsky.persistent_sorted_set.branch.js.map +1 -0
  238. package/me.tonsky.persistent_sorted_set.btset.js +14196 -0
  239. package/me.tonsky.persistent_sorted_set.btset.js.map +1 -0
  240. package/me.tonsky.persistent_sorted_set.impl.node.js +324 -0
  241. package/me.tonsky.persistent_sorted_set.impl.node.js.map +1 -0
  242. package/me.tonsky.persistent_sorted_set.impl.storage.js +123 -0
  243. package/me.tonsky.persistent_sorted_set.impl.storage.js.map +1 -0
  244. package/me.tonsky.persistent_sorted_set.js +890 -0
  245. package/me.tonsky.persistent_sorted_set.js.map +1 -0
  246. package/me.tonsky.persistent_sorted_set.leaf.js +561 -0
  247. package/me.tonsky.persistent_sorted_set.leaf.js.map +1 -0
  248. package/me.tonsky.persistent_sorted_set.util.js +402 -0
  249. package/me.tonsky.persistent_sorted_set.util.js.map +1 -0
  250. package/medley.core.js +1857 -0
  251. package/medley.core.js.map +1 -0
  252. package/package.json +38 -0
  253. package/spec_tools.core.js +1925 -0
  254. package/spec_tools.core.js.map +1 -0
  255. package/spec_tools.data_spec.js +1291 -0
  256. package/spec_tools.data_spec.js.map +1 -0
  257. package/spec_tools.form.js +185 -0
  258. package/spec_tools.form.js.map +1 -0
  259. package/spec_tools.impl.js +362 -0
  260. package/spec_tools.impl.js.map +1 -0
  261. package/spec_tools.parse.js +427 -0
  262. package/spec_tools.parse.js.map +1 -0
  263. package/spec_tools.transform.js +288 -0
  264. package/spec_tools.transform.js.map +1 -0
  265. package/superv.async.js +8617 -0
  266. package/superv.async.js.map +1 -0
  267. package/tailrecursion.priority_map.js +994 -0
  268. package/tailrecursion.priority_map.js.map +1 -0
  269. package/taoensso.encore.js +12385 -0
  270. package/taoensso.encore.js.map +1 -0
  271. package/taoensso.timbre.appenders.core.js +239 -0
  272. package/taoensso.timbre.appenders.core.js.map +1 -0
  273. package/taoensso.timbre.js +1264 -0
  274. package/taoensso.timbre.js.map +1 -0
  275. package/taoensso.truss.impl.js +442 -0
  276. package/taoensso.truss.impl.js.map +1 -0
  277. package/taoensso.truss.js +743 -0
  278. package/taoensso.truss.js.map +1 -0
  279. package/test-config-keys.js +33 -0
  280. package/test-final.js +36 -0
  281. package/test-key-duplication.js +67 -0
  282. package/test.js +557 -0
@@ -0,0 +1,1004 @@
1
+ var $CLJS = require("./cljs_env");
2
+ var $jscomp = $CLJS.$jscomp;
3
+ var COMPILED = false;
4
+ require("./cljs.core.js");
5
+ require("./cljs.cache.wrapped.js");
6
+ require("./datahike.array.js");
7
+ require("./datahike.constants.js");
8
+ require("./datahike.datom.js");
9
+ require("./datahike.db.utils.js");
10
+ require("./datahike.index.js");
11
+ require("./datahike.lru.js");
12
+ require("./datahike.tools.js");
13
+ require("./environ.core.js");
14
+ var environ=$CLJS.environ || ($CLJS.environ = {});
15
+ var fress=$CLJS.fress || ($CLJS.fress = {});
16
+ var datahike=$CLJS.datahike || ($CLJS.datahike = {});
17
+ var clojure=$CLJS.clojure || ($CLJS.clojure = {});
18
+ var hasch=$CLJS.hasch || ($CLJS.hasch = {});
19
+ var tailrecursion=$CLJS.tailrecursion || ($CLJS.tailrecursion = {});
20
+ var superv=$CLJS.superv || ($CLJS.superv = {});
21
+ var geheimnis=$CLJS.geheimnis || ($CLJS.geheimnis = {});
22
+ var is=$CLJS.is || ($CLJS.is = {});
23
+ var cljs=$CLJS.cljs || ($CLJS.cljs = {});
24
+ var cljs_node_io=$CLJS.cljs_node_io || ($CLJS.cljs_node_io = {});
25
+ var goog=$CLJS.goog || ($CLJS.goog = {});
26
+ var konserve=$CLJS.konserve || ($CLJS.konserve = {});
27
+ var datalog=$CLJS.datalog || ($CLJS.datalog = {});
28
+ var spec_tools=$CLJS.spec_tools || ($CLJS.spec_tools = {});
29
+ var taoensso=$CLJS.taoensso || ($CLJS.taoensso = {});
30
+ var incognito=$CLJS.incognito || ($CLJS.incognito = {});
31
+ var medley=$CLJS.medley || ($CLJS.medley = {});
32
+ var me=$CLJS.me || ($CLJS.me = {});
33
+
34
+ $CLJS.SHADOW_ENV.setLoaded("datahike.db.search.js");
35
+
36
+ goog.provide('datahike.db.search');
37
+ datahike.db.search.db_caches = cljs.cache.wrapped.lru_cache_factory.cljs$core$IFn$_invoke$arity$variadic(cljs.core.PersistentArrayMap.EMPTY,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,"threshold","threshold",204221583),new cljs.core.Keyword(null,"datahike-max-db-caches","datahike-max-db-caches",291797403).cljs$core$IFn$_invoke$arity$2(environ.core.env,(5))], 0));
38
+ datahike.db.search.memoize_for = (function datahike$db$search$memoize_for(db,key,f){
39
+ if(((((function (){var or__5002__auto__ = new cljs.core.Keyword(null,"cache-size","cache-size",-591529473).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,"config","config",994861415).cljs$core$IFn$_invoke$arity$1(db));
40
+ if(cljs.core.truth_(or__5002__auto__)){
41
+ return or__5002__auto__;
42
+ } else {
43
+ return (0);
44
+ }
45
+ })() === (0))) || ((new cljs.core.Keyword(null,"hash","hash",-13781596).cljs$core$IFn$_invoke$arity$1(db) === (0))))){
46
+ return (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null, ));
47
+ } else {
48
+ var db_cache = cljs.cache.wrapped.lookup_or_miss.cljs$core$IFn$_invoke$arity$3(datahike.db.search.db_caches,new cljs.core.Keyword(null,"hash","hash",-13781596).cljs$core$IFn$_invoke$arity$1(db),(function (_){
49
+ return datahike.lru.lru_datom_cache_factory.cljs$core$IFn$_invoke$arity$variadic(cljs.core.PersistentArrayMap.EMPTY,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,"threshold","threshold",204221583),new cljs.core.Keyword(null,"cache-size","cache-size",-591529473).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,"config","config",994861415).cljs$core$IFn$_invoke$arity$1(db))], 0));
50
+ }));
51
+ return cljs.cache.wrapped.lookup_or_miss.cljs$core$IFn$_invoke$arity$3(db_cache,key,(function (_){
52
+ return (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null, ));
53
+ }));
54
+ }
55
+ });
56
+ /**
57
+ * Checks if database pattern is valid
58
+ */
59
+ datahike.db.search.validate_pattern = (function datahike$db$search$validate_pattern(pattern,can_have_vars){
60
+ var bound_var_QMARK_ = (cljs.core.truth_(can_have_vars)?cljs.core.symbol_QMARK_:(function (_){
61
+ return false;
62
+ }));
63
+ var vec__107544 = pattern;
64
+ var e = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107544,(0),null);
65
+ var a = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107544,(1),null);
66
+ var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107544,(2),null);
67
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107544,(3),null);
68
+ var added_QMARK_ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107544,(4),null);
69
+ if(cljs.core.truth_((function (){var or__5002__auto__ = typeof e === 'number';
70
+ if(or__5002__auto__){
71
+ return or__5002__auto__;
72
+ } else {
73
+ var or__5002__auto____$1 = (e == null);
74
+ if(or__5002__auto____$1){
75
+ return or__5002__auto____$1;
76
+ } else {
77
+ var or__5002__auto____$2 = (bound_var_QMARK_.cljs$core$IFn$_invoke$arity$1 ? bound_var_QMARK_.cljs$core$IFn$_invoke$arity$1(e) : bound_var_QMARK_.call(null, e));
78
+ if(cljs.core.truth_(or__5002__auto____$2)){
79
+ return or__5002__auto____$2;
80
+ } else {
81
+ return ((cljs.core.vector_QMARK_(e)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((2),cljs.core.count(e))));
82
+ }
83
+ }
84
+ }
85
+ })())){
86
+ } else {
87
+ var G__107548_107940 = (function(){throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2("Bad format for entity-id in pattern, must be a number, nil or vector of two elements.",new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"error","error",-978969032),new cljs.core.Keyword("search","pattern","search/pattern",-596508185),new cljs.core.Keyword(null,"e","e",1381269198),e,new cljs.core.Keyword(null,"pattern","pattern",242135423),pattern], null))})();
88
+ var fexpr__107547_107941 = taoensso.timbre._log_BANG_.cljs$core$IFn$_invoke$arity$14(taoensso.timbre._STAR_config_STAR_,new cljs.core.Keyword(null,"error","error",-978969032),"datahike.db.search",null,37,null,new cljs.core.Keyword(null,"p","p",151049309),new cljs.core.Keyword(null,"auto","auto",-566279492),(new cljs.core.Delay((function (){
89
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["Bad format for entity-id in pattern, must be a number, nil or vector of two elements.",new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"error","error",-978969032),new cljs.core.Keyword("search","pattern","search/pattern",-596508185),new cljs.core.Keyword(null,"e","e",1381269198),e,new cljs.core.Keyword(null,"pattern","pattern",242135423),pattern], null)], null);
90
+ }),null)),null,(381),null,null,null);
91
+ (fexpr__107547_107941.cljs$core$IFn$_invoke$arity$1 ? fexpr__107547_107941.cljs$core$IFn$_invoke$arity$1(G__107548_107940) : fexpr__107547_107941.call(null, G__107548_107940));
92
+ }
93
+
94
+ if(cljs.core.truth_((function (){var or__5002__auto__ = typeof a === 'number';
95
+ if(or__5002__auto__){
96
+ return or__5002__auto__;
97
+ } else {
98
+ var or__5002__auto____$1 = (a instanceof cljs.core.Keyword);
99
+ if(or__5002__auto____$1){
100
+ return or__5002__auto____$1;
101
+ } else {
102
+ var or__5002__auto____$2 = (bound_var_QMARK_.cljs$core$IFn$_invoke$arity$1 ? bound_var_QMARK_.cljs$core$IFn$_invoke$arity$1(a) : bound_var_QMARK_.call(null, a));
103
+ if(cljs.core.truth_(or__5002__auto____$2)){
104
+ return or__5002__auto____$2;
105
+ } else {
106
+ return (a == null);
107
+ }
108
+ }
109
+ }
110
+ })())){
111
+ } else {
112
+ var G__107550_107944 = (function(){throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2("Bad format for attribute in pattern, must be a number, nil or a keyword.",new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"error","error",-978969032),new cljs.core.Keyword("search","pattern","search/pattern",-596508185),new cljs.core.Keyword(null,"a","a",-2123407586),a,new cljs.core.Keyword(null,"pattern","pattern",242135423),pattern], null))})();
113
+ var fexpr__107549_107945 = taoensso.timbre._log_BANG_.cljs$core$IFn$_invoke$arity$14(taoensso.timbre._STAR_config_STAR_,new cljs.core.Keyword(null,"error","error",-978969032),"datahike.db.search",null,44,null,new cljs.core.Keyword(null,"p","p",151049309),new cljs.core.Keyword(null,"auto","auto",-566279492),(new cljs.core.Delay((function (){
114
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["Bad format for attribute in pattern, must be a number, nil or a keyword.",new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"error","error",-978969032),new cljs.core.Keyword("search","pattern","search/pattern",-596508185),new cljs.core.Keyword(null,"a","a",-2123407586),a,new cljs.core.Keyword(null,"pattern","pattern",242135423),pattern], null)], null);
115
+ }),null)),null,(383),null,null,null);
116
+ (fexpr__107549_107945.cljs$core$IFn$_invoke$arity$1 ? fexpr__107549_107945.cljs$core$IFn$_invoke$arity$1(G__107550_107944) : fexpr__107549_107945.call(null, G__107550_107944));
117
+ }
118
+
119
+ if(cljs.core.truth_((function (){var or__5002__auto__ = (!(cljs.core.vector_QMARK_(v)));
120
+ if(or__5002__auto__){
121
+ return or__5002__auto__;
122
+ } else {
123
+ var or__5002__auto____$1 = (v == null);
124
+ if(or__5002__auto____$1){
125
+ return or__5002__auto____$1;
126
+ } else {
127
+ var or__5002__auto____$2 = (bound_var_QMARK_.cljs$core$IFn$_invoke$arity$1 ? bound_var_QMARK_.cljs$core$IFn$_invoke$arity$1(v) : bound_var_QMARK_.call(null, v));
128
+ if(cljs.core.truth_(or__5002__auto____$2)){
129
+ return or__5002__auto____$2;
130
+ } else {
131
+ return ((cljs.core.vector_QMARK_(v)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((2),cljs.core.count(v))));
132
+ }
133
+ }
134
+ }
135
+ })())){
136
+ } else {
137
+ var G__107552_107946 = (function(){throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2("Bad format for value in pattern, must be a scalar, nil or a vector of two elements.",new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"error","error",-978969032),new cljs.core.Keyword("search","pattern","search/pattern",-596508185),new cljs.core.Keyword(null,"v","v",21465059),v,new cljs.core.Keyword(null,"pattern","pattern",242135423),pattern], null))})();
138
+ var fexpr__107551_107947 = taoensso.timbre._log_BANG_.cljs$core$IFn$_invoke$arity$14(taoensso.timbre._STAR_config_STAR_,new cljs.core.Keyword(null,"error","error",-978969032),"datahike.db.search",null,51,null,new cljs.core.Keyword(null,"p","p",151049309),new cljs.core.Keyword(null,"auto","auto",-566279492),(new cljs.core.Delay((function (){
139
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["Bad format for value in pattern, must be a scalar, nil or a vector of two elements.",new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"error","error",-978969032),new cljs.core.Keyword("search","pattern","search/pattern",-596508185),new cljs.core.Keyword(null,"v","v",21465059),v,new cljs.core.Keyword(null,"pattern","pattern",242135423),pattern], null)], null);
140
+ }),null)),null,(385),null,null,null);
141
+ (fexpr__107551_107947.cljs$core$IFn$_invoke$arity$1 ? fexpr__107551_107947.cljs$core$IFn$_invoke$arity$1(G__107552_107946) : fexpr__107551_107947.call(null, G__107552_107946));
142
+ }
143
+
144
+ if(cljs.core.truth_((function (){var or__5002__auto__ = (tx == null);
145
+ if(or__5002__auto__){
146
+ return or__5002__auto__;
147
+ } else {
148
+ var or__5002__auto____$1 = (bound_var_QMARK_.cljs$core$IFn$_invoke$arity$1 ? bound_var_QMARK_.cljs$core$IFn$_invoke$arity$1(tx) : bound_var_QMARK_.call(null, tx));
149
+ if(cljs.core.truth_(or__5002__auto____$1)){
150
+ return or__5002__auto____$1;
151
+ } else {
152
+ return typeof tx === 'number';
153
+ }
154
+ }
155
+ })())){
156
+ } else {
157
+ var G__107554_107948 = (function(){throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2("Bad format for transaction ID in pattern, must be a number or nil.",new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"error","error",-978969032),new cljs.core.Keyword("search","pattern","search/pattern",-596508185),new cljs.core.Keyword(null,"tx","tx",466630418),tx,new cljs.core.Keyword(null,"pattern","pattern",242135423),pattern], null))})();
158
+ var fexpr__107553_107949 = taoensso.timbre._log_BANG_.cljs$core$IFn$_invoke$arity$14(taoensso.timbre._STAR_config_STAR_,new cljs.core.Keyword(null,"error","error",-978969032),"datahike.db.search",null,57,null,new cljs.core.Keyword(null,"p","p",151049309),new cljs.core.Keyword(null,"auto","auto",-566279492),(new cljs.core.Delay((function (){
159
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["Bad format for transaction ID in pattern, must be a number or nil.",new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"error","error",-978969032),new cljs.core.Keyword("search","pattern","search/pattern",-596508185),new cljs.core.Keyword(null,"tx","tx",466630418),tx,new cljs.core.Keyword(null,"pattern","pattern",242135423),pattern], null)], null);
160
+ }),null)),null,(387),null,null,null);
161
+ (fexpr__107553_107949.cljs$core$IFn$_invoke$arity$1 ? fexpr__107553_107949.cljs$core$IFn$_invoke$arity$1(G__107554_107948) : fexpr__107553_107949.call(null, G__107554_107948));
162
+ }
163
+
164
+ if(cljs.core.truth_((function (){var or__5002__auto__ = (added_QMARK_ == null);
165
+ if(or__5002__auto__){
166
+ return or__5002__auto__;
167
+ } else {
168
+ var or__5002__auto____$1 = cljs.core.boolean_QMARK_(added_QMARK_);
169
+ if(or__5002__auto____$1){
170
+ return or__5002__auto____$1;
171
+ } else {
172
+ return (bound_var_QMARK_.cljs$core$IFn$_invoke$arity$1 ? bound_var_QMARK_.cljs$core$IFn$_invoke$arity$1(added_QMARK_) : bound_var_QMARK_.call(null, added_QMARK_));
173
+ }
174
+ }
175
+ })())){
176
+ return null;
177
+ } else {
178
+ var G__107556 = (function(){throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2("Bad format for added? in pattern, must be a boolean value or nil.",new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"error","error",-978969032),new cljs.core.Keyword("search","pattern","search/pattern",-596508185),new cljs.core.Keyword(null,"added?","added?",275514121),added_QMARK_,new cljs.core.Keyword(null,"pattern","pattern",242135423),pattern], null))})();
179
+ var fexpr__107555 = taoensso.timbre._log_BANG_.cljs$core$IFn$_invoke$arity$14(taoensso.timbre._STAR_config_STAR_,new cljs.core.Keyword(null,"error","error",-978969032),"datahike.db.search",null,63,null,new cljs.core.Keyword(null,"p","p",151049309),new cljs.core.Keyword(null,"auto","auto",-566279492),(new cljs.core.Delay((function (){
180
+ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, ["Bad format for added? in pattern, must be a boolean value or nil.",new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"error","error",-978969032),new cljs.core.Keyword("search","pattern","search/pattern",-596508185),new cljs.core.Keyword(null,"added?","added?",275514121),added_QMARK_,new cljs.core.Keyword(null,"pattern","pattern",242135423),pattern], null)], null);
181
+ }),null)),null,(389),null,null,null);
182
+ return (fexpr__107555.cljs$core$IFn$_invoke$arity$1 ? fexpr__107555.cljs$core$IFn$_invoke$arity$1(G__107556) : fexpr__107555.call(null, G__107556));
183
+ }
184
+ });
185
+ datahike.db.search.short_hand__GT_strat_symbol = (function datahike$db$search$short_hand__GT_strat_symbol(x){
186
+ var G__107557 = x;
187
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((1),G__107557)){
188
+ return new cljs.core.Keyword(null,"substitute","substitute",655857369);
189
+ } else {
190
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,"f","f",43394975,null),G__107557)){
191
+ return new cljs.core.Keyword(null,"filter","filter",-948537934);
192
+ } else {
193
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,"_","_",-1201019570,null),G__107557)){
194
+ return null;
195
+ } else {
196
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"substitute","substitute",655857369),G__107557)){
197
+ return new cljs.core.Keyword(null,"substitute","substitute",655857369);
198
+ } else {
199
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"filter","filter",-948537934),G__107557)){
200
+ return new cljs.core.Keyword(null,"filter","filter",-948537934);
201
+ } else {
202
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__107557)){
203
+ return null;
204
+ } else {
205
+ throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__107557)].join('')));
206
+
207
+ }
208
+ }
209
+ }
210
+ }
211
+ }
212
+ }
213
+ });
214
+ datahike.db.search.datom_expr = (function datahike$db$search$datom_expr(p__107558,p__107559,e_bound,tx_bound){
215
+ var vec__107560 = p__107558;
216
+ var esym = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107560,(0),null);
217
+ var asym = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107560,(1),null);
218
+ var vsym = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107560,(2),null);
219
+ var tsym = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107560,(3),null);
220
+ var vec__107563 = p__107559;
221
+ var e_strat = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107563,(0),null);
222
+ var a_strat = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107563,(1),null);
223
+ var v_strat = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107563,(2),null);
224
+ var t_strat = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107563,(3),null);
225
+ var subst = (function (expr,strategy,bound){
226
+ var G__107567 = strategy;
227
+ var G__107567__$1 = (((G__107567 instanceof cljs.core.Keyword))?G__107567.fqn:null);
228
+ switch (G__107567__$1) {
229
+ case "substitute":
230
+ return expr;
231
+
232
+ break;
233
+ default:
234
+ return bound;
235
+
236
+ }
237
+ });
238
+ return cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("datahike.datom","datom","datahike.datom/datom",371953145,null),null,(1),null)),(new cljs.core.List(null,subst(esym,e_strat,e_bound),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,subst(asym,a_strat,null),null,(1),null)),(new cljs.core.List(null,subst(vsym,v_strat,null),null,(1),null)),(new cljs.core.List(null,subst(tsym,t_strat,tx_bound),null,(1),null))], 0))));
239
+ });
240
+ datahike.db.search.lookup_strategy_sub = (function datahike$db$search$lookup_strategy_sub(index_key,eavt_symbols,eavt_strats){
241
+ var vec__107573 = eavt_strats;
242
+ var _ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107573,(0),null);
243
+ var ___$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107573,(1),null);
244
+ var v_strat = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107573,(2),null);
245
+ var t_strat = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107573,(3),null);
246
+ var vec__107576 = eavt_symbols;
247
+ var ___$2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107576,(0),null);
248
+ var ___$3 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107576,(1),null);
249
+ var v_sym = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107576,(2),null);
250
+ var t_sym = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107576,(3),null);
251
+ var strat_set = cljs.core.set(eavt_strats);
252
+ var has_substitution = cljs.core.contains_QMARK_(strat_set,new cljs.core.Keyword(null,"substitute","substitute",655857369));
253
+ var index_expr = cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(index_key);
254
+ var lower_datom = datahike.db.search.datom_expr(eavt_symbols,eavt_strats,new cljs.core.Symbol(null,"e0","e0",1792671355,null),new cljs.core.Symbol(null,"tx0","tx0",-4656209,null));
255
+ var upper_datom = datahike.db.search.datom_expr(eavt_symbols,eavt_strats,new cljs.core.Symbol(null,"emax","emax",-774998526,null),new cljs.core.Symbol(null,"txmax","txmax",552613851,null));
256
+ var lookup_expr = ((has_substitution)?cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("datahike.index","-slice","datahike.index/-slice",861225230,null),null,(1),null)),(new cljs.core.List(null,index_expr,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,lower_datom,null,(1),null)),(new cljs.core.List(null,upper_datom,null,(1),null)),(new cljs.core.List(null,index_key,null,(1),null))], 0)))):cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("datahike.index","-all","datahike.index/-all",-1913106123,null),null,(1),null)),(new cljs.core.List(null,index_expr,null,(1),null))))));
257
+ var dexpr = datahike.datom.type_hint_datom(cljs.core.gensym.cljs$core$IFn$_invoke$arity$0());
258
+ var equalities = cljs.core.remove.cljs$core$IFn$_invoke$arity$2(cljs.core.nil_QMARK_,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"filter","filter",-948537934),v_strat))?cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("datahike.array","a=","datahike.array/a=",-1371582485,null),null,(1),null)),(new cljs.core.List(null,v_sym,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,".-v",".-v",-1290861587,null),null,(1),null)),(new cljs.core.List(null,dexpr,null,(1),null))))),null,(1),null))], 0)))):null),((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,"filter","filter",-948537934),t_strat))?cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","=","cljs.core/=",-1891498332,null),null,(1),null)),(new cljs.core.List(null,t_sym,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("datahike.datom","datom-tx","datahike.datom/datom-tx",1658925732,null),null,(1),null)),(new cljs.core.List(null,dexpr,null,(1),null))))),null,(1),null))], 0)))):null)], null));
259
+ var added = cljs.core.gensym.cljs$core$IFn$_invoke$arity$0();
260
+ return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.array_map,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Keyword(null,"index-key","index-key",1759535983),null,(1),null)),(new cljs.core.List(null,index_key,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(eavt_strats),null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","fn","cljs.core/fn",-1065745098,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,index_expr,null,(1),null)),(new cljs.core.List(null,eavt_symbols,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,((cljs.core.seq(equalities))?cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","filter","cljs.core/filter",-251894204,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","fn","cljs.core/fn",-1065745098,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,dexpr,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","and","cljs.core/and",-6692549,null),null,(1),null)),equalities))),null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,lookup_expr,null,(1),null))], 0)))):lookup_expr),null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","fn","cljs.core/fn",-1065745098,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,index_expr,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol("cljs.core","fn","cljs.core/fn",-1065745098,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(eavt_symbols,(new cljs.core.List(null,added,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,lookup_expr,null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0)))));
261
+ });
262
+ datahike.db.search.get_search_strategy_impl = (function datahike$db$search$get_search_strategy_impl(e,a,v,t,i){
263
+ var vec__107584 = new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [e,a,v,t,i], null);
264
+ var G__107579 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107584,(0),null);
265
+ var G__107580 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107584,(1),null);
266
+ var G__107581 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107584,(2),null);
267
+ var G__107582 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107584,(3),null);
268
+ var G__107583 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107584,(4),null);
269
+ if(cljs.core.truth_(G__107579)){
270
+ if(cljs.core.truth_(G__107580)){
271
+ if(cljs.core.truth_(G__107581)){
272
+ if(cljs.core.truth_(G__107582)){
273
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (eavt){
274
+ return (function (e__$1,a__$1,v__$1,tx,G__107588){
275
+ var G__107589 = eavt;
276
+ var G__107590 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,v__$1,tx);
277
+ var G__107591 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,v__$1,tx);
278
+ var G__107592 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
279
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107589,G__107590,G__107591,G__107592) : datahike.index._slice.call(null, G__107589,G__107590,G__107591,G__107592));
280
+ });
281
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"substitute","substitute",655857369),new cljs.core.Keyword(null,"substitute","substitute",655857369),new cljs.core.Keyword(null,"substitute","substitute",655857369),new cljs.core.Keyword(null,"substitute","substitute",655857369)], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (eavt,p__107593){
282
+ var vec__107594 = p__107593;
283
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107594,(0),null);
284
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107594,(1),null);
285
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107594,(2),null);
286
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107594,(3),null);
287
+ var G__107597 = eavt;
288
+ var G__107598 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,v__$1,tx);
289
+ var G__107599 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,v__$1,tx);
290
+ var G__107600 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
291
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107597,G__107598,G__107599,G__107600) : datahike.index._slice.call(null, G__107597,G__107598,G__107599,G__107600));
292
+ })], null);
293
+ } else {
294
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (eavt){
295
+ return (function (e__$1,a__$1,v__$1,tx,G__107602){
296
+ var G__107603 = eavt;
297
+ var G__107604 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,v__$1,(536870912));
298
+ var G__107605 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,v__$1,(2147483647));
299
+ var G__107606 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
300
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107603,G__107604,G__107605,G__107606) : datahike.index._slice.call(null, G__107603,G__107604,G__107605,G__107606));
301
+ });
302
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"substitute","substitute",655857369),new cljs.core.Keyword(null,"substitute","substitute",655857369),new cljs.core.Keyword(null,"substitute","substitute",655857369),null], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (eavt,p__107607){
303
+ var vec__107608 = p__107607;
304
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107608,(0),null);
305
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107608,(1),null);
306
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107608,(2),null);
307
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107608,(3),null);
308
+ var G__107611 = eavt;
309
+ var G__107612 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,v__$1,(536870912));
310
+ var G__107613 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,v__$1,(2147483647));
311
+ var G__107614 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
312
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107611,G__107612,G__107613,G__107614) : datahike.index._slice.call(null, G__107611,G__107612,G__107613,G__107614));
313
+ })], null);
314
+ }
315
+ } else {
316
+ if(cljs.core.truth_(G__107582)){
317
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (eavt){
318
+ return (function (e__$1,a__$1,v__$1,tx,G__107616){
319
+ var G__107617 = eavt;
320
+ var G__107618 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,null,(536870912));
321
+ var G__107619 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,null,(2147483647));
322
+ var G__107620 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
323
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107617,G__107618,G__107619,G__107620) : datahike.index._slice.call(null, G__107617,G__107618,G__107619,G__107620));
324
+ });
325
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"substitute","substitute",655857369),new cljs.core.Keyword(null,"substitute","substitute",655857369),null,new cljs.core.Keyword(null,"filter","filter",-948537934)], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (eavt,p__107621){
326
+ var vec__107622 = p__107621;
327
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107622,(0),null);
328
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107622,(1),null);
329
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107622,(2),null);
330
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107622,(3),null);
331
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (G__107615){
332
+ return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(tx,G__107615.datahike$datom$IDatom$datom_tx$arity$1(null, ));
333
+ }),(function (){var G__107625 = eavt;
334
+ var G__107626 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,null,(536870912));
335
+ var G__107627 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,null,(2147483647));
336
+ var G__107628 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
337
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107625,G__107626,G__107627,G__107628) : datahike.index._slice.call(null, G__107625,G__107626,G__107627,G__107628));
338
+ })());
339
+ })], null);
340
+ } else {
341
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (eavt){
342
+ return (function (e__$1,a__$1,v__$1,tx,G__107630){
343
+ var G__107631 = eavt;
344
+ var G__107632 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,null,(536870912));
345
+ var G__107633 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,null,(2147483647));
346
+ var G__107634 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
347
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107631,G__107632,G__107633,G__107634) : datahike.index._slice.call(null, G__107631,G__107632,G__107633,G__107634));
348
+ });
349
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"substitute","substitute",655857369),new cljs.core.Keyword(null,"substitute","substitute",655857369),null,null], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (eavt,p__107635){
350
+ var vec__107636 = p__107635;
351
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107636,(0),null);
352
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107636,(1),null);
353
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107636,(2),null);
354
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107636,(3),null);
355
+ var G__107639 = eavt;
356
+ var G__107640 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,null,(536870912));
357
+ var G__107641 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,a__$1,null,(2147483647));
358
+ var G__107642 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
359
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107639,G__107640,G__107641,G__107642) : datahike.index._slice.call(null, G__107639,G__107640,G__107641,G__107642));
360
+ })], null);
361
+ }
362
+ }
363
+ } else {
364
+ if(cljs.core.truth_(G__107581)){
365
+ if(cljs.core.truth_(G__107582)){
366
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (eavt){
367
+ return (function (e__$1,a__$1,v__$1,tx,G__107644){
368
+ var G__107645 = eavt;
369
+ var G__107646 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(536870912));
370
+ var G__107647 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(2147483647));
371
+ var G__107648 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
372
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107645,G__107646,G__107647,G__107648) : datahike.index._slice.call(null, G__107645,G__107646,G__107647,G__107648));
373
+ });
374
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"substitute","substitute",655857369),null,new cljs.core.Keyword(null,"filter","filter",-948537934),new cljs.core.Keyword(null,"filter","filter",-948537934)], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (eavt,p__107649){
375
+ var vec__107650 = p__107649;
376
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107650,(0),null);
377
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107650,(1),null);
378
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107650,(2),null);
379
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107650,(3),null);
380
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (G__107643){
381
+ return ((datahike.array.a_EQ_(v__$1,G__107643.v)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(tx,G__107643.datahike$datom$IDatom$datom_tx$arity$1(null, ))));
382
+ }),(function (){var G__107653 = eavt;
383
+ var G__107654 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(536870912));
384
+ var G__107655 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(2147483647));
385
+ var G__107656 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
386
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107653,G__107654,G__107655,G__107656) : datahike.index._slice.call(null, G__107653,G__107654,G__107655,G__107656));
387
+ })());
388
+ })], null);
389
+ } else {
390
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (eavt){
391
+ return (function (e__$1,a__$1,v__$1,tx,G__107658){
392
+ var G__107659 = eavt;
393
+ var G__107660 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(536870912));
394
+ var G__107661 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(2147483647));
395
+ var G__107662 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
396
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107659,G__107660,G__107661,G__107662) : datahike.index._slice.call(null, G__107659,G__107660,G__107661,G__107662));
397
+ });
398
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"substitute","substitute",655857369),null,new cljs.core.Keyword(null,"filter","filter",-948537934),null], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (eavt,p__107663){
399
+ var vec__107664 = p__107663;
400
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107664,(0),null);
401
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107664,(1),null);
402
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107664,(2),null);
403
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107664,(3),null);
404
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (G__107657){
405
+ return datahike.array.a_EQ_(v__$1,G__107657.v);
406
+ }),(function (){var G__107667 = eavt;
407
+ var G__107668 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(536870912));
408
+ var G__107669 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(2147483647));
409
+ var G__107670 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
410
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107667,G__107668,G__107669,G__107670) : datahike.index._slice.call(null, G__107667,G__107668,G__107669,G__107670));
411
+ })());
412
+ })], null);
413
+ }
414
+ } else {
415
+ if(cljs.core.truth_(G__107582)){
416
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (eavt){
417
+ return (function (e__$1,a__$1,v__$1,tx,G__107672){
418
+ var G__107673 = eavt;
419
+ var G__107674 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(536870912));
420
+ var G__107675 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(2147483647));
421
+ var G__107676 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
422
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107673,G__107674,G__107675,G__107676) : datahike.index._slice.call(null, G__107673,G__107674,G__107675,G__107676));
423
+ });
424
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"substitute","substitute",655857369),null,null,new cljs.core.Keyword(null,"filter","filter",-948537934)], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (eavt,p__107677){
425
+ var vec__107678 = p__107677;
426
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107678,(0),null);
427
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107678,(1),null);
428
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107678,(2),null);
429
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107678,(3),null);
430
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (G__107671){
431
+ return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(tx,G__107671.datahike$datom$IDatom$datom_tx$arity$1(null, ));
432
+ }),(function (){var G__107681 = eavt;
433
+ var G__107682 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(536870912));
434
+ var G__107683 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(2147483647));
435
+ var G__107684 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
436
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107681,G__107682,G__107683,G__107684) : datahike.index._slice.call(null, G__107681,G__107682,G__107683,G__107684));
437
+ })());
438
+ })], null);
439
+ } else {
440
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (eavt){
441
+ return (function (e__$1,a__$1,v__$1,tx,G__107686){
442
+ var G__107687 = eavt;
443
+ var G__107688 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(536870912));
444
+ var G__107689 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(2147483647));
445
+ var G__107690 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
446
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107687,G__107688,G__107689,G__107690) : datahike.index._slice.call(null, G__107687,G__107688,G__107689,G__107690));
447
+ });
448
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"substitute","substitute",655857369),null,null,null], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (eavt,p__107691){
449
+ var vec__107692 = p__107691;
450
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107692,(0),null);
451
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107692,(1),null);
452
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107692,(2),null);
453
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107692,(3),null);
454
+ var G__107695 = eavt;
455
+ var G__107696 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(536870912));
456
+ var G__107697 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4(e__$1,null,null,(2147483647));
457
+ var G__107698 = new cljs.core.Keyword(null,"eavt","eavt",-666437073);
458
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107695,G__107696,G__107697,G__107698) : datahike.index._slice.call(null, G__107695,G__107696,G__107697,G__107698));
459
+ })], null);
460
+ }
461
+ }
462
+ }
463
+ } else {
464
+ if(cljs.core.truth_(G__107580)){
465
+ if(cljs.core.truth_(G__107581)){
466
+ if(cljs.core.truth_(G__107582)){
467
+ if(cljs.core.truth_(G__107583)){
468
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (avet){
469
+ return (function (e__$1,a__$1,v__$1,tx,G__107700){
470
+ var G__107701 = avet;
471
+ var G__107702 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((0),a__$1,v__$1,(536870912));
472
+ var G__107703 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),a__$1,v__$1,(2147483647));
473
+ var G__107704 = new cljs.core.Keyword(null,"avet","avet",1383857032);
474
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107701,G__107702,G__107703,G__107704) : datahike.index._slice.call(null, G__107701,G__107702,G__107703,G__107704));
475
+ });
476
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.Keyword(null,"substitute","substitute",655857369),new cljs.core.Keyword(null,"substitute","substitute",655857369),new cljs.core.Keyword(null,"filter","filter",-948537934)], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"avet","avet",1383857032),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (avet,p__107705){
477
+ var vec__107706 = p__107705;
478
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107706,(0),null);
479
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107706,(1),null);
480
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107706,(2),null);
481
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107706,(3),null);
482
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (G__107699){
483
+ return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(tx,G__107699.datahike$datom$IDatom$datom_tx$arity$1(null, ));
484
+ }),(function (){var G__107709 = avet;
485
+ var G__107710 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((0),a__$1,v__$1,(536870912));
486
+ var G__107711 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),a__$1,v__$1,(2147483647));
487
+ var G__107712 = new cljs.core.Keyword(null,"avet","avet",1383857032);
488
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107709,G__107710,G__107711,G__107712) : datahike.index._slice.call(null, G__107709,G__107710,G__107711,G__107712));
489
+ })());
490
+ })], null);
491
+ } else {
492
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (aevt){
493
+ return (function (e__$1,a__$1,v__$1,tx,G__107714){
494
+ var G__107716 = aevt;
495
+ var G__107717 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((0),a__$1,null,(536870912));
496
+ var G__107718 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),a__$1,null,(2147483647));
497
+ var G__107719 = new cljs.core.Keyword(null,"aevt","aevt",-585148059);
498
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107716,G__107717,G__107718,G__107719) : datahike.index._slice.call(null, G__107716,G__107717,G__107718,G__107719));
499
+ });
500
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.Keyword(null,"substitute","substitute",655857369),new cljs.core.Keyword(null,"filter","filter",-948537934),new cljs.core.Keyword(null,"filter","filter",-948537934)], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"aevt","aevt",-585148059),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (aevt,p__107721){
501
+ var vec__107722 = p__107721;
502
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107722,(0),null);
503
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107722,(1),null);
504
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107722,(2),null);
505
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107722,(3),null);
506
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (G__107713){
507
+ return ((datahike.array.a_EQ_(v__$1,G__107713.v)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(tx,G__107713.datahike$datom$IDatom$datom_tx$arity$1(null, ))));
508
+ }),(function (){var G__107725 = aevt;
509
+ var G__107726 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((0),a__$1,null,(536870912));
510
+ var G__107727 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),a__$1,null,(2147483647));
511
+ var G__107728 = new cljs.core.Keyword(null,"aevt","aevt",-585148059);
512
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107725,G__107726,G__107727,G__107728) : datahike.index._slice.call(null, G__107725,G__107726,G__107727,G__107728));
513
+ })());
514
+ })], null);
515
+ }
516
+ } else {
517
+ if(cljs.core.truth_(G__107583)){
518
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (avet){
519
+ return (function (e__$1,a__$1,v__$1,tx,G__107730){
520
+ var G__107731 = avet;
521
+ var G__107732 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((0),a__$1,v__$1,(536870912));
522
+ var G__107733 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),a__$1,v__$1,(2147483647));
523
+ var G__107734 = new cljs.core.Keyword(null,"avet","avet",1383857032);
524
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107731,G__107732,G__107733,G__107734) : datahike.index._slice.call(null, G__107731,G__107732,G__107733,G__107734));
525
+ });
526
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.Keyword(null,"substitute","substitute",655857369),new cljs.core.Keyword(null,"substitute","substitute",655857369),null], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"avet","avet",1383857032),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (avet,p__107735){
527
+ var vec__107737 = p__107735;
528
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107737,(0),null);
529
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107737,(1),null);
530
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107737,(2),null);
531
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107737,(3),null);
532
+ var G__107740 = avet;
533
+ var G__107741 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((0),a__$1,v__$1,(536870912));
534
+ var G__107742 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),a__$1,v__$1,(2147483647));
535
+ var G__107743 = new cljs.core.Keyword(null,"avet","avet",1383857032);
536
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107740,G__107741,G__107742,G__107743) : datahike.index._slice.call(null, G__107740,G__107741,G__107742,G__107743));
537
+ })], null);
538
+ } else {
539
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (aevt){
540
+ return (function (e__$1,a__$1,v__$1,tx,G__107746){
541
+ var G__107747 = aevt;
542
+ var G__107748 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((0),a__$1,null,(536870912));
543
+ var G__107749 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),a__$1,null,(2147483647));
544
+ var G__107750 = new cljs.core.Keyword(null,"aevt","aevt",-585148059);
545
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107747,G__107748,G__107749,G__107750) : datahike.index._slice.call(null, G__107747,G__107748,G__107749,G__107750));
546
+ });
547
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.Keyword(null,"substitute","substitute",655857369),new cljs.core.Keyword(null,"filter","filter",-948537934),null], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"aevt","aevt",-585148059),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (aevt,p__107751){
548
+ var vec__107752 = p__107751;
549
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107752,(0),null);
550
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107752,(1),null);
551
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107752,(2),null);
552
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107752,(3),null);
553
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (G__107745){
554
+ return datahike.array.a_EQ_(v__$1,G__107745.v);
555
+ }),(function (){var G__107755 = aevt;
556
+ var G__107756 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((0),a__$1,null,(536870912));
557
+ var G__107757 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),a__$1,null,(2147483647));
558
+ var G__107758 = new cljs.core.Keyword(null,"aevt","aevt",-585148059);
559
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107755,G__107756,G__107757,G__107758) : datahike.index._slice.call(null, G__107755,G__107756,G__107757,G__107758));
560
+ })());
561
+ })], null);
562
+ }
563
+ }
564
+ } else {
565
+ if(cljs.core.truth_(G__107582)){
566
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (aevt){
567
+ return (function (e__$1,a__$1,v__$1,tx,G__107761){
568
+ var G__107763 = aevt;
569
+ var G__107764 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((0),a__$1,null,(536870912));
570
+ var G__107765 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),a__$1,null,(2147483647));
571
+ var G__107766 = new cljs.core.Keyword(null,"aevt","aevt",-585148059);
572
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107763,G__107764,G__107765,G__107766) : datahike.index._slice.call(null, G__107763,G__107764,G__107765,G__107766));
573
+ });
574
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.Keyword(null,"substitute","substitute",655857369),null,new cljs.core.Keyword(null,"filter","filter",-948537934)], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"aevt","aevt",-585148059),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (aevt,p__107767){
575
+ var vec__107768 = p__107767;
576
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107768,(0),null);
577
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107768,(1),null);
578
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107768,(2),null);
579
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107768,(3),null);
580
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (G__107760){
581
+ return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(tx,G__107760.datahike$datom$IDatom$datom_tx$arity$1(null, ));
582
+ }),(function (){var G__107772 = aevt;
583
+ var G__107773 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((0),a__$1,null,(536870912));
584
+ var G__107774 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),a__$1,null,(2147483647));
585
+ var G__107775 = new cljs.core.Keyword(null,"aevt","aevt",-585148059);
586
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107772,G__107773,G__107774,G__107775) : datahike.index._slice.call(null, G__107772,G__107773,G__107774,G__107775));
587
+ })());
588
+ })], null);
589
+ } else {
590
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (aevt){
591
+ return (function (e__$1,a__$1,v__$1,tx,G__107777){
592
+ var G__107778 = aevt;
593
+ var G__107779 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((0),a__$1,null,(536870912));
594
+ var G__107780 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),a__$1,null,(2147483647));
595
+ var G__107781 = new cljs.core.Keyword(null,"aevt","aevt",-585148059);
596
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107778,G__107779,G__107780,G__107781) : datahike.index._slice.call(null, G__107778,G__107779,G__107780,G__107781));
597
+ });
598
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.Keyword(null,"substitute","substitute",655857369),null,null], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"aevt","aevt",-585148059),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (aevt,p__107783){
599
+ var vec__107784 = p__107783;
600
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107784,(0),null);
601
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107784,(1),null);
602
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107784,(2),null);
603
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107784,(3),null);
604
+ var G__107787 = aevt;
605
+ var G__107788 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((0),a__$1,null,(536870912));
606
+ var G__107789 = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),a__$1,null,(2147483647));
607
+ var G__107790 = new cljs.core.Keyword(null,"aevt","aevt",-585148059);
608
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107787,G__107788,G__107789,G__107790) : datahike.index._slice.call(null, G__107787,G__107788,G__107789,G__107790));
609
+ })], null);
610
+ }
611
+ }
612
+ } else {
613
+ if(cljs.core.truth_(G__107581)){
614
+ if(cljs.core.truth_(G__107582)){
615
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (eavt){
616
+ return (function (e__$1,a__$1,v__$1,tx,G__107792){
617
+ return (datahike.index._all.cljs$core$IFn$_invoke$arity$1 ? datahike.index._all.cljs$core$IFn$_invoke$arity$1(eavt) : datahike.index._all.call(null, eavt));
618
+ });
619
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null,new cljs.core.Keyword(null,"filter","filter",-948537934),new cljs.core.Keyword(null,"filter","filter",-948537934)], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (eavt,p__107793){
620
+ var vec__107794 = p__107793;
621
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107794,(0),null);
622
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107794,(1),null);
623
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107794,(2),null);
624
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107794,(3),null);
625
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (G__107791){
626
+ return ((datahike.array.a_EQ_(v__$1,G__107791.v)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(tx,G__107791.datahike$datom$IDatom$datom_tx$arity$1(null, ))));
627
+ }),(datahike.index._all.cljs$core$IFn$_invoke$arity$1 ? datahike.index._all.cljs$core$IFn$_invoke$arity$1(eavt) : datahike.index._all.call(null, eavt)));
628
+ })], null);
629
+ } else {
630
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (eavt){
631
+ return (function (e__$1,a__$1,v__$1,tx,G__107798){
632
+ return (datahike.index._all.cljs$core$IFn$_invoke$arity$1 ? datahike.index._all.cljs$core$IFn$_invoke$arity$1(eavt) : datahike.index._all.call(null, eavt));
633
+ });
634
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null,new cljs.core.Keyword(null,"filter","filter",-948537934),null], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (eavt,p__107799){
635
+ var vec__107800 = p__107799;
636
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107800,(0),null);
637
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107800,(1),null);
638
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107800,(2),null);
639
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107800,(3),null);
640
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (G__107797){
641
+ return datahike.array.a_EQ_(v__$1,G__107797.v);
642
+ }),(datahike.index._all.cljs$core$IFn$_invoke$arity$1 ? datahike.index._all.cljs$core$IFn$_invoke$arity$1(eavt) : datahike.index._all.call(null, eavt)));
643
+ })], null);
644
+ }
645
+ } else {
646
+ if(cljs.core.truth_(G__107582)){
647
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (eavt){
648
+ return (function (e__$1,a__$1,v__$1,tx,G__107804){
649
+ return (datahike.index._all.cljs$core$IFn$_invoke$arity$1 ? datahike.index._all.cljs$core$IFn$_invoke$arity$1(eavt) : datahike.index._all.call(null, eavt));
650
+ });
651
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null,null,new cljs.core.Keyword(null,"filter","filter",-948537934)], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (eavt,p__107805){
652
+ var vec__107806 = p__107805;
653
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107806,(0),null);
654
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107806,(1),null);
655
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107806,(2),null);
656
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107806,(3),null);
657
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (G__107803){
658
+ return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(tx,G__107803.datahike$datom$IDatom$datom_tx$arity$1(null, ));
659
+ }),(datahike.index._all.cljs$core$IFn$_invoke$arity$1 ? datahike.index._all.cljs$core$IFn$_invoke$arity$1(eavt) : datahike.index._all.call(null, eavt)));
660
+ })], null);
661
+ } else {
662
+ return new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116),(function (eavt){
663
+ return (function (e__$1,a__$1,v__$1,tx,G__107812){
664
+ return (datahike.index._all.cljs$core$IFn$_invoke$arity$1 ? datahike.index._all.cljs$core$IFn$_invoke$arity$1(eavt) : datahike.index._all.call(null, eavt));
665
+ });
666
+ }),new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null,null,null], null),new cljs.core.Keyword(null,"index-key","index-key",1759535983),new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609),(function (eavt,p__107813){
667
+ var vec__107814 = p__107813;
668
+ var e__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107814,(0),null);
669
+ var a__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107814,(1),null);
670
+ var v__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107814,(2),null);
671
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107814,(3),null);
672
+ return (datahike.index._all.cljs$core$IFn$_invoke$arity$1 ? datahike.index._all.cljs$core$IFn$_invoke$arity$1(eavt) : datahike.index._all.call(null, eavt));
673
+ })], null);
674
+ }
675
+ }
676
+ }
677
+ }
678
+ });
679
+ datahike.db.search.empty_lookup_fn = (function datahike$db$search$empty_lookup_fn(var_args){
680
+ var G__107820 = arguments.length;
681
+ switch (G__107820) {
682
+ case 2:
683
+ return datahike.db.search.empty_lookup_fn.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
684
+
685
+ break;
686
+ case 3:
687
+ return datahike.db.search.empty_lookup_fn.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
688
+
689
+ break;
690
+ default:
691
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
692
+
693
+ }
694
+ });
695
+
696
+ (datahike.db.search.empty_lookup_fn.cljs$core$IFn$_invoke$arity$2 = (function (_db_index,p__107822){
697
+ var vec__107823 = p__107822;
698
+ var _e = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107823,(0),null);
699
+ var _a = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107823,(1),null);
700
+ var _v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107823,(2),null);
701
+ var _tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107823,(3),null);
702
+ return cljs.core.PersistentVector.EMPTY;
703
+ }));
704
+
705
+ (datahike.db.search.empty_lookup_fn.cljs$core$IFn$_invoke$arity$3 = (function (_db_index,p__107827,_batch_fn){
706
+ var vec__107828 = p__107827;
707
+ var _e = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107828,(0),null);
708
+ var _a = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107828,(1),null);
709
+ var _v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107828,(2),null);
710
+ var _tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107828,(3),null);
711
+ return cljs.core.PersistentVector.EMPTY;
712
+ }));
713
+
714
+ (datahike.db.search.empty_lookup_fn.cljs$lang$maxFixedArity = 3);
715
+
716
+ datahike.db.search.get_search_strategy = (function datahike$db$search$get_search_strategy(pattern,indexed_QMARK_,temporal_db_QMARK_){
717
+ datahike.db.search.validate_pattern(pattern,true);
718
+
719
+ var vec__107831 = pattern;
720
+ var e = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107831,(0),null);
721
+ var a = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107831,(1),null);
722
+ var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107831,(2),null);
723
+ var tx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107831,(3),null);
724
+ var added_QMARK_ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107831,(4),null);
725
+ if(((cljs.core.not(temporal_db_QMARK_)) && (added_QMARK_ === false))){
726
+ return null;
727
+ } else {
728
+ return datahike.db.search.get_search_strategy_impl(cljs.core.boolean$(e),cljs.core.boolean$(a),(!((v == null))),cljs.core.boolean$(tx),cljs.core.boolean$(indexed_QMARK_));
729
+ }
730
+ });
731
+ datahike.db.search.resolve_db_index = (function datahike$db$search$resolve_db_index(strategy,index_map){
732
+ if(cljs.core.truth_(strategy)){
733
+ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(strategy,new cljs.core.Keyword(null,"db-index","db-index",190385038),cljs.core.get.cljs$core$IFn$_invoke$arity$2(index_map,new cljs.core.Keyword(null,"index-key","index-key",1759535983).cljs$core$IFn$_invoke$arity$1(strategy)));
734
+ } else {
735
+ return null;
736
+ }
737
+ });
738
+ datahike.db.search.indexing_for_pattern_QMARK_ = (function datahike$db$search$indexing_for_pattern_QMARK_(db,pattern){
739
+ var vec__107837 = pattern;
740
+ var _ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107837,(0),null);
741
+ var a = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107837,(1),null);
742
+ var ___$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107837,(2),null);
743
+ var ___$2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107837,(3),null);
744
+ return datahike.db.utils.indexing_QMARK_(db,a);
745
+ });
746
+ datahike.db.search.search_strategy_with_index = (function datahike$db$search$search_strategy_with_index(db,pattern,temporal_QMARK_){
747
+ return datahike.db.search.resolve_db_index(datahike.db.search.get_search_strategy(pattern,datahike.db.search.indexing_for_pattern_QMARK_(db,pattern),temporal_QMARK_),(cljs.core.truth_(temporal_QMARK_)?new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"eavt","eavt",-666437073),new cljs.core.Keyword(null,"temporal-eavt","temporal-eavt",-1065512715).cljs$core$IFn$_invoke$arity$1(db),new cljs.core.Keyword(null,"aevt","aevt",-585148059),new cljs.core.Keyword(null,"temporal-aevt","temporal-aevt",341636346).cljs$core$IFn$_invoke$arity$1(db),new cljs.core.Keyword(null,"avet","avet",1383857032),new cljs.core.Keyword(null,"temporal-avet","temporal-avet",-558341228).cljs$core$IFn$_invoke$arity$1(db)], null):db));
748
+ });
749
+ datahike.db.search.search_current_indices = (function datahike$db$search$search_current_indices(var_args){
750
+ var G__107842 = arguments.length;
751
+ switch (G__107842) {
752
+ case 2:
753
+ return datahike.db.search.search_current_indices.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
754
+
755
+ break;
756
+ case 3:
757
+ return datahike.db.search.search_current_indices.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
758
+
759
+ break;
760
+ default:
761
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
762
+
763
+ }
764
+ });
765
+
766
+ (datahike.db.search.search_current_indices.cljs$core$IFn$_invoke$arity$2 = (function (db,pattern){
767
+ return datahike.db.search.memoize_for(db,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"search","search",1564939822),pattern], null),(function (){
768
+ var temp__5802__auto__ = datahike.db.search.search_strategy_with_index(db,pattern,false);
769
+ if(cljs.core.truth_(temp__5802__auto__)){
770
+ var map__107845 = temp__5802__auto__;
771
+ var map__107845__$1 = cljs.core.__destructure_map(map__107845);
772
+ var db_index = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__107845__$1,new cljs.core.Keyword(null,"db-index","db-index",190385038));
773
+ var lookup_fn = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__107845__$1,new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609));
774
+ return (lookup_fn.cljs$core$IFn$_invoke$arity$2 ? lookup_fn.cljs$core$IFn$_invoke$arity$2(db_index,pattern) : lookup_fn.call(null, db_index,pattern));
775
+ } else {
776
+ return cljs.core.PersistentVector.EMPTY;
777
+ }
778
+ }));
779
+ }));
780
+
781
+ (datahike.db.search.search_current_indices.cljs$core$IFn$_invoke$arity$3 = (function (db,pattern,batch_fn){
782
+ var temp__5802__auto__ = datahike.db.search.search_strategy_with_index(db,pattern,false);
783
+ if(cljs.core.truth_(temp__5802__auto__)){
784
+ var map__107846 = temp__5802__auto__;
785
+ var map__107846__$1 = cljs.core.__destructure_map(map__107846);
786
+ var db_index = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__107846__$1,new cljs.core.Keyword(null,"db-index","db-index",190385038));
787
+ var strategy_vec = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__107846__$1,new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384));
788
+ var backend_fn = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__107846__$1,new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116));
789
+ var G__107853 = strategy_vec;
790
+ var G__107854 = (backend_fn.cljs$core$IFn$_invoke$arity$1 ? backend_fn.cljs$core$IFn$_invoke$arity$1(db_index) : backend_fn.call(null, db_index));
791
+ var G__107855 = cljs.core.identity;
792
+ return (batch_fn.cljs$core$IFn$_invoke$arity$3 ? batch_fn.cljs$core$IFn$_invoke$arity$3(G__107853,G__107854,G__107855) : batch_fn.call(null, G__107853,G__107854,G__107855));
793
+ } else {
794
+ return cljs.core.PersistentVector.EMPTY;
795
+ }
796
+ }));
797
+
798
+ (datahike.db.search.search_current_indices.cljs$lang$maxFixedArity = 3);
799
+
800
+ datahike.db.search.added_QMARK_ = (function datahike$db$search$added_QMARK_(p__107859){
801
+ var vec__107860 = p__107859;
802
+ var _ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107860,(0),null);
803
+ var ___$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107860,(1),null);
804
+ var ___$2 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107860,(2),null);
805
+ var ___$3 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107860,(3),null);
806
+ var added = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__107860,(4),null);
807
+ return added;
808
+ });
809
+ datahike.db.search.filter_by_added = (function datahike$db$search$filter_by_added(var_args){
810
+ var G__107864 = arguments.length;
811
+ switch (G__107864) {
812
+ case 1:
813
+ return datahike.db.search.filter_by_added.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
814
+
815
+ break;
816
+ case 2:
817
+ return datahike.db.search.filter_by_added.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
818
+
819
+ break;
820
+ default:
821
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
822
+
823
+ }
824
+ });
825
+
826
+ (datahike.db.search.filter_by_added.cljs$core$IFn$_invoke$arity$1 = (function (pattern){
827
+ var G__107865 = datahike.db.search.added_QMARK_(pattern);
828
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(true,G__107865)){
829
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$1(datahike.datom.datom_added);
830
+ } else {
831
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(false,G__107865)){
832
+ return cljs.core.remove.cljs$core$IFn$_invoke$arity$1(datahike.datom.datom_added);
833
+ } else {
834
+ return cljs.core.identity;
835
+
836
+ }
837
+ }
838
+ }));
839
+
840
+ (datahike.db.search.filter_by_added.cljs$core$IFn$_invoke$arity$2 = (function (pattern,result){
841
+ var G__107868 = datahike.db.search.added_QMARK_(pattern);
842
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(true,G__107868)){
843
+ return cljs.core.filter.cljs$core$IFn$_invoke$arity$2(datahike.datom.datom_added,result);
844
+ } else {
845
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(false,G__107868)){
846
+ return cljs.core.remove.cljs$core$IFn$_invoke$arity$2(datahike.datom.datom_added,result);
847
+ } else {
848
+ return result;
849
+
850
+ }
851
+ }
852
+ }));
853
+
854
+ (datahike.db.search.filter_by_added.cljs$lang$maxFixedArity = 2);
855
+
856
+ datahike.db.search.search_temporal_indices = (function datahike$db$search$search_temporal_indices(var_args){
857
+ var G__107872 = arguments.length;
858
+ switch (G__107872) {
859
+ case 2:
860
+ return datahike.db.search.search_temporal_indices.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
861
+
862
+ break;
863
+ case 3:
864
+ return datahike.db.search.search_temporal_indices.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
865
+
866
+ break;
867
+ default:
868
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
869
+
870
+ }
871
+ });
872
+
873
+ (datahike.db.search.search_temporal_indices.cljs$core$IFn$_invoke$arity$2 = (function (db,pattern){
874
+ datahike.db.search.validate_pattern(pattern,false);
875
+
876
+ return datahike.db.search.memoize_for(db,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"temporal-search","temporal-search",1645424723),pattern], null),(function (){
877
+ var temp__5802__auto__ = datahike.db.search.search_strategy_with_index(db,pattern,true);
878
+ if(cljs.core.truth_(temp__5802__auto__)){
879
+ var map__107874 = temp__5802__auto__;
880
+ var map__107874__$1 = cljs.core.__destructure_map(map__107874);
881
+ var db_index = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__107874__$1,new cljs.core.Keyword(null,"db-index","db-index",190385038));
882
+ var lookup_fn = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__107874__$1,new cljs.core.Keyword(null,"lookup-fn","lookup-fn",-862560609));
883
+ var result = (lookup_fn.cljs$core$IFn$_invoke$arity$2 ? lookup_fn.cljs$core$IFn$_invoke$arity$2(db_index,pattern) : lookup_fn.call(null, db_index,pattern));
884
+ return datahike.db.search.filter_by_added.cljs$core$IFn$_invoke$arity$2(pattern,result);
885
+ } else {
886
+ return cljs.core.PersistentVector.EMPTY;
887
+ }
888
+ }));
889
+ }));
890
+
891
+ (datahike.db.search.search_temporal_indices.cljs$core$IFn$_invoke$arity$3 = (function (db,pattern,batch_fn){
892
+ datahike.db.search.validate_pattern(pattern,true);
893
+
894
+ var temp__5802__auto__ = datahike.db.search.search_strategy_with_index(db,pattern,true);
895
+ if(cljs.core.truth_(temp__5802__auto__)){
896
+ var map__107878 = temp__5802__auto__;
897
+ var map__107878__$1 = cljs.core.__destructure_map(map__107878);
898
+ var db_index = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__107878__$1,new cljs.core.Keyword(null,"db-index","db-index",190385038));
899
+ var strategy_vec = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__107878__$1,new cljs.core.Keyword(null,"strategy-vec","strategy-vec",47133384));
900
+ var backend_fn = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__107878__$1,new cljs.core.Keyword(null,"backend-fn","backend-fn",-1553469116));
901
+ var G__107880 = strategy_vec;
902
+ var G__107881 = (backend_fn.cljs$core$IFn$_invoke$arity$1 ? backend_fn.cljs$core$IFn$_invoke$arity$1(db_index) : backend_fn.call(null, db_index));
903
+ var G__107882 = datahike.db.search.filter_by_added.cljs$core$IFn$_invoke$arity$1(pattern);
904
+ return (batch_fn.cljs$core$IFn$_invoke$arity$3 ? batch_fn.cljs$core$IFn$_invoke$arity$3(G__107880,G__107881,G__107882) : batch_fn.call(null, G__107880,G__107881,G__107882));
905
+ } else {
906
+ return cljs.core.PersistentVector.EMPTY;
907
+ }
908
+ }));
909
+
910
+ (datahike.db.search.search_temporal_indices.cljs$lang$maxFixedArity = 3);
911
+
912
+ datahike.db.search.index_type = (function datahike$db$search$index_type(db,pattern){
913
+ var idx = datahike.db.search.indexing_for_pattern_QMARK_(db,pattern);
914
+ var a = new cljs.core.Keyword(null,"index-key","index-key",1759535983).cljs$core$IFn$_invoke$arity$1(datahike.db.search.get_search_strategy(pattern,idx,false));
915
+ var b = new cljs.core.Keyword(null,"index-key","index-key",1759535983).cljs$core$IFn$_invoke$arity$1(datahike.db.search.get_search_strategy(pattern,idx,true));
916
+ if((((a == null)) || ((a instanceof cljs.core.Keyword)))){
917
+ } else {
918
+ throw (new Error("Assert failed: (or (nil? a) (keyword? a))"));
919
+ }
920
+
921
+ if((((b == null)) || ((b instanceof cljs.core.Keyword)))){
922
+ } else {
923
+ throw (new Error("Assert failed: (or (nil? b) (keyword? b))"));
924
+ }
925
+
926
+ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(a,b)){
927
+ return a;
928
+ } else {
929
+ return null;
930
+ }
931
+ });
932
+ datahike.db.search.temporal_search = (function datahike$db$search$temporal_search(var_args){
933
+ var G__107893 = arguments.length;
934
+ switch (G__107893) {
935
+ case 2:
936
+ return datahike.db.search.temporal_search.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
937
+
938
+ break;
939
+ case 3:
940
+ return datahike.db.search.temporal_search.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
941
+
942
+ break;
943
+ default:
944
+ throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
945
+
946
+ }
947
+ });
948
+
949
+ (datahike.db.search.temporal_search.cljs$core$IFn$_invoke$arity$2 = (function (db,pattern){
950
+ datahike.db.search.validate_pattern(pattern,false);
951
+
952
+ return datahike.db.utils.distinct_datoms(db,datahike.db.search.index_type(db,pattern),datahike.db.search.search_current_indices.cljs$core$IFn$_invoke$arity$2(db,pattern),datahike.db.search.search_temporal_indices.cljs$core$IFn$_invoke$arity$2(db,pattern));
953
+ }));
954
+
955
+ (datahike.db.search.temporal_search.cljs$core$IFn$_invoke$arity$3 = (function (db,pattern,batch_fn){
956
+ datahike.db.search.validate_pattern(pattern,true);
957
+
958
+ return datahike.db.utils.distinct_datoms(db,datahike.db.search.index_type(db,pattern),datahike.db.search.search_current_indices.cljs$core$IFn$_invoke$arity$3(db,pattern,batch_fn),datahike.db.search.search_temporal_indices.cljs$core$IFn$_invoke$arity$3(db,pattern,batch_fn));
959
+ }));
960
+
961
+ (datahike.db.search.temporal_search.cljs$lang$maxFixedArity = 3);
962
+
963
+ datahike.db.search.temporal_seek_datoms = (function datahike$db$search$temporal_seek_datoms(db,index_type,cs){
964
+ var index = cljs.core.get.cljs$core$IFn$_invoke$arity$2(db,index_type);
965
+ var temporal_index = cljs.core.get.cljs$core$IFn$_invoke$arity$2(db,cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(["temporal-",cljs.core.name(index_type)].join('')));
966
+ var from = datahike.db.utils.components__GT_pattern(db,index_type,cs,(0),(536870912));
967
+ var to = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),null,null,(2147483647));
968
+ return datahike.db.utils.distinct_datoms(db,index_type,(datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(index,from,to,index_type) : datahike.index._slice.call(null, index,from,to,index_type)),(datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(temporal_index,from,to,index_type) : datahike.index._slice.call(null, temporal_index,from,to,index_type)));
969
+ });
970
+ datahike.db.search.temporal_rseek_datoms = (function datahike$db$search$temporal_rseek_datoms(db,index_type,cs){
971
+ var index = cljs.core.get.cljs$core$IFn$_invoke$arity$2(db,index_type);
972
+ var temporal_index = cljs.core.get.cljs$core$IFn$_invoke$arity$2(db,cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(["temporal-",cljs.core.name(index_type)].join('')));
973
+ var from = datahike.db.utils.components__GT_pattern(db,index_type,cs,(0),(536870912));
974
+ var to = datahike.datom.datom.cljs$core$IFn$_invoke$arity$4((2147483647),null,null,(2147483647));
975
+ return cljs.core.concat.cljs$core$IFn$_invoke$arity$1(cljs.core.rseq(cljs.core.vec(datahike.db.utils.distinct_datoms(db,index_type,(datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(index,from,to,index_type) : datahike.index._slice.call(null, index,from,to,index_type)),(datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(temporal_index,from,to,index_type) : datahike.index._slice.call(null, temporal_index,from,to,index_type))))));
976
+ });
977
+ datahike.db.search.temporal_index_range = (function datahike$db$search$temporal_index_range(db,current_db,attr,start,end){
978
+ if(datahike.db.utils.indexing_QMARK_(db,attr)){
979
+ } else {
980
+ var G__107922_108005 = (function(){throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(["Attribute",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([attr], 0)),"should be marked as :db/index true"].join(''),cljs.core.PersistentArrayMap.EMPTY)})();
981
+ var fexpr__107921_108006 = taoensso.timbre._log_BANG_.cljs$core$IFn$_invoke$arity$14(taoensso.timbre._STAR_config_STAR_,new cljs.core.Keyword(null,"error","error",-978969032),"datahike.db.search",null,291,null,new cljs.core.Keyword(null,"p","p",151049309),new cljs.core.Keyword(null,"auto","auto",-566279492),(new cljs.core.Delay((function (){
982
+ return new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, ["Attribute",attr,"should be marked as :db/index true",cljs.core.PersistentArrayMap.EMPTY], null);
983
+ }),null)),null,(391),null,null,null);
984
+ (fexpr__107921_108006.cljs$core$IFn$_invoke$arity$1 ? fexpr__107921_108006.cljs$core$IFn$_invoke$arity$1(G__107922_108005) : fexpr__107921_108006.call(null, G__107922_108005));
985
+ }
986
+
987
+ datahike.db.utils.validate_attr(attr,(new cljs.core.List(null,new cljs.core.Symbol(null,"-index-range","-index-range",898114142,null),(new cljs.core.List(null,new cljs.core.Symbol(null,"db","db",-1661185010,null),(new cljs.core.List(null,attr,(new cljs.core.List(null,start,(new cljs.core.List(null,end,null,(1),null)),(2),null)),(3),null)),(4),null)),(5),null)),db);
988
+
989
+ var from = datahike.db.utils.resolve_datom(current_db,null,attr,start,null,(0),(536870912));
990
+ var to = datahike.db.utils.resolve_datom(current_db,null,attr,end,null,(2147483647),(2147483647));
991
+ return datahike.db.utils.distinct_datoms(db,new cljs.core.Keyword(null,"avet","avet",1383857032),(function (){var G__107925 = new cljs.core.Keyword(null,"avet","avet",1383857032).cljs$core$IFn$_invoke$arity$1(db);
992
+ var G__107926 = from;
993
+ var G__107927 = to;
994
+ var G__107928 = new cljs.core.Keyword(null,"avet","avet",1383857032);
995
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107925,G__107926,G__107927,G__107928) : datahike.index._slice.call(null, G__107925,G__107926,G__107927,G__107928));
996
+ })(),(function (){var G__107929 = new cljs.core.Keyword(null,"temporal-avet","temporal-avet",-558341228).cljs$core$IFn$_invoke$arity$1(db);
997
+ var G__107930 = from;
998
+ var G__107931 = to;
999
+ var G__107932 = new cljs.core.Keyword(null,"avet","avet",1383857032);
1000
+ return (datahike.index._slice.cljs$core$IFn$_invoke$arity$4 ? datahike.index._slice.cljs$core$IFn$_invoke$arity$4(G__107929,G__107930,G__107931,G__107932) : datahike.index._slice.call(null, G__107929,G__107930,G__107931,G__107932));
1001
+ })());
1002
+ });
1003
+
1004
+ //# sourceMappingURL=datahike.db.search.js.map