@quantform/sqlite 0.5.23 → 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.
- package/LICENSE.md +21 -0
- package/dist/error.d.ts +2 -0
- package/dist/error.d.ts.map +1 -0
- package/dist/error.js +7 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +0 -1
- package/dist/sqlite-storage.d.ts +4 -3
- package/dist/sqlite-storage.d.ts.map +1 -0
- package/dist/sqlite-storage.js +58 -29
- package/jest.config.ts +12 -0
- package/package.json +13 -28
- package/src/error.ts +3 -0
- package/src/sqlite-feed.spec.ts +5 -2
- package/src/sqlite-storage.ts +33 -10
- package/tsconfig.json +12 -4
- package/dist/index.js.map +0 -1
- package/dist/sqlite-feed.spec.d.ts +0 -1
- package/dist/sqlite-feed.spec.js +0 -111
- package/dist/sqlite-feed.spec.js.map +0 -1
- package/dist/sqlite-measurement.spec.d.ts +0 -1
- package/dist/sqlite-measurement.spec.js +0 -114
- package/dist/sqlite-measurement.spec.js.map +0 -1
- package/dist/sqlite-storage.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/jestconfig.json +0 -13
package/LICENSE.md
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2022 Mateusz Majchrzak
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/dist/error.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,UAEhC"}
|
package/dist/error.js
ADDED
package/dist/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/sqlite-storage.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Storage, StorageDocument,
|
|
1
|
+
import { SessionFeature, Storage, StorageDocument, StorageQueryOptions } from '@quantform/core';
|
|
2
2
|
import { Database } from 'better-sqlite3';
|
|
3
|
-
export declare function sqlite(directory?: string):
|
|
3
|
+
export declare function sqlite(directory?: string): SessionFeature;
|
|
4
4
|
export declare class SQLiteStorage implements Storage {
|
|
5
5
|
private readonly filename;
|
|
6
|
-
protected connection
|
|
6
|
+
protected connection?: Database;
|
|
7
7
|
constructor(filename: string);
|
|
8
8
|
private tryConnect;
|
|
9
9
|
private tryCreateTable;
|
|
@@ -11,3 +11,4 @@ export declare class SQLiteStorage implements Storage {
|
|
|
11
11
|
query(library: string, options: StorageQueryOptions): Promise<StorageDocument[]>;
|
|
12
12
|
save(library: string, documents: StorageDocument[]): Promise<void>;
|
|
13
13
|
}
|
|
14
|
+
//# sourceMappingURL=sqlite-storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlite-storage.d.ts","sourceRoot":"","sources":["../src/sqlite-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,OAAO,EACP,eAAe,EACf,mBAAmB,EAEpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAO1C,wBAAgB,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,cAAc,CAOzD;AAED,qBAAa,aAAc,YAAW,OAAO;IAG/B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAFrC,SAAS,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC;gBAEH,QAAQ,EAAE,MAAM;IAE7C,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,cAAc;IAehB,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAa/B,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAuChF,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAoBzE"}
|
package/dist/sqlite-storage.js
CHANGED
|
@@ -1,12 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
exports.SQLiteStorage = exports.sqlite = void 0;
|
|
4
13
|
const core_1 = require("@quantform/core");
|
|
5
14
|
const bettersqlite3 = require("better-sqlite3");
|
|
6
15
|
const fs_1 = require("fs");
|
|
7
16
|
const path_1 = require("path");
|
|
17
|
+
const error_1 = require("./error");
|
|
8
18
|
function sqlite(directory) {
|
|
9
|
-
return (
|
|
19
|
+
return (builder) => {
|
|
20
|
+
builder.useStorage((type) => new SQLiteStorage((0, path_1.join)(directory !== null && directory !== void 0 ? directory : (0, core_1.workingDirectory)(), `/${type}.sqlite`)));
|
|
21
|
+
};
|
|
10
22
|
}
|
|
11
23
|
exports.sqlite = sqlite;
|
|
12
24
|
class SQLiteStorage {
|
|
@@ -23,6 +35,9 @@ class SQLiteStorage {
|
|
|
23
35
|
this.connection = bettersqlite3(this.filename);
|
|
24
36
|
}
|
|
25
37
|
tryCreateTable(table) {
|
|
38
|
+
if (!this.connection) {
|
|
39
|
+
throw (0, error_1.noConnectionError)();
|
|
40
|
+
}
|
|
26
41
|
this.connection.exec(`CREATE TABLE IF NOT EXISTS "${table}" (
|
|
27
42
|
timestamp INTEGER NOT NULL,
|
|
28
43
|
kind TEXT NOT NULL,
|
|
@@ -30,43 +45,57 @@ class SQLiteStorage {
|
|
|
30
45
|
PRIMARY KEY (timestamp, kind)
|
|
31
46
|
)`);
|
|
32
47
|
}
|
|
33
|
-
|
|
34
|
-
this
|
|
35
|
-
|
|
36
|
-
.
|
|
37
|
-
|
|
38
|
-
|
|
48
|
+
index() {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
this.tryConnect();
|
|
51
|
+
if (!this.connection) {
|
|
52
|
+
throw (0, error_1.noConnectionError)();
|
|
53
|
+
}
|
|
54
|
+
return this.connection
|
|
55
|
+
.prepare("SELECT name FROM sqlite_master WHERE type='table'")
|
|
56
|
+
.all()
|
|
57
|
+
.map(it => it.name);
|
|
58
|
+
});
|
|
39
59
|
}
|
|
40
|
-
|
|
60
|
+
query(library, options) {
|
|
41
61
|
var _a, _b;
|
|
42
|
-
this
|
|
43
|
-
|
|
44
|
-
.
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
62
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
63
|
+
this.tryConnect();
|
|
64
|
+
if (!this.connection) {
|
|
65
|
+
throw (0, error_1.noConnectionError)();
|
|
66
|
+
}
|
|
67
|
+
if (!this.connection
|
|
68
|
+
.prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='${library}'`)
|
|
69
|
+
.all().length) {
|
|
70
|
+
return [];
|
|
71
|
+
}
|
|
72
|
+
const isBackward = options.from == undefined;
|
|
73
|
+
let rows = this.connection
|
|
74
|
+
.prepare(`SELECT * FROM "${library}"
|
|
51
75
|
WHERE timestamp > ? AND timestamp < ? ${options.kind ? `AND kind = '${options.kind}'` : ''}
|
|
52
76
|
ORDER BY timestamp ${isBackward ? 'DESC' : ''}
|
|
53
77
|
LIMIT ?`)
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
78
|
+
.all([(_a = options.from) !== null && _a !== void 0 ? _a : 0, (_b = options.to) !== null && _b !== void 0 ? _b : Number.MAX_VALUE], Math.min(options.count, 50000));
|
|
79
|
+
if (isBackward) {
|
|
80
|
+
rows = rows.reverse();
|
|
81
|
+
}
|
|
82
|
+
return rows;
|
|
83
|
+
});
|
|
59
84
|
}
|
|
60
|
-
|
|
61
|
-
this
|
|
62
|
-
|
|
63
|
-
|
|
85
|
+
save(library, documents) {
|
|
86
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
87
|
+
this.tryConnect();
|
|
88
|
+
if (!this.connection) {
|
|
89
|
+
throw (0, error_1.noConnectionError)();
|
|
90
|
+
}
|
|
91
|
+
this.tryCreateTable(library);
|
|
92
|
+
const statement = this.connection.prepare(`
|
|
64
93
|
REPLACE INTO "${library}" (timestamp, kind, json)
|
|
65
94
|
VALUES(?, ?, ?);
|
|
66
95
|
`);
|
|
67
|
-
|
|
68
|
-
|
|
96
|
+
const insertMany = this.connection.transaction(rows => rows.forEach((it) => statement.run(it.timestamp, it.kind, it.json)));
|
|
97
|
+
insertMany(documents);
|
|
98
|
+
});
|
|
69
99
|
}
|
|
70
100
|
}
|
|
71
101
|
exports.SQLiteStorage = SQLiteStorage;
|
|
72
|
-
//# sourceMappingURL=sqlite-storage.js.map
|
package/jest.config.ts
ADDED
package/package.json
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@quantform/sqlite",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Node.js library for building systematic trading strategies in reactive way.",
|
|
5
|
-
"author": "Mateusz Majchrzak",
|
|
3
|
+
"version": "0.6.4",
|
|
6
4
|
"license": "MIT",
|
|
7
|
-
"
|
|
5
|
+
"author": "Mateusz Majchrzak",
|
|
6
|
+
"description": "Node.js library for building systematic trading strategies in reactive way.",
|
|
8
7
|
"repository": {
|
|
9
8
|
"type": "git",
|
|
10
9
|
"url": "https://github.com/quantform/quantform"
|
|
@@ -13,33 +12,19 @@
|
|
|
13
12
|
"access": "public"
|
|
14
13
|
},
|
|
15
14
|
"main": "dist/index.js",
|
|
16
|
-
"
|
|
17
|
-
"scripts": {
|
|
18
|
-
"prepare": "npm run build",
|
|
19
|
-
"build": "tsc",
|
|
20
|
-
"test": "jest -c jestconfig.json --coverage --passWithNoTests"
|
|
21
|
-
},
|
|
15
|
+
"typings": "dist/index.d.ts",
|
|
22
16
|
"dependencies": {
|
|
23
|
-
"better-sqlite3": "^7.
|
|
24
|
-
"dotenv": "^16.0.0",
|
|
25
|
-
"tslib": "^2.3.1"
|
|
26
|
-
},
|
|
27
|
-
"peerDependencies": {
|
|
28
|
-
"@quantform/core": "*"
|
|
17
|
+
"better-sqlite3": "^7.6.2"
|
|
29
18
|
},
|
|
30
19
|
"devDependencies": {
|
|
31
|
-
"@
|
|
32
|
-
"@
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
"
|
|
36
|
-
"jest": "^27.5.1",
|
|
37
|
-
"prettier": "^2.6.1",
|
|
38
|
-
"ts-jest": "^27.1.4",
|
|
39
|
-
"ts-node": "^10.7.0",
|
|
40
|
-
"typescript": "^4.6.3"
|
|
20
|
+
"@types/better-sqlite3": "^7.6.0",
|
|
21
|
+
"@quantform/core": "0.6.4"
|
|
22
|
+
},
|
|
23
|
+
"peerDependencies": {
|
|
24
|
+
"@quantform/core": "0.6.4"
|
|
41
25
|
},
|
|
42
|
-
"
|
|
43
|
-
"
|
|
26
|
+
"scripts": {
|
|
27
|
+
"build": "tsc",
|
|
28
|
+
"test": "jest"
|
|
44
29
|
}
|
|
45
30
|
}
|
package/src/error.ts
ADDED
package/src/sqlite-feed.spec.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Asset,
|
|
3
3
|
BacktesterStreamer,
|
|
4
|
+
Commission,
|
|
4
5
|
d,
|
|
5
6
|
Feed,
|
|
6
7
|
Instrument,
|
|
@@ -14,9 +15,11 @@ import { SQLiteStorage } from './sqlite-storage';
|
|
|
14
15
|
describe('sqlite feed tests', () => {
|
|
15
16
|
const dbName = 'test.db';
|
|
16
17
|
const instrument = new Instrument(
|
|
18
|
+
0,
|
|
17
19
|
new Asset('btc', 'binance', 8),
|
|
18
20
|
new Asset('usdt', 'binance', 2),
|
|
19
|
-
''
|
|
21
|
+
'',
|
|
22
|
+
Commission.Zero
|
|
20
23
|
);
|
|
21
24
|
|
|
22
25
|
afterEach(() => {
|
|
@@ -123,7 +126,7 @@ describe('sqlite feed tests', () => {
|
|
|
123
126
|
},
|
|
124
127
|
{
|
|
125
128
|
onBacktestCompleted: () => {
|
|
126
|
-
const trade = store.snapshot.trade.get(instrument.id);
|
|
129
|
+
const trade = store.snapshot.trade.get(instrument.id) ?? fail();
|
|
127
130
|
|
|
128
131
|
expect(trade.timestamp).toEqual(8);
|
|
129
132
|
expect(trade.rate).toEqual(d(8));
|
package/src/sqlite-storage.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
|
+
SessionBuilder,
|
|
3
|
+
SessionFeature,
|
|
2
4
|
Storage,
|
|
3
5
|
StorageDocument,
|
|
4
|
-
StorageFactory,
|
|
5
6
|
StorageQueryOptions,
|
|
6
7
|
workingDirectory
|
|
7
8
|
} from '@quantform/core';
|
|
@@ -10,15 +11,21 @@ import * as bettersqlite3 from 'better-sqlite3';
|
|
|
10
11
|
import { existsSync, mkdirSync } from 'fs';
|
|
11
12
|
import { dirname, join } from 'path';
|
|
12
13
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
import { noConnectionError } from './error';
|
|
15
|
+
|
|
16
|
+
export function sqlite(directory?: string): SessionFeature {
|
|
17
|
+
return (builder: SessionBuilder) => {
|
|
18
|
+
builder.useStorage(
|
|
19
|
+
(type: string) =>
|
|
20
|
+
new SQLiteStorage(join(directory ?? workingDirectory(), `/${type}.sqlite`))
|
|
21
|
+
);
|
|
22
|
+
};
|
|
16
23
|
}
|
|
17
24
|
|
|
18
25
|
export class SQLiteStorage implements Storage {
|
|
19
|
-
protected connection
|
|
26
|
+
protected connection?: Database;
|
|
20
27
|
|
|
21
|
-
constructor(private readonly filename: string) {}
|
|
28
|
+
constructor(private readonly filename: string) { }
|
|
22
29
|
|
|
23
30
|
private tryConnect() {
|
|
24
31
|
if (this.connection) {
|
|
@@ -33,6 +40,10 @@ export class SQLiteStorage implements Storage {
|
|
|
33
40
|
}
|
|
34
41
|
|
|
35
42
|
private tryCreateTable(table: string) {
|
|
43
|
+
if (!this.connection) {
|
|
44
|
+
throw noConnectionError();
|
|
45
|
+
}
|
|
46
|
+
|
|
36
47
|
this.connection.exec(
|
|
37
48
|
`CREATE TABLE IF NOT EXISTS "${table}" (
|
|
38
49
|
timestamp INTEGER NOT NULL,
|
|
@@ -46,6 +57,10 @@ export class SQLiteStorage implements Storage {
|
|
|
46
57
|
async index(): Promise<Array<string>> {
|
|
47
58
|
this.tryConnect();
|
|
48
59
|
|
|
60
|
+
if (!this.connection) {
|
|
61
|
+
throw noConnectionError();
|
|
62
|
+
}
|
|
63
|
+
|
|
49
64
|
return this.connection
|
|
50
65
|
.prepare("SELECT name FROM sqlite_master WHERE type='table'")
|
|
51
66
|
.all()
|
|
@@ -55,6 +70,10 @@ export class SQLiteStorage implements Storage {
|
|
|
55
70
|
async query(library: string, options: StorageQueryOptions): Promise<StorageDocument[]> {
|
|
56
71
|
this.tryConnect();
|
|
57
72
|
|
|
73
|
+
if (!this.connection) {
|
|
74
|
+
throw noConnectionError();
|
|
75
|
+
}
|
|
76
|
+
|
|
58
77
|
if (
|
|
59
78
|
!this.connection
|
|
60
79
|
.prepare(
|
|
@@ -70,9 +89,8 @@ export class SQLiteStorage implements Storage {
|
|
|
70
89
|
let rows = this.connection
|
|
71
90
|
.prepare(
|
|
72
91
|
`SELECT * FROM "${library}"
|
|
73
|
-
WHERE timestamp > ? AND timestamp < ? ${
|
|
74
|
-
|
|
75
|
-
}
|
|
92
|
+
WHERE timestamp > ? AND timestamp < ? ${options.kind ? `AND kind = '${options.kind}'` : ''
|
|
93
|
+
}
|
|
76
94
|
ORDER BY timestamp ${isBackward ? 'DESC' : ''}
|
|
77
95
|
LIMIT ?`
|
|
78
96
|
)
|
|
@@ -90,6 +108,11 @@ export class SQLiteStorage implements Storage {
|
|
|
90
108
|
|
|
91
109
|
async save(library: string, documents: StorageDocument[]): Promise<void> {
|
|
92
110
|
this.tryConnect();
|
|
111
|
+
|
|
112
|
+
if (!this.connection) {
|
|
113
|
+
throw noConnectionError();
|
|
114
|
+
}
|
|
115
|
+
|
|
93
116
|
this.tryCreateTable(library);
|
|
94
117
|
|
|
95
118
|
const statement = this.connection.prepare(`
|
|
@@ -98,7 +121,7 @@ export class SQLiteStorage implements Storage {
|
|
|
98
121
|
`);
|
|
99
122
|
|
|
100
123
|
const insertMany = this.connection.transaction(rows =>
|
|
101
|
-
rows.forEach(it => statement.run(it.timestamp, it.kind, it.json))
|
|
124
|
+
rows.forEach((it: any) => statement.run(it.timestamp, it.kind, it.json))
|
|
102
125
|
);
|
|
103
126
|
|
|
104
127
|
insertMany(documents);
|
package/tsconfig.json
CHANGED
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
{
|
|
2
|
-
"extends": "
|
|
2
|
+
"extends": "../../tsconfig.lib.json",
|
|
3
3
|
"compilerOptions": {
|
|
4
|
-
"
|
|
5
|
-
"
|
|
4
|
+
"outDir": "dist",
|
|
5
|
+
"esModuleInterop": false
|
|
6
6
|
},
|
|
7
|
-
"include": [
|
|
7
|
+
"include": [
|
|
8
|
+
"src/**/*",
|
|
9
|
+
],
|
|
10
|
+
"exclude": [
|
|
11
|
+
"jest.config.ts",
|
|
12
|
+
"**/*.spec.ts",
|
|
13
|
+
"**/*.test.ts",
|
|
14
|
+
"lib/**/*"
|
|
15
|
+
]
|
|
8
16
|
}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/sqlite-feed.spec.js
DELETED
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const core_1 = require("@quantform/core");
|
|
4
|
-
const fs_1 = require("fs");
|
|
5
|
-
const sqlite_storage_1 = require("./sqlite-storage");
|
|
6
|
-
describe('sqlite feed tests', () => {
|
|
7
|
-
const dbName = 'test.db';
|
|
8
|
-
const instrument = new core_1.Instrument(new core_1.Asset('btc', 'binance', 8), new core_1.Asset('usdt', 'binance', 2), '');
|
|
9
|
-
afterEach(() => {
|
|
10
|
-
if ((0, fs_1.existsSync)(dbName)) {
|
|
11
|
-
(0, fs_1.unlinkSync)(dbName);
|
|
12
|
-
}
|
|
13
|
-
});
|
|
14
|
-
test('should create db file in user directory', async () => {
|
|
15
|
-
const feed = new core_1.Feed(new sqlite_storage_1.SQLiteStorage(dbName));
|
|
16
|
-
const input = [
|
|
17
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(1234.56789), (0, core_1.d)(1.12345678), 1616175004063)
|
|
18
|
-
];
|
|
19
|
-
await feed.save(input);
|
|
20
|
-
const output = await feed.query(instrument, {
|
|
21
|
-
from: 1616175004062,
|
|
22
|
-
to: 1616234152109,
|
|
23
|
-
count: 100
|
|
24
|
-
});
|
|
25
|
-
expect(output.length).toBe(1);
|
|
26
|
-
});
|
|
27
|
-
test('should insert multiple rows', async () => {
|
|
28
|
-
const feed = new core_1.Feed(new sqlite_storage_1.SQLiteStorage(dbName));
|
|
29
|
-
const input = [
|
|
30
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(1234.56789), (0, core_1.d)(1.12345678), 1616175004063),
|
|
31
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(1234.56789), (0, core_1.d)(2.12345678), 1616221874143),
|
|
32
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(1234.56789), (0, core_1.d)(3.12345678), 1616234152108)
|
|
33
|
-
];
|
|
34
|
-
await feed.save(input);
|
|
35
|
-
const output = await feed.query(instrument, {
|
|
36
|
-
from: 1616175004062,
|
|
37
|
-
to: 1616234152109,
|
|
38
|
-
count: 100
|
|
39
|
-
});
|
|
40
|
-
expect(output.length).toBe(3);
|
|
41
|
-
for (let i = 0; i < 3; i++) {
|
|
42
|
-
expect(output[i]).toEqual(input[i]);
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
test('should limit result', async () => {
|
|
46
|
-
const feed = new core_1.Feed(new sqlite_storage_1.SQLiteStorage(dbName));
|
|
47
|
-
const input = [
|
|
48
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(1234.56789), (0, core_1.d)(1.12345678), 1616175004063),
|
|
49
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(1234.56789), (0, core_1.d)(2.12345678), 1616221874143),
|
|
50
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(1234.56789), (0, core_1.d)(3.12345678), 1616234152108)
|
|
51
|
-
];
|
|
52
|
-
await feed.save(input);
|
|
53
|
-
const output = await feed.query(instrument, {
|
|
54
|
-
from: 1616175004062,
|
|
55
|
-
to: 1616234152109,
|
|
56
|
-
count: 2
|
|
57
|
-
});
|
|
58
|
-
expect(output.length).toBe(2);
|
|
59
|
-
expect(output[0].timestamp).toBe(input[0].timestamp);
|
|
60
|
-
expect(output[1].timestamp).toBe(input[1].timestamp);
|
|
61
|
-
});
|
|
62
|
-
test('should override duplicated rows', async () => {
|
|
63
|
-
const feed = new core_1.Feed(new sqlite_storage_1.SQLiteStorage(dbName));
|
|
64
|
-
await feed.save([
|
|
65
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(1234.56789), (0, core_1.d)(1.12345678), 1616175004063),
|
|
66
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(1234.56789), (0, core_1.d)(2.12345678), 1616221874143),
|
|
67
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(1234.56789), (0, core_1.d)(3.12345678), 1616234152108)
|
|
68
|
-
]);
|
|
69
|
-
const result = await feed.query(instrument, {
|
|
70
|
-
from: 1616175004062,
|
|
71
|
-
to: 1616175004064,
|
|
72
|
-
count: 100
|
|
73
|
-
});
|
|
74
|
-
expect(result.length).toBe(1);
|
|
75
|
-
});
|
|
76
|
-
test('should patch a store with events', done => {
|
|
77
|
-
const feed = new core_1.Feed(new sqlite_storage_1.SQLiteStorage(dbName));
|
|
78
|
-
const store = new core_1.Store();
|
|
79
|
-
store.snapshot.universe.instrument.upsert(instrument);
|
|
80
|
-
store.snapshot.subscription.instrument.upsert(instrument);
|
|
81
|
-
const streamer = new core_1.BacktesterStreamer(store, feed, {
|
|
82
|
-
from: 0,
|
|
83
|
-
to: 10
|
|
84
|
-
}, {
|
|
85
|
-
onBacktestCompleted: () => {
|
|
86
|
-
const trade = store.snapshot.trade.get(instrument.id);
|
|
87
|
-
expect(trade.timestamp).toEqual(8);
|
|
88
|
-
expect(trade.rate).toEqual((0, core_1.d)(8));
|
|
89
|
-
expect(trade.quantity).toEqual((0, core_1.d)(8));
|
|
90
|
-
expect(store.snapshot.timestamp).toEqual(8);
|
|
91
|
-
done();
|
|
92
|
-
}
|
|
93
|
-
});
|
|
94
|
-
feed
|
|
95
|
-
.save([
|
|
96
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(1), (0, core_1.d)(1), 1),
|
|
97
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(2), (0, core_1.d)(2), 2),
|
|
98
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(3), (0, core_1.d)(3), 3),
|
|
99
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(4), (0, core_1.d)(4), 4),
|
|
100
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(5), (0, core_1.d)(5), 5),
|
|
101
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(6), (0, core_1.d)(6), 6),
|
|
102
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(7), (0, core_1.d)(7), 7),
|
|
103
|
-
new core_1.TradePatchEvent(instrument, (0, core_1.d)(8), (0, core_1.d)(8), 8)
|
|
104
|
-
])
|
|
105
|
-
.then(() => {
|
|
106
|
-
streamer.subscribe(instrument);
|
|
107
|
-
streamer.tryContinue();
|
|
108
|
-
});
|
|
109
|
-
});
|
|
110
|
-
});
|
|
111
|
-
//# sourceMappingURL=sqlite-feed.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-feed.spec.js","sourceRoot":"","sources":["../src/sqlite-feed.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const core_1 = require("@quantform/core");
|
|
4
|
-
const fs_1 = require("fs");
|
|
5
|
-
const sqlite_storage_1 = require("./sqlite-storage");
|
|
6
|
-
describe('sqlite measurement tests', () => {
|
|
7
|
-
const dbName = 'measurement.db';
|
|
8
|
-
beforeEach(() => {
|
|
9
|
-
if ((0, fs_1.existsSync)(dbName)) {
|
|
10
|
-
(0, fs_1.unlinkSync)(dbName);
|
|
11
|
-
}
|
|
12
|
-
});
|
|
13
|
-
afterAll(() => {
|
|
14
|
-
if ((0, fs_1.existsSync)(dbName)) {
|
|
15
|
-
(0, fs_1.unlinkSync)(dbName);
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
test('should return empty array for unknown session', async () => {
|
|
19
|
-
const measurement = new core_1.Measurement(new sqlite_storage_1.SQLiteStorage(dbName));
|
|
20
|
-
const measure = await measurement.query(0, {
|
|
21
|
-
from: 0,
|
|
22
|
-
count: 100
|
|
23
|
-
});
|
|
24
|
-
expect(measure).toEqual([]);
|
|
25
|
-
});
|
|
26
|
-
test('should list written sessions', async () => {
|
|
27
|
-
const measurement = new core_1.Measurement(new sqlite_storage_1.SQLiteStorage(dbName));
|
|
28
|
-
await measurement.save(1, [...Array(10).keys()].map(it => ({
|
|
29
|
-
timestamp: it + 1,
|
|
30
|
-
kind: 'spread',
|
|
31
|
-
payload: { value: it + 1 }
|
|
32
|
-
})));
|
|
33
|
-
await measurement.save(2, [...Array(10).keys()].map(it => ({
|
|
34
|
-
timestamp: it + 1,
|
|
35
|
-
kind: 'spread',
|
|
36
|
-
payload: { value: it + 1 }
|
|
37
|
-
})));
|
|
38
|
-
const index = await measurement.index();
|
|
39
|
-
expect(index.length).toBe(2);
|
|
40
|
-
expect(index[0]).toBe(1);
|
|
41
|
-
expect(index[1]).toBe(2);
|
|
42
|
-
});
|
|
43
|
-
test('should read and write measurement', async () => {
|
|
44
|
-
const measurement = new core_1.Measurement(new sqlite_storage_1.SQLiteStorage(dbName));
|
|
45
|
-
const session = 1;
|
|
46
|
-
await measurement.save(session, [...Array(10).keys()].map(it => ({
|
|
47
|
-
timestamp: it + 1,
|
|
48
|
-
kind: 'spread',
|
|
49
|
-
payload: { value: it + 1 }
|
|
50
|
-
})));
|
|
51
|
-
const after = await measurement.query(session, {
|
|
52
|
-
from: 5,
|
|
53
|
-
count: 100
|
|
54
|
-
});
|
|
55
|
-
expect(after.length).toBe(5);
|
|
56
|
-
expect(after[0].timestamp).toBe(6);
|
|
57
|
-
expect(after[0].kind).toBe('spread');
|
|
58
|
-
expect(after[0].payload.value).toBe(6);
|
|
59
|
-
expect(after[1].timestamp).toBe(7);
|
|
60
|
-
expect(after[1].kind).toBe('spread');
|
|
61
|
-
expect(after[1].payload.value).toBe(7);
|
|
62
|
-
expect(after[2].timestamp).toBe(8);
|
|
63
|
-
expect(after[2].kind).toBe('spread');
|
|
64
|
-
expect(after[2].payload.value).toBe(8);
|
|
65
|
-
const before = await measurement.query(session, {
|
|
66
|
-
to: 6,
|
|
67
|
-
count: 100
|
|
68
|
-
});
|
|
69
|
-
expect(before.length).toBe(5);
|
|
70
|
-
expect(before[0].timestamp).toBe(1);
|
|
71
|
-
expect(before[0].kind).toBe('spread');
|
|
72
|
-
expect(before[0].payload.value).toBe(1);
|
|
73
|
-
expect(before[1].timestamp).toBe(2);
|
|
74
|
-
expect(before[1].kind).toBe('spread');
|
|
75
|
-
expect(before[1].payload.value).toBe(2);
|
|
76
|
-
expect(before[2].timestamp).toBe(3);
|
|
77
|
-
expect(before[2].kind).toBe('spread');
|
|
78
|
-
expect(before[2].payload.value).toBe(3);
|
|
79
|
-
});
|
|
80
|
-
test('should read and write specific measurement (state)', async () => {
|
|
81
|
-
const measurement = new core_1.Measurement(new sqlite_storage_1.SQLiteStorage(dbName));
|
|
82
|
-
const session = 1;
|
|
83
|
-
await measurement.save(session, [
|
|
84
|
-
{
|
|
85
|
-
timestamp: 1,
|
|
86
|
-
kind: 'order-completed',
|
|
87
|
-
payload: { rate: 100 }
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
timestamp: 5,
|
|
91
|
-
kind: 'order-completed',
|
|
92
|
-
payload: { rate: 105 }
|
|
93
|
-
}
|
|
94
|
-
]);
|
|
95
|
-
let measure = await measurement.query(session, {
|
|
96
|
-
to: 2,
|
|
97
|
-
count: 1,
|
|
98
|
-
kind: 'order-completed'
|
|
99
|
-
});
|
|
100
|
-
expect(measure.length).toBe(1);
|
|
101
|
-
expect(measure[0].timestamp).toBe(1);
|
|
102
|
-
expect(measure[0].kind).toBe('order-completed');
|
|
103
|
-
expect(measure[0].payload.rate).toBe(100);
|
|
104
|
-
measure = await measurement.query(session, {
|
|
105
|
-
to: 6,
|
|
106
|
-
count: 1
|
|
107
|
-
});
|
|
108
|
-
expect(measure.length).toBe(1);
|
|
109
|
-
expect(measure[0].timestamp).toBe(5);
|
|
110
|
-
expect(measure[0].kind).toBe('order-completed');
|
|
111
|
-
expect(measure[0].payload.rate).toBe(105);
|
|
112
|
-
});
|
|
113
|
-
});
|
|
114
|
-
//# sourceMappingURL=sqlite-measurement.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-measurement.spec.js","sourceRoot":"","sources":["../src/sqlite-measurement.spec.ts"],"names":[],"mappings":";;AAAA,0CAA8C;AAC9C,2BAA4C;AAE5C,qDAAiD;AAEjD,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,MAAM,MAAM,GAAG,gBAAgB,CAAC;IAEhC,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,IAAA,eAAU,EAAC,MAAM,CAAC,EAAE;YACtB,IAAA,eAAU,EAAC,MAAM,CAAC,CAAC;SACpB;IACH,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,GAAG,EAAE;QACZ,IAAI,IAAA,eAAU,EAAC,MAAM,CAAC,EAAE;YACtB,IAAA,eAAU,EAAC,MAAM,CAAC,CAAC;SACpB;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,WAAW,GAAG,IAAI,kBAAW,CAAC,IAAI,8BAAa,CAAC,MAAM,CAAC,CAAC,CAAC;QAE/D,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE;YACzC,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,GAAG;SACX,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,WAAW,GAAG,IAAI,kBAAW,CAAC,IAAI,8BAAa,CAAC,MAAM,CAAC,CAAC,CAAC;QAE/D,MAAM,WAAW,CAAC,IAAI,CACpB,CAAC,EACD,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC/B,SAAS,EAAE,EAAE,GAAG,CAAC;YACjB,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,EAAE;SAC3B,CAAC,CAAC,CACJ,CAAC;QAEF,MAAM,WAAW,CAAC,IAAI,CACpB,CAAC,EACD,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC/B,SAAS,EAAE,EAAE,GAAG,CAAC;YACjB,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,EAAE;SAC3B,CAAC,CAAC,CACJ,CAAC;QAEF,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC;QAExC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,WAAW,GAAG,IAAI,kBAAW,CAAC,IAAI,8BAAa,CAAC,MAAM,CAAC,CAAC,CAAC;QAE/D,MAAM,OAAO,GAAG,CAAC,CAAC;QAElB,MAAM,WAAW,CAAC,IAAI,CACpB,OAAO,EACP,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC/B,SAAS,EAAE,EAAE,GAAG,CAAC;YACjB,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,EAAE;SAC3B,CAAC,CAAC,CACJ,CAAC;QAEF,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE;YAC7C,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,GAAG;SACX,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEvC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE;YAC9C,EAAE,EAAE,CAAC;YACL,KAAK,EAAE,GAAG;SACX,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAExC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAExC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;QACpE,MAAM,WAAW,GAAG,IAAI,kBAAW,CAAC,IAAI,8BAAa,CAAC,MAAM,CAAC,CAAC,CAAC;QAE/D,MAAM,OAAO,GAAG,CAAC,CAAC;QAElB,MAAM,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE;YAC9B;gBACE,SAAS,EAAE,CAAC;gBACZ,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;aACvB;YACD;gBACE,SAAS,EAAE,CAAC;gBACZ,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;aACvB;SACF,CAAC,CAAC;QAEH,IAAI,OAAO,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE;YAC7C,EAAE,EAAE,CAAC;YACL,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,iBAAiB;SACxB,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAChD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE1C,OAAO,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE;YACzC,EAAE,EAAE,CAAC;YACL,KAAK,EAAE,CAAC;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAChD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-storage.js","sourceRoot":"","sources":["../src/sqlite-storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -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","../../../../node_modules/decimal.js/decimal.d.ts","../../../core/dist/shared/decimals.d.ts","../../../core/dist/domain/asset.d.ts","../../../core/dist/shared/datetime.d.ts","../../../core/dist/shared/io.d.ts","../../../core/dist/shared/logger.d.ts","../../../core/dist/shared/policy.d.ts","../../../core/dist/shared/collections.d.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","../../../core/dist/shared/pipe.d.ts","../../../core/dist/shared/index.d.ts","../../../core/dist/domain/component.d.ts","../../../core/dist/domain/position.d.ts","../../../core/dist/domain/balance.d.ts","../../../core/dist/store/store-state.d.ts","../../../core/dist/store/store.event.d.ts","../../../core/dist/store/store.d.ts","../../../core/dist/store/store-balance.event.d.ts","../../../core/dist/store/store-instrument.event.d.ts","../../../core/dist/store/store-order.event.d.ts","../../../core/dist/store/store-orderbook.event.d.ts","../../../core/dist/store/store-position.event.d.ts","../../../core/dist/store/store-trade.event.d.ts","../../../core/dist/store/index.d.ts","../../../core/dist/domain/balance.operator.d.ts","../../../core/dist/domain/error.d.ts","../../../core/dist/domain/candle.d.ts","../../../core/dist/domain/candle.operator.d.ts","../../../core/dist/domain/commission.d.ts","../../../core/dist/domain/instrument.d.ts","../../../core/dist/domain/instrument.operator.d.ts","../../../core/dist/domain/order.d.ts","../../../core/dist/domain/order.operator.d.ts","../../../core/dist/domain/orderbook.d.ts","../../../core/dist/domain/orderbook.operator.d.ts","../../../core/dist/domain/position.operator.d.ts","../../../core/dist/storage/storage.d.ts","../../../core/dist/storage/feed.d.ts","../../../core/dist/storage/measurement.d.ts","../../../core/dist/storage/cache.d.ts","../../../core/dist/storage/index.d.ts","../../../core/dist/adapter/adapter-aggregate.d.ts","../../../core/dist/domain/session.d.ts","../../../core/dist/domain/timeframe.d.ts","../../../core/dist/domain/trade.d.ts","../../../core/dist/domain/trade.operator.d.ts","../../../core/dist/domain/index.d.ts","../../../core/dist/adapter/paper/engine/paper-engine.d.ts","../../../core/dist/adapter/paper/paper-adapter.d.ts","../../../core/dist/adapter/paper/index.d.ts","../../../core/dist/adapter/adapter.d.ts","../../../core/dist/adapter/backtester/backtester-streamer.d.ts","../../../core/dist/adapter/backtester/backtester-adapter.d.ts","../../../core/dist/adapter/backtester/index.d.ts","../../../core/dist/adapter/index.d.ts","../../../core/dist/bootstrap.d.ts","../../../core/dist/indicator/atr.d.ts","../../../core/dist/indicator/cross.d.ts","../../../core/dist/indicator/donchian.d.ts","../../../core/dist/indicator/drawdown.d.ts","../../../core/dist/indicator/ema.d.ts","../../../core/dist/indicator/envelope.d.ts","../../../core/dist/indicator/macd.d.ts","../../../core/dist/indicator/min-max.d.ts","../../../core/dist/indicator/ring-buffer.d.ts","../../../core/dist/indicator/rma.d.ts","../../../core/dist/indicator/sma.d.ts","../../../core/dist/indicator/swma.d.ts","../../../core/dist/indicator/tma.d.ts","../../../core/dist/indicator/trailing.d.ts","../../../core/dist/indicator/true-range.d.ts","../../../core/dist/indicator/window.d.ts","../../../core/dist/indicator/wma.d.ts","../../../core/dist/indicator/index.d.ts","../../../core/dist/index.d.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/@types/better-sqlite3/index.d.ts","../src/sqlite-storage.ts","../src/index.ts","../src/sqlite-feed.spec.ts","../src/sqlite-measurement.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/big.js/index.d.ts","../../../../node_modules/@types/bn.js/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/elliptic/node_modules/@types/bn.js/index.d.ts","../../../../node_modules/@types/elliptic/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/keyv/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/pbkdf2/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/ref-napi/index.d.ts","../../../../node_modules/@types/responselike/index.d.ts","../../../../node_modules/@types/scheduler/index.d.ts","../../../../node_modules/@types/secp256k1/index.d.ts","../../../../node_modules/@types/stack-utils/index.d.ts","../../../../node_modules/@types/tsc-watch/index.d.ts","../../../../node_modules/@types/uuid/index.d.ts","../../../../node_modules/@types/ws/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","54b9967c3f368000c0d96688884facaedaf660b861a5b6afd1902ebbe811ce5b","b4f73906f66e072752daf5fc8ed58185e1dde6dc3afa09fdccbe9402e9db54b2","e1f8194d7d3b25e88d19e51b220c4fdd576a10d5143ca67aa2203c27423a3b00","01a6429618667ac5889324940c1c18e080eba57125928094b192da999c7efb2c","a017a2e44282852cf8f799763747b4fa7a1694ef04d3303d0685ad8e076f792b","004d7accf2f827c2be9ad04df8e0507fce139c191a8acd96297335cd1083f02d","cf5193e836735bf54d3e75c43b3522b288ab21f9e9ba87f9a01fb3f42ea662eb","3e4f83136680b030708ab5c44dfc9406514122ff0160a394e3d44f22d219614e","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","460c943a08a0afe0dd28d51882678d330fbc3377da8c6e279e1021d3e76eb688","a3d52af4a6b66628f563a0b2499820f83bd2698226dd065fc055e7804d2d09ee","cd9a467f5075aec85536df96c77c781522eaecba0bb38db6ccfd315911f3e293","40a8c2e888af7994a3af75a05daffb3acaee6f88a7e69f66481eeda069d996aa","fb6984ab5bb67d742a59fb76d0a1fdebbdd6a4bb6b0a11dc9440d1077eb0760c","ab2408e282107e248e36f13a2e8e8d804b6367e95a01b250b900a7724014979d","df3e7e06a21603a2111f8a103dd6e2f8a4ed18022e1762d6d720fc01c3183ade","7cc5cb221d66d58ae385c18d6c62b74a6a7d12d2b80338bd6978d45bf4fad5ee","c5790d2644def85288c6aadb91ac93649d4205a1cd5dbbcf426744ed28169105","8b37cd94d44113aa6bee1a850645e0da38683821c2a887b4ae1171b67fe32a2a","a0d0c0233f30d1ee9e485298a59854ebd738423b0a60b16dc75c9146bae3c408","823dbf2f825b8b6de4d41c83810de61e548720a9d126c72f2904d8b651e21e11","39f6afe67366a97dbc1ac3aa11152839ba58d60ab30be2d46c365c48dc6aaaaf","6a47c94d8668d973c3883ce7f3de44514ee79778502627578c180b4688bb092e","7fd3a1f9ab827412af3b0f8e97bbcb00166c6bcf72338a9bb4507710747ffa73","cea4a0dcc24b9312b76a1643e938451c4030278dbeb981bade88dd557649a171","c6afa8bb575734b70f6af67b9067a148d802bcf6d063e0cb02b7c0911cc86fd7","f8a624b45665534483dbc0bda0bcaec2c24de6a381425c5ccb15b8bba8c4811b","cda4b937306127d067da907eb5075f7c8f77f8270e7eafb7d8bb079d2285ea0e","dd2321e93d6efa383546571bbf17ae867c82b68bea63db866c925f1e508100d4","496e44db4b702fe484a2648a5f2a4da8c283907dd5331e1ad67734788c56455e","bf7df7dfc9bea125117bcd871b8e90de89c88a9488dcf57d0fdf0a80100f30ad","9aecc45ebe4e4c198d3abd584a67eb40cd9a337dfddee4b99413317a33625970","7402dc89211dc283a3f843bf00c6d06aa0bb2d3f389b477aca89145ea6c71f9d","c730f5f3dc84cbbf19ff883a42ccc1260db7789537f9a2780680df6d6b2c44e0","ce227c8583b7c21c4f1dbda4a5ffac5e636c34ddbd2ed2c1648101b9ac15aa59","26db5ac1da138163255da99e045c1043c1b5e2f1dd878fb91a97a1c2b4b0de6a","2df827e3b21906bf03c35c30a022afc3f48fa6870eac9000e52408b95ff3a45d","c8039c0891311e974cd72560e369dff8ff15be8eecbf9ca9efbc35e82e99eaec","a8092d1046d5f8b33ada811dbf7be6fce2edcade19ac46d5af37118dc332b839","09294bd446763d2f436f59ebbf0dc929cae0302f2f87bcbb3847e4a1698667b8","f7e17676abfa9367422ef80811186f297a1ed27c331ded690114997262b1b1c2","19775410d2cf110456abe0ae822b1463296891e8711a24fd1444d1f3f6f60449","a27c303d08eb70d0c7ff8de5aab3262a1222a8767863e717be018070229ae087","cc55cbb6989aa4787dab04a13cfbc4eee533686645a8e3f9011c165d66b29ee9","82204ca4e5b24eb4c4a6796f95eff8e567f4c6c0c82ced09db305011f4238b02","673d078c35941767e9c67f8742b30e29a4422c875342a62a0c44c754df97067f","3ca462b84a92dff46d10aaea7926b530fed3af35462d3df7d7d89207ad16d61b","ce8094df88d9fd508c6a629ef157d7ee8cd2e03524fd452b760636c0158fd58b","ac9525cecc2c59f12426587923037da2f32e2deec9b783d9332ace2403f02759","1d1a6de811422b71d6c87b7d07551e237512e8af05ace7bb55d4bbb1967c0d6d","70252775f82069b9a1051cda57615c52bbe712a1524fd797e04803341da5c556","30933503390b71d54e743774f7deb57184d3d4b22c934769e7cea05610ad18b1","0e0f501dd14ea71608779d5b976712a44cc618cfa1f7ac5267400f35b93df9ad","c4da707eb3636872ba8ca9249b6e4c664c45c2fac24d155a34d33dbb3678d10f","4885b6bdd30eadae18f1cdc4e3c31744ea7891c1a65436f9e8499256309a3b4e","40c547668333ab3962ebd6196e1da7225e845c9bc047e9e4f691a371266a3878","1a40d2c7ff98b44950c39d2b0a47496a022bf75c7200e984c3a09b0a69ab57bc","252ea2c9e04478d11c92793b35e8a5081e1bb7a36352ccbf6e20b260ffa3e881","994731955c9a2744ae6128803e034ac95d4906088ea43a4e42dcc92d7a126a2f","052ff4b0385349c351836a228423b195c4bbebd8a48d2317493425964f915f7e","bd7b18c0a1a0e2b4344513197bf6f308fdd252424639f9d90f838db87b3a6b74","314002bc8356646c144cdf7b496bcd9668c40ba0a85565f4bf6b6c4ff8436942","96f94c0b1f5df6037103b6d2da7ecfcc2e196a79ba0118757e818ffc120390a3","3de2876e0ce2c057f9e20a3afb7d4af81aa4d741ee8ac42869933936a2f706f0","1109c94b828a2790d06674b48cba721bc31a56ec56186090a53937aabe2cf6d9","e2e2ed0e1d1af5248f6d8cf4f78df2dae35ead29e22ba91169beb71cfb39154c","bbaf4ce057aa062ef334733ce5c24edc1628b2341138694dd24f0488558dfc85","3aa3356742288a3271201a74f913d36a17e6ec13ac4756fa58bd2f0a84fdb5f2","e85b3cd3e4d1e703233d005ecbf64acd47411b0e7399030a82eee05377fa4384","544e687204ef10d5885305e6acad6f29cda9ca03ca4358651009961bc2159e83","8ce7a5e2fb97f7014ba5936686e867c6221781151dbc7aad6e697af2134e7542","7083099e061153000c82b45f68a58a66bd7f5617238418447987b2f1223103fd","8ce81234bb10ad63b2ec60314872e0f9de1309b6d8ee35bf4be418b8d5bcecf9","437905fc83aff1c75a637039271f8850aa24285a0393c5cf0619884df06d074f","a22c54a45ae419ccca9730f166e1822e39a027cbb35988b067124054746de84b","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","e38c73a455d11e2c5d9094e448f5e5ae1d9e7a5984ead6c819701f1a88219d4c","09fadcffbdda58022bb7456a1a4ae8cc3d0284baff03bed78b33b05104d8b828","e52f9e03b98d34fdf221ca67e6f7d4dbc3326df195bb492ea8084fc2edaceb7e","c839c6a54add2862d45691a3877a07b723b703a4865ad7ec5309d5d695257434","399e139cd6269ee8c982fbca22fe2f67a9d9b237e086e99b823825c16821df2e","f82348f8ac4f637d6ad76ef5d45577ccc0c59fbd25d8c44d55349a71a90e195a","8dfed5c91ad36e69e6da6b7e49be929d4e19666db2b651aa839c485170a2902c","f82348f8ac4f637d6ad76ef5d45577ccc0c59fbd25d8c44d55349a71a90e195a","4aaf84a5ac87bad3211f041fab85de5cc42e5954c3ed56842faf6f08167e6202","f82348f8ac4f637d6ad76ef5d45577ccc0c59fbd25d8c44d55349a71a90e195a","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","f82348f8ac4f637d6ad76ef5d45577ccc0c59fbd25d8c44d55349a71a90e195a","3b043cf9a81854a72963fdb57d1884fc4da1cf5be69b5e0a4c5b751e58cb6d88","f82348f8ac4f637d6ad76ef5d45577ccc0c59fbd25d8c44d55349a71a90e195a","d0b0a00cf31968a33baeaadf974ce4e5e7edf58cea5288765293f41ba5e72b3a","35f24e835d6346cb40bd3ae518d8545d15e622bc5ba5e790c1c7dda813451005","bc6dd50ac2fc9a7ca6488811b116bd0ddd606338db0bb97852c8fcf757e2d7f5","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","cdac7e46e615e1fdcca7c3a2aab2fbd19085443048733cf239a090f7a17efa27","b8a427b9fe88504a6fb092e21adfe272d144394a2ced7f9e4adc3de7efa6e216","3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba","de18acda71730bac52f4b256ce7511bb56cc21f6f114c59c46782eff2f632857","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","d8aab31ba8e618cc3eea10b0945de81cb93b7e8150a013a482332263b9305322","462bccdf75fcafc1ae8c30400c9425e1a4681db5d605d1a0edb4f990a54d8094","5923d8facbac6ecf7c84739a5c701a57af94a6f6648d6229a6c768cf28f0f8cb","7adecb2c3238794c378d336a8182d4c3dd2c4fa6fa1785e2797a3db550edea62","dc12dc0e5aa06f4e1a7692149b78f89116af823b9e1f1e4eae140cd3e0e674e6","1bfc6565b90c8771615cd8cfcf9b36efc0275e5e83ac7d9181307e96eb495161","8a8a96898906f065f296665e411f51010b51372fa260d5373bf9f64356703190","7f82ef88bdb67d9a850dd1c7cd2d690f33e0f0acd208e3c9eba086f3670d4f73","f014d6d053cb1840965952268a589c9e2a74d66c8c88286562d5699350e28e19","66851b263230decb3684072b2cb777f70ea3e52d4489b88f78f185618d4d398e",{"version":"3fe15a491a792852283caeece8142bc7427a29c183d9fec8691d95a49c8932a1","affectsGlobalScope":true},"0359682c54e487c4cab2b53b2b4d35cc8dea4d9914bc6abcdb5701f8b8e745a4","96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","fec943fdb3275eb6e006b35e04a8e2e99e9adf3f4b969ddf15315ac7575a93e4","675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8","fe4a2042d087990ebfc7dc0142d5aaf5a152e4baea86b45f283f103ec1e871ea","d70c026dd2eeaa974f430ea229230a1897fdb897dc74659deebe2afd4feeb08f","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6","ca59fe42b81228a317812e95a2e72ccc8c7f1911b5f0c2a032adf41a0161ec5d","9364c7566b0be2f7b70ff5285eb34686f83ccb01bda529b82d23b2a844653bfb","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","ae9930989ed57478eb03b9b80ad3efa7a3eacdfeff0f78ecf7894c4963a64f93","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","3e59f00ab03c33717b3130066d4debb272da90eeded4935ff0604c2bc25a5cae","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9",{"version":"0714e2046df66c0e93c3330d30dbc0565b3e8cd3ee302cf99e4ede6220e5fec8","affectsGlobalScope":true},"2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","a73a445c1e0a6d0f8b48e8eb22dc9d647896783a7f8991cbbc31c0d94bf1f5a2","f58599a92d4a64416f4999a4d7241e1647aec2a6249214892722f712a6eedbe0","f7b46d22a307739c145e5fddf537818038fdfffd580d79ed717f4d4d37249380","9df147746b0cbd11d022b564e6fdd43ac79b643dc579d2123317ee01cc4f0d70","ef262a6df9ce297cedb823a4139694af75c7f60b2433ccc88c3b5dba8fdb5e08","313e4e39d6177365a827d01e7491fd05fd4937fc50c4473bea7e4ccb01cb6d4a",{"version":"ecf78e637f710f340ec08d5d92b3f31b134a46a4fcf2e758690d8c46ce62cba6","affectsGlobalScope":true},"ea0aa24a32c073b8639aa1f3130ba0add0f0f2f76b314d9ba988a5cb91d7e3c4","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"952b1b525b4d0744cbba084fc84669d174a8b5d018180d346c7a3c28a242bc1e","affectsGlobalScope":true},{"version":"1c0c88fb3528530c325b6f09538976e73123a9a197a4da7a9ea0f9c8df5fc64e","affectsGlobalScope":true},"3cfb0cb51cc2c2e1b313d7c4df04dbf7e5bda0a133c6b309bf6af77cf614b971","74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57","3dce33e7eb25594863b8e615f14a45ab98190d85953436750644212d8a18c066","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","cd286ff5c5a492793030e45cbe21b5b4253039a4c3d22cbd53258815a604ec99","fab58e600970e66547644a44bc9918e3223aa2cbd9e8763cec004b2cfb48827e","b4358a89fcd9c579f84a6c68e2ce44ca91b07e4db3f8f403c2b7a72c1a1e04b6","f7e133b20ee2669b6c0e5d7f0cd510868c57cd64b283e68c7f598e30ce9d76d2","6ba73232c9d3267ca36ddb83e335d474d2c0e167481e3dec416c782894e11438"],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"emitDecoratorMetadata":true,"experimentalDecorators":true,"module":1,"outDir":"./","removeComments":true,"sourceMap":true,"target":4},"fileIdsList":[[349],[349,362],[349,362,363,365,367,369],[349,362,365],[349,356],[324,349],[349,378,406],[349,377,383],[349,388],[349,383],[349,382],[349,400],[349,396],[349,378,395,406],[349,377,378,379,380,381,382,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407],[349,409],[322,349,356],[349,412],[349,413],[349,423,425],[349,424],[321,349,356],[349,430,432,433,434,435,436,437,438,439,440,441,442],[349,430,431,433,434,435,436,437,438,439,440,441,442],[349,431,432,433,434,435,436,437,438,439,440,441,442],[349,430,431,432,434,435,436,437,438,439,440,441,442],[349,430,431,432,433,435,436,437,438,439,440,441,442],[349,430,431,432,433,434,436,437,438,439,440,441,442],[349,430,431,432,433,434,435,437,438,439,440,441,442],[349,430,431,432,433,434,435,436,438,439,440,441,442],[349,430,431,432,433,434,435,436,437,439,440,441,442],[349,430,431,432,433,434,435,436,437,438,440,441,442],[349,430,431,432,433,434,435,436,437,438,439,441,442],[349,430,431,432,433,434,435,436,437,438,439,440,442],[349,430,431,432,433,434,435,436,437,438,439,440,441],[306,349],[309,349],[310,315,349],[311,321,322,329,338,348,349],[311,312,321,329,349],[313,349],[314,315,322,330,349],[315,338,345,349],[316,318,321,329,349],[317,349],[318,319,349],[320,321,349],[321,349],[321,322,323,338,348,349],[321,322,323,338,349],[349,353],[324,329,338,348,349],[321,322,324,325,329,338,345,348,349],[324,326,338,345,348,349],[306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355],[321,327,349],[328,348,349],[318,321,329,338,349],[330,349],[331,349],[309,332,349],[333,347,349,353],[334,349],[335,349],[321,336,349],[336,337,349,351],[321,338,339,340,349],[338,340,349],[338,339,349],[341,349],[342,349],[321,343,344,349],[343,344,349],[315,329,338,345,349],[346,349],[329,347,349],[310,324,335,348,349],[315,349],[338,349,350],[349,351],[349,352],[310,315,321,323,332,338,348,349,351,353],[338,349,354],[349,447,448],[349,447],[349,446,450,451,452],[324,338,349,356],[321,324,326,338,345,348,349,354,356],[349,462],[349,416,419],[349,416,419,420,421],[349,418],[349,415,422],[349,417],[52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,68,70,71,72,73,74,75,76,77,78,79,80,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,108,109,110,111,112,113,114,115,116,117,119,121,122,123,124,125,127,128,129,130,131,132,133,134,135,136,137,138,139,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,171,172,173,175,183,185,186,187,188,189,190,192,193,195,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,349],[97,349],[55,56,349],[52,53,54,56,349],[53,56,349],[56,97,349],[52,56,174,349],[54,55,56,349],[52,56,349],[56,349],[55,349],[52,55,97,349],[53,55,56,212,349],[55,56,212,349],[55,220,349],[53,55,56,349],[65,349],[88,349],[109,349],[55,56,97,349],[56,104,349],[55,56,97,115,349],[55,56,115,349],[56,156,349],[52,56,175,349],[181,182,349],[52,56,174,181,349],[174,175,182,349],[181,349],[52,56,181,182,349],[196,349],[191,349],[194,349],[53,55,175,176,177,178,349],[97,175,176,177,178,349],[175,177,349],[55,176,177,179,180,183,349],[52,55,349],[56,198,349],[57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,98,99,100,101,102,103,105,106,107,108,109,110,111,112,113,114,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,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,349],[184,349],[241,254,271,277,281,285,349],[241,254,271,277,278,280,349],[241,254,277,278,280,281,282,285,349],[241,254,271,277,281,349],[282,283,349],[272,280,281,284,349],[254,277,349],[278,279,349],[241,254,277,278,281,285,349],[277,285,349],[45,349],[241,242,243,277,349],[46,239,242,244,254,349],[241,349],[239,241,257,349],[44,45,241,349],[46,242,243,244,255,256,257,258,259,260,261,262,263,264,265,266,273,274,275,276,349],[46,241,242,259,349],[239,242,254,260,349],[241,242,244,260,349],[239,242,254,260,262,349],[241,242,277,349],[239,242,254,260,264,349],[239,241,243,254,260,349],[239,254,271,272,277,285,349],[239,242,254,260,275,349],[241,254,271,277,285,286,304,349],[239,241,277,349],[239,241,349],[287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,349],[239,295,349],[44,45,349],[45,47,48,49,50,51,240,349],[239,349],[267,349],[254,267,277,349],[267,268,269,270,349],[241,267,349],[245,246,247,248,249,250,251,252,253,349],[241,245,246,277,349],[241,246,254,277,349],[241,277,349],[239,245,246,277,349],[241,245,349],[349,358],[305,322,349,358],[305,322,331,349,357]],"referencedMap":[[364,1],[365,2],[371,3],[370,1],[363,2],[362,1],[367,4],[366,1],[369,2],[368,1],[357,5],[372,1],[373,5],[374,1],[375,1],[376,6],[377,1],[379,7],[380,7],[381,1],[382,1],[384,8],[385,1],[386,1],[387,7],[388,1],[389,1],[390,9],[391,1],[392,1],[393,10],[394,1],[395,11],[396,1],[397,1],[398,1],[399,1],[402,1],[401,12],[378,1],[403,13],[404,1],[400,1],[405,1],[406,7],[407,14],[408,15],[410,16],[409,5],[383,1],[411,17],[412,1],[413,18],[414,19],[426,20],[425,21],[424,1],[427,1],[428,1],[429,22],[431,23],[432,24],[430,25],[433,26],[434,27],[435,28],[436,29],[437,30],[438,31],[439,32],[440,33],[441,34],[442,35],[306,36],[307,36],[309,37],[310,38],[311,39],[312,40],[313,41],[314,42],[315,43],[316,44],[317,45],[318,46],[319,46],[320,47],[321,48],[322,49],[323,50],[308,51],[355,1],[324,52],[325,53],[326,54],[356,55],[327,56],[328,57],[329,58],[330,59],[331,60],[332,61],[333,62],[334,63],[335,64],[336,65],[337,66],[338,67],[340,68],[339,69],[341,70],[342,71],[343,72],[344,73],[345,74],[346,75],[347,76],[348,77],[349,78],[350,79],[351,80],[352,81],[353,82],[354,83],[443,1],[444,5],[445,1],[446,1],[449,84],[448,85],[450,1],[453,86],[454,5],[455,87],[456,1],[452,1],[457,5],[458,1],[459,1],[460,1],[461,88],[462,1],[463,89],[415,1],[451,1],[44,1],[416,1],[420,90],[422,91],[421,90],[419,92],[423,93],[418,94],[417,1],[239,95],[212,1],[190,96],[188,96],[104,97],[55,98],[54,99],[189,100],[175,101],[97,102],[53,103],[52,104],[238,99],[203,105],[202,105],[115,106],[210,97],[211,97],[213,107],[214,97],[215,104],[216,97],[187,97],[217,97],[218,108],[219,97],[220,105],[221,109],[222,97],[223,97],[224,97],[225,97],[226,105],[227,97],[228,97],[229,97],[230,97],[231,110],[232,97],[233,97],[234,97],[235,97],[236,97],[57,104],[58,104],[59,97],[60,104],[61,104],[62,104],[63,104],[64,97],[66,111],[67,104],[65,104],[68,104],[69,104],[70,104],[71,104],[72,104],[73,104],[74,97],[75,104],[76,104],[77,104],[78,104],[79,104],[80,97],[81,104],[82,97],[83,104],[84,104],[85,104],[86,104],[87,97],[89,112],[88,104],[90,104],[91,104],[92,104],[93,104],[94,110],[95,97],[96,97],[110,113],[98,114],[99,104],[100,104],[101,97],[102,104],[103,104],[105,115],[106,104],[107,104],[108,104],[109,104],[111,104],[112,104],[113,104],[114,104],[116,116],[117,104],[118,104],[119,104],[120,97],[121,104],[122,117],[123,117],[124,117],[125,97],[126,104],[127,104],[128,104],[133,104],[129,104],[130,97],[131,104],[132,97],[134,97],[135,104],[136,104],[137,97],[138,97],[139,104],[140,97],[141,104],[142,104],[143,97],[144,104],[145,104],[146,104],[147,104],[148,104],[149,104],[150,104],[151,104],[152,104],[153,104],[154,104],[155,104],[156,104],[157,118],[158,104],[159,104],[160,104],[161,104],[162,104],[163,104],[164,97],[165,97],[166,97],[167,97],[168,97],[169,104],[170,104],[171,104],[172,104],[237,97],[174,119],[196,120],[191,120],[182,121],[181,122],[194,123],[183,124],[197,125],[192,126],[193,123],[195,127],[186,1],[179,128],[180,129],[177,1],[178,130],[176,104],[184,131],[56,132],[204,1],[205,1],[206,1],[207,1],[208,1],[209,1],[198,1],[201,105],[200,1],[199,133],[173,134],[185,135],[447,85],[272,136],[281,137],[283,138],[282,139],[284,140],[285,141],[278,142],[280,143],[279,144],[286,145],[46,146],[244,147],[255,148],[257,149],[258,150],[259,151],[242,149],[256,149],[277,152],[260,153],[261,154],[262,155],[263,156],[264,157],[265,158],[243,157],[266,159],[273,160],[274,1],[275,157],[276,161],[305,162],[287,163],[288,164],[289,163],[290,164],[291,164],[292,164],[304,165],[293,164],[294,164],[295,1],[296,164],[297,164],[298,164],[299,164],[300,164],[301,163],[302,166],[303,164],[51,1],[47,1],[45,167],[241,168],[48,1],[49,1],[240,169],[50,1],[270,170],[268,171],[271,172],[269,173],[267,1],[254,174],[248,175],[249,176],[250,175],[251,175],[252,175],[245,177],[253,175],[247,178],[246,179],[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],[359,180],[360,181],[361,181],[358,182]],"exportedModulesMap":[[364,1],[365,2],[371,3],[370,1],[363,2],[362,1],[367,4],[366,1],[369,2],[368,1],[357,5],[372,1],[373,5],[374,1],[375,1],[376,6],[377,1],[379,7],[380,7],[381,1],[382,1],[384,8],[385,1],[386,1],[387,7],[388,1],[389,1],[390,9],[391,1],[392,1],[393,10],[394,1],[395,11],[396,1],[397,1],[398,1],[399,1],[402,1],[401,12],[378,1],[403,13],[404,1],[400,1],[405,1],[406,7],[407,14],[408,15],[410,16],[409,5],[383,1],[411,17],[412,1],[413,18],[414,19],[426,20],[425,21],[424,1],[427,1],[428,1],[429,22],[431,23],[432,24],[430,25],[433,26],[434,27],[435,28],[436,29],[437,30],[438,31],[439,32],[440,33],[441,34],[442,35],[306,36],[307,36],[309,37],[310,38],[311,39],[312,40],[313,41],[314,42],[315,43],[316,44],[317,45],[318,46],[319,46],[320,47],[321,48],[322,49],[323,50],[308,51],[355,1],[324,52],[325,53],[326,54],[356,55],[327,56],[328,57],[329,58],[330,59],[331,60],[332,61],[333,62],[334,63],[335,64],[336,65],[337,66],[338,67],[340,68],[339,69],[341,70],[342,71],[343,72],[344,73],[345,74],[346,75],[347,76],[348,77],[349,78],[350,79],[351,80],[352,81],[353,82],[354,83],[443,1],[444,5],[445,1],[446,1],[449,84],[448,85],[450,1],[453,86],[454,5],[455,87],[456,1],[452,1],[457,5],[458,1],[459,1],[460,1],[461,88],[462,1],[463,89],[415,1],[451,1],[44,1],[416,1],[420,90],[422,91],[421,90],[419,92],[423,93],[418,94],[417,1],[239,95],[212,1],[190,96],[188,96],[104,97],[55,98],[54,99],[189,100],[175,101],[97,102],[53,103],[52,104],[238,99],[203,105],[202,105],[115,106],[210,97],[211,97],[213,107],[214,97],[215,104],[216,97],[187,97],[217,97],[218,108],[219,97],[220,105],[221,109],[222,97],[223,97],[224,97],[225,97],[226,105],[227,97],[228,97],[229,97],[230,97],[231,110],[232,97],[233,97],[234,97],[235,97],[236,97],[57,104],[58,104],[59,97],[60,104],[61,104],[62,104],[63,104],[64,97],[66,111],[67,104],[65,104],[68,104],[69,104],[70,104],[71,104],[72,104],[73,104],[74,97],[75,104],[76,104],[77,104],[78,104],[79,104],[80,97],[81,104],[82,97],[83,104],[84,104],[85,104],[86,104],[87,97],[89,112],[88,104],[90,104],[91,104],[92,104],[93,104],[94,110],[95,97],[96,97],[110,113],[98,114],[99,104],[100,104],[101,97],[102,104],[103,104],[105,115],[106,104],[107,104],[108,104],[109,104],[111,104],[112,104],[113,104],[114,104],[116,116],[117,104],[118,104],[119,104],[120,97],[121,104],[122,117],[123,117],[124,117],[125,97],[126,104],[127,104],[128,104],[133,104],[129,104],[130,97],[131,104],[132,97],[134,97],[135,104],[136,104],[137,97],[138,97],[139,104],[140,97],[141,104],[142,104],[143,97],[144,104],[145,104],[146,104],[147,104],[148,104],[149,104],[150,104],[151,104],[152,104],[153,104],[154,104],[155,104],[156,104],[157,118],[158,104],[159,104],[160,104],[161,104],[162,104],[163,104],[164,97],[165,97],[166,97],[167,97],[168,97],[169,104],[170,104],[171,104],[172,104],[237,97],[174,119],[196,120],[191,120],[182,121],[181,122],[194,123],[183,124],[197,125],[192,126],[193,123],[195,127],[186,1],[179,128],[180,129],[177,1],[178,130],[176,104],[184,131],[56,132],[204,1],[205,1],[206,1],[207,1],[208,1],[209,1],[198,1],[201,105],[200,1],[199,133],[173,134],[185,135],[447,85],[272,136],[281,137],[283,138],[282,139],[284,140],[285,141],[278,142],[280,143],[279,144],[286,145],[46,146],[244,147],[255,148],[257,149],[258,150],[259,151],[242,149],[256,149],[277,152],[260,153],[261,154],[262,155],[263,156],[264,157],[265,158],[243,157],[266,159],[273,160],[274,1],[275,157],[276,161],[305,162],[287,163],[288,164],[289,163],[290,164],[291,164],[292,164],[304,165],[293,164],[294,164],[295,1],[296,164],[297,164],[298,164],[299,164],[300,164],[301,163],[302,166],[303,164],[51,1],[47,1],[45,167],[241,168],[48,1],[49,1],[240,169],[50,1],[270,170],[268,171],[271,172],[269,173],[267,1],[254,174],[248,175],[249,176],[250,175],[251,175],[252,175],[245,177],[253,175],[247,178],[246,179],[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],[359,180],[360,181],[361,181],[358,182]],"semanticDiagnosticsPerFile":[364,365,371,370,363,362,367,366,369,368,357,372,373,374,375,376,377,379,380,381,382,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,402,401,378,403,404,400,405,406,407,408,410,409,383,411,412,413,414,426,425,424,427,428,429,431,432,430,433,434,435,436,437,438,439,440,441,442,306,307,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,308,355,324,325,326,356,327,328,329,330,331,332,333,334,335,336,337,338,340,339,341,342,343,344,345,346,347,348,349,350,351,352,353,354,443,444,445,446,449,448,450,453,454,455,456,452,457,458,459,460,461,462,463,415,451,44,416,420,422,421,419,423,418,417,239,212,190,188,104,55,54,189,175,97,53,52,238,203,202,115,210,211,213,214,215,216,187,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,57,58,59,60,61,62,63,64,66,67,65,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,89,88,90,91,92,93,94,95,96,110,98,99,100,101,102,103,105,106,107,108,109,111,112,113,114,116,117,118,119,120,121,122,123,124,125,126,127,128,133,129,130,131,132,134,135,136,137,138,139,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,237,174,196,191,182,181,194,183,197,192,193,195,186,179,180,177,178,176,184,56,204,205,206,207,208,209,198,201,200,199,173,185,447,272,281,283,282,284,285,278,280,279,286,46,244,255,257,258,259,242,256,277,260,261,262,263,264,265,243,266,273,274,275,276,305,287,288,289,290,291,292,304,293,294,295,296,297,298,299,300,301,302,303,51,47,45,241,48,49,240,50,270,268,271,269,267,254,248,249,250,251,252,245,253,247,246,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,359,360,361,358]},"version":"4.6.3"}
|
package/jestconfig.json
DELETED
|
@@ -1,13 +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
|
-
"testTimeout": 100000
|
|
13
|
-
}
|