beancount 0.0.29 → 0.0.31

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.
@@ -81,7 +81,7 @@ export declare abstract class Entry {
81
81
  * Converts an entry to a JSON-serializable object.
82
82
  * @returns A JSON-serializable representation of this entry
83
83
  */
84
- toJSON(): this;
84
+ toJSON(): Record<string, unknown>;
85
85
  }
86
86
  /**
87
87
  * Type assertion helper to ensure a class conforms to EntryConstructor.
@@ -54,9 +54,7 @@ export declare class Transaction extends DateEntry {
54
54
  *
55
55
  * @returns A JSON-serializable representation of this transaction
56
56
  */
57
- toJSON(): this & {
58
- links: string[];
59
- };
57
+ toJSON(): Record<string, unknown>;
60
58
  /**
61
59
  * Transforms JSON data before creating a Transaction instance.
62
60
  * Deserializes transaction-specific properties including postings, tags, links, and metadata.
package/build/src/cli.mjs CHANGED
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import fs from 'node:fs';
6
6
  import { parseArgs } from 'node:util';
7
- import { parse } from './parse.mjs';
7
+ import { parseFile } from './parseFile.mjs';
8
8
  /**
9
9
  * Display help message
10
10
  * @param toStderr Whether to output to stderr (for error cases) or stdout
@@ -37,9 +37,9 @@ Examples:
37
37
  * @param write Whether to write the formatted content back to the file
38
38
  * @param currencyColumn Currency column number, or null to auto-calculate
39
39
  * @param force Wether to also format files with 0 entries, defaults to false
40
- * @returns true if successful, false if an error occurred
40
+ * @returns Resolves to true if successful, false if an error occurred
41
41
  */
42
- function formatFile(filePath, write, currencyColumn, force = false) {
42
+ async function formatFile(filePath, write, currencyColumn, force = false) {
43
43
  try {
44
44
  // Check if path is a directory
45
45
  const stats = fs.statSync(filePath);
@@ -47,10 +47,8 @@ function formatFile(filePath, write, currencyColumn, force = false) {
47
47
  console.error(`Error processing ${filePath}: is a directory, not a file`);
48
48
  return false;
49
49
  }
50
- // Read file content
51
- const content = fs.readFileSync(filePath, 'utf-8');
52
- // Parse the beancount file
53
- const parseResult = parse(content);
50
+ // Read and parse the beancount file
51
+ const parseResult = await parseFile(filePath);
54
52
  // check if we have any non-comment non-blankline entries
55
53
  if (!force &&
56
54
  parseResult.entries.length ===
@@ -80,7 +78,7 @@ function formatFile(filePath, write, currencyColumn, force = false) {
80
78
  /**
81
79
  * Main CLI entry point
82
80
  */
83
- function main() {
81
+ async function main() {
84
82
  try {
85
83
  const { values, positionals } = parseArgs({
86
84
  args: process.argv.slice(2),
@@ -116,7 +114,7 @@ function main() {
116
114
  // Process each file
117
115
  let hadErrors = false;
118
116
  for (const filePath of positionals) {
119
- const success = formatFile(filePath, values.write ?? false, currencyColumn, values.force);
117
+ const success = await formatFile(filePath, values.write ?? false, currencyColumn, values.force);
120
118
  if (!success) {
121
119
  hadErrors = true;
122
120
  }
@@ -131,4 +129,6 @@ function main() {
131
129
  }
132
130
  }
133
131
  // Run the CLI
134
- main();
132
+ main().catch((err) => {
133
+ throw err;
134
+ });
@@ -0,0 +1,141 @@
1
+ import { Entry } from './classes/Entry.mjs';
2
+ /**
3
+ * Deserializes a single entry from its JSON representation.
4
+ *
5
+ * This function takes a plain JavaScript object (typically from JSON.parse)
6
+ * and reconstructs the appropriate Entry subclass instance. It validates
7
+ * the input and provides helpful error messages for common issues.
8
+ *
9
+ * @param entryData - Plain object containing entry data with a 'type' field
10
+ * @returns An Entry instance of the appropriate subclass
11
+ * @throws {Error} If the entry data is invalid:
12
+ * - Missing or invalid 'type' field
13
+ * - Unknown entry type
14
+ * - Invalid entry structure (errors from Entry.fromJSONData)
15
+ *
16
+ * @example
17
+ * Deserializing a simple entry:
18
+ * ```typescript
19
+ * const entryData = {
20
+ * type: 'open',
21
+ * date: '2024-01-01',
22
+ * account: 'Assets:Checking'
23
+ * }
24
+ * const entry = deserializeEntry(entryData)
25
+ * console.log(entry.type) // 'open'
26
+ * ```
27
+ *
28
+ * @example
29
+ * Deserializing from JSON.parse:
30
+ * ```typescript
31
+ * const json = '{"type":"balance","date":"2024-01-02","account":"Assets:Checking","amount":"100","currency":"USD"}'
32
+ * const entryData = JSON.parse(json)
33
+ * const entry = deserializeEntry(entryData)
34
+ * ```
35
+ */
36
+ export declare function deserializeEntry(entryData: Record<string, unknown>): Entry;
37
+ /**
38
+ * Deserializes a single entry from a JSON string.
39
+ *
40
+ * This function parses a JSON string containing an entry object
41
+ * and reconstructs the appropriate Entry subclass instance.
42
+ *
43
+ * @param jsonString - JSON string containing an entry object
44
+ * @returns An Entry instance of the appropriate subclass
45
+ * @throws {Error} If the JSON is invalid or entry cannot be deserialized:
46
+ * - Invalid JSON syntax
47
+ * - JSON does not contain an object
48
+ * - Entry validation errors (see deserializeEntry)
49
+ *
50
+ * @example
51
+ * Deserializing from a JSON string:
52
+ * ```typescript
53
+ * const json = '{"type":"open","date":"2024-01-01","account":"Assets:Checking"}'
54
+ * const entry = deserializeEntryFromString(json)
55
+ * console.log(entry.type) // 'open'
56
+ * ```
57
+ *
58
+ * @example
59
+ * Roundtrip serialization:
60
+ * ```typescript
61
+ * const original = Open.fromString('2024-01-01 open Assets:Checking')
62
+ * const json = JSON.stringify(original.toJSON())
63
+ * const deserialized = deserializeEntryFromString(json)
64
+ * // deserialized equals original
65
+ * ```
66
+ */
67
+ export declare function deserializeEntryFromString(jsonString: string): Entry;
68
+ /**
69
+ * Deserializes an array of entries from their JSON representations.
70
+ *
71
+ * This function takes an array of plain JavaScript objects (typically from JSON.parse)
72
+ * and reconstructs each as the appropriate Entry subclass instance. It validates
73
+ * the input and provides helpful error messages, including the index of any entry
74
+ * that fails to deserialize.
75
+ *
76
+ * @param entriesData - Array of plain objects containing entry data
77
+ * @returns Array of Entry instances
78
+ * @throws {Error} If the input is invalid or entries cannot be deserialized:
79
+ * - Input is not an array
80
+ * - Any entry fails validation (see deserializeEntry)
81
+ *
82
+ * @example
83
+ * Deserializing an array of entries:
84
+ * ```typescript
85
+ * const entriesData = [
86
+ * { type: 'open', date: '2024-01-01', account: 'Assets:Checking' },
87
+ * { type: 'balance', date: '2024-01-02', account: 'Assets:Checking', amount: '100', currency: 'USD' }
88
+ * ]
89
+ * const entries = deserializeEntries(entriesData)
90
+ * console.log(entries.length) // 2
91
+ * ```
92
+ *
93
+ * @example
94
+ * Roundtrip with JSON.parse:
95
+ * ```typescript
96
+ * const original = [Open.fromString('2024-01-01 open Assets:Checking')]
97
+ * const json = JSON.stringify(original.map(e => e.toJSON()))
98
+ * const parsed = JSON.parse(json)
99
+ * const deserialized = deserializeEntries(parsed)
100
+ * // deserialized equals original
101
+ * ```
102
+ */
103
+ export declare function deserializeEntries(entriesData: Record<string, unknown>[]): Entry[];
104
+ /**
105
+ * Deserializes an array of entries from a JSON string.
106
+ *
107
+ * This function parses a JSON string containing an array of entry objects
108
+ * and reconstructs each entry as the appropriate Entry subclass instance.
109
+ * It validates the input and provides helpful error messages, including
110
+ * the index of any entry that fails to deserialize.
111
+ *
112
+ * @param jsonString - JSON string containing an array of entry objects
113
+ * @returns Array of Entry instances
114
+ * @throws {Error} If the JSON is invalid or entries cannot be deserialized:
115
+ * - Invalid JSON syntax
116
+ * - JSON does not contain an array
117
+ * - Any entry fails validation (see deserializeEntry)
118
+ *
119
+ * @example
120
+ * Deserializing multiple entries:
121
+ * ```typescript
122
+ * const json = '[
123
+ * {"type": "open", "date": "2024-01-01", "account": "Assets:Checking"},
124
+ * {"type": "balance", "date": "2024-01-02", "account": "Assets:Checking", "amount": "100", "currency": "USD"}
125
+ * ]'
126
+ * const entries = deserializeEntries(json)
127
+ * console.log(entries.length) // 2
128
+ * ```
129
+ *
130
+ * @example
131
+ * Roundtrip serialization:
132
+ * ```typescript
133
+ * import { parse } from 'beancount'
134
+ *
135
+ * const original = parse('2024-01-01 open Assets:Checking')
136
+ * const json = JSON.stringify(original.entries.map(e => e.toJSON()))
137
+ * const deserialized = deserializeEntries(json)
138
+ * // deserialized equals original.entries
139
+ * ```
140
+ */
141
+ export declare function deserializeEntriesFromString(jsonString: string): Entry[];
@@ -0,0 +1,229 @@
1
+ import { entryTypeToClass } from './entryTypeToClass.mjs';
2
+ /**
3
+ * Deserializes a single entry from its JSON representation.
4
+ *
5
+ * This function takes a plain JavaScript object (typically from JSON.parse)
6
+ * and reconstructs the appropriate Entry subclass instance. It validates
7
+ * the input and provides helpful error messages for common issues.
8
+ *
9
+ * @param entryData - Plain object containing entry data with a 'type' field
10
+ * @returns An Entry instance of the appropriate subclass
11
+ * @throws {Error} If the entry data is invalid:
12
+ * - Missing or invalid 'type' field
13
+ * - Unknown entry type
14
+ * - Invalid entry structure (errors from Entry.fromJSONData)
15
+ *
16
+ * @example
17
+ * Deserializing a simple entry:
18
+ * ```typescript
19
+ * const entryData = {
20
+ * type: 'open',
21
+ * date: '2024-01-01',
22
+ * account: 'Assets:Checking'
23
+ * }
24
+ * const entry = deserializeEntry(entryData)
25
+ * console.log(entry.type) // 'open'
26
+ * ```
27
+ *
28
+ * @example
29
+ * Deserializing from JSON.parse:
30
+ * ```typescript
31
+ * const json = '{"type":"balance","date":"2024-01-02","account":"Assets:Checking","amount":"100","currency":"USD"}'
32
+ * const entryData = JSON.parse(json)
33
+ * const entry = deserializeEntry(entryData)
34
+ * ```
35
+ */
36
+ export function deserializeEntry(entryData) {
37
+ // Validate input is an object
38
+ if (!entryData || typeof entryData !== 'object') {
39
+ throw new Error(`Invalid entry data: expected an object but received ${typeof entryData}`);
40
+ }
41
+ // Validate 'type' field exists
42
+ if (!('type' in entryData)) {
43
+ throw new Error('Invalid entry data: missing required "type" field. ' +
44
+ 'Entry data must include a "type" property indicating the entry type.');
45
+ }
46
+ // Validate 'type' is a string
47
+ if (typeof entryData.type !== 'string') {
48
+ throw new Error(`Invalid entry data: "type" field must be a string, but received ${typeof entryData.type}`);
49
+ }
50
+ const entryType = entryData.type;
51
+ // Validate entry type is recognized
52
+ const EntryClass = entryTypeToClass[entryType];
53
+ if (!EntryClass) {
54
+ throw new Error(`Unknown entry type: "${entryType}". ` +
55
+ `Valid entry types are: ${Object.keys(entryTypeToClass).join(', ')}`);
56
+ }
57
+ // Attempt to deserialize the entry
58
+ try {
59
+ return EntryClass.fromJSONData(entryData);
60
+ }
61
+ catch (error) {
62
+ // Wrap errors from fromJSONData with additional context
63
+ const errorMessage = error instanceof Error ? error.message : String(error);
64
+ throw new Error(`Failed to deserialize ${entryType} entry: ${errorMessage}`);
65
+ }
66
+ }
67
+ /**
68
+ * Deserializes a single entry from a JSON string.
69
+ *
70
+ * This function parses a JSON string containing an entry object
71
+ * and reconstructs the appropriate Entry subclass instance.
72
+ *
73
+ * @param jsonString - JSON string containing an entry object
74
+ * @returns An Entry instance of the appropriate subclass
75
+ * @throws {Error} If the JSON is invalid or entry cannot be deserialized:
76
+ * - Invalid JSON syntax
77
+ * - JSON does not contain an object
78
+ * - Entry validation errors (see deserializeEntry)
79
+ *
80
+ * @example
81
+ * Deserializing from a JSON string:
82
+ * ```typescript
83
+ * const json = '{"type":"open","date":"2024-01-01","account":"Assets:Checking"}'
84
+ * const entry = deserializeEntryFromString(json)
85
+ * console.log(entry.type) // 'open'
86
+ * ```
87
+ *
88
+ * @example
89
+ * Roundtrip serialization:
90
+ * ```typescript
91
+ * const original = Open.fromString('2024-01-01 open Assets:Checking')
92
+ * const json = JSON.stringify(original.toJSON())
93
+ * const deserialized = deserializeEntryFromString(json)
94
+ * // deserialized equals original
95
+ * ```
96
+ */
97
+ export function deserializeEntryFromString(jsonString) {
98
+ // Validate input
99
+ if (typeof jsonString !== 'string') {
100
+ throw new Error(`Invalid input: expected a JSON string but received ${typeof jsonString}`);
101
+ }
102
+ // Parse JSON with error handling
103
+ let entryData;
104
+ try {
105
+ entryData = JSON.parse(jsonString);
106
+ }
107
+ catch (error) {
108
+ const errorMessage = error instanceof Error ? error.message : String(error);
109
+ throw new Error(`Failed to parse JSON: ${errorMessage}`);
110
+ }
111
+ // Validate parsed data is an object (not array or null)
112
+ if (entryData === null || typeof entryData !== 'object') {
113
+ throw new Error(`Invalid JSON structure: expected an object but received ${entryData === null ? 'null' : typeof entryData}`);
114
+ }
115
+ if (Array.isArray(entryData)) {
116
+ throw new Error('Invalid JSON structure: expected an object but received an array');
117
+ }
118
+ return deserializeEntry(entryData);
119
+ }
120
+ /**
121
+ * Deserializes an array of entries from their JSON representations.
122
+ *
123
+ * This function takes an array of plain JavaScript objects (typically from JSON.parse)
124
+ * and reconstructs each as the appropriate Entry subclass instance. It validates
125
+ * the input and provides helpful error messages, including the index of any entry
126
+ * that fails to deserialize.
127
+ *
128
+ * @param entriesData - Array of plain objects containing entry data
129
+ * @returns Array of Entry instances
130
+ * @throws {Error} If the input is invalid or entries cannot be deserialized:
131
+ * - Input is not an array
132
+ * - Any entry fails validation (see deserializeEntry)
133
+ *
134
+ * @example
135
+ * Deserializing an array of entries:
136
+ * ```typescript
137
+ * const entriesData = [
138
+ * { type: 'open', date: '2024-01-01', account: 'Assets:Checking' },
139
+ * { type: 'balance', date: '2024-01-02', account: 'Assets:Checking', amount: '100', currency: 'USD' }
140
+ * ]
141
+ * const entries = deserializeEntries(entriesData)
142
+ * console.log(entries.length) // 2
143
+ * ```
144
+ *
145
+ * @example
146
+ * Roundtrip with JSON.parse:
147
+ * ```typescript
148
+ * const original = [Open.fromString('2024-01-01 open Assets:Checking')]
149
+ * const json = JSON.stringify(original.map(e => e.toJSON()))
150
+ * const parsed = JSON.parse(json)
151
+ * const deserialized = deserializeEntries(parsed)
152
+ * // deserialized equals original
153
+ * ```
154
+ */
155
+ export function deserializeEntries(entriesData) {
156
+ // Validate input is an array
157
+ if (!Array.isArray(entriesData)) {
158
+ throw new Error(`Invalid input: expected an array but received ${typeof entriesData}`);
159
+ }
160
+ // Deserialize each entry with error context
161
+ const entries = [];
162
+ for (let i = 0; i < entriesData.length; i++) {
163
+ try {
164
+ entries.push(deserializeEntry(entriesData[i]));
165
+ }
166
+ catch (error) {
167
+ const errorMessage = error instanceof Error ? error.message : String(error);
168
+ throw new Error(`Failed to deserialize entry at index ${i}: ${errorMessage}`);
169
+ }
170
+ }
171
+ return entries;
172
+ }
173
+ /**
174
+ * Deserializes an array of entries from a JSON string.
175
+ *
176
+ * This function parses a JSON string containing an array of entry objects
177
+ * and reconstructs each entry as the appropriate Entry subclass instance.
178
+ * It validates the input and provides helpful error messages, including
179
+ * the index of any entry that fails to deserialize.
180
+ *
181
+ * @param jsonString - JSON string containing an array of entry objects
182
+ * @returns Array of Entry instances
183
+ * @throws {Error} If the JSON is invalid or entries cannot be deserialized:
184
+ * - Invalid JSON syntax
185
+ * - JSON does not contain an array
186
+ * - Any entry fails validation (see deserializeEntry)
187
+ *
188
+ * @example
189
+ * Deserializing multiple entries:
190
+ * ```typescript
191
+ * const json = '[
192
+ * {"type": "open", "date": "2024-01-01", "account": "Assets:Checking"},
193
+ * {"type": "balance", "date": "2024-01-02", "account": "Assets:Checking", "amount": "100", "currency": "USD"}
194
+ * ]'
195
+ * const entries = deserializeEntries(json)
196
+ * console.log(entries.length) // 2
197
+ * ```
198
+ *
199
+ * @example
200
+ * Roundtrip serialization:
201
+ * ```typescript
202
+ * import { parse } from 'beancount'
203
+ *
204
+ * const original = parse('2024-01-01 open Assets:Checking')
205
+ * const json = JSON.stringify(original.entries.map(e => e.toJSON()))
206
+ * const deserialized = deserializeEntries(json)
207
+ * // deserialized equals original.entries
208
+ * ```
209
+ */
210
+ export function deserializeEntriesFromString(jsonString) {
211
+ // Validate input
212
+ if (typeof jsonString !== 'string') {
213
+ throw new Error(`Invalid input: expected a JSON string but received ${typeof jsonString}`);
214
+ }
215
+ // Parse JSON with error handling
216
+ let entriesData;
217
+ try {
218
+ entriesData = JSON.parse(jsonString);
219
+ }
220
+ catch (error) {
221
+ const errorMessage = error instanceof Error ? error.message : String(error);
222
+ throw new Error(`Failed to parse JSON: ${errorMessage}`);
223
+ }
224
+ // Validate parsed data is an array
225
+ if (!Array.isArray(entriesData)) {
226
+ throw new Error(`Invalid JSON structure: expected an array but received ${typeof entriesData}`);
227
+ }
228
+ return deserializeEntries(entriesData);
229
+ }
@@ -0,0 +1,23 @@
1
+ /**
2
+ * File system operations interface for platform-agnostic file reading and path handling.
3
+ */
4
+ export interface FileSystemHelpers {
5
+ /** Read file contents as UTF-8 string */
6
+ readFile: (filepath: string) => Promise<string>;
7
+ /** Resolve a path to absolute form (like path.resolve(filepath)) */
8
+ resolvePath: (filepath: string) => string;
9
+ /** Resolve a relative path against a base (like path.resolve(base, rel)) */
10
+ resolveRelative: (base: string, relative: string) => string;
11
+ /** Extract directory from a file path (like path.dirname(filepath)) */
12
+ dirname: (filepath: string) => string;
13
+ }
14
+ /**
15
+ * Get default file system helpers for Node.js environments.
16
+ * Returns null if not in a Node.js environment.
17
+ *
18
+ * Uses dynamic imports to detect Node.js availability without
19
+ * requiring node:fs and node:path at module load time.
20
+ *
21
+ * @returns FileSystemHelpers object or null if not in Node.js
22
+ */
23
+ export declare function getDefaultFileSystemHelpers(): Promise<FileSystemHelpers | null>;
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Get default file system helpers for Node.js environments.
3
+ * Returns null if not in a Node.js environment.
4
+ *
5
+ * Uses dynamic imports to detect Node.js availability without
6
+ * requiring node:fs and node:path at module load time.
7
+ *
8
+ * @returns FileSystemHelpers object or null if not in Node.js
9
+ */
10
+ export async function getDefaultFileSystemHelpers() {
11
+ try {
12
+ const fs = await import('node:fs/promises');
13
+ const path = await import('node:path');
14
+ return {
15
+ /**
16
+ * Read file contents as UTF-8 string
17
+ * @param filepath - Path to file
18
+ * @returns File contents
19
+ */
20
+ readFile: async (filepath) => {
21
+ return await fs.readFile(filepath, 'utf-8');
22
+ },
23
+ /**
24
+ * Resolve a path to absolute form
25
+ * @param filepath - Path to resolve
26
+ * @returns Absolute path
27
+ */
28
+ resolvePath: (filepath) => {
29
+ return path.resolve(filepath);
30
+ },
31
+ /**
32
+ * Resolve a relative path against a base
33
+ * @param base - Base path
34
+ * @param relative - Relative path
35
+ * @returns Resolved path
36
+ */
37
+ resolveRelative: (base, relative) => {
38
+ return path.resolve(base, relative);
39
+ },
40
+ /**
41
+ * Get directory from file path
42
+ * @param filepath - File path
43
+ * @returns Directory path
44
+ */
45
+ dirname: (filepath) => {
46
+ return path.dirname(filepath);
47
+ },
48
+ };
49
+ }
50
+ catch {
51
+ // Not in Node.js environment or modules not available
52
+ return null;
53
+ }
54
+ }
@@ -23,7 +23,8 @@
23
23
  * @module
24
24
  */
25
25
  export { parse, parseEntry } from './parse.mjs';
26
- export { parseFile, type ParseFileOptions } from './parseFile.mjs';
26
+ export { deserializeEntry, deserializeEntryFromString, deserializeEntries, deserializeEntriesFromString, } from './deserialize.mjs';
27
+ export { parseFile, type ParseFileOptions, type FileSystemHelpers, } from './parseFile.mjs';
27
28
  export type { GenericParseResult, GenericParseResultWithDate, GenericParseResultTransaction, } from './genericParse.mjs';
28
29
  export type { Metadata } from './utils/parseMetadata.mjs';
29
30
  export { ParseResult, type ParseResultObj, type FormatOptions, type CalculateCurrencyColumnOptions, } from './classes/ParseResult.mjs';
@@ -24,7 +24,8 @@
24
24
  */
25
25
  // Primary parsing functionality
26
26
  export { parse, parseEntry } from './parse.mjs';
27
- export { parseFile } from './parseFile.mjs';
27
+ export { deserializeEntry, deserializeEntryFromString, deserializeEntries, deserializeEntriesFromString, } from './deserialize.mjs';
28
+ export { parseFile, } from './parseFile.mjs';
28
29
  // Core classes
29
30
  export { ParseResult, } from './classes/ParseResult.mjs';
30
31
  export { Entry, assertEntryConstructor } from './classes/Entry.mjs';
@@ -1,11 +1,18 @@
1
1
  import { ParseResult } from './classes/ParseResult.mjs';
2
+ import { type FileSystemHelpers } from './fileSystemHelpers.mjs';
2
3
  /**
3
4
  * Options for parsing a Beancount file.
4
5
  */
5
6
  export interface ParseFileOptions {
6
7
  /** When true, recursively parse files referenced by include directives */
7
8
  recurse?: boolean;
9
+ /**
10
+ * File system helpers for reading files and handling paths.
11
+ * Auto-detected in Node.js environments. Required for browser/edge runtimes.
12
+ */
13
+ fs?: FileSystemHelpers;
8
14
  }
15
+ export type { FileSystemHelpers };
9
16
  /**
10
17
  * Parses a Beancount file from the filesystem.
11
18
  *
@@ -14,7 +21,7 @@ export interface ParseFileOptions {
14
21
  * @returns A ParseResult containing all parsed entries
15
22
  *
16
23
  * @example
17
- * Basic usage:
24
+ * Basic usage (Node.js):
18
25
  * ```typescript
19
26
  * import { parseFile } from 'beancount'
20
27
  *
@@ -22,10 +29,55 @@ export interface ParseFileOptions {
22
29
  * ```
23
30
  *
24
31
  * @example
25
- * With recursive parsing of includes:
32
+ * With recursive parsing of includes (Node.js):
26
33
  * ```typescript
27
34
  * const result = await parseFile('/path/to/main.beancount', { recurse: true })
28
35
  * // All entries from included files are merged into the result
29
36
  * ```
37
+ *
38
+ * @example
39
+ * Browser usage with fetch:
40
+ * ```typescript
41
+ * import { parseFile, type FileSystemHelpers } from 'beancount'
42
+ *
43
+ * const browserFS: FileSystemHelpers = {
44
+ * readFile: async (path) => {
45
+ * const response = await fetch(path)
46
+ * return response.text()
47
+ * },
48
+ * resolvePath: (path) => new URL(path, window.location.origin).pathname,
49
+ * resolveRelative: (base, rel) => {
50
+ * const baseDir = base.substring(0, base.lastIndexOf('/') + 1)
51
+ * return new URL(rel, window.location.origin + baseDir).pathname
52
+ * },
53
+ * dirname: (path) => path.substring(0, path.lastIndexOf('/')),
54
+ * }
55
+ *
56
+ * const result = await parseFile('/api/ledger.beancount', {
57
+ * recurse: true,
58
+ * fs: browserFS,
59
+ * })
60
+ * ```
61
+ *
62
+ * @example
63
+ * Deno usage:
64
+ * ```typescript
65
+ * import { parseFile, type FileSystemHelpers } from 'npm:beancount'
66
+ *
67
+ * const denoFS: FileSystemHelpers = {
68
+ * readFile: async (path) => await Deno.readTextFile(path),
69
+ * resolvePath: (path) => new URL(path, import.meta.url).pathname,
70
+ * resolveRelative: (base, rel) => {
71
+ * const baseDir = base.substring(0, base.lastIndexOf('/') + 1)
72
+ * return baseDir + rel
73
+ * },
74
+ * dirname: (path) => path.substring(0, path.lastIndexOf('/')),
75
+ * }
76
+ *
77
+ * const result = await parseFile('./ledger.beancount', {
78
+ * recurse: true,
79
+ * fs: denoFS,
80
+ * })
81
+ * ```
30
82
  */
31
83
  export declare const parseFile: (filepath: string, options?: ParseFileOptions) => Promise<ParseResult>;
@@ -1,7 +1,6 @@
1
- import fs from 'node:fs/promises';
2
- import path from 'node:path';
3
1
  import { parse } from './parse.mjs';
4
2
  import { ParseResult } from './classes/ParseResult.mjs';
3
+ import { getDefaultFileSystemHelpers, } from './fileSystemHelpers.mjs';
5
4
  /**
6
5
  * Parses a Beancount file from the filesystem.
7
6
  *
@@ -10,7 +9,7 @@ import { ParseResult } from './classes/ParseResult.mjs';
10
9
  * @returns A ParseResult containing all parsed entries
11
10
  *
12
11
  * @example
13
- * Basic usage:
12
+ * Basic usage (Node.js):
14
13
  * ```typescript
15
14
  * import { parseFile } from 'beancount'
16
15
  *
@@ -18,42 +17,93 @@ import { ParseResult } from './classes/ParseResult.mjs';
18
17
  * ```
19
18
  *
20
19
  * @example
21
- * With recursive parsing of includes:
20
+ * With recursive parsing of includes (Node.js):
22
21
  * ```typescript
23
22
  * const result = await parseFile('/path/to/main.beancount', { recurse: true })
24
23
  * // All entries from included files are merged into the result
25
24
  * ```
25
+ *
26
+ * @example
27
+ * Browser usage with fetch:
28
+ * ```typescript
29
+ * import { parseFile, type FileSystemHelpers } from 'beancount'
30
+ *
31
+ * const browserFS: FileSystemHelpers = {
32
+ * readFile: async (path) => {
33
+ * const response = await fetch(path)
34
+ * return response.text()
35
+ * },
36
+ * resolvePath: (path) => new URL(path, window.location.origin).pathname,
37
+ * resolveRelative: (base, rel) => {
38
+ * const baseDir = base.substring(0, base.lastIndexOf('/') + 1)
39
+ * return new URL(rel, window.location.origin + baseDir).pathname
40
+ * },
41
+ * dirname: (path) => path.substring(0, path.lastIndexOf('/')),
42
+ * }
43
+ *
44
+ * const result = await parseFile('/api/ledger.beancount', {
45
+ * recurse: true,
46
+ * fs: browserFS,
47
+ * })
48
+ * ```
49
+ *
50
+ * @example
51
+ * Deno usage:
52
+ * ```typescript
53
+ * import { parseFile, type FileSystemHelpers } from 'npm:beancount'
54
+ *
55
+ * const denoFS: FileSystemHelpers = {
56
+ * readFile: async (path) => await Deno.readTextFile(path),
57
+ * resolvePath: (path) => new URL(path, import.meta.url).pathname,
58
+ * resolveRelative: (base, rel) => {
59
+ * const baseDir = base.substring(0, base.lastIndexOf('/') + 1)
60
+ * return baseDir + rel
61
+ * },
62
+ * dirname: (path) => path.substring(0, path.lastIndexOf('/')),
63
+ * }
64
+ *
65
+ * const result = await parseFile('./ledger.beancount', {
66
+ * recurse: true,
67
+ * fs: denoFS,
68
+ * })
69
+ * ```
26
70
  */
27
71
  export const parseFile = async (filepath, options = {}) => {
28
- const { recurse = false } = options;
72
+ const { recurse = false, fs: customFS } = options;
73
+ // Get file system helpers (custom or default)
74
+ const fsHelpers = customFS ?? (await getDefaultFileSystemHelpers());
75
+ if (!fsHelpers) {
76
+ throw new Error('File system helpers are required. In non-Node.js environments, provide the "fs" option with readFile, resolvePath, resolveRelative, and dirname functions.');
77
+ }
29
78
  if (recurse) {
30
- return parseFileRecursive(filepath, new Set());
79
+ return parseFileRecursive(filepath, new Set(), fsHelpers);
31
80
  }
32
- const content = await fs.readFile(filepath, 'utf-8');
81
+ const content = await fsHelpers.readFile(filepath);
33
82
  return parse(content);
34
83
  };
35
84
  /**
36
85
  * Internal recursive parser that tracks visited files to prevent circular includes.
37
86
  * @param filepath - Path to the Beancount file to parse
38
87
  * @param visited - Set of already visited file paths (absolute)
88
+ * @param fsHelpers - File system helpers for reading files and handling paths
39
89
  * @returns A ParseResult containing all parsed entries
40
90
  */
41
- const parseFileRecursive = async (filepath, visited) => {
42
- const absolutePath = path.resolve(filepath);
91
+ const parseFileRecursive = async (filepath, visited, fsHelpers) => {
92
+ const absolutePath = fsHelpers.resolvePath(filepath);
43
93
  // Skip already visited files (circular include protection)
44
94
  if (visited.has(absolutePath)) {
45
95
  return new ParseResult([]);
46
96
  }
47
97
  visited.add(absolutePath);
48
- const content = await fs.readFile(absolutePath, 'utf-8');
98
+ const content = await fsHelpers.readFile(absolutePath);
49
99
  const result = parse(content);
50
100
  const allEntries = [];
51
- const baseDir = path.dirname(absolutePath);
101
+ const baseDir = fsHelpers.dirname(absolutePath);
52
102
  for (const entry of result.entries) {
53
103
  if (entry.type === 'include') {
54
104
  const includeEntry = entry;
55
- const includePath = path.resolve(baseDir, includeEntry.filename);
56
- const includeResult = await parseFileRecursive(includePath, visited);
105
+ const includePath = fsHelpers.resolveRelative(baseDir, includeEntry.filename);
106
+ const includeResult = await parseFileRecursive(includePath, visited, fsHelpers);
57
107
  allEntries.push(...includeResult.entries);
58
108
  }
59
109
  else {
@@ -1 +1 @@
1
- {"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.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2023.d.ts","../node_modules/typescript/lib/lib.es2024.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.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2017.date.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.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.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.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.es2023.array.d.ts","../node_modules/typescript/lib/lib.es2023.collection.d.ts","../node_modules/typescript/lib/lib.es2023.intl.d.ts","../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2024.collection.d.ts","../node_modules/typescript/lib/lib.es2024.object.d.ts","../node_modules/typescript/lib/lib.es2024.promise.d.ts","../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2024.string.d.ts","../node_modules/typescript/lib/lib.esnext.array.d.ts","../node_modules/typescript/lib/lib.esnext.collection.d.ts","../node_modules/typescript/lib/lib.esnext.iterator.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@js-temporal/polyfill/index.d.ts","../src/entryTypes.mts","../src/classes/Value.mts","../src/utils/parseMetadata.mts","../src/genericParse.mts","../src/utils/stringAwareSplitLine.mts","../src/classes/Entry.mts","../src/classes/DateEntry.mts","../src/utils/stringAwareParseLine.mts","../src/patterns.mts","../src/utils/formatPrice.mts","../src/classes/entryTypes/Transaction/Posting.mts","../src/classes/entryTypes/Transaction/Tag.mts","../src/classes/entryTypes/Transaction/index.mts","../src/utils/simpleParseLine.mts","../src/classes/entryTypes/Balance.mts","../src/classes/entryTypes/Blankline.mts","../src/classes/entryTypes/Close.mts","../src/classes/entryTypes/Comment.mts","../src/classes/entryTypes/Commodity.mts","../src/classes/entryTypes/Custom.mts","../src/classes/entryTypes/Document.mts","../src/classes/entryTypes/Event.mts","../src/classes/entryTypes/Include.mts","../src/classes/entryTypes/Note.mts","../src/classes/entryTypes/Open.mts","../src/classes/entryTypes/Option.mts","../src/classes/entryTypes/Pad.mts","../src/classes/entryTypes/Plugin.mts","../src/classes/entryTypes/Price.mts","../src/classes/entryTypes/Poptag.mts","../src/classes/entryTypes/Pushtag.mts","../src/classes/entryTypes/Query.mts","../src/classes/entryTypes/index.mts","../src/entryTypeToClass.mts","../src/classes/ParseResult.mts","../src/utils/countChar.mts","../src/utils/splitStringIntoUnparsedEntries.ts","../src/parse.mts","../src/benchmark.mts","../src/cli.mts","../src/interfaces.mts","../src/parseFile.mts","../src/main.mts","../node_modules/@types/node/compatibility/disposable.d.ts","../node_modules/@types/node/compatibility/indexable.d.ts","../node_modules/@types/node/compatibility/iterators.d.ts","../node_modules/@types/node/compatibility/index.d.ts","../node_modules/@types/node/globals.typedarray.d.ts","../node_modules/@types/node/buffer.buffer.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/env-http-proxy-agent.d.ts","../node_modules/undici-types/retry-handler.d.ts","../node_modules/undici-types/retry-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/util.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/eventsource.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.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/dom-events.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/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/sqlite.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/test.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/index.d.ts"],"fileIdsList":[[122,164],[122,161,164],[122,163,164],[164],[122,164,169,199],[122,164,165,170,176,177,184,196,207],[122,164,165,166,176,184],[117,118,119,122,164],[122,164,167,208],[122,164,168,169,177,185],[122,164,169,196,204],[122,164,170,172,176,184],[122,163,164,171],[122,164,172,173],[122,164,174,176],[122,163,164,176],[122,164,176,177,178,196,207],[122,164,176,177,178,191,196,199],[122,159,164],[122,159,164,172,176,179,184,196,207],[122,164,176,177,179,180,184,196,204,207],[122,164,179,181,196,204,207],[120,121,122,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213],[122,164,176,182],[122,164,183,207],[122,164,172,176,184,196],[122,164,185],[122,164,186],[122,163,164,187],[122,161,162,163,164,165,166,167,168,169,170,171,172,173,174,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213],[122,164,189],[122,164,190],[122,164,176,191,192],[122,164,191,193,208,210],[122,164,176,196,197,199],[122,164,198,199],[122,164,196,197],[122,164,199],[122,164,200],[122,161,164,196,201],[122,164,176,202,203],[122,164,202,203],[122,164,169,184,196,204],[122,164,205],[122,164,184,206],[122,164,179,190,207],[122,164,169,208],[122,164,196,209],[122,164,183,210],[122,164,211],[122,164,176,178,187,196,199,207,209,210,212],[122,164,196,213],[122,131,135,164,207],[122,131,164,196,207],[122,126,164],[122,128,131,164,204,207],[122,164,184,204],[122,164,214],[122,126,164,214],[122,128,131,164,184,207],[122,123,124,127,130,164,176,196,207],[122,131,138,164],[122,123,129,164],[122,131,152,153,164],[122,127,131,164,199,207,214],[122,152,164,214],[122,125,126,164,214],[122,131,164],[122,125,126,127,128,129,130,131,132,133,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,153,154,155,156,157,158,164],[122,131,146,164],[122,131,138,139,164],[122,129,131,139,140,164],[122,130,164],[122,123,126,131,164],[122,131,135,139,140,164],[122,135,164],[122,129,131,134,164,207],[122,123,128,131,138,164],[122,164,196],[122,126,131,152,164,212,214],[111,122,164,177],[73,75,79,107,122,164],[77,78,107,108,122,164],[73,79,84,86,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,107,122,164],[73,122,164],[77,79,80,83,87,108,122,164],[77,79,122,164],[77,79,80,122,164],[75,77,79,80,87,122,164],[75,77,79,80,81,122,164],[75,77,79,81,122,164],[75,77,79,80,87,108,122,164],[77,79,80,87,122,164],[77,79,85,87,122,164],[82,83,108,122,164],[73,75,76,77,79,80,81,84,85,108,122,164],[86,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,122,164],[111,122,164,177,208],[74,106,122,164],[74,76,107,122,164],[74,75,76,77,79,80,84,85,86,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,107,108,111,115,122,164],[77,85,106,107,108,110,122,164],[79,96,108,111,122,164,178,186],[75,122,164],[78,109,122,164]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"893fbc7e2a50a3a780d3d6eb6899e45fe8dc4ca56708770b4731e481f55af599","impliedFormat":99},{"version":"b41df81349a5217799936c2a00b00583c10e535c710582161d34bbfb7bf63f6c","signature":"6c4fc18e39d7fc12e582fe90849988748413284b4ca7d1882efc5df02ac1d122","impliedFormat":99},{"version":"cc0473e7e091e7a34b9b39fce539340215a756d991a96bf0850620656b7c0cac","signature":"4fc5e1f9d12d829775c2f012817584ffc4e5f9b68ebe8b6cc95849b1ad28042e","impliedFormat":99},{"version":"e003a8ea786551aad76674c1df10dde82bb822e56ebee538fcde6f15dd979106","signature":"c7786cdeed5d98223413d0bf6c64f5b5e6bd19333a6daec377d9427feb71e0ad","impliedFormat":99},{"version":"bccd4fb1920e52eec5a5740ae9304fd97f6ab8d7bda56795323fbf7104b22f6e","signature":"3770f13c04b04677f53b3b4c75472649fc6c6b5e87eaf398cedff055e3df4b44","impliedFormat":99},{"version":"7e6def2c8973d3e8edec40a6adae18a44ec312c08c05e338e719bcaba1f4c0ab","signature":"8a7f943963d7b935ae833610c002a5dd2f5e9e3600ffdd7be7410fd98185ad38","impliedFormat":99},{"version":"7a9ac8cd80cff533a727561e00beff8aa5cd6a8ed8d3042e100cb9562b647610","signature":"13997840525258e46ca877ef0278bb81f281b9e9a4cf7c7b953a6678c24b911d","impliedFormat":99},{"version":"27050ac862d121afc337bda5721cea68d5a6c4d22c761105ea100a8ac45b02be","signature":"7a47dece0e244f7a9b163ad34462a362380995ef57475ac43580cf32cf9ca47b","impliedFormat":99},{"version":"697ddf39d1196765d0bd713ba08e1757026e8699973f35a8157a63888b943c1c","signature":"48105ea7d87e3ef2a44b007f24b187cef9dbaa1657676a7a51e246dc3e45a965","impliedFormat":99},{"version":"ebb4cb28b654de6e48f44fc9d76bdc0a6dde67716124e54c9029fc30d1501c6d","signature":"a95c3578afbdcd64258d47eaee299827ef21e3b10a635a5db7c22e50e9aeb763","impliedFormat":99},{"version":"ae9af67bd67dc354068023d81b487f52b6aad41b86c20bb4ae2fd5b783faa2e5","signature":"ae502c4f86510ae1122bbc2a94190fd2134c403edec4df41b81d3f10eec52888","impliedFormat":99},{"version":"3a2f906ccdbb1e4e9731eac71b8509d2d10dd892e8946052c324fc478255b342","signature":"9d1b296a6feeec1fb29f0530eaf93e2e7e02e22877f698f0f8aa079445cfca4e","impliedFormat":99},{"version":"92169d583be6c930bd76c05e8dcd0fd18aca922e639885586b939ea2f226cc10","signature":"e0cf09adb52d7db004990d54e21a39a912e49247dff3cd0902e31f1db364e5ea","impliedFormat":99},{"version":"473d39020277dfc5705454bb41e539b99dba4610b982eca37cc15cc98881712f","signature":"989f09dc5601c996e3ff38ec107bdbeefceaf91e15a6e48c398bf2f51088db27","impliedFormat":99},{"version":"49f73d42952875b2dc422ea628a707991e8826b35f682f5756d7f48620823b28","signature":"9c56f1632be8fb08faa94de6d353d941af9e1fd1828885ecf4cf332c555b34a5","impliedFormat":99},{"version":"7d285821d5a6ca0da082cda732060c009d1bf0766b51106999e76c22094ab0be","signature":"80e356f8f2e253c8599b6beca7bb8ffbc71ff2d35d50ea20837fbf49714233ea","impliedFormat":99},{"version":"dc4e59f547aa5800ab356abf8972f844da2c75f194b170941b4df3e790fc414f","signature":"135f95bb817b8666640d0f41cc39a24358024eb7e04479669ee1054ae2bd4b78","impliedFormat":99},{"version":"970119ac2e2e0eaaa599fa3f9998e47701b53fda82f679b22a952d0f944cc242","signature":"136717d00f958b0465892cf6cb3ba700aa5ea596cfe5076d4821b97bdb06c4df","impliedFormat":99},{"version":"4ace342e93b43946d429e11cec4832e978f54286ac7f08629e8417bb2e806497","signature":"b120709ec90e751790c32bb4e8b98c86be73ab25dae073172415964837c02c1f","impliedFormat":99},{"version":"94ceb640c900c56d3802b74a85bd452897ed29903bc71687c04f5f19c9bea800","signature":"5824dd4ad3a7b8a249aec83a477e7a7f3b6b792f869a1f966fa3eb4b968ec804","impliedFormat":99},{"version":"be0aa0e4f7219019d2797b4a4b50489f6ea23a9ae341d4d8e84c8398fc3972ec","signature":"b2827256c65baded87c4728a990ef2aed4ebec3e693a34c732ac8d5db01ff81b","impliedFormat":99},{"version":"7b1141e3d03c248f7611a6a3036598be23e9f727e20e543352fe3272d7f09200","signature":"a6660d41657ade4b08df2665f0e7eea2e30041e72cb7f78f8bd545b47085f168","impliedFormat":99},{"version":"a463043c9e585bb4e7f7fddbda1207b88429814b162eea454855c8a19bcd1ce4","signature":"9952aaa1fe655b163be1f558c9e994241f3dd0663b75c4d6bfad56b82fc0e289","impliedFormat":99},{"version":"e14cc632c6fccc1ef79ad6fda8cac4609cc2e8ddb14e92e02a101c3070ebc59c","signature":"edbb236b4869b592f180fca037581b68436112d4812c9e7fd7804570f21ad0c8","impliedFormat":99},{"version":"12f02213204d915dd9a28efd28e2b1b3f2656aee36f5e4fa15d1de5b36c034a5","signature":"7f3ba128a0933f9219b4c3e693a19a622f4475e37e59b9348cab0ca6bf527c06","impliedFormat":99},{"version":"40b3f8136e8682726fc016879e1c789e632f06371af8a48d08aa8c55eebb08fa","signature":"566dfbde96de66a11d563c14269dd817a8b8f95adc6dab80a2f38ba7d22573d5","impliedFormat":99},{"version":"aff3a3a0dc69d5694602448bdca6fd8d125757e95487a8edaa87f265eaa90736","signature":"3a52f2abd91ad36cf428a92e40224dbb1c08808f5218145fd87758e1f53796ad","impliedFormat":99},{"version":"2c9f0bab3ba54980f6c0095a16647459cf423aec7ef4fa06a03c08756f4d9f1a","signature":"c2e0a9c8e9653a7985c193c0ccb70988ba7623488f9aeff8b2eec113386db363","impliedFormat":99},{"version":"9e8d28ccd5617d3114adaeaf955d6ffcb84e64168c49f95f6211180080e9ec74","signature":"4aa81518d0d7c57b77af8b82c8e2a3d9a74d8bf5a5afb71d68a9b7f0fb9c1b27","impliedFormat":99},{"version":"6b7c60cf4ceddea87f8e35727bf9e27c881f9ef0cbb644bdcc1be8042551a361","signature":"a6578cac1ca1e7a66013f646110042cda599e395beb2591ba2d63d326169f5bd","impliedFormat":99},{"version":"bc4a677fc369f0e9fbd1d2c887dcd0cd480daf45a1dbdbb697b3f7d7e2e1c4a3","signature":"8f4c113dece48aad997b36f5c24bf6264cc93af0991fec489fd733a3f4247c6c","impliedFormat":99},{"version":"e8a4d7f2ddce5a7de0930bb407a18dd76fe16aed30c2cb71bc3413350665591b","signature":"87636ef4e1e29f65bdd76d87818ec3912b3256924c8a5434859e0ad7602f6b0a","impliedFormat":99},{"version":"f64678f9787d27916671994ae2053a273bc4ca228cc6a3da559b6b1f55c80b3a","signature":"7395b2de5a25aab1ee1e785363730dd04cb05c477398c526c8c2990621c4054c","impliedFormat":99},{"version":"99e220af29abb95e1e8c03fef41e02978f24e37ea384099f74e0520ddef8a304","signature":"f6059f6ac7c4f71ea52f5ba6a6b751ec18b03af3d136e2c4294d02499b11e09b","impliedFormat":99},{"version":"3bfd3d5edad084e4cc783e0c88d8a0ab6c9c02414c3613f7b2414549f3265df5","signature":"0173b3ee93cec16569892bc5f499e881525b19833cf5657493c2ab2c6f88dfdc","impliedFormat":99},{"version":"1a91f3a91a0bc2527f4053c8275fe0fa3cd0b46061aca92d732b1d087d576503","signature":"99857847b2895d1cc70e04870f16b3fa8983f3ef6ec8825f132dbfc24634bb4b","impliedFormat":99},{"version":"22b89513bcf065056a6a01231c62c3926833925ed21276d9675284a82e5f7e34","signature":"604d9ded408c8b9d2146f9f63af87a1c292fb3904aaa12df6ea08cd4b956289d","impliedFormat":99},{"version":"67195724b14ef65f0e8db1fda57b3269ac9ad34cae135c7b23d0f02dd7be983d","signature":"827bd931627efdc028c00bd47268a857b70bc8e23cdc5d8df6863a6e94c17c83","impliedFormat":99},{"version":"582899cf1be00292c5d9f9bbd7a6dfb88e52041779156e789e195d0ee41bd3e0","signature":"43a39f6ff509392928bccdffc3c3285aa28710b14cb0696ea2d1b39062820bd1","impliedFormat":99},{"version":"7951408798ead04257662f55116f7d8b02ffec69da0052f967718afa06f13754","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"1e2eb3d4e54f770b26e185967d4fdd24d1e6d1766940cf799627fa5e721ffbbf","signature":"921979a75fd6addab30ae77a076a644db986663bc5ef19ecce038a8da5b91a67","impliedFormat":99},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"374d7d4c3648730a6f515d4eb37b458deec50b2575fd0f4f0502e289d028362b","signature":"a28bae6900f019340c2bfe913f1f3ae17fe25592851ba94a8c826e8c55d43273","impliedFormat":99},{"version":"35bc347c7fdaa3af2407b46d55c93cef39f4414d96133472bc4f667b1520963d","signature":"3b70f476093d6b8cdbbf16f67744b9e0dccfb41a1741d1d61448f354839232f8","impliedFormat":99},{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"d802f0e6b5188646d307f070d83512e8eb94651858de8a82d1e47f60fb6da4e2","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"a12d953aa755b14ac1d28ecdc1e184f3285b01d6d1e58abc11bf1826bc9d80e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"a38efe83ff77c34e0f418a806a01ca3910c02ee7d64212a59d59bca6c2c38fa1","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"2b7b4bc0ff201a3f08b5d1e5161998ea655b7a2c840ca646c3adcaf126aa8882","affectsGlobalScope":true,"impliedFormat":1},{"version":"4314c7a11517e221f7296b46547dbc4df047115b182f544d072bdccffa57fc72","impliedFormat":1},{"version":"e9b97d69510658d2f4199b7d384326b7c4053b9e6645f5c19e1c2a54ede427fc","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"81711af669f63d43ccb4c08e15beda796656dd46673d0def001c7055db53852d","affectsGlobalScope":true,"impliedFormat":1},{"version":"19d5f8d3930e9f99aa2c36258bf95abbe5adf7e889e6181872d1cdba7c9a7dd5","impliedFormat":1},{"version":"9855e02d837744303391e5623a531734443a5f8e6e8755e018c41d63ad797db2","impliedFormat":1},{"version":"bdba81959361810be44bcfdd283f4d601e406ab5ad1d2bdff0ed480cf983c9d7","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"71450bbc2d82821d24ca05699a533e72758964e9852062c53b30f31c36978ab8","affectsGlobalScope":true,"impliedFormat":1},{"version":"b326f4813b90d230ec3950f66bd5b5ce3971aac5fac67cfafc54aa07b39fd07f","affectsGlobalScope":true,"impliedFormat":1},{"version":"6ee692acba8b517b5041c02c5a3369a03f36158b6bb7605d6a98d832e7a13fcc","impliedFormat":1},{"version":"ee07335d073f94f1ec8d7311c4b15abac03a8160e7cdfd4771c47440a7489e1b","impliedFormat":1},{"version":"ec79bdd311bcba9b889af9da0cd88611affdda8c2d491305fa61b7529d5b89ba","impliedFormat":1},{"version":"73cf6cc19f16c0191e4e9d497ab0c11c7b38f1ca3f01ad0f09a3a5a971aac4b8","impliedFormat":1},{"version":"528b62e4272e3ddfb50e8eed9e359dedea0a4d171c3eb8f337f4892aac37b24b","impliedFormat":1},{"version":"eec1e051df11fb4c7f4df5a9a18022699e596024c06bc085e9b410effe790a9a","impliedFormat":1},{"version":"d83f86427b468176fbacb28ef302f152ad3d2d127664c627216e45cfa06fbf7e","affectsGlobalScope":true,"impliedFormat":1},{"version":"f72bc8fe16da67e4e3268599295797b202b95e54bd215a03f97e925dd1502a36","impliedFormat":1},{"version":"b1b6ee0d012aeebe11d776a155d8979730440082797695fc8e2a5c326285678f","impliedFormat":1},{"version":"45875bcae57270aeb3ebc73a5e3fb4c7b9d91d6b045f107c1d8513c28ece71c0","impliedFormat":1},{"version":"915e18c559321c0afaa8d34674d3eb77e1ded12c3e85bf2a9891ec48b07a1ca5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a2f3aa60aece790303a62220456ff845a1b980899bdc2e81646b8e33d9d9cc15","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"70b57b5529051497e9f6482b76d91c0dcbb103d9ead8a0549f5bab8f65e5d031","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"0be405730b99eee7dbb051d74f6c3c0f1f8661d86184a7122b82c2bfb0991922","impliedFormat":1},{"version":"8302157cd431b3943eed09ad439b4441826c673d9f870dcb0e1f48e891a4211e","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"125d792ec6c0c0f657d758055c494301cc5fdb327d9d9d5960b3f129aff76093","impliedFormat":1},{"version":"12aad38de6f0594dc21efa78a2c1f67bf6a7ef5a389e05417fe9945284450908","affectsGlobalScope":true,"impliedFormat":1},{"version":"2754d8221d77c7b382096651925eb476f1066b3348da4b73fe71ced7801edada","impliedFormat":1},{"version":"a5890565ed564c7b29eb1b1038d4e10c03a3f5231b0a8d48fea4b41ab19f4f46","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"98ffdf93dfdd206516971d28e3e473f417a5cfd41172e46b4ce45008f640588e","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"7172949957e9ae6dd5c046d658cc5f1d00c12d85006554412e1de0dcfea8257e","affectsGlobalScope":true,"impliedFormat":1},{"version":"1a654e0d950353614ba4637a8de4f9d367903a0692b748e11fccf8c880c99735","affectsGlobalScope":true,"impliedFormat":1},{"version":"42da246c46ca3fd421b6fd88bb4466cda7137cf33e87ba5ceeded30219c428bd","impliedFormat":1},{"version":"3a051941721a7f905544732b0eb819c8d88333a96576b13af08b82c4f17581e4","impliedFormat":1},{"version":"ac5ed35e649cdd8143131964336ab9076937fa91802ec760b3ea63b59175c10a","impliedFormat":1},{"version":"66e4838e0e3e0ea1ee62b57b3984a7f606f73523dfdae6500b6e3258c0aa3c7d","affectsGlobalScope":true,"impliedFormat":1},{"version":"db3d77167a7da6c5ba0c51c5b654820e3464093f21724ccd774c0b9bc3f81bc0","impliedFormat":1},{"version":"ad90122e1cb599b3bc06a11710eb5489101be678f2920f2322b0ac3e195af78d","impliedFormat":1}],"root":[[74,116]],"options":{"allowJs":true,"composite":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":199,"outDir":"./","skipLibCheck":true,"strict":true,"strictBindCallApply":true,"target":9,"useDefineForClassFields":false},"referencedMap":[[73,1],[161,2],[162,2],[163,3],[122,4],[164,5],[165,6],[166,7],[117,1],[120,8],[118,1],[119,1],[167,9],[168,10],[169,11],[170,12],[171,13],[172,14],[173,14],[175,1],[174,15],[176,16],[177,17],[178,18],[160,19],[121,1],[179,20],[180,21],[181,22],[214,23],[182,24],[183,25],[184,26],[185,27],[186,28],[187,29],[188,30],[189,31],[190,32],[191,33],[192,33],[193,34],[194,1],[195,1],[196,35],[198,36],[197,37],[199,38],[200,39],[201,40],[202,41],[203,42],[204,43],[205,44],[206,45],[207,46],[208,47],[209,48],[210,49],[211,50],[212,51],[213,52],[71,1],[72,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],[22,1],[23,1],[4,1],[24,1],[28,1],[25,1],[26,1],[27,1],[29,1],[30,1],[31,1],[5,1],[32,1],[33,1],[34,1],[35,1],[6,1],[39,1],[36,1],[37,1],[38,1],[40,1],[7,1],[41,1],[46,1],[47,1],[42,1],[43,1],[44,1],[45,1],[8,1],[51,1],[48,1],[49,1],[50,1],[52,1],[9,1],[53,1],[54,1],[55,1],[57,1],[56,1],[58,1],[59,1],[10,1],[60,1],[61,1],[62,1],[11,1],[63,1],[64,1],[65,1],[66,1],[67,1],[1,1],[68,1],[69,1],[70,1],[138,53],[148,54],[137,53],[158,55],[129,56],[128,57],[157,58],[151,59],[156,60],[131,61],[145,62],[130,63],[154,64],[126,65],[125,58],[155,66],[127,67],[132,68],[133,1],[136,68],[123,1],[159,69],[149,70],[140,71],[141,72],[143,73],[139,74],[142,75],[152,58],[134,76],[135,77],[144,78],[124,79],[147,70],[146,68],[150,1],[153,80],[112,81],[80,82],[79,83],[108,84],[75,85],[88,86],[89,87],[90,88],[91,87],[92,88],[93,89],[94,90],[95,90],[96,91],[97,90],[98,92],[99,91],[100,93],[101,91],[103,94],[102,86],[104,94],[105,90],[84,95],[85,1],[86,96],[106,97],[113,98],[107,99],[74,1],[77,100],[114,1],[116,101],[111,102],[115,103],[82,1],[109,1],[83,1],[76,104],[87,1],[110,105],[81,1],[78,1]],"latestChangedDtsFile":"./src/classes/Entry.d.mts","version":"5.9.3"}
1
+ {"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.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2023.d.ts","../node_modules/typescript/lib/lib.es2024.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.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2017.date.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.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.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.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.es2023.array.d.ts","../node_modules/typescript/lib/lib.es2023.collection.d.ts","../node_modules/typescript/lib/lib.es2023.intl.d.ts","../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2024.collection.d.ts","../node_modules/typescript/lib/lib.es2024.object.d.ts","../node_modules/typescript/lib/lib.es2024.promise.d.ts","../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2024.string.d.ts","../node_modules/typescript/lib/lib.esnext.array.d.ts","../node_modules/typescript/lib/lib.esnext.collection.d.ts","../node_modules/typescript/lib/lib.esnext.iterator.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@js-temporal/polyfill/index.d.ts","../src/entryTypes.mts","../src/classes/Value.mts","../src/utils/parseMetadata.mts","../src/genericParse.mts","../src/utils/stringAwareSplitLine.mts","../src/classes/Entry.mts","../src/classes/DateEntry.mts","../src/utils/stringAwareParseLine.mts","../src/patterns.mts","../src/utils/formatPrice.mts","../src/classes/entryTypes/Transaction/Posting.mts","../src/classes/entryTypes/Transaction/Tag.mts","../src/classes/entryTypes/Transaction/index.mts","../src/utils/simpleParseLine.mts","../src/classes/entryTypes/Balance.mts","../src/classes/entryTypes/Blankline.mts","../src/classes/entryTypes/Close.mts","../src/classes/entryTypes/Comment.mts","../src/classes/entryTypes/Commodity.mts","../src/classes/entryTypes/Custom.mts","../src/classes/entryTypes/Document.mts","../src/classes/entryTypes/Event.mts","../src/classes/entryTypes/Include.mts","../src/classes/entryTypes/Note.mts","../src/classes/entryTypes/Open.mts","../src/classes/entryTypes/Option.mts","../src/classes/entryTypes/Pad.mts","../src/classes/entryTypes/Plugin.mts","../src/classes/entryTypes/Price.mts","../src/classes/entryTypes/Poptag.mts","../src/classes/entryTypes/Pushtag.mts","../src/classes/entryTypes/Query.mts","../src/classes/entryTypes/index.mts","../src/entryTypeToClass.mts","../src/classes/ParseResult.mts","../src/utils/countChar.mts","../src/utils/splitStringIntoUnparsedEntries.ts","../src/parse.mts","../src/benchmark.mts","../src/fileSystemHelpers.mts","../src/parseFile.mts","../src/cli.mts","../src/deserialize.mts","../src/interfaces.mts","../src/main.mts","../node_modules/@types/node/compatibility/disposable.d.ts","../node_modules/@types/node/compatibility/indexable.d.ts","../node_modules/@types/node/compatibility/iterators.d.ts","../node_modules/@types/node/compatibility/index.d.ts","../node_modules/@types/node/globals.typedarray.d.ts","../node_modules/@types/node/buffer.buffer.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/env-http-proxy-agent.d.ts","../node_modules/undici-types/retry-handler.d.ts","../node_modules/undici-types/retry-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/util.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/eventsource.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.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/dom-events.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/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/sqlite.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/test.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/index.d.ts"],"fileIdsList":[[124,166],[124,163,166],[124,165,166],[166],[124,166,171,201],[124,166,167,172,178,179,186,198,209],[124,166,167,168,178,186],[119,120,121,124,166],[124,166,169,210],[124,166,170,171,179,187],[124,166,171,198,206],[124,166,172,174,178,186],[124,165,166,173],[124,166,174,175],[124,166,176,178],[124,165,166,178],[124,166,178,179,180,198,209],[124,166,178,179,180,193,198,201],[124,161,166],[124,161,166,174,178,181,186,198,209],[124,166,178,179,181,182,186,198,206,209],[124,166,181,183,198,206,209],[122,123,124,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215],[124,166,178,184],[124,166,185,209],[124,166,174,178,186,198],[124,166,187],[124,166,188],[124,165,166,189],[124,163,164,165,166,167,168,169,170,171,172,173,174,175,176,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215],[124,166,191],[124,166,192],[124,166,178,193,194],[124,166,193,195,210,212],[124,166,178,198,199,201],[124,166,200,201],[124,166,198,199],[124,166,201],[124,166,202],[124,163,166,198,203],[124,166,178,204,205],[124,166,204,205],[124,166,171,186,198,206],[124,166,207],[124,166,186,208],[124,166,181,192,209],[124,166,171,210],[124,166,198,211],[124,166,185,212],[124,166,213],[124,166,178,180,189,198,201,209,211,212,214],[124,166,198,215],[124,133,137,166,209],[124,133,166,198,209],[124,128,166],[124,130,133,166,206,209],[124,166,186,206],[124,166,216],[124,128,166,216],[124,130,133,166,186,209],[124,125,126,129,132,166,178,198,209],[124,133,140,166],[124,125,131,166],[124,133,154,155,166],[124,129,133,166,201,209,216],[124,154,166,216],[124,127,128,166,216],[124,133,166],[124,127,128,129,130,131,132,133,134,135,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,155,156,157,158,159,160,166],[124,133,148,166],[124,133,140,141,166],[124,131,133,141,142,166],[124,132,166],[124,125,128,133,166],[124,133,137,141,142,166],[124,137,166],[124,131,133,136,166,209],[124,125,130,133,140,166],[124,166,198],[124,128,133,154,166,214,216],[111,124,166,179],[73,75,79,107,124,166],[77,78,107,108,124,166],[73,79,84,86,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,107,124,166],[73,124,166],[77,79,80,83,87,108,124,166],[77,79,124,166],[77,79,80,124,166],[75,77,79,80,87,124,166],[75,77,79,80,81,124,166],[75,77,79,81,124,166],[75,77,79,80,87,108,124,166],[77,79,80,87,124,166],[77,79,85,87,124,166],[82,83,108,124,166],[73,75,76,77,79,80,81,84,85,108,124,166],[86,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,124,166],[114,124,166,179,210],[79,107,124,166],[74,106,124,166],[124,166,180,188],[74,76,107,124,166],[74,75,76,77,79,80,84,85,86,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,107,108,111,114,116,124,166],[77,85,106,107,108,110,124,166],[79,96,108,111,113,124,166],[75,124,166],[78,109,124,166]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"893fbc7e2a50a3a780d3d6eb6899e45fe8dc4ca56708770b4731e481f55af599","impliedFormat":99},{"version":"b41df81349a5217799936c2a00b00583c10e535c710582161d34bbfb7bf63f6c","signature":"6c4fc18e39d7fc12e582fe90849988748413284b4ca7d1882efc5df02ac1d122","impliedFormat":99},{"version":"cc0473e7e091e7a34b9b39fce539340215a756d991a96bf0850620656b7c0cac","signature":"4fc5e1f9d12d829775c2f012817584ffc4e5f9b68ebe8b6cc95849b1ad28042e","impliedFormat":99},{"version":"e003a8ea786551aad76674c1df10dde82bb822e56ebee538fcde6f15dd979106","signature":"c7786cdeed5d98223413d0bf6c64f5b5e6bd19333a6daec377d9427feb71e0ad","impliedFormat":99},{"version":"bccd4fb1920e52eec5a5740ae9304fd97f6ab8d7bda56795323fbf7104b22f6e","signature":"3770f13c04b04677f53b3b4c75472649fc6c6b5e87eaf398cedff055e3df4b44","impliedFormat":99},{"version":"7e6def2c8973d3e8edec40a6adae18a44ec312c08c05e338e719bcaba1f4c0ab","signature":"8a7f943963d7b935ae833610c002a5dd2f5e9e3600ffdd7be7410fd98185ad38","impliedFormat":99},{"version":"e89256396be5bcf23017784a1ca79b9337df4ddec8d1c5dba243f775a8ef91ae","signature":"fdc586207bb8448cede90bd2869a156d50c45e031d147ad24025fd20dae752c3","impliedFormat":99},{"version":"27050ac862d121afc337bda5721cea68d5a6c4d22c761105ea100a8ac45b02be","signature":"7a47dece0e244f7a9b163ad34462a362380995ef57475ac43580cf32cf9ca47b","impliedFormat":99},{"version":"697ddf39d1196765d0bd713ba08e1757026e8699973f35a8157a63888b943c1c","signature":"48105ea7d87e3ef2a44b007f24b187cef9dbaa1657676a7a51e246dc3e45a965","impliedFormat":99},{"version":"ebb4cb28b654de6e48f44fc9d76bdc0a6dde67716124e54c9029fc30d1501c6d","signature":"a95c3578afbdcd64258d47eaee299827ef21e3b10a635a5db7c22e50e9aeb763","impliedFormat":99},{"version":"ae9af67bd67dc354068023d81b487f52b6aad41b86c20bb4ae2fd5b783faa2e5","signature":"ae502c4f86510ae1122bbc2a94190fd2134c403edec4df41b81d3f10eec52888","impliedFormat":99},{"version":"3a2f906ccdbb1e4e9731eac71b8509d2d10dd892e8946052c324fc478255b342","signature":"9d1b296a6feeec1fb29f0530eaf93e2e7e02e22877f698f0f8aa079445cfca4e","impliedFormat":99},{"version":"92169d583be6c930bd76c05e8dcd0fd18aca922e639885586b939ea2f226cc10","signature":"e0cf09adb52d7db004990d54e21a39a912e49247dff3cd0902e31f1db364e5ea","impliedFormat":99},{"version":"e21e09599a0615893b9d4494207ce87da949b6ccff6210f31698d3945ae8909e","signature":"c6996b51fc95903c020f6e8eb6b3bbd2f7f1b4e2eea8313067e9eed4678b45d2","impliedFormat":99},{"version":"49f73d42952875b2dc422ea628a707991e8826b35f682f5756d7f48620823b28","signature":"9c56f1632be8fb08faa94de6d353d941af9e1fd1828885ecf4cf332c555b34a5","impliedFormat":99},{"version":"7d285821d5a6ca0da082cda732060c009d1bf0766b51106999e76c22094ab0be","signature":"80e356f8f2e253c8599b6beca7bb8ffbc71ff2d35d50ea20837fbf49714233ea","impliedFormat":99},{"version":"dc4e59f547aa5800ab356abf8972f844da2c75f194b170941b4df3e790fc414f","signature":"135f95bb817b8666640d0f41cc39a24358024eb7e04479669ee1054ae2bd4b78","impliedFormat":99},{"version":"970119ac2e2e0eaaa599fa3f9998e47701b53fda82f679b22a952d0f944cc242","signature":"136717d00f958b0465892cf6cb3ba700aa5ea596cfe5076d4821b97bdb06c4df","impliedFormat":99},{"version":"4ace342e93b43946d429e11cec4832e978f54286ac7f08629e8417bb2e806497","signature":"b120709ec90e751790c32bb4e8b98c86be73ab25dae073172415964837c02c1f","impliedFormat":99},{"version":"94ceb640c900c56d3802b74a85bd452897ed29903bc71687c04f5f19c9bea800","signature":"5824dd4ad3a7b8a249aec83a477e7a7f3b6b792f869a1f966fa3eb4b968ec804","impliedFormat":99},{"version":"be0aa0e4f7219019d2797b4a4b50489f6ea23a9ae341d4d8e84c8398fc3972ec","signature":"b2827256c65baded87c4728a990ef2aed4ebec3e693a34c732ac8d5db01ff81b","impliedFormat":99},{"version":"7b1141e3d03c248f7611a6a3036598be23e9f727e20e543352fe3272d7f09200","signature":"a6660d41657ade4b08df2665f0e7eea2e30041e72cb7f78f8bd545b47085f168","impliedFormat":99},{"version":"a463043c9e585bb4e7f7fddbda1207b88429814b162eea454855c8a19bcd1ce4","signature":"9952aaa1fe655b163be1f558c9e994241f3dd0663b75c4d6bfad56b82fc0e289","impliedFormat":99},{"version":"e14cc632c6fccc1ef79ad6fda8cac4609cc2e8ddb14e92e02a101c3070ebc59c","signature":"edbb236b4869b592f180fca037581b68436112d4812c9e7fd7804570f21ad0c8","impliedFormat":99},{"version":"12f02213204d915dd9a28efd28e2b1b3f2656aee36f5e4fa15d1de5b36c034a5","signature":"7f3ba128a0933f9219b4c3e693a19a622f4475e37e59b9348cab0ca6bf527c06","impliedFormat":99},{"version":"40b3f8136e8682726fc016879e1c789e632f06371af8a48d08aa8c55eebb08fa","signature":"566dfbde96de66a11d563c14269dd817a8b8f95adc6dab80a2f38ba7d22573d5","impliedFormat":99},{"version":"aff3a3a0dc69d5694602448bdca6fd8d125757e95487a8edaa87f265eaa90736","signature":"3a52f2abd91ad36cf428a92e40224dbb1c08808f5218145fd87758e1f53796ad","impliedFormat":99},{"version":"2c9f0bab3ba54980f6c0095a16647459cf423aec7ef4fa06a03c08756f4d9f1a","signature":"c2e0a9c8e9653a7985c193c0ccb70988ba7623488f9aeff8b2eec113386db363","impliedFormat":99},{"version":"9e8d28ccd5617d3114adaeaf955d6ffcb84e64168c49f95f6211180080e9ec74","signature":"4aa81518d0d7c57b77af8b82c8e2a3d9a74d8bf5a5afb71d68a9b7f0fb9c1b27","impliedFormat":99},{"version":"6b7c60cf4ceddea87f8e35727bf9e27c881f9ef0cbb644bdcc1be8042551a361","signature":"a6578cac1ca1e7a66013f646110042cda599e395beb2591ba2d63d326169f5bd","impliedFormat":99},{"version":"bc4a677fc369f0e9fbd1d2c887dcd0cd480daf45a1dbdbb697b3f7d7e2e1c4a3","signature":"8f4c113dece48aad997b36f5c24bf6264cc93af0991fec489fd733a3f4247c6c","impliedFormat":99},{"version":"e8a4d7f2ddce5a7de0930bb407a18dd76fe16aed30c2cb71bc3413350665591b","signature":"87636ef4e1e29f65bdd76d87818ec3912b3256924c8a5434859e0ad7602f6b0a","impliedFormat":99},{"version":"f64678f9787d27916671994ae2053a273bc4ca228cc6a3da559b6b1f55c80b3a","signature":"7395b2de5a25aab1ee1e785363730dd04cb05c477398c526c8c2990621c4054c","impliedFormat":99},{"version":"99e220af29abb95e1e8c03fef41e02978f24e37ea384099f74e0520ddef8a304","signature":"f6059f6ac7c4f71ea52f5ba6a6b751ec18b03af3d136e2c4294d02499b11e09b","impliedFormat":99},{"version":"3bfd3d5edad084e4cc783e0c88d8a0ab6c9c02414c3613f7b2414549f3265df5","signature":"0173b3ee93cec16569892bc5f499e881525b19833cf5657493c2ab2c6f88dfdc","impliedFormat":99},{"version":"1a91f3a91a0bc2527f4053c8275fe0fa3cd0b46061aca92d732b1d087d576503","signature":"99857847b2895d1cc70e04870f16b3fa8983f3ef6ec8825f132dbfc24634bb4b","impliedFormat":99},{"version":"22b89513bcf065056a6a01231c62c3926833925ed21276d9675284a82e5f7e34","signature":"604d9ded408c8b9d2146f9f63af87a1c292fb3904aaa12df6ea08cd4b956289d","impliedFormat":99},{"version":"67195724b14ef65f0e8db1fda57b3269ac9ad34cae135c7b23d0f02dd7be983d","signature":"827bd931627efdc028c00bd47268a857b70bc8e23cdc5d8df6863a6e94c17c83","impliedFormat":99},{"version":"582899cf1be00292c5d9f9bbd7a6dfb88e52041779156e789e195d0ee41bd3e0","signature":"43a39f6ff509392928bccdffc3c3285aa28710b14cb0696ea2d1b39062820bd1","impliedFormat":99},{"version":"7951408798ead04257662f55116f7d8b02ffec69da0052f967718afa06f13754","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"91213febdda9c5f7313b1adc649ab499c02e88416d4038522012ebd69261e58f","signature":"1b96783b78ca0d5ce420f0093bfd3736ea91aade3020560127bc2ca276dc9ecf","impliedFormat":99},{"version":"64755c178e923468473c62ebcc82555b4fee854ce5d47b7969658155ab6bfceb","signature":"fe5cc7bfda3f473150257369b8d3d3eb47e56f1ce6ecf7b2fd7428bb04c3eab5","impliedFormat":99},{"version":"ccb72f8ad4bdd3d13c37d923169398e99b436bb73edbfda2f1cce5dac45097ff","signature":"921979a75fd6addab30ae77a076a644db986663bc5ef19ecce038a8da5b91a67","impliedFormat":99},{"version":"88b38f32a6ef2b33c04d08c94c2283b913297f1d22abcb8dce86543d54f2ab3f","signature":"44ca75115f0c79e73b63863692a40acf5b381e17c9bd3b74a2b7266ba319e3b6","impliedFormat":99},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"66c04a90cd9902ea54d79766c194e33a01d6b32833aecca807e940b5360375ff","signature":"7a2b4fc36897e5df9d4d72185b5eaf5840b165fc8215ac69ce18e22b2f839dd2","impliedFormat":99},{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"d802f0e6b5188646d307f070d83512e8eb94651858de8a82d1e47f60fb6da4e2","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"a12d953aa755b14ac1d28ecdc1e184f3285b01d6d1e58abc11bf1826bc9d80e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"a38efe83ff77c34e0f418a806a01ca3910c02ee7d64212a59d59bca6c2c38fa1","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"2b7b4bc0ff201a3f08b5d1e5161998ea655b7a2c840ca646c3adcaf126aa8882","affectsGlobalScope":true,"impliedFormat":1},{"version":"4314c7a11517e221f7296b46547dbc4df047115b182f544d072bdccffa57fc72","impliedFormat":1},{"version":"e9b97d69510658d2f4199b7d384326b7c4053b9e6645f5c19e1c2a54ede427fc","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"81711af669f63d43ccb4c08e15beda796656dd46673d0def001c7055db53852d","affectsGlobalScope":true,"impliedFormat":1},{"version":"19d5f8d3930e9f99aa2c36258bf95abbe5adf7e889e6181872d1cdba7c9a7dd5","impliedFormat":1},{"version":"9855e02d837744303391e5623a531734443a5f8e6e8755e018c41d63ad797db2","impliedFormat":1},{"version":"bdba81959361810be44bcfdd283f4d601e406ab5ad1d2bdff0ed480cf983c9d7","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"71450bbc2d82821d24ca05699a533e72758964e9852062c53b30f31c36978ab8","affectsGlobalScope":true,"impliedFormat":1},{"version":"b326f4813b90d230ec3950f66bd5b5ce3971aac5fac67cfafc54aa07b39fd07f","affectsGlobalScope":true,"impliedFormat":1},{"version":"6ee692acba8b517b5041c02c5a3369a03f36158b6bb7605d6a98d832e7a13fcc","impliedFormat":1},{"version":"ee07335d073f94f1ec8d7311c4b15abac03a8160e7cdfd4771c47440a7489e1b","impliedFormat":1},{"version":"ec79bdd311bcba9b889af9da0cd88611affdda8c2d491305fa61b7529d5b89ba","impliedFormat":1},{"version":"73cf6cc19f16c0191e4e9d497ab0c11c7b38f1ca3f01ad0f09a3a5a971aac4b8","impliedFormat":1},{"version":"528b62e4272e3ddfb50e8eed9e359dedea0a4d171c3eb8f337f4892aac37b24b","impliedFormat":1},{"version":"eec1e051df11fb4c7f4df5a9a18022699e596024c06bc085e9b410effe790a9a","impliedFormat":1},{"version":"d83f86427b468176fbacb28ef302f152ad3d2d127664c627216e45cfa06fbf7e","affectsGlobalScope":true,"impliedFormat":1},{"version":"f72bc8fe16da67e4e3268599295797b202b95e54bd215a03f97e925dd1502a36","impliedFormat":1},{"version":"b1b6ee0d012aeebe11d776a155d8979730440082797695fc8e2a5c326285678f","impliedFormat":1},{"version":"45875bcae57270aeb3ebc73a5e3fb4c7b9d91d6b045f107c1d8513c28ece71c0","impliedFormat":1},{"version":"915e18c559321c0afaa8d34674d3eb77e1ded12c3e85bf2a9891ec48b07a1ca5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a2f3aa60aece790303a62220456ff845a1b980899bdc2e81646b8e33d9d9cc15","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"70b57b5529051497e9f6482b76d91c0dcbb103d9ead8a0549f5bab8f65e5d031","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"0be405730b99eee7dbb051d74f6c3c0f1f8661d86184a7122b82c2bfb0991922","impliedFormat":1},{"version":"8302157cd431b3943eed09ad439b4441826c673d9f870dcb0e1f48e891a4211e","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"125d792ec6c0c0f657d758055c494301cc5fdb327d9d9d5960b3f129aff76093","impliedFormat":1},{"version":"12aad38de6f0594dc21efa78a2c1f67bf6a7ef5a389e05417fe9945284450908","affectsGlobalScope":true,"impliedFormat":1},{"version":"2754d8221d77c7b382096651925eb476f1066b3348da4b73fe71ced7801edada","impliedFormat":1},{"version":"a5890565ed564c7b29eb1b1038d4e10c03a3f5231b0a8d48fea4b41ab19f4f46","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"98ffdf93dfdd206516971d28e3e473f417a5cfd41172e46b4ce45008f640588e","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"7172949957e9ae6dd5c046d658cc5f1d00c12d85006554412e1de0dcfea8257e","affectsGlobalScope":true,"impliedFormat":1},{"version":"1a654e0d950353614ba4637a8de4f9d367903a0692b748e11fccf8c880c99735","affectsGlobalScope":true,"impliedFormat":1},{"version":"42da246c46ca3fd421b6fd88bb4466cda7137cf33e87ba5ceeded30219c428bd","impliedFormat":1},{"version":"3a051941721a7f905544732b0eb819c8d88333a96576b13af08b82c4f17581e4","impliedFormat":1},{"version":"ac5ed35e649cdd8143131964336ab9076937fa91802ec760b3ea63b59175c10a","impliedFormat":1},{"version":"66e4838e0e3e0ea1ee62b57b3984a7f606f73523dfdae6500b6e3258c0aa3c7d","affectsGlobalScope":true,"impliedFormat":1},{"version":"db3d77167a7da6c5ba0c51c5b654820e3464093f21724ccd774c0b9bc3f81bc0","impliedFormat":1},{"version":"ad90122e1cb599b3bc06a11710eb5489101be678f2920f2322b0ac3e195af78d","impliedFormat":1}],"root":[[74,118]],"options":{"allowJs":true,"composite":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":199,"outDir":"./","skipLibCheck":true,"strict":true,"strictBindCallApply":true,"target":9,"useDefineForClassFields":false},"referencedMap":[[73,1],[163,2],[164,2],[165,3],[124,4],[166,5],[167,6],[168,7],[119,1],[122,8],[120,1],[121,1],[169,9],[170,10],[171,11],[172,12],[173,13],[174,14],[175,14],[177,1],[176,15],[178,16],[179,17],[180,18],[162,19],[123,1],[181,20],[182,21],[183,22],[216,23],[184,24],[185,25],[186,26],[187,27],[188,28],[189,29],[190,30],[191,31],[192,32],[193,33],[194,33],[195,34],[196,1],[197,1],[198,35],[200,36],[199,37],[201,38],[202,39],[203,40],[204,41],[205,42],[206,43],[207,44],[208,45],[209,46],[210,47],[211,48],[212,49],[213,50],[214,51],[215,52],[71,1],[72,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],[22,1],[23,1],[4,1],[24,1],[28,1],[25,1],[26,1],[27,1],[29,1],[30,1],[31,1],[5,1],[32,1],[33,1],[34,1],[35,1],[6,1],[39,1],[36,1],[37,1],[38,1],[40,1],[7,1],[41,1],[46,1],[47,1],[42,1],[43,1],[44,1],[45,1],[8,1],[51,1],[48,1],[49,1],[50,1],[52,1],[9,1],[53,1],[54,1],[55,1],[57,1],[56,1],[58,1],[59,1],[10,1],[60,1],[61,1],[62,1],[11,1],[63,1],[64,1],[65,1],[66,1],[67,1],[1,1],[68,1],[69,1],[70,1],[140,53],[150,54],[139,53],[160,55],[131,56],[130,57],[159,58],[153,59],[158,60],[133,61],[147,62],[132,63],[156,64],[128,65],[127,58],[157,66],[129,67],[134,68],[135,1],[138,68],[125,1],[161,69],[151,70],[142,71],[143,72],[145,73],[141,74],[144,75],[154,58],[136,76],[137,77],[146,78],[126,79],[149,70],[148,68],[152,1],[155,80],[112,81],[80,82],[79,83],[108,84],[75,85],[88,86],[89,87],[90,88],[91,87],[92,88],[93,89],[94,90],[95,90],[96,91],[97,90],[98,92],[99,91],[100,93],[101,91],[103,94],[102,86],[104,94],[105,90],[84,95],[85,1],[86,96],[106,97],[115,98],[116,99],[107,100],[74,1],[113,101],[77,102],[117,1],[118,103],[111,104],[114,105],[82,1],[109,1],[83,1],[76,106],[87,1],[110,107],[81,1],[78,1]],"latestChangedDtsFile":"./src/main.d.mts","version":"5.9.3"}
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "beancount",
3
- "version": "0.0.29",
3
+ "version": "0.0.31",
4
4
  "description": "Parse and work with Beancount accounting files in TypeScript with full type safety",
5
5
  "type": "module",
6
+ "sideEffects": false,
6
7
  "exports": {
7
8
  ".": {
8
9
  "import": "./build/src/main.mjs",