docrev 0.8.1 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (307) hide show
  1. package/.claude/settings.local.json +9 -0
  2. package/.gitattributes +1 -0
  3. package/PLAN-tables-and-postprocess.md +850 -0
  4. package/README.md +33 -0
  5. package/bin/rev.js +12 -131
  6. package/bin/rev.ts +145 -0
  7. package/dist/bin/rev.d.ts +9 -0
  8. package/dist/bin/rev.d.ts.map +1 -0
  9. package/dist/bin/rev.js +118 -0
  10. package/dist/bin/rev.js.map +1 -0
  11. package/dist/lib/annotations.d.ts +91 -0
  12. package/dist/lib/annotations.d.ts.map +1 -0
  13. package/dist/lib/annotations.js +554 -0
  14. package/dist/lib/annotations.js.map +1 -0
  15. package/dist/lib/build.d.ts +171 -0
  16. package/dist/lib/build.d.ts.map +1 -0
  17. package/dist/lib/build.js +755 -0
  18. package/dist/lib/build.js.map +1 -0
  19. package/dist/lib/citations.d.ts +34 -0
  20. package/dist/lib/citations.d.ts.map +1 -0
  21. package/dist/lib/citations.js +140 -0
  22. package/dist/lib/citations.js.map +1 -0
  23. package/dist/lib/commands/build.d.ts +13 -0
  24. package/dist/lib/commands/build.d.ts.map +1 -0
  25. package/dist/lib/commands/build.js +678 -0
  26. package/dist/lib/commands/build.js.map +1 -0
  27. package/dist/lib/commands/citations.d.ts +11 -0
  28. package/dist/lib/commands/citations.d.ts.map +1 -0
  29. package/dist/lib/commands/citations.js +428 -0
  30. package/dist/lib/commands/citations.js.map +1 -0
  31. package/dist/lib/commands/comments.d.ts +11 -0
  32. package/dist/lib/commands/comments.d.ts.map +1 -0
  33. package/dist/lib/commands/comments.js +883 -0
  34. package/dist/lib/commands/comments.js.map +1 -0
  35. package/dist/lib/commands/context.d.ts +35 -0
  36. package/dist/lib/commands/context.d.ts.map +1 -0
  37. package/dist/lib/commands/context.js +59 -0
  38. package/dist/lib/commands/context.js.map +1 -0
  39. package/dist/lib/commands/core.d.ts +11 -0
  40. package/dist/lib/commands/core.d.ts.map +1 -0
  41. package/dist/lib/commands/core.js +246 -0
  42. package/dist/lib/commands/core.js.map +1 -0
  43. package/dist/lib/commands/doi.d.ts +11 -0
  44. package/dist/lib/commands/doi.d.ts.map +1 -0
  45. package/dist/lib/commands/doi.js +373 -0
  46. package/dist/lib/commands/doi.js.map +1 -0
  47. package/dist/lib/commands/history.d.ts +11 -0
  48. package/dist/lib/commands/history.d.ts.map +1 -0
  49. package/dist/lib/commands/history.js +245 -0
  50. package/dist/lib/commands/history.js.map +1 -0
  51. package/dist/lib/commands/index.d.ts +28 -0
  52. package/dist/lib/commands/index.d.ts.map +1 -0
  53. package/dist/lib/commands/index.js +35 -0
  54. package/dist/lib/commands/index.js.map +1 -0
  55. package/dist/lib/commands/init.d.ts +11 -0
  56. package/dist/lib/commands/init.d.ts.map +1 -0
  57. package/dist/lib/commands/init.js +209 -0
  58. package/dist/lib/commands/init.js.map +1 -0
  59. package/dist/lib/commands/response.d.ts +11 -0
  60. package/dist/lib/commands/response.d.ts.map +1 -0
  61. package/dist/lib/commands/response.js +317 -0
  62. package/dist/lib/commands/response.js.map +1 -0
  63. package/dist/lib/commands/sections.d.ts +11 -0
  64. package/dist/lib/commands/sections.d.ts.map +1 -0
  65. package/dist/lib/commands/sections.js +1071 -0
  66. package/dist/lib/commands/sections.js.map +1 -0
  67. package/dist/lib/commands/utilities.d.ts +19 -0
  68. package/dist/lib/commands/utilities.d.ts.map +1 -0
  69. package/dist/lib/commands/utilities.js +2009 -0
  70. package/dist/lib/commands/utilities.js.map +1 -0
  71. package/dist/lib/comment-realign.d.ts +50 -0
  72. package/dist/lib/comment-realign.d.ts.map +1 -0
  73. package/dist/lib/comment-realign.js +372 -0
  74. package/dist/lib/comment-realign.js.map +1 -0
  75. package/dist/lib/config.d.ts +41 -0
  76. package/dist/lib/config.d.ts.map +1 -0
  77. package/dist/lib/config.js +76 -0
  78. package/dist/lib/config.js.map +1 -0
  79. package/dist/lib/crossref.d.ts +108 -0
  80. package/dist/lib/crossref.d.ts.map +1 -0
  81. package/dist/lib/crossref.js +597 -0
  82. package/dist/lib/crossref.js.map +1 -0
  83. package/dist/lib/dependencies.d.ts +30 -0
  84. package/dist/lib/dependencies.d.ts.map +1 -0
  85. package/dist/lib/dependencies.js +95 -0
  86. package/dist/lib/dependencies.js.map +1 -0
  87. package/dist/lib/doi-cache.d.ts +29 -0
  88. package/dist/lib/doi-cache.d.ts.map +1 -0
  89. package/dist/lib/doi-cache.js +104 -0
  90. package/dist/lib/doi-cache.js.map +1 -0
  91. package/dist/lib/doi.d.ts +65 -0
  92. package/dist/lib/doi.d.ts.map +1 -0
  93. package/dist/lib/doi.js +710 -0
  94. package/dist/lib/doi.js.map +1 -0
  95. package/dist/lib/equations.d.ts +61 -0
  96. package/dist/lib/equations.d.ts.map +1 -0
  97. package/dist/lib/equations.js +445 -0
  98. package/dist/lib/equations.js.map +1 -0
  99. package/dist/lib/errors.d.ts +60 -0
  100. package/dist/lib/errors.d.ts.map +1 -0
  101. package/dist/lib/errors.js +303 -0
  102. package/dist/lib/errors.js.map +1 -0
  103. package/dist/lib/format.d.ts +104 -0
  104. package/dist/lib/format.d.ts.map +1 -0
  105. package/dist/lib/format.js +416 -0
  106. package/dist/lib/format.js.map +1 -0
  107. package/dist/lib/git.d.ts +88 -0
  108. package/dist/lib/git.d.ts.map +1 -0
  109. package/dist/lib/git.js +304 -0
  110. package/dist/lib/git.js.map +1 -0
  111. package/dist/lib/grammar.d.ts +62 -0
  112. package/dist/lib/grammar.d.ts.map +1 -0
  113. package/dist/lib/grammar.js +244 -0
  114. package/dist/lib/grammar.js.map +1 -0
  115. package/dist/lib/image-registry.d.ts +68 -0
  116. package/dist/lib/image-registry.d.ts.map +1 -0
  117. package/dist/lib/image-registry.js +112 -0
  118. package/dist/lib/image-registry.js.map +1 -0
  119. package/dist/lib/import.d.ts +184 -0
  120. package/dist/lib/import.d.ts.map +1 -0
  121. package/dist/lib/import.js +1581 -0
  122. package/dist/lib/import.js.map +1 -0
  123. package/dist/lib/journals.d.ts +55 -0
  124. package/dist/lib/journals.d.ts.map +1 -0
  125. package/dist/lib/journals.js +417 -0
  126. package/dist/lib/journals.js.map +1 -0
  127. package/dist/lib/merge.d.ts +138 -0
  128. package/dist/lib/merge.d.ts.map +1 -0
  129. package/dist/lib/merge.js +603 -0
  130. package/dist/lib/merge.js.map +1 -0
  131. package/dist/lib/orcid.d.ts +36 -0
  132. package/dist/lib/orcid.d.ts.map +1 -0
  133. package/dist/lib/orcid.js +117 -0
  134. package/dist/lib/orcid.js.map +1 -0
  135. package/dist/lib/pdf-comments.d.ts +95 -0
  136. package/dist/lib/pdf-comments.d.ts.map +1 -0
  137. package/dist/lib/pdf-comments.js +192 -0
  138. package/dist/lib/pdf-comments.js.map +1 -0
  139. package/dist/lib/pdf-import.d.ts +118 -0
  140. package/dist/lib/pdf-import.d.ts.map +1 -0
  141. package/dist/lib/pdf-import.js +397 -0
  142. package/dist/lib/pdf-import.js.map +1 -0
  143. package/dist/lib/plugins.d.ts +76 -0
  144. package/dist/lib/plugins.d.ts.map +1 -0
  145. package/dist/lib/plugins.js +235 -0
  146. package/dist/lib/plugins.js.map +1 -0
  147. package/dist/lib/postprocess.d.ts +42 -0
  148. package/dist/lib/postprocess.d.ts.map +1 -0
  149. package/dist/lib/postprocess.js +138 -0
  150. package/dist/lib/postprocess.js.map +1 -0
  151. package/dist/lib/pptx-template.d.ts +59 -0
  152. package/dist/lib/pptx-template.d.ts.map +1 -0
  153. package/dist/lib/pptx-template.js +613 -0
  154. package/dist/lib/pptx-template.js.map +1 -0
  155. package/dist/lib/pptx-themes.d.ts +80 -0
  156. package/dist/lib/pptx-themes.d.ts.map +1 -0
  157. package/dist/lib/pptx-themes.js +818 -0
  158. package/dist/lib/pptx-themes.js.map +1 -0
  159. package/dist/lib/protect-restore.d.ts +137 -0
  160. package/dist/lib/protect-restore.d.ts.map +1 -0
  161. package/dist/lib/protect-restore.js +394 -0
  162. package/dist/lib/protect-restore.js.map +1 -0
  163. package/dist/lib/rate-limiter.d.ts +27 -0
  164. package/dist/lib/rate-limiter.d.ts.map +1 -0
  165. package/dist/lib/rate-limiter.js +79 -0
  166. package/dist/lib/rate-limiter.js.map +1 -0
  167. package/dist/lib/response.d.ts +41 -0
  168. package/dist/lib/response.d.ts.map +1 -0
  169. package/dist/lib/response.js +150 -0
  170. package/dist/lib/response.js.map +1 -0
  171. package/dist/lib/review.d.ts +35 -0
  172. package/dist/lib/review.d.ts.map +1 -0
  173. package/dist/lib/review.js +263 -0
  174. package/dist/lib/review.js.map +1 -0
  175. package/dist/lib/schema.d.ts +66 -0
  176. package/dist/lib/schema.d.ts.map +1 -0
  177. package/dist/lib/schema.js +339 -0
  178. package/dist/lib/schema.js.map +1 -0
  179. package/dist/lib/scientific-words.d.ts +6 -0
  180. package/dist/lib/scientific-words.d.ts.map +1 -0
  181. package/dist/lib/scientific-words.js +66 -0
  182. package/dist/lib/scientific-words.js.map +1 -0
  183. package/dist/lib/sections.d.ts +40 -0
  184. package/dist/lib/sections.d.ts.map +1 -0
  185. package/dist/lib/sections.js +288 -0
  186. package/dist/lib/sections.js.map +1 -0
  187. package/dist/lib/slides.d.ts +86 -0
  188. package/dist/lib/slides.d.ts.map +1 -0
  189. package/dist/lib/slides.js +676 -0
  190. package/dist/lib/slides.js.map +1 -0
  191. package/dist/lib/spelling.d.ts +76 -0
  192. package/dist/lib/spelling.d.ts.map +1 -0
  193. package/dist/lib/spelling.js +272 -0
  194. package/dist/lib/spelling.js.map +1 -0
  195. package/dist/lib/templates.d.ts +30 -0
  196. package/dist/lib/templates.d.ts.map +1 -0
  197. package/dist/lib/templates.js +504 -0
  198. package/dist/lib/templates.js.map +1 -0
  199. package/dist/lib/themes.d.ts +85 -0
  200. package/dist/lib/themes.d.ts.map +1 -0
  201. package/dist/lib/themes.js +652 -0
  202. package/dist/lib/themes.js.map +1 -0
  203. package/dist/lib/trackchanges.d.ts +51 -0
  204. package/dist/lib/trackchanges.d.ts.map +1 -0
  205. package/dist/lib/trackchanges.js +202 -0
  206. package/dist/lib/trackchanges.js.map +1 -0
  207. package/dist/lib/tui.d.ts +76 -0
  208. package/dist/lib/tui.d.ts.map +1 -0
  209. package/dist/lib/tui.js +377 -0
  210. package/dist/lib/tui.js.map +1 -0
  211. package/dist/lib/types.d.ts +447 -0
  212. package/dist/lib/types.d.ts.map +1 -0
  213. package/dist/lib/types.js +6 -0
  214. package/dist/lib/types.js.map +1 -0
  215. package/dist/lib/undo.d.ts +57 -0
  216. package/dist/lib/undo.d.ts.map +1 -0
  217. package/dist/lib/undo.js +185 -0
  218. package/dist/lib/undo.js.map +1 -0
  219. package/dist/lib/utils.d.ts +16 -0
  220. package/dist/lib/utils.d.ts.map +1 -0
  221. package/dist/lib/utils.js +40 -0
  222. package/dist/lib/utils.js.map +1 -0
  223. package/dist/lib/variables.d.ts +42 -0
  224. package/dist/lib/variables.d.ts.map +1 -0
  225. package/dist/lib/variables.js +141 -0
  226. package/dist/lib/variables.js.map +1 -0
  227. package/dist/lib/word.d.ts +80 -0
  228. package/dist/lib/word.d.ts.map +1 -0
  229. package/dist/lib/word.js +360 -0
  230. package/dist/lib/word.js.map +1 -0
  231. package/dist/lib/wordcomments.d.ts +51 -0
  232. package/dist/lib/wordcomments.d.ts.map +1 -0
  233. package/dist/lib/wordcomments.js +587 -0
  234. package/dist/lib/wordcomments.js.map +1 -0
  235. package/eslint.config.js +27 -0
  236. package/lib/annotations.ts +622 -0
  237. package/lib/apply-buildup-colors.py +88 -0
  238. package/lib/build.ts +1013 -0
  239. package/lib/{citations.js → citations.ts} +38 -27
  240. package/lib/commands/{build.js → build.ts} +80 -27
  241. package/lib/commands/{citations.js → citations.ts} +36 -18
  242. package/lib/commands/{comments.js → comments.ts} +187 -54
  243. package/lib/commands/{context.js → context.ts} +18 -8
  244. package/lib/commands/{core.js → core.ts} +34 -20
  245. package/lib/commands/{doi.js → doi.ts} +32 -16
  246. package/lib/commands/{history.js → history.ts} +25 -12
  247. package/lib/commands/{index.js → index.ts} +9 -5
  248. package/lib/commands/{init.js → init.ts} +20 -8
  249. package/lib/commands/{response.js → response.ts} +47 -20
  250. package/lib/commands/{sections.js → sections.ts} +273 -68
  251. package/lib/commands/{utilities.js → utilities.ts} +338 -158
  252. package/lib/{comment-realign.js → comment-realign.ts} +117 -45
  253. package/lib/config.ts +84 -0
  254. package/lib/{crossref.js → crossref.ts} +213 -138
  255. package/lib/dependencies.ts +106 -0
  256. package/lib/doi-cache.ts +115 -0
  257. package/lib/{doi.js → doi.ts} +115 -281
  258. package/lib/{equations.js → equations.ts} +60 -64
  259. package/lib/{errors.js → errors.ts} +56 -48
  260. package/lib/{format.js → format.ts} +137 -63
  261. package/lib/{git.js → git.ts} +66 -63
  262. package/lib/{grammar.js → grammar.ts} +45 -32
  263. package/lib/image-registry.ts +180 -0
  264. package/lib/import.ts +2060 -0
  265. package/lib/journals.ts +505 -0
  266. package/lib/{merge.js → merge.ts} +185 -135
  267. package/lib/{orcid.js → orcid.ts} +17 -22
  268. package/lib/{pdf-comments.js → pdf-comments.ts} +76 -18
  269. package/lib/{pdf-import.js → pdf-import.ts} +148 -70
  270. package/lib/{plugins.js → plugins.ts} +82 -39
  271. package/lib/postprocess.ts +188 -0
  272. package/lib/pptx-color-filter.lua +37 -0
  273. package/lib/pptx-template.ts +625 -0
  274. package/lib/pptx-themes/academic.pptx +0 -0
  275. package/lib/pptx-themes/corporate.pptx +0 -0
  276. package/lib/pptx-themes/dark.pptx +0 -0
  277. package/lib/pptx-themes/default.pptx +0 -0
  278. package/lib/pptx-themes/minimal.pptx +0 -0
  279. package/lib/pptx-themes/plant.pptx +0 -0
  280. package/lib/pptx-themes.ts +896 -0
  281. package/lib/protect-restore.ts +516 -0
  282. package/lib/rate-limiter.ts +94 -0
  283. package/lib/{response.js → response.ts} +36 -21
  284. package/lib/{review.js → review.ts} +53 -43
  285. package/lib/{schema.js → schema.ts} +70 -25
  286. package/lib/{sections.js → sections.ts} +71 -76
  287. package/lib/slides.ts +793 -0
  288. package/lib/{spelling.js → spelling.ts} +43 -59
  289. package/lib/{templates.js → templates.ts} +20 -17
  290. package/lib/themes.ts +742 -0
  291. package/lib/{trackchanges.js → trackchanges.ts} +52 -23
  292. package/lib/types.ts +509 -0
  293. package/lib/{undo.js → undo.ts} +75 -52
  294. package/lib/utils.ts +41 -0
  295. package/lib/{variables.js → variables.ts} +60 -54
  296. package/lib/word.ts +428 -0
  297. package/lib/{wordcomments.js → wordcomments.ts} +94 -40
  298. package/package.json +15 -5
  299. package/skill/REFERENCE.md +67 -0
  300. package/tsconfig.json +26 -0
  301. package/lib/annotations.js +0 -414
  302. package/lib/build.js +0 -639
  303. package/lib/config.js +0 -79
  304. package/lib/import.js +0 -1145
  305. package/lib/journals.js +0 -629
  306. package/lib/word.js +0 -225
  307. /package/lib/{scientific-words.js → scientific-words.ts} +0 -0
@@ -0,0 +1,171 @@
1
+ /**
2
+ * Build system - combines sections → paper.md → PDF/DOCX/TEX
3
+ *
4
+ * Features:
5
+ * - Reads rev.yaml config
6
+ * - Combines section files into paper.md (persisted)
7
+ * - Strips annotations appropriately per output format
8
+ * - Runs pandoc with crossref filter
9
+ */
10
+ import type { Author } from './types.js';
11
+ export interface CrossrefConfig {
12
+ figureTitle?: string;
13
+ tableTitle?: string;
14
+ figPrefix?: string | string[];
15
+ tblPrefix?: string | string[];
16
+ secPrefix?: string | string[];
17
+ linkReferences?: boolean;
18
+ }
19
+ export interface PdfConfig {
20
+ template?: string | null;
21
+ documentclass?: string;
22
+ fontsize?: string;
23
+ geometry?: string;
24
+ linestretch?: number;
25
+ numbersections?: boolean;
26
+ toc?: boolean;
27
+ }
28
+ export interface DocxConfig {
29
+ reference?: string | null;
30
+ keepComments?: boolean;
31
+ toc?: boolean;
32
+ }
33
+ export interface TexConfig {
34
+ standalone?: boolean;
35
+ }
36
+ export interface BeamerConfig {
37
+ theme?: string;
38
+ colortheme?: string | null;
39
+ fonttheme?: string | null;
40
+ aspectratio?: string | null;
41
+ navigation?: string | null;
42
+ section?: boolean;
43
+ notes?: string | false;
44
+ fit_images?: boolean;
45
+ }
46
+ export interface PptxConfig {
47
+ theme?: string;
48
+ reference?: string | null;
49
+ media?: string | null;
50
+ colors?: {
51
+ default?: string;
52
+ title?: string;
53
+ };
54
+ buildup?: {
55
+ grey?: string;
56
+ accent?: string;
57
+ enabled?: boolean;
58
+ };
59
+ }
60
+ export interface TablesConfig {
61
+ nowrap?: string[];
62
+ }
63
+ export interface PostprocessConfig {
64
+ pdf?: string | null;
65
+ docx?: string | null;
66
+ tex?: string | null;
67
+ pptx?: string | null;
68
+ beamer?: string | null;
69
+ all?: string | null;
70
+ [key: string]: string | null | undefined;
71
+ }
72
+ export interface BuildConfig {
73
+ title: string;
74
+ authors: (string | Author)[];
75
+ sections: string[];
76
+ bibliography: string | null;
77
+ csl: string | null;
78
+ crossref: CrossrefConfig;
79
+ pdf: PdfConfig;
80
+ docx: DocxConfig;
81
+ tex: TexConfig;
82
+ beamer: BeamerConfig;
83
+ pptx: PptxConfig;
84
+ tables: TablesConfig;
85
+ postprocess: PostprocessConfig;
86
+ _configPath?: string | null;
87
+ }
88
+ export interface BuildResult {
89
+ format: string;
90
+ success: boolean;
91
+ outputPath?: string;
92
+ error?: string;
93
+ }
94
+ interface BuildOptions {
95
+ verbose?: boolean;
96
+ config?: BuildConfig;
97
+ outputPath?: string;
98
+ crossref?: boolean;
99
+ _refsAutoInjected?: boolean;
100
+ _forwardRefsResolved?: number;
101
+ }
102
+ interface CombineOptions extends BuildOptions {
103
+ _refsAutoInjected?: boolean;
104
+ }
105
+ interface PandocResult {
106
+ outputPath: string;
107
+ success: boolean;
108
+ error?: string;
109
+ }
110
+ interface FullBuildResult {
111
+ results: BuildResult[];
112
+ paperPath: string;
113
+ warnings: string[];
114
+ forwardRefsResolved: number;
115
+ refsAutoInjected?: boolean;
116
+ }
117
+ /**
118
+ * Default rev.yaml configuration
119
+ */
120
+ export declare const DEFAULT_CONFIG: BuildConfig;
121
+ /**
122
+ * Load rev.yaml config from directory
123
+ * @param directory - Project directory path
124
+ * @returns Merged config with defaults
125
+ * @throws {TypeError} If directory is not a string
126
+ * @throws {Error} If rev.yaml exists but cannot be parsed
127
+ */
128
+ export declare function loadConfig(directory: string): BuildConfig;
129
+ /**
130
+ * Find section files in directory
131
+ * @param directory - Project directory path
132
+ * @param configSections - Sections from rev.yaml (optional)
133
+ * @returns Ordered list of section file names
134
+ * @throws {TypeError} If directory is not a string
135
+ */
136
+ export declare function findSections(directory: string, configSections?: string[]): string[];
137
+ /**
138
+ * Combine section files into paper.md
139
+ */
140
+ export declare function combineSections(directory: string, config: BuildConfig, options?: CombineOptions): string;
141
+ /**
142
+ * Process markdown tables to apply nowrap formatting to specified columns.
143
+ * Converts distribution notation (Normal, Student-t, Gamma) to LaTeX math.
144
+ * @param content - Markdown content
145
+ * @param tablesConfig - tables config from rev.yaml
146
+ * @param format - output format (pdf, docx, etc.)
147
+ * @returns processed content
148
+ */
149
+ export declare function processTablesForFormat(content: string, tablesConfig: TablesConfig, format: string): string;
150
+ /**
151
+ * Prepare paper.md for specific output format
152
+ */
153
+ export declare function prepareForFormat(paperPath: string, format: string, config: BuildConfig, options?: BuildOptions): string;
154
+ /**
155
+ * Build pandoc arguments for format
156
+ */
157
+ export declare function buildPandocArgs(format: string, config: BuildConfig, outputPath: string): string[];
158
+ /**
159
+ * Run pandoc build
160
+ */
161
+ export declare function runPandoc(inputPath: string, format: string, config: BuildConfig, options?: BuildOptions): Promise<PandocResult>;
162
+ /**
163
+ * Full build pipeline
164
+ */
165
+ export declare function build(directory: string, formats?: string[], options?: BuildOptions): Promise<FullBuildResult>;
166
+ /**
167
+ * Get build status summary
168
+ */
169
+ export declare function formatBuildResults(results: BuildResult[]): string;
170
+ export {};
171
+ //# sourceMappingURL=build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../lib/build.ts"],"names":[],"mappings":"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"}