@quantform/core 0.5.15 → 0.6.4

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 (562) hide show
  1. package/LICENSE.md +21 -0
  2. package/dist/adapter/adapter-aggregate.d.ts +41 -5
  3. package/dist/adapter/adapter-aggregate.d.ts.map +1 -0
  4. package/dist/adapter/adapter-aggregate.js +114 -54
  5. package/dist/adapter/adapter.d.ts +29 -15
  6. package/dist/adapter/adapter.d.ts.map +1 -0
  7. package/dist/adapter/adapter.js +4 -1
  8. package/dist/adapter/backtester/backtester-adapter.d.ts +4 -3
  9. package/dist/adapter/backtester/backtester-adapter.d.ts.map +1 -0
  10. package/dist/adapter/backtester/backtester-adapter.js +28 -15
  11. package/dist/adapter/backtester/backtester-cursor.d.ts +5 -4
  12. package/dist/adapter/backtester/backtester-cursor.d.ts.map +1 -0
  13. package/dist/adapter/backtester/backtester-cursor.js +24 -14
  14. package/dist/adapter/backtester/backtester-streamer.d.ts +20 -2
  15. package/dist/adapter/backtester/backtester-streamer.d.ts.map +1 -0
  16. package/dist/adapter/backtester/backtester-streamer.js +54 -40
  17. package/dist/adapter/backtester/error.d.ts +3 -0
  18. package/dist/adapter/backtester/error.d.ts.map +1 -0
  19. package/dist/adapter/backtester/error.js +11 -0
  20. package/dist/adapter/backtester/index.d.ts +1 -0
  21. package/dist/adapter/backtester/index.d.ts.map +1 -0
  22. package/dist/adapter/backtester/index.js +0 -1
  23. package/dist/adapter/error.d.ts +2 -0
  24. package/dist/adapter/error.d.ts.map +1 -0
  25. package/dist/adapter/error.js +5 -2
  26. package/dist/adapter/index.d.ts +1 -0
  27. package/dist/adapter/index.d.ts.map +1 -0
  28. package/dist/adapter/index.js +0 -1
  29. package/dist/adapter/paper/engine/paper-engine.d.ts +1 -0
  30. package/dist/adapter/paper/engine/paper-engine.d.ts.map +1 -0
  31. package/dist/adapter/paper/engine/paper-engine.js +38 -32
  32. package/dist/adapter/paper/index.d.ts +1 -0
  33. package/dist/adapter/paper/index.d.ts.map +1 -0
  34. package/dist/adapter/paper/index.js +0 -1
  35. package/dist/adapter/paper/paper-adapter.d.ts +7 -5
  36. package/dist/adapter/paper/paper-adapter.d.ts.map +1 -0
  37. package/dist/adapter/paper/paper-adapter.js +49 -25
  38. package/dist/cli/build.d.ts +1 -0
  39. package/dist/cli/build.d.ts.map +1 -0
  40. package/dist/cli/build.js +18 -8
  41. package/dist/cli/dev.d.ts +1 -0
  42. package/dist/cli/dev.d.ts.map +1 -0
  43. package/dist/cli/dev.js +52 -12
  44. package/dist/cli/error.d.ts +2 -0
  45. package/dist/cli/error.d.ts.map +1 -0
  46. package/dist/cli/error.js +7 -0
  47. package/dist/cli/index.d.ts +1 -0
  48. package/dist/cli/index.d.ts.map +1 -0
  49. package/dist/cli/index.js +21 -10
  50. package/dist/cli/internal/workspace.d.ts +1 -7
  51. package/dist/cli/internal/workspace.d.ts.map +1 -0
  52. package/dist/cli/internal/workspace.js +1 -6
  53. package/dist/cli/pull.d.ts +1 -0
  54. package/dist/cli/pull.d.ts.map +1 -0
  55. package/dist/cli/pull.js +65 -40
  56. package/dist/cli/run.d.ts +2 -1
  57. package/dist/cli/run.d.ts.map +1 -0
  58. package/dist/cli/run.js +52 -14
  59. package/dist/cli/test.d.ts +2 -1
  60. package/dist/cli/test.d.ts.map +1 -0
  61. package/dist/cli/test.js +59 -34
  62. package/dist/domain/asset.d.ts +24 -4
  63. package/dist/domain/asset.d.ts.map +1 -0
  64. package/dist/domain/asset.js +23 -8
  65. package/dist/domain/{balance.operator.d.ts → balance-operator.d.ts} +1 -0
  66. package/dist/domain/balance-operator.d.ts.map +1 -0
  67. package/dist/domain/{balance.operator.js → balance-operator.js} +0 -1
  68. package/dist/domain/balance.d.ts +35 -11
  69. package/dist/domain/balance.d.ts.map +1 -0
  70. package/dist/domain/balance.js +46 -17
  71. package/dist/domain/candle-operator.d.ts +11 -0
  72. package/dist/domain/candle-operator.d.ts.map +1 -0
  73. package/dist/domain/{candle.operator.js → candle-operator.js} +11 -5
  74. package/dist/domain/candle.d.ts +9 -8
  75. package/dist/domain/candle.d.ts.map +1 -0
  76. package/dist/domain/candle.js +3 -3
  77. package/dist/domain/commission.d.ts +12 -9
  78. package/dist/domain/commission.d.ts.map +1 -0
  79. package/dist/domain/commission.js +7 -6
  80. package/dist/domain/component.d.ts +1 -0
  81. package/dist/domain/component.d.ts.map +1 -0
  82. package/dist/domain/component.js +0 -1
  83. package/dist/domain/error.d.ts +6 -4
  84. package/dist/domain/error.d.ts.map +1 -0
  85. package/dist/domain/error.js +4 -5
  86. package/dist/domain/index.d.ts +9 -7
  87. package/dist/domain/index.d.ts.map +1 -0
  88. package/dist/domain/index.js +8 -8
  89. package/dist/domain/{instrument.operator.d.ts → instrument-operator.d.ts} +1 -0
  90. package/dist/domain/instrument-operator.d.ts.map +1 -0
  91. package/dist/domain/{instrument.operator.js → instrument-operator.js} +0 -1
  92. package/dist/domain/instrument.d.ts +9 -6
  93. package/dist/domain/instrument.d.ts.map +1 -0
  94. package/dist/domain/instrument.js +7 -3
  95. package/dist/domain/{order.operator.d.ts → order-operator.d.ts} +1 -0
  96. package/dist/domain/order-operator.d.ts.map +1 -0
  97. package/dist/domain/order-operator.js +16 -0
  98. package/dist/domain/order.d.ts +17 -22
  99. package/dist/domain/order.d.ts.map +1 -0
  100. package/dist/domain/order.js +23 -34
  101. package/dist/domain/{orderbook.operator.d.ts → orderbook-operator.d.ts} +1 -0
  102. package/dist/domain/orderbook-operator.d.ts.map +1 -0
  103. package/dist/domain/{orderbook.operator.js → orderbook-operator.js} +0 -1
  104. package/dist/domain/orderbook.d.ts +26 -10
  105. package/dist/domain/orderbook.d.ts.map +1 -0
  106. package/dist/domain/orderbook.js +12 -6
  107. package/dist/domain/{position.operator.d.ts → position-operator.d.ts} +7 -4
  108. package/dist/domain/position-operator.d.ts.map +1 -0
  109. package/dist/domain/{position.operator.js → position-operator.js} +13 -6
  110. package/dist/domain/position.d.ts +10 -9
  111. package/dist/domain/position.d.ts.map +1 -0
  112. package/dist/domain/position.js +4 -4
  113. package/dist/domain/session-builder.d.ts +54 -0
  114. package/dist/domain/session-builder.d.ts.map +1 -0
  115. package/dist/domain/session-builder.js +105 -0
  116. package/dist/domain/session.d.ts +54 -13
  117. package/dist/domain/session.d.ts.map +1 -0
  118. package/dist/domain/session.js +104 -40
  119. package/dist/domain/timeframe.d.ts +1 -0
  120. package/dist/domain/timeframe.d.ts.map +1 -0
  121. package/dist/domain/timeframe.js +0 -1
  122. package/dist/domain/{trade.operator.d.ts → trade-operator.d.ts} +1 -0
  123. package/dist/domain/trade-operator.d.ts.map +1 -0
  124. package/dist/domain/{trade.operator.js → trade-operator.js} +0 -1
  125. package/dist/domain/trade.d.ts +12 -7
  126. package/dist/domain/trade.d.ts.map +1 -0
  127. package/dist/domain/trade.js +8 -2
  128. package/dist/index.d.ts +2 -2
  129. package/dist/index.d.ts.map +1 -0
  130. package/dist/index.js +1 -3
  131. package/dist/shared/collections.d.ts +20 -1
  132. package/dist/shared/collections.d.ts.map +1 -0
  133. package/dist/shared/collections.js +98 -8
  134. package/dist/shared/datetime.d.ts +1 -0
  135. package/dist/shared/datetime.d.ts.map +1 -0
  136. package/dist/shared/datetime.js +0 -1
  137. package/dist/shared/decimals.d.ts +28 -6
  138. package/dist/shared/decimals.d.ts.map +1 -0
  139. package/dist/shared/decimals.js +33 -35
  140. package/dist/shared/environment.d.ts +3 -0
  141. package/dist/shared/environment.d.ts.map +1 -0
  142. package/dist/shared/environment.js +15 -0
  143. package/dist/shared/index.d.ts +3 -1
  144. package/dist/shared/index.d.ts.map +1 -0
  145. package/dist/shared/index.js +2 -2
  146. package/dist/shared/logger.d.ts +5 -7
  147. package/dist/shared/logger.d.ts.map +1 -0
  148. package/dist/shared/logger.js +24 -8
  149. package/dist/shared/pipe.d.ts +5 -0
  150. package/dist/shared/pipe.d.ts.map +1 -0
  151. package/dist/shared/pipe.js +8 -0
  152. package/dist/shared/policy.d.ts +1 -0
  153. package/dist/shared/policy.d.ts.map +1 -0
  154. package/dist/shared/policy.js +0 -1
  155. package/dist/storage/cache.d.ts +1 -0
  156. package/dist/storage/cache.d.ts.map +1 -0
  157. package/dist/storage/cache.js +30 -19
  158. package/dist/storage/feed.d.ts +33 -4
  159. package/dist/storage/feed.d.ts.map +1 -0
  160. package/dist/storage/feed.js +93 -19
  161. package/dist/storage/index.d.ts +1 -0
  162. package/dist/storage/index.d.ts.map +1 -0
  163. package/dist/storage/index.js +0 -1
  164. package/dist/storage/measurement.d.ts +20 -0
  165. package/dist/storage/measurement.d.ts.map +1 -0
  166. package/dist/storage/measurement.js +41 -10
  167. package/dist/storage/storage.d.ts +41 -0
  168. package/dist/storage/storage.d.ts.map +1 -0
  169. package/dist/storage/storage.js +69 -33
  170. package/dist/store/error.d.ts +9 -0
  171. package/dist/store/error.d.ts.map +1 -0
  172. package/dist/store/error.js +31 -0
  173. package/dist/store/index.d.ts +8 -7
  174. package/dist/store/index.d.ts.map +1 -0
  175. package/dist/store/index.js +7 -8
  176. package/dist/store/{store-balance.event.d.ts → store-balance-event.d.ts} +20 -7
  177. package/dist/store/store-balance-event.d.ts.map +1 -0
  178. package/dist/store/{store-balance.event.js → store-balance-event.js} +54 -10
  179. package/dist/store/{store.event.d.ts → store-event.d.ts} +1 -0
  180. package/dist/store/store-event.d.ts.map +1 -0
  181. package/dist/store/{store.event.js → store-event.js} +0 -1
  182. package/dist/store/{store-instrument.event.d.ts → store-instrument-event.d.ts} +5 -4
  183. package/dist/store/store-instrument-event.d.ts.map +1 -0
  184. package/dist/store/{store-instrument.event.js → store-instrument-event.js} +13 -5
  185. package/dist/store/{store-order.event.d.ts → store-order-event.d.ts} +10 -5
  186. package/dist/store/store-order-event.d.ts.map +1 -0
  187. package/dist/store/{store-order.event.js → store-order-event.js} +24 -20
  188. package/dist/store/store-orderbook-event.d.ts +13 -0
  189. package/dist/store/store-orderbook-event.d.ts.map +1 -0
  190. package/dist/store/store-orderbook-event.js +43 -0
  191. package/dist/store/{store-position.event.d.ts → store-position-event.d.ts} +7 -6
  192. package/dist/store/store-position-event.d.ts.map +1 -0
  193. package/dist/store/{store-position.event.js → store-position-event.js} +36 -17
  194. package/dist/store/store-state.d.ts +3 -2
  195. package/dist/store/store-state.d.ts.map +1 -0
  196. package/dist/store/store-state.js +1 -1
  197. package/dist/store/store-trade-event.d.ts +17 -0
  198. package/dist/store/store-trade-event.d.ts.map +1 -0
  199. package/dist/store/{store-trade.event.js → store-trade-event.js} +14 -5
  200. package/dist/store/store.d.ts +2 -1
  201. package/dist/store/store.d.ts.map +1 -0
  202. package/dist/store/store.js +0 -1
  203. package/dist/strategy.d.ts +8 -0
  204. package/dist/strategy.d.ts.map +1 -0
  205. package/dist/strategy.js +44 -0
  206. package/jest.config.ts +13 -0
  207. package/package.json +19 -30
  208. package/src/adapter/adapter-aggregate.ts +57 -25
  209. package/src/adapter/adapter.ts +15 -18
  210. package/src/adapter/backtester/backtester-adapter.ts +14 -7
  211. package/src/adapter/backtester/backtester-cursor.spec.ts +20 -18
  212. package/src/adapter/backtester/backtester-cursor.ts +6 -6
  213. package/src/adapter/backtester/backtester-streamer.spec.ts +18 -15
  214. package/src/adapter/backtester/backtester-streamer.ts +21 -30
  215. package/src/adapter/backtester/error.ts +7 -0
  216. package/src/adapter/error.ts +4 -0
  217. package/src/adapter/paper/engine/paper-engine.spec.ts +54 -30
  218. package/src/adapter/paper/engine/paper-engine.ts +62 -46
  219. package/src/adapter/paper/paper-adapter.ts +30 -9
  220. package/src/cli/build.ts +1 -1
  221. package/src/cli/dev.ts +15 -7
  222. package/src/cli/error.ts +5 -0
  223. package/src/cli/internal/workspace.ts +0 -11
  224. package/src/cli/pull.ts +28 -36
  225. package/src/cli/run.ts +14 -11
  226. package/src/cli/test.ts +24 -37
  227. package/src/domain/asset.spec.ts +4 -4
  228. package/src/domain/asset.ts +8 -15
  229. package/src/domain/{balance.operator.spec.ts → balance-operator.spec.ts} +4 -3
  230. package/src/domain/{balance.operator.ts → balance-operator.ts} +0 -0
  231. package/src/domain/balance.spec.ts +51 -47
  232. package/src/domain/balance.ts +32 -31
  233. package/src/domain/candle-operator.spec.ts +126 -0
  234. package/src/domain/{candle.operator.ts → candle-operator.ts} +24 -7
  235. package/src/domain/candle.spec.ts +13 -12
  236. package/src/domain/candle.ts +9 -9
  237. package/src/domain/commission.spec.ts +13 -12
  238. package/src/domain/commission.ts +15 -11
  239. package/src/domain/error.ts +8 -6
  240. package/src/domain/index.ts +8 -7
  241. package/src/domain/{instrument.operator.spec.ts → instrument-operator.spec.ts} +9 -2
  242. package/src/domain/{instrument.operator.ts → instrument-operator.ts} +0 -0
  243. package/src/domain/instrument.spec.ts +8 -1
  244. package/src/domain/instrument.ts +11 -8
  245. package/src/domain/{order.operator.spec.ts → order-operator.spec.ts} +11 -7
  246. package/src/domain/{order.operator.ts → order-operator.ts} +2 -2
  247. package/src/domain/order.spec.ts +15 -15
  248. package/src/domain/order.ts +34 -61
  249. package/src/domain/{orderbook.operator.spec.ts → orderbook-operator.spec.ts} +15 -3
  250. package/src/domain/{orderbook.operator.ts → orderbook-operator.ts} +0 -0
  251. package/src/domain/orderbook.spec.ts +11 -2
  252. package/src/domain/orderbook.ts +20 -13
  253. package/src/domain/{position.operator.spec.ts → position-operator.spec.ts} +13 -7
  254. package/src/domain/{position.operator.ts → position-operator.ts} +21 -11
  255. package/src/domain/position.spec.ts +14 -10
  256. package/src/domain/position.ts +10 -10
  257. package/src/domain/session-builder.ts +158 -0
  258. package/src/domain/session.spec.ts +5 -12
  259. package/src/domain/session.ts +85 -72
  260. package/src/domain/{trade.operator.spec.ts → trade-operator.spec.ts} +7 -3
  261. package/src/domain/{trade.operator.ts → trade-operator.ts} +0 -0
  262. package/src/domain/trade.spec.ts +6 -2
  263. package/src/domain/trade.ts +9 -7
  264. package/src/index.ts +1 -2
  265. package/src/shared/collections.spec.ts +34 -0
  266. package/src/shared/collections.ts +125 -6
  267. package/src/shared/decimals.spec.ts +18 -24
  268. package/src/shared/decimals.ts +22 -55
  269. package/src/shared/environment.ts +13 -0
  270. package/src/shared/index.ts +2 -1
  271. package/src/shared/logger.ts +35 -7
  272. package/src/shared/pipe.ts +12 -0
  273. package/src/storage/cache.ts +3 -1
  274. package/src/storage/feed.ts +91 -34
  275. package/src/storage/storage.ts +10 -8
  276. package/src/store/error.ts +36 -0
  277. package/src/store/index.ts +7 -7
  278. package/src/store/{store-balance.event.spec.ts → store-balance-event.spec.ts} +8 -8
  279. package/src/store/{store-balance.event.ts → store-balance-event.ts} +58 -15
  280. package/src/store/{store.event.ts → store-event.ts} +0 -0
  281. package/src/store/{store-instrument.event.spec.ts → store-instrument-event.spec.ts} +8 -7
  282. package/src/store/{store-instrument.event.ts → store-instrument-event.ts} +18 -7
  283. package/src/store/store-order-event.spec.ts +32 -0
  284. package/src/store/{store-order.event.ts → store-order-event.ts} +27 -22
  285. package/src/store/store-orderbook-event.spec.ts +39 -0
  286. package/src/store/store-orderbook-event.ts +56 -0
  287. package/src/store/{store-position.event.ts → store-position-event.ts} +41 -22
  288. package/src/store/store-state.ts +3 -3
  289. package/src/store/{store-trade.event.spec.ts → store-trade-event.spec.ts} +16 -14
  290. package/src/store/{store-trade.event.ts → store-trade-event.ts} +14 -8
  291. package/src/store/store.spec.ts +22 -20
  292. package/src/store/store.ts +1 -1
  293. package/src/strategy.ts +47 -0
  294. package/tsconfig.json +12 -5
  295. package/dist/adapter/adapter-aggregate.js.map +0 -1
  296. package/dist/adapter/adapter.js.map +0 -1
  297. package/dist/adapter/backtester/backtester-adapter.js.map +0 -1
  298. package/dist/adapter/backtester/backtester-adapter.spec.d.ts +0 -1
  299. package/dist/adapter/backtester/backtester-adapter.spec.js +0 -82
  300. package/dist/adapter/backtester/backtester-adapter.spec.js.map +0 -1
  301. package/dist/adapter/backtester/backtester-cursor.js.map +0 -1
  302. package/dist/adapter/backtester/backtester-cursor.spec.d.ts +0 -1
  303. package/dist/adapter/backtester/backtester-cursor.spec.js +0 -37
  304. package/dist/adapter/backtester/backtester-cursor.spec.js.map +0 -1
  305. package/dist/adapter/backtester/backtester-streamer.js.map +0 -1
  306. package/dist/adapter/backtester/backtester-streamer.spec.d.ts +0 -1
  307. package/dist/adapter/backtester/backtester-streamer.spec.js +0 -44
  308. package/dist/adapter/backtester/backtester-streamer.spec.js.map +0 -1
  309. package/dist/adapter/backtester/index.js.map +0 -1
  310. package/dist/adapter/error.js.map +0 -1
  311. package/dist/adapter/index.js.map +0 -1
  312. package/dist/adapter/paper/engine/paper-engine.js.map +0 -1
  313. package/dist/adapter/paper/engine/paper-engine.spec.d.ts +0 -1
  314. package/dist/adapter/paper/engine/paper-engine.spec.js +0 -54
  315. package/dist/adapter/paper/engine/paper-engine.spec.js.map +0 -1
  316. package/dist/adapter/paper/index.js.map +0 -1
  317. package/dist/adapter/paper/paper-adapter.js.map +0 -1
  318. package/dist/adapter/paper/paper-adapter.spec.d.ts +0 -1
  319. package/dist/adapter/paper/paper-adapter.spec.js +0 -69
  320. package/dist/adapter/paper/paper-adapter.spec.js.map +0 -1
  321. package/dist/bootstrap.d.ts +0 -11
  322. package/dist/bootstrap.js +0 -73
  323. package/dist/bootstrap.js.map +0 -1
  324. package/dist/cli/build.js.map +0 -1
  325. package/dist/cli/dev.js.map +0 -1
  326. package/dist/cli/index.js.map +0 -1
  327. package/dist/cli/internal/workspace.js.map +0 -1
  328. package/dist/cli/pull.js.map +0 -1
  329. package/dist/cli/run.js.map +0 -1
  330. package/dist/cli/test.js.map +0 -1
  331. package/dist/domain/asset.js.map +0 -1
  332. package/dist/domain/asset.spec.d.ts +0 -1
  333. package/dist/domain/asset.spec.js +0 -55
  334. package/dist/domain/asset.spec.js.map +0 -1
  335. package/dist/domain/balance.js.map +0 -1
  336. package/dist/domain/balance.operator.js.map +0 -1
  337. package/dist/domain/balance.operator.spec.d.ts +0 -1
  338. package/dist/domain/balance.operator.spec.js +0 -23
  339. package/dist/domain/balance.operator.spec.js.map +0 -1
  340. package/dist/domain/balance.spec.d.ts +0 -1
  341. package/dist/domain/balance.spec.js +0 -82
  342. package/dist/domain/balance.spec.js.map +0 -1
  343. package/dist/domain/candle.js.map +0 -1
  344. package/dist/domain/candle.operator.d.ts +0 -9
  345. package/dist/domain/candle.operator.js.map +0 -1
  346. package/dist/domain/candle.operator.spec.d.ts +0 -1
  347. package/dist/domain/candle.operator.spec.js +0 -111
  348. package/dist/domain/candle.operator.spec.js.map +0 -1
  349. package/dist/domain/candle.spec.d.ts +0 -1
  350. package/dist/domain/candle.spec.js +0 -26
  351. package/dist/domain/candle.spec.js.map +0 -1
  352. package/dist/domain/commission.js.map +0 -1
  353. package/dist/domain/commission.spec.d.ts +0 -1
  354. package/dist/domain/commission.spec.js +0 -30
  355. package/dist/domain/commission.spec.js.map +0 -1
  356. package/dist/domain/component.js.map +0 -1
  357. package/dist/domain/error.js.map +0 -1
  358. package/dist/domain/index.js.map +0 -1
  359. package/dist/domain/instrument.js.map +0 -1
  360. package/dist/domain/instrument.operator.js.map +0 -1
  361. package/dist/domain/instrument.operator.spec.d.ts +0 -1
  362. package/dist/domain/instrument.operator.spec.js +0 -24
  363. package/dist/domain/instrument.operator.spec.js.map +0 -1
  364. package/dist/domain/instrument.spec.d.ts +0 -1
  365. package/dist/domain/instrument.spec.js +0 -49
  366. package/dist/domain/instrument.spec.js.map +0 -1
  367. package/dist/domain/order.js.map +0 -1
  368. package/dist/domain/order.operator.js +0 -14
  369. package/dist/domain/order.operator.js.map +0 -1
  370. package/dist/domain/order.operator.spec.d.ts +0 -1
  371. package/dist/domain/order.operator.spec.js +0 -64
  372. package/dist/domain/order.operator.spec.js.map +0 -1
  373. package/dist/domain/order.spec.d.ts +0 -1
  374. package/dist/domain/order.spec.js +0 -33
  375. package/dist/domain/order.spec.js.map +0 -1
  376. package/dist/domain/orderbook.js.map +0 -1
  377. package/dist/domain/orderbook.operator.js.map +0 -1
  378. package/dist/domain/orderbook.operator.spec.d.ts +0 -1
  379. package/dist/domain/orderbook.operator.spec.js +0 -22
  380. package/dist/domain/orderbook.operator.spec.js.map +0 -1
  381. package/dist/domain/orderbook.spec.d.ts +0 -1
  382. package/dist/domain/orderbook.spec.js +0 -13
  383. package/dist/domain/orderbook.spec.js.map +0 -1
  384. package/dist/domain/position.js.map +0 -1
  385. package/dist/domain/position.operator.js.map +0 -1
  386. package/dist/domain/position.operator.spec.d.ts +0 -1
  387. package/dist/domain/position.operator.spec.js +0 -48
  388. package/dist/domain/position.operator.spec.js.map +0 -1
  389. package/dist/domain/position.spec.d.ts +0 -1
  390. package/dist/domain/position.spec.js +0 -30
  391. package/dist/domain/position.spec.js.map +0 -1
  392. package/dist/domain/session.js.map +0 -1
  393. package/dist/domain/session.spec.d.ts +0 -1
  394. package/dist/domain/session.spec.js +0 -23
  395. package/dist/domain/session.spec.js.map +0 -1
  396. package/dist/domain/timeframe.js.map +0 -1
  397. package/dist/domain/trade.js.map +0 -1
  398. package/dist/domain/trade.operator.js.map +0 -1
  399. package/dist/domain/trade.operator.spec.d.ts +0 -1
  400. package/dist/domain/trade.operator.spec.js +0 -24
  401. package/dist/domain/trade.operator.spec.js.map +0 -1
  402. package/dist/domain/trade.spec.d.ts +0 -1
  403. package/dist/domain/trade.spec.js +0 -13
  404. package/dist/domain/trade.spec.js.map +0 -1
  405. package/dist/index.js.map +0 -1
  406. package/dist/indicator/atr.d.ts +0 -3
  407. package/dist/indicator/atr.js +0 -16
  408. package/dist/indicator/atr.js.map +0 -1
  409. package/dist/indicator/cross.d.ts +0 -3
  410. package/dist/indicator/cross.js +0 -41
  411. package/dist/indicator/cross.js.map +0 -1
  412. package/dist/indicator/cross.spec.d.ts +0 -1
  413. package/dist/indicator/cross.spec.js +0 -101
  414. package/dist/indicator/cross.spec.js.map +0 -1
  415. package/dist/indicator/donchian.d.ts +0 -9
  416. package/dist/indicator/donchian.js +0 -16
  417. package/dist/indicator/donchian.js.map +0 -1
  418. package/dist/indicator/drawdown.d.ts +0 -2
  419. package/dist/indicator/drawdown.js +0 -27
  420. package/dist/indicator/drawdown.js.map +0 -1
  421. package/dist/indicator/ema.d.ts +0 -2
  422. package/dist/indicator/ema.js +0 -23
  423. package/dist/indicator/ema.js.map +0 -1
  424. package/dist/indicator/ema.spec.d.ts +0 -1
  425. package/dist/indicator/ema.spec.js +0 -23
  426. package/dist/indicator/ema.spec.js.map +0 -1
  427. package/dist/indicator/envelope.d.ts +0 -5
  428. package/dist/indicator/envelope.js +0 -18
  429. package/dist/indicator/envelope.js.map +0 -1
  430. package/dist/indicator/index.d.ts +0 -17
  431. package/dist/indicator/index.js +0 -34
  432. package/dist/indicator/index.js.map +0 -1
  433. package/dist/indicator/macd.d.ts +0 -2
  434. package/dist/indicator/macd.js +0 -13
  435. package/dist/indicator/macd.js.map +0 -1
  436. package/dist/indicator/min-max.d.ts +0 -5
  437. package/dist/indicator/min-max.js +0 -21
  438. package/dist/indicator/min-max.js.map +0 -1
  439. package/dist/indicator/ring-buffer.d.ts +0 -16
  440. package/dist/indicator/ring-buffer.js +0 -56
  441. package/dist/indicator/ring-buffer.js.map +0 -1
  442. package/dist/indicator/rma.d.ts +0 -2
  443. package/dist/indicator/rma.js +0 -23
  444. package/dist/indicator/rma.js.map +0 -1
  445. package/dist/indicator/sma.d.ts +0 -2
  446. package/dist/indicator/sma.js +0 -19
  447. package/dist/indicator/sma.js.map +0 -1
  448. package/dist/indicator/sma.spec.d.ts +0 -1
  449. package/dist/indicator/sma.spec.js +0 -19
  450. package/dist/indicator/sma.spec.js.map +0 -1
  451. package/dist/indicator/swma.d.ts +0 -2
  452. package/dist/indicator/swma.js +0 -20
  453. package/dist/indicator/swma.js.map +0 -1
  454. package/dist/indicator/tma.d.ts +0 -2
  455. package/dist/indicator/tma.js +0 -16
  456. package/dist/indicator/tma.js.map +0 -1
  457. package/dist/indicator/tma.spec.d.ts +0 -1
  458. package/dist/indicator/tma.spec.js +0 -19
  459. package/dist/indicator/tma.spec.js.map +0 -1
  460. package/dist/indicator/trailing.d.ts +0 -13
  461. package/dist/indicator/trailing.js +0 -67
  462. package/dist/indicator/trailing.js.map +0 -1
  463. package/dist/indicator/trailing.spec.d.ts +0 -1
  464. package/dist/indicator/trailing.spec.js +0 -69
  465. package/dist/indicator/trailing.spec.js.map +0 -1
  466. package/dist/indicator/truerange.d.ts +0 -3
  467. package/dist/indicator/truerange.js +0 -19
  468. package/dist/indicator/truerange.js.map +0 -1
  469. package/dist/indicator/truerange.spec.d.ts +0 -1
  470. package/dist/indicator/truerange.spec.js +0 -28
  471. package/dist/indicator/truerange.spec.js.map +0 -1
  472. package/dist/indicator/window.d.ts +0 -3
  473. package/dist/indicator/window.js +0 -22
  474. package/dist/indicator/window.js.map +0 -1
  475. package/dist/indicator/wma.d.ts +0 -2
  476. package/dist/indicator/wma.js +0 -22
  477. package/dist/indicator/wma.js.map +0 -1
  478. package/dist/indicator/wma.spec.d.ts +0 -1
  479. package/dist/indicator/wma.spec.js +0 -19
  480. package/dist/indicator/wma.spec.js.map +0 -1
  481. package/dist/shared/collections.js.map +0 -1
  482. package/dist/shared/datetime.js.map +0 -1
  483. package/dist/shared/decimals.js.map +0 -1
  484. package/dist/shared/decimals.spec.d.ts +0 -1
  485. package/dist/shared/decimals.spec.js +0 -34
  486. package/dist/shared/decimals.spec.js.map +0 -1
  487. package/dist/shared/index.js.map +0 -1
  488. package/dist/shared/io.d.ts +0 -1
  489. package/dist/shared/io.js +0 -8
  490. package/dist/shared/io.js.map +0 -1
  491. package/dist/shared/logger.js.map +0 -1
  492. package/dist/shared/policy.js.map +0 -1
  493. package/dist/storage/cache.js.map +0 -1
  494. package/dist/storage/cache.spec.d.ts +0 -1
  495. package/dist/storage/cache.spec.js +0 -18
  496. package/dist/storage/cache.spec.js.map +0 -1
  497. package/dist/storage/feed.js.map +0 -1
  498. package/dist/storage/index.js.map +0 -1
  499. package/dist/storage/measurement.js.map +0 -1
  500. package/dist/storage/storage.js.map +0 -1
  501. package/dist/store/index.js.map +0 -1
  502. package/dist/store/store-balance.event.js.map +0 -1
  503. package/dist/store/store-balance.event.spec.d.ts +0 -1
  504. package/dist/store/store-balance.event.spec.js +0 -26
  505. package/dist/store/store-balance.event.spec.js.map +0 -1
  506. package/dist/store/store-instrument.event.js.map +0 -1
  507. package/dist/store/store-instrument.event.spec.d.ts +0 -1
  508. package/dist/store/store-instrument.event.spec.js +0 -22
  509. package/dist/store/store-instrument.event.spec.js.map +0 -1
  510. package/dist/store/store-order.event.js.map +0 -1
  511. package/dist/store/store-order.event.spec.d.ts +0 -1
  512. package/dist/store/store-order.event.spec.js +0 -21
  513. package/dist/store/store-order.event.spec.js.map +0 -1
  514. package/dist/store/store-orderbook.event.d.ts +0 -14
  515. package/dist/store/store-orderbook.event.js +0 -42
  516. package/dist/store/store-orderbook.event.js.map +0 -1
  517. package/dist/store/store-position.event.js.map +0 -1
  518. package/dist/store/store-state.js.map +0 -1
  519. package/dist/store/store-trade.event.d.ts +0 -12
  520. package/dist/store/store-trade.event.js.map +0 -1
  521. package/dist/store/store-trade.event.spec.d.ts +0 -1
  522. package/dist/store/store-trade.event.spec.js +0 -44
  523. package/dist/store/store-trade.event.spec.js.map +0 -1
  524. package/dist/store/store.event.js.map +0 -1
  525. package/dist/store/store.js.map +0 -1
  526. package/dist/store/store.spec.d.ts +0 -1
  527. package/dist/store/store.spec.js +0 -119
  528. package/dist/store/store.spec.js.map +0 -1
  529. package/dist/tsconfig.tsbuildinfo +0 -1
  530. package/jestconfig.json +0 -12
  531. package/src/adapter/backtester/backtester-adapter.spec.ts +0 -124
  532. package/src/adapter/paper/paper-adapter.spec.ts +0 -105
  533. package/src/bootstrap.ts +0 -139
  534. package/src/domain/candle.operator.spec.ts +0 -125
  535. package/src/indicator/atr.ts +0 -20
  536. package/src/indicator/cross.spec.ts +0 -151
  537. package/src/indicator/cross.ts +0 -51
  538. package/src/indicator/donchian.ts +0 -37
  539. package/src/indicator/drawdown.ts +0 -27
  540. package/src/indicator/ema.spec.ts +0 -38
  541. package/src/indicator/ema.ts +0 -26
  542. package/src/indicator/envelope.ts +0 -20
  543. package/src/indicator/index.ts +0 -17
  544. package/src/indicator/macd.ts +0 -21
  545. package/src/indicator/min-max.ts +0 -25
  546. package/src/indicator/ring-buffer.ts +0 -63
  547. package/src/indicator/rma.ts +0 -25
  548. package/src/indicator/sma.spec.ts +0 -20
  549. package/src/indicator/sma.ts +0 -24
  550. package/src/indicator/swma.ts +0 -24
  551. package/src/indicator/tma.spec.ts +0 -20
  552. package/src/indicator/tma.ts +0 -19
  553. package/src/indicator/trailing.spec.ts +0 -75
  554. package/src/indicator/trailing.ts +0 -75
  555. package/src/indicator/truerange.spec.ts +0 -32
  556. package/src/indicator/truerange.ts +0 -31
  557. package/src/indicator/window.ts +0 -28
  558. package/src/indicator/wma.spec.ts +0 -19
  559. package/src/indicator/wma.ts +0 -28
  560. package/src/shared/io.ts +0 -3
  561. package/src/store/store-order.event.spec.ts +0 -28
  562. package/src/store/store-orderbook.event.ts +0 -54
@@ -1 +0,0 @@
1
- {"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../node_modules/typescript/lib/lib.scripthost.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.es2017.full.d.ts","../src/shared/decimals.ts","../src/domain/error.ts","../src/domain/asset.ts","../src/shared/datetime.ts","../src/shared/io.ts","../src/shared/logger.ts","../../../node_modules/ts-retry/lib/cjs/retry/options.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/retry.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/tooManyTries.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/utils/options.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/utils/untilDefined/retry.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/utils/untilDefined/decorator.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/utils/untilDefined/index.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/utils/untilTruthy/retry.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/utils/untilTruthy/decorator.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/utils/untilTruthy/index.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/utils/untilResponse/type.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/utils/untilResponse/retry.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/utils/untilResponse/decorators.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/utils/untilResponse/index.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/utils/index.d.ts","../../../node_modules/ts-retry/lib/cjs/retry/index.d.ts","../../../node_modules/ts-retry/lib/cjs/wait/wait.d.ts","../../../node_modules/ts-retry/lib/cjs/wait/options.d.ts","../../../node_modules/ts-retry/lib/cjs/wait/index.d.ts","../../../node_modules/ts-retry/lib/cjs/index.d.ts","../src/shared/policy.ts","../src/shared/collections.ts","../src/shared/index.ts","../src/domain/component.ts","../src/domain/position.ts","../src/domain/balance.ts","../../../node_modules/rxjs/dist/types/internal/Subscription.d.ts","../../../node_modules/rxjs/dist/types/internal/Subscriber.d.ts","../../../node_modules/rxjs/dist/types/internal/Operator.d.ts","../../../node_modules/rxjs/dist/types/internal/Observable.d.ts","../../../node_modules/rxjs/dist/types/internal/types.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/audit.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/auditTime.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/buffer.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/bufferCount.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/bufferTime.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/bufferToggle.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/bufferWhen.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/catchError.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/combineLatestAll.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/combineAll.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/combineLatest.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/combineLatestWith.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/concat.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/concatAll.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/concatMap.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/concatMapTo.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/concatWith.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/connect.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/count.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/debounce.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/debounceTime.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/defaultIfEmpty.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/delay.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/delayWhen.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/dematerialize.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/distinct.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/distinctUntilChanged.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/distinctUntilKeyChanged.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/elementAt.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/endWith.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/every.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/exhaustAll.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/exhaust.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/exhaustMap.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/expand.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/filter.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/finalize.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/find.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/findIndex.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/first.d.ts","../../../node_modules/rxjs/dist/types/internal/Subject.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/groupBy.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/ignoreElements.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/isEmpty.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/last.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/map.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/mapTo.d.ts","../../../node_modules/rxjs/dist/types/internal/Notification.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/materialize.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/max.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/merge.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/mergeAll.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/mergeMap.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/flatMap.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/mergeMapTo.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/mergeScan.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/mergeWith.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/min.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/ConnectableObservable.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/multicast.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/observeOn.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/onErrorResumeNext.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/pairwise.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/partition.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/pluck.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/publish.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/publishBehavior.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/publishLast.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/publishReplay.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/race.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/raceWith.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/reduce.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/repeat.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/repeatWhen.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/retry.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/retryWhen.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/refCount.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/sample.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/sampleTime.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/scan.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/sequenceEqual.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/share.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/shareReplay.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/single.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/skip.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/skipLast.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/skipUntil.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/skipWhile.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/startWith.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/subscribeOn.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/switchAll.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/switchMap.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/switchMapTo.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/switchScan.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/take.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/takeLast.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/takeUntil.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/takeWhile.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/tap.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/throttle.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/throttleTime.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/throwIfEmpty.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/timeInterval.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/timeout.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/timeoutWith.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/timestamp.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/toArray.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/window.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/windowCount.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/windowTime.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/windowToggle.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/windowWhen.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/withLatestFrom.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/zip.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/zipAll.d.ts","../../../node_modules/rxjs/dist/types/internal/operators/zipWith.d.ts","../../../node_modules/rxjs/dist/types/operators/index.d.ts","../../../node_modules/rxjs/dist/types/internal/scheduler/Action.d.ts","../../../node_modules/rxjs/dist/types/internal/Scheduler.d.ts","../../../node_modules/rxjs/dist/types/internal/testing/TestMessage.d.ts","../../../node_modules/rxjs/dist/types/internal/testing/SubscriptionLog.d.ts","../../../node_modules/rxjs/dist/types/internal/testing/SubscriptionLoggable.d.ts","../../../node_modules/rxjs/dist/types/internal/testing/ColdObservable.d.ts","../../../node_modules/rxjs/dist/types/internal/testing/HotObservable.d.ts","../../../node_modules/rxjs/dist/types/internal/scheduler/AsyncScheduler.d.ts","../../../node_modules/rxjs/dist/types/internal/scheduler/AsyncAction.d.ts","../../../node_modules/rxjs/dist/types/internal/scheduler/VirtualTimeScheduler.d.ts","../../../node_modules/rxjs/dist/types/internal/testing/TestScheduler.d.ts","../../../node_modules/rxjs/dist/types/testing/index.d.ts","../../../node_modules/rxjs/dist/types/internal/symbol/observable.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/dom/animationFrames.d.ts","../../../node_modules/rxjs/dist/types/internal/BehaviorSubject.d.ts","../../../node_modules/rxjs/dist/types/internal/ReplaySubject.d.ts","../../../node_modules/rxjs/dist/types/internal/AsyncSubject.d.ts","../../../node_modules/rxjs/dist/types/internal/scheduler/AsapScheduler.d.ts","../../../node_modules/rxjs/dist/types/internal/scheduler/asap.d.ts","../../../node_modules/rxjs/dist/types/internal/scheduler/async.d.ts","../../../node_modules/rxjs/dist/types/internal/scheduler/QueueScheduler.d.ts","../../../node_modules/rxjs/dist/types/internal/scheduler/queue.d.ts","../../../node_modules/rxjs/dist/types/internal/scheduler/AnimationFrameScheduler.d.ts","../../../node_modules/rxjs/dist/types/internal/scheduler/animationFrame.d.ts","../../../node_modules/rxjs/dist/types/internal/util/identity.d.ts","../../../node_modules/rxjs/dist/types/internal/util/pipe.d.ts","../../../node_modules/rxjs/dist/types/internal/util/noop.d.ts","../../../node_modules/rxjs/dist/types/internal/util/isObservable.d.ts","../../../node_modules/rxjs/dist/types/internal/lastValueFrom.d.ts","../../../node_modules/rxjs/dist/types/internal/firstValueFrom.d.ts","../../../node_modules/rxjs/dist/types/internal/util/ArgumentOutOfRangeError.d.ts","../../../node_modules/rxjs/dist/types/internal/util/EmptyError.d.ts","../../../node_modules/rxjs/dist/types/internal/util/NotFoundError.d.ts","../../../node_modules/rxjs/dist/types/internal/util/ObjectUnsubscribedError.d.ts","../../../node_modules/rxjs/dist/types/internal/util/SequenceError.d.ts","../../../node_modules/rxjs/dist/types/internal/util/UnsubscriptionError.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/bindCallback.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/bindNodeCallback.d.ts","../../../node_modules/rxjs/dist/types/internal/AnyCatcher.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/combineLatest.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/concat.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/connectable.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/defer.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/empty.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/forkJoin.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/from.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/fromEvent.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/fromEventPattern.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/generate.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/iif.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/interval.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/merge.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/never.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/of.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/onErrorResumeNext.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/pairs.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/partition.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/race.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/range.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/throwError.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/timer.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/using.d.ts","../../../node_modules/rxjs/dist/types/internal/observable/zip.d.ts","../../../node_modules/rxjs/dist/types/internal/scheduled/scheduled.d.ts","../../../node_modules/rxjs/dist/types/internal/config.d.ts","../../../node_modules/rxjs/dist/types/index.d.ts","../src/store/store-state.ts","../src/store/store.event.ts","../src/store/store.ts","../src/store/store-balance.event.ts","../src/store/store-instrument.event.ts","../src/store/store-order.event.ts","../src/store/store-orderbook.event.ts","../src/store/store-position.event.ts","../src/store/store-trade.event.ts","../src/store/index.ts","../src/domain/balance.operator.ts","../src/domain/candle.ts","../src/domain/timeframe.ts","../src/domain/candle.operator.ts","../src/domain/commission.ts","../src/domain/instrument.ts","../src/domain/instrument.operator.ts","../../../node_modules/@types/uuid/index.d.ts","../src/domain/order.ts","../src/domain/order.operator.ts","../src/domain/orderbook.ts","../src/domain/orderbook.operator.ts","../src/domain/position.operator.ts","../src/storage/storage.ts","../src/storage/feed.ts","../src/storage/measurement.ts","../src/storage/cache.ts","../src/storage/index.ts","../src/adapter/error.ts","../src/adapter/adapter-aggregate.ts","../src/domain/trade.ts","../src/domain/trade.operator.ts","../src/domain/session.ts","../src/domain/index.ts","../src/adapter/paper/engine/paper-engine.ts","../src/adapter/paper/paper-adapter.ts","../src/adapter/paper/index.ts","../src/adapter/adapter.ts","../src/adapter/backtester/backtester-cursor.ts","../src/adapter/backtester/backtester-streamer.ts","../src/adapter/backtester/backtester-adapter.ts","../src/adapter/backtester/index.ts","../src/adapter/index.ts","../src/bootstrap.ts","../src/indicator/rma.ts","../src/indicator/truerange.ts","../src/indicator/atr.ts","../src/indicator/cross.ts","../src/indicator/ring-buffer.ts","../src/indicator/window.ts","../src/indicator/min-max.ts","../src/indicator/donchian.ts","../src/indicator/drawdown.ts","../src/indicator/sma.ts","../src/indicator/ema.ts","../src/indicator/envelope.ts","../src/indicator/macd.ts","../src/indicator/swma.ts","../src/indicator/wma.ts","../src/indicator/tma.ts","../src/indicator/trailing.ts","../src/indicator/index.ts","../src/index.ts","../src/adapter/backtester/backtester-adapter.spec.ts","../src/adapter/backtester/backtester-cursor.spec.ts","../src/adapter/backtester/backtester-streamer.spec.ts","../src/adapter/paper/paper-adapter.spec.ts","../src/adapter/paper/engine/paper-engine.spec.ts","../src/cli/internal/workspace.ts","../src/cli/build.ts","../src/cli/dev.ts","../../../node_modules/commander/typings/index.d.ts","../../../node_modules/node-watch/lib/watch.d.ts","../src/cli/pull.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/@types/node/stream/web.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/globals.global.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/dotenv/lib/main.d.ts","../src/cli/run.ts","../src/cli/test.ts","../src/cli/index.ts","../src/domain/asset.spec.ts","../src/domain/balance.operator.spec.ts","../src/domain/balance.spec.ts","../src/domain/candle.operator.spec.ts","../src/domain/candle.spec.ts","../src/domain/commission.spec.ts","../src/domain/instrument.operator.spec.ts","../src/domain/instrument.spec.ts","../src/domain/order.operator.spec.ts","../src/domain/order.spec.ts","../src/domain/orderbook.operator.spec.ts","../src/domain/orderbook.spec.ts","../src/domain/position.operator.spec.ts","../src/domain/position.spec.ts","../src/domain/session.spec.ts","../src/domain/trade.operator.spec.ts","../src/domain/trade.spec.ts","../src/indicator/cross.spec.ts","../src/indicator/ema.spec.ts","../src/indicator/sma.spec.ts","../src/indicator/tma.spec.ts","../src/indicator/trailing.spec.ts","../src/indicator/truerange.spec.ts","../src/indicator/wma.spec.ts","../src/shared/decimals.spec.ts","../src/storage/cache.spec.ts","../src/store/store-balance.event.spec.ts","../src/store/store-instrument.event.spec.ts","../src/store/store-order.event.spec.ts","../src/store/store-trade.event.spec.ts","../src/store/store.spec.ts","../../../node_modules/@types/babel__generator/node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__generator/index.d.ts","../../../node_modules/@babel/parser/node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../node_modules/@types/babel__template/node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__template/index.d.ts","../../../node_modules/@types/babel__traverse/node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__traverse/index.d.ts","../../../node_modules/@types/babel__core/node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__core/index.d.ts","../../../node_modules/@types/better-sqlite3/index.d.ts","../../../node_modules/@types/component-emitter/index.d.ts","../../../node_modules/@types/cookie/index.d.ts","../../../node_modules/@types/cors/index.d.ts","../../../node_modules/@types/d3-array/index.d.ts","../../../node_modules/@types/d3-selection/index.d.ts","../../../node_modules/@types/d3-axis/index.d.ts","../../../node_modules/@types/d3-brush/index.d.ts","../../../node_modules/@types/d3-chord/index.d.ts","../../../node_modules/@types/d3-color/index.d.ts","../../../node_modules/@types/geojson/index.d.ts","../../../node_modules/@types/d3-contour/index.d.ts","../../../node_modules/@types/d3-delaunay/index.d.ts","../../../node_modules/@types/d3-dispatch/index.d.ts","../../../node_modules/@types/d3-drag/index.d.ts","../../../node_modules/@types/d3-dsv/index.d.ts","../../../node_modules/@types/d3-ease/index.d.ts","../../../node_modules/@types/d3-fetch/index.d.ts","../../../node_modules/@types/d3-force/index.d.ts","../../../node_modules/@types/d3-format/index.d.ts","../../../node_modules/@types/d3-geo/index.d.ts","../../../node_modules/@types/d3-hierarchy/index.d.ts","../../../node_modules/@types/d3-interpolate/index.d.ts","../../../node_modules/@types/d3-path/index.d.ts","../../../node_modules/@types/d3-polygon/index.d.ts","../../../node_modules/@types/d3-quadtree/index.d.ts","../../../node_modules/@types/d3-random/index.d.ts","../../../node_modules/@types/d3-time/index.d.ts","../../../node_modules/@types/d3-scale/index.d.ts","../../../node_modules/@types/d3-scale-chromatic/index.d.ts","../../../node_modules/@types/d3-shape/index.d.ts","../../../node_modules/@types/d3-time-format/index.d.ts","../../../node_modules/@types/d3-timer/index.d.ts","../../../node_modules/@types/d3-transition/index.d.ts","../../../node_modules/@types/d3-zoom/index.d.ts","../../../node_modules/@types/d3/index.d.ts","../../../node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../node_modules/@types/istanbul-lib-report/index.d.ts","../../../node_modules/@types/istanbul-reports/index.d.ts","../../../node_modules/chalk/index.d.ts","../../../node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../node_modules/pretty-format/build/types.d.ts","../../../node_modules/pretty-format/build/index.d.ts","../../../node_modules/jest-diff/build/types.d.ts","../../../node_modules/jest-diff/build/diffLines.d.ts","../../../node_modules/jest-diff/build/printDiffs.d.ts","../../../node_modules/jest-diff/build/index.d.ts","../../../node_modules/jest-matcher-utils/build/index.d.ts","../../../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../../../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/@types/json5/index.d.ts","../../../node_modules/@types/lodash/common/common.d.ts","../../../node_modules/@types/lodash/common/array.d.ts","../../../node_modules/@types/lodash/common/collection.d.ts","../../../node_modules/@types/lodash/common/date.d.ts","../../../node_modules/@types/lodash/common/function.d.ts","../../../node_modules/@types/lodash/common/lang.d.ts","../../../node_modules/@types/lodash/common/math.d.ts","../../../node_modules/@types/lodash/common/number.d.ts","../../../node_modules/@types/lodash/common/object.d.ts","../../../node_modules/@types/lodash/common/seq.d.ts","../../../node_modules/@types/lodash/common/string.d.ts","../../../node_modules/@types/lodash/common/util.d.ts","../../../node_modules/@types/lodash/index.d.ts","../../../node_modules/@types/parse-json/index.d.ts","../../../node_modules/@types/prettier/index.d.ts","../../../node_modules/@types/prop-types/index.d.ts","../../../node_modules/ts-toolbelt/out/index.d.ts","../../../node_modules/@types/ramda/tools.d.ts","../../../node_modules/@types/ramda/index.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@types/scheduler/tracing.d.ts","../../../node_modules/@types/react/index.d.ts","../../../node_modules/@types/scheduler/index.d.ts","../../../node_modules/@types/stack-utils/index.d.ts","../../../node_modules/@types/tsc-watch/index.d.ts","../../../node_modules/@types/yargs-parser/index.d.ts","../../../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"3ac1b83264055b28c0165688fda6dfcc39001e9e7828f649299101c23ad0a0c3","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","e21c071ca3e1b4a815d5f04a7475adcaeea5d64367e840dd0154096d705c3940",{"version":"72704b10d97777e15f1a581b73f88273037ef752d2e50b72287bd0a90af64fe6","affectsGlobalScope":true},{"version":"dbb73d4d99be496175cb432c74c2615f78c76f4272f1d83cba11ee0ed6dbddf0","affectsGlobalScope":true},{"version":"7fac8cb5fc820bc2a59ae11ef1c5b38d3832c6d0dfaec5acdb5569137d09a481","affectsGlobalScope":true},{"version":"097a57355ded99c68e6df1b738990448e0bf170e606707df5a7c0481ff2427cd","affectsGlobalScope":true},{"version":"d8996609230d17e90484a2dd58f22668f9a05a3bfe00bfb1d6271171e54a31fb","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"1b3fe904465430e030c93239a348f05e1be80640d91f2f004c3512c2c2c89f34","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"5075b36ab861c8c0c45377cb8c96270d7c65f0eeaf105d53fac6850da61f1027","affectsGlobalScope":true},{"version":"10bbdc1981b8d9310ee75bfac28ee0477bb2353e8529da8cff7cb26c409cb5e8","affectsGlobalScope":true},"d2f31f19e1ba6ed59be9259d660a239d9a3fcbbc8e038c6b2009bde34b175fed","89b3ed01d98645d1c626fc91bb57c6ee051a6c926b8477a29ba32746afbc39e2","a8937902ceef3b7b18f07fdda8c08719f60e762818af436ed288501f369d8b8d","0dc7176a7b6aab89652913431cc8178c42d999d78dd75c513938911c5f458d48","2d0cbe751f5cbf4b4b0235c2f60f27fccf8c10551eb7aeefae09e12c35eb9542","d1494ed26d810cd069e72fd09f343ed7500e86253b26cac0d9f8c780ce668844","b5df96d82e16c4ac04ca8953615ef09f9beacfff1023300e164fafc4e3378547","eeaabc162cb8e094ac3fada5d27e100a90e0219a8dc736dd266ad674a087a3e8","d3306264a55370a1dc6add1a6535240588cccfc64d4feb62e9601edf4ca90c90","189d490325880044b32fc9cce08fca68fcb497490efa86b84489b81df3c80d8e","8ef235cb412afd0a17a75b168918d5f67977eea86c2f9db38663000f2c244f74","14e19d685c636527d6b72623fb2f48d2a7e36e0ae74676c7fa1a3c389c4d7efa","ae7453bf4dddd4ed2fe10c0c23c9f73254d3079142a55f25c8e4eaeeb203e4f3","61cf58a5a377bf6f559e030194c2d25880a3eba9d85832ebaf8c11c6e25404d1","1337af532213731208eed661288fd8f7080e0b17ab342a16a129dae31b903263","f9ddf8b00714412057663813757e306208dd36907ae1db9f62f13edf1f106919","6817db8681b22f8a27174e434433c9b60477927c7c2be898eefddb2ae2a81dd3","3e9e3c94a7c9af23e686b3384d42d02cafe8397410acad73a493b2d9b31f7571","807a3615d95093e99e315334b4671de6c47ec5acf70fee820af2d8fbe90c7905","4cbc97132bd2c4040f1d0efc63db074329abd3e2d4fe9f55212d78959f33bf96","bd269d741d31173403d23fafb479a51ca3b4ed80fe35ad9dac78ba6d66be9618","fa8ef321c88d94f893365f7ff89db63f939a2d33fd7985ec28657afa5b23e151","9d6ff70ff9146444a6f367e95c052d757d6b703370e00356838ec676da7435e5","551c41f324e88cac9b268ed1bb982d7674c7fd7f93f540cd6d7531a0edbd90ef","539f0696081513ad55ab701dc9503d15cb7ab47d47570c499382a1c6b4c2017f","a23a22b165f6ae33aba6f51dc18e45f5d8a2df791a92aaf0c6b0efdead2a4be5","952619cf623f79891c687e4a2a42e4b798155671eeb5b37b147b9faf67e105f4","d307c7de6baa2852a2f23dc5c323989659b17269af5e367b341bde09ca89daf3","d5b17acebaa3cac86435813f9842165e440e0517813950586185e37d7434f5db","5720ebb687c0b5f67f28d860c7e9437bf2b110d43569a6c4df4117122ccc431d","2ff5d45a3fdf73047c84a2991019079c37f79bd49567daf4ae316e013d9034f7","007e0a0f1907b2d914f135817249f1bbe9540ff9306c2aa00d8670cd1c6023fb","5e82a06e4a5570209533be425625a12e0026af201edf83d0cdc7d51ff3d1e1fd","d8d60d4636de5437353a773942766c22956a4d61b4c6b254092a51a71e4e1bed","e3fd84e6470b7e0679c4073ee5ce971d324182486dde5a49b67cae29168b51d2","dd8331d0a5190a4735ce6c152e420230188c4966067a756673c36dd7ba72b10e","90d88ef5d0e8d585711a8ec68c01d262818f3425fea095fea345b81ec8c09a36",{"version":"d57e7ff5243e0dcd04cf2edf9ad9520af40edd6eba31c14c3f405f0c437fa379","affectsGlobalScope":true},"0f882d4ae58f431454030289154feb0132e1b00ca5c3197c6b749bd098aed73a","7ff7f4632a6e7b6872fb1843f3c0df495b49840eae2a23c6fbc943f863da8c29","d267771149e172ade39e3ef96b4063209d5a7e8291702fe03983aa52f2b3d5f6","a78590b0efcef281236e3234520c348d63be1d4561b63b20e6c3b6fc18b37dfb","4d59c6a10b6c79a0927c79efa89b3c9f71d174ec14ec2792076cfd2330d0cf8e","a496f51933422872de22729b7a0233589325a1a1707cccd05cd914098944a202","fa43bf91102ffc4cfa22b73c7dca50023f99fc0bb15f7fb6201d98e31ab112dd","06a38095ad4368314366bc08f7cbc0fe274ef7321ec611005d0bdd9c6565e4d5","4599793db9aed9b84677f0ca1cf7ef3c69bb91cda4fe4329cbab778ca4d80a58","ad0028f96921778931fb8419d8de33b10908314fa99699de1702020f69235da1","ccd2a35321c0786bd3808042dc43b960cac13f2cc660ac37a0087e12bc97d2fc","df524ed01de4f19efb44bded628dbba9f840148be4b6cfe096e29d4b01589de3","2e3981b9cee48174ff85ae15019fd72933f7023a4ed05094740f7e6f7775623c","836ebdc3b9e4c006acc4f405b7e558e56d47830e05c40d991b1e27fe8bc91157","2cc6b617c6120ba64b5778ccd4b74c951adc3a3941bb6b39f47d48701c44af39","eca02b99615a8f1652e21399d832618e38bf166c0747c9247349bc901a2f7741","7f7d6d42e5780e86f5b860a6f95179fae06a368b3af28c1c4230397c47021a59","4740a7d11ab3b381be0f269f1903fb3ff226a2fba55a01756b2997e67cd853f2","863dbc4e77f0353e6f9d6bc0e2b4622d5c07ff6f099ff66cafd7924b2ff4dd3f","bf034a18ed7e2a058f9e48c4c2480a124138fbd3586a80c77736a9ec079d12a8","f88758992a0bf13d095520aacd4381fb456ff121fb9aa184e6eb0eecb26cfadc","c249e9ae33bfcad97deec3c73c9ed2656e112fbdf22deace0b39724be6a5dcf0","d8b45924965c0c4fc0b946c0b6d597aa8d5de9cdf5c727e3d39422d17efec438","d07ea953cfea0c4bd11641912846bd955f4fd26ad2b7b8a279d69c7ab9cb3add","feddabf6ab0eb191e721f0126f3db8688db97c77a1234968bde7a2d70c4ae513","dbbda62ea5f4d1f8b40cc2b7e2e2fae424abbb4715a04a3659cb8b317f7b228b","1eef6a64835182ce1f4934a366e937120e2e2107b12360436fdf35e99b3ae703","7f5cb3a03588ed46d52a6c2138315d930cd6ffb5c2134247cd07bc23cbea0b5a","7797f4c91491dcb0f21fa318fd8a1014990d5a72f8a32de2af06eb4d4476a3b5","f39fb20b83c3f9853c13d4ac95533760979d3023c0a5affe2c0a62d91ab3afd8","e4fca08aed8afb32bb8643d7469810bc8681115fe398e56a028df9e73b2d867f","2622639d24718ddfccc33a9a6daf5a2dd94d540ca41e3da00fe365d2c3f25db3","078966067552650f44ca96c68eddbb8539f30ee48a9ab3f24abdcf0a4037b535","2cd6250c43dba360377481c98d48db6ab1532a7527339edb0deffddc28ba66b1","7a9d600990fbe263a23daebed9ba1bbc5761e45679a7e2b2774a42756ef077a2","66bc155515fbea8c31a4efccbbac44de7c037b01f3aa00b76312cf7252725d30","5703288ddbfc4f7845cdbf80c6af17c8cde2a228757479796c2378b1662fcd48","0dfd353f0c16dd5107a7e0713dc52d0a2538293b0a0eac6000a017f9c0a60b56","9cd683a4663ef4d9c6486f1b8a34c73bdbc344d69490931bfe2fbcada12ab35b","42f6a409bad5259ece69df25d2b8ace2ff2ade45fe6386ee45203bdd9329f971","8b86677943235a5e5952f9371f7dfe89a9975651c56c74d58e090cb69bf6f2b4","2eb162efd6dba5972b9f8f85141d900d09da4fba23864f287f98f9890a05e95f","3f878fb5be9ebe8bd0ac5c22515d42b8b72d3745ef7617e73e9b2548ccbdf54b","e9ed562b7599c8c8c01595891480a30f9945a93a46456d22ee67ebf346b7538a","e7bf975a98cecefe2e8902fb7da9314675ecdce553aea722aaec97327668e18b","3d36f93648518338c875d9f77a8eab52905365483dbb3afe43ed68f1b712b67c","4fa54df9184d291bd78b36f5063372042cd995460e906cb14014e40d1442a326","b4e32bd5e3b493e4ea6b5ec69a4c02aa1fdaa78e1df9a863bb07604de8f9d123","f6bd1aa152ca2b5064e06282ee3137842ae6825b6b09aa89a2ff063b976a56f3","bce2390bb3a76f8bf2ba4397c66db5277bf3e698ee614347e5eb79d7fc0942c6","fbdc8d7cc7daf4101bf567512c67fb990d8fe300e0ba7f213171192177f44aa0","298e0da6d858e39fc0c1eebfa4f5c8af487868c6f2e98c3ef800537d402fb5c3","3b6457fb3866562d279377f923cf3758c80ed7bfcc19414b72a24d0a98188e0c","4fb5d7efb3520b92c1b767ce18968057c5e70886d7fb3416c487231df9275af9","df2303a61eb57b2717d17123e82bc0f3fd60f6e4673cb5506192dfe23c9480bf","b104960f4c5f807535ab43282356b2fe29c5d14a02035c623ac2012be3d5f76c","a35ca245eb852b70b20300546443abb1fcbac6e5066e4baaa092af4ea614d9b5","55da140feab55f10a538a9879a97c4be3df4934cbd679665c91a7263a86095e1","1a39e51e3362aec7d4edec9b317ff83916fe0471f86ddf2d3ef3af5952e87d9e","4b3f36b96f129a8e125c91d41a05f711e73b3285f80bceb3a1aecb13c97c4502","852779920fc4220bc42ec6d3c9b6164e23ea9371a788531b48b4005fe0cb4392","9a82e1b959524c1abfeeb024ee1a400234130a341f2b90a313ce4e37833b7dd2","515b97cede17d91c9669cc1c7fb7a8a5f0a5f2d8999f925a5f70b4ebea93723e","08e8e57241f874bdbf69ab2b65cb0ee18b4183d5c9452937da49b934fc679c4b","7a5bfc619b1ad803f11c50668574b16baba8f0e8ce1c3e8ebf16421e910474d2","644addd4811636da491c9546654bc005ba8599f23df6d731d91eba86f3137fc2","a9249493114b181814728cbfeb7234738193a4169b654ec4705d48d7a4d25222","aad6f20d6eb01192ae02294361faa6e1f320d72447b56f433db853bbe80b15ca","876fbedec2f494eb6f834ce8636b07d581c657d205d81a3ba894eff0facc6b84","58527aa45f11c9b259a6a9d78b397f35020bfbb104f4d3bb177039b5c18146bd","91b8b61d45b5d22f3458a4ac82e03b464a0926bab795a920fe0eca805ec476eb","2744532f8fb960eb78497ac660db719f503a10c801f87131d26fd9cbef75dcef","6884287c54891ac19cfbe056f3ed29cab1732a00dec69bd3b140ce62c11783c6","393dc8619d7e27653d5e4eafe99ec5501a6b043db50d805c2d40465a50b857e0","cb46657d3237f80742d5701ebcced8f6e5cf8938442354387d6c77d7048dfae6","9caced628452876da272decb56b3f4c18d9aa66b413be5b1ce322933aa1362b6","661f322e45545a554e4ffc38db6c4068a66e1323baf66acb0d8a9fa28195a669","91d70dce48c2a2bb55f0b851cf1bdba4202f107f1e8fdf45f94ff6be4b8e8f99","ce978e20a6f26f606b535f0d6deb384ae6a73f8d0bd0dfca0925f5317cad1f25","f2d3567210ca4d559d8297d6c4402599c93e3bc7485054192d38db5e132fbc0a","887d8058aeeade45984fdb8696147078bc630d3fea15ab2b7baacde0fe281fb7","ad27aa59d346179ac449bd3077d245f213152879e4027356306ccf1722d61d51","ea546a7ed9eaa71ba78d4d392509dadea4bafed283269dd6c4b09e7d8824e986","4ec0f2a141a9ae7d3557b8efe630ac2021bc3a9ac61238b59293f4cf2f196e82","b2db743c71652e03c52d51445af58d0af3316231faa92b66018b29c7ba975f6c","0863a5876c85fbaffbb8ec8aeda8b5042deb6932616139706d2b82cde9d3f7c7","1294b8ecdd212362323f349dd83b5c94ea77bfee4dad24fc290980a3c8af6ce3","ba9c46725e2a0bd9df59d3a1e801cc60f90db3ef7817131c53945dce2b8c0c56","281d373eeabf80c4851f8de991e6abe4d385c30379d80897bbc3df3dcac99cee","624c5dce95672d9dcca40d9d9d82ef855f5f902292f43aa265cc8fd963c6ce84","8a48d9c6184992d1c3ed5daa55f83d708c37582916926a5555a900608f804b60","605dd288c636cf9b5317fe76dec75d3c7fb855fdcd3ee8cb4fea7d7091ca6fb4","e6d6ba51e1280c00199ae4a4ab19df78f965df81e21aa1f608a9dd21219ea798","b5a615b0ad865ffa562980a10bda162ac1744fd363b4edc2cfc664222071cbcf","bbccd721363897950a55ce09529503f25a69522e5c91a22679b66e941e5f8654","d3a1e70795c38d7851b6e4f3b441c5ffdae171d6e2576a2204b7d79059aeea66","d7b8d41887c5fccfe19802c4336d34348b752abf0d98839575699d71deff60be","063fe3004728b8516a4d799ee16f9a71801ba24e0443dd98638cef1bd4353a7c","b8a0236f47d9037efdaf93da602415ae425dababe097fc92f83fd47ce9aaa69f","fab7912fc3ff45fce2f5d5febc9494c4d0a85d6c63fff68f21e4669c32eaacb9","f6c3fcb9d75d8aea778236fd9327ceb935b41865dbf3beac698be77e0ae9018d","b20bc124abd8ee572d0d756713ff987b116cdae908a6fcbc40e80d4b999f56b4","a599f3f450ad62c3fdc0c3fd25cddcc9332ffb44327087947d48914a8da81364","645dff895168aa82350c9aa60aa0b3621b84289fef043be842f45a9c6c0ac6e2","f068ff5b7fb3bdc5380e0c677e21de829bd25cdac63a9b083fdc220fcb225280","09d2fdca6ea6c135897a26976ad3c0db724adaf23ef4e38ad852b1d8efef1ae6","15de5b7739bf7e40213a200853bf78455ee5958af08eda786605a54a7f25ade6","f3acb439e08f0c2c78c712a876dc6c2080302c46916f1d63b7dbe509616ce9ae","37862e711637ebd927907a82cbf0143ea30e95eb165df554926c43936b1d77a9","89e253db2c2cc9a510c521f14dd2b1aae4de2556ee5159ad8d118d3587e3a880","3d0a172cee184a0f4111a7bd7fbb8729af3f54b30c06a2677d85c20ea9c811ab","d6a07e5e8dee6dc63c7ecd9c21756babf097e1537fbc91ddfec17328a063f65d","6fdc88b1287c276b55b7f7c4c7b49587813c763eea9751ce0baf0a7e61cd5d89","6a02443704052768bd021f24783aa104b02ae4444e9b735317bf13c6b857a11e","37987b0fe9800cf25473c882ce07bccdab2763c5681c1a2d16816aead46aa8d1","c84c03c721154068e1a60d83e9e85819bd3ef70b824ac2edc498aa31c06e5781","c23a403716784b53cf6ce9ffff9dcdb959b7cacdf115294a3377d96b6df1e161","c96fb6a0c1e879f95634ab0ff439cbb6fff6227b26bbf0153bef9ed0aabba60d","db936079fe6396aad9bf7ad0479ffc9220cec808a26a745baebb5f9e2ef9dbc7","06bc0b9cc7bf0b92534f1517fe5adde1f23f60cc6cc5c59f8e1c65db48a40067","919a753b0cbb12ccc606c62e2d34884d75a48ba19b1dda497c72621b11dac088","2c27e33ee0bf722988da00abd582cc9b806ce3fd9153a864800a339ad13f3fcf","92d7b3a5aa5dc872e54cbad2a7094b3ea4f72c7901de1d07b4c334ff658297f0","7a52922b38e9686d5bdc6e75774929eec6688d26c1dfe4a03ddec77ede468e87","aa5efca2833d89b55248f1889a6433dab1b1f41768e9a75f8ce35f9bf56c5ec4","0ba3b34cbe39c6fe3ba89f7f6559f10c05f78cd5368477d9c95d25c390b65931","4e82f599b0cff3741e5a4f45889d04753a8bb3b0f95d0f3328bcfbb4f995b2a1","8354bb3a9465dc2e9ccb848564945e0818d3698b2844cfd69b0435080871fd25","1218398da7c8dc4add10bdb3aa2856aad54b123d847eaf574d1d694ac269bfb5","189014f3213ee7457dbeea04dca10ca5d9ed2062cd39641aca5f3b4c75de9d99","b637cd92688a6cdf4f8f184ff529dc2bc7f15692828e2c0c66a60e6972f400c7","7061e83d6792897077bcac039fccf7325234004769f591c63a8cf8478bf551bb","f2d2c194c4c6ba8cfbacf893e371cd8482102b368c1a5ea4771fc956bd0a6a19","277a358d61376fce7ac3392402909c96cf6a0a613146549fc0165ccff953e012","50614c808e099a1d4413786f3783d9eeaaa74b267f2c87fcf8a893287e91c301","f4cb6530f248e87cefa74ef623206fec805f6252f885f8e14ef3d1a5872cef2d","38c332caadd8391566552395d592076470a5e7423f70964620eabf05c02907cd","eb17b5bf1fc763a644c21d76572c0e41e351c3f6dfcde649428d5d829f7294d2","cb124162c87b29ff5121e3ee5bb29c782f101e0135d6c2644ab1b31d530a435e","406d6f5d3707c488362fb40d1c1f8a7b0a42b70554b427160185d93e430228f5","2e9776410c5bc290d9432a9215c67398a273e514a79b9e15f32ecddfde8a03be","313ff8df074b81d3e4f088ff3a3a06df3d9b0d0c7f55469ccc2ac887ecb6b867","c718475bca06806cc243e77777641cb67ba68f2c57321a4773ebb47760a3bcf2","96e6bf811343caab5112b68880905c5d20d9257054afac6c18e718a4c549ed27","a2793bc73ba63ca7d259cb0f0b61d0023820170d08a1f9715006c8042d060165","d5011b38165771fdf75a9a06d6d379a1fc7edd7eb695ebdc52319fb6e3c6d81f","88417fb19d339304e9616a38ea513251047c9e300c81f9467fc317df8a582e71","3e8e2d132f726dddbda57819f5391504e585cb3beab6b32203064e7e40618583","6e23627cd3f10418b5b2db102fdcf557b75f2837f266d88afac6b18f333bb1bc","866046dcea88f23d766a65487ee7870c4cf8285a4c75407c80a5c26ed250ef8d","019f4f1cbc781cc15c6173f8be5ef907405722194ab297127b3c3426e5368339","41f4413eac08210dfc1b1cdb5891ad08b05c79f5038bdf8c06e4aedaa85b943d","c79f1c8b51d8475dde8d2973f740f43ca34b1f0a95d93649cd76c1ee20abba19","35f0d2bd2c5c05c0cb19095bf5b7c44365b1c88efe6285370855b90417277a64","8264b129f4c4eb4799703f8e5ee2223a184d1cdbfc782158b1f40a88a4435a1f","527ddda6f8be1279f3294714534c49d6e90f238cea325519882ebf88d7ec5bd2","b23877792e8bd00271d0ec5d401b68e4228540a4316de3d9dfb697b955c161a4","35b2eb1de01633db90d41abe93730b29984856fcc840b4c2801bfd3761a2097b","1fd5a6eb7fc5159b80a848cbe718eae07a97998c5e5382c888904248cf58e26f","2a6b4655a6edce9e07c7d826848f72533c9991d40bc36e3f85558ad20e87ce2d","6e3d29fdc96ebbb2ac672d2dae710c689c1ea0d0e9469e0847616f3c38fd085f","d505055b8fadd42da235c85947911d8d198ad70c5f5775991e7821d4f89c90f5","8b5a5852099dca7d7e7a7cef6d681dc1586aafacdb963ca180fe5cabbfa3a24b","0d1aa3341d1ad2064adada71c5d01a2f572e4aac09410e5616d90894105a0eb9","52494ca5a884da3bf11b8165ab31429715f0970d9c6383240c5666f4bd713e01","162fafa2291749df2ab4516854aa781fcee1d9fca2ecd85fb48ae794c0700ce2","b4b9b51ee6f6309cda2e539245235a8caeca2b1d6bf12b5e5c162d17333c450f","d2ffe8356f060b88c1c5cf1fa874a4b779fb87fd1977084876e8be9eab6bf485","c76053984b39150d00ade365b096a8bc21a4a7f2ee9e0a926711b00f8e7bf701","956b510767e3d6f362ea5800510635197723737af5d19ae07ee987ea4a90bfa5","cd1a8ff61f5063d7e6e2094e25d35c90b499961b63911f2f4ae0ff5555c2b4d7","1cf09b5945779e9bc75c4dcd805fb149c28fc90da3335186ef620647a3c540e1","9cdc0b9a313090ec45b34ea1eb02fbace433f509e753634b043e9b83038261e6","c93474cff0088351a65d3cad24037874a26a5371a48528563e56efe31cb3d8bb","b4580df8ea7f62d7b06588001952bf69426e6b03cf3d2569f5f608e45f29ba08","de27f7bb9be9d8a2b4557ec6503b8a315f74d598ce9a0ab81b5ed5610e1a8e81","fe3c378dcefa7ed8b21bd6822f5d7838b1119836da75ae1e1fb485d27b8ffb62","7365bf3333d4277b6fe374ed055624e5ec080dbb919e2d78f1cb75a3f1a4b4f6","a5fbf3bc5c16ab5c84465ba7a043a4bee4c2b20bd3633d50d80118a3844edbaf","0923e4ac8c894ad507bd2daee0df66b699de88467201381ece011ba5a080e1ff","e4f6626f827ea509255647e1b6db82145a2eb1a6b46202655e7d9bb19145c33b","26e23972c40f378f0301d8d7025ea895557c2865a1a31c8ea9c3fff0dbc27075","bfddbff94132b423ad1d71bdbefb1d388c21a74ac1a8742df9324e5bf6109058","6356ce6b268f0d6e77cad00bf03d07fa1ffeb16e7d18dc91859b874636a38fe9","d5b6128dcf441a0cd79e4e5d598b2652cef966994304d17bbdb6c4f444eafbc7","9beadd02bfa213cc1a7e6e43f6b937a632083f7d95ed179ae5c67eb869c06628","90e885bffeb8fd4604394852a293014e94ce3de180348493568b1b79503b7c3e","cb3ba9d494b9672439f55ea9912fc7f6799e4af9867a363152f8f6c8052f7be8","51d759a5f5cd73d2161d6a0442a67d06df1de7400efa57d501ba19bd5a9085ca","1e2b78c6ccdf536ca96e992372cd471a4372bcce68f0dbcea35ff6134aabee51","653035cdba754844deb7e7c2aecb9de87f8048fb9d35b9b4ac3930a310eb4ba5","e268265b44b84b0e1bed24f2c067af38064dfede5b25fda109de1ab57c5258af","7fd3a1f9ab827412af3b0f8e97bbcb00166c6bcf72338a9bb4507710747ffa73","c0ca6bed5c6484eb3ea03a06f8b4af539123358d219b5e19d4ab46c5e4cc330a","2db28dbeaad84849b5e771e146ed067f7dbc2a2cc0bf587c1e904656a7c90c01","45a382542dc5ff4d031ea4ff7743455e7db6f734683f034fefbea7aae6674e09","09c7ea9bbefdfc7af001196eb260c3ef2065fe5bd10490655e98546fb9c4d41d","daa855dbf75eda593f4e212763a7be30307303902109b3d2f987dd38d58f2b60","bc61e4e46dc5aab9f43fbbd62716a0969cb56c12c2c89d6cceae0a77bb1c2d00","2e1093f3cfa56b9616216250f54d9dbef0a995af3a12c6c174d3948026245ad8","fab58e600970e66547644a44bc9918e3223aa2cbd9e8763cec004b2cfb48827e","61d0064b827862e765d2110d2f7d5b2b29607e3afaf45eed3c223dd1d7542a67","76d65b7ede19235dfbbb34bd7a6d9fbb1617e80553b88edbc9f0ddfe5b29da59","dce9d5334c880390b45bbc8ff7e15adc25287c85cfdd8aa7fccdd533544e83d0","fb92b0d6057d9a546d4ab889c121f18150a4b34683c2f75dc2a0bebdeda9fe9f","08db0ec5e89dd64dfa436a63a8c3b52d4ef5040739de03e650de9a18f80ee624","c9da3559f37f0cb50c5629c901dc1c34f251e0efb821a309b8200dd2429ba799","db184b30af21fbcb6ca09993570da3c2ec89147abe05977448cb4660bd8ca0e7","9fc642585915800144d02a753507dbe21c5a6012bb80e9ae48bd1bb203449fc8","822ebfd3ccc2cef7866623ef9049cba71f3b694a74ec4412c567b187bd94954f","f7e17676abfa9367422ef80811186f297a1ed27c331ded690114997262b1b1c2","7ad4da167bb21837b0aadb7d7b244c37da4f1599240f4d52ae43d0fcc6235a6a","a67ec8d5e18854eb9650deeeb4f365f48faa2c220414140dafa3d6d1215b69be","6223d4701142d96a7696183f00df1096b1bd7f8050f0e6ab39549e20b5cb7f7e","06b9f79f60ef434c40e7c6342df184a2a3b0fa8709bfa6bd15888de9ba69978d","3b8c58fb435aae0907b6a4c6e47e7144f0f16abd8ed600a9cf6440cb3be69e1b","3ca462b84a92dff46d10aaea7926b530fed3af35462d3df7d7d89207ad16d61b","7ace5c2862f52999917015af7d9b312aa1e213977f1f17c0e857c413cb522c21","dec9f9c76b3269a0c3b2ad8fa5efb22307e6291c16779b783fb379c76f756a6a","1d1a6de811422b71d6c87b7d07551e237512e8af05ace7bb55d4bbb1967c0d6d","480f88f569cf8697dc7b883a0daf199b6d409b557e76ea417768c2cc8f4f02c1","961b39fb7ed7fdfe71028d61a912b06ab94fa1b63b4ea4ab608a9a9aa0ff22a9","9dfac807f149fa5cace3ca790a06b7a08d5cf170bccdc2bb9d15b81d026f1c32","4c7deac6f629669ddbad54e13ad0d4727daf6ea0bad91da971c9169472652e7a","c4da707eb3636872ba8ca9249b6e4c664c45c2fac24d155a34d33dbb3678d10f","4885b6bdd30eadae18f1cdc4e3c31744ea7891c1a65436f9e8499256309a3b4e","206c1b0ef132a54964ce1751a2b6dada344ecc14c9a4fdf055cc6529a4d30684","e70bdfd444c7fe2e3643db41fbb08b0e8e49ac235ac248be1ae5697b7a0504bf","dd7b062315abb5c0cd757fa8cb102bf2d0a20c9508336dc2ad4f3492db14c3de","3ec720bae55286f06bc9fea1797e998c071ec114625e17819b5083accc0b9572","f19ee643e488b2cb2906163bd195d8f2f2603053c660b1809ebe4edb3e81cfab","4be9249397ad6a65f3cca2349eb9a15a90071f3da7b160405a3ee6df34d98d44","98558ee1de2b76038847cf9ce2030f5eca4b9c7ef40d762c49bbd51acec27e05","f512f8fe8f0e93e32d723ac08804f514d5b04462eb2d806c264e6c6c9b2abb60","e04898331c5c33aee79c58718d9a158e3e975b1e21b05119b0fe7f4081b36899","df6e76253c956e4b12ecae61fc59ad26bfb9eacd44adca1655af4482e8a764bf","095d261102bf186e38c6767a89d7fb3997a5b86e9a3a968a540d4934a9e22416","a35197751b690fcde2dafe2082433dd6004ee81fcbcb533e9b0827e4bbb8ff14","3558ec71d41daa2195d860bc31190d93cce0882d5859acf92081328cc0dc6432","215c25bafc0d84267bf51963511a8e9c2746a6b4f5bb0730fdbedd5abf4b650b","d006edf97678bfa127bdb73621200edec52a4a2687cdf326f8a4702b218bfd53","ad2473e0d0dcbcedcf59af6665cef79c46e1605c52857086223fd692129109ae","90408fd52de67a5d23d634451c2514bce9931979e5a34c932ac686a0a5a4dca6","0e9fb70e6acbb2efb7f3bf5b7a31580719764a3aeb590752303c4d0a04eca6c2","ce51b8202da104e02f99b4c8d742555613430292db063933bcc2956157a76e6d","a22c54a45ae419ccca9730f166e1822e39a027cbb35988b067124054746de84b","27211812184b93d42a4213e4722820afa7ae47755b3304363ac1cca1fde6fe56","62e1fad3c085b0515b506058a849d813a5183adca015dc3427502c566339e0b1","d42ec5206699e6a6506bccf09f660ecccebd7c86fc930baaebe31a6e419e2817","d193f945e30aa92cbe82f241d6069a77b64eb34ff842c799f7d0c030b7334e34","b12445961859086e6c96ee8ada46c84981fdf85a63531ca46885be85bbaa16a1","5d9e6ab67355120da83ee7f08ed4784314f7e0d2d69b1ace1dae6c5950e5fc6a","cb7f629c19b74a93485ef12abedf23040d21d402f3a855ee3533e45bfa1316a6","64e7b0f36f0e12ab5892bf7529619ea5031dfd721b45ba758ede824231130e07","c3bd9c23efa80dc550b957de9c8693dfecfd207a70a314de579090f874eff54b","0623f0b85a159f595d99b06e84bfad75b78c722a55dd7fee6c52952026493345","48740227bc8deb37a750cb8a5fabba46e8d6095e93bdb39ddbb3ae288e3712f3","0cba3a5d7b81356222594442753cf90dd2892e5ccfe1d262aaca6896ba6c1380","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"77f0b5c6a193a699c9f7d7fb0578e64e562d271afa740783665d2a827104a873","affectsGlobalScope":true},"e5979905796fe2740d85fbaf4f11f42b7ee1851421afe750823220813421b1af",{"version":"fcdcb42da18dd98dc286b1876dd425791772036012ae61263c011a76b13a190f","affectsGlobalScope":true},"1dab5ab6bcf11de47ab9db295df8c4f1d92ffa750e8f095e88c71ce4c3299628","f71f46ccd5a90566f0a37b25b23bc4684381ab2180bdf6733f4e6624474e1894",{"version":"54e65985a3ee3cec182e6a555e20974ea936fc8b8d1738c14e8ed8a42bd921d4","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","918a76828d88a73924bb26fef58040a6eb8a9adb7e407ea7264175520dda9450","34e5de87d983bc6aefef8b17658556e3157003e8d9555d3cb098c6bef0b5fbc8","787e96225b2a4c37625e3bdaa7b3e3b1fa0a24f067a494ac0e6aaa23be4752e4","f27371653aded82b2b160f7a7033fb4a5b1534b6f6081ef7be1468f0f15327d3","c762cd6754b13a461c54b59d0ae0ab7aeef3c292c6cf889873f786ee4d8e75c9","f4ea7d5df644785bd9fbf419930cbaec118f0d8b4160037d2339b8e23c059e79",{"version":"bfea28e6162ed21a0aeed181b623dcf250aa79abf49e24a6b7e012655af36d81","affectsGlobalScope":true},"b8aca9d0c81abb02bec9b7621983ae65bde71da6727580070602bd2500a9ce2a","ae97e20f2e10dbeec193d6a2f9cd9a367a1e293e7d6b33b68bacea166afd7792","10d4796a130577d57003a77b95d8723530bbec84718e364aa2129fa8ffba0378","063f53ff674228c190efa19dd9448bcbd540acdbb48a928f4cf3a1b9f9478e43","bf73c576885408d4a176f44a9035d798827cc5020d58284cb18d7573430d9022","7ae078ca42a670445ae0c6a97c029cb83d143d62abd1730efb33f68f0b2c0e82",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"287b21dc1d1b9701c92e15e7dd673dfe6044b15812956377adffb6f08825b1bc","12eea70b5e11e924bb0543aea5eadc16ced318aa26001b453b0d561c2fd0bd1e","08777cd9318d294646b121838574e1dd7acbb22c21a03df84e1f2c87b1ad47f2","08a90bcdc717df3d50a2ce178d966a8c353fd23e5c392fd3594a6e39d9bb6304",{"version":"4cd4cff679c9b3d9239fd7bf70293ca4594583767526916af8e5d5a47d0219c7","affectsGlobalScope":true},"2a12d2da5ac4c4979401a3f6eaafa874747a37c365e4bc18aa2b171ae134d21b","002b837927b53f3714308ecd96f72ee8a053b8aeb28213d8ec6de23ed1608b66","1dc9c847473bb47279e398b22c740c83ea37a5c88bf66629666e3cf4c5b9f99c","a9e4a5a24bf2c44de4c98274975a1a705a0abbaad04df3557c2d3cd8b1727949","00fa7ce8bc8acc560dc341bbfdf37840a8c59e6a67c9bfa3fa5f36254df35db2","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","5f0ed51db151c2cdc4fa3bb0f44ce6066912ad001b607a34e65a96c52eb76248",{"version":"3345c276cab0e76dda86c0fb79104ff915a4580ba0f3e440870e183b1baec476","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","103d70bfbeb3cd3a3f26d1705bf986322d8738c2c143f38ebb743b1e228d7444","f52fbf64c7e480271a9096763c4882d356b05cab05bf56a64e68a95313cd2ce2","59bdb65f28d7ce52ccfc906e9aaf422f8b8534b2d21c32a27d7819be5ad81df7",{"version":"3a2da34079a2567161c1359316a32e712404b56566c45332ac9dcee015ecce9f","affectsGlobalScope":true},"28a2e7383fd898c386ffdcacedf0ec0845e5d1a86b5a43f25b86bc315f556b79","3aff9c8c36192e46a84afe7b926136d520487155154ab9ba982a8b544ea8fc95","a880cf8d85af2e4189c709b0fea613741649c0e40fffb4360ec70762563d5de0","85bbf436a15bbeda4db888be3062d47f99c66fd05d7c50f0f6473a9151b6a070","9f9c49c95ecd25e0cb2587751925976cf64fd184714cb11e213749c80cf0f927","f0c75c08a71f9212c93a719a25fb0320d53f2e50ca89a812640e08f8ad8c408c",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"9cafe917bf667f1027b2bb62e2de454ecd2119c80873ad76fc41d941089753b8","cfdd927a5eae7a7e623b9745722ef3f2b7a2997fddc5d32b7e3dcaeeb15ff4a3","2460d62326e917f2c8db740da8f7fc521cc0622cef7f2dabd19ab9b67b923e3f","4db13c333459baad9cef0ff82237ea9cb4d5cebf4a2e923d498681115818b8b0","819d6e9ae704eaac6d63c9229829a254e021251490f301d0128a1c991123dfb7","e78fe935da96c94b5d8e607eae60c7655b5a763191eb567b1e8f5df6f93ba025","d7dd50d0accfa4b129bce9e36e6132e859d43f509142120e0fb2373671e61246","b61949cd1acc84f020dbc2bc43f132b78dd4cb198faedfda117c4d9a29b05863","dec92a7d579902f827bfb136ad45e4e6329daa2e35afa31f0b4e9f68533c17fa","df6c228e70e2114982c14719f4388ceb0843a06f09bd57b324f83d0dac2d082e","418eb7210bfdb54c773752b4e377100c5f5a41ce1db6c7d577691faadd64d8a9","9800372f557fcc75eb437fef5e57dd4150734d40d69a61c84f3cd0d55affbc0e","8ff907f17a9aa69139a0267b73ed44006abb29d7dbc3fa830ea8d3e8eda8e9a0","4cd9c05d3e45f1fe6ecf1747697f58c13ca2bbca1c668986174527aa82d7b250","b638fc22cf6f17de9cf3e54d3ad5875ce9c79f6e7c363e24659230b3acf30efc","b4e7a7322b1c9aea49a102998e9316d0f9b50901801523f149ed309821d1a069","3054056adcd079b4656263375f807d417e359bda23da26a9fa5f41a1dedebcfd","883aa164042a125a77bc45a83fa393a3ac75ac7752e8f158111b339729695ba7","0d0dc0a1ebf1b21398b6ab92a5735d5758c2c3510c289ff6ca4b76e115ea5099","681175de822969266a25403828237373f3da8e972a2d40adf10ad6f328b4e10a","596c120983e9852f5c001a91dfc2ef34f2f7dce12158917f0effdd8fb04ee658","428022c9346a7c0048cd9dc1d94cd800d7b58ccd6a57a04e02960127fdbc6c2c","5c4a703bfc59507c5b3dd15835487215e6029833ededfe17170889698ecc9819","ee3016e3b01a872689e399f2390a8902749348e10e703d11f3d0aa3504c5a3cc","00c4c36a2ab97144ad5200d90409a42b92627d709a4e93d0ddf235184ca1d91c","851c434b9c0db86cdd42672b5de98b3498f997bad86002d1c304a0323d26f171","e54ce1a93ecb94f86ada5f2d85edbbd721e00634ab502f80a4c03203233360cd","7bc9c8195a8e590296e9fb00d538aaf2bf9a480937ba0c094833e33473c47dea","168e68e151b0076c2ccbd91298085525cf8232fc220da6087918a096cc3e30f2","1629e726ae6d8710be23e604e3d8f79aa9632cfde76796a6ef6d84b6c5ac9f99","28df14edbbf2dfbc272a3cbd0b5cdf00b9f29d15ae4829bbf2cf0396c419bd9d","796e17c8fde22b2273f8ecd20fb8aa6815296070c3d5e4c61bf4ceaca50cea7e","05bffc0fe525e350a9b03ee8e7b0d6159d41e6022f6ef03ff6c3eb349f51f949","ca4917da562829559105df54fd4f6e9ff484972bb4904cff6f3fe3e83520afbf","ae8ee2109013ef5381a5a3256d597db213a307e30be1c87b5374e23232b05e78","bb10ed93a5390c28ee70f35f9e10b8568f3f4e8d4338651212d7c2ff71212d34","f82348f8ac4f637d6ad76ef5d45577ccc0c59fbd25d8c44d55349a71a90e195a","8dfed5c91ad36e69e6da6b7e49be929d4e19666db2b651aa839c485170a2902c","f82348f8ac4f637d6ad76ef5d45577ccc0c59fbd25d8c44d55349a71a90e195a","4aaf84a5ac87bad3211f041fab85de5cc42e5954c3ed56842faf6f08167e6202","f82348f8ac4f637d6ad76ef5d45577ccc0c59fbd25d8c44d55349a71a90e195a","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","f82348f8ac4f637d6ad76ef5d45577ccc0c59fbd25d8c44d55349a71a90e195a","3b043cf9a81854a72963fdb57d1884fc4da1cf5be69b5e0a4c5b751e58cb6d88","f82348f8ac4f637d6ad76ef5d45577ccc0c59fbd25d8c44d55349a71a90e195a","d0b0a00cf31968a33baeaadf974ce4e5e7edf58cea5288765293f41ba5e72b3a","e38c73a455d11e2c5d9094e448f5e5ae1d9e7a5984ead6c819701f1a88219d4c","567a315b240a060518c532d38a46803b6d35e75dc14a9be435b6dc20c816741e","117ffeecf6c55e25b6446f449ad079029b5e7317399b0a693858faaaea5ca73e","6fbd58e4015b9ae31ea977d4d549eb24a1102cc798b57ec5d70868b542c06612","59fa232e88ac1f44991a26b5a2fe5f55d4fe6952d4d2d36b737630b71e63a24b","cb38bdb69fd521c2b8e347551d319e197fd694dd128021b20c4a1af88ba78848","95f09632be098d42a4962dffd1a18e7dd1624a69e9545c39c8388e072b28661a","1579813ae02bb0153149471af32be27fccc6339d21adbb4a5ab6382c0a414e23","1d389b532bb58cabcde61129b4532b42aa337af3f7aa67c6097276552c602906","c168e28f723898f77b8140887b06baced58aa902327aea3746571756f7a721b5","8c2e6e491e1a08855b8bf70820184ff66ae0d43f7cf0311fc680e6d860af211c","751751b6996bc3567c39eee1c405906b92dc44a05fd0cf0fde87e8c2a1873137","c21561817809ebfef83d67812cc0f54d673d1adfebe600d72e0b86b7aa642dca","326b637884ff4d5a72198399e456395c06bf18e96720d7fe867560ee4f4b4141","069b8c0c4a6512e4d376cf05b732eb7b1a7381f96d570a60ee6cf553315f08ed","f5d81560bfe80aa653ec60c6a72e68e5ffd60b5e894aef7a46dec316c2a7b9e7","344ac2d6764eaa6b23b2e8e736c9bf0ae06a53479c6a1371d3d89ac964022692","971f6e42e62a34dd1293058686a10448b4733fecf52541b21db420bc1fb5455b","0df4d2086b238c385f20bd0547bcf9286e3856efd83c1a0d8c9da058591bd85c","f156602a8527c97f898fc96a33b7e025eed27870c2a63842c0c9ed506d7203ea","4eb316d39bf1c64cc7bbd8b7145d6f3540b376e64fd6728b54a6ffc219c70fb4","90418d31793a424780bd394cc27acd4daf7a12a74acf1769e9cb16e5241b994a","c24944ff5879b91478b153cf16802b9c6a10cfa3b7d85855813a08431ec2d36a","f1ba7a42f644ba5a281dd41b4bfc813d1f4a59e9c99227315cf778284d1e0b22","7adc301a699032ffd6d57e9ce97b2507e2ad652771cda558cb7ebb49a06e7696","f6319ead2de997fe24e6acc3594942d6819a4570f40e42cb979f5b078f3da1ca","4d3ae1585844151755e9d76cc41d82a6770b150559cb318c5366c869d487e01f","589cbf58df97db61280be456952054f5d54070e87a2c371303844a4bb288d8fa","96eb86ef716d05be717fd99718e158dcb5adb609447d45a1f577600c008b53e1","6bbf574c575a0491388f32aaa69c648140f24637b1d98ea6f3c97074c339f9e9",{"version":"a621d1da25dbd20157b01577e3e0475e0f0bbec7c6c5ee0a717cebb4b34b52f9","affectsGlobalScope":true},"3e135eeb6a6be4b07c1d2a170c105dde5f8b5c705f9be4e0f01166259724f125","f6c30cfb96957bb21586996d7c5d5861c236417f31b5f790055624c7df07e944","5dddb4b500f025659f31023e44654bb0acea569e14e8cfdea16a83c80405bbb2","1af0693bb63e2d9dd225e363e1ab92dfb4d4c0ea0a77ed157c938a56a3a3e3ac","fcd09ec2a7e00c425ddd2e9898b10a885e7bb34c474a44defbc864d6194003f0","3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba","de18acda71730bac52f4b256ce7511bb56cc21f6f114c59c46782eff2f632857","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","d8aab31ba8e618cc3eea10b0945de81cb93b7e8150a013a482332263b9305322","462bccdf75fcafc1ae8c30400c9425e1a4681db5d605d1a0edb4f990a54d8094","5923d8facbac6ecf7c84739a5c701a57af94a6f6648d6229a6c768cf28f0f8cb","7adecb2c3238794c378d336a8182d4c3dd2c4fa6fa1785e2797a3db550edea62","dc12dc0e5aa06f4e1a7692149b78f89116af823b9e1f1e4eae140cd3e0e674e6","1bfc6565b90c8771615cd8cfcf9b36efc0275e5e83ac7d9181307e96eb495161","8a8a96898906f065f296665e411f51010b51372fa260d5373bf9f64356703190","7f82ef88bdb67d9a850dd1c7cd2d690f33e0f0acd208e3c9eba086f3670d4f73","f014d6d053cb1840965952268a589c9e2a74d66c8c88286562d5699350e28e19","66851b263230decb3684072b2cb777f70ea3e52d4489b88f78f185618d4d398e",{"version":"3fe15a491a792852283caeece8142bc7427a29c183d9fec8691d95a49c8932a1","affectsGlobalScope":true},"0359682c54e487c4cab2b53b2b4d35cc8dea4d9914bc6abcdb5701f8b8e745a4","96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8","fe4a2042d087990ebfc7dc0142d5aaf5a152e4baea86b45f283f103ec1e871ea","d70c026dd2eeaa974f430ea229230a1897fdb897dc74659deebe2afd4feeb08f","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6","ca59fe42b81228a317812e95a2e72ccc8c7f1911b5f0c2a032adf41a0161ec5d","9364c7566b0be2f7b70ff5285eb34686f83ccb01bda529b82d23b2a844653bfb","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","ae9930989ed57478eb03b9b80ad3efa7a3eacdfeff0f78ecf7894c4963a64f93","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","3e59f00ab03c33717b3130066d4debb272da90eeded4935ff0604c2bc25a5cae","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9",{"version":"0714e2046df66c0e93c3330d30dbc0565b3e8cd3ee302cf99e4ede6220e5fec8","affectsGlobalScope":true},"2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","f58599a92d4a64416f4999a4d7241e1647aec2a6249214892722f712a6eedbe0","f7b46d22a307739c145e5fddf537818038fdfffd580d79ed717f4d4d37249380","9df147746b0cbd11d022b564e6fdd43ac79b643dc579d2123317ee01cc4f0d70","ef262a6df9ce297cedb823a4139694af75c7f60b2433ccc88c3b5dba8fdb5e08","313e4e39d6177365a827d01e7491fd05fd4937fc50c4473bea7e4ccb01cb6d4a",{"version":"ecf78e637f710f340ec08d5d92b3f31b134a46a4fcf2e758690d8c46ce62cba6","affectsGlobalScope":true},"ea0aa24a32c073b8639aa1f3130ba0add0f0f2f76b314d9ba988a5cb91d7e3c4","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"952b1b525b4d0744cbba084fc84669d174a8b5d018180d346c7a3c28a242bc1e","affectsGlobalScope":true},"74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","cd286ff5c5a492793030e45cbe21b5b4253039a4c3d22cbd53258815a604ec99","f7e133b20ee2669b6c0e5d7f0cd510868c57cd64b283e68c7f598e30ce9d76d2","6ba73232c9d3267ca36ddb83e335d474d2c0e167481e3dec416c782894e11438"],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"emitDecoratorMetadata":true,"experimentalDecorators":true,"module":1,"outDir":"./","removeComments":true,"sourceMap":true,"target":4},"fileIdsList":[[381],[381,424],[381,424,425,427,429,431],[381,424,427],[381,388],[356,381],[381,439,467],[381,438,444],[381,449],[381,444],[381,443],[381,461],[381,457],[381,439,456,467],[381,438,439,440,441,442,443,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468],[354,381,388],[381,471],[381,472],[381,482,484],[381,483],[381,488,490,491,492,493,494,495,496,497,498,499,500],[381,488,489,491,492,493,494,495,496,497,498,499,500],[381,489,490,491,492,493,494,495,496,497,498,499,500],[381,488,489,490,492,493,494,495,496,497,498,499,500],[381,488,489,490,491,493,494,495,496,497,498,499,500],[381,488,489,490,491,492,494,495,496,497,498,499,500],[381,488,489,490,491,492,493,495,496,497,498,499,500],[381,488,489,490,491,492,493,494,496,497,498,499,500],[381,488,489,490,491,492,493,494,495,497,498,499,500],[381,488,489,490,491,492,493,494,495,496,498,499,500],[381,488,489,490,491,492,493,494,495,496,497,499,500],[381,488,489,490,491,492,493,494,495,496,497,498,500],[381,488,489,490,491,492,493,494,495,496,497,498,499],[338,381],[341,381],[342,347,381],[343,353,354,361,370,380,381],[343,344,353,361,381],[345,381],[346,347,354,362,381],[347,370,377,381],[348,350,353,361,381],[349,381],[350,351,381],[352,353,381],[353,381],[353,354,355,370,380,381],[353,354,355,370,381],[381,385],[356,361,370,380,381],[353,354,356,357,361,370,377,380,381],[356,358,370,377,380,381],[338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387],[353,359,381],[360,380,381],[350,353,361,370,381],[362,381],[363,381],[341,364,381],[365,379,381,385],[366,381],[367,381],[353,368,381],[368,369,381,383],[353,370,371,372,381],[370,372,381],[370,371,381],[373,381],[374,381],[353,375,376,381],[375,376,381],[347,361,370,377,381],[378,381],[361,379,381],[342,356,367,380,381],[347,381],[370,381,382],[381,383],[381,384],[342,347,353,355,364,370,380,381,383,385],[370,381,386],[381,504,505],[381,504],[381,503,507,508,509],[381,514],[381,475,478],[381,475,478,479,480],[381,477],[381,474,481],[354,381],[381,476],[76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,92,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,132,133,134,135,136,137,138,139,140,141,143,145,146,147,148,149,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,195,196,197,199,207,209,210,211,212,213,214,216,217,219,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,381],[121,381],[79,80,381],[76,77,78,80,381],[77,80,381],[80,121,381],[76,80,198,381],[78,79,80,381],[76,80,381],[80,381],[79,381],[76,79,121,381],[77,79,80,236,381],[79,80,236,381],[79,244,381],[77,79,80,381],[89,381],[112,381],[133,381],[79,80,121,381],[80,128,381],[79,80,121,139,381],[79,80,139,381],[80,180,381],[76,80,199,381],[205,206,381],[76,80,198,205,381],[198,199,206,381],[205,381],[76,80,205,206,381],[220,381],[215,381],[218,381],[77,79,199,200,201,202,381],[121,199,200,201,202,381],[199,201,381],[79,200,201,203,204,207,381],[76,79,381],[80,222,381],[81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,122,123,124,125,126,127,129,130,131,132,133,134,135,136,137,138,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,381],[208,381],[65,68,381],[50,51,52,64,381],[50,381],[53,56,59,63,381],[53,381],[54,55,381],[53,60,381],[61,62,381],[57,58,381],[66,67,381],[72,273,291,292,297,301,306,381],[72,273,291,297,298,300,381],[273,291,297,298,299,301,303,304,381],[72,273,297,298,300,301,303,306,381],[291,297,302,381],[72,291,292,297,381],[273,291,297,303,381],[72,273,291,297,301,302,381],[303,304,381],[293,300,301,305,381],[72,273,297,298,381],[263,273,297,381],[298,299,381],[273,297,298,299,301,381],[273,297,298,301,306,381],[273,291,297,306,381],[332,343,381],[307,332,333,381],[333,334,335,336,337,343,381,390,391],[72,263,297,363,381],[291,297,307,332,333,381],[307,332,333,381,389],[46,381],[44,45,381],[46,73,75,263,273,274,381],[46,73,75,263,273,381],[46,74,75,279,381],[45,72,73,74,297,381],[263,275,277,381],[263,275,276,381],[72,275,381],[72,381],[278,381],[45,46,73,74,75,274,275,276,277,278,279,280,282,283,284,285,286,294,295,296,381],[46,73,263,273,279,280,381],[73,263,273,279,381],[46,279,381],[45,46,72,73,278,381],[46,73,263,273,279,282,283,381],[73,263,273,279,282,381],[46,279,282,381],[45,72,73,75,279,281,381],[46,73,263,273,279,284,285,381],[73,263,273,279,284,381],[46,279,284,381],[72,73,297,381],[46,73,74,75,263,273,279,286,381],[72,74,263,273,279,381],[46,74,279,381],[72,273,296,297,307,381],[72,263,273,274,280,283,285,286,291,293,295,297,306,381],[46,73,263,273,279,294,295,381],[73,263,273,279,294,381],[46,279,294,381],[72,273,291,297,306,307,325,381],[263,297,308,309,381],[263,311,381],[263,381],[263,297,314,381],[263,318,381],[263,317,381],[308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,381],[263,313,381],[263,325,381],[263,323,381],[263,321,322,381],[263,324,381],[72,263,297,309,317,381],[263,297,381],[263,312,381],[263,322,381],[44,381],[44,47,48,49,70,71,381],[69,381],[287,290,381],[72,287,381],[273,287,297,381],[287,288,289,290,381],[264,265,266,267,268,269,270,271,272,381],[72,267,268,273,297,381],[72,264,265,297,381],[72,268,297,326,381],[72,264,265,273,297,381],[72,269,273,297,381],[72,297,381],[72,273,297,326,381],[72,264,381],[72,263,266,267,269,297,381],[263,264,265,297,381]],"referencedMap":[[426,1],[427,2],[433,3],[432,1],[425,2],[424,1],[429,4],[428,1],[431,2],[430,1],[434,5],[435,1],[436,1],[437,6],[438,1],[440,7],[441,7],[442,1],[443,1],[445,8],[446,1],[447,1],[448,7],[449,1],[450,1],[451,9],[452,1],[453,1],[454,10],[455,1],[456,11],[457,1],[458,1],[459,1],[460,1],[463,1],[462,12],[439,1],[464,13],[465,1],[461,1],[466,1],[467,7],[468,14],[469,15],[444,1],[470,16],[471,1],[472,17],[473,18],[485,19],[484,20],[483,1],[486,1],[487,1],[489,21],[490,22],[488,23],[491,24],[492,25],[493,26],[494,27],[495,28],[496,29],[497,30],[498,31],[499,32],[500,33],[338,34],[339,34],[341,35],[342,36],[343,37],[344,38],[345,39],[346,40],[347,41],[348,42],[349,43],[350,44],[351,44],[352,45],[353,46],[354,47],[355,48],[340,49],[387,1],[356,50],[357,51],[358,52],[388,53],[359,54],[360,55],[361,56],[362,57],[363,58],[364,59],[365,60],[366,61],[367,62],[368,63],[369,64],[370,65],[372,66],[371,67],[373,68],[374,69],[375,70],[376,71],[377,72],[378,73],[379,74],[380,75],[381,76],[382,77],[383,78],[384,79],[385,80],[386,81],[501,1],[502,1],[503,1],[506,82],[505,83],[507,1],[510,84],[511,1],[509,1],[512,1],[513,1],[281,1],[514,1],[515,85],[474,1],[335,1],[508,1],[389,5],[475,1],[479,86],[481,87],[480,86],[478,88],[482,89],[336,90],[477,91],[476,1],[263,92],[236,1],[214,93],[212,93],[128,94],[79,95],[78,96],[213,97],[199,98],[121,99],[77,100],[76,101],[262,96],[227,102],[226,102],[139,103],[234,94],[235,94],[237,104],[238,94],[239,101],[240,94],[211,94],[241,94],[242,105],[243,94],[244,102],[245,106],[246,94],[247,94],[248,94],[249,94],[250,102],[251,94],[252,94],[253,94],[254,94],[255,107],[256,94],[257,94],[258,94],[259,94],[260,94],[81,101],[82,101],[83,94],[84,101],[85,101],[86,101],[87,101],[88,94],[90,108],[91,101],[89,101],[92,101],[93,101],[94,101],[95,101],[96,101],[97,101],[98,94],[99,101],[100,101],[101,101],[102,101],[103,101],[104,94],[105,101],[106,94],[107,101],[108,101],[109,101],[110,101],[111,94],[113,109],[112,101],[114,101],[115,101],[116,101],[117,101],[118,107],[119,94],[120,94],[134,110],[122,111],[123,101],[124,101],[125,94],[126,101],[127,101],[129,112],[130,101],[131,101],[132,101],[133,101],[135,101],[136,101],[137,101],[138,101],[140,113],[141,101],[142,101],[143,101],[144,94],[145,101],[146,114],[147,114],[148,114],[149,94],[150,101],[151,101],[152,101],[157,101],[153,101],[154,94],[155,101],[156,94],[158,94],[159,101],[160,101],[161,94],[162,94],[163,101],[164,94],[165,101],[166,101],[167,94],[168,101],[169,101],[170,101],[171,101],[172,101],[173,101],[174,101],[175,101],[176,101],[177,101],[178,101],[179,101],[180,101],[181,115],[182,101],[183,101],[184,101],[185,101],[186,101],[187,101],[188,94],[189,94],[190,94],[191,94],[192,94],[193,101],[194,101],[195,101],[196,101],[261,94],[198,116],[220,117],[215,117],[206,118],[205,119],[218,120],[207,121],[221,122],[216,123],[217,120],[219,124],[210,1],[203,125],[204,126],[201,1],[202,127],[200,101],[208,128],[80,129],[228,1],[229,1],[230,1],[231,1],[232,1],[233,1],[222,1],[225,102],[224,1],[223,130],[197,131],[209,132],[69,133],[65,134],[50,1],[51,135],[52,1],[64,136],[53,135],[55,137],[56,138],[54,137],[62,139],[63,140],[61,139],[60,1],[58,137],[59,141],[57,137],[68,142],[67,1],[66,1],[504,83],[8,1],[9,1],[13,1],[12,1],[2,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[20,1],[21,1],[3,1],[4,1],[43,1],[25,1],[22,1],[23,1],[24,1],[26,1],[27,1],[28,1],[5,1],[29,1],[30,1],[31,1],[32,1],[6,1],[33,1],[34,1],[35,1],[36,1],[7,1],[41,1],[37,1],[38,1],[39,1],[40,1],[1,1],[42,1],[11,1],[10,1],[293,143],[301,144],[327,145],[304,146],[328,147],[302,148],[329,149],[303,150],[305,151],[292,1],[306,152],[331,153],[298,154],[300,155],[330,156],[299,157],[307,158],[333,159],[334,160],[392,161],[332,162],[337,163],[390,164],[391,160],[393,165],[46,166],[394,167],[274,168],[395,169],[75,170],[396,171],[277,172],[397,173],[275,174],[398,175],[278,1],[73,174],[45,1],[297,176],[399,177],[280,178],[400,179],[279,180],[401,181],[283,182],[402,183],[282,184],[403,185],[285,186],[404,187],[284,188],[405,189],[286,190],[406,191],[74,188],[407,192],[296,193],[276,1],[408,194],[295,195],[409,196],[294,188],[326,197],[310,198],[410,199],[311,200],[315,201],[316,200],[411,202],[318,203],[319,203],[325,204],[320,202],[314,205],[312,1],[308,206],[412,203],[317,205],[321,205],[413,207],[323,208],[414,209],[324,200],[415,210],[309,211],[313,212],[416,213],[322,205],[71,1],[47,1],[417,214],[44,1],[72,215],[48,1],[49,1],[70,216],[418,217],[290,218],[288,219],[291,220],[289,218],[287,1],[273,221],[419,222],[267,223],[420,224],[268,225],[421,226],[269,223],[270,223],[271,223],[264,227],[422,228],[272,223],[265,229],[423,230],[266,231]],"exportedModulesMap":[[426,1],[427,2],[433,3],[432,1],[425,2],[424,1],[429,4],[428,1],[431,2],[430,1],[434,5],[435,1],[436,1],[437,6],[438,1],[440,7],[441,7],[442,1],[443,1],[445,8],[446,1],[447,1],[448,7],[449,1],[450,1],[451,9],[452,1],[453,1],[454,10],[455,1],[456,11],[457,1],[458,1],[459,1],[460,1],[463,1],[462,12],[439,1],[464,13],[465,1],[461,1],[466,1],[467,7],[468,14],[469,15],[444,1],[470,16],[471,1],[472,17],[473,18],[485,19],[484,20],[483,1],[486,1],[487,1],[489,21],[490,22],[488,23],[491,24],[492,25],[493,26],[494,27],[495,28],[496,29],[497,30],[498,31],[499,32],[500,33],[338,34],[339,34],[341,35],[342,36],[343,37],[344,38],[345,39],[346,40],[347,41],[348,42],[349,43],[350,44],[351,44],[352,45],[353,46],[354,47],[355,48],[340,49],[387,1],[356,50],[357,51],[358,52],[388,53],[359,54],[360,55],[361,56],[362,57],[363,58],[364,59],[365,60],[366,61],[367,62],[368,63],[369,64],[370,65],[372,66],[371,67],[373,68],[374,69],[375,70],[376,71],[377,72],[378,73],[379,74],[380,75],[381,76],[382,77],[383,78],[384,79],[385,80],[386,81],[501,1],[502,1],[503,1],[506,82],[505,83],[507,1],[510,84],[511,1],[509,1],[512,1],[513,1],[281,1],[514,1],[515,85],[474,1],[335,1],[508,1],[389,5],[475,1],[479,86],[481,87],[480,86],[478,88],[482,89],[336,90],[477,91],[476,1],[263,92],[236,1],[214,93],[212,93],[128,94],[79,95],[78,96],[213,97],[199,98],[121,99],[77,100],[76,101],[262,96],[227,102],[226,102],[139,103],[234,94],[235,94],[237,104],[238,94],[239,101],[240,94],[211,94],[241,94],[242,105],[243,94],[244,102],[245,106],[246,94],[247,94],[248,94],[249,94],[250,102],[251,94],[252,94],[253,94],[254,94],[255,107],[256,94],[257,94],[258,94],[259,94],[260,94],[81,101],[82,101],[83,94],[84,101],[85,101],[86,101],[87,101],[88,94],[90,108],[91,101],[89,101],[92,101],[93,101],[94,101],[95,101],[96,101],[97,101],[98,94],[99,101],[100,101],[101,101],[102,101],[103,101],[104,94],[105,101],[106,94],[107,101],[108,101],[109,101],[110,101],[111,94],[113,109],[112,101],[114,101],[115,101],[116,101],[117,101],[118,107],[119,94],[120,94],[134,110],[122,111],[123,101],[124,101],[125,94],[126,101],[127,101],[129,112],[130,101],[131,101],[132,101],[133,101],[135,101],[136,101],[137,101],[138,101],[140,113],[141,101],[142,101],[143,101],[144,94],[145,101],[146,114],[147,114],[148,114],[149,94],[150,101],[151,101],[152,101],[157,101],[153,101],[154,94],[155,101],[156,94],[158,94],[159,101],[160,101],[161,94],[162,94],[163,101],[164,94],[165,101],[166,101],[167,94],[168,101],[169,101],[170,101],[171,101],[172,101],[173,101],[174,101],[175,101],[176,101],[177,101],[178,101],[179,101],[180,101],[181,115],[182,101],[183,101],[184,101],[185,101],[186,101],[187,101],[188,94],[189,94],[190,94],[191,94],[192,94],[193,101],[194,101],[195,101],[196,101],[261,94],[198,116],[220,117],[215,117],[206,118],[205,119],[218,120],[207,121],[221,122],[216,123],[217,120],[219,124],[210,1],[203,125],[204,126],[201,1],[202,127],[200,101],[208,128],[80,129],[228,1],[229,1],[230,1],[231,1],[232,1],[233,1],[222,1],[225,102],[224,1],[223,130],[197,131],[209,132],[69,133],[65,134],[50,1],[51,135],[52,1],[64,136],[53,135],[55,137],[56,138],[54,137],[62,139],[63,140],[61,139],[60,1],[58,137],[59,141],[57,137],[68,142],[67,1],[66,1],[504,83],[8,1],[9,1],[13,1],[12,1],[2,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[20,1],[21,1],[3,1],[4,1],[43,1],[25,1],[22,1],[23,1],[24,1],[26,1],[27,1],[28,1],[5,1],[29,1],[30,1],[31,1],[32,1],[6,1],[33,1],[34,1],[35,1],[36,1],[7,1],[41,1],[37,1],[38,1],[39,1],[40,1],[1,1],[42,1],[11,1],[10,1],[293,143],[301,144],[327,145],[304,146],[328,147],[302,148],[329,149],[303,150],[305,151],[292,1],[306,152],[331,153],[298,154],[300,155],[330,156],[299,157],[307,158],[333,159],[334,160],[392,161],[332,162],[337,163],[390,164],[391,160],[393,165],[46,166],[394,167],[274,168],[395,169],[75,170],[396,171],[277,172],[397,173],[275,174],[398,175],[278,1],[73,174],[45,1],[297,176],[399,177],[280,178],[400,179],[279,180],[401,181],[283,182],[402,183],[282,184],[403,185],[285,186],[404,187],[284,188],[405,189],[286,190],[406,191],[74,188],[407,192],[296,193],[276,1],[408,194],[295,195],[409,196],[294,188],[326,197],[310,198],[410,199],[311,200],[315,201],[316,200],[411,202],[318,203],[319,203],[325,204],[320,202],[314,205],[312,1],[308,206],[412,203],[317,205],[321,205],[413,207],[323,208],[414,209],[324,200],[415,210],[309,211],[313,212],[416,213],[322,205],[71,1],[47,1],[417,214],[44,1],[72,215],[48,1],[49,1],[70,216],[418,217],[290,218],[288,219],[291,220],[289,218],[287,1],[273,221],[419,222],[267,223],[420,224],[268,225],[421,226],[269,223],[270,223],[271,223],[264,227],[422,228],[272,223],[265,229],[423,230],[266,231]],"semanticDiagnosticsPerFile":[426,427,433,432,425,424,429,428,431,430,434,435,436,437,438,440,441,442,443,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,463,462,439,464,465,461,466,467,468,469,444,470,471,472,473,485,484,483,486,487,489,490,488,491,492,493,494,495,496,497,498,499,500,338,339,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,340,387,356,357,358,388,359,360,361,362,363,364,365,366,367,368,369,370,372,371,373,374,375,376,377,378,379,380,381,382,383,384,385,386,501,502,503,506,505,507,510,511,509,512,513,281,514,515,474,335,508,389,475,479,481,480,478,482,336,477,476,263,236,214,212,128,79,78,213,199,121,77,76,262,227,226,139,234,235,237,238,239,240,211,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,81,82,83,84,85,86,87,88,90,91,89,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,113,112,114,115,116,117,118,119,120,134,122,123,124,125,126,127,129,130,131,132,133,135,136,137,138,140,141,142,143,144,145,146,147,148,149,150,151,152,157,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,261,198,220,215,206,205,218,207,221,216,217,219,210,203,204,201,202,200,208,80,228,229,230,231,232,233,222,225,224,223,197,209,69,65,50,51,52,64,53,55,56,54,62,63,61,60,58,59,57,68,67,66,504,8,9,13,12,2,14,15,16,17,18,19,20,21,3,4,43,25,22,23,24,26,27,28,5,29,30,31,32,6,33,34,35,36,7,41,37,38,39,40,1,42,11,10,293,301,327,304,328,302,329,303,305,292,306,331,298,300,330,299,307,333,334,392,332,337,390,391,393,46,394,274,395,75,396,277,397,275,398,278,73,45,297,399,280,400,279,401,283,402,282,403,285,404,284,405,286,406,74,407,296,276,408,295,409,294,326,310,410,311,315,316,411,318,319,325,320,314,312,308,412,317,321,413,323,414,324,415,309,313,416,322,71,47,417,44,72,48,49,70,418,290,288,291,289,287,273,419,267,420,268,421,269,270,271,264,422,272,265,423,266]},"version":"4.6.3"}
package/jestconfig.json DELETED
@@ -1,12 +0,0 @@
1
- {
2
- "moduleFileExtensions": ["js", "json", "ts"],
3
- "verbose": true,
4
- "rootDir": "src",
5
- "testRegex": ".spec.ts$",
6
- "transform": {
7
- "^.+\\.(t|j)s$": "ts-jest"
8
- },
9
- "coverageDirectory": "../coverage",
10
- "testEnvironment": "node",
11
- "testPathIgnorePatterns": ["tests"]
12
- }
@@ -1,124 +0,0 @@
1
- import {
2
- Asset,
3
- Candle,
4
- Commission,
5
- instrumentOf,
6
- InstrumentSelector,
7
- Order
8
- } from '../../domain';
9
- import { Cache, Feed, InMemoryStorage } from '../../storage';
10
- import { InstrumentPatchEvent, Store } from '../../store';
11
- import {
12
- Adapter,
13
- AdapterTimeProvider,
14
- DefaultTimeProvider,
15
- FeedQuery,
16
- HistoryQuery
17
- } from '../adapter';
18
- import { PaperEngine } from '../paper/engine/paper-engine';
19
- import { PaperAdapter } from '../paper/paper-adapter';
20
- import { BacktesterAdapter } from './backtester-adapter';
21
- import { BacktesterStreamer } from './backtester-streamer';
22
-
23
- const base = new Asset('btc', 'binance', 8);
24
- const quote = new Asset('usdt', 'binance', 4);
25
-
26
- class DefaultAdapter extends Adapter {
27
- dispose(): Promise<void> {
28
- throw new Error('Method not implemented.');
29
- }
30
- subscribe(instruments: InstrumentSelector[]): Promise<void> {
31
- throw new Error('Method not implemented.');
32
- }
33
- account(): Promise<void> {
34
- throw new Error('Method not implemented.');
35
- }
36
- open(order: Order): Promise<void> {
37
- throw new Error('Method not implemented.');
38
- }
39
- cancel(order: Order): Promise<void> {
40
- throw new Error('Method not implemented.');
41
- }
42
- history(query: HistoryQuery): Promise<Candle[]> {
43
- throw new Error('Method not implemented.');
44
- }
45
- feed(query: FeedQuery): Promise<void> {
46
- throw new Error('Method not implemented.');
47
- }
48
- name = 'default';
49
-
50
- constructor(timeProvider: AdapterTimeProvider, private readonly store: Store) {
51
- super(timeProvider);
52
- }
53
-
54
- timestamp() {
55
- return 123;
56
- }
57
-
58
- createPaperEngine(adapter: PaperAdapter): PaperEngine {
59
- return new PaperEngine(adapter.store);
60
- }
61
-
62
- async awake(): Promise<void> {
63
- this.store.dispatch(
64
- new InstrumentPatchEvent(
65
- this.timestamp(),
66
- base,
67
- quote,
68
- new Commission(0.1, 0.1),
69
- 'btc-usdt'
70
- )
71
- );
72
- }
73
- }
74
-
75
- const instrument = instrumentOf('binance:btc-usdt');
76
- const store = new Store();
77
- const adapter = new DefaultAdapter(DefaultTimeProvider, store);
78
- const feed = new Feed(new InMemoryStorage());
79
- const cache = new Cache(new InMemoryStorage());
80
-
81
- describe('BacktesterAdapter', () => {
82
- test('should return proper adapter name and timestamp', () => {
83
- const sut = new BacktesterAdapter(
84
- adapter,
85
- new BacktesterStreamer(store, feed, {
86
- from: 1,
87
- to: 100
88
- }),
89
- store
90
- );
91
-
92
- expect(sut.name).toEqual('default');
93
- expect(sut.timestamp()).toEqual(1);
94
- });
95
-
96
- test('should stream data from input array', done => {
97
- const streamer = new BacktesterStreamer(
98
- store,
99
- feed,
100
- {
101
- from: 0,
102
- to: 100
103
- },
104
- {
105
- onBacktestCompleted: () => {
106
- expect(store.snapshot.timestamp).toEqual(1);
107
- expect(store.snapshot.trade.get(instrument.id).rate).toEqual(100);
108
- expect(store.snapshot.trade.get(instrument.id).quantity).toEqual(10);
109
-
110
- done();
111
- }
112
- }
113
- );
114
-
115
- feed.save(instrument, [new Candle(1, 100, 100, 100, 100, 10)]);
116
-
117
- const sut = new BacktesterAdapter(adapter, streamer, store);
118
-
119
- sut.awake();
120
- sut.subscribe([instrument]);
121
-
122
- expect(sut.name).toEqual('default');
123
- });
124
- });
@@ -1,105 +0,0 @@
1
- import { InstrumentPatchEvent, Store } from '../../store';
2
- import {
3
- Adapter,
4
- AdapterTimeProvider,
5
- DefaultTimeProvider,
6
- FeedQuery,
7
- HistoryQuery
8
- } from '../adapter';
9
- import {
10
- Asset,
11
- Candle,
12
- Commission,
13
- instrumentOf,
14
- InstrumentSelector,
15
- Order
16
- } from './../../domain';
17
- import { PaperEngine } from './engine/paper-engine';
18
- import { PaperAdapter } from './paper-adapter';
19
-
20
- class DefaultAdapter extends Adapter {
21
- dispose(): Promise<void> {
22
- throw new Error('Method not implemented.');
23
- }
24
- subscribe(instruments: InstrumentSelector[]): Promise<void> {
25
- throw new Error('Method not implemented.');
26
- }
27
- account(): Promise<void> {
28
- throw new Error('Method not implemented.');
29
- }
30
- open(order: Order): Promise<void> {
31
- throw new Error('Method not implemented.');
32
- }
33
- cancel(order: Order): Promise<void> {
34
- throw new Error('Method not implemented.');
35
- }
36
- history(query: HistoryQuery): Promise<Candle[]> {
37
- throw new Error('Method not implemented.');
38
- }
39
- feed(query: FeedQuery): Promise<void> {
40
- throw new Error('Method not implemented.');
41
- }
42
- name = 'default';
43
-
44
- timestamp() {
45
- return 123;
46
- }
47
-
48
- constructor(timeProvider: AdapterTimeProvider, private readonly store: Store) {
49
- super(timeProvider);
50
- }
51
-
52
- async awake(): Promise<void> {
53
- this.store.dispatch(
54
- new InstrumentPatchEvent(
55
- this.timestamp(),
56
- new Asset('a', this.name, 8),
57
- new Asset('b', this.name, 4),
58
- new Commission(0.1, 0.1),
59
- 'a-b'
60
- )
61
- );
62
- }
63
-
64
- createPaperEngine(adapter: PaperAdapter): PaperEngine {
65
- return new PaperEngine(adapter.store);
66
- }
67
- }
68
-
69
- describe('PaperAdapter', () => {
70
- const options = {
71
- balance: {
72
- ['default:a']: 1000,
73
- ['default:b']: 200
74
- }
75
- };
76
-
77
- test('should return wrapped adapter name and timestamp', () => {
78
- const store = new Store();
79
-
80
- const sut = new PaperAdapter(
81
- new DefaultAdapter(DefaultTimeProvider, store),
82
- store,
83
- options
84
- );
85
-
86
- expect(sut.name).toEqual('default');
87
- expect(sut.timestamp()).toEqual(123);
88
- });
89
-
90
- test('', async () => {
91
- const store = new Store();
92
- const adapter = new DefaultAdapter(DefaultTimeProvider, store);
93
-
94
- const sut = new PaperAdapter(adapter, store, options);
95
-
96
- await sut.awake();
97
- await sut.account();
98
-
99
- const order = Order.market(instrumentOf('default:a-b'), 1.0);
100
-
101
- await sut.open(order);
102
-
103
- expect(store.snapshot.order.get(order.instrument.id).get(order.id)).toEqual(order);
104
- });
105
- });
package/src/bootstrap.ts DELETED
@@ -1,139 +0,0 @@
1
- import {
2
- AdapterAggregate,
3
- BacktesterListener,
4
- BacktesterStreamer,
5
- createBacktesterAdapterFactory,
6
- createPaperAdapterFactory,
7
- DefaultTimeProvider
8
- } from './adapter';
9
- import { Session, SessionDescriptor } from './domain';
10
- import { Cache, Feed, inMemoryStorageFactory } from './storage';
11
- import { Store } from './store';
12
-
13
- export class Bootstrap {
14
- constructor(readonly descriptor: SessionDescriptor) {}
15
-
16
- /**
17
- * Set session id.
18
- * @param id session id.
19
- */
20
- useSessionId(id?: number): Bootstrap {
21
- if (id) {
22
- this.descriptor.id = id;
23
- }
24
-
25
- return this;
26
- }
27
-
28
- /**
29
- *
30
- * @param from
31
- * @param to
32
- */
33
- useBacktestPeriod(from?: number, to?: number): Bootstrap {
34
- if (!this.descriptor.simulation) {
35
- this.descriptor.simulation = {
36
- balance: {},
37
- from: undefined,
38
- to: undefined
39
- };
40
- }
41
-
42
- if (from) {
43
- this.descriptor.simulation.from = from;
44
- }
45
-
46
- if (to) {
47
- this.descriptor.simulation.to = to;
48
- }
49
-
50
- return this;
51
- }
52
-
53
- /**
54
- * Starts a new backtest session.
55
- * @param listener backtest event listener.
56
- * @returns new session object.
57
- */
58
- backtest(listener?: BacktesterListener): [Session, BacktesterStreamer] {
59
- const store = new Store();
60
- const storage = this.descriptor.storage ?? inMemoryStorageFactory();
61
- const feed = new Feed(storage('feed'));
62
- const cache = new Cache(storage('cache'));
63
-
64
- const streamer = new BacktesterStreamer(
65
- store,
66
- feed,
67
- this.descriptor.simulation,
68
- listener
69
- );
70
-
71
- const aggregate = new AdapterAggregate(
72
- this.descriptor.adapter.map(it =>
73
- createBacktesterAdapterFactory(
74
- createPaperAdapterFactory(it, this.descriptor.simulation),
75
- streamer
76
- )
77
- ),
78
- streamer.getTimeProvider(),
79
- store,
80
- cache
81
- );
82
-
83
- const session = new Session(store, aggregate, this.descriptor);
84
-
85
- return [session, streamer];
86
- }
87
-
88
- /**
89
- * Starts a new paper session.
90
- * @returns new session object.
91
- */
92
- paper(): Session {
93
- if (!this.descriptor.simulation) {
94
- this.descriptor.simulation = {
95
- balance: {},
96
- from: undefined,
97
- to: undefined
98
- };
99
- }
100
-
101
- if (!this.descriptor.simulation.balance) {
102
- this.descriptor.simulation.balance = {};
103
- }
104
-
105
- const store = new Store();
106
- const storage = this.descriptor.storage ?? inMemoryStorageFactory();
107
- const cache = new Cache(storage('cache'));
108
-
109
- const aggregate = new AdapterAggregate(
110
- this.descriptor.adapter.map(it =>
111
- createPaperAdapterFactory(it, this.descriptor.simulation)
112
- ),
113
- DefaultTimeProvider,
114
- store,
115
- cache
116
- );
117
-
118
- return new Session(store, aggregate, this.descriptor);
119
- }
120
-
121
- /**
122
- * Starts a new live session.
123
- * @returns new session object.
124
- */
125
- live(): Session {
126
- const store = new Store();
127
- const storage = this.descriptor.storage ?? inMemoryStorageFactory();
128
- const cache = new Cache(storage('cache'));
129
-
130
- const aggregate = new AdapterAggregate(
131
- this.descriptor.adapter,
132
- DefaultTimeProvider,
133
- store,
134
- cache
135
- );
136
-
137
- return new Session(store, aggregate, this.descriptor);
138
- }
139
- }