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.
- package/README.md +226 -0
- package/cljs.analyzer.api.js +427 -0
- package/cljs.analyzer.api.js.map +1 -0
- package/cljs.analyzer.impl.js +86 -0
- package/cljs.analyzer.impl.js.map +1 -0
- package/cljs.analyzer.impl.namespaces.js +219 -0
- package/cljs.analyzer.impl.namespaces.js.map +1 -0
- package/cljs.analyzer.js +7186 -0
- package/cljs.analyzer.js.map +1 -0
- package/cljs.analyzer.passes.and_or.js +141 -0
- package/cljs.analyzer.passes.and_or.js.map +1 -0
- package/cljs.analyzer.passes.js +104 -0
- package/cljs.analyzer.passes.js.map +1 -0
- package/cljs.cache.js +1145 -0
- package/cljs.cache.js.map +1 -0
- package/cljs.cache.wrapped.js +352 -0
- package/cljs.cache.wrapped.js.map +1 -0
- package/cljs.core.async.impl.buffers.js +489 -0
- package/cljs.core.async.impl.buffers.js.map +1 -0
- package/cljs.core.async.impl.channels.js +711 -0
- package/cljs.core.async.impl.channels.js.map +1 -0
- package/cljs.core.async.impl.dispatch.js +81 -0
- package/cljs.core.async.impl.dispatch.js.map +1 -0
- package/cljs.core.async.impl.ioc_helpers.js +192 -0
- package/cljs.core.async.impl.ioc_helpers.js.map +1 -0
- package/cljs.core.async.impl.protocols.js +368 -0
- package/cljs.core.async.impl.protocols.js.map +1 -0
- package/cljs.core.async.impl.timers.js +510 -0
- package/cljs.core.async.impl.timers.js.map +1 -0
- package/cljs.core.async.js +8813 -0
- package/cljs.core.async.js.map +1 -0
- package/cljs.core.js +38764 -0
- package/cljs.core.js.map +1 -0
- package/cljs.env.js +60 -0
- package/cljs.env.js.map +1 -0
- package/cljs.nodejs.js +80 -0
- package/cljs.nodejs.js.map +1 -0
- package/cljs.reader.js +462 -0
- package/cljs.reader.js.map +1 -0
- package/cljs.spec.alpha.js +5312 -0
- package/cljs.spec.alpha.js.map +1 -0
- package/cljs.spec.gen.alpha.js +2020 -0
- package/cljs.spec.gen.alpha.js.map +1 -0
- package/cljs.tagged_literals.js +103 -0
- package/cljs.tagged_literals.js.map +1 -0
- package/cljs.tools.reader.edn.js +960 -0
- package/cljs.tools.reader.edn.js.map +1 -0
- package/cljs.tools.reader.impl.commons.js +217 -0
- package/cljs.tools.reader.impl.commons.js.map +1 -0
- package/cljs.tools.reader.impl.errors.js +441 -0
- package/cljs.tools.reader.impl.errors.js.map +1 -0
- package/cljs.tools.reader.impl.inspect.js +182 -0
- package/cljs.tools.reader.impl.inspect.js.map +1 -0
- package/cljs.tools.reader.impl.utils.js +429 -0
- package/cljs.tools.reader.impl.utils.js.map +1 -0
- package/cljs.tools.reader.js +1830 -0
- package/cljs.tools.reader.js.map +1 -0
- package/cljs.tools.reader.reader_types.js +838 -0
- package/cljs.tools.reader.reader_types.js.map +1 -0
- package/cljs_env.js +18192 -0
- package/cljs_node_io.core.js +1278 -0
- package/cljs_node_io.core.js.map +1 -0
- package/cljs_node_io.file.js +918 -0
- package/cljs_node_io.file.js.map +1 -0
- package/cljs_node_io.fs.js +3911 -0
- package/cljs_node_io.fs.js.map +1 -0
- package/clojure.data.js +319 -0
- package/clojure.data.js.map +1 -0
- package/clojure.edn.js +119 -0
- package/clojure.edn.js.map +1 -0
- package/clojure.set.js +406 -0
- package/clojure.set.js.map +1 -0
- package/clojure.string.js +502 -0
- package/clojure.string.js.map +1 -0
- package/clojure.walk.js +156 -0
- package/clojure.walk.js.map +1 -0
- package/datahike.api.impl.js +621 -0
- package/datahike.api.impl.js.map +1 -0
- package/datahike.api.specification.js +85 -0
- package/datahike.api.specification.js.map +1 -0
- package/datahike.array.js +275 -0
- package/datahike.array.js.map +1 -0
- package/datahike.config.js +437 -0
- package/datahike.config.js.map +1 -0
- package/datahike.connections.js +55 -0
- package/datahike.connections.js.map +1 -0
- package/datahike.connector.js +1248 -0
- package/datahike.connector.js.map +1 -0
- package/datahike.constants.js +66 -0
- package/datahike.constants.js.map +1 -0
- package/datahike.core.js +628 -0
- package/datahike.core.js.map +1 -0
- package/datahike.datom.js +963 -0
- package/datahike.datom.js.map +1 -0
- package/datahike.db.interface.js +819 -0
- package/datahike.db.interface.js.map +1 -0
- package/datahike.db.js +3095 -0
- package/datahike.db.js.map +1 -0
- package/datahike.db.search.js +1004 -0
- package/datahike.db.search.js.map +1 -0
- package/datahike.db.transaction.js +1904 -0
- package/datahike.db.transaction.js.map +1 -0
- package/datahike.db.utils.js +642 -0
- package/datahike.db.utils.js.map +1 -0
- package/datahike.gc.js +1618 -0
- package/datahike.gc.js.map +1 -0
- package/datahike.impl.entity.js +604 -0
- package/datahike.impl.entity.js.map +1 -0
- package/datahike.index.interface.js +484 -0
- package/datahike.index.interface.js.map +1 -0
- package/datahike.index.js +50 -0
- package/datahike.index.js.map +1 -0
- package/datahike.index.persistent_set.js +1250 -0
- package/datahike.index.persistent_set.js.map +1 -0
- package/datahike.js.api.js +2211 -0
- package/datahike.js.api.js.map +1 -0
- package/datahike.lru.js +404 -0
- package/datahike.lru.js.map +1 -0
- package/datahike.pull_api.js +533 -0
- package/datahike.pull_api.js.map +1 -0
- package/datahike.query.js +11891 -0
- package/datahike.query.js.map +1 -0
- package/datahike.query_stats.js +152 -0
- package/datahike.query_stats.js.map +1 -0
- package/datahike.readers.js +166 -0
- package/datahike.readers.js.map +1 -0
- package/datahike.schema.js +251 -0
- package/datahike.schema.js.map +1 -0
- package/datahike.schema_cache.js +66 -0
- package/datahike.schema_cache.js.map +1 -0
- package/datahike.spec.js +70 -0
- package/datahike.spec.js.map +1 -0
- package/datahike.store.js +514 -0
- package/datahike.store.js.map +1 -0
- package/datahike.tools.js +436 -0
- package/datahike.tools.js.map +1 -0
- package/datahike.writer.js +3463 -0
- package/datahike.writer.js.map +1 -0
- package/datahike.writing.js +3168 -0
- package/datahike.writing.js.map +1 -0
- package/datalog.parser.impl.js +1421 -0
- package/datalog.parser.impl.js.map +1 -0
- package/datalog.parser.impl.proto.js +213 -0
- package/datalog.parser.impl.proto.js.map +1 -0
- package/datalog.parser.impl.util.js +117 -0
- package/datalog.parser.impl.util.js.map +1 -0
- package/datalog.parser.js +47 -0
- package/datalog.parser.js.map +1 -0
- package/datalog.parser.pull.js +2603 -0
- package/datalog.parser.pull.js.map +1 -0
- package/datalog.parser.type.js +7502 -0
- package/datalog.parser.type.js.map +1 -0
- package/datalog.parser.util.js +60 -0
- package/datalog.parser.util.js.map +1 -0
- package/environ.core.js +263 -0
- package/environ.core.js.map +1 -0
- package/fress.api.js +607 -0
- package/fress.api.js.map +1 -0
- package/fress.impl.adler32.js +435 -0
- package/fress.impl.adler32.js.map +1 -0
- package/fress.impl.bigint.js +185 -0
- package/fress.impl.bigint.js.map +1 -0
- package/fress.impl.buffer.js +1087 -0
- package/fress.impl.buffer.js.map +1 -0
- package/fress.impl.codes.js +105 -0
- package/fress.impl.codes.js.map +1 -0
- package/fress.impl.hopmap.js +603 -0
- package/fress.impl.hopmap.js.map +1 -0
- package/fress.impl.ranges.js +49 -0
- package/fress.impl.ranges.js.map +1 -0
- package/fress.impl.raw_input.js +837 -0
- package/fress.impl.raw_input.js.map +1 -0
- package/fress.impl.raw_output.js +653 -0
- package/fress.impl.raw_output.js.map +1 -0
- package/fress.impl.table.js +133 -0
- package/fress.impl.table.js.map +1 -0
- package/fress.reader.js +2312 -0
- package/fress.reader.js.map +1 -0
- package/fress.util.js +458 -0
- package/fress.util.js.map +1 -0
- package/fress.writer.js +2141 -0
- package/fress.writer.js.map +1 -0
- package/geheimnis.aes.js +132 -0
- package/geheimnis.aes.js.map +1 -0
- package/hasch.base64.js +42 -0
- package/hasch.base64.js.map +1 -0
- package/hasch.benc.js +201 -0
- package/hasch.benc.js.map +1 -0
- package/hasch.core.js +188 -0
- package/hasch.core.js.map +1 -0
- package/hasch.platform.js +221 -0
- package/hasch.platform.js.map +1 -0
- package/incognito.base.js +276 -0
- package/incognito.base.js.map +1 -0
- package/incognito.edn.js +54 -0
- package/incognito.edn.js.map +1 -0
- package/incognito.fressian.js +330 -0
- package/incognito.fressian.js.map +1 -0
- package/index.d.ts +660 -0
- package/is.simm.partial_cps.async.js +142 -0
- package/is.simm.partial_cps.async.js.map +1 -0
- package/is.simm.partial_cps.runtime.js +65 -0
- package/is.simm.partial_cps.runtime.js.map +1 -0
- package/is.simm.partial_cps.sequence.js +1255 -0
- package/is.simm.partial_cps.sequence.js.map +1 -0
- package/konserve.cache.js +2519 -0
- package/konserve.cache.js.map +1 -0
- package/konserve.compressor.js +502 -0
- package/konserve.compressor.js.map +1 -0
- package/konserve.core.js +8052 -0
- package/konserve.core.js.map +1 -0
- package/konserve.encryptor.js +553 -0
- package/konserve.encryptor.js.map +1 -0
- package/konserve.gc.js +541 -0
- package/konserve.gc.js.map +1 -0
- package/konserve.impl.defaults.js +8290 -0
- package/konserve.impl.defaults.js.map +1 -0
- package/konserve.impl.storage_layout.js +849 -0
- package/konserve.impl.storage_layout.js.map +1 -0
- package/konserve.memory.js +2102 -0
- package/konserve.memory.js.map +1 -0
- package/konserve.node_filestore.js +2951 -0
- package/konserve.node_filestore.js.map +1 -0
- package/konserve.protocols.js +590 -0
- package/konserve.protocols.js.map +1 -0
- package/konserve.serializers.js +562 -0
- package/konserve.serializers.js.map +1 -0
- package/konserve.store.js +2245 -0
- package/konserve.store.js.map +1 -0
- package/konserve.tiered.js +9574 -0
- package/konserve.tiered.js.map +1 -0
- package/konserve.utils.js +180 -0
- package/konserve.utils.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.arrays.js +66 -0
- package/me.tonsky.persistent_sorted_set.arrays.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.branch.js +2779 -0
- package/me.tonsky.persistent_sorted_set.branch.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.btset.js +14196 -0
- package/me.tonsky.persistent_sorted_set.btset.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.impl.node.js +324 -0
- package/me.tonsky.persistent_sorted_set.impl.node.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.impl.storage.js +123 -0
- package/me.tonsky.persistent_sorted_set.impl.storage.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.js +890 -0
- package/me.tonsky.persistent_sorted_set.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.leaf.js +561 -0
- package/me.tonsky.persistent_sorted_set.leaf.js.map +1 -0
- package/me.tonsky.persistent_sorted_set.util.js +402 -0
- package/me.tonsky.persistent_sorted_set.util.js.map +1 -0
- package/medley.core.js +1857 -0
- package/medley.core.js.map +1 -0
- package/package.json +38 -0
- package/spec_tools.core.js +1925 -0
- package/spec_tools.core.js.map +1 -0
- package/spec_tools.data_spec.js +1291 -0
- package/spec_tools.data_spec.js.map +1 -0
- package/spec_tools.form.js +185 -0
- package/spec_tools.form.js.map +1 -0
- package/spec_tools.impl.js +362 -0
- package/spec_tools.impl.js.map +1 -0
- package/spec_tools.parse.js +427 -0
- package/spec_tools.parse.js.map +1 -0
- package/spec_tools.transform.js +288 -0
- package/spec_tools.transform.js.map +1 -0
- package/superv.async.js +8617 -0
- package/superv.async.js.map +1 -0
- package/tailrecursion.priority_map.js +994 -0
- package/tailrecursion.priority_map.js.map +1 -0
- package/taoensso.encore.js +12385 -0
- package/taoensso.encore.js.map +1 -0
- package/taoensso.timbre.appenders.core.js +239 -0
- package/taoensso.timbre.appenders.core.js.map +1 -0
- package/taoensso.timbre.js +1264 -0
- package/taoensso.timbre.js.map +1 -0
- package/taoensso.truss.impl.js +442 -0
- package/taoensso.truss.impl.js.map +1 -0
- package/taoensso.truss.js +743 -0
- package/taoensso.truss.js.map +1 -0
- package/test-config-keys.js +33 -0
- package/test-final.js +36 -0
- package/test-key-duplication.js +67 -0
- package/test.js +557 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["konserve/node_filestore.cljs"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,AAAKA,iCAAO,uGAAA,2CAAA,jJAACC,oDAAAA,8DAAAA;AACb,AAAKC,+BAAK,uGAAA,yCAAA,/IAACD,oDAAAA,4DAAAA;AACX,AAAKE,6BAAG,uGAAA,uCAAA,7IAACF,oDAAAA,0DAAAA;;;;;;;;;;;;;;;;;;;oEASOI,aACRC,YACAE;;;;;;;;;;;IAKiBE;AAAG,QAACF,+CAAAA,iDAAAA;;;;;2IAEHE,EAAEC;;IAAFD;AACT,oBAAI,AAAA,oFAAQC;AACV,QAACH,+CAAAA,iDAAAA;;AACD,IAAAI,mBAAA,AAAAC,mDAAA;AAAA,AAAA,AAAAC,kCAAA;AAAA,AAAA,IAAAC,mBAAA,iBAAAC,wBAAA,WAAAC;AAAA,AAAA,IAAAC,mBAAA,CAAAD,aAAA;AAAA,AAAA,GAAA,CAAAC,qBAAA;AAAA,IAAAC,cAAA,CAAKX,+CAAAA,iDAAAA;IAALS,mBAAAA;AAAA,AAAA,OAAAG,6CAAAH,iBAAAE;;AAAA;;;AAAA,AAAA;;;AAAA,AAAA,IAAAE,kBAAA,CAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA;AAAA,AAAA,CAAAA,gBAAA,OAAAC;;AAAA,CAAAD,gBAAA,OAAA;;AAAAA;;yEAAAJ;;AAAA,AAAA,IAAAM,2BAAA,iBAAA,AAAA;AAAA,AAAA,IAAAC,wBAAA,AAAAR,sBAAAC;AAAA,AAAA,GAAA,AAAAQ,mCAAAD,sBAAA;AAAA;;AAAAA;;;;iBAAA,IAAAE,oBAAAC;AAAA,AAAA,IAAAC,yBAAAX;AAAA,AAAA,CAAAW,uBAAA,OAAAF;;AAAAE;AAAA,GAAA,AAAAC,cAAA,CAAAZ,aAAA;AAAA,IAAAa,yBAAAb;AAAA,AAAA,CAAAa,uBAAA,OAAA,AAAAC,gBAAA,CAAAd,aAAA;;AAAAa;AAAA,MAAAJ;;;AAAA;;AAAA,AAAA,GAAA,AAAAD,mCAAAF,yBAAA;AAAA,gBAAAN;;;;AAAAM;;;;;gEAAAN;;;;;yEAAAA;;;;;;;;;IAAAe,uBAAA,iBAAAC,kBAAA,AAAAlB;AAAA,AAAA,CAAAkB,gBAAAC,AAAA,OAAAtB;;AAAAqB;;AAAA,AAAA,OAAAE,2DAAAH;;;AAAApB;;;;;;;;;;;;;;;;;;;sIAZHP,MACRC,KACAE;oEAFQH,MACRC,KACAE;;;;AANR;;;;;gCAAA,hCAAOJ,wEAISC;AAJhB,AAKE,IAAMC,OAAK,AAACC,0BAAe,AAAQF;cAAnC,VACMG;AADN,AACe,GAAM,GAAA,iBAAA,hBAAO,AAAUH;AAAvB,AACE,AAAUC;;AACV,uBAAA,fAAM,AAAUD;;AAFlB;;;4EAFDA,MACRC,KACAE,nFAGAF,WAAK,KAAAG,2EAAA;AAJX,AAYE,CAAM,AAAUJ,eAAMC;;AACtBA;;AAEJ,2CAAA,3CAAM8B,8FACHC,SAASC;AADZ,AAEE,GAAU,CAAID,aAASC;AAAvB;;AAAA,AACE,MAAO,KAAAC,MAAW,CAAA,kEAAA,VAAiBF,0EAA6BC;;;AAEpE,4CAAA,5CAAME,gGACHH,SAASC;AADZ,AAEE,GAAU,CAAID,aAASC;AAAvB;;AAAA,AACE,MAAO,KAAAC,MAAW,CAAA,2EAAA,VAA0BF,2EAA8BC;;;AAE9E,AAAA;;;;;;;;;;;AAAA,AAAA,CAAA,AAAA,2FAAAG,3FAASK;;AAAT,CAAA,AAAA,+GAAA,/GAASA,0HAuBQzC,MAAKsD,UAAUI,UAAUX;;AAvB1C,AAAA,gBAAA,ZAuBiB/C;AAvBjB,AAwBI,IAAMuD,YAAU,AAAgB,CAAC,AAAAzD,qEAAA,AAAAA,gFAAA,AAAAA,bAAa8C,6DAAAA;IACxCe,SAAO,CAAGL,YAAUH,AAAA;IACpBS,YAAU,CAAGL,YAAUI;IACvBE,OAAK,KAAAC,OAAYF;IACjBR,aAAW,sFAAA,tFAACC,mDAAU,AAAMrD,aAAM6D,KAAKF,OAAOC;AAJpD,AAKE,AAAC7B,yCAAiB6B,UAAUR;;AAC5B,IAAAW,YAAA,2CAAA,qDAAkBF;AAAlB,AAAA,0FAAAE,kCAAAA,pHAACL,0CAAAA,qDAAAA;;;AA9BP,CAAA,AAAA,4GAAA,5GAASjB,uHAIKzC,MAAK+C;;AAJnB,AAAA,gBAAA,ZAIc/C;AAJd,AAIyB,OAAOA;;;AAJhC,CAAA,AAAA,6GAAA,7GAASyC,wHAUMO,MAAMM,UAAUP;;AAV/B,AAAA,gBAAA,ZAUeC;AAVf,AAWI,IAAMC,MAAI,AAACC,aAAgBI;IACrBF,aAAW,iEAAA,2CAAA,5GAACC,mDAAUT,UAAGK,6GAAeE,AAAA;AAD9C,AAEE,AAACpB,yCAAiBuB,UAAUF;;AAC5BH;;;AAdN,CAAA,AAAA,wGAAA,xGAASR,mHAECzC,MAAK+C;;AAFf,AAAA,gBAAA,ZAEU/C;AAFV,AAEqB,uBAAA,hBAAQA;;;AAF7B,CAAA,AAAA,+GAAA,/GAASyC,0HAKQO,MAAMD;;AALvB,AAAA,gBAAA,ZAKiBC;AALjB,AAMI,IAAMC,MAAI,AAACC,aAAgBC,AAAA;IACrBC,aAAW,iEAAA,2CAAA,8DAAA,1KAACC,mDAAUT,UAAGK;AAD/B,AAEE,AAAClB,yCAAiBoB,AAAA,KAA2BC;;AAC7CH;;;AATN,CAAA,AAAA,yGAAA,zGAASR,oHAGEzC,MAAK+C;;AAHhB,AAAA,gBAAA,ZAGW/C;AAHX,AAGsB,OAAQA;;;AAH9B,CAAA,AAAA,8GAAA,9GAASyC,yHAmCOO,MAAMqB,SAAStB;;AAnC/B,AAAA,gBAAA,ZAmCgBC;AAnChB,AAoCI,IAAMiB,SAAO,AAACC,YAAeG;IACvBZ,MAAIN,AAAA;IACJgB,gBAAc,qEAAA,2CAAA,hHAACC,oDAAWxB,UAAGqB,gHAAkBR;AAFrD,AAGE,OAACtB,0CAAkB,AAAS8B,cAAQE;;;AAvC1C,CAAA,AAAA,+GAAA,/GAAS1B,0HAwCQO,MAAMsB,UAAUhB,UAAUP;;AAxC3C,AAAA,gBAAA,ZAwCiBC;AAxCjB,AAyCI,IAAMiB,SAAO,AAACC,YAAeI;IACvBb,MAAI,CAAGN,AAAA,OAA2BG;IAClCa,gBAAc,qEAAA,2CAAA,hHAACC,oDAAWxB,UAAGqB,gHAAkBR;AAFrD,AAGE,OAACtB,0CAAkB,AAAS8B,cAAQE;;;AA5C1C,CAAA,AAAA,8GAAA,9GAAS1B,yHAeOO,MAAMM,UAAUP;;AAfhC,AAAA,gBAAA,ZAegBC;AAfhB,AAgBI,IAAMO,YAAU,AAAgB,CAAC,AAAAzD,qEAAA,AAAAA,gFAAA,AAAAA,bAAa8C,6DAAAA;IACxCY,aAAW,CAAA,CAAGD,YAAUD,aAAUH,AAAA;IAClCF,MAAI,AAACC,aAAgBM;IACrBC,MAAI,CAAGH,YAAUH,AAAA;IACjBC,aAAW,iEAAA,2CAAA,kEAAA,9KAACC,mDAAUT,UAAGK,6GAAeQ,4DAAY,AAASR;AAJnE,AAKE,AAAClB,yCAAiByB,WAAWJ;;AAC7BH;;;AAtBN,CAAA,AAAA,gHAAA,hHAASR,2HA+BSO,MAAMgB,OAAOjB;;AA/B/B,AAAA,gBAAA,ZA+BkBC;AA/BlB,AAgCI,IAAMiB,SAAO,AAACC,YAAeF;IACvBG,gBAAc,qEAAA,2CAAA,8DAAA,9KAACC,oDAAWxB,UAAGqB;AADnC,AAEE,OAAC9B,0CAAkB,AAAS6B,cAAQG;;;AAlC1C,CAAA,AAAA,gHAAA,hHAAS1B,2HA6CSO,MAAMM,UAAUO,KAAKd;;AA7CvC,AAAA,gBAAA,ZA6CkBC;AA7ClB,AA8CI,IAAMiB,SAAQ,AAACC,YAAeL;IACxBJ,MAAQ,CAAGN,AAAA,OAA2BG;IACtCa,gBAAc,qEAAA,2CAAA,hHAACC,oDAAWxB,UAAGqB,gHAAkBR;AAFrD,AAGE,OAACtB,0CAAkB,AAAS8B,cAAQE;;;AAjD1C,CAAA,AAAA,sDAAA,tDAAS1B,iEAmDOpC;;AAnDhB,AAAA,YAAA,RAmDU2C;AAnDV,AAmDmB,QAAC,AAAAlD,qEAAA,AAAAA,gFAAA,AAAAA,bAAa8C,6DAAAA;;;AAnDjC,CAAA,AAAA,sDAAA,tDAASH;;AAAT,AAAA,YAAA,RAoDUzC;AApDV,AAqDI,oBAAM,AAASA;AAAf,AACE,IAAAuE,mBAAc,AAAMvE;AAApB,AAAA,yIAAAuE,oEAAAA,5MAAC,AAAAzE,qEAAA,AAAAA,uFAAA,AAAAA;;AACD,oBAAMgD;AAAN,AACE,AAAUA;;AADZ;;AAEA,4BAAA,pBAAM,AAAS9C;;AAJjB;;;;AArDJ,CAAA,AAAA,qDAAA,rDAASyC;;AAAT,AAAA,YAAA,RA0DSzC;AA1DT,AA0De,OAACD,8BAAMC;;;AA1DtB,CAAA,+CAAA,/CAASyC;AAAT,AAAA,AAAA;;;AAAA,CAAA,qDAAA,rDAASA;;AAAT,CAAA,wDAAA,xDAASA;;AAAT,CAAA,6DAAA,WAAAJ,mBAAAC,qBAAAC,hHAASE;AAAT,AAAA,OAAAD,iBAAAF,qBAAA;;;AAAA;;;2CAAA,3CAASI,8FAAaC,KAAKC,GAAGC,YAAMC;AAApC,AAAA,YAAAL,oCAAsBE,KAAKC,GAAGC,YAAMC;;;AAA3BL,AA4DT,AAAA,4CAAA,oDAAA+B,hGAAmBE;AAAnB,AAAA,IAAAD,YAAA,AAAA;AAAA,AAAA,QAAAA;KAAA;AAAA,OAAAC,wEAAA,CAAA,UAAA;;;KAAA;AAAA,OAAAA,wEAAA,CAAA,UAAA,MAAA,CAAA,UAAA;;;;AAAA,MAAA,KAAAxC,MAAA,CAAA,8DAAA,AAAA;;;;;AAAA,CAAA,0EAAA,1EAAmBwC,qFACf/B;AADJ,AACU,oFAAA,7EAACoC,wEAAkBpC;;;AAD7B,CAAA,0EAAA,gBAAAgC,1FAAmBD,qFAEf/B;AAFJ,AAAA,IAAAiC,cAAAD;IAAAC,kBAAA,AAAAC,4BAAAD;YAAA,AAAAE,4CAAAF,gBAAA,pEAEUI;AAFV,AAGG,IAAMpC,KAAG,kBAAIoC,OACF,CAAC,AAAAlF,oEAAA,AAAAA,gFAAA,AAAAA,dAAY6C,6DAAAA,xDAAKqC,6DAAAA,QAClB,iBAAA,AACE,mJAAA,6DAAA,xMAAC,AAAAlF,oEAAA,AAAAA,gFAAA,AAAAA,dAAY6C,6DAAAA;iBADf,GAAA,CAAAsC,mBAES/C;AAFT,QAAA+C,JAEkB5E;AAFlB,AAGI,mJAAA,4DAAA,vMAAC,AAAAP,oEAAA,AAAAA,+EAAA,AAAAA,bAAY6C,4DAAAA;;AAHjB,AAAA,MAAAsC;;;;AAFX,AAME,YAAAxC,4CAAA,KAAA,bAAcE,KAAKC;;;AATxB,CAAA,oEAAA,pEAAmB8B;;AAAnB,AAcA,uCAAA,vCAAOQ,sFACclF,MAAKK;AAD1B,AAEE,UAAA,AAAA8E,NAAcC;AAAd,AACE,IAAAC,mBAAU,AAAMrF;IAAhBsF,mBACU,WAAKC;AAAL,AACE,GAAI,GAAA,eAAA,dAAOA;AACT,OAACC,wDAAKJ,IAAIG;;AACV,OAACE,4BAAOL;;;AAJtB,AAAA,iIAAAC,iBAAAC,gEAAAD,iBAAAC,lOAAC,AAAAxF,iEAAA,AAAAA,oGAAA,AAAAA;;AADWsF;;AAOhB;;;uCAAA,vCAAOM,sFAEc1F;AAFrB,AAGE,UAAA,AAAAmF,NAAcC;AAAd,AACE,GAAA,AAAAO,cAAQ,AAAS3F;AACf,AAACyF,4BAAOL;;AACR,IAAAQ,mBAAU,AAAM5F;IAAhB6F,mBACU,WAAKN;AAAL,AACE,GAAI,GAAA,eAAA,dAAOA;AACT,OAACC,wDAAKJ,IAAIG;;AACV,AACE,qBAAA,pBAAM,AAASvF;;AACf,oBAAI,AAAUA;AACZ,OAAC8F,yDAAM,AAAU,AAAU9F,uBACpB,WAAKuF;AAAL,AACE,oBAAIA;AACF,OAACC,wDAAKJ,IAAIG;;AACV,OAACE,4BAAOL;;;;AACnB,OAACK,4BAAOL;;;;AAZ1B,AAAA,iIAAAQ,iBAAAC,gEAAAD,iBAAAC,lOAAC,AAAA/F,iEAAA,AAAAA,oGAAA,AAAAA;;;AAHSsF;;;;;;;;;;;;;;;;;;;;;;;;oEAkBKY,UACLZ,+CAECG,kBAAKtF,YAGDE;;;;;;;;;;;2IAImBH,MAAKM;;IAALN;AAAU,QAACG,+CAAAA,iDAAAA;;;;;IAEZH;AAAM,QAACG,+CAAAA,iDAAAA;;;;;;;;;;;;;;;;;;sIAZzB6F,GACLZ,0BAECG,WAAKtF,KAGDE;oEANA6F,GACLZ,0BAECG,WAAKtF,KAGDE;;;;AAPrB,sCAAA,tCAAO4F,oFACcC;AADrB,AAEE,UAAA,AAAAb,NAAcC;AAAd,AACE,AAACU,yDAAM,AAACG,2BAAgB,AAAQD,SACzB,WAAAE;AAAA,AAAA,IAAAC,cAAAD;iBAAA,AAAAE,4CAAAD,YAAA,IAAA,zEAAMZ;WAAN,AAAAa,4CAAAD,YAAA,IAAA,nEAAWlG;AAAX,AACE,GAAI,GAAA,eAAA,dAAOsF;AACT,OAACC,wDAAKJ,IAAIG;;AACV,cAAA,VAAMpF;AAAN,AAAe,IAAAI,mBAAA,AAAAC,mDAAA;AAAA,AAAA,AAAAC,kCAAA;AAAA,AAAA,IAAAC,mBAAA,iBAAAC,wBAAA,WAAA0F;AAAA,AAAA,IAAAC,mBAAA,CAAAD,aAAA;AAAA,AAAA,GAAA,CAAAC,qBAAA;AAAA,IAAAC,cAAA,AAA6BtG;IAA7BoG,mBAAAA;AAAA,AAAA,OAAAG,4CAAAH,iBAAA,IAAAE;;AAAA,GAAA,CAAAD,qBAAA;AAAA,IAAAG,cAAA,CAAAJ,aAAA;IAAAK,cAAA,CAAAL,aAAA;IAAAI,kBAAA,gBAAAC,hBAAShF;IAAT2E,mBAAA,iBAAAM,kBAAAN;AAAA,AAAA,CAAAM,gBAAA,OAAAF;;AAAAE;;AAAA,AAAA,AAAA,oBAAAF;AAAA,IAAAG,yBAAAP;AAAA,AAAA,CAAAO,uBAAA,OAAA;;AAAAA;AAAA,IAAAC,yBAAAR;AAAA,AAAA,CAAAQ,uBAAA,OAAA;;AAAAA;;AAAA;;AAAA,GAAA,CAAAP,qBAAA;AAAA,IAAAG,cAAA,CAAAJ,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAS,yBAAAT;AAAA,AAAA,CAAAS,uBAAA,OAAAL;;AAAA,CAAAK,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAR,qBAAA;AAAA,IAAAS,cAAA,CAAA,YAAA,ZACwBf;IADxBK,mBAAAA;AAAA,AAAA,AAAA,IAAAW,yBAAAX;AAAA,AAAA,CAAAW,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAV,qBAAA;AAAA,IAAAW,cAAA,CAAAZ,aAAA;IAAAA,mBAAAA;AAAA,AAAA,OAAAtF,6CAAAsF,iBAAAY;;AAAA;;;;;;;AAAA,AAAA;;;AAAA,AAAA,IAAAC,kBAAA,CAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA;AAAA,AAAA,CAAAA,gBAAA,OAAAjG;;AAAA,CAAAiG,gBAAA,OAAA;;AAAAA;;uFAAAb;;AAAA,AAAA,IAAAnF,2BAAA,iBAAA,AAAA;AAAA,AAAA,IAAAC,wBAAA,AAAAR,sBAAA0F;AAAA,AAAA,GAAA,AAAAjF,mCAAAD,sBAAA;AAAA;;AAAAA;;;;iBAAA,IAAAE,oBAAA8F;AAAA,AAAA,IAAAC,yBAAAf;AAAA,AAAA,CAAAe,uBAAA,OAAA/F;;AAAA+F;AAAA,GAAA,AAAA5F,cAAA,CAAA6E,aAAA;AAAA,IAAAgB,yBAAAhB;AAAA,AAAA,CAAAgB,uBAAA,OAAA,AAAA3F,gBAAA,CAAA2E,aAAA;;AAAAgB;AAAA,MAAAhG;;;AAAA;;AAAA,AAAA,GAAA,AAAAD,mCAAAF,yBAAA;AAAA,gBAAAmF;;;;AAAAnF;;;;;8EAAAmF;;;;;uFAAAA;;;;;;;;;IAAA1E,uBAAA,iBAAA2F,kBAAA,AAAA5G;AAAA,AAAA,CAAA4G,gBAAAzF,AAAA,OAAAtB;;AAAA+G;;AAAA,AAAA,OAAAxF,2DAAAH;;;AAAApB;;4EANTyF,GACLZ,0BAECG,WAAKtF,KAGDE,rHAEAF,WAAM,KAAAsH,+DAAArB,UAAAC,oCAAA;AAFZ,AAOE,CAAM,AAAUH,YAAI/F;;AACpB,OAACuF,wDAAKJ,IAAInF;;;;AAbXmF;;AAehB;;;iCAAA,jCAAOoC,0EAEJ5E,GAAGK,IAAIQ;AAFV,AAGE,UAAA,AAAA0B,NAAcC;AAAd,AACE,IAAAqC,mBAAS7E;IAAT8E,mBAAYzE;IAAZ0E,mBAAA;IAAAC,mBAAkB,AAAS3E;IAA3B4E,mBAAgCpE;IAAhCqE,mBACS,WAAKvC,WAAKnC;AAAV,AACE,GAAI,GAAA,eAAA,dAAOmC;AACT,OAACC,wDAAKJ,IAAIG;;AACV,AACE,GAAQ,CAAInC,eAAW,AAASH;AAAhC;AAAA,AAAA,MAAA,KAAAf,MAAA;;;AACA,OAACsD,wDAAKJ,IAAInC;;;AANzB,AAAA,+HAAAwE,iBAAAC,iBAAAC,iBAAAC,iBAAAC,iBAAAC,+DAAAL,iBAAAC,iBAAAC,iBAAAC,iBAAAC,iBAAAC,vWAAC,AAAAhI,gEAAA,AAAAA,uKAAA,AAAAA;;AADWsF;;AAShB;;;kCAAA,lCAAO2C,4EAEJnF,GAAGK,IAAIQ;AAFV,AAGE,IAAMR,UAAI,AAACiB,YAAejB;aAA1B,TACMU;IACAqE,MAAI,AAAS/E;AAFnB,AAGE,UAAA,AAAAkC,NAAcC;AAAd,AACE,IAAA6C,mBAAUrF;IAAVsF,mBAAajF;IAAbkF,mBAAiBxE;IAAjByE,mBAAwBJ;IAAxBK,mBAA4B5E;IAA5B6E,mBACU,WAAK/C,WAAKgD,kBAAYlI;AAAtB,AACE,oBAAIkF;AACF,OAACC,wDAAKJ,IAAIG;;AACV,OAACE,4BAAOL;;;AAJtB,AAAA,iIAAA6C,iBAAAC,iBAAAC,iBAAAC,iBAAAC,iBAAAC,gEAAAL,iBAAAC,iBAAAC,iBAAAC,iBAAAC,iBAAAC,1WAAC,AAAAxI,iEAAA,AAAAA,wKAAA,AAAAA;;AADWsF;;AAOlB;;;iCAAA,jCAAOoD,0EAEJ5F;AAFH,AAGE,UAAA,AAAAuC,NAAcC;AAAd,AACE,IAAAqD,mBAAU7F;IAAV8F,mBACU,WAAKnD,WAAKoD;AAAV,AACE,oBAAIpD;AACF,mEAAA,5DAACC,wDAAKJ,uFAAKG;;AACX,mEAAA,mFAAA,/IAACC,wDAAKJ,4FAAS,AAAQuD;;;AAJrC,AAAA,iIAAAF,iBAAAC,gEAAAD,iBAAAC,lOAAC,AAAA5I,iEAAA,AAAAA,oGAAA,AAAAA;;AADWsF;;AAOhB,wCAAA,xCAAOwD,wFACJhG,GAAGU,UAAUI,UAAUX;AAD1B,AAEE,UAAA,AAAAoC,NAAcC;AAAd,AACE,AAACU,yDAAM,AAAC0C,+BAAO5F,IACR,WAAAiG;AAAA,AAAA,IAAAC,cAAAD;iBAAA,AAAAzC,4CAAA0C,YAAA,IAAA,zEAAMvD;iBAAN,AAAAa,4CAAA0C,YAAA,IAAA,zEAAWC;AAAX,AACE,GAAI,GAAA,eAAA,dAAOxD;AACT,OAACC,wDAAKJ,IAAIG;;AACV,IAAA,AACE,WAAA,wBAAA,8CAAA,7EAAM0D,eAAarG,6BAEG,CAAGU,YAAUH,AAAA;IAE7B+F,yBAAiB,6CAAA,7CAACC;IAClBC,UAAQ,uJAAA,oEAAA,1NAAgB,AAAAtJ,4EAAA,AAAAA,uFAAA,AAAAA,RAAwBmJ,oEAAAA;AALtD,AAME,WAAA,XAAKG,sBACA;AAAA,AACE,oBAAA,AAAAC,gBAAWH;AAAX;;AAAA,AACE,6CAAA,7CAACI,sBAAOJ;;AACR,IAAMK,MAAI,iBAAAC,YAAA,2CAAA,6EAAA,RAA0BJ,6DAAcL;AAAxC,AAAA,0FAAAS,kCAAAA,pHAAC9F,0CAAAA,qDAAAA;;AAAX,AACE,OAACoC,yDAAMyD,IAAI,WAAKE;AAAL,AAAU,OAACjE,wDAAKJ,IAAIqE;;;;;AAC1C,kBAAA,XAAKL,mBACA,WAAKM;AAAL,AACE,OAAClE,wDAAKJ,IAAI,gDAAA,4BAAA,2CAAA,vHAACuE,6KAA4CD;;iBAflE,GAAA,CAAAV,mBAgBS9G;AAhBT,UAAA8G,NAgBkBU;AAhBlB,AAiBI,OAAClE,wDAAKJ,IAAI,gDAAA,4BAAA,2CAAA,vHAACuE,6KAA4CD;;AAjB3D,AAAA,MAAAV;;;;;;AALC5D;;AAwBhB,yCAAA,zCAAOwE,0FACJhH,GAAGU,UAAUO,KAAKd;AADrB,AAEE,UAAA,AAAAoC,NAAcC;AAAd,AACE,IAAA,AACE,IAAM3B,aAAQ,CAAGN,AAAA,OAA2BG;IACtC8F,iBAAQ,AAACU,yDAAYjG;IACrBkG,iBAAQ,iBAAAC,YAAA;IAAAC,YAAA,6CAAA,iBAAA,tDAAkCrH,aACGa;AADrC,AAAA,gKAAAuG,UAAAC,qEAAAD,UAAAC,jPAAC,AAAAnK,6EAAA,AAAAA,kGAAA,AAAAA;;AAFf,AAME,IAAAoK,mBAAiBd;IAAjBe,mBAAyBJ;IAAzBK,mBACiB,WAAK7E;AAAL,AACE,GAAI,GAAA,eAAA,dAAOA;AACT,OAACC,wDAAKJ,IAAIG;;AACV,OAACE,4BAAOL;;;AAJ7B,AAAA,+IAAA8E,iBAAAC,iBAAAC,uEAAAF,iBAAAC,iBAAAC,zRAAC,AAAAzK,wEAAA,AAAAA,4HAAA,AAAAA;iBAPL,GAAA,CAAAkK,mBAYS3H;AAZT,eAAA2H,XAYkBQ;AAZlB,AAaI,AAAC7E,wDAAKJ,IAAIiF;;AAbd,AAAA,MAAAR;;;;AADYzE;;AAgBhB,AAAA;;;;;;;;;;;AAAA,AAAA,CAAA,AAAA,gGAAAhD,hGAASkI;;AAAT,CAAA,AAAA,oHAAA,pHAASA,+HAmBQtH,MAAMM,UAAUI,UAAUX;;AAnB3C,AAAA,gBAAA,ZAmBiBC;AAnBjB,AAoBI,OAAC4F,sCAAchG,UAAGU,UAAUI,UAAUX;;;AApB1C,CAAA,AAAA,iHAAA,jHAASuH,4HAIKtK,MAAK+C;;AAJnB,AAAA,gBAAA,ZAIc/C;AAJd,AAIyB,OAAOA;;;AAJhC,CAAA,AAAA,kHAAA,lHAASsK,6HAQMtH,MAAMM,UAAUP;;AAR/B,AAAA,gBAAA,ZAQeC;AARf,AASI,IAAMC,MAAI,AAACC,aAAgBI;AAA3B,AACE,OAACkE,+BAAO5E,UAAGK,IAAIE,AAAA;;;AAVrB,CAAA,AAAA,6GAAA,7GAASmH,wHAECtK,MAAK+C;;AAFf,AAAA,gBAAA,ZAEU/C;AAFV,AAEqB,uBAAA,hBAAQA;;;AAF7B,CAAA,AAAA,oHAAA,pHAASsK,+HAKQtH,MAAMD;;AALvB,AAAA,gBAAA,ZAKiBC;AALjB,AAMI,IAAMC,MAAI,AAACC,aAAgBC,AAAA;AAA3B,AACE,oDAAA,7CAACqE,+BAAO5E,UAAGK;;;AAPjB,CAAA,AAAA,8GAAA,9GAASqH,yHAGEtK,MAAK+C;;AAHhB,AAAA,gBAAA,ZAGW/C;AAHX,AAGsB,OAAQA;;;AAH9B,CAAA,AAAA,mHAAA,nHAASsK,8HAuBOtH,MAAMqB,SAAStB;;AAvB/B,AAAA,gBAAA,ZAuBgBC;AAvBhB,AAwBI,IAAMiB,SAAO,AAACC,YAAeG;AAA7B,AACE,OAAC0D,gCAAQnF,UAAGqB,OAAOd,AAAA;;;AAzBzB,CAAA,AAAA,oHAAA,pHAASmH,+HA0BQtH,MAAMsB,UAAUhB,UAAUP;;AA1B3C,AAAA,gBAAA,ZA0BiBC;AA1BjB,AA2BI,IAAMiB,SAAO,AAACC,YAAeI;IACvBb,MAAI,CAAGN,AAAA,OAA2BG;AADxC,AAEE,OAACyE,gCAAQnF,UAAGqB,OAAOR;;;AA7BzB,CAAA,AAAA,mHAAA,nHAAS6G,8HAWOtH,MAAMM,UAAUP;;AAXhC,AAAA,gBAAA,ZAWgBC;AAXhB,AAYI,IAAAzC,mBAAA,AAAAC,mDAAA;AAAA,AAAA,AAAAC,kCAAA;AAAA,AAAA,IAAAC,mBAAA,iBAAAC,wBAAA,WAAA6J;AAAA,AAAA,IAAAC,mBAAA,CAAAD,aAAA;AAAA,AAAA,GAAA,CAAAC,qBAAA;AAAA,IAAAC,cAAA,AAC8BlC,+BAAO5F;IADrC4H,mBAAAA;AAAA,AAAA,OAAAhE,4CAAAgE,iBAAA,IAAAE;;AAAA,GAAA,CAAAD,qBAAA;AAAA,IAAAE,cAAA,CAAAH,aAAA;IAAAI,cAAA,CAAAJ,aAAA;IAAAG,kBAAA,AAAAvE,4CAAAwE,YAAA,IAAA;IAAAC,cAAA,AAAAzE,4CAAAwE,YAAA,IAAA;IAAAJ,mBAAA,iBAAAM,kBAAAN;AAAA,AAAA,CAAAM,gBAAA,OAAAH;;AAAA,CAAAG,gBAAA,OAAAD;;AAAAC;;AAAA,AAAA,AAAA,oBAAAH;AAAA,IAAAI,yBAAAP;AAAA,AAAA,CAAAO,uBAAA,OAAA;;AAAAA;AAAA,IAAAC,yBAAAR;AAAA,AAAA,CAAAQ,uBAAA,OAAA;;AAAAA;;AAAA;;AAAA,GAAA,CAAAP,qBAAA;AAAA,IAAAE,cAAA,CAAAH,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAS,yBAAAT;AAAA,AAAA,CAAAS,uBAAA,OAAAN;;AAAA,CAAAM,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAR,qBAAA;AAAA,IAAAI,cAAA,CAAAL,aAAA;IAAAU,cAAA,CAAAL,cAGgCvH;IAHhC6H,cAAA,CAAAD,cAG0C/H,AAAA;IAH1CiI,cAAA,CAIqB9H,YAAUH,AAAA;IAJ/BkI,cAAA,aAAAF,bAKmBjI;IALnBoI,cAAA,yCAAAD,YAAAD,rDAMe5D,+BAAO5E;IANtB4H,mBAAAA;AAAA,AAAA,OAAAhE,4CAAAgE,iBAAA,IAAAc;;AAAA,GAAA,CAAAb,qBAAA;AAAA,IAAAc,cAAA,CAAAf,aAAA;IAAAA,mBAAAA;AAAA,AAAA,OAAAzJ,6CAAAyJ,iBAAAe;;AAAA,GAAA,CAAAd,qBAAA;AAAA,IAAAe,cAAA,CAAAhB,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAiB,yBAAAjB;AAAA,AAAA,CAAAiB,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA;;;;;;;;AAAA,AAAA;;;AAAA,AAAA,IAAAC,kBAAA,CAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA;AAAA,AAAA,CAAAA,gBAAA,OAAAzK;;AAAA,CAAAyK,gBAAA,OAAA;;AAAAA;;yEAAAlB;;AAAA,AAAA,IAAAtJ,2BAAA,iBAAA,AAAA;AAAA,AAAA,IAAAC,wBAAA,AAAAR,sBAAA6J;AAAA,AAAA,GAAA,AAAApJ,mCAAAD,sBAAA;AAAA;;AAAAA;;;;iBAAA,IAAAE,oBAAAsK;AAAA,AAAA,IAAAC,yBAAApB;AAAA,AAAA,CAAAoB,uBAAA,OAAAvK;;AAAAuK;AAAA,GAAA,AAAApK,cAAA,CAAAgJ,aAAA;AAAA,IAAAqB,yBAAArB;AAAA,AAAA,CAAAqB,uBAAA,OAAA,AAAAnK,gBAAA,CAAA8I,aAAA;;AAAAqB;AAAA,MAAAxK;;;AAAA;;AAAA,AAAA,GAAA,AAAAD,mCAAAF,yBAAA;AAAA,gBAAAsJ;;;;AAAAtJ;;;;;gEAAAsJ;;;;;yEAAAA;;;;;;;;;IAAA7I,uBAAA,iBAAAmK,kBAAA,AAAApL;AAAA,AAAA,CAAAoL,gBAAAjK,AAAA,OAAAtB;;AAAAuL;;AAAA,AAAA,OAAAhK,2DAAAH;;;AAAApB;;;AAZJ,CAAA,AAAA,qHAAA,rHAAS+J,gIAqBStH,MAAMgB,OAAOjB;;AArB/B,AAAA,gBAAA,ZAqBkBC;AArBlB,AAsBI,wDAAA,jDAAC+E,gCAAQnF,UAAGoB;;;AAtBhB,CAAA,AAAA,qHAAA,rHAASsG,gIA8BStH,MAAMM,UAAUO,KAAKvD;;AA9BvC,AAAA,gBAAA,ZA8BkB0C;AA9BlB,AA+BI,OAAC4G,uCAAehH,UAAGU,UAAUO,KAAKvD;;;AA/BtC,CAAA,AAAA,2DAAA,3DAASgK,sEAiCMyB;;AAjCf,AAAA,YAAA,RAiCU/L;AAjCV,AAiC0B,OAACkF,qCAAalF,MAAK+L;;;AAjC7C,CAAA,AAAA,2DAAA,3DAASzB;;AAAT,AAAA,YAAA,RAkCUtK;AAlCV,AAkCgB,OAAC0F,qCAAa1F;;;AAlC9B,CAAA,AAAA,0DAAA,1DAASsK;;AAAT,AAAA,YAAA,RAmCStK;AAnCT,AAmCe,OAAC+F,oCAAY/F;;;AAnC5B,CAAA,oDAAA,pDAASsK;AAAT,AAAA,AAAA;;;AAAA,CAAA,0DAAA,1DAASA;;AAAT,CAAA,6DAAA,7DAASA;;AAAT,CAAA,kEAAA,WAAAjI,mBAAAC,qBAAAC,rHAAS+H;AAAT,AAAA,OAAA9H,iBAAAF,qBAAA;;;AAAA;;;gDAAA,hDAASiI,wGAAkB5H,KAAKC,GAAGC,YAAMC;AAAzC,AAAA,YAAAwH,yCAA2B3H,KAAKC,GAAGC,YAAMC;;;AAAhCwH,AAqCT,AAAA,kDAAA,0DAAA9F,5GAAMyH;AAAN,AAAA,IAAAD,YAAA,AAAA;AAAA,AAAA,QAAAA;KAAA;AAAA,OAAAC,8EAAA,CAAA,UAAA;;;KAAA;AAAA,OAAAA,8EAAA,CAAA,UAAA,MAAA,CAAA,UAAA;;;;AAAA,MAAA,KAAA/J,MAAA,CAAA,8DAAA,AAAA;;;;;AAAA,CAAA,gFAAA,hFAAM+J,2FACFtJ;AADJ,AACU,0FAAA,nFAACyJ,8EAAwBzJ;;;AADnC,CAAA,gFAAA,gBAAAuJ,hGAAMD,2FAEFtJ;AAFJ,AAAA,IAAAwJ,cAAAD;IAAAC,kBAAA,AAAAtH,4BAAAsH;YAAA,AAAArH,4CAAAqH,gBAAA,pEAEUnH;AAFV,AAGG,IAAAzE,mBAAA,AAAAC,mDAAA;AAAA,AAAA,AAAAC,kCAAA;AAAA,AAAA,IAAAC,mBAAA,iBAAAC,wBAAA,WAAA0L;AAAA,AAAA,IAAAC,mBAAA,CAAAD,aAAA;AAAA,AAAA,GAAA,CAAAC,qBAAA;AAAA,IAAAC,cAAA,CAAAF,aAAA;IAAAG,cAAA,KAAAlC,8CAAAiC,YAAA,KAAA,tBAGkC5J;IAHlC0J,mBAAAA;AAAA,AAAA,AAAA,IAAAI,yBAAAJ;AAAA,AAAA,CAAAI,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAH,qBAAA;AAAA,IAAAD,mBAAAA;AAAA,AAAA,AAAA,oBACMrH;AADN,IAAA0H,yBAAAL;AAAA,AAAA,CAAAK,uBAAA,OAAA;;AAAAA;AAAA,IAAAC,yBAAAN;AAAA,AAAA,CAAAM,uBAAA,OAAA;;AAAAA;;AAAA;;AAAA,GAAA,CAAAL,qBAAA;AAAA,IAAAM,cAAA,CAAAP,aAAA;IAAAA,mBAAAA;AAAA,AAAA,OAAAtL,6CAAAsL,iBAAAO;;AAAA,GAAA,CAAAN,qBAAA;AAAA,IAAAO,cAAA,CAAAR,aAAA;IAAAS,cAAA,KAAAxC,8CAAAuC,YAAA,KAAA,tBAWsClK;IAXtC0J,mBAAAA;AAAA,AAAA,AAAA,IAAAU,yBAAAV;AAAA,AAAA,CAAAU,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAT,qBAAA;AAAA,IAAAU,cAAA,CAAAX,aAAA;IAAAY,cAAA,CAAAZ,aAAA;IAAAW,kBAAA,AAAA5G,4CAAA6G,YAAA,IAAA;IAAAJ,cAAA,AAAAzG,4CAAA6G,YAAA,IAAA;IAAAZ,mBAAA,iBAAAa,kBAAAb;AAAA,AAAA,CAAAa,gBAAA,OAAAF;;AAAA,CAAAE,gBAAA,OAAAL;;AAAAK;;AAAA,AAAA,AAAA,oBAAAF;AAAA,IAAAG,yBAAAd;AAAA,AAAA,CAAAc,uBAAA,OAAA;;AAAAA;AAAA,IAAAC,yBAAAf;AAAA,AAAA,CAAAe,uBAAA,OAAA;;AAAAA;;AAAA;;AAAA,GAAA,CAAAd,qBAAA;AAAA,IAAAe,cAAA,CAAAhB,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAiB,yBAAAjB;AAAA,AAAA,CAAAiB,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAhB,qBAAA;AAAA,IAAAiB,cAAA,yDAAA,zDAIyB4B,oDAAWxM;IAJpC0J,mBAAAA;AAAA,AAAA,OAAA7F,4CAAA6F,iBAAA,IAAAkB;;AAAA,GAAA,CAAAjB,qBAAA;AAAA,IAAAkB,cAAA,CAAAnB,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAoB,yBAAApB;AAAA,AAAA,CAAAoB,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAnB,qBAAA;AAAA,IAAAoB,cAAA,AAEyByB,oDAAWxM,KAAKqC;IAFzCqH,mBAAAA;AAAA,AAAA,OAAA7F,4CAAA6F,iBAAA,IAAAqB;;AAAA,GAAA,CAAApB,qBAAA;AAAA,IAAAqB,cAAA,yDAAA,zDAU6BwB,oDAAWxM;IAVxC0J,mBAAAA;AAAA,AAAA,OAAA7F,4CAAA6F,iBAAA,KAAAsB;;AAAA,GAAA,CAAArB,qBAAA;AAAA,IAAAsB,cAAA,CAAAvB,aAAA;IAAAwB,cAAA,AAAAzH,4CAAAwH,YAAA,IAAA;IAAAE,cAAA,AAAA1H,4CAAAwH,YAAA,IAAA;IAAAG,cAAA,CAAAF,eAAA;IAAAxB,mBAAA,iBAAA2B,kBAAA3B;AAAA,AAAA,CAAA2B,gBAAA,QAAAF;;AAAAE;;AAAA,AAAA,AAAA,oBAAAD;AAAA,IAAAE,yBAAA5B;AAAA,AAAA,CAAA4B,uBAAA,OAAA;;AAAAA;AAAA,IAAAC,yBAAA7B;AAAA,AAAA,CAAA6B,uBAAA,OAAA;;AAAAA;;AAAA;;AAAA,GAAA,CAAA5B,qBAAA;AAAA,IAAAe,cAAA,CAAAhB,aAAA;IAAA8B,cAAA,CAAA9B,aAAA;IAAAgB,kBAAA,AAAAjH,4CAAA+H,YAAA,IAAA;IAAA5B,cAAA,AAAAnG,4CAAA+H,YAAA,IAAA;IAAA9B,mBAAA,iBAAA+B,kBAAA/B;AAAA,AAAA,CAAA+B,gBAAA,QAAAf;;AAAA,CAAAe,gBAAA,OAAA7B;;AAAA6B;;AAAA,AAAA,AAAA,oBAAAf;AAAA,IAAAgB,yBAAAhC;AAAA,AAAA,CAAAgC,uBAAA,OAAA;;AAAAA;AAAA,IAAAC,yBAAAjC;AAAA,AAAA,CAAAiC,uBAAA,OAAA;;AAAAA;;AAAA;;AAAA,GAAA,CAAAhC,qBAAA;AAAA,IAAAU,cAAA,CAAAX,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAkC,yBAAAlC;AAAA,AAAA,CAAAkC,uBAAA,OAAAvB;;AAAA,CAAAuB,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAjC,qBAAA;AAAA,IAAAkC,cAAA,CAAAnC,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAoC,yBAAApC;AAAA,AAAA,CAAAoC,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAnC,qBAAA;AAAA,IAAAwB,cAAA,CAAAzB,aAAA;IAAAqC,cAAA,KAAApE,8CAAAwD,YAAA,KAAA,tBAS2BnL;IAT3B0J,mBAAAA;AAAA,AAAA,AAAA,IAAAsC,yBAAAtC;AAAA,AAAA,CAAAsC,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAArC,qBAAA;AAAA,IAAAsC,cAAA,CAAAvC,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAwC,yBAAAxC;AAAA,AAAA,CAAAwC,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA;;;;;;;;;;;;;;;;;;AAAA,AAAA;;;AAAA,AAAA,IAAAC,kBAAA,CAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA;AAAA,AAAA,CAAAA,gBAAA,OAAA7N;;AAAA,CAAA6N,gBAAA,OAAA;;AAAAA;;yEAAAzC;;AAAA,AAAA,IAAAnL,2BAAA,iBAAA,AAAA;AAAA,AAAA,IAAAC,wBAAA,AAAAR,sBAAA0L;AAAA,AAAA,GAAA,AAAAjL,mCAAAD,sBAAA;AAAA;;AAAAA;;;;iBAAA,IAAAE,oBAAA0N;AAAA,AAAA,IAAAC,yBAAA3C;AAAA,AAAA,CAAA2C,uBAAA,OAAA3N;;AAAA2N;AAAA,GAAA,AAAAxN,cAAA,CAAA6K,aAAA;AAAA,IAAA4C,yBAAA5C;AAAA,AAAA,CAAA4C,uBAAA,OAAA,AAAAvN,gBAAA,CAAA2K,aAAA;;AAAA4C;AAAA,MAAA5N;;;AAAA;;AAAA,AAAA,GAAA,AAAAD,mCAAAF,yBAAA;AAAA,gBAAAmL;;;;AAAAnL;;;;;gEAAAmL;;;;;yEAAAA;;;;;;;;;IAAA1K,uBAAA,iBAAAuN,kBAAA,AAAAxO;AAAA,AAAA,CAAAwO,gBAAArN,AAAA,OAAAtB;;AAAA2O;;AAAA,AAAA,OAAApN,2DAAAH;;;AAAApB;;;AAHH,CAAA,0EAAA,1EAAM0L;;AAAN,AAmBA,AAAA;;;qCAAA,6CAAAzH,lFAAM6K;AAAN,AAAA,IAAAD,YAAA,AAAA;AAAA,AAAA,QAAAA;KAAA;AAAA,OAAAC,iEAAA,CAAA,UAAA;;;KAAA;AAAA,OAAAA,iEAAA,CAAA,UAAA,MAAA,CAAA,UAAA;;;;AAAA,MAAA,KAAAnN,MAAA,CAAA,8DAAA,AAAA;;;;;AAAA,CAAA,mEAAA,nEAAMmN,8EAEFC;AAFJ,AAGG,OAACC,iEAAWD,UAAU,WAAKjP;AAAL,AAAA;;;;AAHzB,CAAA,mEAAA,nEAAMgP,8EAIFC,UAAUE;AAJd,AAKG,oDAAA,7CAACC,8EACK,AAACC,+CAAOF,kBACR,AAACG,sDAAaL;;;AAPvB,CAAA,6DAAA,7DAAMD;;AAAN,AASA;;;8CAAA,9CAAMO,oGAEHC;AAFH,AAGE,OAACC,+CAAO,WAAKC,EAAEC;AAAP,AAAU,GAAI,kCAAA,lCAACC,gCAAkBD;AAAU,YAAA,JAAKD;;AAAGA;;GAA3D,IAEQ,AAACR,iEAAWM;;AAEtB;;;+BAAA,/BAAOK,sEAEJC,KAAKC,KAAKC,GAAGtN;AAFhB,AAGE,IAAAuN,YAAiB,CAAC,AAAAzQ,kEAAA,AAAAA,6EAAA,AAAAA,bAAUsQ,0DAAAA,rDAAKC,0DAAAA;IAAjCG,YAAuC,CAAC,AAAA1Q,kEAAA,AAAAA,2EAAA,AAAAA,XAAUsQ,wDAAAA,nDAAKE,wDAAAA;AAAvD,AAAA,sJAAAC,UAAAC,gEAAAD,UAAAC,lOAAC,AAAAzQ,wEAAA,AAAAA,6FAAA,AAAAA;;AAEH;;;sCAAA,tCAAO0Q,oFAEIL,KAAKC,KAAKC,GAAGtN;AAFxB,AAIE,IAAM0N,eAAa,CAAC,AAAA5Q,kEAAA,AAAAA,6EAAA,AAAAA,bAAUsQ,0DAAAA,rDAAKC,0DAAAA;IAC7BM,YAAU,CAAC,AAAA7Q,kEAAA,AAAAA,2EAAA,AAAAA,XAAUsQ,wDAAAA,nDAAKE,wDAAAA;AADhC,AAEE,OAACM,uBAAYF,aAAaC;;AAE9B;;;yDAAA,zDAAME,0HAEKT;AAFX,AAGE,IAAMU,IAAU,AAAUC,qDAAQX;IAC5BY,YAAU,AAAUD,qDAAQ,iBAAAE,YAAWb;IAAXc,YAAgB,4CAAK,AAACC;AAAtB,AAAA,0IAAAF,UAAAC,0DAAAD,UAAAC,hNAAC,AAAApR,kEAAA,AAAAA,uFAAA,AAAAA;;AADnC,AAEE,oBAAU,AAASgR;AAAnB;AAAA,AACE,AAAQA;;;AACV,oBAAU,AAAgBE;AAA1B;AAAA,AACE,MAAO,gDAAA,wBAAA,2CAAA,qDAAA,qEAAA,7OAACpH,iSACuCwG;;;AACjD,OAASY;;AAEb;;;8CAAA,9CAAMI,oGAEKhB;AAFX,AAGE,IAAMU,IAAE,AAAUC,qDAAQX;AAA1B,AACE,oBAAI,AAASU;AACX,AAAI,AAAAO,0DAAAC,mCAAA,qDAAA,0BAAA,qIAAA,IAAA,GAAA,8CAAA,qDAAA,KAAAC,gBAAA;AAAA,AAAA,0FAAA,2BAAA,kEAAA,vEAAiCnB,qBAAsB,AAACP,4CAAoBO;GAA5E,OAAA,KAAA,MAAA,KAAA,KAAA;;AAAJ;;AAEA,AAAI,AAAAiB,0DAAAC,mCAAA,qDAAA,0BAAA,qIAAA,IAAA,GAAA,8CAAA,qDAAA,KAAAC,gBAAA;AAAA,AAAA,0FAAA,2BAAA,LAAiCnB;GAAjC,OAAA,KAAA,MAAA,KAAA,KAAA;;AAAJ;;;AAGN;;;oCAAA,pCAAOoB,gFAEIpB;AAFX,AAIE,IAAMnK,KAAG,6EAAA,2CAAA,uDAAA,/KAACjB,wEAAkBoL;AAA5B,AACE,SAAA,TAAQnK;;AACR,OAAQA;;AAEZ;;;uCAAA,vCAAMwL,sFAEKrB;AAFX,AAGE,IAAMU,IAAc,AAACC,qDAAQX;IACvBsB,cAAY,AAAYZ;AAD9B,AAEE,IAAAa,qBAAA,AAAAlQ,cAAU,AAAO,AAACsP,qDAAQX;IAA1BwB,uBAAA;IAAAC,uBAAA;IAAAC,mBAAA;;AAAA,AAAA,GAAA,AAAA,CAAAA,mBAAAD;AAAA,eAAA,AAAAD,2DAAAE,tEAAQ9B;AAAR,AAAA,AACE,AAAS,AAACe,qDAAQ,CAAC,AAAAjR,kEAAA,AAAAA,iFAAA,AAAAA,jBAAUsQ,8DAAAA,zDAAKJ,8DAAAA;;AADpC;AAAA,gBAAA2B;gBAAAC;gBAAAC;gBAAA,CAAAC,mBAAA;;;;;;;AAAA,IAAAC,4BAAA,AAAAtQ,cAAAkQ;AAAA,AAAA,GAAAI;AAAA,AAAA,IAAAJ,yBAAAI;AAAA,AAAA,GAAA,AAAAC,6BAAAL;AAAA,IAAAM,yBAAA,AAAAC,sBAAAP;AAAA,AAAA,gBAAA,AAAAQ,qBAAAR;gBAAAM;gBAAA,AAAAG,gBAAAH;gBAAA;;;;;;;AAAA,eAAA,AAAAtQ,gBAAAgQ,3BAAQ3B;AAAR,AAAA,AACE,AAAS,AAACe,qDAAQ,CAAC,AAAAjR,kEAAA,AAAAA,iFAAA,AAAAA,jBAAUsQ,8DAAAA,zDAAKJ,8DAAAA;;AADpC;AAAA,gBAAA,AAAAqC,eAAAV;gBAAA;gBAAA;gBAAA;;;;;;;;AAAA;;;;;AAEA,AAASb;;AACT,IAAA,AACE,AAACU,kCAAUE;;AADb;iBAAA,GAAA,CAAAY,mBAGSnQ;AAHT,QAAAmQ,JAGkBhI;AAHlB,AAIIA;;AAJJ,AAAA,MAAAgI;;;;AASJ,AAAA,2CAAA,mDAAA7N,9FAAM+N;AAAN,AAAA,IAAAD,YAAA,AAAA;AAAA,AAAA,QAAAA;KAAA;AAAA,OAAAC,uEAAA,CAAA,UAAA;;;KAAA;AAAA,OAAAA,uEAAA,CAAA,UAAA,MAAA,CAAA,UAAA;;;;AAAA,MAAA,KAAArQ,MAAA,CAAA,8DAAA,AAAA;;;;;AAAA,CAAA,yEAAA,zEAAMqQ,oFACFjD;AADJ,AAEG,OAACkD,uEAAiBlD,UAAU,WAAKjP;AAAL,AAAA;;;;AAF/B,CAAA,yEAAA,zEAAMkS,oFAGFjD,UAAUE;AAHd,AAIG,UAAA,AAAArK,NAAcC;AAAd,AACE,AAACU,yDAAM,AAAC2M,uDAAcnD,WACf,WAAAoD;AAAA,AAAA,IAAAC,cAAAD;iBAAA,AAAAtM,4CAAAuM,YAAA,IAAA,zEAAMpN;mBAAN,AAAAa,4CAAAuM,YAAA,IAAA,3EAAWC;UAAXD,NAAsBlJ;AAAtB,AACE,OAACjE,wDAAKJ,IAAI,iBAAAyN,mBAAItN;AAAJ,AAAA,oBAAAsN;AAAAA;;AAAS,oDAAA,7CAACpD,8EAAQ,AAACC,+CAAOF,kBAAYoD;;;;;AAH7CxN;;;AAJjB,CAAA,mEAAA,nEAAMmN;;AAAN,AASA;;;qCAAA,rCAAOO,kFAEI3C,KAAKC,KAAKC,GAAGtN;AAFxB,AAGE,UAAA,AAAAoC,NAAcC;AAAd,AACE,IAAA2N,mBAAa,CAAC,AAAAlT,kEAAA,AAAAA,6EAAA,AAAAA,bAAUsQ,0DAAAA,rDAAKC,0DAAAA;IAA7B4C,mBAAmC,CAAC,AAAAnT,kEAAA,AAAAA,2EAAA,AAAAA,XAAUsQ,wDAAAA,nDAAKE,wDAAAA;IAAnD4C,mBACa,WAAK1N;AAAL,AACE,GAAI,GAAA,eAAA,dAAOA;AACT,OAACC,wDAAKJ,IAAIG;;AACV,OAACE,4BAAOL;;;AAJzB,AAAA,uIAAA2N,iBAAAC,iBAAAC,mEAAAF,iBAAAC,iBAAAC,7QAAC,AAAAnT,oEAAA,AAAAA,wHAAA,AAAAA;;AADWsF;;AAOhB;;;4CAAA,5CAAO8N,gGAEI/C,KAAKC,KAAKC,GAAGtN;AAFxB,AAIE,UAAA,AAAAoC,NAAcC;AAAd,AACE,AAACU,yDAAM,AAACqN,wBAAa,CAAC,AAAAtT,kEAAA,AAAAA,6EAAA,AAAAA,bAAUsQ,0DAAAA,rDAAKC,0DAAAA,OAAM,CAAC,AAAAvQ,kEAAA,AAAAA,2EAAA,AAAAA,XAAUsQ,wDAAAA,nDAAKE,wDAAAA,MACpD,WAAA+C;AAAA,AAAA,IAAAC,cAAAD;iBAAA,AAAAhN,4CAAAiN,YAAA,IAAA,zEAAM9N;AAAN,AACE,GAAI,GAAA,eAAA,dAAOA;AACT,OAACC,wDAAKJ,IAAIG;;AACV,OAACE,4BAAOL;;;;AALPA;;AAOhB;;;+DAAA,/DAAMkO,sIAEKnD;AAFX,AAGE,IAAMoD,YAAU,iBAAAC,YAAWrD;IAAXsD,YAAgB,4CAAK,AAACvC;AAAtB,AAAA,0IAAAsC,UAAAC,0DAAAD,UAAAC,hNAAC,AAAA5T,kEAAA,AAAAA,uFAAA,AAAAA;;AAAjB,AACE,IAAAU,mBAAA,AAAAC,mDAAA;AAAA,AAAA,AAAAC,kCAAA;AAAA,AAAA,IAAAC,mBAAA,iBAAAC,wBAAA,WAAA+S;AAAA,AAAA,IAAAC,mBAAA,CAAAD,aAAA;AAAA,AAAA,GAAA,CAAAC,qBAAA;AAAA,IAAAC,cAAA,CAAAF,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAG,yBAAAH;AAAA,AAAA,CAAAG,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAF,qBAAA;AAAA,IAAAG,cAAA,AACqBqC,+BAAchG;IADnCuD,mBAAAA;AAAA,AAAA,OAAAlN,4CAAAkN,iBAAA,IAAAI;;AAAA,GAAA,CAAAH,qBAAA;AAAA,IAAAI,cAAA,CAAAL,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAM,yBAAAN;AAAA,AAAA,CAAAM,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAL,qBAAA;AAAA,IAAAM,cAAA,CAAAP,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAQ,yBAAAR;AAAA,AAAA,CAAAQ,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAP,qBAAA;AAAA,IAAAQ,cAAA,CAAAT,aAAA;IAAAU,cAAA,gBAAAD,hBAEYzS;IAFZgS,mBAAAA;AAAA,AAAA,AAAA,IAAAW,yBAAAX;AAAA,AAAA,CAAAW,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAV,qBAAA;AAAA,IAAAW,cAAA,AAEuB8B,qDAAYjG;IAFnCuD,mBAAAA;AAAA,AAAA,OAAAlN,4CAAAkN,iBAAA,IAAAY;;AAAA,GAAA,CAAAX,qBAAA;AAAA,IAAAY,cAAA,AAIkB+B,wBAAa/C;IAJ/BG,mBAAAA;AAAA,AAAA,OAAAlN,4CAAAkN,iBAAA,KAAAa;;AAAA,GAAA,CAAAZ,qBAAA;AAAA,IAAAI,cAAA,CAAAL,aAAA;IAAAc,cAAA,CAAAd,aAAA;IAAAK,kBAAA,cAAAS,dACY7O;IADZ+N,mBAAA,iBAAAe,kBAAAf;AAAA,AAAA,CAAAe,gBAAA,OAAAV;;AAAAU;;AAAA,AAAA,AAAA,GAAAV;AAAA,IAAAW,yBAAAhB;AAAA,AAAA,CAAAgB,uBAAA,OAAA;;AAAAA;AAAA,IAAAC,yBAAAjB;AAAA,AAAA,CAAAiB,uBAAA,OAAA;;AAAAA;;AAAA;;AAAA,GAAA,CAAAhB,qBAAA;AAAA,IAAAiB,cAAA,CAAAlB,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAmB,yBAAAnB;AAAA,AAAA,CAAAmB,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAlB,qBAAA;AAAA,IAAAmB,cAAA,CAAApB,aAAA;IAAAA,mBAAAA;AAAA,AAAA,OAAA3S,6CAAA2S,iBAAAoB;;AAAA,GAAA,CAAAnB,qBAAA;AAAA,IAAAC,cAAA,CAAAF,aAAA;IAAAE,kBAAA,CAAAF,aAAA;IAAAA,mBAAA,iBAAAqB,kBAAArB;AAAA,AAAA,CAAAqB,gBAAA,OAAAnB;;AAAAmB;;AAAA,AAAA,AAAA,oBAAAnB;AAAA,IAAAoB,yBAAAtB;AAAA,AAAA,CAAAsB,uBAAA,OAAA;;AAAAA;AAAA,IAAAC,yBAAAvB;AAAA,AAAA,CAAAuB,uBAAA,OAAA;;AAAAA;;AAAA;;AAAA,GAAA,CAAAtB,qBAAA;AAAA,IAAAuB,cAAA,CAAAxB,aAAA;IAAAyB,cAAA,gBAAAD,hBAIOxT;IAJPgS,mBAAAA;AAAA,AAAA,AAAA,IAAA0B,yBAAA1B;AAAA,AAAA,CAAA0B,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAzB,qBAAA;AAAA,IAAAiB,cAAA,CAAAlB,aAAA;IAAA2B,cAAA,CAAA3B,aAAA;IAAAkB,kBAAA,gBAAAS,hBAGO3T;IAHPgS,mBAAA,iBAAA4B,kBAAA5B;AAAA,AAAA,CAAA4B,gBAAA,OAAAV;;AAAAU;;AAAA,AAAA,AAAA,oBAAAV;AAAA,IAAAW,yBAAA7B;AAAA,AAAA,CAAA6B,uBAAA,OAAA;;AAAAA;AAAA,IAAAC,yBAAA9B;AAAA,AAAA,CAAA8B,uBAAA,OAAA;;AAAAA;;AAAA;;AAAA,GAAA,CAAA7B,qBAAA;AAAA,IAAA8B,cAAA,CAAA;IAAAC,cAAA,CAAA;IAAAC,cAAA,AAAAC,uCAAAH,YAAAC;IAAAG,cAAA,sCAAA,GAAAF,zCAGkBU,4BAAiB9C;IAHnCG,mBAAAA;AAAA,AAAA,OAAAlN,4CAAAkN,iBAAA,KAAAmC;;AAAA;;;;;;;;;;;;;;;;AAAA,AAAA;;;AAAA,AAAA,IAAAC,kBAAA,CAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA;AAAA,AAAA,CAAAA,gBAAA,OAAA7U;;AAAA,CAAA6U,gBAAA,OAAA;;AAAAA;;gHAAApC;;AAAA,AAAA,IAAAxS,2BAAA,iBAAA,AAAA;AAAA,AAAA,IAAAC,wBAAA,AAAAR,sBAAA+S;AAAA,AAAA,GAAA,AAAAtS,mCAAAD,sBAAA;AAAA;;AAAAA;;;;iBAAA,IAAAE,oBAAA0U;AAAA,AAAA,IAAAC,yBAAAtC;AAAA,AAAA,CAAAsC,uBAAA,OAAA3U;;AAAA2U;AAAA,GAAA,AAAAxU,cAAA,CAAAkS,aAAA;AAAA,IAAAuC,yBAAAvC;AAAA,AAAA,CAAAuC,uBAAA,OAAA,AAAAvU,gBAAA,CAAAgS,aAAA;;AAAAuC;AAAA,MAAA5U;;;AAAA;;AAAA,AAAA,GAAA,AAAAD,mCAAAF,yBAAA;AAAA,gBAAAwS;;;;AAAAxS;;;;;uGAAAwS;;;;;gHAAAA;;;;;;;;;IAAA/R,uBAAA,iBAAAuU,kBAAA,AAAAxV;AAAA,AAAA,CAAAwV,gBAAArU,AAAA,OAAAtB;;AAAA2V;;AAAA,AAAA,OAAApU,2DAAAH;;;AAAApB;;AAMJ;;;0CAAA,1CAAOgW,4FAEIpG;AAFX,AAIE,IAAA5P,mBAAA,AAAAC,mDAAA;AAAA,AAAA,AAAAC,kCAAA;AAAA,AAAA,IAAAC,mBAAA,iBAAAC,wBAAA,WAAA6V;AAAA,AAAA,IAAAC,mBAAA,CAAAD,aAAA;AAAA,AAAA,GAAA,CAAAC,qBAAA;AAAA,IAAAC,cAAA,CAAA;IAAAC,cAAA,CAAA;IAAAC,cAAA,AAAAhB,uCAAAc,YAAAC;IAAAE,cAAA,mFAAAD,nFACgBxK,8EAAwB+D;IADxCqG,mBAAAA;AAAA,AAAA,OAAAhQ,4CAAAgQ,iBAAA,IAAAK;;AAAA,GAAA,CAAAJ,qBAAA;AAAA,IAAAK,cAAA,CAAAN,aAAA;IAAAM,kBAAA,CAAAN,aAAA;IAAAO,cAAA,AAAAD,sBAAA;IAAAN,mBAAA,iBAAAQ,kBAAAR;AAAA,AAAA,CAAAQ,gBAAA,OAAAF;;AAAAE;;AAAA,AAAA,OAAAxQ,4CAAAgQ,iBAAA,IAAAO;;AAAA,GAAA,CAAAN,qBAAA;AAAA,IAAAQ,cAAA,CAAAT,aAAA;IAAAS,kBAAA,CAAAT,aAAA;IAAAA,mBAAA,iBAAAU,kBAAAV;AAAA,AAAA,CAAAU,gBAAA,OAAAD;;AAAAC;;AAAA,AAAA,AAAA,oBAAAD;AAAA,IAAAE,yBAAAX;AAAA,AAAA,CAAAW,uBAAA,OAAA;;AAAAA;AAAA,IAAAC,yBAAAZ;AAAA,AAAA,CAAAY,uBAAA,OAAA;;AAAAA;;AAAA;;AAAA,GAAA,CAAAX,qBAAA;AAAA,IAAAQ,cAAA,CAAAT,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAa,yBAAAb;AAAA,AAAA,CAAAa,uBAAA,OAAAJ;;AAAA,CAAAI,uBAAA,OAAA;;AAAAA;AAAA;;AAAA,GAAA,CAAAZ,qBAAA;AAAA,IAAAK,cAAA,CAAAN,aAAA;IAAAc,cAAA,AAAAR;IAAAN,mBAAAA;AAAA,AAAA,OAAAhQ,4CAAAgQ,iBAAA,IAAAc;;AAAA,GAAA,CAAAb,qBAAA;AAAA,IAAAc,cAAA,CAAAf,aAAA;IAAAA,mBAAAA;AAAA,AAAA,OAAAzV,6CAAAyV,iBAAAe;;AAAA,GAAA,CAAAd,qBAAA;AAAA,IAAAe,cAAA,CAAAhB,aAAA;IAAAA,mBAAAA;AAAA,AAAA,AAAA,IAAAiB,yBAAAjB;AAAA,AAAA,CAAAiB,uBAAA,OAAAD;;AAAA,CAAAC,uBAAA,OAAA;;AAAAA;AAAA;;AAAA;;;;;;;;;AAAA,AAAA;;;AAAA,AAAA,IAAAC,kBAAA,CAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA;AAAA,AAAA,CAAAA,gBAAA,OAAAzW;;AAAA,CAAAyW,gBAAA,OAAA;;AAAAA;;2FAAAlB;;AAAA,AAAA,IAAAtV,2BAAA,iBAAA,AAAA;AAAA,AAAA,IAAAC,wBAAA,AAAAR,sBAAA6V;AAAA,AAAA,GAAA,AAAApV,mCAAAD,sBAAA;AAAA;;AAAAA;;;;iBAAA,IAAAE,oBAAAsW;AAAA,AAAA,IAAAC,yBAAApB;AAAA,AAAA,CAAAoB,uBAAA,OAAAvW;;AAAAuW;AAAA,GAAA,AAAApW,cAAA,CAAAgV,aAAA;AAAA,IAAAqB,yBAAArB;AAAA,AAAA,CAAAqB,uBAAA,OAAA,AAAAnW,gBAAA,CAAA8U,aAAA;;AAAAqB;AAAA,MAAAxW;;;AAAA;;AAAA,AAAA,GAAA,AAAAD,mCAAAF,yBAAA;AAAA,gBAAAsV;;;;AAAAtV;;;;;kFAAAsV;;;;;2FAAAA;;;;;;;;;IAAA7U,uBAAA,iBAAAmW,kBAAA,AAAApX;AAAA,AAAA,CAAAoX,gBAAAjW,AAAA,OAAAtB;;AAAAuX;;AAAA,AAAA,OAAAhW,2DAAAH;;;AAAApB;;AAKF;;;oDAAA,pDAAOwX,gHAEJ5H;AAFH,AAGE,UAAA,AAAAhL,NAAcC;AAAd,AACE,AAACU,yDAAM,AAACqQ,+BAAchG,MACf,WAAK6H;AAAL,AACE,oBAAIA;AACF,AAAA5G,0DAAAC,mCAAA,qDAAA,0BAAA,qIAAA,IAAA,GAAA,8CAAA,qDAAA,KAAAC,gBAAA;AAAA,AAAA,0FAAA,wEAAA,kEAAA,pHAA4B,4CAAKnB,sBAAsB,AAACP,4CAAoBO;GAA5E,OAAA,KAAA,MAAA,KAAA,KAAA;;AACA,AAAAiB,0DAAAC,mCAAA,qDAAA,0BAAA,qIAAA,IAAA,GAAA,8CAAA,qDAAA,KAAAC,gBAAA;AAAA,AAAA,0FAAA,wEAAA,lDAA4B,4CAAKnB;GAAjC,OAAA,KAAA,MAAA,KAAA,KAAA;;;AACF,OAAC3K,wDAAKJ,IAAI4S;;;AANP5S;;AAQhB;;;6CAAA,7CAAM6S,kGAEK9H;AAFX,AAGE,UAAA,AAAAhL,NAAcC;AAAd,AACE,AAACU,yDAAM,AAACoS,sBAAW/H,MACZ,WAAK5K;AAAL,AACE,GAAI,GAAA,eAAA,dAAOA;AACT,OAACC,wDAAKJ,IAAIG;;AACV,8GAAA,WAAA4S,lHAACrS,yDAAM,AAACyQ,wCAAgBpG;AAAxB,AAA+B,mEAAAgI,5DAAC3S,wDAAKJ;;;;;AALpCA;;AAShB;;;uCAAA,vCAAOgT,sFAEoBpY,MAAKqY,UAAU/X;AAF1C,AAGE,IAAMgY,aAAW,iBAAAC,YAAW,AAAQvY;IAAnBwY,YAAyBH;AAAzB,AAAA,0IAAAE,UAAAC,0DAAAD,UAAAC,hNAAC,AAAA3Y,kEAAA,AAAAA,uFAAA,AAAAA;;AAAlB,AACE,oBAAI,AAAA,oFAAQS;AACV,OAACmY,uBAAYH;;AACb,UAAA,AAAAnT,NAAcC;AAAd,AACE,AAACU,yDAAM,AAACwQ,wBAAagC,YACd,WAAAI;AAAA,AAAA,IAAAC,cAAAD;iBAAA,AAAAtS,4CAAAuS,YAAA,IAAA,zEAAMpT;AAAN,AACE,GAAI,GAAA,eAAA,dAAOA;AACT,OAACC,wDAAKJ,IAAIG;;AACV,OAACE,4BAAOL;;;;AALPA;;;AAOpB;;;sCAAA,tCAAOwT,oFAEoB5Y,MAAK6Y,KAAKR,UAAUhY;AAF/C,AAGE,IAAAyR,qBAA8B,AAAsB9R;AAApD,AAAA,oBAAA8R;AAAA,AAAA,yBAAAA,rBAAWgH;AAAX,AACE,IAAMC,WAAS,AAACC,8CAA6BX;AAA7C,AACE,IAAAxF,mBAAI,iBAAAoG,YAAqB,iBAAAE,YAAW,AAAQnZ;IAAnBoZ,YAAA;IAAAC,YAAgCN;AAAhC,AAAA,0IAAAI,UAAAC,UAAAC,0DAAAF,UAAAC,UAAAC,pOAAC,AAAAxZ,kEAAA,AAAAA,iGAAA,AAAAA;;IAAtBqZ,gBAAA,AAAA7P,gBAAEyP;AAAF,AAAA,QAAAI,8CAAAA,4CAAAD,aAAAC,yBAAAD;;AAAJ,AAAA,oBAAApG;AAAAA;;AAAA,IAAAA,uBACI,iBAAAyG,YAAqB,iBAAAE,YAAW,AAAQxZ;IAAnByZ,YAAyBV;AAAzB,AAAA,0IAAAS,UAAAC,0DAAAD,UAAAC,hNAAC,AAAA5Z,kEAAA,AAAAA,uFAAA,AAAAA;;IAAtB0Z,gBAAA,AAAAlQ,gBAAEyP;AAAF,AAAA,QAAAS,8CAAAA,4CAAAD,aAAAC,yBAAAD;;AADJ,AAAA,oBAAAzG;AAAAA;;AAEI,IAAA6G,YAAqB,iBAAAE,YAAW,AAAQ5Z;IAAnB6Z,YAAyB,CAAA,KAAUd;AAAnC,AAAA,0IAAAa,UAAAC,0DAAAD,UAAAC,hNAAC,AAAAha,kEAAA,AAAAA,uFAAA,AAAAA;;IAAtB8Z,gBAAA,AAAAtQ,gBAAEyP;AAAF,AAAA,QAAAa,8CAAAA,4CAAAD,aAAAC,yBAAAD;;;;AAJR;;;AAMF,AAAA,AAAA,AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,AAAA,CAAA,AAAA,6FAAA,WAAAI,mBAAAC,3HAAW4D;;AAAX,AAAA,IAAA7D,yBAAA;AAAA,AAAA,OAAAA,+DAAAC,gBAAA;;;AAAA,CAAA,AAAA,6FAAA,WAAAC,mBAAAC,QAAAC,nIAAWyD;;AAAX,AAAA,IAAA3D,yBAAA;AAAA,AAAA,IAAAG,YAAAF;IAAAE,gBAAA,EAAA,CAAAA,qBAAAC,oBAAA,AAAAD,cAAA;AAAA,AAAA,QAAAA;KAAA;AAAAhK;;;KAAA;AAAA2I;;;KAAA;AAAAtJ;;;;AAAA,OAAA1K,4CAAAuV,gBAAAJ,QAAAC;;;;;AAAA,CAAA,AAAA,kGAAA,WAAAI,mBAAAC,gBAAAC,hJAAWmD;;AAAX,AAAA,IAAArD,yBAAA;AAAA,AAAA,OAAAxK,+CAAA,WAAA2K,kBAAAC;AAAA,AAAA,IAAAC,cAAAD;IAAAE,kBAAA,AAAAxU,4CAAAuU,YAAA,IAAA;IAAAE,kBAAA,AAAAzU,4CAAAuU,YAAA,IAAA;AAAA,AAAA,QAAAJ,gDAAAA,8CAAAE,kBAAAG,gBAAAC,mBAAAN,2BAAAE,kBAAAG,gBAAAC;GAAAL,mBAAAF;;;AAAA,CAAA,AAAA,yGAAA,WAAAQ,mBAAAC,qBAAAC,5JAAW2C;;AAAX,AAAA,IAAA7C,yBAAA;AAAA,AAAA,IAAAG,wBAAA,WAAAC;AAAA,AAAA,OAAAC,+BAAAJ,qBAAA,oBAAA,GAAA,IAAA,GAAAC,mBAAAE;;AAAA,AAAA,OAAAC,+BAAAJ,qBAAAE,sBAAA,mDAAA,KAAA,IAAAD,mBAAA,AAAAI,+CAAA,mFAAA,KAAAC,2BAAA,KAAA,EAAA,IAAA,AAAAA,sCAAA,CAAA,oDAAAlL,aAAA,OAAA,KAAAkL,2BAAA,KAAA,EAAA,IAAA,AAAAA,sCAAA,CAAA,gFAAAvC,2BAAA,OAAA,KAAAuC,2BAAA,KAAA,EAAA,IAAA,AAAAA,sCAAA,CAAA,iEAAA7L,yBAAA,eAAA6K;;;AAAA,CAAA,AAAA,iGAAA,WAAAiB,5GAAWqC;;AAAX,AAAA,IAAArC,gBAAA;AAAA,AAAA,YAAAC,qBAAA,IAAAD,cAAA,EAAA,mFAAA,oDAAA,gFAAA,yEAAA,kBAAAjB,iBAAA,AAAAmB,oBAAAnB,iBAAA,AAAAoB;;;AAAA,CAAA,AAAA,yFAAA,WAAAC,pGAAWiC;;AAAX,AAAA,IAAAjC,yBAAA;AAAA,AAAAC;;;AAAA,CAAA,AAAA,+FAAA,WAAAC,1GAAW+B;;AAAX,AAAA,IAAA/B,yBAAA;AAAA,AAAA,2DAAAzL,YAAA2I,0BAAAtJ,wBAAAmM,cAAAtB,gBAAAwB,3IAAW8B;;;AAAX,CAAA,AAAA,6FAAA,WAAA7B,xGAAW6B;;AAAX,AAAA,IAAA7B,yBAAA;AAAA,AAAA,QAAA,IAAA,AAAA3J,gBAAAkI;;;AAAA,CAAA,AAAA,yFAAA,WAAA0B,pGAAW4B;;AAAX,AAAA,IAAA5B,yBAAA;AAAA,AAAA,IAAAC,kBAAAH;AAAA,AAAA,GAAA,GAAA,CAAAG,mBAAA;AAAAA;;AAAA,IAAAA,sBAAA,AAAA,WAAAC;AAAA,AAAA,QAAA,cAAA,AAAAC,8BAAAD;GAAAF;AAAA,AAAA,CAAAF,gBAAAG;;AAAAA;;;;AAAA,CAAA,AAAA,2FAAA,WAAAG,WAAAC,jHAAWuB;;AAAX,AAAA,IAAAxB,iBAAA;AAAA,AAAA,SAAA,GAAA,CAAAC,eAAA,aAAA,EAAA,CAAA,AAAAD,+BAAA,AAAAC,8BAAA,EAAA,AAAAC,6CAAA,AAAAF,oBAAA,AAAAC,uBAAA,EAAA,AAAAC,6CAAA,AAAAF,kCAAA,AAAAC,qCAAA,EAAA,AAAAC,6CAAA,AAAAF,gCAAA,AAAAC,mCAAA,AAAAC,6CAAA,AAAAF,wBAAA,AAAAC;;;AAAA,CAAA,AAAA,uGAAAha,vGAAWub;;AAAX,CAAA,AAAA,oHAAA,pHAAWA,+HAsBD3d,MAAKoQ,KAAKC,GAAG/P;;AAtBvB,AAAA,gBAAA,ZAsBUN;AAtBV,AAuBI,oBAAI,AAAA,oFAAQM;AACV,OAAC4P,6BAAKlQ,UAAKoQ,KAAKC,GAAG/P;;AACnB,OAACwS,mCAAW9S,UAAKoQ,KAAKC,GAAG/P;;;;AAzB/B,CAAA,AAAA,kIAAA,lIAAWqd,6IAiBa3a,MAAMic,eAAeE,YAAYC,eAAeC,gBAAgBtc;;AAjBxF,AAAA,gBAAA,ZAiBwBC;AAjBxB,AAiB8F,MAAO,MAAA,NAACd;;;AAjBtG,CAAA,AAAA,2HAAA,3HAAWyb,sIAGM3a,MAAMqV,UAAU/X;;AAHjC,AAAA,gBAAA,ZAGiB0C;AAHjB,AAII,IAAMsV,aAAW,CAAC,AAAAzY,kEAAA,AAAAA,yFAAA,AAAAA,zBAAUsQ,sEAAAA,1DAAKkI,sEAAAA;AAAjC,AACE,oBAAI,AAAA,oFAAQ/X;AACV,OAACyE,wEAAkBuT;;AACnB,OAAClM,8EAAwBkM;;;;AAPjC,CAAA,AAAA,4HAAA,5HAAWqF,uIA8BO3a,MAAM1C;;AA9BxB,AAAA,gBAAA,ZA8BkB0C;AA9BlB,AA+BI,oBAAI,AAAA,oFAAQ1C;AACV,OAACsQ,uDAA+BT;;AAChC,OAACmD,6DAAqCnD;;;;AAjC5C,CAAA,AAAA,0HAAA,1HAAWwN,qIAcK3d,MAAKwe,IAAInG,UAAU/X;;AAdnC,AAAA,gBAAA,ZAcgBN;AAdhB,AAeI,IAAAye,YAAQ,AAAC7F,oCAAY5Y,UAAKwe,IAAInG,UAAU/X;AAAxC,AAAA,GAA6C,AAACqF,cAAI,AAAA,oFAAQrF;AAA1D,IAAAC,mBAAA,AAAAC,mDAAA;AAAA,AAAA,AAAAC,kCAAA;AAAA,AAAA,IAAAC,mBAAA,iBAAAC,wBAAA,WAAA+d;AAAA,AAAA,IAAAC,mBAAA,CAAAD,aAAA;AAAA,AAAA,GAAA,CAAAC,qBAAA;AAAA,IAAAD,mBAAAA;AAAA,AAAA,OAAA3d,6CAAA2d,iBAAAD;;AAAA;;;AAAA,AAAA;;;AAAA,AAAA,IAAAG,kBAAA,CAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA;AAAA,AAAA,CAAAA,gBAAA,OAAA3d;;AAAA,CAAA2d,gBAAA,OAAA;;AAAAA;;yEAAAF;;AAAA,AAAA,IAAAxd,2BAAA,iBAAA,AAAA;AAAA,AAAA,IAAAC,wBAAA,AAAAR,sBAAA+d;AAAA,AAAA,GAAA,AAAAtd,mCAAAD,sBAAA;AAAA;;AAAAA;;;;iBAAA,IAAAE,oBAAAwd;AAAA,AAAA,IAAAC,yBAAAJ;AAAA,AAAA,CAAAI,uBAAA,OAAAzd;;AAAAyd;AAAA,GAAA,AAAAtd,cAAA,CAAAkd,aAAA;AAAA,IAAAK,yBAAAL;AAAA,AAAA,CAAAK,uBAAA,OAAA,AAAArd,gBAAA,CAAAgd,aAAA;;AAAAK;AAAA,MAAA1d;;;AAAA;;AAAA,AAAA,GAAA,AAAAD,mCAAAF,yBAAA;AAAA,gBAAAwd;;;;AAAAxd;;;;;gEAAAwd;;;;;yEAAAA;;;;;;;;;IAAA/c,uBAAA,iBAAAqd,kBAAA,AAAAte;AAAA,AAAA,CAAAse,gBAAAnd,AAAA,OAAAtB;;AAAAye;;AAAA,AAAA,OAAAld,2DAAAH;;;AAAApB;;AAAAke;;;;AAfJ,CAAA,AAAA,oHAAA,pHAAWd,+HAkBD3d,MAAKM;;AAlBf,AAAA,gBAAA,ZAkBUN;AAlBV,AAmBI,oBAAI,AAAA,oFAAQM;AACV,OAACiP,iEAAWY,YAAK,AAAcnQ;;AAC/B,OAACwS,uEAAiBrC,YAAK,AAAcnQ;;;;AArB3C,CAAA,AAAA,4HAAA,5HAAW2d,uIAkCO3a,MAAM1C;;AAlCxB,AAAA,gBAAA,ZAkCkB0C;AAlClB,AAmCI,oBAAI,AAAA,oFAAQ1C;AACV,OAACkR,qCAAa,AAAA,kFAAOlR;;AACrB,OAAC2X,2CAAmB,AAAA,kFAAO3X;;;;AArCjC,CAAA,AAAA,kIAAA,lIAAWqd,6IASO3d,MAAKqY,UAAU/X;;AATjC,AAAA,gBAAA,ZASkBN;AATlB,AAUI,IAAMsY,aAAW,iBAAA+F,YAAW,AAAQre;IAAnBse,YAAyBjG;AAAzB,AAAA,0IAAAgG,UAAAC,0DAAAD,UAAAC,hNAAC,AAAAze,kEAAA,AAAAA,uFAAA,AAAAA;;AAAlB,AACE,oBAAI,AAAA,oFAAQS;AACV,OAACie,8BAAajG;;AACd,OAACnC,+BAAcmC;;;;AAbvB,CAAA,AAAA,mIAAA,nIAAWqF,8IAsCQ3a,MAAM1C;;AAtCzB,AAAA,gBAAA,ZAsCmB0C;AAtCnB,AAuCI,oBAAI,AAAA,oFAAQ1C;AACV,OAAC6Q,4CAAchB;;AACf,OAAC4H,kDAAoB5H;;;;AAzC3B,CAAA,AAAA,0HAAA,1HAAWwN,qIA0CK3a,MAAM1C;;AA1CtB,AAAA,gBAAA,ZA0CgB0C;AA1ChB,AA2CI,oBAAI,AAAA,oFAAQ1C;AACV,OAACiR,kCAAUpB;;AACX,OAACoG,wCAAgBpG;;;;AA7CvB,CAAA,AAAA,2HAAA,3HAAWwN,sIA0BM3a,MAAMoN,KAAKC,GAAG/P;;AA1B/B,AAAA,gBAAA,ZA0BiB0C;AA1BjB,AA2BI,oBAAI,AAAA,oFAAQ1C;AACV,OAACkQ,oCAAYL,YAAKC,KAAKC,GAAG/P;;AAC1B,OAAC4S,0CAAkB/C,YAAKC,KAAKC,GAAG/P;;;;AA7BtC,CAAA,AAAA,uHAAA,vHAAWqd,kIAgBE3a,MAAMic,eAAeC,SAASC,YAAYC,eAAeC,gBAAgBtc;;AAhBtF,AAAA,gBAAA,ZAgBaC;AAhBb,AAgB4F,MAAO,MAAA,NAACd;;;AAhBpG,CAAA,AAAA,2HAAA,3HAAWyb,sIAQM3d,MAAKqY,UAAU/X;;AARhC,AAAA,gBAAA,ZAQiBN;AARjB,AAQqC,OAACoY,qCAAapY,UAAKqY,UAAU/X;;;AARlE,CAAA,AAAA,0FAAA,WAAAgc,mBAAAC,xHAAWoB;;AAAX,AAAA,IAAArB,yBAAA;AAAA,AAAA,GAAA,AAAAE,0BAAA,iFAAA,qFAAA,sEAAA,wEAAAD;AAAA,OAAAE,+CAAA,AAAAC,qBAAA,AAAAjN,6CAAA,mCAAA6M,wBAAAX,eAAAY;;AAAA,2DAAApM,YAAA2I,0BAAAtJ,wBAAAmM,cAAA,AAAAgB,oBAAA,AAAAF,+CAAApC,gBAAAkC,kBAAA,hOAAWoB;;;;AAAX,CAAA,AAAA,+GAAA,WAAAf,mBAAA3C,7IAAW0D;;AAAX,AAAA,IAAAf,yBAAA;AAAA,AAAA,IAAAC,YAAA5C;IAAA4C,gBAAA,EAAA,CAAAA,qBAAAzC,oBAAA,AAAAyC,cAAA;AAAA,AAAA,QAAAA;KAAA;KAAA;KAAA;AAAA;;;;AAAA,OAAAL,0BAAAnC,gBAAAJ;;;;;AAAA,CAAA,AAAA,iGAAA,WAAA6C,mBAAAC,gBAAAzB,/IAAWqC;;AAAX,AAAA,IAAAb,yBAAA;AAAA,AAAA,IAAAE,eAAA5b;IAAA6b,eAAAF;AAAA,AAAA,oBAAA,CAAAC,6CAAAA,2CAAA,oDAAAC,gBAAAD,wBAAA,oDAAAC;AAAA,2DAAA3B,UAAAxC,0BAAAtJ,wBAAAmM,cAAAtB,gBAAA,zIAAWsD;;AAAX,oBAAA,CAAAX,6CAAAA,2CAAA,gFAAAC,gBAAAD,wBAAA,gFAAAC;AAAA,2DAAA9M,YAAAmL,UAAA9L,wBAAAmM,cAAAtB,gBAAA,3HAAWsD;;AAAX,oBAAA,CAAAX,6CAAAA,2CAAA,iEAAAC,gBAAAD,wBAAA,iEAAAC;AAAA,2DAAA9M,YAAA2I,0BAAAwC,UAAAK,cAAAtB,gBAAA,7HAAWsD;;AAAX,2DAAAxN,YAAA2I,0BAAAtJ,wBAAAmM,cAAA,AAAAuB,8CAAA7C,gBAAA0C,gBAAAzB,WAAA,pNAAWqC;;;;;;AAAX,CAAA,AAAA,2FAAA,WAAAR,tGAAWQ;;AAAX,AAAA,IAAAR,yBAAA;AAAA,AAAA,OAAA3b,cAAA,AAAA4Z,+CAAA,mFAAA,KAAAgC,mBAAA,oDAAAjN,YAAA,OAAA,KAAAiN,mBAAA,gFAAAtE,0BAAA,OAAA,KAAAsE,mBAAA,iEAAA5N,wBAAA,eAAA6K;;;AAAA,CAAA,AAAA,kGAAA,WAAAgD,mBAAA/B,hIAAWqC;;AAAX,AAAA,IAAAN,yBAAA;AAAA,AAAA,2DAAAlN,YAAA2I,0BAAAtJ,wBAAA8L,UAAAjB,gBAAAwB,vIAAW8B;;;AAAX,CAAA,AAAA,+FAAA,WAAAL,mBAAAC,7HAAWI;;AAAX,AAAA,IAAAL,yBAAA;AAAA,AAAA,GAAA,AAAAE,wBAAAD;AAAA,OAAAD,mEAAA,AAAAG,eAAAF,oBAAA,KAAA,AAAAE,eAAAF,oBAAA;;AAAA,OAAAzN,+CAAA4N,gBAAAJ,uBAAAC;;;;AAAA,CAAA,AAAAI,0DAAA;AAAA,AAAA,AAAA;;;AAAA,CAAA,AAAAA,gEAAA;;AAAA,CAAA,AAAAA,qEAAA,WAAAC;AAAA,AAAA,YAAAC,eAAA,KAAA,iDAAA,KAAA,IAAA;;;AAAA,CAAA,AAAAF,wEAAA,WAAAC,mBAAAE;AAAA,AAAA,OAAAtb,iBAAAsb,qBAAA;;;AAAA;;;sDAAA,tDAAWK,oHACChO,KAAK2I,mBAAmBtJ;AADpC,AAAA,YAAAmO,wFAAA,KAAA,KAAA,nDACYxN,KAAK2I,mBAAmBtJ;;;AADpC;;;yDAAA,iEAAAuO,1HAAWK;AAAX,AAAA,IAAAJ,uBAAA,iBAAAC,YAAA,AAAAxB,sDAAAsB,UAAA,sGAAA,gFAAA;AAAA,AAAA,GAAA,AAAAG,wBAAAH;AAAA,OAAAtO,6CAAA,mCAAAwO;;AAAAA;;;AAAA,AAAA,YAAAN,+CAAA,AAAA,kFAAAI,WAAA,AAAA,8GAAAA,WAAA,AAAA,+FAAAA,WAAA,KAAA,AAAApB,oBAAAqB,sBAAA;;;AAAAL,AA+CA,AAAA,iDAAA,yDAAAnZ,1GAAMmb;AAAN,AAAA,IAAAL,qBAAA;AAAA,AAAA,IAAAC,2BAAA,AAAA;AAAA,AAAA,IAAAC,yBAAA;;AAAA,AAAA,GAAA,CAAAA,yBAAAD;AAAA,AAAA,AAAAD,wBAAA,CAAA,UAAAE;;AAAA,gBAAA,CAAAA,yBAAA;;;;AAAA;;;;AAAA,IAAAC,uBAAA,EAAA,CAAA,MAAA,AAAAH,4BAAA,AAAA,KAAAI,qBAAA,AAAAJ,yBAAA,KAAA,IAAA,OAAA;AAAA,AAAA,OAAAK,oFAAAF;;;AAAA,AAAA,CAAA,sFAAA,tFAAME,iGAA0BG;AAAhC,AAAuC,MAAO,MAAA,NAAC5d;;;AAA/C,CAAA,yEAAA,zEAAMyd;;AAAN;AAAA,CAAA,mEAAA,WAAAC,9EAAMD;AAAN,AAAA,IAAAE,qBAAA;AAAA,AAAA,OAAAA,wDAAA,AAAAre,cAAAoe;;;AAAA,AAEA,AAAA;;;;;;;;;;;;;;;;;;2CAAA,mDAAApb,9FAAMub;AAAN,AAAA,IAAAT,qBAAA;AAAA,AAAA,IAAAC,2BAAA,AAAA;AAAA,AAAA,IAAAC,yBAAA;;AAAA,AAAA,GAAA,CAAAA,yBAAAD;AAAA,AAAA,AAAAD,wBAAA,CAAA,UAAAE;;AAAA,gBAAA,CAAAA,yBAAA;;;;AAAA;;;;AAAA,IAAAC,uBAAA,EAAA,CAAA,MAAA,AAAAH,4BAAA,AAAA,KAAAI,qBAAA,AAAAJ,yBAAA,KAAA,IAAA,OAAA;AAAA,AAAA,OAAAS,8EAAA,CAAA,UAAA,MAAAN;;;AAAA,AAAA,CAAA,gFAAA,gBAAAO,hGAAMD,2FAiBHpd;AAjBH,AAAA,IAAAsd,cAAAD;IAAAC,kBAAA,AAAApb,4BAAAob;aAAAA,TAsBeU;oCAtBf,AAAA7b,4CAAAmb,gBAAA,0FAAA,tLAiBkBI;uBAjBlB,AAAAvb,4CAAAmb,gBAAA,/EAiB0CzQ,gJAEf,WAAK+Q;AAAL,AACE,sBAAA,WAAAC,1BAACC;AAAD,AAAO,4BAAAD,rBAACE,uCAAaH;GAArB,mFAAA;;aApB7B,AAAAzb,4CAAAmb,gBAAA,rEAiBqDK;AAjBrD,AAwBE,IAAMM,eAAa,uGAAA,2CAAA,iFAAA,kFAAA,sGAAA,iGAAA,wJAAA,2JAAA,qFAAA,oDAAA,2CAAA,sDAAA,cAAA,viCAACC,uXAC2BC,mGACAC,yGACA,6CAAA,7CAAC5X,2JACD,6CAAA,7CAACA,oJACD,CAAA,SAAA,mOAEA,uGAAA,2CAAA,iEAAA,KAAA,+DAAA,MAAA,kEAAA,/VAAC0X,4WAGMP,qBAC5B,sDAAA,tDAAC7D,+CAAOkE;IAC5BK,kBAAgB,iDAAA,+LAAA,9NAAMX,+BACJ,AAAClX,6CAAK,AAAC8X,sIAAuBte;IAChDtC,IAAmB,iDAAA,/BAAMggB,+BACJ,4DAAA,KAAA,/DAAU,uBAAA,AAAAhX,vBAAC6X,uCAAQF,wBACjB,AAAA5P,0DAAAC,mCAAA,qDAAA,0BAAA,qIAAA,IAAA,GAAA,8CAAA,qDAAA,KAAAC,gBAAA;AAAA,AAAA,4IAAA,lDAAM,gBAAA,AAAAjI,hBAAC8I,gCAAO6O;sCAFlB,nCAEI,OAAA,KAAA,MAAA,KAAA,KAAA;IACvBG,UAAmB,KAAAxD,qFAAA,KAAA,KAAA,hDAAyBhb,KAAKqe,gBAAgBxR;AAjBvE,AAkBE,OAAC4R,6CAA+BD,QAAQP;;;AA1C5C,CAAA,mEAAA,nEAAMb;;AAAN;AAAA,CAAA,6DAAA,WAAAG,xEAAMH;AAAN,AAAA,IAAAI,YAAA,AAAAze,gBAAAwe;IAAAA,gBAAA,AAAA9N,eAAA8N;AAAA,AAAA,IAAAE,qBAAA;AAAA,AAAA,OAAAA,wDAAAD,UAAAD;;;AAAA,AAgDA,AAAAmB,2EAAA,sDAAA,WAAAC,UACwCrY;AADxC,AAAA,IAAAsY,cAAAD;IAAAC,kBAAA,AAAA1c,4BAAA0c;iBAAAA,bAC4BC;WAD5B,AAAA1c,4CAAAyc,gBAAA,nEACW5e;aADX,AAAAmC,4CAAAyc,gBAAA,rEACgBjB;AADhB,AAEE,IAAMrX,WAAK,iBAAA4J,mBAAI5J;AAAJ,AAAA,oBAAA4J;AAAAA;;AAAA,kDAAA,sDAAA;;;IACL4O,SAAO,AAACtQ,4CAAcxO;AAD5B,AAEE,GAAU8e;AAAV;AAAA,AACE,MAAO,mJAAA,2CAAA,0DAAA,xPAAC9X,gDAAQ,CAAA,kFAA2ChH,gHACpCA,6DAAa6e;;;AACtC,4IAAA,+DAAA,pMAACE,8EAAiB/e,+GACQ2d,2DACFrX;;AAE5B,AAAA0Y,0EAAA,sDAAA,WAAAC,UACwC3Y;AADxC,AAAA,IAAA4Y,cAAAD;IAAAC,kBAAA,AAAAhd,4BAAAgd;iBAAAA,bAC4BL;WAD5B,AAAA1c,4CAAA+c,gBAAA,nEACWlf;aADX,AAAAmC,4CAAA+c,gBAAA,rEACgBvB;AADhB,AAEE,IAAMrX,WAAK,iBAAA4J,mBAAI5J;AAAJ,AAAA,oBAAA4J;AAAAA;;AAAA,kDAAA,sDAAA;;;IACL4O,SAAO,AAACtQ,4CAAcxO;AAD5B,AAEE,GAAM8e;AAAN,AACE,MAAO,mJAAA,2CAAA,0DAAA,xPAAC9X,gDAAQ,CAAA,kFAA2ChH,gHACpCA,6DAAa6e;;AAFtC;;AAGA,4IAAA,+DAAA,pMAACE,8EAAiB/e,+GACQ2d,2DACFrX;;AAE5B,AAAA6Y,iFAAA,sDAAA,WAAAC,UACkB9Y;AADlB,AAAA,IAAA+Y,cAAAD;IAAAC,kBAAA,AAAAnd,4BAAAmd;WAAA,AAAAld,4CAAAkd,gBAAA,nEACWrf;AADX,AAEE,IAAM8e,SAAO,AAACtQ,4CAAcxO;AAA5B,AACE,oBAAI,AAAA,oFAAQsG;AACVwY;;AACA,IAAAlhB,mBAAA,AAAAC,mDAAA;AAAA,AAAA,AAAAC,kCAAA;AAAA,AAAA,IAAAC,mBAAA,iBAAAC,wBAAA,WAAAshB;AAAA,AAAA,IAAAC,mBAAA,CAAAD,aAAA;AAAA,AAAA,GAAA,CAAAC,qBAAA;AAAA,IAAAD,mBAAAA;AAAA,AAAA,OAAAlhB,6CAAAkhB,iBAAIR;;AAAJ;;;AAAA,AAAA;;;AAAA,AAAA,IAAAU,kBAAA,CAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA;AAAA,AAAA,CAAAA,gBAAA,OAAAlhB;;AAAA,CAAAkhB,gBAAA,OAAA;;AAAAA;;yEAAAF;;AAAA,AAAA,IAAA/gB,2BAAA,iBAAA,AAAA;AAAA,AAAA,IAAAC,wBAAA,AAAAR,sBAAAshB;AAAA,AAAA,GAAA,AAAA7gB,mCAAAD,sBAAA;AAAA;;AAAAA;;;;iBAAA,IAAAE,oBAAA+gB;AAAA,AAAA,IAAAC,yBAAAJ;AAAA,AAAA,CAAAI,uBAAA,OAAAhhB;;AAAAghB;AAAA,GAAA,AAAA7gB,cAAA,CAAAygB,aAAA;AAAA,IAAAK,yBAAAL;AAAA,AAAA,CAAAK,uBAAA,OAAA,AAAA5gB,gBAAA,CAAAugB,aAAA;;AAAAK;AAAA,MAAAjhB;;;AAAA;;AAAA,AAAA,GAAA,AAAAD,mCAAAF,yBAAA;AAAA,gBAAA+gB;;;;AAAA/gB;;;;;gEAAA+gB;;;;;yEAAAA;;;;;;;;;IAAAtgB,uBAAA,iBAAA4gB,kBAAA,AAAA7hB;AAAA,AAAA,CAAA6hB,gBAAA1gB,AAAA,OAAAtB;;AAAAgiB;;AAAA,AAAA,OAAAzgB,2DAAAH;;;AAAApB;;;AAEN,AAAAiiB,0EAAA,sDAAA,WAAAC,UACkBxZ;AADlB,AAAA,IAAAyZ,cAAAD;IAAAC,kBAAA,AAAA7d,4BAAA6d;WAAA,AAAA5d,4CAAA4d,gBAAA,nEACW/f;AADX,AAEE,OAAC6O,qCAAa7O;;AAEhB,AAAAggB,2EAAA,sDAAA,WACGC,QAAQC,OAAO5Z;AADlB,AAEE,oBAAI,AAAA,oFAAQA;AAAZ;;AAAsB,IAAA1I,mBAAA,AAAAC,mDAAA;AAAA,AAAA,AAAAC,kCAAA;AAAA,AAAA,IAAAC,mBAAA,iBAAAC,wBAAA,WAAAmiB;AAAA,AAAA,IAAAC,mBAAA,CAAAD,aAAA;AAAA,AAAA,GAAA,CAAAC,qBAAA;AAAA,IAAAD,mBAAAA;AAAA,AAAA,OAAA/hB,6CAAA+hB,iBAAA;;AAAA;;;AAAA,AAAA;;;AAAA,AAAA,IAAAE,kBAAA,CAAA,KAAA,KAAA,KAAA,KAAA,KAAA,KAAA;AAAA,AAAA,CAAAA,gBAAA,OAAA/hB;;AAAA,CAAA+hB,gBAAA,OAAA;;AAAAA;;yEAAAF;;AAAA,AAAA,IAAA5hB,2BAAA,iBAAA,AAAA;AAAA,AAAA,IAAAC,wBAAA,AAAAR,sBAAAmiB;AAAA,AAAA,GAAA,AAAA1hB,mCAAAD,sBAAA;AAAA;;AAAAA;;;;iBAAA,IAAAE,oBAAA4hB;AAAA,AAAA,IAAAC,yBAAAJ;AAAA,AAAA,CAAAI,uBAAA,OAAA7hB;;AAAA6hB;AAAA,GAAA,AAAA1hB,cAAA,CAAAshB,aAAA;AAAA,IAAAK,yBAAAL;AAAA,AAAA,CAAAK,uBAAA,OAAA,AAAAzhB,gBAAA,CAAAohB,aAAA;;AAAAK;AAAA,MAAA9hB;;;AAAA;;AAAA,AAAA,GAAA,AAAAD,mCAAAF,yBAAA;AAAA,gBAAA4hB;;;;AAAA5hB;;;;;gEAAA4hB;;;;;yEAAAA;;;;;;;;;IAAAnhB,uBAAA,iBAAAyhB,kBAAA,AAAA1iB;AAAA,AAAA,CAAA0iB,gBAAAvhB,AAAA,OAAAtB;;AAAA6iB;;AAAA,AAAA,OAAAthB,2DAAAH;;;AAAApB","names":["konserve.node-filestore/stream","cljs.nodejs/require","konserve.node-filestore/path","konserve.node-filestore/fs","konserve.node-filestore/_lock","this","lock","cljs-node-io.fs/lock-file","release","konserve.node-filestore/t_konserve$node_filestore128047","_","env","c__26357__auto__","cljs.core.async.chan","cljs.core.async.impl.dispatch/run","f__26358__auto__","switch__25947__auto__","state_128052","state_val_128053","inst_128050","cljs.core.async.impl.ioc-helpers/return-chan","statearr-128057","state-machine__25948__auto__","ret-value__25949__auto__","result__25950__auto__","cljs.core/keyword-identical?","ex__25951__auto__","e128058","statearr-128059","cljs.core/seq","statearr-128062","cljs.core/first","state__26359__auto__","statearr-128064","cljs.core.async.impl.ioc-helpers/USER-START-IDX","cljs.core.async.impl.ioc-helpers/run-state-machine-wrapped","konserve.node-filestore/verify-read-size","expected","actual","js/Error","konserve.node-filestore/verify-write-size","cljs.core/PROTOCOL_SENTINEL","this__5287__auto__","writer__5288__auto__","opt__5289__auto__","cljs.core/-write","konserve.node-filestore/FileChannel","konserve.node-filestore/->FileChannel","path","fd","open?","locked","_env","_this","buf","js/Buffer.alloc","konserve.impl.storage-layout/header-size","bytes-read","cljs_node_io.fs.read","meta-size","blob-size","value-size","pos","locked-cb","offset","value-len","blob","js/Buffer","G__128077","header","buffer","js/Buffer.from","bytes-written","cljs_node_io.fs.write","meta-arr","value-arr","G__128090","var_args","G__128097","konserve.node-filestore/open-file-channel","p__128099","map__128102","cljs.core/--destructure-map","cljs.core.get","konserve.node_filestore.open_file_channel","flags","e128104","konserve.node-filestore/_force-async","cljs.core.async.promise_chan","out","G__128105","G__128106","?err","cljs.core.async.put_BANG_","cljs.core.async/close!","konserve.node-filestore/_close-async","cljs.core/not","G__128110","G__128111","cljs.core.async.take_BANG_","konserve.node-filestore/_lock-async","fc","cljs-node-io.fs/alock-file","p__128112","vec__128113","cljs.core.nth","state_128126","state_val_128127","inst_128116","cljs.core.async.impl.ioc-helpers/take!","inst_128119","inst_128118","statearr-128128","statearr-128129","statearr-128130","statearr-128131","inst_128122","statearr-128132","inst_128124","statearr-128133","e128134","statearr-128135","statearr-128136","statearr-128137","konserve.node-filestore/t_konserve$node_filestore128138","konserve.node-filestore/afread","G__128141","G__128142","G__128143","G__128144","G__128145","G__128146","konserve.node-filestore/afwrite","len","G__128147","G__128148","G__128149","G__128150","G__128151","G__128152","?byte-count","konserve.node-filestore/afsize","G__128153","G__128154","?stat","konserve.node-filestore/afread-binary","p__128155","vec__128156","total-size","e128159","opts","_readable-fired?","cljs.core.atom","rstream","cljs.core/deref","cljs.core/reset!","ret","G__128160","res","err","cljs.core.ex_info","konserve.node-filestore/afwrite-binary","e128161","cljs_node_io.core.readable","wstream","G__128162","G__128163","G__128164","G__128165","G__128166","e","konserve.node-filestore/AsyncFileChannel","konserve.node-filestore/->AsyncFileChannel","state_128187","state_val_128188","inst_128170","inst_128173","inst_128172","inst_128174","statearr-128189","statearr-128190","statearr-128191","statearr-128192","inst_128177","inst_128178","inst_128179","inst_128180","inst_128181","inst_128185","inst_128183","statearr-128193","statearr-128194","e128195","statearr-128196","statearr-128197","statearr-128198","metadata?","G__128200","konserve.node-filestore/open-async-file-channel","p__128201","map__128202","konserve.node_filestore.open_async_file_channel","state_128248","state_val_128249","inst_128211","inst_128214","statearr-128250","statearr-128251","statearr-128252","inst_128246","inst_128237","inst_128240","statearr-128253","inst_128236","inst_128235","statearr-128254","statearr-128255","statearr-128256","inst_128210","statearr-128257","inst_128221","inst_128244","statearr-128258","inst_128207","inst_128233","inst_128223","inst_128224","inst_128225","inst_128226","statearr-128259","statearr-128260","statearr-128261","inst_128209","statearr-128262","statearr-128263","statearr-128264","statearr-128265","inst_128242","statearr-128266","inst_128228","statearr-128267","inst_128216","statearr-128268","statearr-128269","e128270","statearr-128271","statearr-128272","statearr-128273","cljs_node_io.fs.aopen","G__128275","konserve.node-filestore/list-files","directory","konserve.node_filestore.list_files","ephemeral?","cljs.core.into","cljs.core.remove","cljs_node_io.fs.readdir","konserve.node-filestore/count-konserve-keys","dir","cljs.core.reduce","c","p","clojure.string/ends-with?","konserve.node-filestore/copy","base","from","to","G__128276","G__128277","konserve.node-filestore/atomic-move","current-path","next-path","cljs-node-io.fs/rename","konserve.node-filestore/check-and-create-backing-store","f","cljs_node_io.core.file","test-file","G__128278","G__128279","cljs.core/random-uuid","konserve.node-filestore/store-exists?","taoensso.timbre._log_BANG_","taoensso.timbre/*config*","cljs.core/Delay","konserve.node-filestore/sync-base","konserve.node-filestore/delete-store","parent-base","seq__128280","chunk__128281","count__128282","i__128283","temp__5804__auto__","cljs.core/chunked-seq?","c__5525__auto__","cljs.core/chunk-first","cljs.core/chunk-rest","cljs.core/count","cljs.core/next","e128284","G__128286","konserve.node-filestore/list-files-async","konserve.node_filestore.list_files_async","cljs_node_io.fs.areaddir","p__128287","vec__128288","?files","or__5002__auto__","konserve.node-filestore/copy-async","G__128291","G__128292","G__128293","konserve.node-filestore/atomic-move-async","cljs-node-io.fs/arename","p__128294","vec__128295","konserve.node-filestore/check-and-create-backing-store-async","test-path","G__128298","G__128299","state_128332","state_val_128333","inst_128311","statearr-128334","inst_128300","inst_128303","statearr-128335","inst_128328","statearr-128336","inst_128307","inst_128308","statearr-128337","inst_128305","inst_128323","inst_128302","statearr-128338","statearr-128339","statearr-128340","inst_128320","statearr-128341","inst_128330","statearr-128342","statearr-128343","statearr-128344","inst_128325","inst_128326","statearr-128345","inst_128319","statearr-128346","statearr-128347","statearr-128348","inst_128314","inst_128315","inst_128316","cljs.core/PersistentHashMap","inst_128317","statearr-128349","e128350","statearr-128351","statearr-128352","statearr-128353","cljs-node-io.fs/aexists?","cljs_node_io.fs.amkdir","cljs-node-io.fs/awrite-file","cljs-node-io.fs/aunlink","konserve.node-filestore/sync-base-async","state_128371","state_val_128372","inst_128354","inst_128355","inst_128356","inst_128357","inst_128359","inst_128360","statearr-128373","inst_128362","statearr-128374","statearr-128375","statearr-128376","statearr-128377","inst_128365","inst_128369","inst_128367","statearr-128378","statearr-128379","e128380","statearr-128381","statearr-128382","statearr-128383","konserve.node-filestore/store-exists?-async","yes?","konserve.node-filestore/delete-store-async","cljs-node-io.fs/arm-r","p1__128384#","konserve.node-filestore/_delete-blob","store-key","store-path","G__128385","G__128386","cljs-node-io.fs/unlink","p__128387","vec__128388","konserve.node-filestore/_migratable","_key","detected-old-blobs","uuid-key","konserve.impl.defaults/store-key->uuid-key","G__128392","fexpr__128391","G__128393","G__128394","G__128395","G__128397","fexpr__128396","G__128398","G__128399","G__128401","fexpr__128400","G__128402","G__128403","this__5300__auto__","k__5301__auto__","this__5302__auto__","k128405","else__5303__auto__","G__128409","cljs.core/Keyword","__extmap","this__5320__auto__","f__5321__auto__","init__5322__auto__","ret__5323__auto__","p__128410","vec__128411","k__5324__auto__","v__5325__auto__","this__5315__auto__","writer__5316__auto__","opts__5317__auto__","pr-pair__5318__auto__","keyval__5319__auto__","cljs.core/pr-sequential-writer","cljs.core.concat","cljs.core/PersistentVector","G__128404","cljs.core/RecordIter","cljs.core/-iterator","cljs.core/nil-iter","this__5298__auto__","__meta","this__5295__auto__","__hash","this__5304__auto__","this__5296__auto__","h__5111__auto__","coll__5297__auto__","cljs.core/hash-unordered-coll","this128406","other128407","cljs.core._EQ_","this__5310__auto__","k__5311__auto__","cljs.core/contains?","cljs.core.dissoc","cljs.core/-with-meta","cljs.core/not-empty","this__5307__auto__","G__128425","this__5308__auto__","k__5309__auto__","pred__128426","expr__128427","cljs.core.assoc","this__5313__auto__","cljs.core/MapEntry","this__5299__auto__","this__5305__auto__","entry__5306__auto__","cljs.core/vector?","cljs.core/-nth","cljs.core/-conj","konserve.node-filestore/NodejsBackingFilestore","this__5346__auto__","cljs.core/List","writer__5347__auto__","G__128408","extmap__5342__auto__","G__128429","cljs.core/record?","konserve.node-filestore/->NodejsBackingFilestore","konserve.node-filestore/map->NodejsBackingFilestore","G__128423","G__128424","cljs-node-io.fs/exists?","key","G__128414","state_128416","state_val_128417","statearr-128418","e128419","statearr-128420","statearr-128421","statearr-128422","_migration-key","_key-vec","_serializer","_read-handlers","_write-handlers","args__5732__auto__","len__5726__auto__","i__5727__auto__","argseq__5733__auto__","cljs.core/IndexedSeq","konserve.node-filestore/detect-old-file-schema","seq128430","self__5712__auto__","_args","konserve.node-filestore/connect-fs-store","p__128434","map__128435","seq128432","G__128433","self__5711__auto__","detect-old-file-schema?","config","pathstr","p1__128431#","cljs.core/some","cljs.core/re-matches","params","store-config","cljs.core.merge","konserve.compressor/null-compressor","konserve.encryptor/null-encryptor","detect-old-blob","konserve.node_filestore.detect_old_file_schema","cljs.core/empty?","backing","konserve.impl.defaults/connect-default-store","konserve.store/-connect-store","p__128436","map__128437","all-config","exists","konserve.node_filestore.connect_fs_store","konserve.store/-create-store","p__128438","map__128439","konserve.store/-store-exists?","p__128440","map__128441","state_128443","state_val_128444","statearr-128445","e128446","statearr-128447","statearr-128448","statearr-128449","konserve.store/-delete-store","p__128450","map__128451","konserve.store/-release-store","_config","_store","state_128453","state_val_128454","statearr-128455","e128456","statearr-128457","statearr-128458","statearr-128459"],"sourcesContent":["(ns konserve.node-filestore\n (:require-macros [cljs.core.async.macros :refer [go]])\n (:require [cljs.core.async :refer [take! <! put! take! close!]]\n [cljs.nodejs :as node]\n [cljs-node-io.core :as io]\n [cljs-node-io.fs :as iofs]\n [clojure.string :as string]\n [konserve.compressor]\n [konserve.encryptor]\n [konserve.impl.defaults :as defaults]\n [konserve.impl.storage-layout :as storage-layout]\n [konserve.serializers]\n [konserve.store :as store]\n [konserve.utils :refer-macros [with-promise]]\n [taoensso.timbre :refer [info]]))\n\n(def stream (node/require \"stream\"))\n(def path (node/require \"path\"))\n(def fs (node/require \"fs\"))\n\n;;==============================================================================\n;; synchronous FileChannel\n\n(defn- _lock\n \"Tries to open a .lock file exclusively.\n If fails --> throws\n If succeeds --> returns a reified IPBackingLock impl which can delete the .lock file\"\n [^FileChannel this]\n (let [lock (iofs/lock-file (.-path this))\n release #(when (some? (.-locked this))\n (.release lock)\n (set! (.-locked this) nil))\n lock (reify\n Object\n (release [_] (release))\n storage-layout/PBackingLock\n (-release [_ env]\n (if (:sync? env)\n (release)\n (go (release)))))]\n (set! (.-locked this) lock)\n lock))\n\n(defn verify-read-size\n [expected actual]\n (when-not (== expected actual)\n (throw (js/Error. (str \"Expected \" expected \" bytes, but read \" actual)))))\n\n(defn verify-write-size\n [expected actual]\n (when-not (== expected actual)\n (throw (js/Error. (str \"Expected to write \" expected \" bytes, but wrote \" actual)))))\n\n(deftype FileChannel [path fd open? locked]\n storage-layout/PBackingBlob\n (-sync [this _env] (.force this true))\n (-close [this _env] (.close this))\n (-get-lock [this _env] (.lock this))\n (-read-header [_this _env]\n (let [buf (js/Buffer.alloc storage-layout/header-size)\n bytes-read (iofs/read fd buf {:position 0})]\n (verify-read-size storage-layout/header-size bytes-read)\n buf))\n (-read-meta [_this meta-size _env]\n (let [buf (js/Buffer.alloc meta-size)\n bytes-read (iofs/read fd buf {:position storage-layout/header-size})]\n (verify-read-size meta-size bytes-read)\n buf))\n (-read-value [_this meta-size _env]\n (let [blob-size ^number (.-size (fs.fstatSync fd))\n value-size (- blob-size meta-size storage-layout/header-size)\n buf (js/Buffer.alloc value-size)\n pos (+ meta-size storage-layout/header-size)\n bytes-read (iofs/read fd buf {:position pos :length (alength buf)})]\n (verify-read-size value-size bytes-read)\n buf))\n (-read-binary [this meta-size locked-cb _env]\n (let [blob-size ^number (.-size (fs.fstatSync fd))\n offset (+ meta-size storage-layout/header-size)\n value-len (- blob-size offset)\n blob (js/Buffer. value-len)\n bytes-read (iofs/read (.-fd this) blob offset value-len 0)]\n (verify-read-size value-len bytes-read)\n (locked-cb {:blob blob})))\n (-write-header [_this header _env]\n (let [buffer (js/Buffer.from header)\n bytes-written (iofs/write fd buffer {:position 0})]\n (verify-write-size (alength header) bytes-written)))\n (-write-meta [_this meta-arr _env]\n (let [buffer (js/Buffer.from meta-arr)\n pos storage-layout/header-size\n bytes-written (iofs/write fd buffer {:position pos})]\n (verify-write-size (alength buffer) bytes-written)))\n (-write-value [_this value-arr meta-size _env]\n (let [buffer (js/Buffer.from value-arr)\n pos (+ storage-layout/header-size meta-size)\n bytes-written (iofs/write fd buffer {:position pos})]\n (verify-write-size (alength buffer) bytes-written)))\n (-write-binary [_this meta-size blob _env]\n (let [buffer (js/Buffer.from blob)\n pos (+ storage-layout/header-size meta-size)\n bytes-written (iofs/write fd buffer {:position pos})]\n (verify-write-size (alength buffer) bytes-written)))\n Object\n (force [_this _] (fs.fsyncSync fd))\n (close [this]\n (when (.-open? this)\n (fs.closeSync (.-fd this))\n (when locked\n (.release locked))\n (set! (.-open? this) false)))\n (lock [this] (_lock this)))\n\n(defn ^FileChannel open-file-channel\n ([path] (open-file-channel path {}))\n ([path {flags :flags}]\n (let [fd (if flags\n (fs.openSync path flags)\n (try\n (fs.openSync path \"wx+\")\n (catch js/Error _\n (fs.openSync path \"a+\"))))]\n (FileChannel. path fd true nil))))\n\n;;==============================================================================\n;; AsyncFileChannel\n\n(defn- _force-async\n [^AsyncFileChannel this _]\n (with-promise out\n (fs.fsync (.-fd this)\n (fn [?err]\n (if (some? ?err)\n (put! out ?err)\n (close! out))))))\n\n(defn- _close-async\n \"close fd, cleanup lockfile if any\"\n [^AsyncFileChannel this]\n (with-promise out\n (if-not (.-open? this)\n (close! out)\n (fs.close (.-fd this)\n (fn [?err]\n (if (some? ?err)\n (put! out ?err)\n (do\n (set! (.-open? this) false)\n (if (.-locked this)\n (take! (.release (.-locked this))\n (fn [?err]\n (if ?err\n (put! out ?err)\n (close! out))))\n (close! out)))))))))\n\n(defn- _lock-async\n [^AsyncFileChannel fc]\n (with-promise out\n (take! (iofs/alock-file (.-path fc))\n (fn [[?err lock]]\n (if (some? ?err)\n (put! out ?err)\n (let [release #(go (or (first (<! (.release lock)))\n (set! (.-locked fc) nil)))\n lock (reify\n storage-layout/PBackingLock\n (-release [this env] (release))\n Object\n (release [this] (release)))]\n (set! (.-locked fc) lock)\n (put! out lock)))))))\n\n(defn- afread\n \"Read data from the fd into a chan. yields err|buf\"\n [fd buf pos]\n (with-promise out\n (fs.read fd buf 0 (alength buf) pos\n (fn [?err bytes-read]\n (if (some? ?err)\n (put! out ?err)\n (do\n (assert (== bytes-read (alength buf)))\n (put! out buf)))))))\n\n(defn- afwrite\n \"Write buffer to the fd. yields ?err\"\n [fd buf pos]\n (let [buf (js/Buffer.from buf)\n offset 0\n len (alength buf)]\n (with-promise out\n (fs.write fd buf offset len pos\n (fn [?err ?byte-count _]\n (if ?err\n (put! out ?err)\n (close! out)))))))\n\n(defn- afsize\n \"The size of the file in bytes. yields ;=> [?err ?size]\"\n [fd]\n (with-promise out\n (fs.fstat fd\n (fn [?err ?stat]\n (if ?err\n (put! out [?err])\n (put! out [nil (.-size ?stat)]))))))\n\n(defn- afread-binary ;=> ch<readable|err>\n [fd meta-size locked-cb _env]\n (with-promise out\n (take! (afsize fd)\n (fn [[?err total-size]]\n (if (some? ?err)\n (put! out ?err)\n (try\n (let [opts #js{:fd fd\n :encoding \"\"\n :start (+ meta-size storage-layout/header-size)\n :autoClose false}\n _readable-fired? (atom false)\n rstream ^fs.ReadStream (fs.createReadStream nil opts)]\n (.on rstream \"readable\"\n (fn []\n (when-not @_readable-fired?\n (reset! _readable-fired? true)\n (let [ret (locked-cb {:input-stream rstream :size total-size})]\n (take! ret (fn [res] (put! out res)))))))\n (.on rstream \"error\"\n (fn [err]\n (put! out (ex-info \"error reading from stream\" {:cause err})))))\n (catch js/Error err\n (put! out (ex-info \"error creating readstream\" {:cause err})))))))))\n\n(defn- afwrite-binary ; => ch<?err>\n [fd meta-size blob _env]\n (with-promise out\n (try\n (let [pos (+ storage-layout/header-size meta-size)\n rstream (io/readable blob)\n wstream (fs.createWriteStream nil #js{:fd fd\n :start pos\n :encoding \"\"\n :autoClose false})]\n (stream.pipeline rstream wstream\n (fn [?err]\n (if (some? ?err)\n (put! out ?err)\n (close! out)))))\n (catch js/Error e\n (put! out e)))))\n\n(deftype AsyncFileChannel [path fd open? locked]\n storage-layout/PBackingBlob\n (-sync [this _env] (.force this true))\n (-close [this _env] (.close this))\n (-get-lock [this _env] (.lock this))\n (-read-header [_this _env] ;=> ch<buf|err>\n (let [buf (js/Buffer.alloc storage-layout/header-size)]\n (afread fd buf 0)))\n (-read-meta [_this meta-size _env] ;=> ch<buf|err>\n (let [buf (js/Buffer.alloc meta-size)]\n (afread fd buf storage-layout/header-size)))\n (-read-value [_this meta-size _env] ;=> ch<buf|err>\n (go\n (let [[?err blob-size] (<! (afsize fd))]\n (or ?err\n (let [size (- blob-size meta-size storage-layout/header-size)\n pos (+ meta-size storage-layout/header-size)\n buf (js/Buffer.alloc size)]\n (<! (afread fd buf pos)))))))\n (-read-binary [_this meta-size locked-cb _env]\n (afread-binary fd meta-size locked-cb _env))\n (-write-header [_this header _env]\n (afwrite fd header 0))\n (-write-meta [_this meta-arr _env]\n (let [buffer (js/Buffer.from meta-arr)]\n (afwrite fd buffer storage-layout/header-size)))\n (-write-value [_this value-arr meta-size _env] ;=> ch<?err>\n (let [buffer (js/Buffer.from value-arr)\n pos (+ storage-layout/header-size meta-size)]\n (afwrite fd buffer pos)))\n (-write-binary [_this meta-size blob env]\n (afwrite-binary fd meta-size blob env)) ;=> ch<?err>\n Object\n (force [this metadata?] (_force-async this metadata?))\n (close [this] (_close-async this))\n (lock [this] (_lock-async this)))\n\n(defn open-async-file-channel ;=> ch<err|fc>\n ([path] (open-async-file-channel path {}))\n ([path {flags :flags}]\n (go\n (if flags\n (let [[?err fd] (<! (iofs/aopen path flags))]\n (or ?err (AsyncFileChannel. path fd true nil)))\n (let [[?err fd] (<! (iofs/aopen path \"wx+\"))]\n ;; if file exists expect this to fail, so we retry with append else\n ;; we clobber contents. On node this is necessary because an existence\n ;; check can create race condition between io ticks, better to fail\n (if (nil? ?err)\n (AsyncFileChannel. path fd true nil)\n (let [[?err fd] (<! (iofs/aopen path \"a+\"))]\n (or ?err (AsyncFileChannel. path fd true nil)))))))))\n\n;;==============================================================================\n;; synchronous backing impl\n\n(defn list-files ;=> Vector<String>\n \"Lists all files on the first level of a directory.\"\n ([directory]\n (list-files directory (fn [_] false)))\n ([directory ephemeral?]\n (into []\n (remove ephemeral?)\n (iofs/readdir directory))))\n\n(defn count-konserve-keys\n \"Counts konserve files in the directory.\"\n [dir]\n (reduce (fn [c p] (if (string/ends-with? p \".ksv\") (inc c) c))\n 0\n (list-files dir)))\n\n(defn- copy\n \"Copy a blob from one key to another.\"\n [base from to _env]\n (fs.copyFileSync (path.join base from) (path.join base to)))\n\n(defn- atomic-move\n \"Atomically move (rename) a blob.\"\n [^string base from to _env]\n ;; https://stackoverflow.com/questions/66780210/is-fs-renamesync-an-atomic-operation-that-is-resistant-to-corruption\n (let [current-path (path.join base from)\n next-path (path.join base to)]\n (iofs/rename current-path next-path)))\n\n(defn check-and-create-backing-store\n \"Helper Function to Check if Base is not writable\"\n [^string base]\n (let [f ^fs.File (io/file base)\n test-file ^fs.File (io/file (path.join base (str (random-uuid))))]\n (when-not (.exists f)\n (.mkdir f))\n (when-not (.createNewFile test-file)\n (throw (ex-info \"Cannot write to base.\" {:type :not-writable\n :base base})))\n (.delete test-file)))\n\n(defn store-exists?\n \"Check if underlying store already exists.\"\n [^string base]\n (let [f ^fs.File (io/file base)]\n (if (.exists f)\n (do (info \"Store directory at \" (str base) \" exists with \" (count-konserve-keys base) \" konserve keys.\")\n true)\n (do (info \"Store directory at \" (str base) \" does not exist.\")\n false))))\n\n(defn- sync-base\n \"Helper Function to synchronize the base of the filestore\"\n [^string base]\n ;; https://www.reddit.com/r/node/comments/4r8k11/how_to_call_fsync_on_a_directory/\n (let [fc (open-file-channel base {:flags \"r\"})]\n (.force fc true)\n (.close fc)))\n\n(defn delete-store\n \"Permanently deletes the base of the store with all files.\"\n [^string base]\n (let [f (io/file base)\n parent-base (.getParent f)]\n (doseq [c (.list (io/file base))]\n (.delete (io/file (path.join base c))))\n (.delete f)\n (try\n (sync-base parent-base)\n nil\n (catch js/Error e\n e))))\n\n;;==============================================================================\n;; async backing impl\n\n(defn list-files-async\n ([directory]\n (list-files-async directory (fn [_] false)))\n ([directory ephemeral?]\n (with-promise out\n (take! (iofs/areaddir directory)\n (fn [[?err ?files :as res]]\n (put! out (or ?err (into [] (remove ephemeral?) ?files))))))))\n\n(defn- copy-async\n \"Copy a blob from one key to another.\"\n [^string base from to _env]\n (with-promise out\n (fs.copyFile (path.join base from) (path.join base to)\n (fn [?err]\n (if (some? ?err)\n (put! out ?err)\n (close! out))))))\n\n(defn- atomic-move-async\n \"Atomically move (rename) a blob.\"\n [^string base from to _env]\n ;; https://stackoverflow.com/questions/66780210/is-fs-renamesync-an-atomic-operation-that-is-resistant-to-corruption\n (with-promise out\n (take! (iofs/arename (path.join base from) (path.join base to))\n (fn [[?err]]\n (if (some? ?err)\n (put! out ?err)\n (close! out))))))\n\n(defn check-and-create-backing-store-async\n \"Helper Function to Check if Base is not writable\"\n [^string base]\n (let [test-path (path.join base (str (random-uuid)))]\n (go\n (or (and (not (<! (iofs/aexists? base)))\n (first (<! (iofs/amkdir base))))\n (first (<! (iofs/awrite-file test-path \"\" {:flags \"w\"})))\n (first (<! (iofs/aunlink test-path)))))))\n\n(defn- sync-base-async\n \"Helper Function to synchronize the base of the filestore\"\n [^string base]\n ;; https://www.reddit.com/r/node/comments/4r8k11/how_to_call_fsync_on_a_directory/\n (go\n (let [fc (<! (open-async-file-channel base {:flags \"r\"}))]\n (or (<! (.force fc true))\n (<! (.close fc))))))\n\n(defn- store-exists?-async\n \"Checks if path exists.\"\n [base]\n (with-promise out\n (take! (iofs/aexists? base)\n (fn [yes?]\n (if yes?\n (info \"Store directory at \" (str base) \" exists with \" (count-konserve-keys base) \" konserve keys.\")\n (info \"Store directory at \" (str base) \" does not exist.\"))\n (put! out yes?)))))\n\n(defn delete-store-async\n \"Permanently deletes the base of the store with all files.\"\n [^string base]\n (with-promise out\n (take! (iofs/arm-r base)\n (fn [?err]\n (if (some? ?err)\n (put! out ?err)\n (take! (sync-base-async base) #(put! out %))))))) ;; TODO pipe bad\n\n;;==============================================================================\n\n(defn- _delete-blob\n \"Delete a blob object under path.\"\n [^NodejsBackingFilestore this store-key env]\n (let [store-path (path.join (.-base this) store-key)]\n (if (:sync? env)\n (iofs/unlink store-path)\n (with-promise out\n (take! (iofs/aunlink store-path)\n (fn [[?err]]\n (if (some? ?err)\n (put! out ?err)\n (close! out))))))))\n\n(defn- _migratable\n \"Check if blob exists elsewhere and return a migration key or nil.\"\n [^NodejsBackingFilestore this _key store-key _]\n (when-let [detected-old-blobs (.-detected-old-blobs this)]\n (let [uuid-key (defaults/store-key->uuid-key store-key)]\n (or (@detected-old-blobs (path.join (.-base this) \"meta\" uuid-key))\n (@detected-old-blobs (path.join (.-base this) uuid-key))\n (@detected-old-blobs (path.join (.-base this) (str \"B_\" uuid-key)))))))\n\n(defrecord NodejsBackingFilestore\n [base detected-old-blobs ephemeral?]\n storage-layout/PBackingStore\n (-create-blob [_this store-key env]\n (let [store-path (path.join base store-key)]\n (if (:sync? env)\n (open-file-channel store-path)\n (open-async-file-channel store-path))))\n (-delete-blob [this store-key env] (_delete-blob this store-key env))\n (-blob-exists? [this store-key env]\n (let [store-path (path.join (.-base this) store-key)]\n (if (:sync? env)\n (iofs/exists? store-path)\n (iofs/aexists? store-path))))\n (-migratable [this key store-key env]\n (cond-> (_migratable this key store-key env) (not (:sync? env)) go))\n (-migrate [_this _migration-key _key-vec _serializer _read-handlers _write-handlers _env] (throw (js/Error \"TODO\")))\n (-handle-foreign-key [_this _migration-key _serializer _read-handlers _write-handlers _env] (throw (js/Error \"TODO\")))\n (-keys [this env]\n (if (:sync? env)\n (list-files base (.-ephemeral? this))\n (list-files-async base (.-ephemeral? this))))\n (-copy [this from to env]\n (if (:sync? env)\n (copy this from to env)\n (copy-async this from to env)))\n (-atomic-move [_this from to env]\n (if (:sync? env)\n (atomic-move base from to env)\n (atomic-move-async base from to env)))\n (-create-store [_this env]\n (if (:sync? env)\n (check-and-create-backing-store base)\n (check-and-create-backing-store-async base)))\n (-delete-store [_this env]\n (if (:sync? env)\n (delete-store (:base env))\n (delete-store-async (:base env))))\n (-store-exists? [_this env]\n (if (:sync? env)\n (store-exists? base)\n (store-exists?-async base)))\n (-sync-store [_this env]\n (if (:sync? env)\n (sync-base base)\n (sync-base-async base))))\n\n(defn detect-old-file-schema [& _args] (throw (js/Error \"TODO detect-old-file-schema\")))\n\n(defn connect-fs-store\n \"Create Filestore in given path.\n Optional serializer, read-handlers, write-handlers, buffer-size and config (for fsync) can be changed.\n\n + the `k/bget` callback gets different args depending on `:sync?`\n - async bget callbacks recieve `{:input-stream <fs.readStream>}` akin to\n the same call on the JVM filestore impl. These streams are opened to the\n same fd that konserve is managing for the blob, so users should not call\n destroy() or it will raise an error\n - sync bget callbacks are called with `{:blob <js/Buffer>}`\n\n {:base path\n :serializer fressian-serializer\n :read-handlers empty\n :write-handlers empty\n :buffer-size 1 MB\n :config config} \"\n [path & {:keys [detect-old-file-schema? ephemeral? config]\n :or {detect-old-file-schema? false\n ephemeral? (fn [pathstr]\n (some #(re-matches % pathstr)\n [#\"\\.nfs.*\"]))}\n :as params}]\n ;; check config\n (let [store-config (merge {:default-serializer :FressianSerializer\n :compressor konserve.compressor/null-compressor\n :encryptor konserve.encryptor/null-encryptor\n :read-handlers (atom {})\n :write-handlers (atom {})\n :buffer-size (* 1024 1024)\n :opts {:sync? false}\n :config (merge {:sync-blob? true\n :in-place? false\n :lock-blob? true}\n config)}\n (dissoc params :config))\n detect-old-blob (when detect-old-file-schema?\n (atom (detect-old-file-schema path)))\n _ (when detect-old-file-schema?\n (when-not (empty? @detect-old-blob)\n (info (count @detect-old-blob) \"files in old storage schema detected. Migration for each key will happen transparently the first time a key is accessed. Invoke konserve.core/keys to do so at once. Once all keys are migrated you can deactivate this initial check by setting detect-old-file-schema to false.\")))\n backing (NodejsBackingFilestore. path detect-old-blob ephemeral?)]\n (defaults/connect-default-store backing store-config)))\n\n;; =============================================================================\n;; Multimethod Registration for konserve.store dispatch\n;; =============================================================================\n\n(defmethod store/-connect-store :file\n [{:keys [path config] :as all-config} opts]\n (let [opts (or opts {:sync? false})\n exists (store-exists? path)]\n (when-not exists\n (throw (ex-info (str \"File store does not exist at path: \" path)\n {:path path :config all-config})))\n (connect-fs-store path\n :config config\n :opts opts)))\n\n(defmethod store/-create-store :file\n [{:keys [path config] :as all-config} opts]\n (let [opts (or opts {:sync? false})\n exists (store-exists? path)]\n (when exists\n (throw (ex-info (str \"File store already exists at path: \" path)\n {:path path :config all-config})))\n (connect-fs-store path\n :config config\n :opts opts)))\n\n(defmethod store/-store-exists? :file\n [{:keys [path]} opts]\n (let [exists (store-exists? path)]\n (if (:sync? opts)\n exists\n (go exists))))\n\n(defmethod store/-delete-store :file\n [{:keys [path]} opts]\n (delete-store path))\n\n(defmethod store/-release-store :file\n [_config _store opts]\n (if (:sync? opts) nil (go nil)))\n"],"x_google_ignoreList":[0]}
|