diff --git a/lib/pdf-datasheet.tsx b/lib/pdf-datasheet.tsx index 095b3ee6..d86aebc1 100644 --- a/lib/pdf-datasheet.tsx +++ b/lib/pdf-datasheet.tsx @@ -21,7 +21,13 @@ Font.register({ // Industrial/technical/restrained design - STYLEGUIDE.md compliant const styles = StyleSheet.create({ page: { - padding: 72, // Large margins for engineering documentation feel + // Large margins for engineering documentation feel. + // Extra bottom padding reserves space for the fixed footer so content + // (esp. long descriptions) doesn't render underneath it. + paddingTop: 72, + paddingLeft: 72, + paddingRight: 72, + paddingBottom: 140, fontFamily: 'Helvetica', fontSize: 10, color: '#1F2933', // Dark gray text @@ -165,12 +171,15 @@ const styles = StyleSheet.create({ // Cross-section table - engineering specification style table: { marginTop: 16, + borderWidth: 1, + borderColor: '#E6E9ED', }, tableHeader: { flexDirection: 'row', backgroundColor: '#E6E9ED', - borderBottom: '1px solid #E6E9ED', + borderBottomWidth: 1, + borderBottomColor: '#E6E9ED', }, tableHeaderCell: { @@ -183,9 +192,19 @@ const styles = StyleSheet.create({ letterSpacing: 0.3, }, + tableHeaderCellLast: { + borderRightWidth: 0, + }, + + tableHeaderCellWithDivider: { + borderRightWidth: 1, + borderRightColor: '#E6E9ED', + }, + tableRow: { flexDirection: 'row', - borderBottom: '1px solid #F8F9FA', + borderBottomWidth: 1, + borderBottomColor: '#E6E9ED', }, tableCell: { @@ -195,6 +214,15 @@ const styles = StyleSheet.create({ color: '#1F2933', }, + tableCellLast: { + borderRightWidth: 0, + }, + + tableCellWithDivider: { + borderRightWidth: 1, + borderRightColor: '#E6E9ED', + }, + tableRowAlt: { backgroundColor: '#F8F9FA', }, @@ -209,7 +237,54 @@ const styles = StyleSheet.create({ specsGrid: { flexDirection: 'row', flexWrap: 'wrap', - justifyContent: 'space-between', + }, + + // Technical data table (used for the metagrid) + specsTable: { + borderWidth: 1, + borderColor: '#E6E9ED', + }, + + specsTableRow: { + flexDirection: 'row', + borderBottomWidth: 1, + borderBottomColor: '#E6E9ED', + }, + + specsTableRowLast: { + borderBottomWidth: 0, + }, + + specsTableLabelCell: { + flex: 3, + paddingVertical: 8, + paddingHorizontal: 8, + backgroundColor: '#F8F9FA', + borderRightWidth: 1, + borderRightColor: '#E6E9ED', + justifyContent: 'center', + }, + + specsTableValueCell: { + flex: 4, + paddingVertical: 8, + paddingHorizontal: 8, + justifyContent: 'center', + }, + + specsTableLabelText: { + fontSize: 9, + fontWeight: 700, + color: '#0E2A47', + textTransform: 'uppercase', + letterSpacing: 0.3, + lineHeight: 1.2, + }, + + specsTableValueText: { + fontSize: 10, + color: '#1F2933', + lineHeight: 1.4, }, specColumn: { @@ -391,13 +466,24 @@ export const PDFDatasheet: React.FC = ({ {product.attributes && product.attributes.length > 0 && ( {labels.specifications} - + {product.attributes.map((attr, index) => ( - - {attr.name} - - {attr.options.join(', ')} - + + + {attr.name} + + + + {attr.options.join(', ')} + + ))} @@ -419,7 +505,7 @@ export const PDFDatasheet: React.FC = ({ )} {/* Minimal footer */} - + {labels.sku}: {product.sku} diff --git a/public/datasheets/h1z2z2-k-de.pdf b/public/datasheets/h1z2z2-k-de.pdf index 7e66403a..e1bac0f9 100644 Binary files a/public/datasheets/h1z2z2-k-de.pdf and b/public/datasheets/h1z2z2-k-de.pdf differ diff --git a/public/datasheets/h1z2z2-k-en.pdf b/public/datasheets/h1z2z2-k-en.pdf index 46786101..22397a91 100644 Binary files a/public/datasheets/h1z2z2-k-en.pdf and b/public/datasheets/h1z2z2-k-en.pdf differ diff --git a/public/datasheets/n2x2y-2-de.pdf b/public/datasheets/n2x2y-2-de.pdf index 011dc7a9..8ea4e8b9 100644 Binary files a/public/datasheets/n2x2y-2-de.pdf and b/public/datasheets/n2x2y-2-de.pdf differ diff --git a/public/datasheets/n2x2y-en.pdf b/public/datasheets/n2x2y-en.pdf index 29e9b831..4ab2d02f 100644 Binary files a/public/datasheets/n2x2y-en.pdf and b/public/datasheets/n2x2y-en.pdf differ diff --git a/public/datasheets/n2xfk2y-de.pdf b/public/datasheets/n2xfk2y-de.pdf index 57f6cbbc..9edeb1c8 100644 Binary files a/public/datasheets/n2xfk2y-de.pdf and b/public/datasheets/n2xfk2y-de.pdf differ diff --git a/public/datasheets/n2xfk2y-en.pdf b/public/datasheets/n2xfk2y-en.pdf index dafd169f..cb977e53 100644 Binary files a/public/datasheets/n2xfk2y-en.pdf and b/public/datasheets/n2xfk2y-en.pdf differ diff --git a/public/datasheets/n2xfkld2y-de.pdf b/public/datasheets/n2xfkld2y-de.pdf index 1803eb4c..26ae6c38 100644 Binary files a/public/datasheets/n2xfkld2y-de.pdf and b/public/datasheets/n2xfkld2y-de.pdf differ diff --git a/public/datasheets/n2xfkld2y-en.pdf b/public/datasheets/n2xfkld2y-en.pdf index 2e9034dd..b3519a82 100644 Binary files a/public/datasheets/n2xfkld2y-en.pdf and b/public/datasheets/n2xfkld2y-en.pdf differ diff --git a/public/datasheets/n2xs2y-2-de.pdf b/public/datasheets/n2xs2y-2-de.pdf index d6fa5a7d..b725144d 100644 Binary files a/public/datasheets/n2xs2y-2-de.pdf and b/public/datasheets/n2xs2y-2-de.pdf differ diff --git a/public/datasheets/n2xs2y-en.pdf b/public/datasheets/n2xs2y-en.pdf index 5f6a39ff..8be303bd 100644 Binary files a/public/datasheets/n2xs2y-en.pdf and b/public/datasheets/n2xs2y-en.pdf differ diff --git a/public/datasheets/n2xsf2y-2-de.pdf b/public/datasheets/n2xsf2y-2-de.pdf index d87b7853..bc6db37a 100644 Binary files a/public/datasheets/n2xsf2y-2-de.pdf and b/public/datasheets/n2xsf2y-2-de.pdf differ diff --git a/public/datasheets/n2xsf2y-en.pdf b/public/datasheets/n2xsf2y-en.pdf index df3240f0..4e17c52b 100644 Binary files a/public/datasheets/n2xsf2y-en.pdf and b/public/datasheets/n2xsf2y-en.pdf differ diff --git a/public/datasheets/n2xsfl2y-2-de.pdf b/public/datasheets/n2xsfl2y-2-de.pdf index 807be2d0..fbf4aaec 100644 Binary files a/public/datasheets/n2xsfl2y-2-de.pdf and b/public/datasheets/n2xsfl2y-2-de.pdf differ diff --git a/public/datasheets/n2xsfl2y-3-en.pdf b/public/datasheets/n2xsfl2y-3-en.pdf index ff9a467a..9aec4a8b 100644 Binary files a/public/datasheets/n2xsfl2y-3-en.pdf and b/public/datasheets/n2xsfl2y-3-en.pdf differ diff --git a/public/datasheets/n2xsfl2y-de.pdf b/public/datasheets/n2xsfl2y-de.pdf index 42987545..612463aa 100644 Binary files a/public/datasheets/n2xsfl2y-de.pdf and b/public/datasheets/n2xsfl2y-de.pdf differ diff --git a/public/datasheets/n2xsfl2y-en.pdf b/public/datasheets/n2xsfl2y-en.pdf index 1909333d..e4df5099 100644 Binary files a/public/datasheets/n2xsfl2y-en.pdf and b/public/datasheets/n2xsfl2y-en.pdf differ diff --git a/public/datasheets/n2xsy-2-de.pdf b/public/datasheets/n2xsy-2-de.pdf index c486e2b2..0233ecc2 100644 Binary files a/public/datasheets/n2xsy-2-de.pdf and b/public/datasheets/n2xsy-2-de.pdf differ diff --git a/public/datasheets/n2xsy-en.pdf b/public/datasheets/n2xsy-en.pdf index 11635a02..71a24e54 100644 Binary files a/public/datasheets/n2xsy-en.pdf and b/public/datasheets/n2xsy-en.pdf differ diff --git a/public/datasheets/n2xy-2-de.pdf b/public/datasheets/n2xy-2-de.pdf index c97ee4c3..2239be9f 100644 Binary files a/public/datasheets/n2xy-2-de.pdf and b/public/datasheets/n2xy-2-de.pdf differ diff --git a/public/datasheets/n2xy-en.pdf b/public/datasheets/n2xy-en.pdf index 11aa5fc3..8eaa7e7a 100644 Binary files a/public/datasheets/n2xy-en.pdf and b/public/datasheets/n2xy-en.pdf differ diff --git a/public/datasheets/na2x2y-2-de.pdf b/public/datasheets/na2x2y-2-de.pdf index 2e3b78c0..c966f133 100644 Binary files a/public/datasheets/na2x2y-2-de.pdf and b/public/datasheets/na2x2y-2-de.pdf differ diff --git a/public/datasheets/na2x2y-en.pdf b/public/datasheets/na2x2y-en.pdf index 75fc97a1..f7a94fb3 100644 Binary files a/public/datasheets/na2x2y-en.pdf and b/public/datasheets/na2x2y-en.pdf differ diff --git a/public/datasheets/na2xfk2y-de.pdf b/public/datasheets/na2xfk2y-de.pdf index 909fb510..30b61479 100644 Binary files a/public/datasheets/na2xfk2y-de.pdf and b/public/datasheets/na2xfk2y-de.pdf differ diff --git a/public/datasheets/na2xfk2y-en.pdf b/public/datasheets/na2xfk2y-en.pdf index 3a875a2c..ded17263 100644 Binary files a/public/datasheets/na2xfk2y-en.pdf and b/public/datasheets/na2xfk2y-en.pdf differ diff --git a/public/datasheets/na2xfkld2y-de.pdf b/public/datasheets/na2xfkld2y-de.pdf index c37d75b4..fef36349 100644 Binary files a/public/datasheets/na2xfkld2y-de.pdf and b/public/datasheets/na2xfkld2y-de.pdf differ diff --git a/public/datasheets/na2xfkld2y-en.pdf b/public/datasheets/na2xfkld2y-en.pdf index 44c2c094..c1dbfda2 100644 Binary files a/public/datasheets/na2xfkld2y-en.pdf and b/public/datasheets/na2xfkld2y-en.pdf differ diff --git a/public/datasheets/na2xs2y-2-de.pdf b/public/datasheets/na2xs2y-2-de.pdf index c22b1ae4..2c78d3d5 100644 Binary files a/public/datasheets/na2xs2y-2-de.pdf and b/public/datasheets/na2xs2y-2-de.pdf differ diff --git a/public/datasheets/na2xs2y-en.pdf b/public/datasheets/na2xs2y-en.pdf index 44354d06..c45416d5 100644 Binary files a/public/datasheets/na2xs2y-en.pdf and b/public/datasheets/na2xs2y-en.pdf differ diff --git a/public/datasheets/na2xsf2y-2-de.pdf b/public/datasheets/na2xsf2y-2-de.pdf index 508d0ea2..b5229d7e 100644 Binary files a/public/datasheets/na2xsf2y-2-de.pdf and b/public/datasheets/na2xsf2y-2-de.pdf differ diff --git a/public/datasheets/na2xsf2y-en.pdf b/public/datasheets/na2xsf2y-en.pdf index 09555d63..3a65e03e 100644 Binary files a/public/datasheets/na2xsf2y-en.pdf and b/public/datasheets/na2xsf2y-en.pdf differ diff --git a/public/datasheets/na2xsfl2y-2-de.pdf b/public/datasheets/na2xsfl2y-2-de.pdf index bec54248..0ec5cca3 100644 Binary files a/public/datasheets/na2xsfl2y-2-de.pdf and b/public/datasheets/na2xsfl2y-2-de.pdf differ diff --git a/public/datasheets/na2xsfl2y-3-en.pdf b/public/datasheets/na2xsfl2y-3-en.pdf index 5e2c5cf6..30b4e5b8 100644 Binary files a/public/datasheets/na2xsfl2y-3-en.pdf and b/public/datasheets/na2xsfl2y-3-en.pdf differ diff --git a/public/datasheets/na2xsfl2y-de.pdf b/public/datasheets/na2xsfl2y-de.pdf index 99401c66..70bf6225 100644 Binary files a/public/datasheets/na2xsfl2y-de.pdf and b/public/datasheets/na2xsfl2y-de.pdf differ diff --git a/public/datasheets/na2xsfl2y-en.pdf b/public/datasheets/na2xsfl2y-en.pdf index 642784ae..dae3f291 100644 Binary files a/public/datasheets/na2xsfl2y-en.pdf and b/public/datasheets/na2xsfl2y-en.pdf differ diff --git a/public/datasheets/na2xsy-2-de.pdf b/public/datasheets/na2xsy-2-de.pdf index 99a2fa1a..9c621e50 100644 Binary files a/public/datasheets/na2xsy-2-de.pdf and b/public/datasheets/na2xsy-2-de.pdf differ diff --git a/public/datasheets/na2xsy-en.pdf b/public/datasheets/na2xsy-en.pdf index 8da5d484..a6b91faf 100644 Binary files a/public/datasheets/na2xsy-en.pdf and b/public/datasheets/na2xsy-en.pdf differ diff --git a/public/datasheets/na2xy-2-de.pdf b/public/datasheets/na2xy-2-de.pdf index 2b8a8807..5a0e2686 100644 Binary files a/public/datasheets/na2xy-2-de.pdf and b/public/datasheets/na2xy-2-de.pdf differ diff --git a/public/datasheets/na2xy-en.pdf b/public/datasheets/na2xy-en.pdf index b8ff9466..17d45dd1 100644 Binary files a/public/datasheets/na2xy-en.pdf and b/public/datasheets/na2xy-en.pdf differ diff --git a/public/datasheets/nay2y-2-de.pdf b/public/datasheets/nay2y-2-de.pdf index a638e40e..8a3221c9 100644 Binary files a/public/datasheets/nay2y-2-de.pdf and b/public/datasheets/nay2y-2-de.pdf differ diff --git a/public/datasheets/nay2y-en.pdf b/public/datasheets/nay2y-en.pdf index 28ac5d9d..12e0897d 100644 Binary files a/public/datasheets/nay2y-en.pdf and b/public/datasheets/nay2y-en.pdf differ diff --git a/public/datasheets/naycwy-2-de.pdf b/public/datasheets/naycwy-2-de.pdf index db28c254..73d43fa2 100644 Binary files a/public/datasheets/naycwy-2-de.pdf and b/public/datasheets/naycwy-2-de.pdf differ diff --git a/public/datasheets/naycwy-en.pdf b/public/datasheets/naycwy-en.pdf index 427ddc6d..09f48573 100644 Binary files a/public/datasheets/naycwy-en.pdf and b/public/datasheets/naycwy-en.pdf differ diff --git a/public/datasheets/nayy-2-de.pdf b/public/datasheets/nayy-2-de.pdf index e95b7ead..5fdc27e1 100644 Binary files a/public/datasheets/nayy-2-de.pdf and b/public/datasheets/nayy-2-de.pdf differ diff --git a/public/datasheets/nayy-en.pdf b/public/datasheets/nayy-en.pdf index 48dd754a..0fdfbd88 100644 Binary files a/public/datasheets/nayy-en.pdf and b/public/datasheets/nayy-en.pdf differ diff --git a/public/datasheets/ny2y-2-de.pdf b/public/datasheets/ny2y-2-de.pdf index 55673677..65ce9362 100644 Binary files a/public/datasheets/ny2y-2-de.pdf and b/public/datasheets/ny2y-2-de.pdf differ diff --git a/public/datasheets/ny2y-en.pdf b/public/datasheets/ny2y-en.pdf index 4a7a04ce..e6154ee7 100644 Binary files a/public/datasheets/ny2y-en.pdf and b/public/datasheets/ny2y-en.pdf differ diff --git a/public/datasheets/nycwy-2-de.pdf b/public/datasheets/nycwy-2-de.pdf index 5a451c21..ec215f68 100644 Binary files a/public/datasheets/nycwy-2-de.pdf and b/public/datasheets/nycwy-2-de.pdf differ diff --git a/public/datasheets/nycwy-en.pdf b/public/datasheets/nycwy-en.pdf index 85ef5ab7..d73d4e20 100644 Binary files a/public/datasheets/nycwy-en.pdf and b/public/datasheets/nycwy-en.pdf differ diff --git a/public/datasheets/nyy-2-de.pdf b/public/datasheets/nyy-2-de.pdf index 1aef4a37..22baac9e 100644 Binary files a/public/datasheets/nyy-2-de.pdf and b/public/datasheets/nyy-2-de.pdf differ diff --git a/public/datasheets/nyy-en.pdf b/public/datasheets/nyy-en.pdf index d7bd8f09..9d15bfb3 100644 Binary files a/public/datasheets/nyy-en.pdf and b/public/datasheets/nyy-en.pdf differ diff --git a/scripts/generate-pdf-datasheets.ts b/scripts/generate-pdf-datasheets.ts index a2123312..617c979c 100644 --- a/scripts/generate-pdf-datasheets.ts +++ b/scripts/generate-pdf-datasheets.ts @@ -80,6 +80,287 @@ type VoltageTableModel = { columns: Array<{ key: string; label: string; get: (rowIndex: number) => string }>; }; +function estimateDenseMetaGridHeight(itemsCount: number): number { + // Must stay in sync with the layout constants in `drawDenseMetaGrid()`. + const cols = itemsCount >= 7 ? 3 : 2; + const cellH = 34; + const titleH = 18; + const headerPadY = 10; + const rows = Math.ceil(Math.max(0, itemsCount) / cols); + const boxH = headerPadY + titleH + rows * cellH + headerPadY; + // `drawDenseMetaGrid()` returns the cursor below the box with additional spacing. + return boxH + 18; +} + +function normalizeUnit(unitRaw: string): string { + const u = normalizeValue(unitRaw); + if (!u) return ''; + // Temperature units: show °C (not plain C). + if (/^c$/i.test(u) || /^°c$/i.test(u)) return '°C'; + // Common WinAnsi-safe normalizations. + return u + .replace(/Ω/gi, 'Ohm') + .replace(/[\u00B5\u03BC]/g, 'u'); +} + +function denseAbbrevLabel(args: { + key: string; + locale: 'en' | 'de'; + unit?: string; + withUnit?: boolean; +}): string { + const u = normalizeUnit(args.unit || ''); + const withUnit = args.withUnit ?? true; + const unitSafe = u + .replace(/Ω/gi, 'Ohm') + .replace(/[\u00B5\u03BC]/g, 'u'); + const suffix = withUnit && unitSafe ? ` [${unitSafe}]` : ''; + + switch (args.key) { + case 'DI': + case 'RI': + case 'Wi': + case 'Ibl': + case 'Ibe': + case 'Wm': + case 'Rbv': + case 'Fzv': + case 'G': + return `${args.key}${suffix}`; + case 'Ik_cond': + return `Ik${suffix}`; + case 'Ik_screen': + return `Ik_s${suffix}`; + case 'Ø': + return `Ø${suffix}`; + case 'Cond': + return args.locale === 'de' ? 'Leiter' : 'Cond.'; + case 'shape': + return args.locale === 'de' ? 'Form' : 'Shape'; + // Electrical + case 'cap': + return `C${suffix}`; + case 'X': + return `X${suffix}`; + // Temperatures + case 'temp_range': + return `T${suffix}`; + case 'max_op_temp': + return `T_op${suffix}`; + case 'max_sc_temp': + return `T_sc${suffix}`; + case 'min_store_temp': + return `T_st${suffix}`; + case 'min_lay_temp': + return `T_lay${suffix}`; + // Compliance + case 'cpr': + return `CPR${suffix}`; + case 'flame': + return `FR${suffix}`; + // Voltages + case 'test_volt': + return `U_test${suffix}`; + case 'rated_volt': + return `U0/U${suffix}`; + default: + return args.key || ''; + } +} + +function metaFullLabel(args: { key: string; excelKey: string; locale: 'en' | 'de' }): string { + const key = normalizeValue(args.key); + if (args.locale === 'de') { + switch (key) { + case 'test_volt': + return 'Prüfspannung'; + case 'temp_range': + return 'Temperaturbereich'; + case 'max_op_temp': + return 'Leitertemperatur (max.)'; + case 'max_sc_temp': + return 'Kurzschlusstemperatur (max.)'; + case 'min_lay_temp': + return 'Minimale Verlegetemperatur'; + case 'min_store_temp': + return 'Minimale Lagertemperatur'; + case 'cpr': + return 'CPR-Klasse'; + case 'flame': + return 'Flammhemmend'; + default: + return formatExcelHeaderLabel(args.excelKey); + } + } + + // EN + switch (key) { + case 'test_volt': + return 'Test voltage'; + case 'temp_range': + return 'Operating temperature range'; + case 'max_op_temp': + return 'Conductor temperature (max.)'; + case 'max_sc_temp': + return 'Short-circuit temperature (max.)'; + case 'min_lay_temp': + return 'Minimum laying temperature'; + case 'min_store_temp': + return 'Minimum storage temperature'; + case 'cpr': + return 'CPR class'; + case 'flame': + return 'Flame retardant'; + default: + return formatExcelHeaderLabel(args.excelKey); + } +} + +function expandMetaLabel(label: string, locale: 'en' | 'de'): string { + const l = normalizeValue(label); + if (!l) return ''; + + // Safety net: the voltage-group meta grid must never show abbreviated labels. + // (Even if upstream mapping changes, we keep customer-facing readability.) + const mapDe: Record = { + U_test: 'Prüfspannung', + 'U0/U': 'Nennspannung', + 'U_0/U': 'Nennspannung', + T: 'Temperaturbereich', + T_op: 'Leitertemperatur (max.)', + T_sc: 'Kurzschlusstemperatur (max.)', + T_lay: 'Minimale Verlegetemperatur', + T_st: 'Minimale Lagertemperatur', + CPR: 'CPR-Klasse', + FR: 'Flammhemmend', + }; + + const mapEn: Record = { + U_test: 'Test voltage', + 'U0/U': 'Rated voltage', + 'U_0/U': 'Rated voltage', + T: 'Operating temperature range', + T_op: 'Conductor temperature (max.)', + T_sc: 'Short-circuit temperature (max.)', + T_lay: 'Minimum laying temperature', + T_st: 'Minimum storage temperature', + CPR: 'CPR class', + FR: 'Flame retardant', + }; + + const mapped = (locale === 'de' ? mapDe[l] : mapEn[l]) || ''; + return mapped || label; +} + +function technicalFullLabel(args: { key: string; excelKey: string; locale: 'en' | 'de' }): string { + const k = normalizeValue(args.key); + + if (args.locale === 'de') { + // Prefer stable internal keys (from columnMapping.key) to translate Technical Data labels. + switch (k) { + case 'DI': + return 'Durchmesser über Isolierung'; + case 'RI': + return 'DC-Leiterwiderstand (20 °C)'; + case 'Wi': + return 'Isolationsdicke'; + case 'Ibl': + return 'Strombelastbarkeit in Luft (trefoil)'; + case 'Ibe': + return 'Strombelastbarkeit im Erdreich (trefoil)'; + case 'Ik_cond': + return 'Kurzschlussstrom Leiter'; + case 'Ik_screen': + return 'Kurzschlussstrom Schirm'; + case 'Wm': + return 'Manteldicke'; + case 'Rbv': + return 'Biegeradius (min.)'; + case 'Ø': + return 'Außen-Ø'; + case 'Fzv': + return 'Zugkraft (max.)'; + case 'G': + return 'Gewicht'; + case 'Cond': + case 'conductor': + return 'Leiter'; + case 'shape': + return 'Leiterform'; + case 'insulation': + return 'Isolierung'; + case 'sheath': + return 'Mantel'; + case 'cap': + return 'Kapazität'; + case 'ind_trefoil': + return 'Induktivität (trefoil)'; + case 'ind_air_flat': + return 'Induktivität (Luft, flach)'; + case 'ind_ground_flat': + return 'Induktivität (Erdreich, flach)'; + case 'X': + return 'Reaktanz'; + case 'test_volt': + return 'Prüfspannung'; + case 'rated_volt': + return 'Nennspannung'; + case 'temp_range': + return 'Temperaturbereich'; + case 'max_op_temp': + return 'Leitertemperatur (max.)'; + case 'max_sc_temp': + return 'Kurzschlusstemperatur (max.)'; + case 'min_store_temp': + return 'Minimale Lagertemperatur'; + case 'min_lay_temp': + return 'Minimale Verlegetemperatur'; + case 'cpr': + return 'CPR-Klasse'; + case 'flame': + return 'Flammhemmend'; + case 'packaging': + return 'Verpackung'; + case 'ce': + return 'CE-Konformität'; + case 'norm': + return 'Norm'; + case 'standard': + return 'Standard'; + case 'D_screen': + return 'Durchmesser über Schirm'; + case 'S_screen': + return 'Metallischer Schirm'; + default: + break; + } + + // Fallback: best-effort translation from the raw Excel header (prevents English in DE PDFs). + const raw = normalizeValue(args.excelKey); + if (!raw) return ''; + return raw + .replace(/\(approx\.?\)/gi, '(ca.)') + .replace(/\bcapacitance\b/gi, 'Kapazität') + .replace(/\binductance\b/gi, 'Induktivität') + .replace(/\breactance\b/gi, 'Reaktanz') + .replace(/\btest voltage\b/gi, 'Prüfspannung') + .replace(/\brated voltage\b/gi, 'Nennspannung') + .replace(/\boperating temperature range\b/gi, 'Temperaturbereich') + .replace(/\bminimum sheath thickness\b/gi, 'Manteldicke (min.)') + .replace(/\bsheath thickness\b/gi, 'Manteldicke') + .replace(/\bnominal insulation thickness\b/gi, 'Isolationsdicke (nom.)') + .replace(/\binsulation thickness\b/gi, 'Isolationsdicke') + .replace(/\bdc resistance at 20\s*°?c\b/gi, 'DC-Leiterwiderstand (20 °C)') + .replace(/\bouter diameter(?: of cable)?\b/gi, 'Außen-Ø') + .replace(/\bbending radius\b/gi, 'Biegeradius') + .replace(/\bpackaging\b/gi, 'Verpackung') + .replace(/\bce\s*-?conformity\b/gi, 'CE-Konformität'); + } + + // EN: keep as-is (Excel headers are already English). + return normalizeValue(args.excelKey); +} + function compactNumericForLocale(value: string, locale: 'en' | 'de'): string { const v = normalizeValue(value); if (!v) return ''; @@ -88,11 +369,9 @@ function compactNumericForLocale(value: string, locale: 'en' | 'de'): string { // Compact to "15/12xD" or "10xD" for single values if (/\d+xD/.test(v)) { // Extract all number+xD patterns - const matches = v.matchAll(/(\d+)xD/g); const numbers = []; - for (const match of matches) { - numbers.push(match[1]); - } + const matches = Array.from(v.matchAll(/(\d+)xD/g)); + for (let i = 0; i < matches.length; i++) numbers.push(matches[i][1]); if (numbers.length > 0) { // Remove duplicates while preserving order const unique: string[] = []; @@ -116,23 +395,18 @@ function compactNumericForLocale(value: string, locale: 'en' | 'de'): string { const s = p.trim(); if (!/^-?\d+(?:[\.,]\d+)?$/.test(s)) return p; const n = s.replace(/,/g, '.'); - const num = parseFloat(n); - - // Abbreviate numbers with k/M suffixes for compactness - // Use 100 as threshold to abbreviate even 3-digit numbers like 500 → 0.5k - let compact = n; - if (Math.abs(num) >= 1000000) { - compact = (num / 1000000).toFixed(1).replace(/\.0$/, '') + 'M'; - } else if (Math.abs(num) >= 1000) { - compact = (num / 1000).toFixed(1).replace(/\.0$/, '') + 'k'; - } else if (Math.abs(num) >= 100) { - // Abbreviate 3-digit numbers: 500 → 0.5k, 520 → 0.5k, 1000 → 1k - compact = (num / 1000).toFixed(1).replace(/\.0$/, '') + 'k'; - } else { - compact = n.replace(/\.0+$/, '').replace(/(\.\d*?)0+$/, '$1').replace(/\.$/, ''); - } - - return locale === 'de' ? compact.replace(/\./g, ',') : compact; + + // Datasheets: do NOT use k/M suffixes (can be misleading for engineering values). + // Only trim trailing zeros for compactness. + const compact = n + .replace(/\.0+$/, '') + .replace(/(\.\d*?)0+$/, '$1') + .replace(/\.$/, ''); + + // Preserve leading "+" when present (typical for temperature cells like "+90"). + const hadPlus = /^\+/.test(s); + const withPlus = hadPlus && !/^\+/.test(compact) ? `+${compact}` : compact; + return locale === 'de' ? withPlus.replace(/\./g, ',') : withPlus; }); return out.join(''); } @@ -150,16 +424,25 @@ function compactCellForDenseTable(value: string, unit: string | undefined, local .replace(/\bkg\s*\/\s*km\b/gi, '') .replace(/\bohm\s*\/\s*km\b/gi, '') .replace(/\bΩ\s*\/\s*km\b/gi, '') - .replace(/\bua?f\s*\/\s*km\b/gi, '') + .replace(/\bu\s*f\s*\/\s*km\b/gi, '') .replace(/\bmh\s*\/\s*km\b/gi, '') - .replace(/\bka\b/gi, '') - .replace(/\ba\b/gi, '') + .replace(/\bkA\b/gi, '') .replace(/\bmm\b/gi, '') .replace(/\bkv\b/gi, '') - .replace(/\b°c\b/gi, '') + .replace(/\b°?c\b/gi, '') .replace(/\s+/g, ' ') .trim(); } + + // Normalize common separators to compact but readable tokens. + // Example: "-35 - +90" -> "-35-+90", "-40°C / +90°C" -> "-40/+90". + v = v + .replace(/\s*–\s*/g, '-') + .replace(/\s*-\s*/g, '-') + .replace(/\s*\/\s*/g, '/') + .replace(/\s+/g, ' ') + .trim(); + return compactNumericForLocale(v, locale); } @@ -242,7 +525,7 @@ function buildExcelModel(args: { } } - // Map Excel column names to our 13 required headers + // Map Excel column names to our compact/standardized keys. // This mapping covers all common Excel column names found in the source files // IMPORTANT: More specific patterns must come before generic ones to avoid false matches const columnMapping: Record = { @@ -256,6 +539,7 @@ function buildExcelModel(args: { 'dc resistance at 20 °C': { header: 'RI', unit: 'Ohm/km', key: 'RI' }, 'dc resistance at 20°C': { header: 'RI', unit: 'Ohm/km', key: 'RI' }, 'resistance conductor': { header: 'RI', unit: 'Ohm/km', key: 'RI' }, + 'maximum resistance of conductor': { header: 'RI', unit: 'Ohm/km', key: 'RI' }, 'insulation thickness': { header: 'Wi', unit: 'mm', key: 'Wi' }, 'nominal insulation thickness': { header: 'Wi', unit: 'mm', key: 'Wi' }, 'current ratings in air, trefoil': { header: 'Ibl', unit: 'A', key: 'Ibl' }, @@ -266,22 +550,32 @@ function buildExcelModel(args: { 'screen shortcircuit current': { header: 'Ik', unit: 'kA', key: 'Ik_screen' }, 'sheath thickness': { header: 'Wm', unit: 'mm', key: 'Wm' }, 'minimum sheath thickness': { header: 'Wm', unit: 'mm', key: 'Wm' }, + 'nominal sheath thickness': { header: 'Wm', unit: 'mm', key: 'Wm' }, 'bending radius': { header: 'Rbv', unit: 'mm', key: 'Rbv' }, 'bending radius (min.)': { header: 'Rbv', unit: 'mm', key: 'Rbv' }, - 'outer diameter': { header: 'OD', unit: 'mm', key: 'Ø' }, - 'outer diameter (approx.)': { header: 'OD', unit: 'mm', key: 'Ø' }, - 'outer diameter of cable': { header: 'OD', unit: 'mm', key: 'Ø' }, + 'outer diameter': { header: 'Ø', unit: 'mm', key: 'Ø' }, + 'outer diameter (approx.)': { header: 'Ø', unit: 'mm', key: 'Ø' }, + 'outer diameter of cable': { header: 'Ø', unit: 'mm', key: 'Ø' }, + // Pulling force is typically expressed in N in datasheets. + // Some sources appear to store values in kN (e.g. 4.5), we normalize in the cell getter. 'pulling force': { header: 'Fzv', unit: 'N', key: 'Fzv' }, 'max. pulling force': { header: 'Fzv', unit: 'N', key: 'Fzv' }, - 'conductor aluminum': { header: 'AL / CU', unit: '', key: 'Al' }, - 'conductor copper': { header: 'AL / CU', unit: '', key: 'Cu' }, + // Conductor material (we render this as a single column) + 'conductor aluminum': { header: 'Cond.', unit: '', key: 'Cond' }, + 'conductor copper': { header: 'Cond.', unit: '', key: 'Cond' }, 'weight': { header: 'G', unit: 'kg/km', key: 'G' }, 'weight (approx.)': { header: 'G', unit: 'kg/km', key: 'G' }, + 'cable weight': { header: 'G', unit: 'kg/km', key: 'G' }, // Additional technical columns (to include ALL Excel data) // Specific material/property columns must come before generic 'conductor' pattern 'conductor diameter (approx.)': { header: 'Conductor diameter', unit: 'mm', key: 'cond_diam' }, 'conductor diameter': { header: 'Conductor diameter', unit: 'mm', key: 'cond_diam' }, + 'diameter conductor': { header: 'Conductor diameter', unit: 'mm', key: 'cond_diam' }, + 'diameter over screen': { header: 'Diameter over screen', unit: 'mm', key: 'D_screen' }, + 'metallic screen mm2': { header: 'Metallic screen', unit: 'mm2', key: 'S_screen' }, + 'metallic screen': { header: 'Metallic screen', unit: 'mm2', key: 'S_screen' }, + 'reactance': { header: 'Reactance', unit: 'Ohm/km', key: 'X' }, 'capacitance (approx.)': { header: 'Capacitance', unit: 'uF/km', key: 'cap' }, 'capacitance': { header: 'Capacitance', unit: 'uF/km', key: 'cap' }, 'inductance, trefoil (approx.)': { header: 'Inductance trefoil', unit: 'mH/km', key: 'ind_trefoil' }, @@ -300,23 +594,19 @@ function buildExcelModel(args: { 'heating time constant, flat': { header: 'Heating time flat', unit: 's', key: 'heat_flat' }, // Temperature and other technical data - 'maximal operating conductor temperature': { header: 'Max operating temp', unit: 'C', key: 'max_op_temp' }, - 'maximal short-circuit temperature': { header: 'Max short-circuit temp', unit: 'C', key: 'max_sc_temp' }, - 'operating temperature range': { header: 'Operating temp range', unit: 'C', key: 'temp_range' }, - 'minimal storage temperature': { header: 'Min storage temp', unit: 'C', key: 'min_store_temp' }, - 'minimal temperature for laying': { header: 'Min laying temp', unit: 'C', key: 'min_lay_temp' }, + 'maximal operating conductor temperature': { header: 'Max operating temp', unit: '°C', key: 'max_op_temp' }, + 'maximal short-circuit temperature': { header: 'Max short-circuit temp', unit: '°C', key: 'max_sc_temp' }, + 'operating temperature range': { header: 'Operating temp range', unit: '°C', key: 'temp_range' }, + 'minimal storage temperature': { header: 'Min storage temp', unit: '°C', key: 'min_store_temp' }, + 'minimal temperature for laying': { header: 'Min laying temp', unit: '°C', key: 'min_lay_temp' }, 'test voltage': { header: 'Test voltage', unit: 'kV', key: 'test_volt' }, 'rated voltage': { header: 'Rated voltage', unit: 'kV', key: 'rated_volt' }, // Material and specification data // Note: More specific patterns must come before generic ones to avoid conflicts - // Resistance columns (must come before generic 'conductor' pattern) - 'maximum resistance of conductor': { header: 'RI', unit: 'Ohm/km', key: 'RI' }, - - // Conductor material columns (specific before generic) - // Note: Already defined above (lines 254-255) - 'conductor': { header: 'AL / CU', unit: '', key: 'Al' }, + // Conductor description/type (keep as technical/meta data, not as material column) + 'conductor': { header: 'Conductor', unit: '', key: 'conductor' }, // Screen and tape columns 'copper wire screen and tape': { header: 'Copper screen', unit: '', key: 'copper_screen' }, @@ -369,7 +659,7 @@ function buildExcelModel(args: { matchedColumns.push(...deduplicated); // Separate into 13 required headers vs additional columns - const requiredHeaderKeys = ['DI', 'RI', 'Wi', 'Ibl', 'Ibe', 'Ik', 'Wm', 'Rbv', 'OD', 'Fzv', 'Al', 'Cu', 'G']; + const requiredHeaderKeys = ['DI', 'RI', 'Wi', 'Ibl', 'Ibe', 'Ik_cond', 'Wm', 'Rbv', 'Ø', 'Fzv', 'Cond', 'G']; const isRequiredHeader = (key: string) => requiredHeaderKeys.includes(key); // Filter rows to only include those with the same column structure as sample @@ -421,21 +711,14 @@ function buildExcelModel(args: { if (unique.length === 1 && values.length > 0) { globalConstantColumns.add(excelKey); - // Add to technical items if not already there - const existing = technicalItems.find(t => t.label === mapping.header); - if (!existing) { - let value = values[0]; - // Show actual conductor material from Excel - if (mapping.key === 'Al' || mapping.key === 'Cu') { - // Keep the actual value from Excel (e.g., "AL" or "CU") - // No transformation needed - } - technicalItems.push({ - label: mapping.header, - value: value, - unit: mapping.unit, - }); - } + + // Global constants belong to TECHNICAL DATA (shown once). + const unit = normalizeUnit(units[excelKey] || mapping.unit || ''); + const labelBase = technicalFullLabel({ key: mapping.key, excelKey, locale: args.locale }); + const label = formatExcelHeaderLabel(labelBase, unit); + const value = compactCellForDenseTable(values[0], unit, args.locale); + const existing = technicalItems.find(t => t.label === label); + if (!existing) technicalItems.push({ label, value, unit }); } } @@ -446,20 +729,85 @@ function buildExcelModel(args: { const crossSections = indices.map(idx => normalizeValue(String(compatibleRows[idx]?.[csKey] ?? ''))); - // Meta items: voltage rating + // Meta items: keep a consistent, compact set across products. + // This is the "voltage-group meta header" (parameter block) above each table. const metaItems: KeyValueItem[] = []; + const metaCandidates = new Map(); if (voltageKey) { const rawV = normalizeValue(String(compatibleRows[indices[0]]?.[voltageKey] ?? '')); metaItems.push({ - label: 'Spannung', + label: args.locale === 'de' ? 'Spannung' : 'Voltage', value: normalizeVoltageLabel(rawV || ''), }); } - // Include ALL columns in the table (both constant and variable) - // Only skip cross-section and voltage keys (these are used for grouping) + // Which non-table fields we want to show consistently per voltage group. + const metaKeyPriority = [ + 'test_volt', + 'temp_range', + 'max_op_temp', + 'max_sc_temp', + 'min_lay_temp', + 'min_store_temp', + 'cpr', + 'flame', + ]; + const metaKeyPrioritySet = new Set(metaKeyPriority); + + // Cross-section table is limited to the core industry columns (compact for A4). + // To avoid “too little data” we always render the full set of core columns in the table, + // even when a value is constant across the voltage group. const tableColumns: Array<{ excelKey: string; mapping: { header: string; unit: string; key: string } }> = []; + const denseTableKeyOrder = [ + // Conductor should be the first technical column (after designation). + // This improves scanability in the cable industry (material/type is a primary discriminator). + 'Cond', + // Next highest priority for LV/MV: conductor shape/type (RE/RM/RMV/...). + 'shape', + + // Electrical properties (when available) – high value for MV/HV engineering. + 'cap', + 'X', + + 'DI', + 'RI', + 'Wi', + 'Ibl', + 'Ibe', + 'Ik_cond', + 'Wm', + 'Rbv', + 'Ø', + + // Extra high-value dimensions/metal screen info (when available): common in MV/HV. + // Keep close to Ø to support engineers comparing layer builds. + 'D_screen', + 'S_screen', + + 'Fzv', + 'G', + ] as const; + const denseTableKeys = new Set(denseTableKeyOrder); + + // Extra data handling: + // - global constants => TECHNICAL DATA + // - voltage-group constants => metaItems + // - voltage-group varying (non-core) => metaItems as ranges/lists (keeps A4 compact) + + // Pre-scan: detect if bending radius is expressed as xD (common in LV/Solar sheets) + // so we can label the unit correctly (Rbv [xD] instead of Rbv [mm]). + // Detect bending radius representation (mm vs xD) from the matched Excel column. + const bendingRadiusKey = matchedColumns.find(c => c.mapping.key === 'Rbv')?.excelKey || null; + let bendUnitOverride = ''; + if (bendingRadiusKey) { + const bendVals = indices + .map(idx => normalizeValue(String(compatibleRows[idx]?.[bendingRadiusKey] ?? ''))) + .filter(Boolean); + if (bendVals.some(v => /\bxD\b/i.test(v))) bendUnitOverride = 'xD'; + } + + // 1) Collect mapped columns. for (const { excelKey, mapping } of matchedColumns) { // Skip cross-section and voltage keys (these are used for grouping) if (excelKey === csKey || excelKey === voltageKey) continue; @@ -468,11 +816,73 @@ function buildExcelModel(args: { const values = indices.map(idx => normalizeValue(String(compatibleRows[idx]?.[excelKey] ?? ''))).filter(Boolean); if (values.length > 0) { - // Include ALL columns in table, regardless of whether they're constant or variable - tableColumns.push({ excelKey, mapping }); + const unique = Array.from(new Set(values.map(v => v.toLowerCase()))); + let unit = normalizeUnit(units[excelKey] || mapping.unit || ''); + if (mapping.key === 'Rbv' && bendUnitOverride) unit = bendUnitOverride; + + // Always keep the core 13 columns in the table (even if constant). + if (denseTableKeys.has(mapping.key)) { + tableColumns.push({ excelKey, mapping }); + continue; + } + + // For meta header: collect candidates, but only *display* a consistent subset. + // Global constants are normally in TECHNICAL DATA, but we still allow them + // into the voltage meta block if they are part of the priority set. + if (globalConstantColumns.has(excelKey) && !metaKeyPrioritySet.has(mapping.key)) { + continue; + } + + const value = + unique.length === 1 + ? compactCellForDenseTable(values[0], unit, args.locale) + : summarizeSmartOptions(excelKey, values); + + // Meta header: keep labels fully readable (no abbreviations). + // Units are shown separately by the meta grid. + const label = metaFullLabel({ key: mapping.key, excelKey, locale: args.locale }); + + metaCandidates.set(mapping.key, { label, value, unit }); } } + // 1b) Materialize meta items in a stable order. + // This keeps LV/MV/HV tables visually consistent (no "MV has much more in front"). + for (const k of metaKeyPriority) { + const item = metaCandidates.get(k); + if (item && item.label && item.value) metaItems.push(item); + } + + // 2) Build the compact cross-section table. + // If a column is not available in the Excel source and we cannot derive it safely, + // we omit it (empty columns waste A4 width and reduce readability). + const mappedByKey = new Map(); + for (const c of tableColumns) { + if (!mappedByKey.has(c.mapping.key)) mappedByKey.set(c.mapping.key, c); + } + + // Helper keys for derived values. + // We derive DI (diameter over insulation) from Ø and Wm when DI is missing. + const outerDiameterKey = (mappedByKey.get('Ø')?.excelKey || '') || null; + const sheathThicknessKey = (mappedByKey.get('Wm')?.excelKey || '') || null; + + const canDeriveDenseKey = (k: (typeof denseTableKeyOrder)[number]): boolean => { + if (k === 'DI') return Boolean(outerDiameterKey && sheathThicknessKey); + if (k === 'Cond') return true; // derived from product designation when missing + return false; + }; + + const orderedTableColumns = denseTableKeyOrder + .filter(k => mappedByKey.has(k) || canDeriveDenseKey(k)) + .map(k => { + const existing = mappedByKey.get(k); + if (existing) return existing; + return { + excelKey: '', + mapping: { header: k, unit: '', key: k }, + }; + }); + // Debug: Check for duplicate keys if (process.env.PDF_DEBUG_EXCEL === '1') { const keys = tableColumns.map(c => c.mapping.key); @@ -483,29 +893,83 @@ function buildExcelModel(args: { } } - // Meta items: only voltage rating (everything else goes in the table now) - // This avoids redundancy since all technical data is in the table - const columns = tableColumns.map(({ excelKey, mapping }) => ({ - key: mapping.key, - label: `${mapping.header} [${mapping.unit}]`, - get: (rowIndex: number) => { - const srcRowIndex = indices[rowIndex]; - const raw = normalizeValue(String(compatibleRows[srcRowIndex]?.[excelKey] ?? '')); - // Remove units from cell values (already in header) - let cleaned = raw; - if (mapping.unit) { - const esc = mapping.unit.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); - cleaned = cleaned.replace(new RegExp(`\\s*${esc}\\b`, 'ig'), '').trim(); + const columns = orderedTableColumns.map(({ excelKey, mapping }) => { + // Default units for the compact column set (used when an Excel unit is missing). + // We keep Excel units when available. + const defaultUnitByKey: Record = { + DI: 'mm', + RI: 'Ohm/km', + Wi: 'mm', + Ibl: 'A', + Ibe: 'A', + Ik_cond: 'kA', + Wm: 'mm', + Rbv: 'mm', + 'Ø': 'mm', + Fzv: 'N', + G: 'kg/km', + }; + + let unit = normalizeUnit((excelKey ? units[excelKey] : '') || mapping.unit || defaultUnitByKey[mapping.key] || ''); + if (mapping.key === 'Rbv' && bendUnitOverride) unit = bendUnitOverride; + + return { + key: mapping.key, + // Keep labels compact for dense tables; headerLabelFor() will use these. + label: denseAbbrevLabel({ key: mapping.key, locale: args.locale, unit, withUnit: true }) || formatExcelHeaderLabel(excelKey, unit), + get: (rowIndex: number) => { + const srcRowIndex = indices[rowIndex]; + const raw = excelKey ? normalizeValue(String(compatibleRows[srcRowIndex]?.[excelKey] ?? '')) : ''; + const unitLocal = unit; + + // LV sheets (e.g. NA2XY): current ratings (Ibl/Ibe) and short-circuit current (Ik) + // are typically not part of the source Excel. Keep cells empty (don’t guess). + // However, for DI we can derive a usable engineering approximation. + + // Derived values (only when the source column is missing/empty). + // DI (diameter over insulation): approx. from Ø and Wm when available. + if (mapping.key === 'DI' && !raw && outerDiameterKey && sheathThicknessKey) { + const odRaw = normalizeValue(String(compatibleRows[srcRowIndex]?.[outerDiameterKey] ?? '')); + const wmRaw = normalizeValue(String(compatibleRows[srcRowIndex]?.[sheathThicknessKey] ?? '')); + const od = parseNumericOption(odRaw); + const wm = parseNumericOption(wmRaw); + if (od !== null && wm !== null) { + const di = od - 2 * wm; + if (Number.isFinite(di) && di > 0) return `~${compactNumericForLocale(String(di), args.locale)}`; + } + } + + // Conductor material: if not present in Excel, derive from part number prefix. + // NA… => Al, N… => Cu (common cable designation pattern in this dataset). + if (mapping.key === 'Cond' && !raw) { + const pn = normalizeExcelKey(args.product.name || args.product.slug || args.product.sku || ''); + if (/^NA/.test(pn)) return 'Al'; + if (/^N/.test(pn)) return 'Cu'; + } + + // If bending radius is given as xD, keep it as-is (unit label reflects xD). + if (mapping.key === 'Rbv' && /\bxD\b/i.test(raw)) return compactNumericForLocale(raw, args.locale); + + // HV source: "Min. bending radius" appears to be stored in meters (e.g. 1.70). + // Convert to mm when we label it as mm. + if (mapping.key === 'Rbv' && unitLocal.toLowerCase() === 'mm') { + const n = parseNumericOption(raw); + const looksLikeMeters = n !== null && n > 0 && n < 50 && /[\.,]\d{1,3}/.test(raw) && !/\dxD/i.test(raw); + if (looksLikeMeters) return compactNumericForLocale(String(Math.round(n * 1000)), args.locale); } - // Show actual conductor material from Excel (AL or CU) - if (mapping.key === 'Al' || mapping.key === 'Cu') { - // Return the cleaned value (e.g., "AL" or "CU") - return cleaned; + + // Pulling force: some sources appear to store kN values (e.g. 4.5) without unit. + // When header/unit is N and the value is small, normalize to N. + if (mapping.key === 'Fzv' && unitLocal.toLowerCase() === 'n') { + const n = parseNumericOption(raw); + const looksLikeKN = n !== null && n > 0 && n < 100 && !/\bN\b/i.test(raw) && !/\bkN\b/i.test(raw); + if (looksLikeKN) return compactNumericForLocale(String(Math.round(n * 1000)), args.locale); } - // Compact decimals (including Rbv values) - return compactNumericForLocale(cleaned, args.locale); - }, - })); + + return compactCellForDenseTable(raw, unitLocal, args.locale); + }, + }; + }); voltageTables.push({ voltageLabel: vKey, metaItems, crossSections, columns }); @@ -548,106 +1012,174 @@ function drawDenseMetaGrid(args: { const items = (args.items || []).filter(i => i.label && i.value); if (!items.length) return y; - // Title + const lightGray = rgb(0.9020, 0.9137, 0.9294); + const almostWhite = rgb(0.9725, 0.9765, 0.9804); + + // Redesign: boxed meta panel with clear alignment + separators. + // Goal: compact, but “datasheet-grade” readability. + const cols = items.length >= 7 ? 3 : 2; + const colGap = 0; // we use separators instead of gaps + const colWidth = (contentWidth - colGap * (cols - 1)) / cols; + // Keep enough vertical space so label + value never overlap (even with different font metrics). + const cellH = 34; + const padX = 10; + const titleH = 18; + const headerPadY = 10; + + const labelSize = 7.25; + const valueSize = 8.75; + const labelYOff = 12; + const valueYOff = 28; + + const rows = Math.ceil(items.length / cols); + const boxH = headerPadY + titleH + rows * cellH + headerPadY; + const needed = boxH + 10; + + if (y - needed < contentMinY) y = args.newPage(); + page = args.getPage(); + + const boxTopY = y; + const boxBottomY = boxTopY - boxH; + + // Outer frame + page.drawRectangle({ + x: margin, + y: boxBottomY, + width: contentWidth, + height: boxH, + borderColor: lightGray, + borderWidth: 1, + color: rgb(1, 1, 1), + }); + + // Title band + page.drawRectangle({ + x: margin, + y: boxTopY - (headerPadY + titleH), + width: contentWidth, + height: headerPadY + titleH, + color: almostWhite, + }); + if (args.title) { - page = args.getPage(); - if (y - 18 < contentMinY) y = args.newPage(); - page.drawText(args.title, { x: margin, y, size: 10, font: fontBold, color: navy }); - y -= 14; + page.drawText(args.title, { + x: margin + padX, + y: boxTopY - (headerPadY + 12), + size: 10, + font: fontBold, + color: navy, + maxWidth: contentWidth - padX * 2, + }); } - // 2-column layout with clear label/value separation and units - // Each row shows: "Label: Value" on left, "Label: Value" on right - // Units are shown inline with values for clarity - const rowHeight = 16; // Increased for better readability - const colGap = 20; // Gap between columns - const colWidth = (contentWidth - colGap) / 2; - const labelWidth = colWidth * 0.45; // Label gets 45% of column width - const valueWidth = colWidth * 0.55; // Value gets 55% of column width - - let currentY = y; + // Separator below title band + const gridTopY = boxTopY - (headerPadY + titleH); + page.drawLine({ + start: { x: margin, y: gridTopY }, + end: { x: margin + contentWidth, y: gridTopY }, + thickness: 0.75, + color: lightGray, + }); - for (let i = 0; i < items.length; i += 2) { - // Check if we need a new page - if (currentY - rowHeight < contentMinY) { - currentY = args.newPage(); - page = args.getPage(); - // Add continuation title if needed - if (args.title) { - const suffix = args.locale === 'de' ? '(Fortsetzung)' : '(continued)'; - page.drawText(`${args.title} ${suffix}`, { x: margin, y: currentY, size: 10, font: fontBold, color: navy }); - currentY -= 14; - } - } + // Grid cells + for (let r = 0; r < rows; r++) { + const rowTopY = gridTopY - r * cellH; + const rowBottomY = rowTopY - cellH; - // Draw first item in row - const item1 = items[i]; - if (item1) { - // Label (bold) - page.drawText(`${item1.label}:`, { + // Subtle zebra striping for scanability + if (r % 2 === 0) { + page.drawRectangle({ x: margin, - y: currentY, - size: 8, - font: fontBold, - color: mediumGray, - maxWidth: labelWidth, - }); - - // Value + unit (regular) - const valueText = item1.unit ? `${item1.value} ${item1.unit}` : item1.value; - page.drawText(valueText, { - x: margin + labelWidth + 2, - y: currentY, - size: 8.5, - font, - color: darkGray, - maxWidth: valueWidth - 2, + y: rowBottomY, + width: contentWidth, + height: cellH, + color: rgb(0.99, 0.992, 0.995), }); } - // Draw second item in row (if exists) - const item2 = items[i + 1]; - if (item2) { - const xLabel = margin + colWidth + colGap; - const xValue = xLabel + labelWidth + 2; - - // Label (bold) - page.drawText(`${item2.label}:`, { - x: xLabel, - y: currentY, - size: 8, - font: fontBold, - color: mediumGray, - maxWidth: labelWidth, - }); - - // Value + unit (regular) - const valueText = item2.unit ? `${item2.value} ${item2.unit}` : item2.value; - page.drawText(valueText, { - x: xValue, - y: currentY, - size: 8.5, - font, - color: darkGray, - maxWidth: valueWidth - 2, + // Row separator (except last row) + if (r !== rows - 1) { + page.drawLine({ + start: { x: margin, y: rowBottomY }, + end: { x: margin + contentWidth, y: rowBottomY }, + thickness: 0.5, + color: lightGray, }); } - currentY -= rowHeight; + for (let c = 0; c < cols; c++) { + const idx = r * cols + c; + const item = items[idx]; + const x0 = margin + c * (colWidth + colGap); + + // Vertical separators + if (c !== cols - 1) { + page.drawLine({ + start: { x: x0 + colWidth, y: rowBottomY }, + end: { x: x0 + colWidth, y: rowTopY }, + thickness: 0.5, + color: lightGray, + }); + } + + if (!item) continue; + + const labelText = expandMetaLabel(item.label, args.locale); + const valueText = item.unit ? `${item.value} ${item.unit}` : item.value; + + // Safety margin because pdf-lib does not clip text and font metrics can be slightly optimistic. + const maxW = colWidth - padX * 2 - 2; + const labelOneLine = ellipsizeToWidth(labelText, fontBold, labelSize, maxW); + const valueOneLine = ellipsizeToWidth(valueText, font, valueSize, maxW); + + page.drawText(labelOneLine, { + x: x0 + padX, + y: rowTopY - labelYOff, + size: labelSize, + font: fontBold, + color: mediumGray, + }); + page.drawText(valueOneLine, { + x: x0 + padX, + y: rowTopY - valueYOff, + size: valueSize, + font, + color: darkGray, + }); + } } - // Return cursor position below the last row - return Math.max(contentMinY, currentY - 12); + // Cursor below panel + return Math.max(contentMinY, boxBottomY - 18); } function prioritizeColumnsForDenseTable(args: { columns: VoltageTableModel['columns']; }): VoltageTableModel['columns'] { - // Priority order: the 13 required headers first, then all additional technical data + // Priority order: compact cross-section table columns first, then all additional technical data const priorityOrder = [ - // The 13 required headers (in exact order) - // Note: Ik is replaced with Ik_cond (conductor shortcircuit current) - 'DI', 'RI', 'Wi', 'Ibl', 'Ibe', 'Ik_cond', 'Wm', 'Rbv', 'OD', 'Fzv', 'Al', 'Cu', 'G', + // Compact cross-section table columns (industry standard) + // NOTE: The designation/configuration is the *first* table column already. + // We put conductor material/type first among the technical columns for better scanability. + // Note: Ik is represented by Ik_cond (conductor shortcircuit current) + 'Cond', + 'shape', + 'cap', + 'X', + 'DI', + 'RI', + 'Wi', + 'Ibl', + 'Ibe', + 'Ik_cond', + 'Wm', + 'Rbv', + 'Ø', + // Extra high-value dimensions/metal screen info (when present) + 'D_screen', + 'S_screen', + 'Fzv', + 'G', // Additional technical columns (in logical groups) // Dimensions and materials @@ -1633,8 +2165,8 @@ const stripHtml = (html: string): string => { // directional arrows (WinAnsi can't encode these) .replace(/[\u2193]/g, 'v') // ↓ .replace(/[\u2191]/g, '^') // ↑ - // degree symbol - .replace(/[\u00B0]/g, ''); // ° + // degree symbol (WinAnsi-safe; keep for engineering units like °C) + .replace(/[\u00B0]/g, '°'); // Remove control chars, keep all printable unicode. text = text.replace(/[\u0000-\u001F\u007F]/g, ''); @@ -1705,6 +2237,29 @@ function wrapText(text: string, font: PDFFont, fontSize: number, maxWidth: numbe return lines; } +function ellipsizeToWidth(text: string, font: PDFFont, fontSize: number, maxWidth: number): string { + // WinAnsi-safe ellipsis ("...") + const t = normalizeValue(text); + if (!t) return ''; + if (font.widthOfTextAtSize(t, fontSize) <= maxWidth) return t; + + const ellipsis = '...'; + const eW = font.widthOfTextAtSize(ellipsis, fontSize); + if (eW >= maxWidth) return ''; + + // Binary search for max prefix that fits. + let lo = 0; + let hi = t.length; + while (lo < hi) { + const mid = Math.ceil((lo + hi) / 2); + const s = t.slice(0, mid); + if (font.widthOfTextAtSize(s, fontSize) + eW <= maxWidth) lo = mid; + else hi = mid - 1; + } + const cut = Math.max(0, lo); + return `${t.slice(0, cut)}${ellipsis}`; +} + function resolveMediaToLocalPath(urlOrPath: string | null | undefined): string | null { if (!urlOrPath) return null; @@ -1885,23 +2440,37 @@ function drawTableChunked(args: { const b = raw.toLowerCase(); const key = col.key || ''; + const hasUnit = /\(|\[/.test(raw); + + const labelWithUnit = (abbr: string, defaultUnit: string): string => { + // Prefer the actual unit we already have in the incoming label (from Excel units row). + // Example: raw = "DC resistance at 20 °C (Ω/km)" => keep Ω/km. + const m = raw.match(/[\[(]\s*([^\])]+?)\s*[\])]/); + const unit = normalizeValue(m?.[1] || '') || defaultUnit; + // WinAnsi safe: Ω => Ohm, µ => u (handled by stripHtml/normalizeValue) + const unitSafe = unit.replace(/Ω/gi, 'Ohm').replace(/[\u00B5\u03BC]/g, 'u'); + return `${abbr} [${unitSafe}]`; + }; - // Cable industry standard abbreviations with WinAnsi-compatible symbols - // 13 required headers (exact order as specified) - if (key === 'DI' || /diameter\s+over\s+insulation/i.test(b) || /isolierungsdurchmesser/i.test(b)) return 'DI [mm]'; - if (key === 'RI' || /dc\s*resistance/i.test(b) || /leiterwiderstand/i.test(b) || /widerstand/i.test(b)) return 'RI [Ohm/km]'; // Ω → Ohm - if (key === 'Wi' || /insulation\s+thickness/i.test(b) || /isolationsdicke/i.test(b)) return 'Wi [mm]'; - if (key === 'Ibl' || /current\s+ratings\s+in\s+air.*trefoil/i.test(b) || /strombelastbarkeit.*luft.*trefoil/i.test(b)) return 'Ibl [A]'; - if (key === 'Ibe' || /current\s+ratings\s+in\s+ground.*trefoil/i.test(b) || /strombelastbarkeit.*erd.*trefoil/i.test(b)) return 'Ibe [A]'; - if (key === 'Ik_cond' || key === 'Ik' || /conductor.*shortcircuit/i.test(b)) return 'Ik [kA]'; - if (key === 'Ik_screen' || /screen.*shortcircuit/i.test(b)) return 'Ik_s [kA]'; - if (key === 'Wm' || /sheath\s+thickness/i.test(b) || /manteldicke/i.test(b)) return 'Wm [mm]'; - if (key === 'Rbv' || /bending\s+radius/i.test(b) || /biegeradius/i.test(b)) return 'Rbv [mm]'; - if (key === 'Ø' || /outer\s+diameter/i.test(b) || /außen/i.test(b) || /durchmesser/i.test(b)) return 'OD [mm]'; // Ø → OD - if (key === 'Fzv' || /pulling\s+force/i.test(b) || /zugkraft/i.test(b)) return 'Fzv [N]'; - if (key === 'Al' || /conductor.*aluminum/i.test(b) || /leiter.*al/i.test(b)) return 'AL / CU'; - if (key === 'Cu' || /conductor.*copper/i.test(b) || /leiter.*cu/i.test(b)) return 'Cu'; - if (key === 'G' || /\bweight\b/i.test(b) || /gewicht/i.test(b)) return 'G [kg/km]'; + // Cable industry standard abbreviations (compact, WinAnsi-safe) + // Column set: + // - Bezeichnung (first column) + // - DI, RI, Wi, Ibl, Ibe, Ik, Wm, Rbv, Ø, Fzv, Al, Cu, G + if (key === 'configuration') return args.locale === 'de' ? 'Bezeichnung' : 'Designation'; + if (key === 'DI' || /diameter\s+over\s+insulation/i.test(b)) return labelWithUnit('DI', 'mm'); + if (key === 'RI' || /dc\s*resistance/i.test(b) || /resistance\s+conductor/i.test(b)) return labelWithUnit('RI', 'Ohm/km'); + if (key === 'Wi' || /insulation\s+thickness/i.test(b) || /nominal\s+insulation\s+thickness/i.test(b)) return labelWithUnit('Wi', 'mm'); + if (key === 'Ibl' || /current\s+ratings\s+in\s+air.*trefoil/i.test(b)) return labelWithUnit('Ibl', 'A'); + if (key === 'Ibe' || /current\s+ratings\s+in\s+ground.*trefoil/i.test(b)) return labelWithUnit('Ibe', 'A'); + if (key === 'Ik_cond' || /conductor.*shortcircuit/i.test(b)) return labelWithUnit('Ik', 'kA'); + if (key === 'Wm' || /sheath\s+thickness/i.test(b) || /minimum\s+sheath\s+thickness/i.test(b)) return labelWithUnit('Wm', 'mm'); + // Rbv can be given in mm or as xD (LV/solar). We keep the unit from the label. + if (key === 'Rbv' || /bending\s+radius/i.test(b)) return labelWithUnit('Rbv', 'mm'); + if (key === 'Ø' || /outer\s+diameter/i.test(b) || /outer\s+diameter\s+of\s+cable/i.test(b)) return labelWithUnit('Ø', 'mm'); + if (key === 'Fzv' || /pulling\s+force/i.test(b)) return labelWithUnit('Fzv', 'N'); + if (key === 'Al') return 'Al'; + if (key === 'Cu') return 'Cu'; + if (key === 'G' || /\bweight\b/i.test(b) || /cable\s+weight/i.test(b)) return labelWithUnit('G', 'kg/km'); // Cross-section (always needed as first column) if (/number of cores and cross-section/i.test(b) || /querschnitt/i.test(b)) { @@ -1909,22 +2478,25 @@ function drawTableChunked(args: { } // Additional technical columns (WinAnsi-compatible abbreviations) - if (key === 'cond_diam') return 'OD_cond [mm]'; // Ø → OD - if (key === 'cap') return 'C [uF/km]'; // μ → u - if (key === 'ind_trefoil') return 'L_t [mH/km]'; - if (key === 'ind_air_flat') return 'L_af [mH/km]'; - if (key === 'ind_ground_flat') return 'L_gf [mH/km]'; - if (key === 'cur_air_flat') return 'I_af [A]'; - if (key === 'cur_ground_flat') return 'I_gf [A]'; - if (key === 'heat_trefoil') return 'H_t [s]'; // τ → H - if (key === 'heat_flat') return 'H_f [s]'; // τ → H - if (key === 'max_op_temp') return 'T_op_max [C]'; // ° → C - if (key === 'max_sc_temp') return 'T_sc_max [C]'; // ° → C - if (key === 'temp_range') return 'T_range [C]'; // ° → C - if (key === 'min_store_temp') return 'T_st_min [C]'; // ° → C - if (key === 'min_lay_temp') return 'T_lay_min [C]'; // ° → C - if (key === 'test_volt') return 'V_test [kV]'; - if (key === 'rated_volt') return 'V_rat [kV]'; + if (key === 'cond_diam') return labelWithUnit('D_cond', 'mm'); + if (key === 'D_screen') return labelWithUnit('D_scr', 'mm'); + if (key === 'S_screen') return labelWithUnit('A_scr', 'mm2'); + if (key === 'cap') return labelWithUnit('C', 'uF/km'); + if (key === 'X') return labelWithUnit('X', 'Ohm/km'); + if (key === 'ind_trefoil') return labelWithUnit('L_t', 'mH/km'); + if (key === 'ind_air_flat') return labelWithUnit('L_af', 'mH/km'); + if (key === 'ind_ground_flat') return labelWithUnit('L_gf', 'mH/km'); + if (key === 'cur_air_flat') return labelWithUnit('I_af', 'A'); + if (key === 'cur_ground_flat') return labelWithUnit('I_gf', 'A'); + if (key === 'heat_trefoil') return labelWithUnit('t_th_t', 's'); + if (key === 'heat_flat') return labelWithUnit('t_th_f', 's'); + if (key === 'max_op_temp') return labelWithUnit('T_op', '°C'); + if (key === 'max_sc_temp') return labelWithUnit('T_sc', '°C'); + if (key === 'temp_range') return labelWithUnit('T', '°C'); + if (key === 'min_store_temp') return labelWithUnit('T_st', '°C'); + if (key === 'min_lay_temp') return labelWithUnit('T_lay', '°C'); + if (key === 'test_volt') return labelWithUnit('U_test', 'kV'); + if (key === 'rated_volt') return labelWithUnit('U_0/U', 'kV'); if (key === 'conductor') return 'Cond'; if (key === 'insulation') return 'Iso'; if (key === 'sheath') return 'Sh'; @@ -1975,58 +2547,109 @@ function drawTableChunked(args: { // Calculate required width for each column based on header and sample data // For dense tables with many columns, use more generous minimums const isDenseManyColumns = dense && tableCols.length >= 12; - const minColWidth = isDenseManyColumns ? 28 : 20; // Minimum width in points - const maxColWidth = isDenseManyColumns ? 150 : 120; // Maximum width in points + + // When rendering many columns, auto-compact typography BEFORE measuring widths. + // This prevents overflow where the later columns end up drawn off-page. + if (isDenseManyColumns) { + bodyFontSize = Math.max(5.3, Math.min(bodyFontSize, 5.8)); + headerFontSize = Math.max(5.1, Math.min(headerFontSize, 5.5)); + rowH = Math.max(9, Math.min(rowH, 10)); + cellPadX = 3; + } + + const minColWidth = isDenseManyColumns ? 24 : 20; // Minimum width in points + const maxColWidth = isDenseManyColumns ? 110 : 120; // Cap widths for dense tables const colGap = isDenseManyColumns ? 1 : 2; // Gap between columns (smaller for dense) // Calculate required width for each column const requiredWidths = tableCols.map((col, i) => { + const key = col.key || ''; const headerLabel = headerLabels[i] || headerLabelFor({ label: col.label, key: col.key }); - + + // Prefer key-aware constraints so the table is readable on A4. + // - configuration needs space (long designations) + // - numeric columns should stay compact + const isCfg = key === 'configuration'; + // NOTE: keep configuration column capped; otherwise it starves the numeric columns. + const cfgMaxAbs = dense ? 150 : 180; + const cfgMaxRel = Math.floor(contentWidth * (dense ? 0.26 : 0.30)); + const cfgMax = Math.max(120, Math.min(cfgMaxAbs, cfgMaxRel)); + const cfgMin = dense ? 90 : 120; + + const minW = isCfg ? cfgMin : minColWidth; + const maxW = isCfg ? cfgMax : (isDenseManyColumns ? 72 : maxColWidth); + // Measure header width const headerWidth = fontBold.widthOfTextAtSize(headerLabel, headerFontSize); - - // Measure sample data widths (check first few rows) + + // Measure sample data widths using the *rendered* value (apply cell formatter). + // Using only raw values can under-estimate (e.g. locale decimal, derived values). let maxDataWidth = 0; - const sampleRows = Math.min(3, configRows.length); + const sampleRows = Math.min(10, configRows.length); for (let r = 0; r < sampleRows; r++) { - const cellValue = col.get(r); - const dataWidth = font.widthOfTextAtSize(cellValue, bodyFontSize); + const rawVal = col.get(r); + const rendered = formatCell(rawVal, key); + const dataWidth = font.widthOfTextAtSize(String(rendered), bodyFontSize); maxDataWidth = Math.max(maxDataWidth, dataWidth); } - + // Take the maximum of header and data - // Add generous padding for dense tables const padding = isDenseManyColumns ? cellPadX * 1.5 : cellPadX * 2; const contentWidthNeeded = Math.max(headerWidth, maxDataWidth) + padding; - + // Clamp to min/max - return Math.max(minColWidth, Math.min(maxColWidth, contentWidthNeeded)); + return Math.max(minW, Math.min(maxW, contentWidthNeeded)); }); // Calculate total required width (including gaps) - const totalRequiredWidth = requiredWidths.reduce((sum, w) => sum + w, 0) + (tableCols.length - 1) * colGap; - - // Scale to fit available content width if needed - // For dense tables, be more lenient with scaling - let scaleFactor = totalRequiredWidth > contentWidth ? contentWidth / totalRequiredWidth : 1; - const minScaleFactor = isDenseManyColumns ? 0.85 : 0.9; // Don't scale too aggressively - scaleFactor = Math.max(scaleFactor, minScaleFactor); // Apply minimum - - // Scale widths (gaps are also scaled) - const widthsPt = requiredWidths.map(w => w * scaleFactor); - const scaledGap = colGap * scaleFactor; + const baseTotal = requiredWidths.reduce((sum, w) => sum + w, 0) + (tableCols.length - 1) * colGap; - // When rendering many columns in a single table, auto-compact typography. - // (All columns must be visible; landscape helps, but we also reduce type.) - if (dense && tableCols.length >= 12) { - // Less aggressive font reduction to keep text readable - bodyFontSize = Math.max(5.5, Math.min(bodyFontSize, 6.0)); - headerFontSize = Math.max(5.5, Math.min(headerFontSize, 5.8)); - rowH = Math.max(9, Math.min(rowH, 10)); - cellPadX = 3; + // If we have extra space, give it primarily to the configuration column + // (best readability gain) and then distribute any remainder proportionally. + const widthsWithExtra = [...requiredWidths]; + if (baseTotal < contentWidth && tableCols.length > 0) { + let remaining = contentWidth - baseTotal; + + const cfgIndex = tableCols.findIndex(c => (c.key || '') === 'configuration'); + if (cfgIndex >= 0 && remaining > 0) { + // Only give the configuration column a controlled share of the remaining space. + // This keeps numeric columns readable and consistent across tables. + const cfgMaxAbs = dense ? 150 : 180; + const cfgMaxRel = Math.floor(contentWidth * (dense ? 0.26 : 0.30)); + const cfgMax = Math.max(120, Math.min(cfgMaxAbs, cfgMaxRel)); + + const cfgRemainingCap = Math.min(remaining, Math.floor(remaining * (dense ? 0.35 : 0.45))); + const add = Math.max(0, Math.min(cfgMax - widthsWithExtra[cfgIndex], cfgRemainingCap)); + widthsWithExtra[cfgIndex] += add; + remaining -= add; + } + + if (remaining > 0) { + const sum = widthsWithExtra.reduce((a, b) => a + b, 0) || 1; + for (let i = 0; i < widthsWithExtra.length; i++) { + if (remaining <= 0) break; + const share = widthsWithExtra[i] / sum; + const add = Math.min(remaining, remaining * share); + widthsWithExtra[i] += add; + remaining -= add; + } + } } + const totalRequiredWidth = widthsWithExtra.reduce((sum, w) => sum + w, 0) + (tableCols.length - 1) * colGap; + + // Scale to fit available content width if needed + // Dense tables MUST fit on the page; allow stronger scaling when needed. + let scaleFactor = totalRequiredWidth > contentWidth ? contentWidth / totalRequiredWidth : 1; + if (!isDenseManyColumns) { + // Keep regular tables from becoming too small. + scaleFactor = Math.max(scaleFactor, 0.9); + } + + // Scale widths (gaps are also scaled) + const widthsPt = widthsWithExtra.map(w => w * scaleFactor); + const scaledGap = colGap * scaleFactor; + const ensureSpace = (needed: number) => { if (y - needed < contentMinY) y = newPage(); page = getPage(); @@ -3113,51 +3736,73 @@ async function generatePDF(product: ProductData, locale: 'en' | 'de'): Promise { - if (!hasMultipleVoltages) return 0; // No meta block if single voltage + // Always render a voltage-group header (even for single-voltage products) + // so all datasheets look consistent. const titleH = 14; const rowH = 14; const cols = 3; @@ -3232,30 +3878,29 @@ async function generatePDF(product: ProductData, locale: 'en' | 'de'): Promise newPage({ includeProductName: true, landscape: false }), - getPage: () => page, - page, - y, - margin, - contentWidth, - contentMinY, - font, - fontBold, - navy, - darkGray, - mediumGray, - }); + // Top meta block: always render per voltage group. + // This ensures a consistent structure across products (LV/MV/HV) and makes the + // voltage group visible in the heading. + y = drawDenseMetaGrid({ + title: `${labels.crossSection} — ${t.voltageLabel}`, + items: t.metaItems, + locale, + newPage: () => newPage({ includeProductName: true, landscape: false }), + getPage: () => page, + page, + y, + margin, + contentWidth, + contentMinY, + font, + fontBold, + navy, + darkGray, + mediumGray, + }); - // Breathing room before the dense table - y -= 14; - } + // Breathing room before the dense table + y -= 14; // Cross-section table: exactly 13 columns as specified // Order: DI, RI, Wi, Ibl, Ibe, Ik, Wm, Rbv, Ø, Fzv, Al, Cu, G @@ -3266,8 +3911,8 @@ async function generatePDF(product: ProductData, locale: 'en' | 'de'): Promise { return; } + // Dev convenience: generate only one locale / one product subset. + // IMPORTANT: apply filters BEFORE PDF_LIMIT so the limit works within the filtered set. + let products = allProducts; + + const onlyLocale = normalizeValue(String(process.env.PDF_LOCALE || '')).toLowerCase(); + if (onlyLocale === 'de' || onlyLocale === 'en') { + products = products.filter(p => (p.locale || 'en') === onlyLocale); + } + + const match = normalizeValue(String(process.env.PDF_MATCH || '')).toLowerCase(); + if (match) { + products = products.filter(p => { + const hay = [p.slug, p.translationKey, p.sku, stripHtml(p.name)] + .filter(Boolean) + .join(' ') + .toLowerCase(); + return hay.includes(match); + }); + } + // Optional dev convenience: limit how many PDFs we render (useful for design iteration). // Default behavior remains unchanged. const limit = Number(process.env.PDF_LIMIT || '0'); - const products = Number.isFinite(limit) && limit > 0 ? allProducts.slice(0, limit) : allProducts; + products = Number.isFinite(limit) && limit > 0 ? products.slice(0, limit) : products; - const enProducts = products.filter(p => p.locale === 'en'); - const deProducts = products.filter(p => p.locale === 'de'); + const enProducts = products.filter(p => (p.locale || 'en') === 'en'); + const deProducts = products.filter(p => (p.locale || 'en') === 'de'); console.log(`Found ${enProducts.length} EN + ${deProducts.length} DE products`); const totalChunks = Math.ceil(products.length / CONFIG.chunkSize); diff --git a/tests/column-grouping.test.ts b/tests/column-grouping.test.ts index 9dbc9979..0c8dc1c2 100644 --- a/tests/column-grouping.test.ts +++ b/tests/column-grouping.test.ts @@ -1,14 +1,15 @@ -#!/usr/bin/env ts-node /** * Test to verify that products with multiple Excel row structures * use the most complete data structure */ +import { describe, it, expect } from 'vitest'; + import * as fs from 'fs'; import * as path from 'path'; import { execSync } from 'child_process'; -function normalizeValue(value: string): string { +function normalizeValue(value) { if (!value) return ''; return String(value) .replace(/<[^>]*>/g, '') @@ -16,14 +17,14 @@ function normalizeValue(value: string): string { .trim(); } -function normalizeExcelKey(value: string): string { +function normalizeExcelKey(value) { return String(value || '') .toUpperCase() .replace(/-\d+$/g, '') .replace(/[^A-Z0-9]+/g, ''); } -function loadExcelRows(filePath: string): any[] { +function loadExcelRows(filePath) { const out = execSync(`npx -y xlsx-cli -j "${filePath}"`, { encoding: 'utf8', stdio: ['ignore', 'pipe', 'ignore'] }); const trimmed = out.trim(); const jsonStart = trimmed.indexOf('['); @@ -36,125 +37,93 @@ function loadExcelRows(filePath: string): any[] { } } -// Simulate the Excel index building -const excelFiles = [ - 'data/source/high-voltage.xlsx', - 'data/source/medium-voltage-KM.xlsx', - 'data/source/low-voltage-KM.xlsx', - 'data/source/solar-cables.xlsx', -]; +describe('Excel: products with multiple row structures', () => { + it('uses the most complete structure (NA2XSFL2Y)', { timeout: 30_000 }, () => { + const excelFiles = [ + 'data/source/high-voltage.xlsx', + 'data/source/medium-voltage-KM.xlsx', + 'data/source/low-voltage-KM.xlsx', + 'data/source/solar-cables.xlsx', + ]; -const idx = new Map }>(); + const idx = new Map(); -for (const file of excelFiles) { - if (!fs.existsSync(file)) continue; - const rows = loadExcelRows(file); - - const unitsRow = rows.find(r => r && r['Part Number'] === 'Units') || null; - const units: Record = {}; - if (unitsRow) { - for (const [k, v] of Object.entries(unitsRow)) { - if (k === 'Part Number') continue; - const unit = normalizeValue(String(v ?? '')); - if (unit) units[k] = unit; + for (const file of excelFiles) { + if (!fs.existsSync(file)) continue; + const rows = loadExcelRows(file); + + const unitsRow = rows.find(r => r && r['Part Number'] === 'Units') || null; + const units = {}; + if (unitsRow) { + for (const [k, v] of Object.entries(unitsRow)) { + if (k === 'Part Number') continue; + const unit = normalizeValue(String(v ?? '')); + if (unit) units[k] = unit; + } + } + + for (const r of rows) { + const pn = r?.['Part Number']; + if (!pn || pn === 'Units') continue; + const key = normalizeExcelKey(String(pn)); + if (!key) continue; + const cur = idx.get(key); + if (!cur) { + idx.set(key, { rows: [r], units }); + } else { + cur.rows.push(r); + if (Object.keys(cur.units).length < Object.keys(units).length) cur.units = units; + } + } } - } - for (const r of rows) { - const pn = r?.['Part Number']; - if (!pn || pn === 'Units') continue; - const key = normalizeExcelKey(String(pn)); - if (!key) continue; - const cur = idx.get(key); - if (!cur) { - idx.set(key, { rows: [r], units }); - } else { - cur.rows.push(r); - if (Object.keys(cur.units).length < Object.keys(units).length) cur.units = units; + const match = idx.get('NA2XSFL2Y'); + expect(match, 'NA2XSFL2Y must exist in Excel index').toBeTruthy(); + if (!match) return; + + // Count different structures + const structures = {}; + match.rows.forEach((r, i) => { + const keys = Object.keys(r) + .filter(k => k && k !== 'Part Number' && k !== 'Units') + .sort() + .join('|'); + if (!structures[keys]) structures[keys] = []; + structures[keys].push(i); + }); + + const structureCounts = Object.keys(structures).map(key => ({ + colCount: key.split('|').length, + rowCount: structures[key].length, + rows: structures[key], + })); + + const mostColumns = Math.max(...structureCounts.map(s => s.colCount)); + + // Simulate findExcelRowsForProduct: choose the structure with the most columns. + const rows = match.rows; + let sample = rows.find(r => r && Object.keys(r).length > 0) || {}; + let maxColumns = Object.keys(sample).filter(k => k && k !== 'Part Number' && k !== 'Units').length; + for (const r of rows) { + const cols = Object.keys(r).filter(k => k && k !== 'Part Number' && k !== 'Units').length; + if (cols > maxColumns) { + sample = r; + maxColumns = cols; + } } - } -} -// Test NA2XSFL2Y -const match = idx.get('NA2XSFL2Y'); -if (!match) { - console.log('❌ FAIL: NA2XSFL2Y not found in Excel'); - process.exit(1); -} + const sampleKeys = Object.keys(sample).filter(k => k && k !== 'Part Number' && k !== 'Units').sort(); + const compatibleRows = rows.filter(r => { + const rKeys = Object.keys(r).filter(k => k && k !== 'Part Number' && k !== 'Units').sort(); + return JSON.stringify(rKeys) === JSON.stringify(sampleKeys); + }); -console.log('Test: NA2XSFL2Y multiple row structures'); -console.log('========================================'); -console.log(`Total rows in index: ${match.rows.length}`); - -// Count different structures -const structures: Record = {}; -match.rows.forEach((r, i) => { - const keys = Object.keys(r).filter(k => k && k !== 'Part Number' && k !== 'Units').sort().join('|'); - if (!structures[keys]) structures[keys] = []; - structures[keys].push(i); + // Expectations + expect(sampleKeys.length).toBe(mostColumns); + expect(compatibleRows.length).toBeGreaterThan(0); + for (const r of compatibleRows) { + const keys = Object.keys(r).filter(k => k && k !== 'Part Number' && k !== 'Units'); + expect(keys.length).toBe(mostColumns); + } + }); }); - -const structureCounts = Object.keys(structures).map(key => ({ - colCount: key.split('|').length, - rowCount: structures[key].length, - rows: structures[key] -})); - -structureCounts.forEach((s, i) => { - console.log(` Structure ${i+1}: ${s.colCount} columns, ${s.rowCount} rows`); -}); - -const mostColumns = Math.max(...structureCounts.map(s => s.colCount)); -console.log(`Most complete structure: ${mostColumns} columns`); -console.log(''); - -// Now test the fix: simulate findExcelRowsForProduct -const rows = match.rows; - -// Find the row with most columns as sample -let sample = rows.find(r => r && Object.keys(r).length > 0) || {}; -let maxColumns = Object.keys(sample).filter(k => k && k !== 'Part Number' && k !== 'Units').length; - -for (const r of rows) { - const cols = Object.keys(r).filter(k => k && k !== 'Part Number' && k !== 'Units').length; - if (cols > maxColumns) { - sample = r; - maxColumns = cols; - } -} - -// Filter to only rows with the same column structure as sample -const sampleKeys = Object.keys(sample).filter(k => k && k !== 'Part Number' && k !== 'Units').sort(); -const compatibleRows = rows.filter(r => { - const rKeys = Object.keys(r).filter(k => k && k !== 'Part Number' && k !== 'Units').sort(); - return JSON.stringify(rKeys) === JSON.stringify(sampleKeys); -}); - -console.log('After fix (findExcelRowsForProduct):'); -console.log(` Filtered rows: ${compatibleRows.length}`); -console.log(` Sample columns: ${sampleKeys.length}`); -console.log(` All rows have same structure: ${compatibleRows.every(r => { - const keys = Object.keys(r).filter(k => k && k !== 'Part Number' && k !== 'Units'); - return keys.length === sampleKeys.length; -})}`); -console.log(''); - -// Verify the fix -const firstFilteredRowKeys = Object.keys(compatibleRows[0]).filter(k => k && k !== 'Part Number' && k !== 'Units'); - -console.log('✅ PASS: Filtered rows use the most complete structure'); -console.log(` All ${compatibleRows.length} rows have ${mostColumns} columns`); -console.log(` First row has ${firstFilteredRowKeys.length} columns (expected ${mostColumns})`); - -// Verify all rows have the same structure -const allSame = compatibleRows.every(r => { - const keys = Object.keys(r).filter(k => k && k !== 'Part Number' && k !== 'Units'); - return keys.length === mostColumns; -}); - -if (!allSame || firstFilteredRowKeys.length !== mostColumns) { - console.log('❌ FAIL: Verification failed'); - throw new Error('Verification failed'); -} - -console.log('\nAll checks passed!'); diff --git a/tests/pdf-datasheet.test.ts b/tests/pdf-datasheet.test.ts index da11703c..50d80030 100644 --- a/tests/pdf-datasheet.test.ts +++ b/tests/pdf-datasheet.test.ts @@ -1,9 +1,10 @@ -#!/usr/bin/env ts-node /** * PDF Datasheet Generator Test Suite * Validates that datasheets are generated correctly with all expected values */ +import { describe, it, expect } from 'vitest'; + import * as fs from 'fs'; import * as path from 'path'; import { execSync } from 'child_process'; @@ -24,14 +25,14 @@ const TEST_CONFIG = { const EXPECTED_HEADERS = ['DI', 'RI', 'Wi', 'Ibl', 'Ibe', 'Ik', 'Wm', 'Rbv', 'Ø', 'Fzv', 'Al', 'Cu', 'G']; // Helper functions (copied from generate-pdf-datasheets.ts for testing) -function normalizeExcelKey(value: string): string { +function normalizeExcelKey(value) { return String(value || '') .toUpperCase() .replace(/-\d+$/g, '') .replace(/[^A-Z0-9]+/g, ''); } -function normalizeValue(value: string): string { +function normalizeValue(value) { if (!value) return ''; return String(value) .replace(/<[^>]*>/g, '') @@ -39,7 +40,7 @@ function normalizeValue(value: string): string { .trim(); } -function loadExcelRows(filePath: string): any[] { +function loadExcelRows(filePath) { const out = execSync(`npx -y xlsx-cli -j "${filePath}"`, { encoding: 'utf8', stdio: ['ignore', 'pipe', 'ignore'] }); const trimmed = out.trim(); const jsonStart = trimmed.indexOf('['); @@ -52,14 +53,14 @@ function loadExcelRows(filePath: string): any[] { } } -function getExcelIndex(): Map }> { - const idx = new Map }>(); +function getExcelIndex() { + const idx = new Map(); for (const file of TEST_CONFIG.excelFiles) { if (!fs.existsSync(file)) continue; const rows = loadExcelRows(file); const unitsRow = rows.find(r => r && r['Part Number'] === 'Units') || null; - const units: Record = {}; + const units = {}; if (unitsRow) { for (const [k, v] of Object.entries(unitsRow)) { if (k === 'Part Number') continue; @@ -85,14 +86,14 @@ function getExcelIndex(): Map } | null { +function findExcelForProduct(product) { const idx = getExcelIndex(); const candidates = [ product.name, product.slug ? product.slug.replace(/-\d+$/g, '') : '', product.sku, product.translationKey, - ].filter(Boolean) as string[]; + ].filter(Boolean); for (const c of candidates) { const key = normalizeExcelKey(c); @@ -102,97 +103,54 @@ function findExcelForProduct(product: any): { rows: any[]; units: Record = []; +describe('PDF Datasheet Generator (smoke)', () => { + it('excel source files exist', () => { + const missing = TEST_CONFIG.excelFiles.filter(f => !fs.existsSync(f)); + expect(missing, `Missing Excel files: ${missing.join(', ')}`).toHaveLength(0); + }); - constructor() { - console.log('🧪 PDF Datasheet Generator Test Suite\n'); - } + it('products.json exists', () => { + expect(fs.existsSync(TEST_CONFIG.productsFile)).toBe(true); + }); - private assert(condition: boolean, name: string, error?: string): void { - if (condition) { - this.passed++; - this.tests.push({ name, passed: true }); - console.log(`✅ ${name}`); - } else { - this.failed++; - this.tests.push({ name, passed: false, error }); - console.log(`❌ ${name}${error ? ` - ${error}` : ''}`); - } - } + it('pdf output directory exists', () => { + expect(fs.existsSync(TEST_CONFIG.outputDir)).toBe(true); + }); - // Test 1: Check if Excel files exist - testExcelFilesExist(): void { - const allExist = TEST_CONFIG.excelFiles.every(file => fs.existsSync(file)); - this.assert( - allExist, - 'Excel source files exist', - `Missing: ${TEST_CONFIG.excelFiles.filter(f => !fs.existsSync(f)).join(', ')}` - ); - } + it( + 'excel data is loadable', + () => { + const idx = getExcelIndex(); + expect(idx.size).toBeGreaterThan(0); + }, + 30_000, + ); - // Test 2: Check if products.json exists - testProductsFileExists(): void { - this.assert( - fs.existsSync(TEST_CONFIG.productsFile), - 'Products JSON file exists' - ); - } - - // Test 3: Check if PDF output directory exists - testOutputDirectoryExists(): void { - this.assert( - fs.existsSync(TEST_CONFIG.outputDir), - 'PDF output directory exists' - ); - } - - // Test 4: Verify Excel data can be loaded - testExcelDataLoadable(): void { - try { - const idx = getExcelIndex(); - this.assert(idx.size > 0, 'Excel data loaded successfully', `Found ${idx.size} products`); - } catch (error) { - this.assert(false, 'Excel data loaded successfully', String(error)); - } - } - - // Test 5: Check specific product (NA2XS(FL)2Y) has Excel data - testSpecificProductHasExcelData(): void { + it( + 'product NA2XS(FL)2Y has excel data', + () => { const products = JSON.parse(fs.readFileSync(TEST_CONFIG.productsFile, 'utf8')); - const product = products.find((p: any) => p.id === 46773); - - if (!product) { - this.assert(false, 'Product NA2XS(FL)2Y exists in products.json'); - return; - } - + const product = products.find(p => p.id === 46773); + expect(product).toBeTruthy(); const match = findExcelForProduct(product); - this.assert( - match !== null && match.rows.length > 0, - 'Product NA2XS(FL)2Y has Excel data', - match ? `Found ${match.rows.length} rows` : 'No Excel match found' - ); - } + expect(match).toBeTruthy(); + expect(match?.rows?.length || 0).toBeGreaterThan(0); + }, + 30_000, + ); - // Test 6: Verify Excel rows contain expected columns - testExcelColumnsPresent(): void { + it( + 'excel contains required column families', + () => { const products = JSON.parse(fs.readFileSync(TEST_CONFIG.productsFile, 'utf8')); - const product = products.find((p: any) => p.id === 46773); + const product = products.find(p => p.id === 46773); const match = findExcelForProduct(product); - - if (!match || match.rows.length === 0) { - this.assert(false, 'Excel columns present', 'No data available'); - return; - } + expect(match).toBeTruthy(); + if (!match) return; const sampleRow = match.rows[0]; const excelKeys = Object.keys(sampleRow).map(k => k.toLowerCase()); - - // Check for key columns that map to our 13 headers (flexible matching for actual Excel names) + const hasDI = excelKeys.some(k => k.includes('diameter over insulation') || k.includes('insulation diameter')); const hasRI = excelKeys.some(k => k.includes('dc resistance') || k.includes('resistance conductor') || k.includes('leiterwiderstand')); const hasWi = excelKeys.some(k => k.includes('nominal insulation thickness') || k.includes('insulation thickness')); @@ -201,253 +159,19 @@ class PDFDatasheetTest { const hasIk = excelKeys.some(k => k.includes('shortcircuit current') || k.includes('kurzschlussstrom')); const hasWm = excelKeys.some(k => k.includes('sheath thickness') || k.includes('manteldicke')); const hasRbv = excelKeys.some(k => k.includes('bending radius') || k.includes('biegeradius')); - const hasØ = excelKeys.some(k => k.includes('outer diameter') || k.includes('außen') || k.includes('durchmesser')); + const hasOD = excelKeys.some(k => k.includes('outer diameter') || k.includes('außen') || k.includes('durchmesser')); const hasG = excelKeys.some(k => k.includes('weight') || k.includes('gewicht')); - const foundCount = [hasDI, hasRI, hasWi, hasIbl, hasIbe, hasIk, hasWm, hasRbv, hasØ, hasG].filter(Boolean).length; + const foundCount = [hasDI, hasRI, hasWi, hasIbl, hasIbe, hasIk, hasWm, hasRbv, hasOD, hasG].filter(Boolean).length; + expect(foundCount).toBeGreaterThanOrEqual(5); + }, + 30_000, + ); - // At least 5 of the 10 required columns should be present - this.assert( - foundCount >= 5, - 'Excel contains required columns', - `Found ${foundCount}/10 key columns (minimum 5 required)` - ); - } - - // Test 7: Verify PDF files were generated - testPDFsGenerated(): void { - const pdfFiles = fs.readdirSync(TEST_CONFIG.outputDir).filter(f => f.endsWith('.pdf')); - this.assert( - pdfFiles.length === 50, - 'All 50 PDFs generated', - `Found ${pdfFiles.length} PDFs` - ); - } - - // Test 8: Check PDF file sizes are reasonable - testPDFFileSizes(): void { - const pdfFiles = fs.readdirSync(TEST_CONFIG.outputDir).filter(f => f.endsWith('.pdf')); - const sizes = pdfFiles.map(f => { - const stat = fs.statSync(path.join(TEST_CONFIG.outputDir, f)); - return stat.size; - }); - - const avgSize = sizes.reduce((a, b) => a + b, 0) / sizes.length; - const minSize = Math.min(...sizes); - const maxSize = Math.max(...sizes); - - this.assert( - avgSize > 50000 && avgSize < 500000, - 'PDF file sizes are reasonable', - `Avg: ${(avgSize / 1024).toFixed(1)}KB, Min: ${(minSize / 1024).toFixed(1)}KB, Max: ${(maxSize / 1024).toFixed(1)}KB` - ); - } - - // Test 9: Verify product NA2XS(FL)2Y has voltage-specific data - testVoltageGrouping(): void { - const products = JSON.parse(fs.readFileSync(TEST_CONFIG.productsFile, 'utf8')); - const product = products.find((p: any) => p.id === 46773); - const match = findExcelForProduct(product); - - if (!match || match.rows.length === 0) { - this.assert(false, 'Voltage grouping works', 'No Excel data'); - return; - } - - // Check if rows have voltage information - const hasVoltage = match.rows.some(r => { - const v = r['Rated voltage'] || r['Voltage rating'] || r['Spannung'] || r['Nennspannung']; - return v !== undefined && v !== 'Units'; - }); - - this.assert( - hasVoltage, - 'Voltage grouping data present', - 'Rows contain voltage ratings' - ); - } - - // Test 10: Verify all required units are present - testUnitsPresent(): void { - const products = JSON.parse(fs.readFileSync(TEST_CONFIG.productsFile, 'utf8')); - const product = products.find((p: any) => p.id === 46773); - const match = findExcelForProduct(product); - - if (!match) { - this.assert(false, 'Units mapping present', 'No Excel data'); - return; - } - - const requiredUnits = ['mm', 'Ohm/km', 'A', 'kA', 'N', 'kg/km']; - const foundUnits = requiredUnits.filter(u => - Object.values(match.units).some(unit => unit.toLowerCase().includes(u.toLowerCase())) - ); - - this.assert( - foundUnits.length >= 4, - 'Required units present', - `Found ${foundUnits.length}/${requiredUnits.length} units` - ); - } - - // Test 11: Check if technical data extraction works - testTechnicalDataExtraction(): void { - const products = JSON.parse(fs.readFileSync(TEST_CONFIG.productsFile, 'utf8')); - const product = products.find((p: any) => p.id === 46773); - const match = findExcelForProduct(product); - - if (!match || match.rows.length === 0) { - this.assert(false, 'Technical data extraction', 'No Excel data'); - return; - } - - // Check for constant values (technical data) - const constantKeys = ['Conductor', 'Insulation', 'Sheath', 'Norm']; - const hasConstantData = constantKeys.some(key => { - const values = match.rows.map(r => normalizeValue(String(r?.[key] ?? ''))).filter(Boolean); - const unique = Array.from(new Set(values.map(v => v.toLowerCase()))); - return unique.length === 1 && values.length > 0; - }); - - this.assert( - hasConstantData, - 'Technical data extraction works', - 'Found constant values for conductor/insulation/sheath' - ); - } - - // Test 12: Verify table structure for sample product - testTableStructure(): void { - const products = JSON.parse(fs.readFileSync(TEST_CONFIG.productsFile, 'utf8')); - const product = products.find((p: any) => p.id === 46773); - const match = findExcelForProduct(product); - - if (!match || match.rows.length === 0) { - this.assert(false, 'Table structure valid', 'No Excel data'); - return; - } - - // Check cross-section column exists (actual name in Excel) - const excelKeys = Object.keys(match.rows[0]).map(k => k.toLowerCase()); - const hasCrossSection = excelKeys.some(k => - k.includes('number of cores and cross-section') || - k.includes('querschnitt') || - k.includes('ross section') || - k.includes('cross-section') - ); - - this.assert( - hasCrossSection, - 'Cross-section column present', - 'Required for table structure' - ); - } - - // Test 13: Verify PDF naming convention - testPDFNaming(): void { + it('pdf naming convention is correct', () => { const pdfFiles = fs.readdirSync(TEST_CONFIG.outputDir).filter(f => f.endsWith('.pdf')); const namingPattern = /^[a-z0-9-]+-(en|de)\.pdf$/; - - const allValid = pdfFiles.every(f => namingPattern.test(f)); - const sampleNames = pdfFiles.slice(0, 5); - - this.assert( - allValid, - 'PDF naming convention correct', - `Examples: ${sampleNames.join(', ')}` - ); - } - - // Test 14: Check if both EN and DE versions exist for sample products - testBothLanguages(): void { - const pdfFiles = fs.readdirSync(TEST_CONFIG.outputDir).filter(f => f.endsWith('.pdf')); - const enFiles = pdfFiles.filter(f => f.endsWith('-en.pdf')); - const deFiles = pdfFiles.filter(f => f.endsWith('-de.pdf')); - - this.assert( - enFiles.length === 25 && deFiles.length === 25, - 'Both EN and DE versions generated', - `EN: ${enFiles.length}, DE: ${deFiles.length}` - ); - } - - // Test 15: Verify Excel to header mapping - testHeaderMapping(): void { - const products = JSON.parse(fs.readFileSync(TEST_CONFIG.productsFile, 'utf8')); - const product = products.find((p: any) => p.id === 46773); - const match = findExcelForProduct(product); - - if (!match || match.rows.length === 0) { - this.assert(false, 'Header mapping correct', 'No Excel data'); - return; - } - - const sampleRow = match.rows[0]; - const excelKeys = Object.keys(sampleRow).map(k => k.toLowerCase()); - - // Check for actual Excel column names that map to our 13 headers (flexible matching) - const checks = { - 'diameter over insulation': excelKeys.some(k => k.includes('diameter over insulation') || k.includes('insulation diameter')), - 'dc resistance': excelKeys.some(k => k.includes('dc resistance') || k.includes('resistance conductor') || k.includes('leiterwiderstand')), - 'insulation thickness': excelKeys.some(k => k.includes('nominal insulation thickness') || k.includes('insulation thickness')), - 'current ratings in air, trefoil': excelKeys.some(k => k.includes('current ratings in air') || k.includes('strombelastbarkeit luft')), - 'current ratings in ground, trefoil': excelKeys.some(k => k.includes('current ratings in ground') || k.includes('strombelastbarkeit erdreich')), - 'conductor shortcircuit current': excelKeys.some(k => k.includes('shortcircuit current') || k.includes('kurzschlussstrom')), - 'sheath thickness': excelKeys.some(k => k.includes('sheath thickness') || k.includes('manteldicke')), - 'bending radius': excelKeys.some(k => k.includes('bending radius') || k.includes('biegeradius')), - 'outer diameter': excelKeys.some(k => k.includes('outer diameter') || k.includes('außen') || k.includes('durchmesser')), - 'weight': excelKeys.some(k => k.includes('weight') || k.includes('gewicht')), - }; - - const foundCount = Object.values(checks).filter(Boolean).length; - - // At least 5 of the 10 mappings should work - this.assert( - foundCount >= 5, - 'Header mapping works', - `Mapped ${foundCount}/10 Excel columns to our headers (minimum 5 required)` - ); - } - - // Run all tests - runAll(): void { - console.log('Running tests...\n'); - - this.testExcelFilesExist(); - this.testProductsFileExists(); - this.testOutputDirectoryExists(); - this.testExcelDataLoadable(); - this.testSpecificProductHasExcelData(); - this.testExcelColumnsPresent(); - this.testPDFsGenerated(); - this.testPDFFileSizes(); - this.testVoltageGrouping(); - this.testUnitsPresent(); - this.testTechnicalDataExtraction(); - this.testTableStructure(); - this.testPDFNaming(); - this.testBothLanguages(); - this.testHeaderMapping(); - - console.log('\n' + '='.repeat(60)); - console.log(`RESULTS: ${this.passed} passed, ${this.failed} failed`); - console.log('='.repeat(60)); - - if (this.failed > 0) { - console.log('\n❌ Failed tests:'); - this.tests.filter(t => !t.passed).forEach(t => { - console.log(` - ${t.name}${t.error ? `: ${t.error}` : ''}`); - }); - // Don't call process.exit in test environment - return; - } else { - console.log('\n✅ All tests passed!'); - // Don't call process.exit in test environment - return; - } - } -} - -// Run tests -const testSuite = new PDFDatasheetTest(); -testSuite.runAll(); + expect(pdfFiles.length).toBeGreaterThan(0); + expect(pdfFiles.every(f => namingPattern.test(f))).toBe(true); + }); +}); diff --git a/tsconfig.tsbuildinfo b/tsconfig.tsbuildinfo index ade93395..b2b3c252 100644 --- a/tsconfig.tsbuildinfo +++ b/tsconfig.tsbuildinfo @@ -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.esnext.d.ts","./node_modules/typescript/lib/lib.dom.d.ts","./node_modules/typescript/lib/lib.dom.iterable.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.intl.d.ts","./node_modules/typescript/lib/lib.esnext.disposable.d.ts","./node_modules/typescript/lib/lib.esnext.promise.d.ts","./node_modules/typescript/lib/lib.esnext.decorators.d.ts","./node_modules/typescript/lib/lib.esnext.iterator.d.ts","./node_modules/typescript/lib/lib.esnext.float16.d.ts","./node_modules/typescript/lib/lib.esnext.error.d.ts","./node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","./node_modules/typescript/lib/lib.decorators.d.ts","./node_modules/typescript/lib/lib.decorators.legacy.d.ts","./node_modules/next/dist/styled-jsx/types/css.d.ts","./node_modules/@types/react/global.d.ts","./node_modules/csstype/index.d.ts","./node_modules/@types/react/index.d.ts","./node_modules/next/dist/styled-jsx/types/index.d.ts","./node_modules/next/dist/styled-jsx/types/macro.d.ts","./node_modules/next/dist/styled-jsx/types/style.d.ts","./node_modules/next/dist/styled-jsx/types/global.d.ts","./node_modules/next/dist/shared/lib/amp.d.ts","./node_modules/next/amp.d.ts","./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/@types/node/globals.d.ts","./node_modules/@types/node/web-globals/abortcontroller.d.ts","./node_modules/@types/node/web-globals/domexception.d.ts","./node_modules/@types/node/web-globals/events.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/web-globals/fetch.d.ts","./node_modules/@types/node/web-globals/navigator.d.ts","./node_modules/@types/node/web-globals/storage.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/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/inspector.generated.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","./node_modules/next/dist/server/get-page-files.d.ts","./node_modules/@types/react/canary.d.ts","./node_modules/@types/react/experimental.d.ts","./node_modules/@types/react-dom/index.d.ts","./node_modules/@types/react-dom/canary.d.ts","./node_modules/@types/react-dom/experimental.d.ts","./node_modules/next/dist/compiled/webpack/webpack.d.ts","./node_modules/next/dist/server/config.d.ts","./node_modules/next/dist/lib/load-custom-routes.d.ts","./node_modules/next/dist/shared/lib/image-config.d.ts","./node_modules/next/dist/build/webpack/plugins/subresource-integrity-plugin.d.ts","./node_modules/next/dist/server/body-streams.d.ts","./node_modules/next/dist/server/future/route-kind.d.ts","./node_modules/next/dist/server/future/route-definitions/route-definition.d.ts","./node_modules/next/dist/server/future/route-matches/route-match.d.ts","./node_modules/next/dist/client/components/app-router-headers.d.ts","./node_modules/next/dist/server/request-meta.d.ts","./node_modules/next/dist/server/lib/revalidate.d.ts","./node_modules/next/dist/server/config-shared.d.ts","./node_modules/next/dist/server/base-http/index.d.ts","./node_modules/next/dist/server/api-utils/index.d.ts","./node_modules/next/dist/server/node-environment.d.ts","./node_modules/next/dist/server/require-hook.d.ts","./node_modules/next/dist/server/node-polyfill-crypto.d.ts","./node_modules/next/dist/lib/page-types.d.ts","./node_modules/next/dist/build/analysis/get-page-static-info.d.ts","./node_modules/next/dist/build/webpack/loaders/get-module-build-info.d.ts","./node_modules/next/dist/build/webpack/plugins/middleware-plugin.d.ts","./node_modules/next/dist/server/render-result.d.ts","./node_modules/next/dist/server/future/helpers/i18n-provider.d.ts","./node_modules/next/dist/server/web/next-url.d.ts","./node_modules/next/dist/compiled/@edge-runtime/cookies/index.d.ts","./node_modules/next/dist/server/web/spec-extension/cookies.d.ts","./node_modules/next/dist/server/web/spec-extension/request.d.ts","./node_modules/next/dist/server/web/spec-extension/fetch-event.d.ts","./node_modules/next/dist/server/web/spec-extension/response.d.ts","./node_modules/next/dist/server/web/types.d.ts","./node_modules/next/dist/lib/setup-exception-listeners.d.ts","./node_modules/next/dist/lib/constants.d.ts","./node_modules/next/dist/build/index.d.ts","./node_modules/next/dist/build/webpack/plugins/pages-manifest-plugin.d.ts","./node_modules/next/dist/shared/lib/router/utils/route-regex.d.ts","./node_modules/next/dist/shared/lib/router/utils/route-matcher.d.ts","./node_modules/next/dist/shared/lib/router/utils/parse-url.d.ts","./node_modules/next/dist/server/base-http/node.d.ts","./node_modules/next/dist/server/font-utils.d.ts","./node_modules/next/dist/build/webpack/plugins/flight-manifest-plugin.d.ts","./node_modules/next/dist/server/future/route-modules/route-module.d.ts","./node_modules/next/dist/shared/lib/deep-readonly.d.ts","./node_modules/next/dist/server/load-components.d.ts","./node_modules/next/dist/shared/lib/router/utils/middleware-route-matcher.d.ts","./node_modules/next/dist/build/webpack/plugins/next-font-manifest-plugin.d.ts","./node_modules/next/dist/server/future/route-definitions/locale-route-definition.d.ts","./node_modules/next/dist/server/future/route-definitions/pages-route-definition.d.ts","./node_modules/next/dist/shared/lib/mitt.d.ts","./node_modules/next/dist/client/with-router.d.ts","./node_modules/next/dist/client/router.d.ts","./node_modules/next/dist/client/route-loader.d.ts","./node_modules/next/dist/client/page-loader.d.ts","./node_modules/next/dist/shared/lib/bloom-filter.d.ts","./node_modules/next/dist/shared/lib/router/router.d.ts","./node_modules/next/dist/shared/lib/router-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/loadable-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/loadable.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/image-config-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/hooks-client-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/head-manager-context.shared-runtime.d.ts","./node_modules/next/dist/server/future/route-definitions/app-page-route-definition.d.ts","./node_modules/next/dist/shared/lib/modern-browserslist-target.d.ts","./node_modules/next/dist/shared/lib/constants.d.ts","./node_modules/next/dist/build/webpack/loaders/metadata/types.d.ts","./node_modules/next/dist/build/page-extensions-type.d.ts","./node_modules/next/dist/build/webpack/loaders/next-app-loader.d.ts","./node_modules/next/dist/server/lib/app-dir-module.d.ts","./node_modules/next/dist/server/response-cache/types.d.ts","./node_modules/next/dist/server/response-cache/index.d.ts","./node_modules/next/dist/server/lib/incremental-cache/index.d.ts","./node_modules/next/dist/client/components/hooks-server-context.d.ts","./node_modules/next/dist/server/app-render/dynamic-rendering.d.ts","./node_modules/next/dist/client/components/static-generation-async-storage-instance.d.ts","./node_modules/next/dist/client/components/static-generation-async-storage.external.d.ts","./node_modules/next/dist/server/web/spec-extension/adapters/request-cookies.d.ts","./node_modules/next/dist/server/async-storage/draft-mode-provider.d.ts","./node_modules/next/dist/server/web/spec-extension/adapters/headers.d.ts","./node_modules/next/dist/client/components/request-async-storage-instance.d.ts","./node_modules/next/dist/client/components/request-async-storage.external.d.ts","./node_modules/next/dist/server/app-render/create-error-handler.d.ts","./node_modules/next/dist/server/app-render/app-render.d.ts","./node_modules/next/dist/shared/lib/server-inserted-html.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/amp-context.shared-runtime.d.ts","./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/entrypoints.d.ts","./node_modules/next/dist/server/future/route-modules/app-page/module.compiled.d.ts","./node_modules/@types/react/jsx-runtime.d.ts","./node_modules/next/dist/client/components/error-boundary.d.ts","./node_modules/next/dist/client/components/router-reducer/create-initial-router-state.d.ts","./node_modules/next/dist/client/components/app-router.d.ts","./node_modules/next/dist/client/components/layout-router.d.ts","./node_modules/next/dist/client/components/render-from-template-context.d.ts","./node_modules/next/dist/client/components/action-async-storage-instance.d.ts","./node_modules/next/dist/client/components/action-async-storage.external.d.ts","./node_modules/next/dist/client/components/client-page.d.ts","./node_modules/next/dist/client/components/search-params.d.ts","./node_modules/next/dist/client/components/not-found-boundary.d.ts","./node_modules/next/dist/server/app-render/rsc/preloads.d.ts","./node_modules/next/dist/server/app-render/rsc/postpone.d.ts","./node_modules/next/dist/server/app-render/rsc/taint.d.ts","./node_modules/next/dist/server/app-render/entry-base.d.ts","./node_modules/next/dist/build/templates/app-page.d.ts","./node_modules/next/dist/server/future/route-modules/app-page/module.d.ts","./node_modules/next/dist/server/lib/builtin-request-context.d.ts","./node_modules/next/dist/server/app-render/types.d.ts","./node_modules/next/dist/client/components/router-reducer/fetch-server-response.d.ts","./node_modules/next/dist/client/components/router-reducer/router-reducer-types.d.ts","./node_modules/next/dist/shared/lib/app-router-context.shared-runtime.d.ts","./node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/entrypoints.d.ts","./node_modules/next/dist/server/future/route-modules/pages/module.compiled.d.ts","./node_modules/next/dist/build/templates/pages.d.ts","./node_modules/next/dist/server/future/route-modules/pages/module.d.ts","./node_modules/next/dist/server/render.d.ts","./node_modules/next/dist/server/future/route-definitions/pages-api-route-definition.d.ts","./node_modules/next/dist/server/future/route-matches/pages-api-route-match.d.ts","./node_modules/next/dist/server/future/route-matchers/route-matcher.d.ts","./node_modules/next/dist/server/future/route-matcher-providers/route-matcher-provider.d.ts","./node_modules/next/dist/server/future/route-matcher-managers/route-matcher-manager.d.ts","./node_modules/next/dist/server/future/normalizers/normalizer.d.ts","./node_modules/next/dist/server/future/normalizers/locale-route-normalizer.d.ts","./node_modules/next/dist/server/future/normalizers/request/pathname-normalizer.d.ts","./node_modules/next/dist/server/future/normalizers/request/suffix.d.ts","./node_modules/next/dist/server/future/normalizers/request/rsc.d.ts","./node_modules/next/dist/server/future/normalizers/request/prefix.d.ts","./node_modules/next/dist/server/future/normalizers/request/postponed.d.ts","./node_modules/next/dist/server/future/normalizers/request/action.d.ts","./node_modules/next/dist/server/future/normalizers/request/prefetch-rsc.d.ts","./node_modules/next/dist/server/future/normalizers/request/next-data.d.ts","./node_modules/next/dist/server/base-server.d.ts","./node_modules/next/dist/server/image-optimizer.d.ts","./node_modules/next/dist/server/next-server.d.ts","./node_modules/next/dist/lib/coalesced-function.d.ts","./node_modules/next/dist/server/lib/router-utils/types.d.ts","./node_modules/next/dist/trace/types.d.ts","./node_modules/next/dist/trace/trace.d.ts","./node_modules/next/dist/trace/shared.d.ts","./node_modules/next/dist/trace/index.d.ts","./node_modules/next/dist/build/load-jsconfig.d.ts","./node_modules/next/dist/build/webpack-config.d.ts","./node_modules/next/dist/build/webpack/plugins/define-env-plugin.d.ts","./node_modules/next/dist/build/swc/index.d.ts","./node_modules/next/dist/server/dev/parse-version-info.d.ts","./node_modules/next/dist/server/dev/hot-reloader-types.d.ts","./node_modules/next/dist/telemetry/storage.d.ts","./node_modules/next/dist/server/lib/types.d.ts","./node_modules/next/dist/server/lib/render-server.d.ts","./node_modules/next/dist/server/lib/router-server.d.ts","./node_modules/next/dist/shared/lib/router/utils/path-match.d.ts","./node_modules/next/dist/server/lib/router-utils/filesystem.d.ts","./node_modules/next/dist/server/lib/router-utils/setup-dev-bundler.d.ts","./node_modules/next/dist/server/lib/dev-bundler-service.d.ts","./node_modules/next/dist/server/dev/static-paths-worker.d.ts","./node_modules/next/dist/server/dev/next-dev-server.d.ts","./node_modules/next/dist/server/next.d.ts","./node_modules/next/dist/lib/metadata/types/alternative-urls-types.d.ts","./node_modules/next/dist/lib/metadata/types/extra-types.d.ts","./node_modules/next/dist/lib/metadata/types/metadata-types.d.ts","./node_modules/next/dist/lib/metadata/types/manifest-types.d.ts","./node_modules/next/dist/lib/metadata/types/opengraph-types.d.ts","./node_modules/next/dist/lib/metadata/types/twitter-types.d.ts","./node_modules/next/dist/lib/metadata/types/metadata-interface.d.ts","./node_modules/next/types/index.d.ts","./node_modules/next/dist/shared/lib/html-context.shared-runtime.d.ts","./node_modules/@next/env/dist/index.d.ts","./node_modules/next/dist/shared/lib/utils.d.ts","./node_modules/next/dist/pages/_app.d.ts","./node_modules/next/app.d.ts","./node_modules/next/dist/server/web/spec-extension/unstable-cache.d.ts","./node_modules/next/dist/server/web/spec-extension/revalidate.d.ts","./node_modules/next/dist/server/web/spec-extension/unstable-no-store.d.ts","./node_modules/next/cache.d.ts","./node_modules/next/dist/shared/lib/runtime-config.external.d.ts","./node_modules/next/config.d.ts","./node_modules/next/dist/pages/_document.d.ts","./node_modules/next/document.d.ts","./node_modules/next/dist/shared/lib/dynamic.d.ts","./node_modules/next/dynamic.d.ts","./node_modules/next/dist/pages/_error.d.ts","./node_modules/next/error.d.ts","./node_modules/next/dist/shared/lib/head.d.ts","./node_modules/next/head.d.ts","./node_modules/next/dist/client/components/draft-mode.d.ts","./node_modules/next/dist/client/components/headers.d.ts","./node_modules/next/headers.d.ts","./node_modules/next/dist/shared/lib/get-img-props.d.ts","./node_modules/next/dist/client/image-component.d.ts","./node_modules/next/dist/shared/lib/image-external.d.ts","./node_modules/next/image.d.ts","./node_modules/next/dist/client/link.d.ts","./node_modules/next/link.d.ts","./node_modules/next/dist/client/components/redirect-status-code.d.ts","./node_modules/next/dist/client/components/redirect.d.ts","./node_modules/next/dist/client/components/not-found.d.ts","./node_modules/next/dist/client/components/navigation.react-server.d.ts","./node_modules/next/dist/client/components/navigation.d.ts","./node_modules/next/navigation.d.ts","./node_modules/next/router.d.ts","./node_modules/next/dist/client/script.d.ts","./node_modules/next/script.d.ts","./node_modules/next/dist/server/web/spec-extension/user-agent.d.ts","./node_modules/next/dist/compiled/@edge-runtime/primitives/url.d.ts","./node_modules/next/dist/server/web/spec-extension/image-response.d.ts","./node_modules/next/dist/compiled/@vercel/og/satori/index.d.ts","./node_modules/next/dist/compiled/@vercel/og/emoji/index.d.ts","./node_modules/next/dist/compiled/@vercel/og/types.d.ts","./node_modules/next/server.d.ts","./node_modules/next/types/global.d.ts","./node_modules/next/types/compiled.d.ts","./node_modules/next/index.d.ts","./node_modules/next/image-types/global.d.ts","./next-env.d.ts","./middleware.ts","./next.config.ts","./node_modules/@vitest/pretty-format/dist/index.d.ts","./node_modules/@vitest/utils/dist/display.d.ts","./node_modules/@vitest/utils/dist/types.d.ts","./node_modules/@vitest/utils/dist/helpers.d.ts","./node_modules/@vitest/utils/dist/timers.d.ts","./node_modules/@vitest/utils/dist/index.d.ts","./node_modules/@vitest/runner/dist/tasks.d-bua1hjow.d.ts","./node_modules/@vitest/utils/dist/types.d-bcelap-c.d.ts","./node_modules/@vitest/utils/dist/diff.d.ts","./node_modules/@vitest/runner/dist/types.d.ts","./node_modules/@vitest/runner/dist/index.d.ts","./node_modules/@vitest/spy/dist/index.d.ts","./node_modules/tinyrainbow/dist/index.d.ts","./node_modules/@standard-schema/spec/dist/index.d.ts","./node_modules/@types/deep-eql/index.d.ts","./node_modules/assertion-error/index.d.ts","./node_modules/@types/chai/index.d.ts","./node_modules/@vitest/expect/dist/index.d.ts","./node_modules/vite/types/hmrpayload.d.ts","./node_modules/vite/dist/node/chunks/modulerunnertransport.d.ts","./node_modules/vite/types/customevent.d.ts","./node_modules/@types/estree/index.d.ts","./node_modules/rollup/dist/rollup.d.ts","./node_modules/rollup/dist/parseast.d.ts","./node_modules/vite/types/hot.d.ts","./node_modules/vite/dist/node/module-runner.d.ts","./node_modules/esbuild/lib/main.d.ts","./node_modules/vite/types/internal/terseroptions.d.ts","./node_modules/source-map-js/source-map.d.ts","./node_modules/postcss/lib/previous-map.d.ts","./node_modules/postcss/lib/input.d.ts","./node_modules/postcss/lib/css-syntax-error.d.ts","./node_modules/postcss/lib/declaration.d.ts","./node_modules/postcss/lib/root.d.ts","./node_modules/postcss/lib/warning.d.ts","./node_modules/postcss/lib/lazy-result.d.ts","./node_modules/postcss/lib/no-work-result.d.ts","./node_modules/postcss/lib/processor.d.ts","./node_modules/postcss/lib/result.d.ts","./node_modules/postcss/lib/document.d.ts","./node_modules/postcss/lib/rule.d.ts","./node_modules/postcss/lib/node.d.ts","./node_modules/postcss/lib/comment.d.ts","./node_modules/postcss/lib/container.d.ts","./node_modules/postcss/lib/at-rule.d.ts","./node_modules/postcss/lib/list.d.ts","./node_modules/postcss/lib/postcss.d.ts","./node_modules/postcss/lib/postcss.d.mts","./node_modules/sass/types/deprecations.d.ts","./node_modules/sass/types/util/promise_or.d.ts","./node_modules/sass/types/importer.d.ts","./node_modules/sass/types/logger/source_location.d.ts","./node_modules/sass/types/logger/source_span.d.ts","./node_modules/sass/types/logger/index.d.ts","./node_modules/immutable/dist/immutable.d.ts","./node_modules/sass/types/value/boolean.d.ts","./node_modules/sass/types/value/calculation.d.ts","./node_modules/sass/types/value/color.d.ts","./node_modules/sass/types/value/function.d.ts","./node_modules/sass/types/value/list.d.ts","./node_modules/sass/types/value/map.d.ts","./node_modules/sass/types/value/mixin.d.ts","./node_modules/sass/types/value/number.d.ts","./node_modules/sass/types/value/string.d.ts","./node_modules/sass/types/value/argument_list.d.ts","./node_modules/sass/types/value/index.d.ts","./node_modules/sass/types/options.d.ts","./node_modules/sass/types/compile.d.ts","./node_modules/sass/types/exception.d.ts","./node_modules/sass/types/legacy/exception.d.ts","./node_modules/sass/types/legacy/plugin_this.d.ts","./node_modules/sass/types/legacy/function.d.ts","./node_modules/sass/types/legacy/importer.d.ts","./node_modules/sass/types/legacy/options.d.ts","./node_modules/sass/types/legacy/render.d.ts","./node_modules/sass/types/index.d.ts","./node_modules/vite/types/internal/csspreprocessoroptions.d.ts","./node_modules/lightningcss/node/ast.d.ts","./node_modules/lightningcss/node/targets.d.ts","./node_modules/lightningcss/node/index.d.ts","./node_modules/vite/types/internal/lightningcssoptions.d.ts","./node_modules/vite/types/importglob.d.ts","./node_modules/vite/types/metadata.d.ts","./node_modules/vite/dist/node/index.d.ts","./node_modules/@vitest/snapshot/dist/environment.d-dhdq1csl.d.ts","./node_modules/@vitest/snapshot/dist/rawsnapshot.d-lfsmjfud.d.ts","./node_modules/@vitest/snapshot/dist/index.d.ts","./node_modules/vitest/dist/chunks/traces.d.402v_yfi.d.ts","./node_modules/vitest/dist/chunks/rpc.d.rh3apgef.d.ts","./node_modules/vitest/dist/chunks/config.d.czijkicf.d.ts","./node_modules/vitest/dist/chunks/environment.d.crsxczp1.d.ts","./node_modules/vitest/dist/chunks/worker.d.5jnaocan.d.ts","./node_modules/vitest/dist/chunks/browser.d.bz3lxtx-.d.ts","./node_modules/@vitest/mocker/dist/types.d-b8cckmht.d.ts","./node_modules/@vitest/mocker/dist/index.d-c-slyzi-.d.ts","./node_modules/@vitest/mocker/dist/index.d.ts","./node_modules/@vitest/utils/dist/source-map.d.ts","./node_modules/vitest/dist/chunks/coverage.d.bztk59wp.d.ts","./node_modules/@vitest/utils/dist/serialize.d.ts","./node_modules/@vitest/utils/dist/error.d.ts","./node_modules/vitest/dist/browser.d.ts","./node_modules/vitest/browser/context.d.ts","./node_modules/vitest/optional-types.d.ts","./node_modules/@vitest/runner/dist/utils.d.ts","./node_modules/tinybench/dist/index.d.ts","./node_modules/vitest/dist/chunks/benchmark.d.daahlpsq.d.ts","./node_modules/@vitest/snapshot/dist/manager.d.ts","./node_modules/vitest/dist/chunks/reporters.d.rsi0pyxx.d.ts","./node_modules/vitest/dist/chunks/plugin.d.v1sc_bv1.d.ts","./node_modules/vitest/dist/config.d.ts","./node_modules/vitest/config.d.ts","./vitest.config.ts","./app/robots.ts","./data/processed/wordpress-data.json","./node_modules/xlsx/types/index.d.ts","./lib/excel-products.ts","./lib/data.ts","./app/sitemap.ts","./node_modules/resend/dist/index.d.ts","./app/[locale]/api/contact/route.ts","./node_modules/clsx/clsx.d.mts","./node_modules/tailwind-merge/dist/types.d.ts","./lib/utils.ts","./lib/responsive.ts","./components/ui/button.tsx","./components/ui/card.tsx","./components/ui/container.tsx","./components/ui/grid.tsx","./components/ui/badge.tsx","./components/ui/loading.tsx","./node_modules/lucide-react/dist/lucide-react.d.ts","./components/ui/slider.tsx","./components/ui/icon.tsx","./components/ui/index.ts","./components/cards/basecard.tsx","./components/cards/blogcard.tsx","./components/cards/productcard.tsx","./components/cards/categorycard.tsx","./components/cards/cardgrid.tsx","./components/cards/testimonialcard.tsx","./components/cards/index.ts","./components/content/hero.tsx","./components/content/section.tsx","./components/content/featuredimage.tsx","./components/content/breadcrumbs.tsx","./lib/html-compat.ts","./node_modules/domelementtype/lib/esm/index.d.ts","./node_modules/domhandler/lib/esm/node.d.ts","./node_modules/domhandler/lib/esm/index.d.ts","./node_modules/cheerio/node_modules/htmlparser2/dist/esm/tokenizer.d.ts","./node_modules/cheerio/node_modules/htmlparser2/dist/esm/parser.d.ts","./node_modules/dom-serializer/lib/esm/index.d.ts","./node_modules/domutils/lib/esm/stringify.d.ts","./node_modules/domutils/lib/esm/traversal.d.ts","./node_modules/domutils/lib/esm/manipulation.d.ts","./node_modules/domutils/lib/esm/querying.d.ts","./node_modules/domutils/lib/esm/legacy.d.ts","./node_modules/domutils/lib/esm/helpers.d.ts","./node_modules/domutils/lib/esm/feeds.d.ts","./node_modules/domutils/lib/esm/index.d.ts","./node_modules/cheerio/node_modules/htmlparser2/dist/esm/index.d.ts","./node_modules/parse5/dist/common/html.d.ts","./node_modules/parse5/dist/common/token.d.ts","./node_modules/parse5/dist/common/error-codes.d.ts","./node_modules/parse5/dist/tokenizer/preprocessor.d.ts","./node_modules/parse5/node_modules/entities/dist/esm/generated/decode-data-html.d.ts","./node_modules/parse5/node_modules/entities/dist/esm/generated/decode-data-xml.d.ts","./node_modules/parse5/node_modules/entities/dist/esm/decode-codepoint.d.ts","./node_modules/parse5/node_modules/entities/dist/esm/decode.d.ts","./node_modules/parse5/dist/tokenizer/index.d.ts","./node_modules/parse5/dist/tree-adapters/interface.d.ts","./node_modules/parse5/dist/parser/open-element-stack.d.ts","./node_modules/parse5/dist/parser/formatting-element-list.d.ts","./node_modules/parse5/dist/parser/index.d.ts","./node_modules/parse5/dist/tree-adapters/default.d.ts","./node_modules/parse5/dist/serializer/index.d.ts","./node_modules/parse5/dist/common/foreign-content.d.ts","./node_modules/parse5/dist/index.d.ts","./node_modules/parse5-htmlparser2-tree-adapter/dist/index.d.ts","./node_modules/css-what/lib/es/types.d.ts","./node_modules/css-what/lib/es/parse.d.ts","./node_modules/css-what/lib/es/stringify.d.ts","./node_modules/css-what/lib/es/index.d.ts","./node_modules/css-select/lib/esm/types.d.ts","./node_modules/css-select/lib/esm/pseudo-selectors/filters.d.ts","./node_modules/css-select/lib/esm/pseudo-selectors/pseudos.d.ts","./node_modules/css-select/lib/esm/pseudo-selectors/aliases.d.ts","./node_modules/css-select/lib/esm/pseudo-selectors/index.d.ts","./node_modules/css-select/lib/esm/index.d.ts","./node_modules/cheerio-select/lib/esm/index.d.ts","./node_modules/cheerio/dist/esm/options.d.ts","./node_modules/cheerio/dist/esm/api/attributes.d.ts","./node_modules/cheerio/dist/esm/api/traversing.d.ts","./node_modules/cheerio/dist/esm/api/manipulation.d.ts","./node_modules/cheerio/dist/esm/api/css.d.ts","./node_modules/cheerio/dist/esm/api/forms.d.ts","./node_modules/cheerio/dist/esm/api/extract.d.ts","./node_modules/cheerio/dist/esm/cheerio.d.ts","./node_modules/cheerio/dist/esm/types.d.ts","./node_modules/cheerio/dist/esm/static.d.ts","./node_modules/cheerio/dist/esm/load.d.ts","./node_modules/cheerio/dist/esm/load-parse.d.ts","./node_modules/cheerio/dist/esm/slim.d.ts","./node_modules/encoding-sniffer/dist/esm/sniffer.d.ts","./node_modules/encoding-sniffer/dist/esm/index.d.ts","./node_modules/undici/types/utility.d.ts","./node_modules/undici/types/header.d.ts","./node_modules/undici/types/readable.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-stats.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/h2c-client.d.ts","./node_modules/undici/types/agent.d.ts","./node_modules/undici/types/mock-interceptor.d.ts","./node_modules/undici/types/mock-call-history.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/snapshot-agent.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/cache-interceptor.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/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/undici/index.d.ts","./node_modules/cheerio/dist/esm/index.d.ts","./lib/i18n.ts","./components/forms/formlabel.tsx","./components/forms/formerror.tsx","./components/forms/forminput.tsx","./components/forms/formtextarea.tsx","./components/forms/formselect.tsx","./components/forms/formcheckbox.tsx","./components/forms/formradio.tsx","./components/forms/formfield.tsx","./components/forms/formsuccess.tsx","./components/forms/hooks/useformvalidation.ts","./components/forms/hooks/useform.ts","./components/forms/hooks/useformfield.ts","./components/forms/index.ts","./components/contactform.tsx","./components/content/contentrenderer.tsx","./components/content/index.ts","./components/layout/navigation.tsx","./components/localeswitcher.tsx","./components/layout/mobilemenu.tsx","./components/layout/header.tsx","./components/layout/footer.tsx","./components/layout/layout.tsx","./components/layout/index.ts","./lib/i18n-config.ts","./lib/responsive-test.ts","./lib/seo.ts","./node_modules/vitest/dist/chunks/global.d.b15mdlcr.d.ts","./node_modules/vitest/dist/chunks/suite.d.bjwk38hb.d.ts","./node_modules/vitest/dist/chunks/evaluatedmodules.d.bxj5omdx.d.ts","./node_modules/expect-type/dist/utils.d.ts","./node_modules/expect-type/dist/overloads.d.ts","./node_modules/expect-type/dist/branding.d.ts","./node_modules/expect-type/dist/messages.d.ts","./node_modules/expect-type/dist/index.d.ts","./node_modules/vitest/dist/index.d.ts","./tests/data-processing.test.ts","./tests/excel-integration.test.ts","./node_modules/next/dist/compiled/@next/font/dist/types.d.ts","./node_modules/next/dist/compiled/@next/font/dist/google/index.d.ts","./node_modules/next/font/google/index.d.ts","./app/layout.tsx","./app/page.tsx","./components/cookieconsent.tsx","./app/[locale]/layout.tsx","./components/layout/responsivewrapper.tsx","./components/seo.tsx","./app/[locale]/page.tsx","./app/[locale]/blog/page.tsx","./app/[locale]/blog/[slug]/page.tsx","./app/[locale]/contact/page.tsx","./app/[locale]/example/page.tsx","./app/[locale]/example/components-demo/page.tsx","./app/[locale]/example/subpage/page.tsx","./app/[locale]/product/page.tsx","./components/productlist.tsx","./app/[locale]/product-category/[slug]/page.tsx","./app/[locale]/products/page.tsx","./components/navigation.tsx","./components/cards/cardsexample.tsx","./components/content/contentcomponentsexample.tsx","./components/forms/formexamples.tsx","./components/ui/componentsexample.tsx","./node_modules/@react-pdf/types/pdf.d.ts","./node_modules/@react-pdf/types/svg.d.ts","./node_modules/@react-pdf/stylesheet/lib/index.d.ts","./node_modules/@react-pdf/types/style.d.ts","./node_modules/@react-pdf/primitives/lib/index.d.ts","./node_modules/@react-pdf/types/primitive.d.ts","./node_modules/@react-pdf/font/lib/index.d.ts","./node_modules/@react-pdf/types/font.d.ts","./node_modules/@react-pdf/types/page.d.ts","./node_modules/@react-pdf/types/bookmark.d.ts","./node_modules/@react-pdf/types/node.d.ts","./node_modules/@react-pdf/types/image.d.ts","./node_modules/@react-pdf/types/context.d.ts","./node_modules/@react-pdf/types/index.d.ts","./node_modules/@react-pdf/renderer/lib/react-pdf.d.ts","./lib/pdf-datasheet.tsx","./.next/types/app/layout.ts","./.next/types/app/[locale]/layout.ts","./.next/types/app/[locale]/page.ts","./.next/types/app/[locale]/blog/page.ts","./.next/types/app/[locale]/products/page.ts","./node_modules/@types/cheerio/index.d.ts","./node_modules/@types/hoist-non-react-statics/index.d.ts","./node_modules/@types/json-schema/index.d.ts","./node_modules/@types/json5/index.d.ts","./node_modules/@types/sharp/index.d.ts"],"fileIdsList":[[98,146,163,164,363,712],[98,146,163,164,363,708],[98,146,163,164,363,711],[98,146,163,164,363,721],[98,146,163,164,363,705],[98,146,163,164,408,534],[98,146,163,164,392,398,411,532,664,679,682,710],[98,146,163,164,392,411,532,664,679,682,710],[98,146,163,164,398,411,532,557,560,678,679,709,710],[98,146,163,164,542,558,679],[98,146,163,164,411,540,541,542,543,544],[98,146,163,164,392,411,540,541,542,686],[98,146,163,164,411,686,704,707],[98,146,163,164,398,411,532,542,559,679,682,709,710],[98,146,163,164,398,411,532,719],[98,146,163,164,532,664,719],[98,146,163,164,411,704],[98,146,163,164,398],[98,146,163,164,411],[98,146,163,164,411,532],[86,98,146,163,164,392,538,549],[86,98,146,163,164,532,538,549,550],[86,98,146,163,164,538,549],[86,98,146,163,164,532,549,556],[98,146,163,164,550,551,552,553,554,555],[86,98,146,163,164,538,546],[86,98,146,163,164,398,549,664,677],[86,98,146,163,164,392,538,542],[86,98,146,163,164,532,549,680],[86,98,146,163,164,390,392,532,538,540,541,543,547,548,555,557,558,559,561,678,748],[86,98,146,163,164,390,538,539],[86,98,146,163,164,390,538,540,542],[98,146,163,164,557,558,559,560,679],[86,98,146,163,164,390,538,542],[86,98,146,163,164,398,549,664],[86,98,146,163,164,538,665,666],[86,98,146,163,164,538],[86,98,146,163,164,540,541,542,677],[86,98,146,163,164,538,665,666,667,668,669,670,671],[86,98,146,163,164,674],[86,98,146,163,164],[98,146,163,164,665,666,667,668,669,670,671,672,673,674,675,676],[98,146,163,164,392,542,681],[98,146,163,164,390,392,540,542,681,682,683],[98,146,163,164,681,683,684,685,686],[86,98,146,163,164,392,542,684,685],[86,98,146,163,164,390,392,398,540,682],[98,146,163,164,392,398,664],[86,98,146,163,164,538,539],[98,146,163,164,392,398,549,664],[86,98,146,163,164,532,549,552,554],[86,98,146,163,164,664],[86,98,146,163,164,549],[98,146,163,164,540,541,542,543,544,545,547,548],[98,146,163,164],[98,146,163,164,529,531],[98,146,158,163,164,168,530],[98,146,163,164,532],[98,146,163,164,664],[86,98,146,163,164,741],[98,146,163,164,539],[98,146,163,164,411,664],[98,146,163,164,536,537],[98,146,163,164,408],[98,146,163,164,411,412],[86,98,146,163,164,740],[98,146,163,164,733],[98,146,163,164,727,728,730,732,734,735,736,737,738,739],[98,146,163,164,730,732,734,735,736],[98,146,163,164,731],[98,146,163,164,729],[98,146,163,164,430,431],[98,146,163,164,196],[98,143,144,146,163,164],[98,145,146,163,164],[146,163,164],[98,146,151,163,164,181],[98,146,147,152,157,163,164,166,178,189],[98,146,147,148,157,163,164,166],[93,94,95,98,146,163,164],[98,146,149,163,164,190],[98,146,150,151,158,163,164,167],[98,146,151,163,164,178,186],[98,146,152,154,157,163,164,166],[98,145,146,153,163,164],[98,146,154,155,163,164],[98,146,156,157,163,164],[98,145,146,157,163,164],[98,146,157,158,159,163,164,178,189],[98,146,157,158,159,163,164,173,178,181],[98,139,146,154,157,160,163,164,166,178,189],[98,146,157,158,160,161,163,164,166,178,186,189],[98,146,160,162,163,164,178,186,189],[96,97,98,99,100,101,102,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195],[98,146,157,163,164],[98,146,163,164,165,189],[98,146,154,157,163,164,166,178],[98,146,163,164,167],[98,146,163,164,168],[98,145,146,163,164,169],[98,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195],[98,146,163,164,171],[98,146,163,164,172],[98,146,157,163,164,173,174],[98,146,163,164,173,175,190,192],[98,146,158,163,164],[98,146,157,163,164,178,179,181],[98,146,163,164,180,181],[98,146,163,164,178,179],[98,146,163,164,181],[98,146,163,164,182],[98,143,146,163,164,178,183],[98,146,157,163,164,184,185],[98,146,163,164,184,185],[98,146,151,163,164,166,178,186],[98,146,163,164,187],[98,146,163,164,166,188],[98,146,160,163,164,172,189],[98,146,151,163,164,190],[98,146,163,164,178,191],[98,146,163,164,165,192],[98,146,163,164,193],[98,139,146,163,164],[98,139,146,157,159,163,164,169,178,181,189,191,192,194],[98,146,163,164,178,195],[86,90,98,146,163,164,198,199,200,202,364,407],[86,90,98,146,163,164,198,199,200,201,364,407],[86,90,98,146,163,164,198,199,201,202,364,407],[86,90,98,146,163,164,199,200,201,202,364,407],[86,90,98,146,163,164,198,200,201,202,364,407],[84,85,98,146,163,164],[98,146,163,164,178,196],[98,146,163,164,417,421,424,426,427,428,429,432,691],[98,146,163,164,509],[98,146,163,164,509,510],[98,146,163,164,421,422,424,425],[98,146,163,164,421],[98,146,163,164,421,422,424],[98,146,163,164,421,422],[98,146,163,164,416,500,501],[98,146,163,164,416,500],[98,146,163,164,416,423],[98,146,163,164,416],[98,146,163,164,416,423,514],[98,146,163,164,418],[98,146,163,164,416,417,418,419,420],[98,146,163,164,564,604],[98,146,163,164,564,613],[98,146,163,164,564,607,613],[98,146,163,164,564,613,614],[98,146,163,164,564,606,607,608,609,610,611,612,614],[98,146,163,164,178,606,614,615,616,617,618,620,662],[98,146,163,164,564,606,616],[98,146,163,164,564,606,613,614,615],[98,146,163,164,564,567,576,593,594,605],[98,146,163,164,564,606,613,614,615,616],[98,146,163,164,564,606,612,613,614,616],[98,146,163,164,562,564,565,566,575],[98,146,163,164,565],[98,146,163,164,598,599,603],[98,146,163,164,599],[98,146,163,164,598,599,600,601,602],[98,146,163,164,598,599],[98,146,163,164,598],[98,146,163,164,595,596,597],[98,146,163,164,595],[98,146,163,164,564],[98,146,163,164,563],[98,146,163,164,562],[98,146,163,164,564,568,569,570,571,572,573,574],[98,146,163,164,562,564],[98,146,163,164,564,567],[98,146,163,164,178,619],[98,146,163,164,694,695],[98,146,163,164,694,695,696,697],[98,146,163,164,694,696],[98,146,163,164,694],[98,146,163,164,493,494],[91,98,146,163,164],[98,146,163,164,368],[98,146,163,164,370,371,372],[98,146,163,164,374],[98,146,163,164,205,215,221,223,364],[98,146,163,164,205,212,214,217,235],[98,146,163,164,215],[98,146,163,164,215,217,342],[98,146,163,164,270,288,303,410],[98,146,163,164,312],[98,146,163,164,205,215,222,256,266,339,340,410],[98,146,163,164,222,410],[98,146,163,164,215,266,267,268,410],[98,146,163,164,215,222,256,410],[98,146,163,164,410],[98,146,163,164,205,222,223,410],[98,146,163,164,296],[98,145,146,163,164,196,295],[86,98,146,163,164,289,290,291,309,310],[86,98,146,163,164,289],[98,146,163,164,279],[98,146,163,164,278,280,384],[86,98,146,163,164,289,290,307],[98,146,163,164,285,310,396],[98,146,163,164,394,395],[98,146,163,164,229,393],[98,146,163,164,282],[98,145,146,163,164,196,229,245,278,279,280,281],[86,98,146,163,164,307,309,310],[98,146,163,164,307,309],[98,146,163,164,307,308,310],[98,146,163,164,172,196],[98,146,163,164,277],[98,145,146,163,164,196,214,216,273,274,275,276],[86,98,146,163,164,206,387],[86,98,146,163,164,189,196],[86,98,146,163,164,222,254],[86,98,146,163,164,222],[98,146,163,164,252,257],[86,98,146,163,164,253,367],[98,146,163,164,702],[86,90,98,146,160,163,164,196,198,199,200,201,202,364,405,406],[98,146,163,164,364],[98,146,163,164,204],[98,146,163,164,357,358,359,360,361,362],[98,146,163,164,359],[86,98,146,163,164,253,289,367],[86,98,146,163,164,289,365,367],[86,98,146,163,164,289,367],[98,146,160,163,164,196,216,367],[98,146,160,163,164,196,213,214,225,243,245,277,282,283,305,307],[98,146,163,164,274,277,282,290,292,293,294,296,297,298,299,300,301,302,410],[98,146,163,164,275],[86,98,146,163,164,172,196,214,215,243,245,246,248,273,305,306,310,364,410],[98,146,160,163,164,196,216,217,229,230,278],[98,146,160,163,164,196,215,217],[98,146,160,163,164,178,196,213,216,217],[98,146,160,163,164,172,189,196,213,214,215,216,217,222,225,226,236,237,239,242,243,245,246,247,248,272,273,306,307,315,317,320,322,325,327,328,329,330],[98,146,160,163,164,178,196],[98,146,163,164,205,206,207,213,214,364,367,410],[98,146,160,163,164,178,189,196,210,341,343,344,410],[98,146,163,164,172,189,196,210,213,216,233,237,239,240,241,246,273,320,331,333,339,353,354],[98,146,163,164,215,219,273],[98,146,163,164,213,215],[98,146,163,164,226,321],[98,146,163,164,323,324],[98,146,163,164,323],[98,146,163,164,321],[98,146,163,164,323,326],[98,146,163,164,209,210],[98,146,163,164,209,249],[98,146,163,164,209],[98,146,163,164,211,226,319],[98,146,163,164,318],[98,146,163,164,210,211],[98,146,163,164,211,316],[98,146,163,164,210],[98,146,163,164,305],[98,146,160,163,164,196,213,225,244,264,270,284,287,304,307],[98,146,163,164,258,259,260,261,262,263,285,286,310,365],[98,146,163,164,314],[98,146,160,163,164,196,213,225,244,250,311,313,315,364,367],[98,146,160,163,164,189,196,206,213,215,272],[98,146,163,164,269],[98,146,160,163,164,196,347,352],[98,146,163,164,236,245,272,367],[98,146,163,164,335,339,353,356],[98,146,160,163,164,219,339,347,348,356],[98,146,163,164,205,215,236,247,350],[98,146,160,163,164,196,215,222,247,334,335,345,346,349,351],[98,146,163,164,197,243,244,245,364,367],[98,146,160,163,164,172,189,196,211,213,214,216,219,224,225,233,236,237,239,240,241,242,246,248,272,273,317,331,332,367],[98,146,160,163,164,196,213,215,219,333,355],[98,146,160,163,164,196,214,216],[86,98,146,160,163,164,172,196,204,206,213,214,217,225,242,243,245,246,248,314,364,367],[98,146,160,163,164,172,189,196,208,211,212,216],[98,146,163,164,209,271],[98,146,160,163,164,196,209,214,225],[98,146,160,163,164,196,215,226],[98,146,160,163,164,196],[98,146,163,164,229],[98,146,163,164,228],[98,146,163,164,230],[98,146,163,164,215,227,229,233],[98,146,163,164,215,227,229],[98,146,160,163,164,196,208,215,216,222,230,231,232],[86,98,146,163,164,307,308,309],[98,146,163,164,265],[86,98,146,163,164,206],[86,98,146,163,164,239],[86,98,146,163,164,197,242,245,248,364,367],[98,146,163,164,206,387,388],[86,98,146,163,164,257],[86,98,146,163,164,172,189,196,204,251,253,255,256,367],[98,146,163,164,216,222,239],[98,146,163,164,238],[86,98,146,158,160,163,164,172,196,204,257,266,364,365,366],[83,86,87,88,89,98,146,163,164,198,199,200,201,202,364,407],[98,146,151,163,164],[98,146,163,164,336,337,338],[98,146,163,164,336],[98,146,163,164,376],[98,146,163,164,378],[98,146,163,164,380],[98,146,163,164,703],[98,146,163,164,382],[98,146,163,164,385],[98,146,163,164,389],[90,92,98,146,163,164,364,369,373,375,377,379,381,383,386,390,392,398,399,401,408,409,410],[98,146,163,164,391],[98,146,163,164,397],[98,146,163,164,253],[98,146,163,164,400],[98,145,146,163,164,230,231,232,233,402,403,404,407],[86,90,98,146,160,162,163,164,172,196,198,199,200,201,202,204,217,356,363,367,407],[98,146,163,164,564,593],[98,146,163,164,578],[98,146,163,164,577,578],[98,146,163,164,577],[98,146,163,164,577,578,579,585,586,589,590,591,592],[98,146,163,164,578,586],[98,146,163,164,577,578,579,585,586,587,588],[98,146,163,164,577,586],[98,146,163,164,586,590],[98,146,163,164,578,579,580,584],[98,146,163,164,579],[98,146,163,164,577,578,586],[98,146,163,164,581,582,583],[98,146,163,164,459],[98,146,163,164,457,459],[98,146,163,164,448,456,457,458,460,462],[98,146,163,164,446],[98,146,163,164,449,454,459,462],[98,146,163,164,445,462],[98,146,163,164,449,450,453,454,455,462],[98,146,163,164,449,450,451,453,454,462],[98,146,163,164,446,447,448,449,450,454,455,456,458,459,460,462],[98,146,163,164,462],[98,146,163,164,444,446,447,448,449,450,451,453,454,455,456,457,458,459,460,461],[98,146,163,164,444,462],[98,146,163,164,449,451,452,454,455,462],[98,146,163,164,453,462],[98,146,163,164,454,455,459,462],[98,146,163,164,447,457],[98,146,163,164,438,498,499],[98,146,163,164,437,438],[98,146,163,164,444,482],[98,146,163,164,469],[98,146,163,164,465,482],[98,146,163,164,464,465,466,469,481,482,483,484,485,486,487,488,489,490],[98,146,163,164,486],[98,146,163,164,464,466,469,487,488],[98,146,163,164,485,489],[98,146,163,164,464,467,468],[98,146,163,164,467],[98,146,163,164,464,465,466,469,481],[98,146,163,164,470,475,481],[98,146,163,164,481],[98,146,163,164,470,481],[98,146,163,164,470,471,472,473,474,475,476,477,478,479,480],[98,111,115,146,163,164,189],[98,111,146,163,164,178,189],[98,106,146,163,164],[98,108,111,146,163,164,186,189],[98,146,163,164,166,186],[98,106,146,163,164,196],[98,108,111,146,163,164,166,189],[98,103,104,107,110,146,157,163,164,178,189],[98,111,118,146,163,164],[98,103,109,146,163,164],[98,111,132,133,146,163,164],[98,107,111,146,163,164,181,189,196],[98,132,146,163,164,196],[98,105,106,146,163,164,196],[98,111,146,163,164],[98,105,106,107,108,109,110,111,112,113,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,133,134,135,136,137,138,146,163,164],[98,111,126,146,163,164],[98,111,118,119,146,163,164],[98,109,111,119,120,146,163,164],[98,110,146,163,164],[98,103,106,111,146,163,164],[98,111,115,119,120,146,163,164],[98,115,146,163,164],[98,109,111,114,146,163,164,189],[98,103,108,111,118,146,163,164],[98,146,163,164,178],[98,106,111,132,146,163,164,194,196],[98,146,163,164,661],[98,146,163,164,189,627,630,633,634],[98,146,163,164,178,189,630],[98,146,163,164,189,630,634],[98,146,163,164,624],[98,146,163,164,628],[98,146,163,164,189,626,627,630],[98,146,163,164,196,624],[98,146,163,164,166,189,626,630],[98,146,157,163,164,178,189,621,622,623,625,629],[98,146,163,164,630,638,646],[98,146,163,164,622,628],[98,146,163,164,630,655,656],[98,146,163,164,181,189,196,622,625,630],[98,146,163,164,630],[98,146,163,164,189,626,630],[98,146,163,164,621],[98,146,163,164,624,625,626,628,629,630,631,632,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,656,657,658,659,660],[98,146,154,163,164,630,648,651],[98,146,163,164,630,638,639,640],[98,146,163,164,628,630,639,641],[98,146,163,164,629],[98,146,163,164,622,624,630],[98,146,163,164,630,634,639,641],[98,146,163,164,634],[98,146,163,164,189,628,630,633],[98,146,163,164,622,626,630,638],[98,146,163,164,630,648],[98,146,163,164,641],[98,146,163,164,181,194,196,624,630,655],[98,146,163,164,434],[98,146,157,158,160,161,162,163,164,166,178,186,189,195,196,434,435,436,438,439,441,442,443,463,492,496,497,498,499],[98,146,163,164,434,435,436,440],[98,146,163,164,436],[98,146,163,164,491],[98,146,163,164,495],[98,146,163,164,438,499],[98,146,163,164,516],[98,146,163,164,433,525,691],[98,146,163,164,416,417,419,420,421,424,426,427,502,505,512,513,515,691],[98,146,163,164,426,519,520,691],[98,146,163,164,426,507,691],[98,146,163,164,416,424,426,502,691],[98,146,163,164,441],[98,146,163,164,416,426,433,502,504,521,691],[98,146,163,164,499,523,525],[98,146,149,158,163,164,178,416,421,424,426,433,499,502,503,504,505,507,508,511,512,513,517,518,521,522,525,691],[98,146,163,164,426,441,502,503,691],[98,146,163,164,426,519,520,521,691],[98,146,163,164,426,441,504,505,506,691],[98,146,149,158,163,164,178,416,421,424,426,433,441,499,502,503,504,505,506,507,508,511,512,513,517,518,519,520,521,522,523,524,525,691],[98,146,163,164,416,421,424,426,427,433,441,502,503,504,505,506,507,508,519,520,521,691,692,693,698],[98,146,163,164,561,699],[98,146,163,164,531,532,699],[98,146,163,164,526]],"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":"2ab096661c711e4a81cc464fa1e6feb929a54f5340b46b0a07ac6bbf857471f0","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"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":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"196cb558a13d4533a5163286f30b0509ce0210e4b316c56c38d4c0fd2fb38405","affectsGlobalScope":true,"impliedFormat":1},{"version":"73f78680d4c08509933daf80947902f6ff41b6230f94dd002ae372620adb0f60","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5239f5c01bcfa9cd32f37c496cf19c61d69d37e48be9de612b541aac915805b","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"0990a7576222f248f0a3b888adcb7389f957928ce2afb1cd5128169086ff4d29","impliedFormat":1},{"version":"170d4db14678c68178ee8a3d5a990d5afb759ecb6ec44dbd885c50f6da6204f6","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","impliedFormat":1},{"version":"5e76305d58bcdc924ff2bf14f6a9dc2aa5441ed06464b7e7bd039e611d66a89b","impliedFormat":1},{"version":"cc69795d9954ee4ad57545b10c7bf1a7260d990231b1685c147ea71a6faa265c","impliedFormat":1},{"version":"8bc6c94ff4f2af1f4023b7bb2379b08d3d7dd80c698c9f0b07431ea16101f05f","impliedFormat":1},{"version":"1b61d259de5350f8b1e5db06290d31eaebebc6baafd5f79d314b5af9256d7153","impliedFormat":1},{"version":"57194e1f007f3f2cbef26fa299d4c6b21f4623a2eddc63dfeef79e38e187a36e","impliedFormat":1},{"version":"0f6666b58e9276ac3a38fdc80993d19208442d6027ab885580d93aec76b4ef00","impliedFormat":1},{"version":"05fd364b8ef02fb1e174fbac8b825bdb1e5a36a016997c8e421f5fab0a6da0a0","impliedFormat":1},{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"808069bba06b6768b62fd22429b53362e7af342da4a236ed2d2e1c89fcca3b4a","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","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":"2cbe0621042e2a68c7cbce5dfed3906a1862a16a7d496010636cdbdb91341c0f","affectsGlobalScope":true,"impliedFormat":1},{"version":"f9501cc13ce624c72b61f12b3963e84fad210fbdf0ffbc4590e08460a3f04eba","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0fa06ada475b910e2106c98c68b10483dc8811d0c14a8a8dd36efb2672485b29","impliedFormat":1},{"version":"33e5e9aba62c3193d10d1d33ae1fa75c46a1171cf76fef750777377d53b0303f","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"6a0cd27e5dc2cfbe039e731cf879d12b0e2dded06d1b1dedad07f7712de0d7f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"13f5c844119c43e51ce777c509267f14d6aaf31eafb2c2b002ca35584cd13b29","impliedFormat":1},{"version":"e60477649d6ad21542bd2dc7e3d9ff6853d0797ba9f689ba2f6653818999c264","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"4c829ab315f57c5442c6667b53769975acbf92003a66aef19bce151987675bd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"b2ade7657e2db96d18315694789eff2ddd3d8aea7215b181f8a0b303277cc579","impliedFormat":1},{"version":"9855e02d837744303391e5623a531734443a5f8e6e8755e018c41d63ad797db2","impliedFormat":1},{"version":"4d631b81fa2f07a0e63a9a143d6a82c25c5f051298651a9b69176ba28930756d","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"41670ee38943d9cbb4924e436f56fc19ee94232bc96108562de1a734af20dc2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c906fb15bd2aabc9ed1e3f44eb6a8661199d6c320b3aa196b826121552cb3695","impliedFormat":1},{"version":"22295e8103f1d6d8ea4b5d6211e43421fe4564e34d0dd8e09e520e452d89e659","impliedFormat":1},{"version":"bb45cd435da536500f1d9692a9b49d0c570b763ccbf00473248b777f5c1f353b","impliedFormat":1},{"version":"6b4e081d55ac24fc8a4631d5dd77fe249fa25900abd7d046abb87d90e3b45645","impliedFormat":1},{"version":"a10f0e1854f3316d7ee437b79649e5a6ae3ae14ffe6322b02d4987071a95362e","impliedFormat":1},{"version":"e208f73ef6a980104304b0d2ca5f6bf1b85de6009d2c7e404028b875020fa8f2","impliedFormat":1},{"version":"d163b6bc2372b4f07260747cbc6c0a6405ab3fbcea3852305e98ac43ca59f5bc","impliedFormat":1},{"version":"e6fa9ad47c5f71ff733744a029d1dc472c618de53804eae08ffc243b936f87ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"83e63d6ccf8ec004a3bb6d58b9bb0104f60e002754b1e968024b320730cc5311","impliedFormat":1},{"version":"24826ed94a78d5c64bd857570fdbd96229ad41b5cb654c08d75a9845e3ab7dde","impliedFormat":1},{"version":"8b479a130ccb62e98f11f136d3ac80f2984fdc07616516d29881f3061f2dd472","impliedFormat":1},{"version":"928af3d90454bf656a52a48679f199f64c1435247d6189d1caf4c68f2eaf921f","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac39df6dfb9e284bb0c205b15f4d9a2b260f5bab5c85bf2fb97d0cdd509c06ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"a3fc63c0d7b031693f665f5494412ba4b551fe644ededccc0ab5922401079c95","impliedFormat":1},{"version":"f27524f4bef4b6519c604bdb23bf4465bddcccbf3f003abb901acbd0d7404d99","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"dba28a419aec76ed864ef43e5f577a5c99a010c32e5949fe4e17a4d57c58dd11","affectsGlobalScope":true,"impliedFormat":1},{"version":"18fd40412d102c5564136f29735e5d1c3b455b8a37f920da79561f1fde068208","impliedFormat":1},{"version":"c959a391a75be9789b43c8468f71e3fa06488b4d691d5729dde1416dcd38225b","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"5ebe6f4cc3b803cbfc962bae0d954f9c80e5078ca41eb3f1de41d92e7193ef37","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"5b7aa3c4c1a5d81b411e8cb302b45507fea9358d3569196b27eb1a27ae3a90ef","affectsGlobalScope":true,"impliedFormat":1},{"version":"5987a903da92c7462e0b35704ce7da94d7fdc4b89a984871c0e2b87a8aae9e69","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea08a0345023ade2b47fbff5a76d0d0ed8bff10bc9d22b83f40858a8e941501c","impliedFormat":1},{"version":"47613031a5a31510831304405af561b0ffaedb734437c595256bb61a90f9311b","impliedFormat":1},{"version":"ae062ce7d9510060c5d7e7952ae379224fb3f8f2dd74e88959878af2057c143b","impliedFormat":1},{"version":"8a1a0d0a4a06a8d278947fcb66bf684f117bf147f89b06e50662d79a53be3e9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"9f663c2f91127ef7024e8ca4b3b4383ff2770e5f826696005de382282794b127","impliedFormat":1},{"version":"9f55299850d4f0921e79b6bf344b47c420ce0f507b9dcf593e532b09ea7eeea1","impliedFormat":1},{"version":"8caa5c86be1b793cd5f599e27ecb34252c41e011980f7d61ae4989a149ff6ccc","impliedFormat":1},{"version":"24259d3dae14de55d22f8b3d3e96954e5175a925ab6a830dc05a1993d4794eda","impliedFormat":1},{"version":"27e046d30d55669e9b5a325788a9b4073b05ce62607867754d2918af559a0877","impliedFormat":1},{"version":"be1cc4d94ea60cbe567bc29ed479d42587bf1e6cba490f123d329976b0fe4ee5","impliedFormat":1},{"version":"42bc0e1a903408137c3df2b06dfd7e402cdab5bbfa5fcfb871b22ebfdb30bd0b","impliedFormat":1},{"version":"9894dafe342b976d251aac58e616ac6df8db91fb9d98934ff9dd103e9e82578f","impliedFormat":1},{"version":"db6d2d9daad8a6d83f281af12ce4355a20b9a3e71b82b9f57cddcca0a8964a96","impliedFormat":1},{"version":"cfe4ef4710c3786b6e23dae7c086c70b4f4835a2e4d77b75d39f9046106e83d3","impliedFormat":1},{"version":"cbea99888785d49bb630dcbb1613c73727f2b5a2cf02e1abcaab7bcf8d6bf3c5","impliedFormat":1},{"version":"3a8bddb66b659f6bd2ff641fc71df8a8165bafe0f4b799cc298be5cd3755bb20","impliedFormat":1},{"version":"a86f82d646a739041d6702101afa82dcb935c416dd93cbca7fd754fd0282ce1f","impliedFormat":1},{"version":"2dad084c67e649f0f354739ec7df7c7df0779a28a4f55c97c6b6883ae850d1ce","impliedFormat":1},{"version":"fa5bbc7ab4130dd8cdc55ea294ec39f76f2bc507a0f75f4f873e38631a836ca7","impliedFormat":1},{"version":"df45ca1176e6ac211eae7ddf51336dc075c5314bc5c253651bae639defd5eec5","impliedFormat":1},{"version":"cf86de1054b843e484a3c9300d62fbc8c97e77f168bbffb131d560ca0474d4a8","impliedFormat":1},{"version":"196c960b12253fde69b204aa4fbf69470b26daf7a430855d7f94107a16495ab0","impliedFormat":1},{"version":"ee15ea5dd7a9fc9f5013832e5843031817a880bf0f24f37a29fd8337981aae07","impliedFormat":1},{"version":"bf24f6d35f7318e246010ffe9924395893c4e96d34324cde77151a73f078b9ad","impliedFormat":1},{"version":"ea53732769832d0f127ae16620bd5345991d26bf0b74e85e41b61b27d74ea90f","impliedFormat":1},{"version":"10595c7ff5094dd5b6a959ccb1c00e6a06441b4e10a87bc09c15f23755d34439","impliedFormat":1},{"version":"9620c1ff645afb4a9ab4044c85c26676f0a93e8c0e4b593aea03a89ccb47b6d0","impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":1},{"version":"a9af0e608929aaf9ce96bd7a7b99c9360636c31d73670e4af09a09950df97841","impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":1},{"version":"c86fe861cf1b4c46a0fb7d74dffe596cf679a2e5e8b1456881313170f092e3fa","impliedFormat":1},{"version":"08ed0b3f0166787f84a6606f80aa3b1388c7518d78912571b203817406e471da","impliedFormat":1},{"version":"47e5af2a841356a961f815e7c55d72554db0c11b4cba4d0caab91f8717846a94","impliedFormat":1},{"version":"65f43099ded6073336e697512d9b80f2d4fec3182b7b2316abf712e84104db00","impliedFormat":1},{"version":"f5f541902bf7ae0512a177295de9b6bcd6809ea38307a2c0a18bfca72212f368","impliedFormat":1},{"version":"b0decf4b6da3ebc52ea0c96095bdfaa8503acc4ac8e9081c5f2b0824835dd3bd","impliedFormat":1},{"version":"ca1b882a105a1972f82cc58e3be491e7d750a1eb074ffd13b198269f57ed9e1b","impliedFormat":1},{"version":"fc3e1c87b39e5ba1142f27ec089d1966da168c04a859a4f6aab64dceae162c2b","impliedFormat":1},{"version":"3b414b99a73171e1c4b7b7714e26b87d6c5cb03d200352da5342ab4088a54c85","impliedFormat":1},{"version":"61888522cec948102eba94d831c873200aa97d00d8989fdfd2a3e0ee75ec65a2","impliedFormat":1},{"version":"4e10622f89fea7b05dd9b52fb65e1e2b5cbd96d4cca3d9e1a60bb7f8a9cb86a1","impliedFormat":1},{"version":"74b2a5e5197bd0f2e0077a1ea7c07455bbea67b87b0869d9786d55104006784f","impliedFormat":1},{"version":"59bf32919de37809e101acffc120596a9e45fdbab1a99de5087f31fdc36e2f11","impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":1},{"version":"faa03dffb64286e8304a2ca96dd1317a77db6bfc7b3fb385163648f67e535d77","impliedFormat":1},{"version":"c40c848daad198266370c1c72a7a8c3d18d2f50727c7859fcfefd3ff69a7f288","impliedFormat":1},{"version":"ac60bbee0d4235643cc52b57768b22de8c257c12bd8c2039860540cab1fa1d82","impliedFormat":1},{"version":"6428e6edd944ce6789afdf43f9376c1f2e4957eea34166177625aaff4c0da1a0","impliedFormat":1},{"version":"ada39cbb2748ab2873b7835c90c8d4620723aedf323550e8489f08220e477c7f","impliedFormat":1},{"version":"6e5f5cee603d67ee1ba6120815497909b73399842254fc1e77a0d5cdc51d8c9c","impliedFormat":1},{"version":"8dba67056cbb27628e9b9a1cba8e57036d359dceded0725c72a3abe4b6c79cd4","impliedFormat":1},{"version":"70f3814c457f54a7efe2d9ce9d2686de9250bb42eb7f4c539bd2280a42e52d33","impliedFormat":1},{"version":"154dd2e22e1e94d5bc4ff7726706bc0483760bae40506bdce780734f11f7ec47","impliedFormat":1},{"version":"ef61792acbfa8c27c9bd113f02731e66229f7d3a169e3c1993b508134f1a58e0","impliedFormat":1},{"version":"9c82171d836c47486074e4ca8e059735bf97b205e70b196535b5efd40cbe1bc5","impliedFormat":1},{"version":"0131e203d8560edb39678abe10db42564a068f98c4ebd1ed9ffe7279c78b3c81","impliedFormat":1},{"version":"f6404e7837b96da3ea4d38c4f1a3812c96c9dcdf264e93d5bdb199f983a3ef4b","impliedFormat":1},{"version":"c5426dbfc1cf90532f66965a7aa8c1136a78d4d0f96d8180ecbfc11d7722f1a5","impliedFormat":1},{"version":"65a15fc47900787c0bd18b603afb98d33ede930bed1798fc984d5ebb78b26cf9","impliedFormat":1},{"version":"9d202701f6e0744adb6314d03d2eb8fc994798fc83d91b691b75b07626a69801","impliedFormat":1},{"version":"de9d2df7663e64e3a91bf495f315a7577e23ba088f2949d5ce9ec96f44fba37d","impliedFormat":1},{"version":"c7af78a2ea7cb1cd009cfb5bdb48cd0b03dad3b54f6da7aab615c2e9e9d570c5","impliedFormat":1},{"version":"1ee45496b5f8bdee6f7abc233355898e5bf9bd51255db65f5ff7ede617ca0027","impliedFormat":1},{"version":"8b8f00491431fe82f060dfe8c7f2180a9fb239f3d851527db909b83230e75882","affectsGlobalScope":true,"impliedFormat":1},{"version":"db01d18853469bcb5601b9fc9826931cc84cc1a1944b33cad76fd6f1e3d8c544","affectsGlobalScope":true,"impliedFormat":1},{"version":"dba114fb6a32b355a9cfc26ca2276834d72fe0e94cd2c3494005547025015369","impliedFormat":1},{"version":"903e299a28282fa7b714586e28409ed73c3b63f5365519776bf78e8cf173db36","affectsGlobalScope":true,"impliedFormat":1},{"version":"fa6c12a7c0f6b84d512f200690bfc74819e99efae69e4c95c4cd30f6884c526e","impliedFormat":1},{"version":"f1c32f9ce9c497da4dc215c3bc84b722ea02497d35f9134db3bb40a8d918b92b","impliedFormat":1},{"version":"b73c319af2cc3ef8f6421308a250f328836531ea3761823b4cabbd133047aefa","affectsGlobalScope":true,"impliedFormat":1},{"version":"e433b0337b8106909e7953015e8fa3f2d30797cea27141d1c5b135365bb975a6","impliedFormat":1},{"version":"dd3900b24a6a8745efeb7ad27629c0f8a626470ac229c1d73f1fe29d67e44dca","impliedFormat":1},{"version":"ddff7fc6edbdc5163a09e22bf8df7bef75f75369ebd7ecea95ba55c4386e2441","impliedFormat":1},{"version":"106c6025f1d99fd468fd8bf6e5bda724e11e5905a4076c5d29790b6c3745e50c","impliedFormat":1},{"version":"ec29be0737d39268696edcec4f5e97ce26f449fa9b7afc2f0f99a86def34a418","impliedFormat":1},{"version":"aeab39e8e0b1a3b250434c3b2bb8f4d17bbec2a9dbce5f77e8a83569d3d2cbc2","impliedFormat":1},{"version":"ec6cba1c02c675e4dd173251b156792e8d3b0c816af6d6ad93f1a55d674591aa","impliedFormat":1},{"version":"b620391fe8060cf9bedc176a4d01366e6574d7a71e0ac0ab344a4e76576fcbb8","impliedFormat":1},{"version":"d729408dfde75b451530bcae944cf89ee8277e2a9df04d1f62f2abfd8b03c1e1","impliedFormat":1},{"version":"e15d3c84d5077bb4a3adee4c791022967b764dc41cb8fa3cfa44d4379b2c95f5","impliedFormat":1},{"version":"5f58e28cd22e8fc1ac1b3bc6b431869f1e7d0b39e2c21fbf79b9fa5195a85980","impliedFormat":1},{"version":"e1fc1a1045db5aa09366be2b330e4ce391550041fc3e925f60998ca0b647aa97","impliedFormat":1},{"version":"63533978dcda286422670f6e184ac516805a365fb37a086eeff4309e812f1402","impliedFormat":1},{"version":"43ba4f2fa8c698f5c304d21a3ef596741e8e85a810b7c1f9b692653791d8d97a","impliedFormat":1},{"version":"31fb49ef3aa3d76f0beb644984e01eab0ea222372ea9b49bb6533be5722d756c","impliedFormat":1},{"version":"33cd131e1461157e3e06b06916b5176e7a8ec3fce15a5cfe145e56de744e07d2","impliedFormat":1},{"version":"889ef863f90f4917221703781d9723278db4122d75596b01c429f7c363562b86","impliedFormat":1},{"version":"3556cfbab7b43da96d15a442ddbb970e1f2fc97876d055b6555d86d7ac57dae5","impliedFormat":1},{"version":"437751e0352c6e924ddf30e90849f1d9eb00ca78c94d58d6a37202ec84eb8393","impliedFormat":1},{"version":"48e8af7fdb2677a44522fd185d8c87deff4d36ee701ea003c6c780b1407a1397","impliedFormat":1},{"version":"d11308de5a36c7015bb73adb5ad1c1bdaac2baede4cc831a05cf85efa3cc7f2f","impliedFormat":1},{"version":"38e4684c22ed9319beda6765bab332c724103d3a966c2e5e1c5a49cf7007845f","impliedFormat":1},{"version":"f9812cfc220ecf7557183379531fa409acd249b9e5b9a145d0d52b76c20862de","affectsGlobalScope":true,"impliedFormat":1},{"version":"e650298721abc4f6ae851e60ae93ee8199791ceec4b544c3379862f81f43178c","impliedFormat":1},{"version":"2e4f37ffe8862b14d8e24ae8763daaa8340c0df0b859d9a9733def0eee7562d9","impliedFormat":1},{"version":"13283350547389802aa35d9f2188effaeac805499169a06ef5cd77ce2a0bd63f","impliedFormat":1},{"version":"680793958f6a70a44c8d9ae7d46b7a385361c69ac29dcab3ed761edce1c14ab8","impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","impliedFormat":1},{"version":"42c169fb8c2d42f4f668c624a9a11e719d5d07dacbebb63cbcf7ef365b0a75b3","impliedFormat":1},{"version":"913ddbba170240070bd5921b8f33ea780021bdf42fbdfcd4fcb2691b1884ddde","impliedFormat":1},{"version":"b4e6d416466999ff40d3fe5ceb95f7a8bfb7ac2262580287ac1a8391e5362431","impliedFormat":1},{"version":"5fe23bd829e6be57d41929ac374ee9551ccc3c44cee893167b7b5b77be708014","impliedFormat":1},{"version":"0a626484617019fcfbfc3c1bc1f9e84e2913f1adb73692aa9075817404fb41a1","impliedFormat":1},{"version":"438c7513b1df91dcef49b13cd7a1c4720f91a36e88c1df731661608b7c055f10","impliedFormat":1},{"version":"cf185cc4a9a6d397f416dd28cca95c227b29f0f27b160060a95c0e5e36cda865","impliedFormat":1},{"version":"0086f3e4ad898fd7ca56bb223098acfacf3fa065595182aaf0f6c4a6a95e6fbd","impliedFormat":1},{"version":"efaa078e392f9abda3ee8ade3f3762ab77f9c50b184e6883063a911742a4c96a","impliedFormat":1},{"version":"54a8bb487e1dc04591a280e7a673cdfb272c83f61e28d8a64cf1ac2e63c35c51","impliedFormat":1},{"version":"021a9498000497497fd693dd315325484c58a71b5929e2bbb91f419b04b24cea","impliedFormat":1},{"version":"9385cdc09850950bc9b59cca445a3ceb6fcca32b54e7b626e746912e489e535e","impliedFormat":1},{"version":"2894c56cad581928bb37607810af011764a2f511f575d28c9f4af0f2ef02d1ab","impliedFormat":1},{"version":"0a72186f94215d020cb386f7dca81d7495ab6c17066eb07d0f44a5bf33c1b21a","impliedFormat":1},{"version":"84124384abae2f6f66b7fbfc03862d0c2c0b71b826f7dbf42c8085d31f1d3f95","impliedFormat":1},{"version":"63a8e96f65a22604eae82737e409d1536e69a467bb738bec505f4f97cce9d878","impliedFormat":1},{"version":"3fd78152a7031315478f159c6a5872c712ece6f01212c78ea82aef21cb0726e2","impliedFormat":1},{"version":"b01bd582a6e41457bc56e6f0f9de4cb17f33f5f3843a7cf8210ac9c18472fb0f","impliedFormat":1},{"version":"58b49e5c1def740360b5ae22ae2405cfac295fee74abd88d74ac4ea42502dc03","impliedFormat":1},{"version":"512fc15cca3a35b8dbbf6e23fe9d07e6f87ad03c895acffd3087ce09f352aad0","impliedFormat":1},{"version":"9a0946d15a005832e432ea0cd4da71b57797efb25b755cc07f32274296d62355","impliedFormat":1},{"version":"a52ff6c0a149e9f370372fc3c715d7f2beee1f3bab7980e271a7ab7d313ec677","impliedFormat":1},{"version":"fd933f824347f9edd919618a76cdb6a0c0085c538115d9a287fa0c7f59957ab3","impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","impliedFormat":1},{"version":"6a1aa3e55bdc50503956c5cd09ae4cd72e3072692d742816f65c66ca14f4dfdd","impliedFormat":1},{"version":"ab75cfd9c4f93ffd601f7ca1753d6a9d953bbedfbd7a5b3f0436ac8a1de60dfa","impliedFormat":1},{"version":"f95180f03d827525ca4f990f49e17ec67198c316dd000afbe564655141f725cd","impliedFormat":1},{"version":"b73cbf0a72c8800cf8f96a9acfe94f3ad32ca71342a8908b8ae484d61113f647","impliedFormat":1},{"version":"bae6dd176832f6423966647382c0d7ba9e63f8c167522f09a982f086cd4e8b23","impliedFormat":1},{"version":"1364f64d2fb03bbb514edc42224abd576c064f89be6a990136774ecdd881a1da","impliedFormat":1},{"version":"c9958eb32126a3843deedda8c22fb97024aa5d6dd588b90af2d7f2bfac540f23","impliedFormat":1},{"version":"950fb67a59be4c2dbe69a5786292e60a5cb0e8612e0e223537784c731af55db1","impliedFormat":1},{"version":"e927c2c13c4eaf0a7f17e6022eee8519eb29ef42c4c13a31e81a611ab8c95577","impliedFormat":1},{"version":"07ca44e8d8288e69afdec7a31fa408ce6ab90d4f3d620006701d5544646da6aa","impliedFormat":1},{"version":"70246ad95ad8a22bdfe806cb5d383a26c0c6e58e7207ab9c431f1cb175aca657","impliedFormat":1},{"version":"f00f3aa5d64ff46e600648b55a79dcd1333458f7a10da2ed594d9f0a44b76d0b","impliedFormat":1},{"version":"772d8d5eb158b6c92412c03228bd9902ccb1457d7a705b8129814a5d1a6308fc","impliedFormat":1},{"version":"4e4475fba4ed93a72f167b061cd94a2e171b82695c56de9899275e880e06ba41","impliedFormat":1},{"version":"97c5f5d580ab2e4decd0a3135204050f9b97cd7908c5a8fbc041eadede79b2fa","impliedFormat":1},{"version":"c99a3a5f2215d5b9d735aa04cec6e61ed079d8c0263248e298ffe4604d4d0624","impliedFormat":1},{"version":"49b2375c586882c3ac7f57eba86680ff9742a8d8cb2fe25fe54d1b9673690d41","impliedFormat":1},{"version":"802e797bcab5663b2c9f63f51bdf67eff7c41bc64c0fd65e6da3e7941359e2f7","impliedFormat":1},{"version":"847e160d709c74cc714fbe1f99c41d3425b74cd47b1be133df1623cd87014089","impliedFormat":1},{"version":"9fee04f1e1afa50524862289b9f0b0fdc3735b80e2a0d684cec3b9ff3d94cecc","impliedFormat":1},{"version":"5cdc27fbc5c166fc5c763a30ac21cbac9859dc5ba795d3230db6d4e52a1965bb","impliedFormat":1},{"version":"6459054aabb306821a043e02b89d54da508e3a6966601a41e71c166e4ea1474f","impliedFormat":1},{"version":"f416c9c3eee9d47ff49132c34f96b9180e50485d435d5748f0e8b72521d28d2e","impliedFormat":1},{"version":"05c97cddbaf99978f83d96de2d8af86aded9332592f08ce4a284d72d0952c391","impliedFormat":1},{"version":"14e5cdec6f8ae82dfd0694e64903a0a54abdfe37e1d966de3d4128362acbf35f","impliedFormat":1},{"version":"bbc183d2d69f4b59fd4dd8799ffdf4eb91173d1c4ad71cce91a3811c021bf80c","impliedFormat":1},{"version":"7b6ff760c8a240b40dab6e4419b989f06a5b782f4710d2967e67c695ef3e93c4","impliedFormat":1},{"version":"8dbc4134a4b3623fc476be5f36de35c40f2768e2e3d9ed437e0d5f1c4cd850f6","impliedFormat":1},{"version":"4e06330a84dec7287f7ebdd64978f41a9f70a668d3b5edc69d5d4a50b9b376bb","impliedFormat":1},{"version":"65bfa72967fbe9fc33353e1ac03f0480aa2e2ea346d61ff3ea997dfd850f641a","impliedFormat":1},{"version":"c06f0bb92d1a1a5a6c6e4b5389a5664d96d09c31673296cb7da5fe945d54d786","impliedFormat":1},{"version":"f974e4a06953682a2c15d5bd5114c0284d5abf8bc0fe4da25cb9159427b70072","impliedFormat":1},{"version":"872caaa31423f4345983d643e4649fb30f548e9883a334d6d1c5fff68ede22d4","impliedFormat":1},{"version":"94404c4a878fe291e7578a2a80264c6f18e9f1933fbb57e48f0eb368672e389c","impliedFormat":1},{"version":"5c1b7f03aa88be854bc15810bfd5bd5a1943c5a7620e1c53eddd2a013996343e","impliedFormat":1},{"version":"09dfc64fcd6a2785867f2368419859a6cc5a8d4e73cbe2538f205b1642eb0f51","impliedFormat":1},{"version":"bcf6f0a323653e72199105a9316d91463ad4744c546d1271310818b8cef7c608","impliedFormat":1},{"version":"01aa917531e116485beca44a14970834687b857757159769c16b228eb1e49c5f","impliedFormat":1},{"version":"351475f9c874c62f9b45b1f0dc7e2704e80dfd5f1af83a3a9f841f9dfe5b2912","impliedFormat":1},{"version":"ac457ad39e531b7649e7b40ee5847606eac64e236efd76c5d12db95bf4eacd17","impliedFormat":1},{"version":"187a6fdbdecb972510b7555f3caacb44b58415da8d5825d03a583c4b73fde4cf","impliedFormat":1},{"version":"d4c3250105a612202289b3a266bb7e323db144f6b9414f9dea85c531c098b811","impliedFormat":1},{"version":"95b444b8c311f2084f0fb51c616163f950fb2e35f4eaa07878f313a2d36c98a4","impliedFormat":1},{"version":"741067675daa6d4334a2dc80a4452ca3850e89d5852e330db7cb2b5f867173b1","impliedFormat":1},{"version":"f8acecec1114f11690956e007d920044799aefeb3cece9e7f4b1f8a1d542b2c9","impliedFormat":1},{"version":"178071ccd043967a58c5d1a032db0ddf9bd139e7920766b537d9783e88eb615e","impliedFormat":1},{"version":"3a17f09634c50cce884721f54fd9e7b98e03ac505889c560876291fcf8a09e90","impliedFormat":1},{"version":"32531dfbb0cdc4525296648f53b2b5c39b64282791e2a8c765712e49e6461046","impliedFormat":1},{"version":"0ce1b2237c1c3df49748d61568160d780d7b26693bd9feb3acb0744a152cd86d","impliedFormat":1},{"version":"e489985388e2c71d3542612685b4a7db326922b57ac880f299da7026a4e8a117","impliedFormat":1},{"version":"5cad4158616d7793296dd41e22e1257440910ea8d01c7b75045d4dfb20c5a41a","impliedFormat":1},{"version":"04d3aad777b6af5bd000bfc409907a159fe77e190b9d368da4ba649cdc28d39e","affectsGlobalScope":true,"impliedFormat":1},{"version":"74efc1d6523bd57eb159c18d805db4ead810626bc5bc7002a2c7f483044b2e0f","impliedFormat":1},{"version":"19252079538942a69be1645e153f7dbbc1ef56b4f983c633bf31fe26aeac32cd","impliedFormat":1},{"version":"bc11f3ac00ac060462597add171220aed628c393f2782ac75dd29ff1e0db871c","impliedFormat":1},{"version":"616775f16134fa9d01fc677ad3f76e68c051a056c22ab552c64cc281a9686790","impliedFormat":1},{"version":"65c24a8baa2cca1de069a0ba9fba82a173690f52d7e2d0f1f7542d59d5eb4db0","impliedFormat":1},{"version":"f9fe6af238339a0e5f7563acee3178f51db37f32a2e7c09f85273098cee7ec49","impliedFormat":1},{"version":"3b0b1d352b8d2e47f1c4df4fb0678702aee071155b12ef0185fce9eb4fa4af1e","impliedFormat":1},{"version":"77e71242e71ebf8528c5802993697878f0533db8f2299b4d36aa015bae08a79c","impliedFormat":1},{"version":"a344403e7a7384e0e7093942533d309194ad0a53eca2a3100c0b0ab4d3932773","impliedFormat":1},{"version":"b7fff2d004c5879cae335db8f954eb1d61242d9f2d28515e67902032723caeab","impliedFormat":1},{"version":"5f3dc10ae646f375776b4e028d2bed039a93eebbba105694d8b910feebbe8b9c","impliedFormat":1},{"version":"bb18bf4a61a17b4a6199eb3938ecfa4a59eb7c40843ad4a82b975ab6f7e3d925","impliedFormat":1},{"version":"4545c1a1ceca170d5d83452dd7c4994644c35cf676a671412601689d9a62da35","impliedFormat":1},{"version":"e9b6fc05f536dfddcdc65dbcf04e09391b1c968ab967382e48924f5cb90d88e1","impliedFormat":1},{"version":"a2d648d333cf67b9aeac5d81a1a379d563a8ffa91ddd61c6179f68de724260ff","impliedFormat":1},{"version":"2b664c3cc544d0e35276e1fb2d4989f7d4b4027ffc64da34ec83a6ccf2e5c528","impliedFormat":1},{"version":"a3f41ed1b4f2fc3049394b945a68ae4fdefd49fa1739c32f149d32c0545d67f5","impliedFormat":1},{"version":"3cd8f0464e0939b47bfccbb9bb474a6d87d57210e304029cd8eb59c63a81935d","impliedFormat":1},{"version":"47699512e6d8bebf7be488182427189f999affe3addc1c87c882d36b7f2d0b0e","impliedFormat":1},{"version":"3026abd48e5e312f2328629ede6e0f770d21c3cd32cee705c450e589d015ee09","impliedFormat":1},{"version":"8b140b398a6afbd17cc97c38aea5274b2f7f39b1ae5b62952cfe65bf493e3e75","impliedFormat":1},{"version":"7663d2c19ce5ef8288c790edba3d45af54e58c84f1b37b1249f6d49d962f3d91","impliedFormat":1},{"version":"5cce3b975cdb72b57ae7de745b3c5de5790781ee88bcb41ba142f07c0fa02e97","impliedFormat":1},{"version":"00bd6ebe607246b45296aa2b805bd6a58c859acecda154bfa91f5334d7c175c6","impliedFormat":1},{"version":"ad036a85efcd9e5b4f7dd5c1a7362c8478f9a3b6c3554654ca24a29aa850a9c5","impliedFormat":1},{"version":"fedebeae32c5cdd1a85b4e0504a01996e4a8adf3dfa72876920d3dd6e42978e7","impliedFormat":1},{"version":"0d28b974a7605c4eda20c943b3fa9ae16cb452c1666fc9b8c341b879992c7612","impliedFormat":1},{"version":"cdf21eee8007e339b1b9945abf4a7b44930b1d695cc528459e68a3adc39a622e","impliedFormat":1},{"version":"db036c56f79186da50af66511d37d9fe77fa6793381927292d17f81f787bb195","impliedFormat":1},{"version":"87ac2fb61e629e777f4d161dff534c2023ee15afd9cb3b1589b9b1f014e75c58","impliedFormat":1},{"version":"13c8b4348db91e2f7d694adc17e7438e6776bc506d5c8f5de9ad9989707fa3fe","impliedFormat":1},{"version":"3c1051617aa50b38e9efaabce25e10a5dd9b1f42e372ef0e8a674076a68742ed","impliedFormat":1},{"version":"07a3e20cdcb0f1182f452c0410606711fbea922ca76929a41aacb01104bc0d27","impliedFormat":1},{"version":"1de80059b8078ea5749941c9f863aa970b4735bdbb003be4925c853a8b6b4450","impliedFormat":1},{"version":"1d079c37fa53e3c21ed3fa214a27507bda9991f2a41458705b19ed8c2b61173d","impliedFormat":1},{"version":"4cd4b6b1279e9d744a3825cbd7757bbefe7f0708f3f1069179ad535f19e8ed2c","impliedFormat":1},{"version":"5835a6e0d7cd2738e56b671af0e561e7c1b4fb77751383672f4b009f4e161d70","impliedFormat":1},{"version":"c0eeaaa67c85c3bb6c52b629ebbfd3b2292dc67e8c0ffda2fc6cd2f78dc471e6","impliedFormat":1},{"version":"4b7f74b772140395e7af67c4841be1ab867c11b3b82a51b1aeb692822b76c872","impliedFormat":1},{"version":"27be6622e2922a1b412eb057faa854831b95db9db5035c3f6d4b677b902ab3b7","impliedFormat":1},{"version":"b95a6f019095dd1d48fd04965b50dfd63e5743a6e75478343c46d2582a5132bf","impliedFormat":99},{"version":"c2008605e78208cfa9cd70bd29856b72dda7ad89df5dc895920f8e10bcb9cd0a","impliedFormat":99},{"version":"b97cb5616d2ab82a98ec9ada7b9e9cabb1f5da880ec50ea2b8dc5baa4cbf3c16","impliedFormat":99},{"version":"d23df9ff06ae8bf1dcb7cc933e97ae7da418ac77749fecee758bb43a8d69f840","affectsGlobalScope":true,"impliedFormat":1},{"version":"040c71dde2c406f869ad2f41e8d4ce579cc60c8dbe5aa0dd8962ac943b846572","affectsGlobalScope":true,"impliedFormat":1},{"version":"3586f5ea3cc27083a17bd5c9059ede9421d587286d5a47f4341a4c2d00e4fa91","impliedFormat":1},{"version":"a6df929821e62f4719551f7955b9f42c0cd53c1370aec2dd322e24196a7dfe33","impliedFormat":1},{"version":"b789bf89eb19c777ed1e956dbad0925ca795701552d22e68fd130a032008b9f9","impliedFormat":1},"9dd9d642cdb87d4d5b3173217e0c45429b3e47a6f5cf5fb0ead6c644ec5fed01","92bbf881f59532559f62bc85b87d4419508ae7fc07ce3d7f2ad435a8c8dcebcc",{"version":"3f124f6fe4bd62deac27e4f0ec83ea1c95f6a65f1c8131b236f8a3193e1cb99c","signature":"fe30465f81a37f23a168022109187dbd1951404e3ec2fbc6516d584c597f1325"},{"version":"acfb723d81eda39156251aed414c553294870bf53062429ebfcfba8a68cb4753","impliedFormat":99},{"version":"fa69a90381c2f85889722a911a732a5ee3596dc3acecda8a9aa2fa89b9615d8d","impliedFormat":99},{"version":"b5ce343886d23392be9c8280e9f24a87f1d7d3667f6672c2fe4aa61fa4ece7d4","impliedFormat":99},{"version":"57e9e1b0911874c62d743af24b5d56032759846533641d550b12a45ff404bf07","impliedFormat":99},{"version":"b0857bb28fd5236ace84280f79a25093f919fd0eff13e47cc26ea03de60a7294","impliedFormat":99},{"version":"5e43e0824f10cd8c48e7a8c5c673638488925a12c31f0f9e0957965c290eb14c","impliedFormat":99},{"version":"c1fd7031b552b2dc316777015b90cabd66d039f5b6180f113abcda2e9c4c5682","impliedFormat":99},{"version":"ef13c73d6157a32933c612d476c1524dd674cf5b9a88571d7d6a0d147544d529","impliedFormat":99},{"version":"3b0a56d056d81a011e484b9c05d5e430711aaecd561a788bad1d0498aad782c7","impliedFormat":99},{"version":"2a4496501483ce6319308e30cb7b8f291a0762dbc2ef0152acebd5dc443a717f","impliedFormat":99},{"version":"aaf4bae415638b2eac64cbf60b9af15808b8784b502959064cc84ff834194da9","impliedFormat":99},{"version":"31fd7c12f6e27154efb52a916b872509a771880f3b20f2dfd045785c13aa813f","impliedFormat":99},{"version":"b481de4ab5379bd481ca12fc0b255cdc47341629a22c240a89cdb4e209522be2","impliedFormat":99},{"version":"bdd14f07b4eca0b4b5203b85b8dbc4d084c749fa590bee5ea613e1641dcd3b29","impliedFormat":99},{"version":"427fe2004642504828c1476d0af4270e6ad4db6de78c0b5da3e4c5ca95052a99","impliedFormat":1},{"version":"2eeffcee5c1661ddca53353929558037b8cf305ffb86a803512982f99bcab50d","impliedFormat":99},{"version":"9afb4cb864d297e4092a79ee2871b5d3143ea14153f62ef0bb04ede25f432030","affectsGlobalScope":true,"impliedFormat":99},{"version":"4e258d11c899cb9ff36b4b5c53df59cf4a5ccae9a9931529686e77431e0a3518","affectsGlobalScope":true,"impliedFormat":99},{"version":"a7ca8df4f2931bef2aa4118078584d84a0b16539598eaadf7dce9104dfaa381c","impliedFormat":1},{"version":"10073cdcf56982064c5337787cc59b79586131e1b28c106ede5bff362f912b70","impliedFormat":99},{"version":"72950913f4900b680f44d8cab6dd1ea0311698fc1eefb014eb9cdfc37ac4a734","impliedFormat":1},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1},{"version":"4e741b9c88e80c9e4cedf07b5a698e8e3a3bd73cf649f664d6dd3f868c05c2f3","affectsGlobalScope":true,"impliedFormat":1},{"version":"a660aa95476042d3fdcc1343cf6bb8fdf24772d31712b1db321c5a4dcc325434","impliedFormat":1},{"version":"36977c14a7f7bfc8c0426ae4343875689949fb699f3f84ecbe5b300ebf9a2c55","impliedFormat":1},{"version":"ff0a83c9a0489a627e264ffcb63f2264b935b20a502afa3a018848139e3d8575","impliedFormat":99},{"version":"161c8e0690c46021506e32fda85956d785b70f309ae97011fd27374c065cac9b","affectsGlobalScope":true,"impliedFormat":1},{"version":"f582b0fcbf1eea9b318ab92fb89ea9ab2ebb84f9b60af89328a91155e1afce72","impliedFormat":1},{"version":"402e5c534fb2b85fa771170595db3ac0dd532112c8fa44fc23f233bc6967488b","impliedFormat":1},{"version":"8885cf05f3e2abf117590bbb951dcf6359e3e5ac462af1c901cfd24c6a6472e2","impliedFormat":1},{"version":"333caa2bfff7f06017f114de738050dd99a765c7eb16571c6d25a38c0d5365dc","impliedFormat":1},{"version":"e61df3640a38d535fd4bc9f4a53aef17c296b58dc4b6394fd576b808dd2fe5e6","impliedFormat":1},{"version":"459920181700cec8cbdf2a5faca127f3f17fd8dd9d9e577ed3f5f3af5d12a2e4","impliedFormat":1},{"version":"4719c209b9c00b579553859407a7e5dcfaa1c472994bd62aa5dd3cc0757eb077","impliedFormat":1},{"version":"7ec359bbc29b69d4063fe7dad0baaf35f1856f914db16b3f4f6e3e1bca4099fa","impliedFormat":1},{"version":"70790a7f0040993ca66ab8a07a059a0f8256e7bb57d968ae945f696cbff4ac7a","impliedFormat":1},{"version":"d1b9a81e99a0050ca7f2d98d7eedc6cda768f0eb9fa90b602e7107433e64c04c","impliedFormat":1},{"version":"a022503e75d6953d0e82c2c564508a5c7f8556fad5d7f971372d2d40479e4034","impliedFormat":1},{"version":"b215c4f0096f108020f666ffcc1f072c81e9f2f95464e894a5d5f34c5ea2a8b1","impliedFormat":1},{"version":"644491cde678bd462bb922c1d0cfab8f17d626b195ccb7f008612dc31f445d2d","impliedFormat":1},{"version":"dfe54dab1fa4961a6bcfba68c4ca955f8b5bbeb5f2ab3c915aa7adaa2eabc03a","impliedFormat":1},{"version":"1251d53755b03cde02466064260bb88fd83c30006a46395b7d9167340bc59b73","impliedFormat":1},{"version":"47865c5e695a382a916b1eedda1b6523145426e48a2eae4647e96b3b5e52024f","impliedFormat":1},{"version":"4cdf27e29feae6c7826cdd5c91751cc35559125e8304f9e7aed8faef97dcf572","impliedFormat":1},{"version":"331b8f71bfae1df25d564f5ea9ee65a0d847c4a94baa45925b6f38c55c7039bf","impliedFormat":1},{"version":"2a771d907aebf9391ac1f50e4ad37952943515eeea0dcc7e78aa08f508294668","impliedFormat":1},{"version":"0146fd6262c3fd3da51cb0254bb6b9a4e42931eb2f56329edd4c199cb9aaf804","impliedFormat":1},{"version":"183f480885db5caa5a8acb833c2be04f98056bdcc5fb29e969ff86e07efe57ab","impliedFormat":99},{"version":"ee9636a7d8dc2c2c3a74924205ede5ab3437100f1f9d4379098b4972987e0ac6","impliedFormat":1},{"version":"71b110829b8f5e7653352a132544ece2b9a10e93ba1c77453187673bd46f13ee","impliedFormat":1},{"version":"7b0537621a997a853ead2b46a4d85e654beeb96b9d034ea09bf3387348521d40","impliedFormat":1},{"version":"1223780c318ef42fd33ac772996335ed92d57cf7c0fc73178acab5e154971aab","impliedFormat":1},{"version":"0d04cbe88c8a25c2debd2eef03ec5674563e23ca9323fa82ede3577822653bd2","impliedFormat":1},{"version":"aaa70439f135c3fa0a34313de49e94cae3db954c8b8d6af0d56a46c998c2923f","impliedFormat":1},{"version":"2cee3ea4c39a53326148e6e78109affd48fa69eae386871c1f440315a6120f40","impliedFormat":1},{"version":"daf07c1ca8ccfb21ad958833546a4f414c418fe096dcebdbb90b02e12aa5c3a2","impliedFormat":1},{"version":"89ac5224feeb2de76fc52fc2a91c5f6448a98dbe4e8d726ecb1730fa64cd2d30","impliedFormat":1},{"version":"3d59c264069a6af79288388633738630aa72e853e450e43f151ee092216d263d","impliedFormat":1},{"version":"acf00cfabe8c4de18bea655754ea39c4d04140257556bbf283255b695d00e36f","impliedFormat":1},{"version":"39b70d5f131fcfdeba404ee63aba25f26d8376a73bacd8275fb5a9f06219ac77","impliedFormat":1},{"version":"cdae26c737cf4534eeec210e42eab2d5f0c3855240d8dde3be4aee9194e4e781","impliedFormat":1},{"version":"5aa0c50083d0d9a423a46afaef78c7f42420759cfa038ad40e8b9e6cafc38831","impliedFormat":1},{"version":"10d6a49a99a593678ba4ea6073d53d005adfc383df24a9e93f86bf47de6ed857","impliedFormat":1},{"version":"1b7ea32849a7982047c2e5d372300a4c92338683864c9ab0f5bbd1acadae83a3","impliedFormat":1},{"version":"224083e6fcec1d300229da3d1dafc678c642863996cbfed7290df20954435a55","impliedFormat":1},{"version":"4248ac3167b1a1ce199fda9307abc314b3132527aeb94ec30dbcfe4c6a417b1b","impliedFormat":1},{"version":"c1606128c2ac5c6a3cc2cc24c4582a437141a8ed6542d7f5cbb7623835939831","impliedFormat":1},{"version":"ca055d26105248f745ea6259b4c498ebeed18c9b772e7f2b3a16f50226ff9078","impliedFormat":1},{"version":"ea6b2badb951d6dfa24bb7d7eb733327e5f9a15fc994d6dc1c54b2c7a83b6a0b","impliedFormat":1},{"version":"03fdf8dba650d830388b9985750d770dd435f95634717f41cea814863a9ac98b","impliedFormat":1},{"version":"6fd08e3ef1568cd0dc735c9015f6765e25143a4a0331d004a29c51b50eec402a","impliedFormat":1},{"version":"2e988cd4d24edac4936449630581c79686c8adac10357eb0cdb410c24f47c7f0","impliedFormat":1},{"version":"b813f62a37886ed986b0f6f8c5bf323b3fcae32c1952b71d75741e74ea9353cf","impliedFormat":1},{"version":"44a1a722038365972b1b52841e1132785bf5d75839dbc6cc1339f2d36f8507a1","impliedFormat":1},{"version":"83fe1053701101ac6d25364696fea50d2ceb2f81d1456bc11e682a20aaeac52e","impliedFormat":1},{"version":"4f228cb2089a5a135a1a8cefe612d5aebcef8258f7dbe3b7c4dad4e26a81ec08","impliedFormat":1},{"version":"960bd764c62ac43edc24eaa2af958a4b4f1fa5d27df5237e176d0143b36a39c6","affectsGlobalScope":true,"impliedFormat":1},{"version":"f7eebe1b25040d805aefe8971310b805cd49b8602ec206d25b38dc48c542f165","impliedFormat":1},{"version":"a18642ddf216f162052a16cba0944892c4c4c977d3306a87cb673d46abbb0cbf","impliedFormat":1},{"version":"509f8efdfc5f9f6b52284170e8d7413552f02d79518d1db691ee15acc0088676","impliedFormat":1},{"version":"4ec16d7a4e366c06a4573d299e15fe6207fc080f41beac5da06f4af33ea9761e","impliedFormat":1},{"version":"59f8dc89b9e724a6a667f52cdf4b90b6816ae6c9842ce176d38fcc973669009e","affectsGlobalScope":true,"impliedFormat":1},{"version":"e4af494f7a14b226bbe732e9c130d8811f8c7025911d7c58dd97121a85519715","impliedFormat":1},{"version":"c1d587d31636bf51527d349f4786a36472e5aa311add673073c833c9853493c8","impliedFormat":99},{"version":"324ac98294dab54fbd580c7d0e707d94506d7b2c3d5efe981a8495f02cf9ad96","impliedFormat":99},{"version":"9ec72eb493ff209b470467e24264116b6a8616484bca438091433a545dfba17e","impliedFormat":99},{"version":"c35b8117804c639c53c87f2c23e0c786df61d552e513bd5179f5b88e29964838","impliedFormat":99},{"version":"ac3d263474022e9a14c43f588f485d549641d839b159ecc971978b90f34bdf6b","impliedFormat":99},{"version":"67acaedb46832d66c15f1b09fb7b6a0b7f41bdbf8eaa586ec70459b3e8896eb9","impliedFormat":99},{"version":"2c2aee81ffcfc4043d5cbe3f4e9cfc355702696daa0c1e048f28ebe238439888","impliedFormat":99},{"version":"bcbd3becd08b4515225880abea0dbfbbf0d1181ce3af8f18f72f61edbe4febfb","impliedFormat":99},{"version":"120691e18e74cd38583ebbffec0e2174ca67e0856a9bb2a509c83f3eaeb6be32","impliedFormat":99},{"version":"66651e869f7a54fc473ebdb67cab2716d977427de000f01bd1d5d66b509f388c","impliedFormat":99},{"version":"213a00d511892898e9dad3c98efe3b1de230f171b9e91496faca3e40e27ef6a7","impliedFormat":99},{"version":"62486ec77ac020b82d5a65a270096bb7f2a1fd0627a89f29c5a5d3cbd6bd1f59","impliedFormat":99},{"version":"c637a793905f02d354b640fae41a6ae79395ed0d77fbb87c36d9664ecbd95ac1","impliedFormat":99},{"version":"437b7613a30a2fcde463f7b707c6d5567a8823fbc51de50b8641bf5b1d126fad","impliedFormat":99},{"version":"63ea959e28c110923f495576e614fb8b36c09b6828b467b2c7cd7f03b03ccf9f","impliedFormat":99},{"version":"1601a95dbb33059fc3d12638ed2a9aecff899e339c5c0f3a0b28768866d385b4","impliedFormat":99},{"version":"a8dd232837b1d83f76a47a5193c1afd9e17b9bf352cb84345f86f7759ee346d0","impliedFormat":99},{"version":"b216abddc725b65d7a85bcd9b0e4e49ebea25f619df97009c0ce4d96077caf59","impliedFormat":99},{"version":"45f770f2ae71acc1cacfac137f50911e1a004ccba52b2b55c4432c0d4bd97814","impliedFormat":99},{"version":"8124828a11be7db984fcdab052fd4ff756b18edcfa8d71118b55388176210923","impliedFormat":99},{"version":"63698bd35668e3c37e4df59dc3fbf251f0fc71053d168779a1e1e71803c759f6","impliedFormat":99},{"version":"69bf2422313487956e4dacf049f30cb91b34968912058d244cb19e4baa24da97","impliedFormat":99},{"version":"6987dfb4b0c4e02112cc4e548e7a77b3d9ddfeffa8c8a2db13ceac361a4567d9","impliedFormat":99},{"version":"b62006bbc815fe8190c7aee262aad6bff993e3f9ade70d7057dfceab6de79d2f","impliedFormat":99},{"version":"a6afb03666673e6ff34cbefac1e869aa9cdb614712eada7dd99cac9a4a9a2858","impliedFormat":99},{"version":"5c96a6cd08f1f516947da811dead345471f1f2a33ec6aafbd3d337f6e93c56ce","impliedFormat":99},{"version":"2e3906b6125821869aecb43c85d8bfd6b0e5c7b3ab92c77c2e1e051ba8ae975c","impliedFormat":99},{"version":"7bbff6783e96c691a41a7cf12dd5486b8166a01b0c57d071dbcfca55c9525ec4","impliedFormat":99},{"version":"67a2f63ce5bce668c9e7a6bd044b433db1f364784d6e99519a54527ae6d7e702","signature":"4b96dd19fd2949d28ce80e913412b0026dc421e5bf6c31d87c7b5eb11b5753b4"},"7f3b83abd03f565809de55af3b04a0f16948eb94a06a21b6ce5afa3d19d5cd5f",{"version":"441ef2c5177400e49382529bf27dd1d78ff9b64f9fb84006ff8c3e0012646452","signature":"18ef997892f9ef213c9bbb5805b13115b1f30fba7eb8ed3fa6175c32fcfac962"},{"version":"593654eebe902db28ca173f021f74ea9f77e8b344aebb0a80fa4d10f29bb3a9d","impliedFormat":1},{"version":"bd7118b23c7ca758c13baa899542dd71dc88fc232a5ef42507198c77174ca82e","signature":"f9bfd32fe1fce300a79e873c2aae46231dedb2d1d984a91d297c3c4dc85124ba"},{"version":"d166555316fb0743940e53bb4d9343c6e3e868efd1d7b6a7ae3d269162f82ea5","signature":"1ab796d981ec4f706c40196edcc6b445324726128ca535bb2268fc69c2c2aaf3"},"d9ee6865abb083345b315611d281759b6ca4927f7a8841a955f480824382acf6",{"version":"ff5363859011755bd556e6db941a53a3b7363064a3ffe623e45ac60cef6f0794","impliedFormat":1},"de40d343fe24261a80ed463a4e10a70d9f277a03a546c847278f5801200aa085",{"version":"c57b441e0c0a9cbdfa7d850dae1f8a387d6f81cbffbc3cd0465d530084c2417d","impliedFormat":99},{"version":"51954e948be6a5b728fcfaf561f12331b4f54f068934c77adfc8f70eea17d285","impliedFormat":1},"0468f04c5295074be9639eb58dd56d0105acceb366d25255fec5017655459db6","4f5dff87e1d3a751a90831a6f20268d2a1e5ae4f5998b01db1f7e53a02e7b963","3a20edc929de7bcfca0f4b170b36d023b2e8f2cdbc84a93645b8fa1786a66934","89607141a170318352556d4dd8f0ef2b96111f0e5f8256989253b41ad7705863","b534d1021c20421e9d4a283d4ca520aaf39b62870293bbdfa0b0acf1fe18e99b","405d5cd1c896007a92f6f59d335e490297a482d6c2f5d491c7fdd5953607b249","1d3e8eaed62ec55eb67045e9b5d7b970cb2139e40af451b9e11981ea429a968c","6ad818edaa9934a79c56b55c0fde34d320b9e230f066d0df86c3d2791ffeb851",{"version":"1fd7bfea6c425ce8ec33a7d92edae59f10bc09f86ae01658447509d09ca663f1","impliedFormat":1},"fe99dba8d53f1565aa1ebff0067703e6b6f824b268b944e4e948e88b1e962c26","251c713799e307d4b5e5538c5d80fe92dcec8f7601b07e5ded0183167be8d3b2","1815f44d2a19a655718aac5750237927851a4850d4e9c88770e3112c84c3d145","828fb9e4087cd4fa541313577726ca0f69cffce814939ab1ceda7f49450a0ae7","06aceb9c13af819fa56116d4ea8e49ce463ebfed17bcaedc3145390234051223","9ee075b3b68a4f9b45746a573acd0fbb021d873f5298467f02a06b4b76376566","e24a33617d2eb315462ac6d2e0244a8ad7a62c30633838c7590140ba19faee24","148b7939a261667ae637796dac999542aa537845b00245d450a525868dd14321","7133e3f13d147565744a1215702050c45fa5f25bfa3d7aa1ec4a80c2fd730039","77cf6f2627aad3fe0f6d2e85840da98551c2466cfd2719f30c178ece223fa96b",{"version":"6cbaf8779eba5bfb576d83fd66078179cb01917b25d290f6375f75f86d36dc80","signature":"a29e37f3366843f1d1277c317a493b60d2fae4b454241b2fe767c8707382f14a"},{"version":"05314a927effeb8ff40a49a60ef849bb66d03c876c2aca1bbd6d0669fcbb470e","signature":"29ce310cd39024cbf2d81dbf3e8fea36f6871476353054a55c3be13507e2c91b"},"3aca4447d83516c137c23a1f0f37752a5c4d1f3a1e16de3e40e22ad29025d464","b0bf6bcc20228746649ae38f2437944aa524bcd75ea5abc548463ddb46e3a600","8034025060918281c316a3e9af9a92dd9498f6978f9463a16d470919e15343aa",{"version":"2556e7e8bb7e6f0bb3fe25f3da990d1812cb91f8c9b389354b6a0c8a6d687590","impliedFormat":99},{"version":"ad1c91ca536e0962dcbfcdff40073e3dd18da839e0baad3fe990cf0d10c93065","impliedFormat":99},{"version":"19cf605ba2a4e8fba017edebdddbbc45aea897ddc58b4aae4c55f382b570ff53","impliedFormat":99},{"version":"884aab8c07224434c034b49e88de0511f21536aa83ee88f1285160ba6d3fb77a","impliedFormat":99},{"version":"130b39b18c99e5678635f383ef57efaa507196838ddabb47cb104064e2ce4cd3","impliedFormat":99},{"version":"7618d2cb769e2093acd4623d645b683ab9fea78c262b3aa354aba9f5afdcaaee","impliedFormat":99},{"version":"029f1ce606891c3f57f4c0c60b8a46c8ced53e719d27a7c9693817f2fe37690b","impliedFormat":99},{"version":"83596c963e276a9c5911412fba37ae7c1fe280f2d77329928828eed5a3bfa9a6","impliedFormat":99},{"version":"81acfd3a01767770e559bc57d32684756989475be6ea32e2fe6255472c3ea116","impliedFormat":99},{"version":"88d0c3eae81868b4749ba5b88f9b6d564ee748321ce19a2f4269a4e9dd46020a","impliedFormat":99},{"version":"8266b39a828bfb2695cabfa403e7c1226d7d94599f21bea9f760e35f4ca7a576","impliedFormat":99},{"version":"c1c1e740195c882a776cf084acbaf963907785ee39e723c6375fec9a59bf2387","impliedFormat":99},{"version":"137f96b78e477e08876f6372072c3b6f1767672bf182013f84f8ae53d987ff86","impliedFormat":99},{"version":"29896c61d09880ff39f8a86873bf72ce4deb910158d3a496122781e29904c615","impliedFormat":99},{"version":"81ce540acef0d6972b0b163331583181be3603300f618dcd6a6a3138954ff30c","impliedFormat":99},{"version":"19990350fca066265b2c190c9b6cde1229f35002ea2d4df8c9e397e9942f6c89","impliedFormat":99},{"version":"8fb8fdda477cd7382477ffda92c2bb7d9f7ef583b1aa531eb6b2dc2f0a206c10","impliedFormat":99},{"version":"66995b0c991b5c5d42eff1d950733f85482c7419f7296ab8952e03718169e379","impliedFormat":99},{"version":"9863f888da357e35e013ca3465b794a490a198226bd8232c2f81fb44e16ff323","impliedFormat":99},{"version":"84bc2d80326a83ee4a6e7cba2fd480b86502660770c0e24da96535af597c9f1e","impliedFormat":99},{"version":"ea27768379b866ee3f5da2419650acdb01125479f7af73580a4bceb25b79e372","impliedFormat":99},{"version":"598931eeb4362542cae5845f95c5f0e45ac668925a40ce201e244d7fe808e965","impliedFormat":99},{"version":"da9ef88cde9f715756da642ad80c4cd87a987f465d325462d6bc2a0b11d202c8","impliedFormat":99},{"version":"b4c6184d78303b0816e779a48bef779b15aea4a66028eb819aac0abee8407dea","impliedFormat":99},{"version":"db085d2171d48938a99e851dafe0e486dce9859e5dfa73c21de5ed3d4d6fb0c5","impliedFormat":99},{"version":"62a3ad1ddd1f5974b3bf105680b3e09420f2230711d6520a521fab2be1a32838","impliedFormat":99},{"version":"a77be6fc44c876bc10c897107f84eaba10790913ebdcad40fcda7e47469b2160","impliedFormat":99},{"version":"06cf55b6da5cef54eaaf51cdc3d4e5ebf16adfdd9ebd20cec7fe719be9ced017","impliedFormat":99},{"version":"91f5dbcdb25d145a56cffe957ec665256827892d779ef108eb2f3864faff523b","impliedFormat":99},{"version":"052ba354bab8fb943e0bc05a0769f7b81d7c3b3c6cd0f5cfa53c7b2da2a525c5","impliedFormat":99},{"version":"927955a3de5857e0a1c575ced5a4245e74e6821d720ed213141347dd1870197f","impliedFormat":99},{"version":"fec804d54cd97dd77e956232fc37dc13f53e160d4bbeeb5489e86eeaa91f7ebd","impliedFormat":99},{"version":"75ef949153a3e6ff419e39d0fa5eb6617e92de5019738ad3c43872023d9665f5","impliedFormat":99},{"version":"ed9ce8e6dd5b2d00ab95efc44e4ad9d0eba77362e01619cb21dedfdedbad51b8","impliedFormat":1},{"version":"5520611f997f2b8e62a6e191da45b07813ac2e758304690606604a64ac0ca976","impliedFormat":1},{"version":"00b469cba48c9d772a4555216d21ba41cdb5a732af797ccb57267344f4fc6c3d","impliedFormat":1},{"version":"2766bf77766c85c25ec31586823fefb48344e64556faad7e75a3363e517814f6","impliedFormat":1},{"version":"b7d1eaffd8003e8dc0ec275e58bd24c7b9a4dbae2a2d0d83cf248c88237262ce","impliedFormat":99},{"version":"7a8b08c0521c3a9e1db3c8b14f37e59d838fdc32389f1193b96630b435a8e64e","impliedFormat":99},{"version":"2e54848617fae9eb73654d9cf4295d99dab4b9c759934e5b82e2e57e6aaaef20","impliedFormat":99},{"version":"ae056b7c3f727d492166d4c1169d5905ddd194128a014b5d2d621248ed94b49c","impliedFormat":99},{"version":"edc5d99a04130f066f6e8d31c7c3f9ba4749496356470279408833b4faee3554","impliedFormat":99},{"version":"2f502ac2473a2bbf0d6217f9660e9d5bf40165a2f91067596323898c53dab87c","impliedFormat":99},{"version":"21f27a0c8bc8d9a4e2cf6d9c60140f8b071d0e1ffddb4b7dcf6bbf74d0e8d470","impliedFormat":99},{"version":"754108a1e136331ac67dc8ee6aa9c95cb3bea3ac8bbf48dda7b0dbabbc8f970f","impliedFormat":99},{"version":"9e9979adc151111d71ad049305be1b6df324a98d1d1edd84adb1756cc1911bfd","impliedFormat":99},{"version":"0f38bcf19f105cd31ded5d46491ca50a46462c838816c358d445f41ac7a68f5a","impliedFormat":99},{"version":"a65fc667cd78d7cad733fab96f4bff3183c0dcbc15b083dce0055cffc5c64f9f","impliedFormat":99},{"version":"c735e27dfa775155120c50f714f594639dd7b6ad1878097feb005a0b5c59b7c2","impliedFormat":99},{"version":"f3dd541f4d87bba38dabf43fd06b7616c6f86b11608d30e61086ab39f84fa8d8","impliedFormat":99},{"version":"5583f1c0912e96625a30c20b83cff3d175194b222e4eb22170d19e33f7d8729f","impliedFormat":99},{"version":"a515b08047d24de84d89ad80b2843e565e65ed4a4e7cfc9707656470d7c555f9","impliedFormat":99},{"version":"cf43b2783a58e42fca6e45f0d47465b2ab855b7e9bea5ccb68447297df8aade5","impliedFormat":99},{"version":"27a3f158d8e6f59f29e55c37d4ae3c39574ee99539c4f12bcf46d29929974a62","impliedFormat":99},{"version":"a2d23e2f22006483c89f42077bd6a9bf92db721ebb5e0859b06fdb5c8369586d","impliedFormat":99},{"version":"6a8aec6851c09e4524937485f6553ec7332118482f3ed33238cea7496ff42103","impliedFormat":99},{"version":"d67fd6ea8cf37131627c7a9ae1de96d19d41cb32e741a475f0f56942576a7b3b","impliedFormat":99},{"version":"9b2f424a2c5c592d738100d898df3f9ee018bdd23a279f10849c3686abbec158","impliedFormat":99},{"version":"2fef96aedd23d59b6093d12d9f97c95e3a4008fcc02e8c68304235a1770fc70a","impliedFormat":99},{"version":"cdcf9ea426ad970f96ac930cd176d5c69c6c24eebd9fc580e1572d6c6a88f62c","impliedFormat":1},{"version":"23cd712e2ce083d68afe69224587438e5914b457b8acf87073c22494d706a3d0","impliedFormat":1},{"version":"487b694c3de27ddf4ad107d4007ad304d29effccf9800c8ae23c2093638d906a","impliedFormat":1},{"version":"3a80bc85f38526ca3b08007ee80712e7bb0601df178b23fbf0bf87036fce40ce","impliedFormat":1},{"version":"ccf4552357ce3c159ef75f0f0114e80401702228f1898bdc9402214c9499e8c0","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"68834d631c8838c715f225509cfc3927913b9cc7a4870460b5b60c8dbdb99baf","impliedFormat":1},{"version":"2931540c47ee0ff8a62860e61782eb17b155615db61e36986e54645ec67f67c2","impliedFormat":1},{"version":"ccab02f3920fc75c01174c47fcf67882a11daf16baf9e81701d0a94636e94556","impliedFormat":1},{"version":"f6faf5f74e4c4cc309a6c6a6c4da02dbb840be5d3e92905a23dcd7b2b0bd1986","impliedFormat":1},{"version":"ea6bc8de8b59f90a7a3960005fd01988f98fd0784e14bc6922dde2e93305ec7d","impliedFormat":1},{"version":"36107995674b29284a115e21a0618c4c2751b32a8766dd4cb3ba740308b16d59","impliedFormat":1},{"version":"914a0ae30d96d71915fc519ccb4efbf2b62c0ddfb3a3fc6129151076bc01dc60","impliedFormat":1},{"version":"33e981bf6376e939f99bd7f89abec757c64897d33c005036b9a10d9587d80187","impliedFormat":1},{"version":"7fd1b31fd35876b0aa650811c25ec2c97a3c6387e5473eb18004bed86cdd76b6","impliedFormat":1},{"version":"b41767d372275c154c7ea6c9d5449d9a741b8ce080f640155cc88ba1763e35b3","impliedFormat":1},{"version":"3bacf516d686d08682751a3bd2519ea3b8041a164bfb4f1d35728993e70a2426","impliedFormat":1},{"version":"7fb266686238369442bd1719bc0d7edd0199da4fb8540354e1ff7f16669b4323","impliedFormat":1},{"version":"0a60a292b89ca7218b8616f78e5bbd1c96b87e048849469cccb4355e98af959a","impliedFormat":1},{"version":"0b6e25234b4eec6ed96ab138d96eb70b135690d7dd01f3dd8a8ab291c35a683a","impliedFormat":1},{"version":"9666f2f84b985b62400d2e5ab0adae9ff44de9b2a34803c2c5bd3c8325b17dc0","impliedFormat":1},{"version":"40cd35c95e9cf22cfa5bd84e96408b6fcbca55295f4ff822390abb11afbc3dca","impliedFormat":1},{"version":"b1616b8959bf557feb16369c6124a97a0e74ed6f49d1df73bb4b9ddf68acf3f3","impliedFormat":1},{"version":"5b03a034c72146b61573aab280f295b015b9168470f2df05f6080a2122f9b4df","impliedFormat":1},{"version":"40b463c6766ca1b689bfcc46d26b5e295954f32ad43e37ee6953c0a677e4ae2b","impliedFormat":1},{"version":"249b9cab7f5d628b71308c7d9bb0a808b50b091e640ba3ed6e2d0516f4a8d91d","impliedFormat":1},{"version":"80aae6afc67faa5ac0b32b5b8bc8cc9f7fa299cff15cf09cc2e11fd28c6ae29e","impliedFormat":1},{"version":"f473cd2288991ff3221165dcf73cd5d24da30391f87e85b3dd4d0450c787a391","impliedFormat":1},{"version":"499e5b055a5aba1e1998f7311a6c441a369831c70905cc565ceac93c28083d53","impliedFormat":1},{"version":"54c3e2371e3d016469ad959697fd257e5621e16296fa67082c2575d0bf8eced0","impliedFormat":1},{"version":"beb8233b2c220cfa0feea31fbe9218d89fa02faa81ef744be8dce5acb89bb1fd","impliedFormat":1},{"version":"c183b931b68ad184bc8e8372bf663f3d33304772fb482f29fb91b3c391031f3e","impliedFormat":1},{"version":"5d0375ca7310efb77e3ef18d068d53784faf62705e0ad04569597ae0e755c401","impliedFormat":1},{"version":"59af37caec41ecf7b2e76059c9672a49e682c1a2aa6f9d7dc78878f53aa284d6","impliedFormat":1},{"version":"addf417b9eb3f938fddf8d81e96393a165e4be0d4a8b6402292f9c634b1cb00d","impliedFormat":1},{"version":"48cc3ec153b50985fb95153258a710782b25975b10dd4ac8a4f3920632d10790","impliedFormat":1},{"version":"adf27937dba6af9f08a68c5b1d3fce0ca7d4b960c57e6d6c844e7d1a8e53adae","impliedFormat":1},{"version":"e1528ca65ac90f6fa0e4a247eb656b4263c470bb22d9033e466463e13395e599","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"866078923a56d026e39243b4392e282c1c63159723996fa89243140e1388a98d","impliedFormat":1},{"version":"b3fb72492a07a76f7bfa29ecadd029eea081df11512e4dfe6f930a5a9cb1fb75","impliedFormat":1},{"version":"66b99e58194754a9db09e8ae09b45f878a5041f9ba497feaa9db8cc9773cafcc","impliedFormat":99},"062f68502da3fa04342b39f9dd4ab07e8b86b18f834bf7098af1ca66d16a7fcd","18a10ad09c7db26de58b9dc8506929f70b56bb3711b047a779510bfbf56abfae","0166128aefd3e40c46163cb377882ecbfadff9025afc30f23dbd9c79dfc37d07","727c07e8b771acbdd0853d9b503685c791adb5aa4b9662fbafab5b6579f9d1dd","41d97b7443ec401467cdcd84a08f289a43473dbe9a0974ed870293c2c250e709","bfe021e5559d0acee980c4a809e79aaec439c21fc589fa17ca6ffdcc4d8c586e","0abbbb1756f2f3283db433c173f07edea861ff124136bd0e357c2abcbb96ebce","b09d145584610ea0678456708350b1928818aca94704e0601f48791a6d9f72ae","262a5eb0674b828a49a7d476d7b50539b6c368a627f876ece328979e50ef6d08","3e475b6f9ccd7ca14cce669a389da4447d613849133e3a785538082b5732ca8b","6ebd436aa023b1d541fdf840904f2fbfd0c652eaf021399fd94a780397760154","f68644c1467a5a99c9d9fe785cda79ebd8e648814818c1db8c936feb427ad632","8917b8ea9521ce9e09f5770449fefe40d4fc951115872c57fccb101e84399cf1","da5d6c9b4c81c6faf8955904bda8e662568aed425aeec6655dfd5df0fd88d3f9","8be8a2d640c0e6b0927719e17ff197890583c26ca523e5b37b546e70804f95a8","95a9cef3f1df354b1d64a340b4d90fa44276b34b0fd7213cb27af4d5c173b47b","79ce6da2da16c8585a9ded57a611d113aea97bc8890e935b861cf1789a843605","a3fcf0e12bffd3983c9c2ff84d766f964938b86842e1bbc9d870785b43871de1","4e80403e9c3e54434982e9afa9bb23388c0081bfe3bb05bcdedf0fde6dc2049e",{"version":"07d11fb8ed29aafd49d97000c6498e3d72de5ebb2d9c56b6b720ea19234c0c69","signature":"ed9c663ed73bfe1fda25cd400d66ed1f046d4d59c5df2e9d0c010f1c205f9aae"},{"version":"6d52943b50d4d360a7ed90b8001882d5a74233f365540bceee729a6e8d08ad9d","signature":"8926a5857c934c6c27e4122be261ce8ea67d06c4ac15d6177621b52ca1f3a188"},"ba9aeaccb9cfbcb8f0475fdf6249b9415803cfc053d9f8454834aa2e498bafc9","b3f3a62fe65ceebcb3912b4c6c9b17a8a52b63aa0cb51c24f8de274d2a5aad3b","6fb8c497bd72905e5b4cabb467a1075cf37713af92917a5a3e71de8bfba729f2","c91938c6169c2b36150675088233b6e156f2c5d4443849714110de90d5487253","07a87a5e1758dac46f8139460d6a8280f85fa2ec09216a6cd9c92f3686474e45","0a87d3165b86f514a0fb95436d89541d76e11141d703d1d2ba068f6c5969be8c",{"version":"a534e61c2f06a147d97aebad720db97dffd8066b7142212e46bcbcdcb640b81a","impliedFormat":99},{"version":"ddf569d04470a4d629090d43a16735185001f3fcf0ae036ead99f2ceab62be48","impliedFormat":99},{"version":"b413fbc6658fe2774f8bf9a15cf4c53e586fc38a2d5256b3b9647da242c14389","impliedFormat":99},{"version":"c30a41267fc04c6518b17e55dcb2b810f267af4314b0b6d7df1c33a76ce1b330","impliedFormat":1},{"version":"72422d0bac4076912385d0c10911b82e4694fc106e2d70added091f88f0824ba","impliedFormat":1},{"version":"da251b82c25bee1d93f9fd80c5a61d945da4f708ca21285541d7aff83ecb8200","impliedFormat":1},{"version":"64db14db2bf37ac089766fdb3c7e1160fabc10e9929bc2deeede7237e4419fc8","impliedFormat":1},{"version":"98b94085c9f78eba36d3d2314affe973e8994f99864b8708122750788825c771","impliedFormat":1},{"version":"e33ce66b9e840acad9667b5b520e901c8d3b92a2e0b2dfbc8b1e9561e585f895","impliedFormat":99},"98172e5c7de99d25f725628ef17bb5ad54a9e480498b70f2d9a8eca195d8468d",{"version":"70ff5c156c1c4c3bc7adde28f42603d766e6c1761dc8a52599fd3e933035fda2","signature":"14f57d9123e29203047db0d2703beba2b4cddef114078e870fdc0af3cc3bba55"},{"version":"fe93c474ab38ac02e30e3af073412b4f92b740152cf3a751fdaee8cbea982341","impliedFormat":1},{"version":"aa4feed67c9af19fa98fe02a12f424def3cdc41146fb87b8d8dab077ad9ceb3c","impliedFormat":1},{"version":"1e00b8bf9e3766c958218cd6144ffe08418286f89ff44ba5a2cc830c03dd22c7","impliedFormat":1},"8abc9a561aaa2978ea478fc739829ec6328ce5175278a4b19f132735d08350c4","d232c3e6c846c0416d5f78439f26d887fe7a7a657a7586e7404adbfe632262a7","46ce69633d1b0908c9d4228b4d920e95c99bfb4af3177e32f5b9910899de7809","5ef9882978e704c8f72fe6b8a910dffe51e062f4fe8ad8b78f3d58a731902b74","a6972b86b6c3d6081471a113ff1ff9da527e3df7a715a077a51b750696f58ef7","5ad85fb349f2b4b5cc1a8afa1a500be950720584bcdf4c5674290340c17cf238","db3799301f2a3131a0c873c64887205aebc464be7490e32e6ad231ec1c4a3242","e4f0ab91513670bc8013c5f759b547ba312aac36a1a94e98b965504c2e0c8707","82079c5693533994530754d06e56233b89fafc8559942ca69a7bdbdd0f3e45ca","24eda11eda83a40ac8ef852080683a9b9dff9a0be4ffd8956592c368bdca062f","b7a2b08d0689e639fe283c2d32b8edea3bcfa347e1bd58749c758414ba274b43","e3bea72f016ccd65253eebf3c127744d33c92f73272157c1cd1a763c423dfdae","c805f9b252f420f854e9991bfa5b71be236225a78281d92accfdf0174830a063",{"version":"83edc978f4c1dd0645bdd5c6ad26e8832cfc30ceb0bcc9d76b0aeb4b1698a921","signature":"84ea38e650a2635f6efd9eed6b6c474502dd1c39c18603e6ba5ebd6114ff5a60"},"253fc37b3e1164207109e00bd0efb44fc8120ab3fa5e0ed5fc5fbb6b7ec284d7",{"version":"27b8c2d503361b015e3acb09689a7b42f7ee8e69c5a3136f3a34d2ad5d9cb1ba","signature":"3a31e9c82cd353a27fb60981f12b1ad33b0a4a00810abc7f5e368d087560be73"},{"version":"fe8c4676500ffe9f39c2fc5efe9f6307790078536908b784968d6144cbd4895f","signature":"c99963ca25ff1122093b028d3177b3d355da7174f12012aeaef18889797ab982"},"1d8de8c7830e094f5f15ca2ac622c32220885b97f16c16691cfcc8d37d4cd706","a7068335e578bb49c66f276ccb67deaafdc3462ce89f87e28af6e960b15a2163","7ac9021f0d11a9674961fe11ae7cd4d4fe423e419f244c7c89a2aab6f8b7fd10","b1afe575cbfa0920ed03e20713fac1336dd83cd3d0561cf513f8a789b41769c9","a058d659314f8748c9a6c53f825e9296ea02e064c10731ebf9e3f5f7719c78a2",{"version":"82738d9afed59be7ee7b5f1602747adfb22136ff31af4d4a2cc8651ef77eaf19","impliedFormat":1},{"version":"aae374b21c7c3fe8a312b0ea6cfa3bd1376401fe6fa0de4da7506c2ed594aef4","impliedFormat":1},{"version":"2813548f7105435705b6a5c6c8459dadde0476ab2ebae6b2644cf2259960dc6d","impliedFormat":99},{"version":"e0f4c3a6747fac775e2d740f92e60a6da762e4f34d0a2057e22784fb5204181a","impliedFormat":1},{"version":"da107b61f72658beedd678c0c8fd0cedb3a02f679bbcea9d7bdea8e814dcadce","impliedFormat":99},{"version":"75ec6a6e61de058d8d450b229d54504ef1a47328b7e61d9cdc49e283559f3687","impliedFormat":1},{"version":"ac309244296f378db62f70d2dbeaf859340db6380ceac650e3e21713760abb8c","impliedFormat":99},{"version":"a469460e21a0286fb87a7df9539ff99e6c831ee11e1f929ce6ad68b8aaca7e3d","impliedFormat":1},{"version":"1b8e0cff7e05b290d2581f93d0b9f9b1d17971034825617b55ad3f398a2870f4","impliedFormat":1},{"version":"d23b8c70c6565fef9286c65bd6ff34ae3ad7084e0ec5e177f125a42d2a7c1886","impliedFormat":1},{"version":"4759dfcd0778dd0b9449affcc374781a863536a25dcfaa7c71d74317f8448b1a","impliedFormat":1},{"version":"aab65cc378cd64bd82cf63fbe1f6d5804c1594a4fc328468b405093d0c6aa727","impliedFormat":1},{"version":"681abfae63f06f15e42cd6f4c6f8a185da32c002e53af81652c59caa84370172","impliedFormat":1},{"version":"14021cbd3905a3e48bb4f45f51e813d6c3acefc6a3b3613658252ed402a62104","impliedFormat":1},{"version":"546dccc430d25c23cd0e7d1e2121c4a5321a77ae743846c57add1b2b20df2fc1","impliedFormat":99},{"version":"1f3f746a01b416e361a9ee615913755de6db92b1c6c825ca1c75d6c0d00e173d","signature":"e53518567466c5b4307a1d2ae5521c6b95aaf20258217098e84aad0125d62898"},"ccee776b17be26653443e7b76a31cefe3a9e610c88b32aaef622f5833550f11e",{"version":"d539df7291e37f5153a70c164c872c015915ffcd32717ef84a9ab9dbfef672f2","signature":"2cc743b624d6891f9275f11f76fedfe235af04641c806e7dc65e55740db4dd29"},"cf12cd317018445f8bb406a122ea239777fcd770bf8baaed55bb78bba9c9d65b","64c4f565321ddc4785d5530196aa242eaab08bd748fae4b53026a1b274df970e","aa00593fa4b04c60fcdad3c7d95b4faf42adcd6561f5b67cfe99d70eb9700006",{"version":"b8d8a69d95a2a0c585b6c0d4661d625d2449149525c22ff0bc1f58a8238f5bc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"b2d0630483bf337ef9dac326c3334a245aa4946e9f60f12baf7da5be44beafbb","impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","impliedFormat":1},{"version":"d55dcc47f1beabbf703104510984f3e952f971c8fe47ba7adf1dd9f8c75fa5f2","impliedFormat":1}],"root":[[413,415],527,528,[531,533],535,[538,545],[547,561],[664,690],700,701,[705,726],[742,747]],"options":{"allowJs":true,"esModuleInterop":true,"jsx":1,"module":99,"skipLibCheck":true,"strict":false,"target":7},"referencedMap":[[746,1],[744,2],[745,3],[747,4],[743,5],[535,6],[713,7],[712,8],[714,9],[716,10],[715,11],[717,12],[708,13],[711,14],[720,15],[718,7],[721,16],[705,17],[706,18],[528,19],[533,20],[550,21],[551,22],[554,23],[723,24],[553,22],[556,25],[552,22],[555,26],[678,27],[560,28],[724,29],[679,30],[559,31],[557,32],[680,33],[558,34],[707,35],[670,36],[666,37],[725,38],[672,39],[667,36],[665,37],[671,36],[669,36],[673,37],[668,36],[675,40],[676,41],[674,41],[677,42],[685,43],[684,44],[687,45],[686,46],[683,47],[681,48],[709,49],[682,50],[722,48],[719,51],[710,52],[544,37],[540,49],[541,37],[726,53],[542,49],[543,49],[548,26],[549,54],[545,37],[547,26],[529,55],[532,56],[531,57],[561,58],[688,59],[664,55],[742,60],[689,61],[539,55],[690,62],[538,63],[414,64],[413,65],[415,19],[366,55],[733,55],[731,55],[741,66],[729,55],[736,55],[739,55],[734,67],[738,55],[740,68],[737,69],[735,55],[727,55],[732,70],[730,71],[728,55],[429,55],[432,72],[748,73],[430,55],[437,55],[749,41],[750,55],[751,55],[143,74],[144,74],[145,75],[98,76],[146,77],[147,78],[148,79],[93,55],[96,80],[94,55],[95,55],[149,81],[150,82],[151,83],[152,84],[153,85],[154,86],[155,86],[156,87],[157,88],[158,89],[159,90],[99,55],[97,55],[160,91],[161,92],[162,93],[196,94],[163,95],[164,55],[165,96],[166,97],[167,98],[168,99],[169,100],[170,101],[171,102],[172,103],[173,104],[174,104],[175,105],[176,55],[177,106],[178,107],[180,108],[179,109],[181,110],[182,111],[183,112],[184,113],[185,114],[186,115],[187,116],[188,117],[189,118],[190,119],[191,120],[192,121],[193,122],[100,55],[101,55],[102,55],[140,123],[141,55],[142,55],[194,124],[195,125],[201,126],[202,127],[200,128],[198,129],[199,130],[84,55],[86,131],[289,41],[752,132],[433,133],[510,134],[511,135],[509,55],[416,55],[426,136],[422,137],[425,138],[519,139],[500,55],[502,140],[522,140],[501,141],[427,55],[424,142],[417,143],[515,144],[419,145],[421,146],[514,55],[512,145],[420,55],[423,143],[418,55],[431,55],[605,147],[607,148],[610,148],[612,149],[611,148],[609,150],[608,150],[613,151],[663,152],[617,153],[616,154],[606,155],[618,156],[615,157],[614,148],[576,158],[566,159],[565,55],[536,55],[604,160],[602,55],[600,161],[603,162],[601,163],[599,164],[598,165],[596,166],[597,166],[595,55],[85,55],[567,167],[562,55],[564,168],[563,169],[574,167],[573,167],[575,170],[572,171],[570,167],[571,167],[568,172],[569,167],[620,173],[619,55],[442,55],[696,174],[698,175],[697,176],[695,177],[694,55],[470,55],[493,55],[495,178],[494,55],[546,41],[92,179],[369,180],[373,181],[375,182],[222,183],[236,184],[340,185],[268,55],[343,186],[304,187],[313,188],[341,189],[223,190],[267,55],[269,191],[342,192],[243,193],[224,194],[248,193],[237,193],[207,193],[295,195],[296,196],[212,55],[292,197],[297,198],[384,199],[290,198],[385,200],[274,55],[293,201],[397,202],[396,203],[299,198],[395,55],[393,55],[394,204],[294,41],[281,205],[282,206],[291,207],[308,208],[309,209],[298,210],[276,211],[277,212],[388,213],[391,214],[255,215],[254,216],[253,217],[400,41],[252,218],[228,55],[403,55],[703,219],[702,55],[406,55],[405,41],[407,220],[203,55],[334,55],[235,221],[205,222],[357,55],[358,55],[360,55],[363,223],[359,55],[361,224],[362,224],[221,55],[234,55],[368,225],[376,226],[380,227],[217,228],[284,229],[283,55],[275,211],[303,230],[301,231],[300,55],[302,55],[307,232],[279,233],[216,234],[241,235],[331,236],[208,237],[215,238],[204,185],[345,239],[355,240],[344,55],[354,241],[242,55],[226,242],[322,243],[321,55],[328,244],[330,245],[323,246],[327,247],[329,244],[326,246],[325,244],[324,246],[264,248],[249,248],[316,249],[250,249],[210,250],[209,55],[320,251],[319,252],[318,253],[317,254],[211,255],[288,256],[305,257],[287,258],[312,259],[314,260],[311,258],[244,255],[197,55],[332,261],[270,262],[306,55],[353,263],[273,264],[348,265],[214,55],[349,266],[351,267],[352,268],[335,55],[347,237],[246,269],[333,270],[356,271],[218,55],[220,55],[225,272],[315,273],[213,274],[219,55],[272,275],[271,276],[227,277],[280,278],[278,279],[229,280],[231,281],[404,55],[230,282],[232,283],[371,55],[370,55],[372,55],[402,55],[233,284],[286,41],[91,55],[310,285],[256,55],[266,286],[245,55],[378,41],[387,287],[263,41],[382,198],[262,288],[365,289],[261,287],[206,55],[389,290],[259,41],[260,41],[251,55],[265,55],[258,291],[257,292],[247,293],[240,210],[350,55],[239,294],[238,55],[374,55],[285,41],[367,295],[83,55],[90,296],[87,41],[88,55],[89,55],[346,297],[339,298],[338,55],[337,299],[336,55],[377,300],[379,301],[381,302],[704,303],[383,304],[386,305],[412,306],[390,306],[411,307],[392,308],[398,309],[399,310],[401,311],[408,312],[410,55],[409,73],[364,313],[594,314],[579,315],[592,316],[577,55],[578,317],[593,318],[588,319],[589,320],[587,321],[591,322],[585,323],[580,324],[590,325],[586,316],[583,55],[584,326],[581,55],[582,55],[460,327],[458,328],[459,329],[447,330],[448,328],[455,331],[446,332],[451,333],[461,55],[452,334],[457,335],[463,336],[462,337],[445,338],[453,339],[454,340],[449,341],[456,327],[450,342],[534,41],[439,343],[438,344],[483,345],[464,55],[484,346],[466,347],[491,348],[485,55],[487,349],[488,349],[489,350],[486,55],[490,351],[469,352],[467,55],[468,353],[482,354],[465,55],[480,355],[471,356],[472,357],[473,357],[474,356],[481,358],[475,357],[476,355],[477,356],[478,357],[479,356],[444,55],[537,55],[520,55],[428,55],[81,55],[82,55],[13,55],[14,55],[16,55],[15,55],[2,55],[17,55],[18,55],[19,55],[20,55],[21,55],[22,55],[23,55],[24,55],[3,55],[25,55],[26,55],[4,55],[27,55],[31,55],[28,55],[29,55],[30,55],[32,55],[33,55],[34,55],[5,55],[35,55],[36,55],[37,55],[38,55],[6,55],[42,55],[39,55],[40,55],[41,55],[43,55],[7,55],[44,55],[49,55],[50,55],[45,55],[46,55],[47,55],[48,55],[8,55],[54,55],[51,55],[52,55],[53,55],[55,55],[9,55],[56,55],[57,55],[58,55],[60,55],[59,55],[61,55],[62,55],[10,55],[63,55],[64,55],[65,55],[11,55],[66,55],[67,55],[68,55],[69,55],[70,55],[1,55],[71,55],[72,55],[12,55],[76,55],[74,55],[79,55],[78,55],[73,55],[77,55],[75,55],[80,55],[118,359],[128,360],[117,359],[138,361],[109,362],[108,363],[137,73],[131,364],[136,365],[111,366],[125,367],[110,368],[134,369],[106,370],[105,73],[135,371],[107,372],[112,373],[113,55],[116,373],[103,55],[139,374],[129,375],[120,376],[121,377],[123,378],[119,379],[122,380],[132,73],[114,381],[115,382],[124,383],[104,384],[127,375],[126,373],[130,55],[133,385],[662,386],[638,387],[650,388],[636,389],[651,384],[660,390],[627,391],[628,392],[626,363],[659,73],[654,393],[658,394],[630,395],[647,396],[629,397],[657,398],[624,399],[625,393],[631,400],[632,55],[637,401],[635,400],[622,402],[661,403],[652,404],[641,405],[640,400],[642,406],[645,407],[639,408],[643,409],[655,73],[633,410],[634,411],[646,412],[623,384],[649,413],[648,400],[644,414],[653,55],[621,55],[656,415],[435,416],[499,417],[441,418],[436,416],[434,55],[440,419],[497,55],[492,420],[496,421],[443,55],[498,422],[517,423],[526,424],[516,425],[521,426],[508,427],[505,428],[513,55],[506,137],[693,429],[691,430],[524,431],[523,432],[504,433],[692,434],[503,55],[507,435],[525,436],[699,437],[518,55],[530,55],[700,438],[701,439],[527,440]],"affectedFilesPendingEmit":[746,744,745,747,743,535,713,712,714,716,715,717,708,711,720,718,721,705,706,528,533,550,551,554,723,553,556,552,555,678,560,724,679,559,557,680,558,707,670,666,725,672,667,665,671,669,673,668,675,676,674,677,685,684,687,686,683,681,709,682,722,719,710,544,540,541,726,542,543,548,549,545,547,532,531,561,688,664,742,689,539,690,538,414,415,700,701,527],"version":"5.9.3"} \ No newline at end of file +{"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.esnext.d.ts","./node_modules/typescript/lib/lib.dom.d.ts","./node_modules/typescript/lib/lib.dom.iterable.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.intl.d.ts","./node_modules/typescript/lib/lib.esnext.disposable.d.ts","./node_modules/typescript/lib/lib.esnext.promise.d.ts","./node_modules/typescript/lib/lib.esnext.decorators.d.ts","./node_modules/typescript/lib/lib.esnext.iterator.d.ts","./node_modules/typescript/lib/lib.esnext.float16.d.ts","./node_modules/typescript/lib/lib.esnext.error.d.ts","./node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","./node_modules/typescript/lib/lib.decorators.d.ts","./node_modules/typescript/lib/lib.decorators.legacy.d.ts","./node_modules/next/dist/styled-jsx/types/css.d.ts","./node_modules/@types/react/global.d.ts","./node_modules/csstype/index.d.ts","./node_modules/@types/react/index.d.ts","./node_modules/next/dist/styled-jsx/types/index.d.ts","./node_modules/next/dist/styled-jsx/types/macro.d.ts","./node_modules/next/dist/styled-jsx/types/style.d.ts","./node_modules/next/dist/styled-jsx/types/global.d.ts","./node_modules/next/dist/shared/lib/amp.d.ts","./node_modules/next/amp.d.ts","./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/@types/node/globals.d.ts","./node_modules/@types/node/web-globals/abortcontroller.d.ts","./node_modules/@types/node/web-globals/domexception.d.ts","./node_modules/@types/node/web-globals/events.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/web-globals/fetch.d.ts","./node_modules/@types/node/web-globals/navigator.d.ts","./node_modules/@types/node/web-globals/storage.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/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/inspector.generated.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","./node_modules/next/dist/server/get-page-files.d.ts","./node_modules/@types/react/canary.d.ts","./node_modules/@types/react/experimental.d.ts","./node_modules/@types/react-dom/index.d.ts","./node_modules/@types/react-dom/canary.d.ts","./node_modules/@types/react-dom/experimental.d.ts","./node_modules/next/dist/compiled/webpack/webpack.d.ts","./node_modules/next/dist/server/config.d.ts","./node_modules/next/dist/lib/load-custom-routes.d.ts","./node_modules/next/dist/shared/lib/image-config.d.ts","./node_modules/next/dist/build/webpack/plugins/subresource-integrity-plugin.d.ts","./node_modules/next/dist/server/body-streams.d.ts","./node_modules/next/dist/server/future/route-kind.d.ts","./node_modules/next/dist/server/future/route-definitions/route-definition.d.ts","./node_modules/next/dist/server/future/route-matches/route-match.d.ts","./node_modules/next/dist/client/components/app-router-headers.d.ts","./node_modules/next/dist/server/request-meta.d.ts","./node_modules/next/dist/server/lib/revalidate.d.ts","./node_modules/next/dist/server/config-shared.d.ts","./node_modules/next/dist/server/base-http/index.d.ts","./node_modules/next/dist/server/api-utils/index.d.ts","./node_modules/next/dist/server/node-environment.d.ts","./node_modules/next/dist/server/require-hook.d.ts","./node_modules/next/dist/server/node-polyfill-crypto.d.ts","./node_modules/next/dist/lib/page-types.d.ts","./node_modules/next/dist/build/analysis/get-page-static-info.d.ts","./node_modules/next/dist/build/webpack/loaders/get-module-build-info.d.ts","./node_modules/next/dist/build/webpack/plugins/middleware-plugin.d.ts","./node_modules/next/dist/server/render-result.d.ts","./node_modules/next/dist/server/future/helpers/i18n-provider.d.ts","./node_modules/next/dist/server/web/next-url.d.ts","./node_modules/next/dist/compiled/@edge-runtime/cookies/index.d.ts","./node_modules/next/dist/server/web/spec-extension/cookies.d.ts","./node_modules/next/dist/server/web/spec-extension/request.d.ts","./node_modules/next/dist/server/web/spec-extension/fetch-event.d.ts","./node_modules/next/dist/server/web/spec-extension/response.d.ts","./node_modules/next/dist/server/web/types.d.ts","./node_modules/next/dist/lib/setup-exception-listeners.d.ts","./node_modules/next/dist/lib/constants.d.ts","./node_modules/next/dist/build/index.d.ts","./node_modules/next/dist/build/webpack/plugins/pages-manifest-plugin.d.ts","./node_modules/next/dist/shared/lib/router/utils/route-regex.d.ts","./node_modules/next/dist/shared/lib/router/utils/route-matcher.d.ts","./node_modules/next/dist/shared/lib/router/utils/parse-url.d.ts","./node_modules/next/dist/server/base-http/node.d.ts","./node_modules/next/dist/server/font-utils.d.ts","./node_modules/next/dist/build/webpack/plugins/flight-manifest-plugin.d.ts","./node_modules/next/dist/server/future/route-modules/route-module.d.ts","./node_modules/next/dist/shared/lib/deep-readonly.d.ts","./node_modules/next/dist/server/load-components.d.ts","./node_modules/next/dist/shared/lib/router/utils/middleware-route-matcher.d.ts","./node_modules/next/dist/build/webpack/plugins/next-font-manifest-plugin.d.ts","./node_modules/next/dist/server/future/route-definitions/locale-route-definition.d.ts","./node_modules/next/dist/server/future/route-definitions/pages-route-definition.d.ts","./node_modules/next/dist/shared/lib/mitt.d.ts","./node_modules/next/dist/client/with-router.d.ts","./node_modules/next/dist/client/router.d.ts","./node_modules/next/dist/client/route-loader.d.ts","./node_modules/next/dist/client/page-loader.d.ts","./node_modules/next/dist/shared/lib/bloom-filter.d.ts","./node_modules/next/dist/shared/lib/router/router.d.ts","./node_modules/next/dist/shared/lib/router-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/loadable-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/loadable.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/image-config-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/hooks-client-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/head-manager-context.shared-runtime.d.ts","./node_modules/next/dist/server/future/route-definitions/app-page-route-definition.d.ts","./node_modules/next/dist/shared/lib/modern-browserslist-target.d.ts","./node_modules/next/dist/shared/lib/constants.d.ts","./node_modules/next/dist/build/webpack/loaders/metadata/types.d.ts","./node_modules/next/dist/build/page-extensions-type.d.ts","./node_modules/next/dist/build/webpack/loaders/next-app-loader.d.ts","./node_modules/next/dist/server/lib/app-dir-module.d.ts","./node_modules/next/dist/server/response-cache/types.d.ts","./node_modules/next/dist/server/response-cache/index.d.ts","./node_modules/next/dist/server/lib/incremental-cache/index.d.ts","./node_modules/next/dist/client/components/hooks-server-context.d.ts","./node_modules/next/dist/server/app-render/dynamic-rendering.d.ts","./node_modules/next/dist/client/components/static-generation-async-storage-instance.d.ts","./node_modules/next/dist/client/components/static-generation-async-storage.external.d.ts","./node_modules/next/dist/server/web/spec-extension/adapters/request-cookies.d.ts","./node_modules/next/dist/server/async-storage/draft-mode-provider.d.ts","./node_modules/next/dist/server/web/spec-extension/adapters/headers.d.ts","./node_modules/next/dist/client/components/request-async-storage-instance.d.ts","./node_modules/next/dist/client/components/request-async-storage.external.d.ts","./node_modules/next/dist/server/app-render/create-error-handler.d.ts","./node_modules/next/dist/server/app-render/app-render.d.ts","./node_modules/next/dist/shared/lib/server-inserted-html.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/amp-context.shared-runtime.d.ts","./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/entrypoints.d.ts","./node_modules/next/dist/server/future/route-modules/app-page/module.compiled.d.ts","./node_modules/@types/react/jsx-runtime.d.ts","./node_modules/next/dist/client/components/error-boundary.d.ts","./node_modules/next/dist/client/components/router-reducer/create-initial-router-state.d.ts","./node_modules/next/dist/client/components/app-router.d.ts","./node_modules/next/dist/client/components/layout-router.d.ts","./node_modules/next/dist/client/components/render-from-template-context.d.ts","./node_modules/next/dist/client/components/action-async-storage-instance.d.ts","./node_modules/next/dist/client/components/action-async-storage.external.d.ts","./node_modules/next/dist/client/components/client-page.d.ts","./node_modules/next/dist/client/components/search-params.d.ts","./node_modules/next/dist/client/components/not-found-boundary.d.ts","./node_modules/next/dist/server/app-render/rsc/preloads.d.ts","./node_modules/next/dist/server/app-render/rsc/postpone.d.ts","./node_modules/next/dist/server/app-render/rsc/taint.d.ts","./node_modules/next/dist/server/app-render/entry-base.d.ts","./node_modules/next/dist/build/templates/app-page.d.ts","./node_modules/next/dist/server/future/route-modules/app-page/module.d.ts","./node_modules/next/dist/server/lib/builtin-request-context.d.ts","./node_modules/next/dist/server/app-render/types.d.ts","./node_modules/next/dist/client/components/router-reducer/fetch-server-response.d.ts","./node_modules/next/dist/client/components/router-reducer/router-reducer-types.d.ts","./node_modules/next/dist/shared/lib/app-router-context.shared-runtime.d.ts","./node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/entrypoints.d.ts","./node_modules/next/dist/server/future/route-modules/pages/module.compiled.d.ts","./node_modules/next/dist/build/templates/pages.d.ts","./node_modules/next/dist/server/future/route-modules/pages/module.d.ts","./node_modules/next/dist/server/render.d.ts","./node_modules/next/dist/server/future/route-definitions/pages-api-route-definition.d.ts","./node_modules/next/dist/server/future/route-matches/pages-api-route-match.d.ts","./node_modules/next/dist/server/future/route-matchers/route-matcher.d.ts","./node_modules/next/dist/server/future/route-matcher-providers/route-matcher-provider.d.ts","./node_modules/next/dist/server/future/route-matcher-managers/route-matcher-manager.d.ts","./node_modules/next/dist/server/future/normalizers/normalizer.d.ts","./node_modules/next/dist/server/future/normalizers/locale-route-normalizer.d.ts","./node_modules/next/dist/server/future/normalizers/request/pathname-normalizer.d.ts","./node_modules/next/dist/server/future/normalizers/request/suffix.d.ts","./node_modules/next/dist/server/future/normalizers/request/rsc.d.ts","./node_modules/next/dist/server/future/normalizers/request/prefix.d.ts","./node_modules/next/dist/server/future/normalizers/request/postponed.d.ts","./node_modules/next/dist/server/future/normalizers/request/action.d.ts","./node_modules/next/dist/server/future/normalizers/request/prefetch-rsc.d.ts","./node_modules/next/dist/server/future/normalizers/request/next-data.d.ts","./node_modules/next/dist/server/base-server.d.ts","./node_modules/next/dist/server/image-optimizer.d.ts","./node_modules/next/dist/server/next-server.d.ts","./node_modules/next/dist/lib/coalesced-function.d.ts","./node_modules/next/dist/server/lib/router-utils/types.d.ts","./node_modules/next/dist/trace/types.d.ts","./node_modules/next/dist/trace/trace.d.ts","./node_modules/next/dist/trace/shared.d.ts","./node_modules/next/dist/trace/index.d.ts","./node_modules/next/dist/build/load-jsconfig.d.ts","./node_modules/next/dist/build/webpack-config.d.ts","./node_modules/next/dist/build/webpack/plugins/define-env-plugin.d.ts","./node_modules/next/dist/build/swc/index.d.ts","./node_modules/next/dist/server/dev/parse-version-info.d.ts","./node_modules/next/dist/server/dev/hot-reloader-types.d.ts","./node_modules/next/dist/telemetry/storage.d.ts","./node_modules/next/dist/server/lib/types.d.ts","./node_modules/next/dist/server/lib/render-server.d.ts","./node_modules/next/dist/server/lib/router-server.d.ts","./node_modules/next/dist/shared/lib/router/utils/path-match.d.ts","./node_modules/next/dist/server/lib/router-utils/filesystem.d.ts","./node_modules/next/dist/server/lib/router-utils/setup-dev-bundler.d.ts","./node_modules/next/dist/server/lib/dev-bundler-service.d.ts","./node_modules/next/dist/server/dev/static-paths-worker.d.ts","./node_modules/next/dist/server/dev/next-dev-server.d.ts","./node_modules/next/dist/server/next.d.ts","./node_modules/next/dist/lib/metadata/types/alternative-urls-types.d.ts","./node_modules/next/dist/lib/metadata/types/extra-types.d.ts","./node_modules/next/dist/lib/metadata/types/metadata-types.d.ts","./node_modules/next/dist/lib/metadata/types/manifest-types.d.ts","./node_modules/next/dist/lib/metadata/types/opengraph-types.d.ts","./node_modules/next/dist/lib/metadata/types/twitter-types.d.ts","./node_modules/next/dist/lib/metadata/types/metadata-interface.d.ts","./node_modules/next/types/index.d.ts","./node_modules/next/dist/shared/lib/html-context.shared-runtime.d.ts","./node_modules/@next/env/dist/index.d.ts","./node_modules/next/dist/shared/lib/utils.d.ts","./node_modules/next/dist/pages/_app.d.ts","./node_modules/next/app.d.ts","./node_modules/next/dist/server/web/spec-extension/unstable-cache.d.ts","./node_modules/next/dist/server/web/spec-extension/revalidate.d.ts","./node_modules/next/dist/server/web/spec-extension/unstable-no-store.d.ts","./node_modules/next/cache.d.ts","./node_modules/next/dist/shared/lib/runtime-config.external.d.ts","./node_modules/next/config.d.ts","./node_modules/next/dist/pages/_document.d.ts","./node_modules/next/document.d.ts","./node_modules/next/dist/shared/lib/dynamic.d.ts","./node_modules/next/dynamic.d.ts","./node_modules/next/dist/pages/_error.d.ts","./node_modules/next/error.d.ts","./node_modules/next/dist/shared/lib/head.d.ts","./node_modules/next/head.d.ts","./node_modules/next/dist/client/components/draft-mode.d.ts","./node_modules/next/dist/client/components/headers.d.ts","./node_modules/next/headers.d.ts","./node_modules/next/dist/shared/lib/get-img-props.d.ts","./node_modules/next/dist/client/image-component.d.ts","./node_modules/next/dist/shared/lib/image-external.d.ts","./node_modules/next/image.d.ts","./node_modules/next/dist/client/link.d.ts","./node_modules/next/link.d.ts","./node_modules/next/dist/client/components/redirect-status-code.d.ts","./node_modules/next/dist/client/components/redirect.d.ts","./node_modules/next/dist/client/components/not-found.d.ts","./node_modules/next/dist/client/components/navigation.react-server.d.ts","./node_modules/next/dist/client/components/navigation.d.ts","./node_modules/next/navigation.d.ts","./node_modules/next/router.d.ts","./node_modules/next/dist/client/script.d.ts","./node_modules/next/script.d.ts","./node_modules/next/dist/server/web/spec-extension/user-agent.d.ts","./node_modules/next/dist/compiled/@edge-runtime/primitives/url.d.ts","./node_modules/next/dist/server/web/spec-extension/image-response.d.ts","./node_modules/next/dist/compiled/@vercel/og/satori/index.d.ts","./node_modules/next/dist/compiled/@vercel/og/emoji/index.d.ts","./node_modules/next/dist/compiled/@vercel/og/types.d.ts","./node_modules/next/server.d.ts","./node_modules/next/types/global.d.ts","./node_modules/next/types/compiled.d.ts","./node_modules/next/index.d.ts","./node_modules/next/image-types/global.d.ts","./next-env.d.ts","./middleware.ts","./next.config.ts","./node_modules/@vitest/pretty-format/dist/index.d.ts","./node_modules/@vitest/utils/dist/display.d.ts","./node_modules/@vitest/utils/dist/types.d.ts","./node_modules/@vitest/utils/dist/helpers.d.ts","./node_modules/@vitest/utils/dist/timers.d.ts","./node_modules/@vitest/utils/dist/index.d.ts","./node_modules/@vitest/runner/dist/tasks.d-bua1hjow.d.ts","./node_modules/@vitest/utils/dist/types.d-bcelap-c.d.ts","./node_modules/@vitest/utils/dist/diff.d.ts","./node_modules/@vitest/runner/dist/types.d.ts","./node_modules/@vitest/runner/dist/index.d.ts","./node_modules/@vitest/spy/dist/index.d.ts","./node_modules/tinyrainbow/dist/index.d.ts","./node_modules/@standard-schema/spec/dist/index.d.ts","./node_modules/@types/deep-eql/index.d.ts","./node_modules/assertion-error/index.d.ts","./node_modules/@types/chai/index.d.ts","./node_modules/@vitest/expect/dist/index.d.ts","./node_modules/vite/types/hmrpayload.d.ts","./node_modules/vite/dist/node/chunks/modulerunnertransport.d.ts","./node_modules/vite/types/customevent.d.ts","./node_modules/@types/estree/index.d.ts","./node_modules/rollup/dist/rollup.d.ts","./node_modules/rollup/dist/parseast.d.ts","./node_modules/vite/types/hot.d.ts","./node_modules/vite/dist/node/module-runner.d.ts","./node_modules/esbuild/lib/main.d.ts","./node_modules/vite/types/internal/terseroptions.d.ts","./node_modules/source-map-js/source-map.d.ts","./node_modules/postcss/lib/previous-map.d.ts","./node_modules/postcss/lib/input.d.ts","./node_modules/postcss/lib/css-syntax-error.d.ts","./node_modules/postcss/lib/declaration.d.ts","./node_modules/postcss/lib/root.d.ts","./node_modules/postcss/lib/warning.d.ts","./node_modules/postcss/lib/lazy-result.d.ts","./node_modules/postcss/lib/no-work-result.d.ts","./node_modules/postcss/lib/processor.d.ts","./node_modules/postcss/lib/result.d.ts","./node_modules/postcss/lib/document.d.ts","./node_modules/postcss/lib/rule.d.ts","./node_modules/postcss/lib/node.d.ts","./node_modules/postcss/lib/comment.d.ts","./node_modules/postcss/lib/container.d.ts","./node_modules/postcss/lib/at-rule.d.ts","./node_modules/postcss/lib/list.d.ts","./node_modules/postcss/lib/postcss.d.ts","./node_modules/postcss/lib/postcss.d.mts","./node_modules/sass/types/deprecations.d.ts","./node_modules/sass/types/util/promise_or.d.ts","./node_modules/sass/types/importer.d.ts","./node_modules/sass/types/logger/source_location.d.ts","./node_modules/sass/types/logger/source_span.d.ts","./node_modules/sass/types/logger/index.d.ts","./node_modules/immutable/dist/immutable.d.ts","./node_modules/sass/types/value/boolean.d.ts","./node_modules/sass/types/value/calculation.d.ts","./node_modules/sass/types/value/color.d.ts","./node_modules/sass/types/value/function.d.ts","./node_modules/sass/types/value/list.d.ts","./node_modules/sass/types/value/map.d.ts","./node_modules/sass/types/value/mixin.d.ts","./node_modules/sass/types/value/number.d.ts","./node_modules/sass/types/value/string.d.ts","./node_modules/sass/types/value/argument_list.d.ts","./node_modules/sass/types/value/index.d.ts","./node_modules/sass/types/options.d.ts","./node_modules/sass/types/compile.d.ts","./node_modules/sass/types/exception.d.ts","./node_modules/sass/types/legacy/exception.d.ts","./node_modules/sass/types/legacy/plugin_this.d.ts","./node_modules/sass/types/legacy/function.d.ts","./node_modules/sass/types/legacy/importer.d.ts","./node_modules/sass/types/legacy/options.d.ts","./node_modules/sass/types/legacy/render.d.ts","./node_modules/sass/types/index.d.ts","./node_modules/vite/types/internal/csspreprocessoroptions.d.ts","./node_modules/lightningcss/node/ast.d.ts","./node_modules/lightningcss/node/targets.d.ts","./node_modules/lightningcss/node/index.d.ts","./node_modules/vite/types/internal/lightningcssoptions.d.ts","./node_modules/vite/types/importglob.d.ts","./node_modules/vite/types/metadata.d.ts","./node_modules/vite/dist/node/index.d.ts","./node_modules/@vitest/snapshot/dist/environment.d-dhdq1csl.d.ts","./node_modules/@vitest/snapshot/dist/rawsnapshot.d-lfsmjfud.d.ts","./node_modules/@vitest/snapshot/dist/index.d.ts","./node_modules/vitest/dist/chunks/traces.d.402v_yfi.d.ts","./node_modules/vitest/dist/chunks/rpc.d.rh3apgef.d.ts","./node_modules/vitest/dist/chunks/config.d.czijkicf.d.ts","./node_modules/vitest/dist/chunks/environment.d.crsxczp1.d.ts","./node_modules/vitest/dist/chunks/worker.d.5jnaocan.d.ts","./node_modules/vitest/dist/chunks/browser.d.bz3lxtx-.d.ts","./node_modules/@vitest/mocker/dist/types.d-b8cckmht.d.ts","./node_modules/@vitest/mocker/dist/index.d-c-slyzi-.d.ts","./node_modules/@vitest/mocker/dist/index.d.ts","./node_modules/@vitest/utils/dist/source-map.d.ts","./node_modules/vitest/dist/chunks/coverage.d.bztk59wp.d.ts","./node_modules/@vitest/utils/dist/serialize.d.ts","./node_modules/@vitest/utils/dist/error.d.ts","./node_modules/vitest/dist/browser.d.ts","./node_modules/vitest/browser/context.d.ts","./node_modules/vitest/optional-types.d.ts","./node_modules/@vitest/runner/dist/utils.d.ts","./node_modules/tinybench/dist/index.d.ts","./node_modules/vitest/dist/chunks/benchmark.d.daahlpsq.d.ts","./node_modules/@vitest/snapshot/dist/manager.d.ts","./node_modules/vitest/dist/chunks/reporters.d.rsi0pyxx.d.ts","./node_modules/vitest/dist/chunks/plugin.d.v1sc_bv1.d.ts","./node_modules/vitest/dist/config.d.ts","./node_modules/vitest/config.d.ts","./vitest.config.ts","./app/robots.ts","./data/processed/wordpress-data.json","./node_modules/xlsx/types/index.d.ts","./lib/excel-products.ts","./lib/data.ts","./app/sitemap.ts","./node_modules/resend/dist/index.d.ts","./app/[locale]/api/contact/route.ts","./node_modules/clsx/clsx.d.mts","./node_modules/tailwind-merge/dist/types.d.ts","./lib/utils.ts","./lib/responsive.ts","./components/ui/button.tsx","./components/ui/card.tsx","./components/ui/container.tsx","./components/ui/grid.tsx","./components/ui/badge.tsx","./components/ui/loading.tsx","./node_modules/lucide-react/dist/lucide-react.d.ts","./components/ui/slider.tsx","./components/ui/icon.tsx","./components/ui/index.ts","./components/cards/basecard.tsx","./components/cards/blogcard.tsx","./components/cards/productcard.tsx","./components/cards/categorycard.tsx","./components/cards/cardgrid.tsx","./components/cards/testimonialcard.tsx","./components/cards/index.ts","./components/content/hero.tsx","./components/content/section.tsx","./components/content/featuredimage.tsx","./components/content/breadcrumbs.tsx","./lib/html-compat.ts","./node_modules/domelementtype/lib/esm/index.d.ts","./node_modules/domhandler/lib/esm/node.d.ts","./node_modules/domhandler/lib/esm/index.d.ts","./node_modules/cheerio/node_modules/htmlparser2/dist/esm/tokenizer.d.ts","./node_modules/cheerio/node_modules/htmlparser2/dist/esm/parser.d.ts","./node_modules/dom-serializer/lib/esm/index.d.ts","./node_modules/domutils/lib/esm/stringify.d.ts","./node_modules/domutils/lib/esm/traversal.d.ts","./node_modules/domutils/lib/esm/manipulation.d.ts","./node_modules/domutils/lib/esm/querying.d.ts","./node_modules/domutils/lib/esm/legacy.d.ts","./node_modules/domutils/lib/esm/helpers.d.ts","./node_modules/domutils/lib/esm/feeds.d.ts","./node_modules/domutils/lib/esm/index.d.ts","./node_modules/cheerio/node_modules/htmlparser2/dist/esm/index.d.ts","./node_modules/parse5/dist/common/html.d.ts","./node_modules/parse5/dist/common/token.d.ts","./node_modules/parse5/dist/common/error-codes.d.ts","./node_modules/parse5/dist/tokenizer/preprocessor.d.ts","./node_modules/parse5/node_modules/entities/dist/esm/generated/decode-data-html.d.ts","./node_modules/parse5/node_modules/entities/dist/esm/generated/decode-data-xml.d.ts","./node_modules/parse5/node_modules/entities/dist/esm/decode-codepoint.d.ts","./node_modules/parse5/node_modules/entities/dist/esm/decode.d.ts","./node_modules/parse5/dist/tokenizer/index.d.ts","./node_modules/parse5/dist/tree-adapters/interface.d.ts","./node_modules/parse5/dist/parser/open-element-stack.d.ts","./node_modules/parse5/dist/parser/formatting-element-list.d.ts","./node_modules/parse5/dist/parser/index.d.ts","./node_modules/parse5/dist/tree-adapters/default.d.ts","./node_modules/parse5/dist/serializer/index.d.ts","./node_modules/parse5/dist/common/foreign-content.d.ts","./node_modules/parse5/dist/index.d.ts","./node_modules/parse5-htmlparser2-tree-adapter/dist/index.d.ts","./node_modules/css-what/lib/es/types.d.ts","./node_modules/css-what/lib/es/parse.d.ts","./node_modules/css-what/lib/es/stringify.d.ts","./node_modules/css-what/lib/es/index.d.ts","./node_modules/css-select/lib/esm/types.d.ts","./node_modules/css-select/lib/esm/pseudo-selectors/filters.d.ts","./node_modules/css-select/lib/esm/pseudo-selectors/pseudos.d.ts","./node_modules/css-select/lib/esm/pseudo-selectors/aliases.d.ts","./node_modules/css-select/lib/esm/pseudo-selectors/index.d.ts","./node_modules/css-select/lib/esm/index.d.ts","./node_modules/cheerio-select/lib/esm/index.d.ts","./node_modules/cheerio/dist/esm/options.d.ts","./node_modules/cheerio/dist/esm/api/attributes.d.ts","./node_modules/cheerio/dist/esm/api/traversing.d.ts","./node_modules/cheerio/dist/esm/api/manipulation.d.ts","./node_modules/cheerio/dist/esm/api/css.d.ts","./node_modules/cheerio/dist/esm/api/forms.d.ts","./node_modules/cheerio/dist/esm/api/extract.d.ts","./node_modules/cheerio/dist/esm/cheerio.d.ts","./node_modules/cheerio/dist/esm/types.d.ts","./node_modules/cheerio/dist/esm/static.d.ts","./node_modules/cheerio/dist/esm/load.d.ts","./node_modules/cheerio/dist/esm/load-parse.d.ts","./node_modules/cheerio/dist/esm/slim.d.ts","./node_modules/encoding-sniffer/dist/esm/sniffer.d.ts","./node_modules/encoding-sniffer/dist/esm/index.d.ts","./node_modules/undici/types/utility.d.ts","./node_modules/undici/types/header.d.ts","./node_modules/undici/types/readable.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-stats.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/h2c-client.d.ts","./node_modules/undici/types/agent.d.ts","./node_modules/undici/types/mock-interceptor.d.ts","./node_modules/undici/types/mock-call-history.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/snapshot-agent.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/cache-interceptor.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/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/undici/index.d.ts","./node_modules/cheerio/dist/esm/index.d.ts","./lib/i18n.ts","./components/forms/formlabel.tsx","./components/forms/formerror.tsx","./components/forms/forminput.tsx","./components/forms/formtextarea.tsx","./components/forms/formselect.tsx","./components/forms/formcheckbox.tsx","./components/forms/formradio.tsx","./components/forms/formfield.tsx","./components/forms/formsuccess.tsx","./components/forms/hooks/useformvalidation.ts","./components/forms/hooks/useform.ts","./components/forms/hooks/useformfield.ts","./components/forms/index.ts","./components/contactform.tsx","./components/content/contentrenderer.tsx","./components/content/index.ts","./components/layout/navigation.tsx","./components/localeswitcher.tsx","./components/layout/mobilemenu.tsx","./components/layout/header.tsx","./components/layout/footer.tsx","./components/layout/layout.tsx","./components/layout/index.ts","./lib/i18n-config.ts","./lib/responsive-test.ts","./lib/seo.ts","./node_modules/vitest/dist/chunks/global.d.b15mdlcr.d.ts","./node_modules/vitest/dist/chunks/suite.d.bjwk38hb.d.ts","./node_modules/vitest/dist/chunks/evaluatedmodules.d.bxj5omdx.d.ts","./node_modules/expect-type/dist/utils.d.ts","./node_modules/expect-type/dist/overloads.d.ts","./node_modules/expect-type/dist/branding.d.ts","./node_modules/expect-type/dist/messages.d.ts","./node_modules/expect-type/dist/index.d.ts","./node_modules/vitest/dist/index.d.ts","./tests/column-grouping.test.ts","./tests/data-processing.test.ts","./tests/excel-integration.test.ts","./tests/pdf-datasheet.test.ts","./node_modules/next/dist/compiled/@next/font/dist/types.d.ts","./node_modules/next/dist/compiled/@next/font/dist/google/index.d.ts","./node_modules/next/font/google/index.d.ts","./app/layout.tsx","./app/page.tsx","./components/cookieconsent.tsx","./app/[locale]/layout.tsx","./components/layout/responsivewrapper.tsx","./components/seo.tsx","./app/[locale]/page.tsx","./app/[locale]/blog/page.tsx","./app/[locale]/blog/[slug]/page.tsx","./app/[locale]/contact/page.tsx","./app/[locale]/example/page.tsx","./app/[locale]/example/components-demo/page.tsx","./app/[locale]/example/subpage/page.tsx","./app/[locale]/product/page.tsx","./components/productlist.tsx","./app/[locale]/product-category/[slug]/page.tsx","./app/[locale]/products/page.tsx","./components/navigation.tsx","./components/cards/cardsexample.tsx","./components/content/contentcomponentsexample.tsx","./components/forms/formexamples.tsx","./components/ui/componentsexample.tsx","./node_modules/@react-pdf/types/pdf.d.ts","./node_modules/@react-pdf/types/svg.d.ts","./node_modules/@react-pdf/stylesheet/lib/index.d.ts","./node_modules/@react-pdf/types/style.d.ts","./node_modules/@react-pdf/primitives/lib/index.d.ts","./node_modules/@react-pdf/types/primitive.d.ts","./node_modules/@react-pdf/font/lib/index.d.ts","./node_modules/@react-pdf/types/font.d.ts","./node_modules/@react-pdf/types/page.d.ts","./node_modules/@react-pdf/types/bookmark.d.ts","./node_modules/@react-pdf/types/node.d.ts","./node_modules/@react-pdf/types/image.d.ts","./node_modules/@react-pdf/types/context.d.ts","./node_modules/@react-pdf/types/index.d.ts","./node_modules/@react-pdf/renderer/lib/react-pdf.d.ts","./lib/pdf-datasheet.tsx","./.next/types/app/layout.ts","./.next/types/app/[locale]/layout.ts","./.next/types/app/[locale]/page.ts","./.next/types/app/[locale]/blog/page.ts","./.next/types/app/[locale]/products/page.ts","./node_modules/@types/cheerio/index.d.ts","./node_modules/@types/hoist-non-react-statics/index.d.ts","./node_modules/@types/json-schema/index.d.ts","./node_modules/@types/json5/index.d.ts","./node_modules/@types/sharp/index.d.ts"],"fileIdsList":[[98,146,163,164,363,714],[98,146,163,164,363,710],[98,146,163,164,363,713],[98,146,163,164,363,723],[98,146,163,164,363,707],[98,146,163,164,408,534],[98,146,163,164,392,398,411,532,664,679,682,712],[98,146,163,164,392,411,532,664,679,682,712],[98,146,163,164,398,411,532,557,560,678,679,711,712],[98,146,163,164,542,558,679],[98,146,163,164,411,540,541,542,543,544],[98,146,163,164,392,411,540,541,542,686],[98,146,163,164,411,686,706,709],[98,146,163,164,398,411,532,542,559,679,682,711,712],[98,146,163,164,398,411,532,721],[98,146,163,164,532,664,721],[98,146,163,164,411,706],[98,146,163,164,398],[98,146,163,164,411],[98,146,163,164,411,532],[86,98,146,163,164,392,538,549],[86,98,146,163,164,532,538,549,550],[86,98,146,163,164,538,549],[86,98,146,163,164,532,549,556],[98,146,163,164,550,551,552,553,554,555],[86,98,146,163,164,538,546],[86,98,146,163,164,398,549,664,677],[86,98,146,163,164,392,538,542],[86,98,146,163,164,532,549,680],[86,98,146,163,164,390,392,532,538,540,541,543,547,548,555,557,558,559,561,678,750],[86,98,146,163,164,390,538,539],[86,98,146,163,164,390,538,540,542],[98,146,163,164,557,558,559,560,679],[86,98,146,163,164,390,538,542],[86,98,146,163,164,398,549,664],[86,98,146,163,164,538,665,666],[86,98,146,163,164,538],[86,98,146,163,164,540,541,542,677],[86,98,146,163,164,538,665,666,667,668,669,670,671],[86,98,146,163,164,674],[86,98,146,163,164],[98,146,163,164,665,666,667,668,669,670,671,672,673,674,675,676],[98,146,163,164,392,542,681],[98,146,163,164,390,392,540,542,681,682,683],[98,146,163,164,681,683,684,685,686],[86,98,146,163,164,392,542,684,685],[86,98,146,163,164,390,392,398,540,682],[98,146,163,164,392,398,664],[86,98,146,163,164,538,539],[98,146,163,164,392,398,549,664],[86,98,146,163,164,532,549,552,554],[86,98,146,163,164,664],[86,98,146,163,164,549],[98,146,163,164,540,541,542,543,544,545,547,548],[98,146,163,164],[98,146,163,164,529,531],[98,146,158,163,164,168,530],[98,146,163,164,532],[98,146,163,164,664],[86,98,146,163,164,743],[98,146,163,164,539],[98,146,163,164,411,664],[98,146,163,164,536,537],[98,146,163,164,408],[98,146,163,164,411,412],[86,98,146,163,164,742],[98,146,163,164,735],[98,146,163,164,729,730,732,734,736,737,738,739,740,741],[98,146,163,164,732,734,736,737,738],[98,146,163,164,733],[98,146,163,164,731],[98,146,163,164,430,431],[98,146,163,164,196],[98,143,144,146,163,164],[98,145,146,163,164],[146,163,164],[98,146,151,163,164,181],[98,146,147,152,157,163,164,166,178,189],[98,146,147,148,157,163,164,166],[93,94,95,98,146,163,164],[98,146,149,163,164,190],[98,146,150,151,158,163,164,167],[98,146,151,163,164,178,186],[98,146,152,154,157,163,164,166],[98,145,146,153,163,164],[98,146,154,155,163,164],[98,146,156,157,163,164],[98,145,146,157,163,164],[98,146,157,158,159,163,164,178,189],[98,146,157,158,159,163,164,173,178,181],[98,139,146,154,157,160,163,164,166,178,189],[98,146,157,158,160,161,163,164,166,178,186,189],[98,146,160,162,163,164,178,186,189],[96,97,98,99,100,101,102,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195],[98,146,157,163,164],[98,146,163,164,165,189],[98,146,154,157,163,164,166,178],[98,146,163,164,167],[98,146,163,164,168],[98,145,146,163,164,169],[98,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195],[98,146,163,164,171],[98,146,163,164,172],[98,146,157,163,164,173,174],[98,146,163,164,173,175,190,192],[98,146,158,163,164],[98,146,157,163,164,178,179,181],[98,146,163,164,180,181],[98,146,163,164,178,179],[98,146,163,164,181],[98,146,163,164,182],[98,143,146,163,164,178,183],[98,146,157,163,164,184,185],[98,146,163,164,184,185],[98,146,151,163,164,166,178,186],[98,146,163,164,187],[98,146,163,164,166,188],[98,146,160,163,164,172,189],[98,146,151,163,164,190],[98,146,163,164,178,191],[98,146,163,164,165,192],[98,146,163,164,193],[98,139,146,163,164],[98,139,146,157,159,163,164,169,178,181,189,191,192,194],[98,146,163,164,178,195],[86,90,98,146,163,164,198,199,200,202,364,407],[86,90,98,146,163,164,198,199,200,201,364,407],[86,90,98,146,163,164,198,199,201,202,364,407],[86,90,98,146,163,164,199,200,201,202,364,407],[86,90,98,146,163,164,198,200,201,202,364,407],[84,85,98,146,163,164],[98,146,163,164,178,196],[98,146,163,164,417,421,424,426,427,428,429,432,691],[98,146,163,164,509],[98,146,163,164,509,510],[98,146,163,164,421,422,424,425],[98,146,163,164,421],[98,146,163,164,421,422,424],[98,146,163,164,421,422],[98,146,163,164,416,500,501],[98,146,163,164,416,500],[98,146,163,164,416,423],[98,146,163,164,416],[98,146,163,164,416,423,514],[98,146,163,164,418],[98,146,163,164,416,417,418,419,420],[98,146,163,164,564,604],[98,146,163,164,564,613],[98,146,163,164,564,607,613],[98,146,163,164,564,613,614],[98,146,163,164,564,606,607,608,609,610,611,612,614],[98,146,163,164,178,606,614,615,616,617,618,620,662],[98,146,163,164,564,606,616],[98,146,163,164,564,606,613,614,615],[98,146,163,164,564,567,576,593,594,605],[98,146,163,164,564,606,613,614,615,616],[98,146,163,164,564,606,612,613,614,616],[98,146,163,164,562,564,565,566,575],[98,146,163,164,565],[98,146,163,164,598,599,603],[98,146,163,164,599],[98,146,163,164,598,599,600,601,602],[98,146,163,164,598,599],[98,146,163,164,598],[98,146,163,164,595,596,597],[98,146,163,164,595],[98,146,163,164,564],[98,146,163,164,563],[98,146,163,164,562],[98,146,163,164,564,568,569,570,571,572,573,574],[98,146,163,164,562,564],[98,146,163,164,564,567],[98,146,163,164,178,619],[98,146,163,164,694,695],[98,146,163,164,694,695,696,697],[98,146,163,164,694,696],[98,146,163,164,694],[98,146,163,164,493,494],[91,98,146,163,164],[98,146,163,164,368],[98,146,163,164,370,371,372],[98,146,163,164,374],[98,146,163,164,205,215,221,223,364],[98,146,163,164,205,212,214,217,235],[98,146,163,164,215],[98,146,163,164,215,217,342],[98,146,163,164,270,288,303,410],[98,146,163,164,312],[98,146,163,164,205,215,222,256,266,339,340,410],[98,146,163,164,222,410],[98,146,163,164,215,266,267,268,410],[98,146,163,164,215,222,256,410],[98,146,163,164,410],[98,146,163,164,205,222,223,410],[98,146,163,164,296],[98,145,146,163,164,196,295],[86,98,146,163,164,289,290,291,309,310],[86,98,146,163,164,289],[98,146,163,164,279],[98,146,163,164,278,280,384],[86,98,146,163,164,289,290,307],[98,146,163,164,285,310,396],[98,146,163,164,394,395],[98,146,163,164,229,393],[98,146,163,164,282],[98,145,146,163,164,196,229,245,278,279,280,281],[86,98,146,163,164,307,309,310],[98,146,163,164,307,309],[98,146,163,164,307,308,310],[98,146,163,164,172,196],[98,146,163,164,277],[98,145,146,163,164,196,214,216,273,274,275,276],[86,98,146,163,164,206,387],[86,98,146,163,164,189,196],[86,98,146,163,164,222,254],[86,98,146,163,164,222],[98,146,163,164,252,257],[86,98,146,163,164,253,367],[98,146,163,164,704],[86,90,98,146,160,163,164,196,198,199,200,201,202,364,405,406],[98,146,163,164,364],[98,146,163,164,204],[98,146,163,164,357,358,359,360,361,362],[98,146,163,164,359],[86,98,146,163,164,253,289,367],[86,98,146,163,164,289,365,367],[86,98,146,163,164,289,367],[98,146,160,163,164,196,216,367],[98,146,160,163,164,196,213,214,225,243,245,277,282,283,305,307],[98,146,163,164,274,277,282,290,292,293,294,296,297,298,299,300,301,302,410],[98,146,163,164,275],[86,98,146,163,164,172,196,214,215,243,245,246,248,273,305,306,310,364,410],[98,146,160,163,164,196,216,217,229,230,278],[98,146,160,163,164,196,215,217],[98,146,160,163,164,178,196,213,216,217],[98,146,160,163,164,172,189,196,213,214,215,216,217,222,225,226,236,237,239,242,243,245,246,247,248,272,273,306,307,315,317,320,322,325,327,328,329,330],[98,146,160,163,164,178,196],[98,146,163,164,205,206,207,213,214,364,367,410],[98,146,160,163,164,178,189,196,210,341,343,344,410],[98,146,163,164,172,189,196,210,213,216,233,237,239,240,241,246,273,320,331,333,339,353,354],[98,146,163,164,215,219,273],[98,146,163,164,213,215],[98,146,163,164,226,321],[98,146,163,164,323,324],[98,146,163,164,323],[98,146,163,164,321],[98,146,163,164,323,326],[98,146,163,164,209,210],[98,146,163,164,209,249],[98,146,163,164,209],[98,146,163,164,211,226,319],[98,146,163,164,318],[98,146,163,164,210,211],[98,146,163,164,211,316],[98,146,163,164,210],[98,146,163,164,305],[98,146,160,163,164,196,213,225,244,264,270,284,287,304,307],[98,146,163,164,258,259,260,261,262,263,285,286,310,365],[98,146,163,164,314],[98,146,160,163,164,196,213,225,244,250,311,313,315,364,367],[98,146,160,163,164,189,196,206,213,215,272],[98,146,163,164,269],[98,146,160,163,164,196,347,352],[98,146,163,164,236,245,272,367],[98,146,163,164,335,339,353,356],[98,146,160,163,164,219,339,347,348,356],[98,146,163,164,205,215,236,247,350],[98,146,160,163,164,196,215,222,247,334,335,345,346,349,351],[98,146,163,164,197,243,244,245,364,367],[98,146,160,163,164,172,189,196,211,213,214,216,219,224,225,233,236,237,239,240,241,242,246,248,272,273,317,331,332,367],[98,146,160,163,164,196,213,215,219,333,355],[98,146,160,163,164,196,214,216],[86,98,146,160,163,164,172,196,204,206,213,214,217,225,242,243,245,246,248,314,364,367],[98,146,160,163,164,172,189,196,208,211,212,216],[98,146,163,164,209,271],[98,146,160,163,164,196,209,214,225],[98,146,160,163,164,196,215,226],[98,146,160,163,164,196],[98,146,163,164,229],[98,146,163,164,228],[98,146,163,164,230],[98,146,163,164,215,227,229,233],[98,146,163,164,215,227,229],[98,146,160,163,164,196,208,215,216,222,230,231,232],[86,98,146,163,164,307,308,309],[98,146,163,164,265],[86,98,146,163,164,206],[86,98,146,163,164,239],[86,98,146,163,164,197,242,245,248,364,367],[98,146,163,164,206,387,388],[86,98,146,163,164,257],[86,98,146,163,164,172,189,196,204,251,253,255,256,367],[98,146,163,164,216,222,239],[98,146,163,164,238],[86,98,146,158,160,163,164,172,196,204,257,266,364,365,366],[83,86,87,88,89,98,146,163,164,198,199,200,201,202,364,407],[98,146,151,163,164],[98,146,163,164,336,337,338],[98,146,163,164,336],[98,146,163,164,376],[98,146,163,164,378],[98,146,163,164,380],[98,146,163,164,705],[98,146,163,164,382],[98,146,163,164,385],[98,146,163,164,389],[90,92,98,146,163,164,364,369,373,375,377,379,381,383,386,390,392,398,399,401,408,409,410],[98,146,163,164,391],[98,146,163,164,397],[98,146,163,164,253],[98,146,163,164,400],[98,145,146,163,164,230,231,232,233,402,403,404,407],[86,90,98,146,160,162,163,164,172,196,198,199,200,201,202,204,217,356,363,367,407],[98,146,163,164,564,593],[98,146,163,164,578],[98,146,163,164,577,578],[98,146,163,164,577],[98,146,163,164,577,578,579,585,586,589,590,591,592],[98,146,163,164,578,586],[98,146,163,164,577,578,579,585,586,587,588],[98,146,163,164,577,586],[98,146,163,164,586,590],[98,146,163,164,578,579,580,584],[98,146,163,164,579],[98,146,163,164,577,578,586],[98,146,163,164,581,582,583],[98,146,163,164,459],[98,146,163,164,457,459],[98,146,163,164,448,456,457,458,460,462],[98,146,163,164,446],[98,146,163,164,449,454,459,462],[98,146,163,164,445,462],[98,146,163,164,449,450,453,454,455,462],[98,146,163,164,449,450,451,453,454,462],[98,146,163,164,446,447,448,449,450,454,455,456,458,459,460,462],[98,146,163,164,462],[98,146,163,164,444,446,447,448,449,450,451,453,454,455,456,457,458,459,460,461],[98,146,163,164,444,462],[98,146,163,164,449,451,452,454,455,462],[98,146,163,164,453,462],[98,146,163,164,454,455,459,462],[98,146,163,164,447,457],[98,146,163,164,438,498,499],[98,146,163,164,437,438],[98,146,163,164,444,482],[98,146,163,164,469],[98,146,163,164,465,482],[98,146,163,164,464,465,466,469,481,482,483,484,485,486,487,488,489,490],[98,146,163,164,486],[98,146,163,164,464,466,469,487,488],[98,146,163,164,485,489],[98,146,163,164,464,467,468],[98,146,163,164,467],[98,146,163,164,464,465,466,469,481],[98,146,163,164,470,475,481],[98,146,163,164,481],[98,146,163,164,470,481],[98,146,163,164,470,471,472,473,474,475,476,477,478,479,480],[98,111,115,146,163,164,189],[98,111,146,163,164,178,189],[98,106,146,163,164],[98,108,111,146,163,164,186,189],[98,146,163,164,166,186],[98,106,146,163,164,196],[98,108,111,146,163,164,166,189],[98,103,104,107,110,146,157,163,164,178,189],[98,111,118,146,163,164],[98,103,109,146,163,164],[98,111,132,133,146,163,164],[98,107,111,146,163,164,181,189,196],[98,132,146,163,164,196],[98,105,106,146,163,164,196],[98,111,146,163,164],[98,105,106,107,108,109,110,111,112,113,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,133,134,135,136,137,138,146,163,164],[98,111,126,146,163,164],[98,111,118,119,146,163,164],[98,109,111,119,120,146,163,164],[98,110,146,163,164],[98,103,106,111,146,163,164],[98,111,115,119,120,146,163,164],[98,115,146,163,164],[98,109,111,114,146,163,164,189],[98,103,108,111,118,146,163,164],[98,146,163,164,178],[98,106,111,132,146,163,164,194,196],[98,146,163,164,661],[98,146,163,164,189,627,630,633,634],[98,146,163,164,178,189,630],[98,146,163,164,189,630,634],[98,146,163,164,624],[98,146,163,164,628],[98,146,163,164,189,626,627,630],[98,146,163,164,196,624],[98,146,163,164,166,189,626,630],[98,146,157,163,164,178,189,621,622,623,625,629],[98,146,163,164,630,638,646],[98,146,163,164,622,628],[98,146,163,164,630,655,656],[98,146,163,164,181,189,196,622,625,630],[98,146,163,164,630],[98,146,163,164,189,626,630],[98,146,163,164,621],[98,146,163,164,624,625,626,628,629,630,631,632,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,656,657,658,659,660],[98,146,154,163,164,630,648,651],[98,146,163,164,630,638,639,640],[98,146,163,164,628,630,639,641],[98,146,163,164,629],[98,146,163,164,622,624,630],[98,146,163,164,630,634,639,641],[98,146,163,164,634],[98,146,163,164,189,628,630,633],[98,146,163,164,622,626,630,638],[98,146,163,164,630,648],[98,146,163,164,641],[98,146,163,164,181,194,196,624,630,655],[98,146,163,164,434],[98,146,157,158,160,161,162,163,164,166,178,186,189,195,196,434,435,436,438,439,441,442,443,463,492,496,497,498,499],[98,146,163,164,434,435,436,440],[98,146,163,164,436],[98,146,163,164,491],[98,146,163,164,495],[98,146,163,164,438,499],[98,146,163,164,516],[98,146,163,164,433,525,691],[98,146,163,164,416,417,419,420,421,424,426,427,502,505,512,513,515,691],[98,146,163,164,426,519,520,691],[98,146,163,164,426,507,691],[98,146,163,164,416,424,426,502,691],[98,146,163,164,441],[98,146,163,164,416,426,433,502,504,521,691],[98,146,163,164,499,523,525],[98,146,149,158,163,164,178,416,421,424,426,433,499,502,503,504,505,507,508,511,512,513,517,518,521,522,525,691],[98,146,163,164,426,441,502,503,691],[98,146,163,164,426,519,520,521,691],[98,146,163,164,426,441,504,505,506,691],[98,146,149,158,163,164,178,416,421,424,426,433,441,499,502,503,504,505,506,507,508,511,512,513,517,518,519,520,521,522,523,524,525,691],[98,146,163,164,416,421,424,426,427,433,441,502,503,504,505,506,507,508,519,520,521,691,692,693,698],[98,146,147,158,163,164,168,699],[98,146,163,164,561,699],[98,146,163,164,531,532,699],[98,146,163,164,526]],"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":"2ab096661c711e4a81cc464fa1e6feb929a54f5340b46b0a07ac6bbf857471f0","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"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":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"196cb558a13d4533a5163286f30b0509ce0210e4b316c56c38d4c0fd2fb38405","affectsGlobalScope":true,"impliedFormat":1},{"version":"73f78680d4c08509933daf80947902f6ff41b6230f94dd002ae372620adb0f60","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5239f5c01bcfa9cd32f37c496cf19c61d69d37e48be9de612b541aac915805b","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"0990a7576222f248f0a3b888adcb7389f957928ce2afb1cd5128169086ff4d29","impliedFormat":1},{"version":"170d4db14678c68178ee8a3d5a990d5afb759ecb6ec44dbd885c50f6da6204f6","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","impliedFormat":1},{"version":"5e76305d58bcdc924ff2bf14f6a9dc2aa5441ed06464b7e7bd039e611d66a89b","impliedFormat":1},{"version":"cc69795d9954ee4ad57545b10c7bf1a7260d990231b1685c147ea71a6faa265c","impliedFormat":1},{"version":"8bc6c94ff4f2af1f4023b7bb2379b08d3d7dd80c698c9f0b07431ea16101f05f","impliedFormat":1},{"version":"1b61d259de5350f8b1e5db06290d31eaebebc6baafd5f79d314b5af9256d7153","impliedFormat":1},{"version":"57194e1f007f3f2cbef26fa299d4c6b21f4623a2eddc63dfeef79e38e187a36e","impliedFormat":1},{"version":"0f6666b58e9276ac3a38fdc80993d19208442d6027ab885580d93aec76b4ef00","impliedFormat":1},{"version":"05fd364b8ef02fb1e174fbac8b825bdb1e5a36a016997c8e421f5fab0a6da0a0","impliedFormat":1},{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"808069bba06b6768b62fd22429b53362e7af342da4a236ed2d2e1c89fcca3b4a","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","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":"2cbe0621042e2a68c7cbce5dfed3906a1862a16a7d496010636cdbdb91341c0f","affectsGlobalScope":true,"impliedFormat":1},{"version":"f9501cc13ce624c72b61f12b3963e84fad210fbdf0ffbc4590e08460a3f04eba","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0fa06ada475b910e2106c98c68b10483dc8811d0c14a8a8dd36efb2672485b29","impliedFormat":1},{"version":"33e5e9aba62c3193d10d1d33ae1fa75c46a1171cf76fef750777377d53b0303f","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"6a0cd27e5dc2cfbe039e731cf879d12b0e2dded06d1b1dedad07f7712de0d7f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"13f5c844119c43e51ce777c509267f14d6aaf31eafb2c2b002ca35584cd13b29","impliedFormat":1},{"version":"e60477649d6ad21542bd2dc7e3d9ff6853d0797ba9f689ba2f6653818999c264","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"4c829ab315f57c5442c6667b53769975acbf92003a66aef19bce151987675bd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"b2ade7657e2db96d18315694789eff2ddd3d8aea7215b181f8a0b303277cc579","impliedFormat":1},{"version":"9855e02d837744303391e5623a531734443a5f8e6e8755e018c41d63ad797db2","impliedFormat":1},{"version":"4d631b81fa2f07a0e63a9a143d6a82c25c5f051298651a9b69176ba28930756d","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"41670ee38943d9cbb4924e436f56fc19ee94232bc96108562de1a734af20dc2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c906fb15bd2aabc9ed1e3f44eb6a8661199d6c320b3aa196b826121552cb3695","impliedFormat":1},{"version":"22295e8103f1d6d8ea4b5d6211e43421fe4564e34d0dd8e09e520e452d89e659","impliedFormat":1},{"version":"bb45cd435da536500f1d9692a9b49d0c570b763ccbf00473248b777f5c1f353b","impliedFormat":1},{"version":"6b4e081d55ac24fc8a4631d5dd77fe249fa25900abd7d046abb87d90e3b45645","impliedFormat":1},{"version":"a10f0e1854f3316d7ee437b79649e5a6ae3ae14ffe6322b02d4987071a95362e","impliedFormat":1},{"version":"e208f73ef6a980104304b0d2ca5f6bf1b85de6009d2c7e404028b875020fa8f2","impliedFormat":1},{"version":"d163b6bc2372b4f07260747cbc6c0a6405ab3fbcea3852305e98ac43ca59f5bc","impliedFormat":1},{"version":"e6fa9ad47c5f71ff733744a029d1dc472c618de53804eae08ffc243b936f87ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"83e63d6ccf8ec004a3bb6d58b9bb0104f60e002754b1e968024b320730cc5311","impliedFormat":1},{"version":"24826ed94a78d5c64bd857570fdbd96229ad41b5cb654c08d75a9845e3ab7dde","impliedFormat":1},{"version":"8b479a130ccb62e98f11f136d3ac80f2984fdc07616516d29881f3061f2dd472","impliedFormat":1},{"version":"928af3d90454bf656a52a48679f199f64c1435247d6189d1caf4c68f2eaf921f","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac39df6dfb9e284bb0c205b15f4d9a2b260f5bab5c85bf2fb97d0cdd509c06ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"a3fc63c0d7b031693f665f5494412ba4b551fe644ededccc0ab5922401079c95","impliedFormat":1},{"version":"f27524f4bef4b6519c604bdb23bf4465bddcccbf3f003abb901acbd0d7404d99","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"dba28a419aec76ed864ef43e5f577a5c99a010c32e5949fe4e17a4d57c58dd11","affectsGlobalScope":true,"impliedFormat":1},{"version":"18fd40412d102c5564136f29735e5d1c3b455b8a37f920da79561f1fde068208","impliedFormat":1},{"version":"c959a391a75be9789b43c8468f71e3fa06488b4d691d5729dde1416dcd38225b","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"5ebe6f4cc3b803cbfc962bae0d954f9c80e5078ca41eb3f1de41d92e7193ef37","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"5b7aa3c4c1a5d81b411e8cb302b45507fea9358d3569196b27eb1a27ae3a90ef","affectsGlobalScope":true,"impliedFormat":1},{"version":"5987a903da92c7462e0b35704ce7da94d7fdc4b89a984871c0e2b87a8aae9e69","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea08a0345023ade2b47fbff5a76d0d0ed8bff10bc9d22b83f40858a8e941501c","impliedFormat":1},{"version":"47613031a5a31510831304405af561b0ffaedb734437c595256bb61a90f9311b","impliedFormat":1},{"version":"ae062ce7d9510060c5d7e7952ae379224fb3f8f2dd74e88959878af2057c143b","impliedFormat":1},{"version":"8a1a0d0a4a06a8d278947fcb66bf684f117bf147f89b06e50662d79a53be3e9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"9f663c2f91127ef7024e8ca4b3b4383ff2770e5f826696005de382282794b127","impliedFormat":1},{"version":"9f55299850d4f0921e79b6bf344b47c420ce0f507b9dcf593e532b09ea7eeea1","impliedFormat":1},{"version":"8caa5c86be1b793cd5f599e27ecb34252c41e011980f7d61ae4989a149ff6ccc","impliedFormat":1},{"version":"24259d3dae14de55d22f8b3d3e96954e5175a925ab6a830dc05a1993d4794eda","impliedFormat":1},{"version":"27e046d30d55669e9b5a325788a9b4073b05ce62607867754d2918af559a0877","impliedFormat":1},{"version":"be1cc4d94ea60cbe567bc29ed479d42587bf1e6cba490f123d329976b0fe4ee5","impliedFormat":1},{"version":"42bc0e1a903408137c3df2b06dfd7e402cdab5bbfa5fcfb871b22ebfdb30bd0b","impliedFormat":1},{"version":"9894dafe342b976d251aac58e616ac6df8db91fb9d98934ff9dd103e9e82578f","impliedFormat":1},{"version":"db6d2d9daad8a6d83f281af12ce4355a20b9a3e71b82b9f57cddcca0a8964a96","impliedFormat":1},{"version":"cfe4ef4710c3786b6e23dae7c086c70b4f4835a2e4d77b75d39f9046106e83d3","impliedFormat":1},{"version":"cbea99888785d49bb630dcbb1613c73727f2b5a2cf02e1abcaab7bcf8d6bf3c5","impliedFormat":1},{"version":"3a8bddb66b659f6bd2ff641fc71df8a8165bafe0f4b799cc298be5cd3755bb20","impliedFormat":1},{"version":"a86f82d646a739041d6702101afa82dcb935c416dd93cbca7fd754fd0282ce1f","impliedFormat":1},{"version":"2dad084c67e649f0f354739ec7df7c7df0779a28a4f55c97c6b6883ae850d1ce","impliedFormat":1},{"version":"fa5bbc7ab4130dd8cdc55ea294ec39f76f2bc507a0f75f4f873e38631a836ca7","impliedFormat":1},{"version":"df45ca1176e6ac211eae7ddf51336dc075c5314bc5c253651bae639defd5eec5","impliedFormat":1},{"version":"cf86de1054b843e484a3c9300d62fbc8c97e77f168bbffb131d560ca0474d4a8","impliedFormat":1},{"version":"196c960b12253fde69b204aa4fbf69470b26daf7a430855d7f94107a16495ab0","impliedFormat":1},{"version":"ee15ea5dd7a9fc9f5013832e5843031817a880bf0f24f37a29fd8337981aae07","impliedFormat":1},{"version":"bf24f6d35f7318e246010ffe9924395893c4e96d34324cde77151a73f078b9ad","impliedFormat":1},{"version":"ea53732769832d0f127ae16620bd5345991d26bf0b74e85e41b61b27d74ea90f","impliedFormat":1},{"version":"10595c7ff5094dd5b6a959ccb1c00e6a06441b4e10a87bc09c15f23755d34439","impliedFormat":1},{"version":"9620c1ff645afb4a9ab4044c85c26676f0a93e8c0e4b593aea03a89ccb47b6d0","impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":1},{"version":"a9af0e608929aaf9ce96bd7a7b99c9360636c31d73670e4af09a09950df97841","impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":1},{"version":"c86fe861cf1b4c46a0fb7d74dffe596cf679a2e5e8b1456881313170f092e3fa","impliedFormat":1},{"version":"08ed0b3f0166787f84a6606f80aa3b1388c7518d78912571b203817406e471da","impliedFormat":1},{"version":"47e5af2a841356a961f815e7c55d72554db0c11b4cba4d0caab91f8717846a94","impliedFormat":1},{"version":"65f43099ded6073336e697512d9b80f2d4fec3182b7b2316abf712e84104db00","impliedFormat":1},{"version":"f5f541902bf7ae0512a177295de9b6bcd6809ea38307a2c0a18bfca72212f368","impliedFormat":1},{"version":"b0decf4b6da3ebc52ea0c96095bdfaa8503acc4ac8e9081c5f2b0824835dd3bd","impliedFormat":1},{"version":"ca1b882a105a1972f82cc58e3be491e7d750a1eb074ffd13b198269f57ed9e1b","impliedFormat":1},{"version":"fc3e1c87b39e5ba1142f27ec089d1966da168c04a859a4f6aab64dceae162c2b","impliedFormat":1},{"version":"3b414b99a73171e1c4b7b7714e26b87d6c5cb03d200352da5342ab4088a54c85","impliedFormat":1},{"version":"61888522cec948102eba94d831c873200aa97d00d8989fdfd2a3e0ee75ec65a2","impliedFormat":1},{"version":"4e10622f89fea7b05dd9b52fb65e1e2b5cbd96d4cca3d9e1a60bb7f8a9cb86a1","impliedFormat":1},{"version":"74b2a5e5197bd0f2e0077a1ea7c07455bbea67b87b0869d9786d55104006784f","impliedFormat":1},{"version":"59bf32919de37809e101acffc120596a9e45fdbab1a99de5087f31fdc36e2f11","impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":1},{"version":"faa03dffb64286e8304a2ca96dd1317a77db6bfc7b3fb385163648f67e535d77","impliedFormat":1},{"version":"c40c848daad198266370c1c72a7a8c3d18d2f50727c7859fcfefd3ff69a7f288","impliedFormat":1},{"version":"ac60bbee0d4235643cc52b57768b22de8c257c12bd8c2039860540cab1fa1d82","impliedFormat":1},{"version":"6428e6edd944ce6789afdf43f9376c1f2e4957eea34166177625aaff4c0da1a0","impliedFormat":1},{"version":"ada39cbb2748ab2873b7835c90c8d4620723aedf323550e8489f08220e477c7f","impliedFormat":1},{"version":"6e5f5cee603d67ee1ba6120815497909b73399842254fc1e77a0d5cdc51d8c9c","impliedFormat":1},{"version":"8dba67056cbb27628e9b9a1cba8e57036d359dceded0725c72a3abe4b6c79cd4","impliedFormat":1},{"version":"70f3814c457f54a7efe2d9ce9d2686de9250bb42eb7f4c539bd2280a42e52d33","impliedFormat":1},{"version":"154dd2e22e1e94d5bc4ff7726706bc0483760bae40506bdce780734f11f7ec47","impliedFormat":1},{"version":"ef61792acbfa8c27c9bd113f02731e66229f7d3a169e3c1993b508134f1a58e0","impliedFormat":1},{"version":"9c82171d836c47486074e4ca8e059735bf97b205e70b196535b5efd40cbe1bc5","impliedFormat":1},{"version":"0131e203d8560edb39678abe10db42564a068f98c4ebd1ed9ffe7279c78b3c81","impliedFormat":1},{"version":"f6404e7837b96da3ea4d38c4f1a3812c96c9dcdf264e93d5bdb199f983a3ef4b","impliedFormat":1},{"version":"c5426dbfc1cf90532f66965a7aa8c1136a78d4d0f96d8180ecbfc11d7722f1a5","impliedFormat":1},{"version":"65a15fc47900787c0bd18b603afb98d33ede930bed1798fc984d5ebb78b26cf9","impliedFormat":1},{"version":"9d202701f6e0744adb6314d03d2eb8fc994798fc83d91b691b75b07626a69801","impliedFormat":1},{"version":"de9d2df7663e64e3a91bf495f315a7577e23ba088f2949d5ce9ec96f44fba37d","impliedFormat":1},{"version":"c7af78a2ea7cb1cd009cfb5bdb48cd0b03dad3b54f6da7aab615c2e9e9d570c5","impliedFormat":1},{"version":"1ee45496b5f8bdee6f7abc233355898e5bf9bd51255db65f5ff7ede617ca0027","impliedFormat":1},{"version":"8b8f00491431fe82f060dfe8c7f2180a9fb239f3d851527db909b83230e75882","affectsGlobalScope":true,"impliedFormat":1},{"version":"db01d18853469bcb5601b9fc9826931cc84cc1a1944b33cad76fd6f1e3d8c544","affectsGlobalScope":true,"impliedFormat":1},{"version":"dba114fb6a32b355a9cfc26ca2276834d72fe0e94cd2c3494005547025015369","impliedFormat":1},{"version":"903e299a28282fa7b714586e28409ed73c3b63f5365519776bf78e8cf173db36","affectsGlobalScope":true,"impliedFormat":1},{"version":"fa6c12a7c0f6b84d512f200690bfc74819e99efae69e4c95c4cd30f6884c526e","impliedFormat":1},{"version":"f1c32f9ce9c497da4dc215c3bc84b722ea02497d35f9134db3bb40a8d918b92b","impliedFormat":1},{"version":"b73c319af2cc3ef8f6421308a250f328836531ea3761823b4cabbd133047aefa","affectsGlobalScope":true,"impliedFormat":1},{"version":"e433b0337b8106909e7953015e8fa3f2d30797cea27141d1c5b135365bb975a6","impliedFormat":1},{"version":"dd3900b24a6a8745efeb7ad27629c0f8a626470ac229c1d73f1fe29d67e44dca","impliedFormat":1},{"version":"ddff7fc6edbdc5163a09e22bf8df7bef75f75369ebd7ecea95ba55c4386e2441","impliedFormat":1},{"version":"106c6025f1d99fd468fd8bf6e5bda724e11e5905a4076c5d29790b6c3745e50c","impliedFormat":1},{"version":"ec29be0737d39268696edcec4f5e97ce26f449fa9b7afc2f0f99a86def34a418","impliedFormat":1},{"version":"aeab39e8e0b1a3b250434c3b2bb8f4d17bbec2a9dbce5f77e8a83569d3d2cbc2","impliedFormat":1},{"version":"ec6cba1c02c675e4dd173251b156792e8d3b0c816af6d6ad93f1a55d674591aa","impliedFormat":1},{"version":"b620391fe8060cf9bedc176a4d01366e6574d7a71e0ac0ab344a4e76576fcbb8","impliedFormat":1},{"version":"d729408dfde75b451530bcae944cf89ee8277e2a9df04d1f62f2abfd8b03c1e1","impliedFormat":1},{"version":"e15d3c84d5077bb4a3adee4c791022967b764dc41cb8fa3cfa44d4379b2c95f5","impliedFormat":1},{"version":"5f58e28cd22e8fc1ac1b3bc6b431869f1e7d0b39e2c21fbf79b9fa5195a85980","impliedFormat":1},{"version":"e1fc1a1045db5aa09366be2b330e4ce391550041fc3e925f60998ca0b647aa97","impliedFormat":1},{"version":"63533978dcda286422670f6e184ac516805a365fb37a086eeff4309e812f1402","impliedFormat":1},{"version":"43ba4f2fa8c698f5c304d21a3ef596741e8e85a810b7c1f9b692653791d8d97a","impliedFormat":1},{"version":"31fb49ef3aa3d76f0beb644984e01eab0ea222372ea9b49bb6533be5722d756c","impliedFormat":1},{"version":"33cd131e1461157e3e06b06916b5176e7a8ec3fce15a5cfe145e56de744e07d2","impliedFormat":1},{"version":"889ef863f90f4917221703781d9723278db4122d75596b01c429f7c363562b86","impliedFormat":1},{"version":"3556cfbab7b43da96d15a442ddbb970e1f2fc97876d055b6555d86d7ac57dae5","impliedFormat":1},{"version":"437751e0352c6e924ddf30e90849f1d9eb00ca78c94d58d6a37202ec84eb8393","impliedFormat":1},{"version":"48e8af7fdb2677a44522fd185d8c87deff4d36ee701ea003c6c780b1407a1397","impliedFormat":1},{"version":"d11308de5a36c7015bb73adb5ad1c1bdaac2baede4cc831a05cf85efa3cc7f2f","impliedFormat":1},{"version":"38e4684c22ed9319beda6765bab332c724103d3a966c2e5e1c5a49cf7007845f","impliedFormat":1},{"version":"f9812cfc220ecf7557183379531fa409acd249b9e5b9a145d0d52b76c20862de","affectsGlobalScope":true,"impliedFormat":1},{"version":"e650298721abc4f6ae851e60ae93ee8199791ceec4b544c3379862f81f43178c","impliedFormat":1},{"version":"2e4f37ffe8862b14d8e24ae8763daaa8340c0df0b859d9a9733def0eee7562d9","impliedFormat":1},{"version":"13283350547389802aa35d9f2188effaeac805499169a06ef5cd77ce2a0bd63f","impliedFormat":1},{"version":"680793958f6a70a44c8d9ae7d46b7a385361c69ac29dcab3ed761edce1c14ab8","impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","impliedFormat":1},{"version":"42c169fb8c2d42f4f668c624a9a11e719d5d07dacbebb63cbcf7ef365b0a75b3","impliedFormat":1},{"version":"913ddbba170240070bd5921b8f33ea780021bdf42fbdfcd4fcb2691b1884ddde","impliedFormat":1},{"version":"b4e6d416466999ff40d3fe5ceb95f7a8bfb7ac2262580287ac1a8391e5362431","impliedFormat":1},{"version":"5fe23bd829e6be57d41929ac374ee9551ccc3c44cee893167b7b5b77be708014","impliedFormat":1},{"version":"0a626484617019fcfbfc3c1bc1f9e84e2913f1adb73692aa9075817404fb41a1","impliedFormat":1},{"version":"438c7513b1df91dcef49b13cd7a1c4720f91a36e88c1df731661608b7c055f10","impliedFormat":1},{"version":"cf185cc4a9a6d397f416dd28cca95c227b29f0f27b160060a95c0e5e36cda865","impliedFormat":1},{"version":"0086f3e4ad898fd7ca56bb223098acfacf3fa065595182aaf0f6c4a6a95e6fbd","impliedFormat":1},{"version":"efaa078e392f9abda3ee8ade3f3762ab77f9c50b184e6883063a911742a4c96a","impliedFormat":1},{"version":"54a8bb487e1dc04591a280e7a673cdfb272c83f61e28d8a64cf1ac2e63c35c51","impliedFormat":1},{"version":"021a9498000497497fd693dd315325484c58a71b5929e2bbb91f419b04b24cea","impliedFormat":1},{"version":"9385cdc09850950bc9b59cca445a3ceb6fcca32b54e7b626e746912e489e535e","impliedFormat":1},{"version":"2894c56cad581928bb37607810af011764a2f511f575d28c9f4af0f2ef02d1ab","impliedFormat":1},{"version":"0a72186f94215d020cb386f7dca81d7495ab6c17066eb07d0f44a5bf33c1b21a","impliedFormat":1},{"version":"84124384abae2f6f66b7fbfc03862d0c2c0b71b826f7dbf42c8085d31f1d3f95","impliedFormat":1},{"version":"63a8e96f65a22604eae82737e409d1536e69a467bb738bec505f4f97cce9d878","impliedFormat":1},{"version":"3fd78152a7031315478f159c6a5872c712ece6f01212c78ea82aef21cb0726e2","impliedFormat":1},{"version":"b01bd582a6e41457bc56e6f0f9de4cb17f33f5f3843a7cf8210ac9c18472fb0f","impliedFormat":1},{"version":"58b49e5c1def740360b5ae22ae2405cfac295fee74abd88d74ac4ea42502dc03","impliedFormat":1},{"version":"512fc15cca3a35b8dbbf6e23fe9d07e6f87ad03c895acffd3087ce09f352aad0","impliedFormat":1},{"version":"9a0946d15a005832e432ea0cd4da71b57797efb25b755cc07f32274296d62355","impliedFormat":1},{"version":"a52ff6c0a149e9f370372fc3c715d7f2beee1f3bab7980e271a7ab7d313ec677","impliedFormat":1},{"version":"fd933f824347f9edd919618a76cdb6a0c0085c538115d9a287fa0c7f59957ab3","impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","impliedFormat":1},{"version":"6a1aa3e55bdc50503956c5cd09ae4cd72e3072692d742816f65c66ca14f4dfdd","impliedFormat":1},{"version":"ab75cfd9c4f93ffd601f7ca1753d6a9d953bbedfbd7a5b3f0436ac8a1de60dfa","impliedFormat":1},{"version":"f95180f03d827525ca4f990f49e17ec67198c316dd000afbe564655141f725cd","impliedFormat":1},{"version":"b73cbf0a72c8800cf8f96a9acfe94f3ad32ca71342a8908b8ae484d61113f647","impliedFormat":1},{"version":"bae6dd176832f6423966647382c0d7ba9e63f8c167522f09a982f086cd4e8b23","impliedFormat":1},{"version":"1364f64d2fb03bbb514edc42224abd576c064f89be6a990136774ecdd881a1da","impliedFormat":1},{"version":"c9958eb32126a3843deedda8c22fb97024aa5d6dd588b90af2d7f2bfac540f23","impliedFormat":1},{"version":"950fb67a59be4c2dbe69a5786292e60a5cb0e8612e0e223537784c731af55db1","impliedFormat":1},{"version":"e927c2c13c4eaf0a7f17e6022eee8519eb29ef42c4c13a31e81a611ab8c95577","impliedFormat":1},{"version":"07ca44e8d8288e69afdec7a31fa408ce6ab90d4f3d620006701d5544646da6aa","impliedFormat":1},{"version":"70246ad95ad8a22bdfe806cb5d383a26c0c6e58e7207ab9c431f1cb175aca657","impliedFormat":1},{"version":"f00f3aa5d64ff46e600648b55a79dcd1333458f7a10da2ed594d9f0a44b76d0b","impliedFormat":1},{"version":"772d8d5eb158b6c92412c03228bd9902ccb1457d7a705b8129814a5d1a6308fc","impliedFormat":1},{"version":"4e4475fba4ed93a72f167b061cd94a2e171b82695c56de9899275e880e06ba41","impliedFormat":1},{"version":"97c5f5d580ab2e4decd0a3135204050f9b97cd7908c5a8fbc041eadede79b2fa","impliedFormat":1},{"version":"c99a3a5f2215d5b9d735aa04cec6e61ed079d8c0263248e298ffe4604d4d0624","impliedFormat":1},{"version":"49b2375c586882c3ac7f57eba86680ff9742a8d8cb2fe25fe54d1b9673690d41","impliedFormat":1},{"version":"802e797bcab5663b2c9f63f51bdf67eff7c41bc64c0fd65e6da3e7941359e2f7","impliedFormat":1},{"version":"847e160d709c74cc714fbe1f99c41d3425b74cd47b1be133df1623cd87014089","impliedFormat":1},{"version":"9fee04f1e1afa50524862289b9f0b0fdc3735b80e2a0d684cec3b9ff3d94cecc","impliedFormat":1},{"version":"5cdc27fbc5c166fc5c763a30ac21cbac9859dc5ba795d3230db6d4e52a1965bb","impliedFormat":1},{"version":"6459054aabb306821a043e02b89d54da508e3a6966601a41e71c166e4ea1474f","impliedFormat":1},{"version":"f416c9c3eee9d47ff49132c34f96b9180e50485d435d5748f0e8b72521d28d2e","impliedFormat":1},{"version":"05c97cddbaf99978f83d96de2d8af86aded9332592f08ce4a284d72d0952c391","impliedFormat":1},{"version":"14e5cdec6f8ae82dfd0694e64903a0a54abdfe37e1d966de3d4128362acbf35f","impliedFormat":1},{"version":"bbc183d2d69f4b59fd4dd8799ffdf4eb91173d1c4ad71cce91a3811c021bf80c","impliedFormat":1},{"version":"7b6ff760c8a240b40dab6e4419b989f06a5b782f4710d2967e67c695ef3e93c4","impliedFormat":1},{"version":"8dbc4134a4b3623fc476be5f36de35c40f2768e2e3d9ed437e0d5f1c4cd850f6","impliedFormat":1},{"version":"4e06330a84dec7287f7ebdd64978f41a9f70a668d3b5edc69d5d4a50b9b376bb","impliedFormat":1},{"version":"65bfa72967fbe9fc33353e1ac03f0480aa2e2ea346d61ff3ea997dfd850f641a","impliedFormat":1},{"version":"c06f0bb92d1a1a5a6c6e4b5389a5664d96d09c31673296cb7da5fe945d54d786","impliedFormat":1},{"version":"f974e4a06953682a2c15d5bd5114c0284d5abf8bc0fe4da25cb9159427b70072","impliedFormat":1},{"version":"872caaa31423f4345983d643e4649fb30f548e9883a334d6d1c5fff68ede22d4","impliedFormat":1},{"version":"94404c4a878fe291e7578a2a80264c6f18e9f1933fbb57e48f0eb368672e389c","impliedFormat":1},{"version":"5c1b7f03aa88be854bc15810bfd5bd5a1943c5a7620e1c53eddd2a013996343e","impliedFormat":1},{"version":"09dfc64fcd6a2785867f2368419859a6cc5a8d4e73cbe2538f205b1642eb0f51","impliedFormat":1},{"version":"bcf6f0a323653e72199105a9316d91463ad4744c546d1271310818b8cef7c608","impliedFormat":1},{"version":"01aa917531e116485beca44a14970834687b857757159769c16b228eb1e49c5f","impliedFormat":1},{"version":"351475f9c874c62f9b45b1f0dc7e2704e80dfd5f1af83a3a9f841f9dfe5b2912","impliedFormat":1},{"version":"ac457ad39e531b7649e7b40ee5847606eac64e236efd76c5d12db95bf4eacd17","impliedFormat":1},{"version":"187a6fdbdecb972510b7555f3caacb44b58415da8d5825d03a583c4b73fde4cf","impliedFormat":1},{"version":"d4c3250105a612202289b3a266bb7e323db144f6b9414f9dea85c531c098b811","impliedFormat":1},{"version":"95b444b8c311f2084f0fb51c616163f950fb2e35f4eaa07878f313a2d36c98a4","impliedFormat":1},{"version":"741067675daa6d4334a2dc80a4452ca3850e89d5852e330db7cb2b5f867173b1","impliedFormat":1},{"version":"f8acecec1114f11690956e007d920044799aefeb3cece9e7f4b1f8a1d542b2c9","impliedFormat":1},{"version":"178071ccd043967a58c5d1a032db0ddf9bd139e7920766b537d9783e88eb615e","impliedFormat":1},{"version":"3a17f09634c50cce884721f54fd9e7b98e03ac505889c560876291fcf8a09e90","impliedFormat":1},{"version":"32531dfbb0cdc4525296648f53b2b5c39b64282791e2a8c765712e49e6461046","impliedFormat":1},{"version":"0ce1b2237c1c3df49748d61568160d780d7b26693bd9feb3acb0744a152cd86d","impliedFormat":1},{"version":"e489985388e2c71d3542612685b4a7db326922b57ac880f299da7026a4e8a117","impliedFormat":1},{"version":"5cad4158616d7793296dd41e22e1257440910ea8d01c7b75045d4dfb20c5a41a","impliedFormat":1},{"version":"04d3aad777b6af5bd000bfc409907a159fe77e190b9d368da4ba649cdc28d39e","affectsGlobalScope":true,"impliedFormat":1},{"version":"74efc1d6523bd57eb159c18d805db4ead810626bc5bc7002a2c7f483044b2e0f","impliedFormat":1},{"version":"19252079538942a69be1645e153f7dbbc1ef56b4f983c633bf31fe26aeac32cd","impliedFormat":1},{"version":"bc11f3ac00ac060462597add171220aed628c393f2782ac75dd29ff1e0db871c","impliedFormat":1},{"version":"616775f16134fa9d01fc677ad3f76e68c051a056c22ab552c64cc281a9686790","impliedFormat":1},{"version":"65c24a8baa2cca1de069a0ba9fba82a173690f52d7e2d0f1f7542d59d5eb4db0","impliedFormat":1},{"version":"f9fe6af238339a0e5f7563acee3178f51db37f32a2e7c09f85273098cee7ec49","impliedFormat":1},{"version":"3b0b1d352b8d2e47f1c4df4fb0678702aee071155b12ef0185fce9eb4fa4af1e","impliedFormat":1},{"version":"77e71242e71ebf8528c5802993697878f0533db8f2299b4d36aa015bae08a79c","impliedFormat":1},{"version":"a344403e7a7384e0e7093942533d309194ad0a53eca2a3100c0b0ab4d3932773","impliedFormat":1},{"version":"b7fff2d004c5879cae335db8f954eb1d61242d9f2d28515e67902032723caeab","impliedFormat":1},{"version":"5f3dc10ae646f375776b4e028d2bed039a93eebbba105694d8b910feebbe8b9c","impliedFormat":1},{"version":"bb18bf4a61a17b4a6199eb3938ecfa4a59eb7c40843ad4a82b975ab6f7e3d925","impliedFormat":1},{"version":"4545c1a1ceca170d5d83452dd7c4994644c35cf676a671412601689d9a62da35","impliedFormat":1},{"version":"e9b6fc05f536dfddcdc65dbcf04e09391b1c968ab967382e48924f5cb90d88e1","impliedFormat":1},{"version":"a2d648d333cf67b9aeac5d81a1a379d563a8ffa91ddd61c6179f68de724260ff","impliedFormat":1},{"version":"2b664c3cc544d0e35276e1fb2d4989f7d4b4027ffc64da34ec83a6ccf2e5c528","impliedFormat":1},{"version":"a3f41ed1b4f2fc3049394b945a68ae4fdefd49fa1739c32f149d32c0545d67f5","impliedFormat":1},{"version":"3cd8f0464e0939b47bfccbb9bb474a6d87d57210e304029cd8eb59c63a81935d","impliedFormat":1},{"version":"47699512e6d8bebf7be488182427189f999affe3addc1c87c882d36b7f2d0b0e","impliedFormat":1},{"version":"3026abd48e5e312f2328629ede6e0f770d21c3cd32cee705c450e589d015ee09","impliedFormat":1},{"version":"8b140b398a6afbd17cc97c38aea5274b2f7f39b1ae5b62952cfe65bf493e3e75","impliedFormat":1},{"version":"7663d2c19ce5ef8288c790edba3d45af54e58c84f1b37b1249f6d49d962f3d91","impliedFormat":1},{"version":"5cce3b975cdb72b57ae7de745b3c5de5790781ee88bcb41ba142f07c0fa02e97","impliedFormat":1},{"version":"00bd6ebe607246b45296aa2b805bd6a58c859acecda154bfa91f5334d7c175c6","impliedFormat":1},{"version":"ad036a85efcd9e5b4f7dd5c1a7362c8478f9a3b6c3554654ca24a29aa850a9c5","impliedFormat":1},{"version":"fedebeae32c5cdd1a85b4e0504a01996e4a8adf3dfa72876920d3dd6e42978e7","impliedFormat":1},{"version":"0d28b974a7605c4eda20c943b3fa9ae16cb452c1666fc9b8c341b879992c7612","impliedFormat":1},{"version":"cdf21eee8007e339b1b9945abf4a7b44930b1d695cc528459e68a3adc39a622e","impliedFormat":1},{"version":"db036c56f79186da50af66511d37d9fe77fa6793381927292d17f81f787bb195","impliedFormat":1},{"version":"87ac2fb61e629e777f4d161dff534c2023ee15afd9cb3b1589b9b1f014e75c58","impliedFormat":1},{"version":"13c8b4348db91e2f7d694adc17e7438e6776bc506d5c8f5de9ad9989707fa3fe","impliedFormat":1},{"version":"3c1051617aa50b38e9efaabce25e10a5dd9b1f42e372ef0e8a674076a68742ed","impliedFormat":1},{"version":"07a3e20cdcb0f1182f452c0410606711fbea922ca76929a41aacb01104bc0d27","impliedFormat":1},{"version":"1de80059b8078ea5749941c9f863aa970b4735bdbb003be4925c853a8b6b4450","impliedFormat":1},{"version":"1d079c37fa53e3c21ed3fa214a27507bda9991f2a41458705b19ed8c2b61173d","impliedFormat":1},{"version":"4cd4b6b1279e9d744a3825cbd7757bbefe7f0708f3f1069179ad535f19e8ed2c","impliedFormat":1},{"version":"5835a6e0d7cd2738e56b671af0e561e7c1b4fb77751383672f4b009f4e161d70","impliedFormat":1},{"version":"c0eeaaa67c85c3bb6c52b629ebbfd3b2292dc67e8c0ffda2fc6cd2f78dc471e6","impliedFormat":1},{"version":"4b7f74b772140395e7af67c4841be1ab867c11b3b82a51b1aeb692822b76c872","impliedFormat":1},{"version":"27be6622e2922a1b412eb057faa854831b95db9db5035c3f6d4b677b902ab3b7","impliedFormat":1},{"version":"b95a6f019095dd1d48fd04965b50dfd63e5743a6e75478343c46d2582a5132bf","impliedFormat":99},{"version":"c2008605e78208cfa9cd70bd29856b72dda7ad89df5dc895920f8e10bcb9cd0a","impliedFormat":99},{"version":"b97cb5616d2ab82a98ec9ada7b9e9cabb1f5da880ec50ea2b8dc5baa4cbf3c16","impliedFormat":99},{"version":"d23df9ff06ae8bf1dcb7cc933e97ae7da418ac77749fecee758bb43a8d69f840","affectsGlobalScope":true,"impliedFormat":1},{"version":"040c71dde2c406f869ad2f41e8d4ce579cc60c8dbe5aa0dd8962ac943b846572","affectsGlobalScope":true,"impliedFormat":1},{"version":"3586f5ea3cc27083a17bd5c9059ede9421d587286d5a47f4341a4c2d00e4fa91","impliedFormat":1},{"version":"a6df929821e62f4719551f7955b9f42c0cd53c1370aec2dd322e24196a7dfe33","impliedFormat":1},{"version":"b789bf89eb19c777ed1e956dbad0925ca795701552d22e68fd130a032008b9f9","impliedFormat":1},"9dd9d642cdb87d4d5b3173217e0c45429b3e47a6f5cf5fb0ead6c644ec5fed01","92bbf881f59532559f62bc85b87d4419508ae7fc07ce3d7f2ad435a8c8dcebcc",{"version":"3f124f6fe4bd62deac27e4f0ec83ea1c95f6a65f1c8131b236f8a3193e1cb99c","signature":"fe30465f81a37f23a168022109187dbd1951404e3ec2fbc6516d584c597f1325"},{"version":"acfb723d81eda39156251aed414c553294870bf53062429ebfcfba8a68cb4753","impliedFormat":99},{"version":"fa69a90381c2f85889722a911a732a5ee3596dc3acecda8a9aa2fa89b9615d8d","impliedFormat":99},{"version":"b5ce343886d23392be9c8280e9f24a87f1d7d3667f6672c2fe4aa61fa4ece7d4","impliedFormat":99},{"version":"57e9e1b0911874c62d743af24b5d56032759846533641d550b12a45ff404bf07","impliedFormat":99},{"version":"b0857bb28fd5236ace84280f79a25093f919fd0eff13e47cc26ea03de60a7294","impliedFormat":99},{"version":"5e43e0824f10cd8c48e7a8c5c673638488925a12c31f0f9e0957965c290eb14c","impliedFormat":99},{"version":"c1fd7031b552b2dc316777015b90cabd66d039f5b6180f113abcda2e9c4c5682","impliedFormat":99},{"version":"ef13c73d6157a32933c612d476c1524dd674cf5b9a88571d7d6a0d147544d529","impliedFormat":99},{"version":"3b0a56d056d81a011e484b9c05d5e430711aaecd561a788bad1d0498aad782c7","impliedFormat":99},{"version":"2a4496501483ce6319308e30cb7b8f291a0762dbc2ef0152acebd5dc443a717f","impliedFormat":99},{"version":"aaf4bae415638b2eac64cbf60b9af15808b8784b502959064cc84ff834194da9","impliedFormat":99},{"version":"31fd7c12f6e27154efb52a916b872509a771880f3b20f2dfd045785c13aa813f","impliedFormat":99},{"version":"b481de4ab5379bd481ca12fc0b255cdc47341629a22c240a89cdb4e209522be2","impliedFormat":99},{"version":"bdd14f07b4eca0b4b5203b85b8dbc4d084c749fa590bee5ea613e1641dcd3b29","impliedFormat":99},{"version":"427fe2004642504828c1476d0af4270e6ad4db6de78c0b5da3e4c5ca95052a99","impliedFormat":1},{"version":"2eeffcee5c1661ddca53353929558037b8cf305ffb86a803512982f99bcab50d","impliedFormat":99},{"version":"9afb4cb864d297e4092a79ee2871b5d3143ea14153f62ef0bb04ede25f432030","affectsGlobalScope":true,"impliedFormat":99},{"version":"4e258d11c899cb9ff36b4b5c53df59cf4a5ccae9a9931529686e77431e0a3518","affectsGlobalScope":true,"impliedFormat":99},{"version":"a7ca8df4f2931bef2aa4118078584d84a0b16539598eaadf7dce9104dfaa381c","impliedFormat":1},{"version":"10073cdcf56982064c5337787cc59b79586131e1b28c106ede5bff362f912b70","impliedFormat":99},{"version":"72950913f4900b680f44d8cab6dd1ea0311698fc1eefb014eb9cdfc37ac4a734","impliedFormat":1},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1},{"version":"4e741b9c88e80c9e4cedf07b5a698e8e3a3bd73cf649f664d6dd3f868c05c2f3","affectsGlobalScope":true,"impliedFormat":1},{"version":"a660aa95476042d3fdcc1343cf6bb8fdf24772d31712b1db321c5a4dcc325434","impliedFormat":1},{"version":"36977c14a7f7bfc8c0426ae4343875689949fb699f3f84ecbe5b300ebf9a2c55","impliedFormat":1},{"version":"ff0a83c9a0489a627e264ffcb63f2264b935b20a502afa3a018848139e3d8575","impliedFormat":99},{"version":"161c8e0690c46021506e32fda85956d785b70f309ae97011fd27374c065cac9b","affectsGlobalScope":true,"impliedFormat":1},{"version":"f582b0fcbf1eea9b318ab92fb89ea9ab2ebb84f9b60af89328a91155e1afce72","impliedFormat":1},{"version":"402e5c534fb2b85fa771170595db3ac0dd532112c8fa44fc23f233bc6967488b","impliedFormat":1},{"version":"8885cf05f3e2abf117590bbb951dcf6359e3e5ac462af1c901cfd24c6a6472e2","impliedFormat":1},{"version":"333caa2bfff7f06017f114de738050dd99a765c7eb16571c6d25a38c0d5365dc","impliedFormat":1},{"version":"e61df3640a38d535fd4bc9f4a53aef17c296b58dc4b6394fd576b808dd2fe5e6","impliedFormat":1},{"version":"459920181700cec8cbdf2a5faca127f3f17fd8dd9d9e577ed3f5f3af5d12a2e4","impliedFormat":1},{"version":"4719c209b9c00b579553859407a7e5dcfaa1c472994bd62aa5dd3cc0757eb077","impliedFormat":1},{"version":"7ec359bbc29b69d4063fe7dad0baaf35f1856f914db16b3f4f6e3e1bca4099fa","impliedFormat":1},{"version":"70790a7f0040993ca66ab8a07a059a0f8256e7bb57d968ae945f696cbff4ac7a","impliedFormat":1},{"version":"d1b9a81e99a0050ca7f2d98d7eedc6cda768f0eb9fa90b602e7107433e64c04c","impliedFormat":1},{"version":"a022503e75d6953d0e82c2c564508a5c7f8556fad5d7f971372d2d40479e4034","impliedFormat":1},{"version":"b215c4f0096f108020f666ffcc1f072c81e9f2f95464e894a5d5f34c5ea2a8b1","impliedFormat":1},{"version":"644491cde678bd462bb922c1d0cfab8f17d626b195ccb7f008612dc31f445d2d","impliedFormat":1},{"version":"dfe54dab1fa4961a6bcfba68c4ca955f8b5bbeb5f2ab3c915aa7adaa2eabc03a","impliedFormat":1},{"version":"1251d53755b03cde02466064260bb88fd83c30006a46395b7d9167340bc59b73","impliedFormat":1},{"version":"47865c5e695a382a916b1eedda1b6523145426e48a2eae4647e96b3b5e52024f","impliedFormat":1},{"version":"4cdf27e29feae6c7826cdd5c91751cc35559125e8304f9e7aed8faef97dcf572","impliedFormat":1},{"version":"331b8f71bfae1df25d564f5ea9ee65a0d847c4a94baa45925b6f38c55c7039bf","impliedFormat":1},{"version":"2a771d907aebf9391ac1f50e4ad37952943515eeea0dcc7e78aa08f508294668","impliedFormat":1},{"version":"0146fd6262c3fd3da51cb0254bb6b9a4e42931eb2f56329edd4c199cb9aaf804","impliedFormat":1},{"version":"183f480885db5caa5a8acb833c2be04f98056bdcc5fb29e969ff86e07efe57ab","impliedFormat":99},{"version":"ee9636a7d8dc2c2c3a74924205ede5ab3437100f1f9d4379098b4972987e0ac6","impliedFormat":1},{"version":"71b110829b8f5e7653352a132544ece2b9a10e93ba1c77453187673bd46f13ee","impliedFormat":1},{"version":"7b0537621a997a853ead2b46a4d85e654beeb96b9d034ea09bf3387348521d40","impliedFormat":1},{"version":"1223780c318ef42fd33ac772996335ed92d57cf7c0fc73178acab5e154971aab","impliedFormat":1},{"version":"0d04cbe88c8a25c2debd2eef03ec5674563e23ca9323fa82ede3577822653bd2","impliedFormat":1},{"version":"aaa70439f135c3fa0a34313de49e94cae3db954c8b8d6af0d56a46c998c2923f","impliedFormat":1},{"version":"2cee3ea4c39a53326148e6e78109affd48fa69eae386871c1f440315a6120f40","impliedFormat":1},{"version":"daf07c1ca8ccfb21ad958833546a4f414c418fe096dcebdbb90b02e12aa5c3a2","impliedFormat":1},{"version":"89ac5224feeb2de76fc52fc2a91c5f6448a98dbe4e8d726ecb1730fa64cd2d30","impliedFormat":1},{"version":"3d59c264069a6af79288388633738630aa72e853e450e43f151ee092216d263d","impliedFormat":1},{"version":"acf00cfabe8c4de18bea655754ea39c4d04140257556bbf283255b695d00e36f","impliedFormat":1},{"version":"39b70d5f131fcfdeba404ee63aba25f26d8376a73bacd8275fb5a9f06219ac77","impliedFormat":1},{"version":"cdae26c737cf4534eeec210e42eab2d5f0c3855240d8dde3be4aee9194e4e781","impliedFormat":1},{"version":"5aa0c50083d0d9a423a46afaef78c7f42420759cfa038ad40e8b9e6cafc38831","impliedFormat":1},{"version":"10d6a49a99a593678ba4ea6073d53d005adfc383df24a9e93f86bf47de6ed857","impliedFormat":1},{"version":"1b7ea32849a7982047c2e5d372300a4c92338683864c9ab0f5bbd1acadae83a3","impliedFormat":1},{"version":"224083e6fcec1d300229da3d1dafc678c642863996cbfed7290df20954435a55","impliedFormat":1},{"version":"4248ac3167b1a1ce199fda9307abc314b3132527aeb94ec30dbcfe4c6a417b1b","impliedFormat":1},{"version":"c1606128c2ac5c6a3cc2cc24c4582a437141a8ed6542d7f5cbb7623835939831","impliedFormat":1},{"version":"ca055d26105248f745ea6259b4c498ebeed18c9b772e7f2b3a16f50226ff9078","impliedFormat":1},{"version":"ea6b2badb951d6dfa24bb7d7eb733327e5f9a15fc994d6dc1c54b2c7a83b6a0b","impliedFormat":1},{"version":"03fdf8dba650d830388b9985750d770dd435f95634717f41cea814863a9ac98b","impliedFormat":1},{"version":"6fd08e3ef1568cd0dc735c9015f6765e25143a4a0331d004a29c51b50eec402a","impliedFormat":1},{"version":"2e988cd4d24edac4936449630581c79686c8adac10357eb0cdb410c24f47c7f0","impliedFormat":1},{"version":"b813f62a37886ed986b0f6f8c5bf323b3fcae32c1952b71d75741e74ea9353cf","impliedFormat":1},{"version":"44a1a722038365972b1b52841e1132785bf5d75839dbc6cc1339f2d36f8507a1","impliedFormat":1},{"version":"83fe1053701101ac6d25364696fea50d2ceb2f81d1456bc11e682a20aaeac52e","impliedFormat":1},{"version":"4f228cb2089a5a135a1a8cefe612d5aebcef8258f7dbe3b7c4dad4e26a81ec08","impliedFormat":1},{"version":"960bd764c62ac43edc24eaa2af958a4b4f1fa5d27df5237e176d0143b36a39c6","affectsGlobalScope":true,"impliedFormat":1},{"version":"f7eebe1b25040d805aefe8971310b805cd49b8602ec206d25b38dc48c542f165","impliedFormat":1},{"version":"a18642ddf216f162052a16cba0944892c4c4c977d3306a87cb673d46abbb0cbf","impliedFormat":1},{"version":"509f8efdfc5f9f6b52284170e8d7413552f02d79518d1db691ee15acc0088676","impliedFormat":1},{"version":"4ec16d7a4e366c06a4573d299e15fe6207fc080f41beac5da06f4af33ea9761e","impliedFormat":1},{"version":"59f8dc89b9e724a6a667f52cdf4b90b6816ae6c9842ce176d38fcc973669009e","affectsGlobalScope":true,"impliedFormat":1},{"version":"e4af494f7a14b226bbe732e9c130d8811f8c7025911d7c58dd97121a85519715","impliedFormat":1},{"version":"c1d587d31636bf51527d349f4786a36472e5aa311add673073c833c9853493c8","impliedFormat":99},{"version":"324ac98294dab54fbd580c7d0e707d94506d7b2c3d5efe981a8495f02cf9ad96","impliedFormat":99},{"version":"9ec72eb493ff209b470467e24264116b6a8616484bca438091433a545dfba17e","impliedFormat":99},{"version":"c35b8117804c639c53c87f2c23e0c786df61d552e513bd5179f5b88e29964838","impliedFormat":99},{"version":"ac3d263474022e9a14c43f588f485d549641d839b159ecc971978b90f34bdf6b","impliedFormat":99},{"version":"67acaedb46832d66c15f1b09fb7b6a0b7f41bdbf8eaa586ec70459b3e8896eb9","impliedFormat":99},{"version":"2c2aee81ffcfc4043d5cbe3f4e9cfc355702696daa0c1e048f28ebe238439888","impliedFormat":99},{"version":"bcbd3becd08b4515225880abea0dbfbbf0d1181ce3af8f18f72f61edbe4febfb","impliedFormat":99},{"version":"120691e18e74cd38583ebbffec0e2174ca67e0856a9bb2a509c83f3eaeb6be32","impliedFormat":99},{"version":"66651e869f7a54fc473ebdb67cab2716d977427de000f01bd1d5d66b509f388c","impliedFormat":99},{"version":"213a00d511892898e9dad3c98efe3b1de230f171b9e91496faca3e40e27ef6a7","impliedFormat":99},{"version":"62486ec77ac020b82d5a65a270096bb7f2a1fd0627a89f29c5a5d3cbd6bd1f59","impliedFormat":99},{"version":"c637a793905f02d354b640fae41a6ae79395ed0d77fbb87c36d9664ecbd95ac1","impliedFormat":99},{"version":"437b7613a30a2fcde463f7b707c6d5567a8823fbc51de50b8641bf5b1d126fad","impliedFormat":99},{"version":"63ea959e28c110923f495576e614fb8b36c09b6828b467b2c7cd7f03b03ccf9f","impliedFormat":99},{"version":"1601a95dbb33059fc3d12638ed2a9aecff899e339c5c0f3a0b28768866d385b4","impliedFormat":99},{"version":"a8dd232837b1d83f76a47a5193c1afd9e17b9bf352cb84345f86f7759ee346d0","impliedFormat":99},{"version":"b216abddc725b65d7a85bcd9b0e4e49ebea25f619df97009c0ce4d96077caf59","impliedFormat":99},{"version":"45f770f2ae71acc1cacfac137f50911e1a004ccba52b2b55c4432c0d4bd97814","impliedFormat":99},{"version":"8124828a11be7db984fcdab052fd4ff756b18edcfa8d71118b55388176210923","impliedFormat":99},{"version":"63698bd35668e3c37e4df59dc3fbf251f0fc71053d168779a1e1e71803c759f6","impliedFormat":99},{"version":"69bf2422313487956e4dacf049f30cb91b34968912058d244cb19e4baa24da97","impliedFormat":99},{"version":"6987dfb4b0c4e02112cc4e548e7a77b3d9ddfeffa8c8a2db13ceac361a4567d9","impliedFormat":99},{"version":"b62006bbc815fe8190c7aee262aad6bff993e3f9ade70d7057dfceab6de79d2f","impliedFormat":99},{"version":"a6afb03666673e6ff34cbefac1e869aa9cdb614712eada7dd99cac9a4a9a2858","impliedFormat":99},{"version":"5c96a6cd08f1f516947da811dead345471f1f2a33ec6aafbd3d337f6e93c56ce","impliedFormat":99},{"version":"2e3906b6125821869aecb43c85d8bfd6b0e5c7b3ab92c77c2e1e051ba8ae975c","impliedFormat":99},{"version":"7bbff6783e96c691a41a7cf12dd5486b8166a01b0c57d071dbcfca55c9525ec4","impliedFormat":99},{"version":"67a2f63ce5bce668c9e7a6bd044b433db1f364784d6e99519a54527ae6d7e702","signature":"4b96dd19fd2949d28ce80e913412b0026dc421e5bf6c31d87c7b5eb11b5753b4"},"7f3b83abd03f565809de55af3b04a0f16948eb94a06a21b6ce5afa3d19d5cd5f",{"version":"441ef2c5177400e49382529bf27dd1d78ff9b64f9fb84006ff8c3e0012646452","signature":"18ef997892f9ef213c9bbb5805b13115b1f30fba7eb8ed3fa6175c32fcfac962"},{"version":"593654eebe902db28ca173f021f74ea9f77e8b344aebb0a80fa4d10f29bb3a9d","impliedFormat":1},{"version":"bd7118b23c7ca758c13baa899542dd71dc88fc232a5ef42507198c77174ca82e","signature":"f9bfd32fe1fce300a79e873c2aae46231dedb2d1d984a91d297c3c4dc85124ba"},{"version":"d166555316fb0743940e53bb4d9343c6e3e868efd1d7b6a7ae3d269162f82ea5","signature":"1ab796d981ec4f706c40196edcc6b445324726128ca535bb2268fc69c2c2aaf3"},"d9ee6865abb083345b315611d281759b6ca4927f7a8841a955f480824382acf6",{"version":"ff5363859011755bd556e6db941a53a3b7363064a3ffe623e45ac60cef6f0794","impliedFormat":1},"de40d343fe24261a80ed463a4e10a70d9f277a03a546c847278f5801200aa085",{"version":"c57b441e0c0a9cbdfa7d850dae1f8a387d6f81cbffbc3cd0465d530084c2417d","impliedFormat":99},{"version":"51954e948be6a5b728fcfaf561f12331b4f54f068934c77adfc8f70eea17d285","impliedFormat":1},"0468f04c5295074be9639eb58dd56d0105acceb366d25255fec5017655459db6","4f5dff87e1d3a751a90831a6f20268d2a1e5ae4f5998b01db1f7e53a02e7b963","3a20edc929de7bcfca0f4b170b36d023b2e8f2cdbc84a93645b8fa1786a66934","89607141a170318352556d4dd8f0ef2b96111f0e5f8256989253b41ad7705863","b534d1021c20421e9d4a283d4ca520aaf39b62870293bbdfa0b0acf1fe18e99b","405d5cd1c896007a92f6f59d335e490297a482d6c2f5d491c7fdd5953607b249","1d3e8eaed62ec55eb67045e9b5d7b970cb2139e40af451b9e11981ea429a968c","6ad818edaa9934a79c56b55c0fde34d320b9e230f066d0df86c3d2791ffeb851",{"version":"1fd7bfea6c425ce8ec33a7d92edae59f10bc09f86ae01658447509d09ca663f1","impliedFormat":1},"fe99dba8d53f1565aa1ebff0067703e6b6f824b268b944e4e948e88b1e962c26","251c713799e307d4b5e5538c5d80fe92dcec8f7601b07e5ded0183167be8d3b2","1815f44d2a19a655718aac5750237927851a4850d4e9c88770e3112c84c3d145","828fb9e4087cd4fa541313577726ca0f69cffce814939ab1ceda7f49450a0ae7","06aceb9c13af819fa56116d4ea8e49ce463ebfed17bcaedc3145390234051223","9ee075b3b68a4f9b45746a573acd0fbb021d873f5298467f02a06b4b76376566","e24a33617d2eb315462ac6d2e0244a8ad7a62c30633838c7590140ba19faee24","148b7939a261667ae637796dac999542aa537845b00245d450a525868dd14321","7133e3f13d147565744a1215702050c45fa5f25bfa3d7aa1ec4a80c2fd730039","77cf6f2627aad3fe0f6d2e85840da98551c2466cfd2719f30c178ece223fa96b",{"version":"6cbaf8779eba5bfb576d83fd66078179cb01917b25d290f6375f75f86d36dc80","signature":"a29e37f3366843f1d1277c317a493b60d2fae4b454241b2fe767c8707382f14a"},{"version":"05314a927effeb8ff40a49a60ef849bb66d03c876c2aca1bbd6d0669fcbb470e","signature":"29ce310cd39024cbf2d81dbf3e8fea36f6871476353054a55c3be13507e2c91b"},"3aca4447d83516c137c23a1f0f37752a5c4d1f3a1e16de3e40e22ad29025d464","b0bf6bcc20228746649ae38f2437944aa524bcd75ea5abc548463ddb46e3a600","8034025060918281c316a3e9af9a92dd9498f6978f9463a16d470919e15343aa",{"version":"2556e7e8bb7e6f0bb3fe25f3da990d1812cb91f8c9b389354b6a0c8a6d687590","impliedFormat":99},{"version":"ad1c91ca536e0962dcbfcdff40073e3dd18da839e0baad3fe990cf0d10c93065","impliedFormat":99},{"version":"19cf605ba2a4e8fba017edebdddbbc45aea897ddc58b4aae4c55f382b570ff53","impliedFormat":99},{"version":"884aab8c07224434c034b49e88de0511f21536aa83ee88f1285160ba6d3fb77a","impliedFormat":99},{"version":"130b39b18c99e5678635f383ef57efaa507196838ddabb47cb104064e2ce4cd3","impliedFormat":99},{"version":"7618d2cb769e2093acd4623d645b683ab9fea78c262b3aa354aba9f5afdcaaee","impliedFormat":99},{"version":"029f1ce606891c3f57f4c0c60b8a46c8ced53e719d27a7c9693817f2fe37690b","impliedFormat":99},{"version":"83596c963e276a9c5911412fba37ae7c1fe280f2d77329928828eed5a3bfa9a6","impliedFormat":99},{"version":"81acfd3a01767770e559bc57d32684756989475be6ea32e2fe6255472c3ea116","impliedFormat":99},{"version":"88d0c3eae81868b4749ba5b88f9b6d564ee748321ce19a2f4269a4e9dd46020a","impliedFormat":99},{"version":"8266b39a828bfb2695cabfa403e7c1226d7d94599f21bea9f760e35f4ca7a576","impliedFormat":99},{"version":"c1c1e740195c882a776cf084acbaf963907785ee39e723c6375fec9a59bf2387","impliedFormat":99},{"version":"137f96b78e477e08876f6372072c3b6f1767672bf182013f84f8ae53d987ff86","impliedFormat":99},{"version":"29896c61d09880ff39f8a86873bf72ce4deb910158d3a496122781e29904c615","impliedFormat":99},{"version":"81ce540acef0d6972b0b163331583181be3603300f618dcd6a6a3138954ff30c","impliedFormat":99},{"version":"19990350fca066265b2c190c9b6cde1229f35002ea2d4df8c9e397e9942f6c89","impliedFormat":99},{"version":"8fb8fdda477cd7382477ffda92c2bb7d9f7ef583b1aa531eb6b2dc2f0a206c10","impliedFormat":99},{"version":"66995b0c991b5c5d42eff1d950733f85482c7419f7296ab8952e03718169e379","impliedFormat":99},{"version":"9863f888da357e35e013ca3465b794a490a198226bd8232c2f81fb44e16ff323","impliedFormat":99},{"version":"84bc2d80326a83ee4a6e7cba2fd480b86502660770c0e24da96535af597c9f1e","impliedFormat":99},{"version":"ea27768379b866ee3f5da2419650acdb01125479f7af73580a4bceb25b79e372","impliedFormat":99},{"version":"598931eeb4362542cae5845f95c5f0e45ac668925a40ce201e244d7fe808e965","impliedFormat":99},{"version":"da9ef88cde9f715756da642ad80c4cd87a987f465d325462d6bc2a0b11d202c8","impliedFormat":99},{"version":"b4c6184d78303b0816e779a48bef779b15aea4a66028eb819aac0abee8407dea","impliedFormat":99},{"version":"db085d2171d48938a99e851dafe0e486dce9859e5dfa73c21de5ed3d4d6fb0c5","impliedFormat":99},{"version":"62a3ad1ddd1f5974b3bf105680b3e09420f2230711d6520a521fab2be1a32838","impliedFormat":99},{"version":"a77be6fc44c876bc10c897107f84eaba10790913ebdcad40fcda7e47469b2160","impliedFormat":99},{"version":"06cf55b6da5cef54eaaf51cdc3d4e5ebf16adfdd9ebd20cec7fe719be9ced017","impliedFormat":99},{"version":"91f5dbcdb25d145a56cffe957ec665256827892d779ef108eb2f3864faff523b","impliedFormat":99},{"version":"052ba354bab8fb943e0bc05a0769f7b81d7c3b3c6cd0f5cfa53c7b2da2a525c5","impliedFormat":99},{"version":"927955a3de5857e0a1c575ced5a4245e74e6821d720ed213141347dd1870197f","impliedFormat":99},{"version":"fec804d54cd97dd77e956232fc37dc13f53e160d4bbeeb5489e86eeaa91f7ebd","impliedFormat":99},{"version":"75ef949153a3e6ff419e39d0fa5eb6617e92de5019738ad3c43872023d9665f5","impliedFormat":99},{"version":"ed9ce8e6dd5b2d00ab95efc44e4ad9d0eba77362e01619cb21dedfdedbad51b8","impliedFormat":1},{"version":"5520611f997f2b8e62a6e191da45b07813ac2e758304690606604a64ac0ca976","impliedFormat":1},{"version":"00b469cba48c9d772a4555216d21ba41cdb5a732af797ccb57267344f4fc6c3d","impliedFormat":1},{"version":"2766bf77766c85c25ec31586823fefb48344e64556faad7e75a3363e517814f6","impliedFormat":1},{"version":"b7d1eaffd8003e8dc0ec275e58bd24c7b9a4dbae2a2d0d83cf248c88237262ce","impliedFormat":99},{"version":"7a8b08c0521c3a9e1db3c8b14f37e59d838fdc32389f1193b96630b435a8e64e","impliedFormat":99},{"version":"2e54848617fae9eb73654d9cf4295d99dab4b9c759934e5b82e2e57e6aaaef20","impliedFormat":99},{"version":"ae056b7c3f727d492166d4c1169d5905ddd194128a014b5d2d621248ed94b49c","impliedFormat":99},{"version":"edc5d99a04130f066f6e8d31c7c3f9ba4749496356470279408833b4faee3554","impliedFormat":99},{"version":"2f502ac2473a2bbf0d6217f9660e9d5bf40165a2f91067596323898c53dab87c","impliedFormat":99},{"version":"21f27a0c8bc8d9a4e2cf6d9c60140f8b071d0e1ffddb4b7dcf6bbf74d0e8d470","impliedFormat":99},{"version":"754108a1e136331ac67dc8ee6aa9c95cb3bea3ac8bbf48dda7b0dbabbc8f970f","impliedFormat":99},{"version":"9e9979adc151111d71ad049305be1b6df324a98d1d1edd84adb1756cc1911bfd","impliedFormat":99},{"version":"0f38bcf19f105cd31ded5d46491ca50a46462c838816c358d445f41ac7a68f5a","impliedFormat":99},{"version":"a65fc667cd78d7cad733fab96f4bff3183c0dcbc15b083dce0055cffc5c64f9f","impliedFormat":99},{"version":"c735e27dfa775155120c50f714f594639dd7b6ad1878097feb005a0b5c59b7c2","impliedFormat":99},{"version":"f3dd541f4d87bba38dabf43fd06b7616c6f86b11608d30e61086ab39f84fa8d8","impliedFormat":99},{"version":"5583f1c0912e96625a30c20b83cff3d175194b222e4eb22170d19e33f7d8729f","impliedFormat":99},{"version":"a515b08047d24de84d89ad80b2843e565e65ed4a4e7cfc9707656470d7c555f9","impliedFormat":99},{"version":"cf43b2783a58e42fca6e45f0d47465b2ab855b7e9bea5ccb68447297df8aade5","impliedFormat":99},{"version":"27a3f158d8e6f59f29e55c37d4ae3c39574ee99539c4f12bcf46d29929974a62","impliedFormat":99},{"version":"a2d23e2f22006483c89f42077bd6a9bf92db721ebb5e0859b06fdb5c8369586d","impliedFormat":99},{"version":"6a8aec6851c09e4524937485f6553ec7332118482f3ed33238cea7496ff42103","impliedFormat":99},{"version":"d67fd6ea8cf37131627c7a9ae1de96d19d41cb32e741a475f0f56942576a7b3b","impliedFormat":99},{"version":"9b2f424a2c5c592d738100d898df3f9ee018bdd23a279f10849c3686abbec158","impliedFormat":99},{"version":"2fef96aedd23d59b6093d12d9f97c95e3a4008fcc02e8c68304235a1770fc70a","impliedFormat":99},{"version":"cdcf9ea426ad970f96ac930cd176d5c69c6c24eebd9fc580e1572d6c6a88f62c","impliedFormat":1},{"version":"23cd712e2ce083d68afe69224587438e5914b457b8acf87073c22494d706a3d0","impliedFormat":1},{"version":"487b694c3de27ddf4ad107d4007ad304d29effccf9800c8ae23c2093638d906a","impliedFormat":1},{"version":"3a80bc85f38526ca3b08007ee80712e7bb0601df178b23fbf0bf87036fce40ce","impliedFormat":1},{"version":"ccf4552357ce3c159ef75f0f0114e80401702228f1898bdc9402214c9499e8c0","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"68834d631c8838c715f225509cfc3927913b9cc7a4870460b5b60c8dbdb99baf","impliedFormat":1},{"version":"2931540c47ee0ff8a62860e61782eb17b155615db61e36986e54645ec67f67c2","impliedFormat":1},{"version":"ccab02f3920fc75c01174c47fcf67882a11daf16baf9e81701d0a94636e94556","impliedFormat":1},{"version":"f6faf5f74e4c4cc309a6c6a6c4da02dbb840be5d3e92905a23dcd7b2b0bd1986","impliedFormat":1},{"version":"ea6bc8de8b59f90a7a3960005fd01988f98fd0784e14bc6922dde2e93305ec7d","impliedFormat":1},{"version":"36107995674b29284a115e21a0618c4c2751b32a8766dd4cb3ba740308b16d59","impliedFormat":1},{"version":"914a0ae30d96d71915fc519ccb4efbf2b62c0ddfb3a3fc6129151076bc01dc60","impliedFormat":1},{"version":"33e981bf6376e939f99bd7f89abec757c64897d33c005036b9a10d9587d80187","impliedFormat":1},{"version":"7fd1b31fd35876b0aa650811c25ec2c97a3c6387e5473eb18004bed86cdd76b6","impliedFormat":1},{"version":"b41767d372275c154c7ea6c9d5449d9a741b8ce080f640155cc88ba1763e35b3","impliedFormat":1},{"version":"3bacf516d686d08682751a3bd2519ea3b8041a164bfb4f1d35728993e70a2426","impliedFormat":1},{"version":"7fb266686238369442bd1719bc0d7edd0199da4fb8540354e1ff7f16669b4323","impliedFormat":1},{"version":"0a60a292b89ca7218b8616f78e5bbd1c96b87e048849469cccb4355e98af959a","impliedFormat":1},{"version":"0b6e25234b4eec6ed96ab138d96eb70b135690d7dd01f3dd8a8ab291c35a683a","impliedFormat":1},{"version":"9666f2f84b985b62400d2e5ab0adae9ff44de9b2a34803c2c5bd3c8325b17dc0","impliedFormat":1},{"version":"40cd35c95e9cf22cfa5bd84e96408b6fcbca55295f4ff822390abb11afbc3dca","impliedFormat":1},{"version":"b1616b8959bf557feb16369c6124a97a0e74ed6f49d1df73bb4b9ddf68acf3f3","impliedFormat":1},{"version":"5b03a034c72146b61573aab280f295b015b9168470f2df05f6080a2122f9b4df","impliedFormat":1},{"version":"40b463c6766ca1b689bfcc46d26b5e295954f32ad43e37ee6953c0a677e4ae2b","impliedFormat":1},{"version":"249b9cab7f5d628b71308c7d9bb0a808b50b091e640ba3ed6e2d0516f4a8d91d","impliedFormat":1},{"version":"80aae6afc67faa5ac0b32b5b8bc8cc9f7fa299cff15cf09cc2e11fd28c6ae29e","impliedFormat":1},{"version":"f473cd2288991ff3221165dcf73cd5d24da30391f87e85b3dd4d0450c787a391","impliedFormat":1},{"version":"499e5b055a5aba1e1998f7311a6c441a369831c70905cc565ceac93c28083d53","impliedFormat":1},{"version":"54c3e2371e3d016469ad959697fd257e5621e16296fa67082c2575d0bf8eced0","impliedFormat":1},{"version":"beb8233b2c220cfa0feea31fbe9218d89fa02faa81ef744be8dce5acb89bb1fd","impliedFormat":1},{"version":"c183b931b68ad184bc8e8372bf663f3d33304772fb482f29fb91b3c391031f3e","impliedFormat":1},{"version":"5d0375ca7310efb77e3ef18d068d53784faf62705e0ad04569597ae0e755c401","impliedFormat":1},{"version":"59af37caec41ecf7b2e76059c9672a49e682c1a2aa6f9d7dc78878f53aa284d6","impliedFormat":1},{"version":"addf417b9eb3f938fddf8d81e96393a165e4be0d4a8b6402292f9c634b1cb00d","impliedFormat":1},{"version":"48cc3ec153b50985fb95153258a710782b25975b10dd4ac8a4f3920632d10790","impliedFormat":1},{"version":"adf27937dba6af9f08a68c5b1d3fce0ca7d4b960c57e6d6c844e7d1a8e53adae","impliedFormat":1},{"version":"e1528ca65ac90f6fa0e4a247eb656b4263c470bb22d9033e466463e13395e599","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"866078923a56d026e39243b4392e282c1c63159723996fa89243140e1388a98d","impliedFormat":1},{"version":"b3fb72492a07a76f7bfa29ecadd029eea081df11512e4dfe6f930a5a9cb1fb75","impliedFormat":1},{"version":"66b99e58194754a9db09e8ae09b45f878a5041f9ba497feaa9db8cc9773cafcc","impliedFormat":99},"062f68502da3fa04342b39f9dd4ab07e8b86b18f834bf7098af1ca66d16a7fcd","18a10ad09c7db26de58b9dc8506929f70b56bb3711b047a779510bfbf56abfae","0166128aefd3e40c46163cb377882ecbfadff9025afc30f23dbd9c79dfc37d07","727c07e8b771acbdd0853d9b503685c791adb5aa4b9662fbafab5b6579f9d1dd","41d97b7443ec401467cdcd84a08f289a43473dbe9a0974ed870293c2c250e709","bfe021e5559d0acee980c4a809e79aaec439c21fc589fa17ca6ffdcc4d8c586e","0abbbb1756f2f3283db433c173f07edea861ff124136bd0e357c2abcbb96ebce","b09d145584610ea0678456708350b1928818aca94704e0601f48791a6d9f72ae","262a5eb0674b828a49a7d476d7b50539b6c368a627f876ece328979e50ef6d08","3e475b6f9ccd7ca14cce669a389da4447d613849133e3a785538082b5732ca8b","6ebd436aa023b1d541fdf840904f2fbfd0c652eaf021399fd94a780397760154","f68644c1467a5a99c9d9fe785cda79ebd8e648814818c1db8c936feb427ad632","8917b8ea9521ce9e09f5770449fefe40d4fc951115872c57fccb101e84399cf1","da5d6c9b4c81c6faf8955904bda8e662568aed425aeec6655dfd5df0fd88d3f9","8be8a2d640c0e6b0927719e17ff197890583c26ca523e5b37b546e70804f95a8","95a9cef3f1df354b1d64a340b4d90fa44276b34b0fd7213cb27af4d5c173b47b","79ce6da2da16c8585a9ded57a611d113aea97bc8890e935b861cf1789a843605","a3fcf0e12bffd3983c9c2ff84d766f964938b86842e1bbc9d870785b43871de1","4e80403e9c3e54434982e9afa9bb23388c0081bfe3bb05bcdedf0fde6dc2049e",{"version":"07d11fb8ed29aafd49d97000c6498e3d72de5ebb2d9c56b6b720ea19234c0c69","signature":"ed9c663ed73bfe1fda25cd400d66ed1f046d4d59c5df2e9d0c010f1c205f9aae"},{"version":"6d52943b50d4d360a7ed90b8001882d5a74233f365540bceee729a6e8d08ad9d","signature":"8926a5857c934c6c27e4122be261ce8ea67d06c4ac15d6177621b52ca1f3a188"},"ba9aeaccb9cfbcb8f0475fdf6249b9415803cfc053d9f8454834aa2e498bafc9","b3f3a62fe65ceebcb3912b4c6c9b17a8a52b63aa0cb51c24f8de274d2a5aad3b","6fb8c497bd72905e5b4cabb467a1075cf37713af92917a5a3e71de8bfba729f2","c91938c6169c2b36150675088233b6e156f2c5d4443849714110de90d5487253","07a87a5e1758dac46f8139460d6a8280f85fa2ec09216a6cd9c92f3686474e45","0a87d3165b86f514a0fb95436d89541d76e11141d703d1d2ba068f6c5969be8c",{"version":"a534e61c2f06a147d97aebad720db97dffd8066b7142212e46bcbcdcb640b81a","impliedFormat":99},{"version":"ddf569d04470a4d629090d43a16735185001f3fcf0ae036ead99f2ceab62be48","impliedFormat":99},{"version":"b413fbc6658fe2774f8bf9a15cf4c53e586fc38a2d5256b3b9647da242c14389","impliedFormat":99},{"version":"c30a41267fc04c6518b17e55dcb2b810f267af4314b0b6d7df1c33a76ce1b330","impliedFormat":1},{"version":"72422d0bac4076912385d0c10911b82e4694fc106e2d70added091f88f0824ba","impliedFormat":1},{"version":"da251b82c25bee1d93f9fd80c5a61d945da4f708ca21285541d7aff83ecb8200","impliedFormat":1},{"version":"64db14db2bf37ac089766fdb3c7e1160fabc10e9929bc2deeede7237e4419fc8","impliedFormat":1},{"version":"98b94085c9f78eba36d3d2314affe973e8994f99864b8708122750788825c771","impliedFormat":1},{"version":"e33ce66b9e840acad9667b5b520e901c8d3b92a2e0b2dfbc8b1e9561e585f895","impliedFormat":99},{"version":"80afb5cb496aa35f74f6adac702473bfc60e51b6e6c509e114d7b72d6eadf5e6","signature":"ec4f8da6db51057c3cdb300cfa83fe211d001fc210bec02865bc5b179d67ed47"},"98172e5c7de99d25f725628ef17bb5ad54a9e480498b70f2d9a8eca195d8468d",{"version":"70ff5c156c1c4c3bc7adde28f42603d766e6c1761dc8a52599fd3e933035fda2","signature":"14f57d9123e29203047db0d2703beba2b4cddef114078e870fdc0af3cc3bba55"},{"version":"759a7f9d8752186662f900bd0f6a364bd0a84c78e1ba30d3a1bcd93435beb972","signature":"4f10d4878319607d135216027beed50426c71e537531e04f1c1a8471961bacc0"},{"version":"fe93c474ab38ac02e30e3af073412b4f92b740152cf3a751fdaee8cbea982341","impliedFormat":1},{"version":"aa4feed67c9af19fa98fe02a12f424def3cdc41146fb87b8d8dab077ad9ceb3c","impliedFormat":1},{"version":"1e00b8bf9e3766c958218cd6144ffe08418286f89ff44ba5a2cc830c03dd22c7","impliedFormat":1},"8abc9a561aaa2978ea478fc739829ec6328ce5175278a4b19f132735d08350c4","d232c3e6c846c0416d5f78439f26d887fe7a7a657a7586e7404adbfe632262a7","46ce69633d1b0908c9d4228b4d920e95c99bfb4af3177e32f5b9910899de7809","5ef9882978e704c8f72fe6b8a910dffe51e062f4fe8ad8b78f3d58a731902b74","a6972b86b6c3d6081471a113ff1ff9da527e3df7a715a077a51b750696f58ef7","5ad85fb349f2b4b5cc1a8afa1a500be950720584bcdf4c5674290340c17cf238","db3799301f2a3131a0c873c64887205aebc464be7490e32e6ad231ec1c4a3242","e4f0ab91513670bc8013c5f759b547ba312aac36a1a94e98b965504c2e0c8707","82079c5693533994530754d06e56233b89fafc8559942ca69a7bdbdd0f3e45ca","24eda11eda83a40ac8ef852080683a9b9dff9a0be4ffd8956592c368bdca062f","b7a2b08d0689e639fe283c2d32b8edea3bcfa347e1bd58749c758414ba274b43","e3bea72f016ccd65253eebf3c127744d33c92f73272157c1cd1a763c423dfdae","c805f9b252f420f854e9991bfa5b71be236225a78281d92accfdf0174830a063",{"version":"83edc978f4c1dd0645bdd5c6ad26e8832cfc30ceb0bcc9d76b0aeb4b1698a921","signature":"84ea38e650a2635f6efd9eed6b6c474502dd1c39c18603e6ba5ebd6114ff5a60"},"253fc37b3e1164207109e00bd0efb44fc8120ab3fa5e0ed5fc5fbb6b7ec284d7",{"version":"27b8c2d503361b015e3acb09689a7b42f7ee8e69c5a3136f3a34d2ad5d9cb1ba","signature":"3a31e9c82cd353a27fb60981f12b1ad33b0a4a00810abc7f5e368d087560be73"},{"version":"fe8c4676500ffe9f39c2fc5efe9f6307790078536908b784968d6144cbd4895f","signature":"c99963ca25ff1122093b028d3177b3d355da7174f12012aeaef18889797ab982"},"1d8de8c7830e094f5f15ca2ac622c32220885b97f16c16691cfcc8d37d4cd706","a7068335e578bb49c66f276ccb67deaafdc3462ce89f87e28af6e960b15a2163","7ac9021f0d11a9674961fe11ae7cd4d4fe423e419f244c7c89a2aab6f8b7fd10","b1afe575cbfa0920ed03e20713fac1336dd83cd3d0561cf513f8a789b41769c9","a058d659314f8748c9a6c53f825e9296ea02e064c10731ebf9e3f5f7719c78a2",{"version":"82738d9afed59be7ee7b5f1602747adfb22136ff31af4d4a2cc8651ef77eaf19","impliedFormat":1},{"version":"aae374b21c7c3fe8a312b0ea6cfa3bd1376401fe6fa0de4da7506c2ed594aef4","impliedFormat":1},{"version":"2813548f7105435705b6a5c6c8459dadde0476ab2ebae6b2644cf2259960dc6d","impliedFormat":99},{"version":"e0f4c3a6747fac775e2d740f92e60a6da762e4f34d0a2057e22784fb5204181a","impliedFormat":1},{"version":"da107b61f72658beedd678c0c8fd0cedb3a02f679bbcea9d7bdea8e814dcadce","impliedFormat":99},{"version":"75ec6a6e61de058d8d450b229d54504ef1a47328b7e61d9cdc49e283559f3687","impliedFormat":1},{"version":"ac309244296f378db62f70d2dbeaf859340db6380ceac650e3e21713760abb8c","impliedFormat":99},{"version":"a469460e21a0286fb87a7df9539ff99e6c831ee11e1f929ce6ad68b8aaca7e3d","impliedFormat":1},{"version":"1b8e0cff7e05b290d2581f93d0b9f9b1d17971034825617b55ad3f398a2870f4","impliedFormat":1},{"version":"d23b8c70c6565fef9286c65bd6ff34ae3ad7084e0ec5e177f125a42d2a7c1886","impliedFormat":1},{"version":"4759dfcd0778dd0b9449affcc374781a863536a25dcfaa7c71d74317f8448b1a","impliedFormat":1},{"version":"aab65cc378cd64bd82cf63fbe1f6d5804c1594a4fc328468b405093d0c6aa727","impliedFormat":1},{"version":"681abfae63f06f15e42cd6f4c6f8a185da32c002e53af81652c59caa84370172","impliedFormat":1},{"version":"14021cbd3905a3e48bb4f45f51e813d6c3acefc6a3b3613658252ed402a62104","impliedFormat":1},{"version":"546dccc430d25c23cd0e7d1e2121c4a5321a77ae743846c57add1b2b20df2fc1","impliedFormat":99},{"version":"858eb40c6fc2804894af0f491d82a79d1b6de7acbe18dc69f564c578d79fd4a6","signature":"e53518567466c5b4307a1d2ae5521c6b95aaf20258217098e84aad0125d62898"},"ccee776b17be26653443e7b76a31cefe3a9e610c88b32aaef622f5833550f11e",{"version":"d539df7291e37f5153a70c164c872c015915ffcd32717ef84a9ab9dbfef672f2","signature":"2cc743b624d6891f9275f11f76fedfe235af04641c806e7dc65e55740db4dd29"},"cf12cd317018445f8bb406a122ea239777fcd770bf8baaed55bb78bba9c9d65b","64c4f565321ddc4785d5530196aa242eaab08bd748fae4b53026a1b274df970e","aa00593fa4b04c60fcdad3c7d95b4faf42adcd6561f5b67cfe99d70eb9700006",{"version":"b8d8a69d95a2a0c585b6c0d4661d625d2449149525c22ff0bc1f58a8238f5bc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"b2d0630483bf337ef9dac326c3334a245aa4946e9f60f12baf7da5be44beafbb","impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","impliedFormat":1},{"version":"d55dcc47f1beabbf703104510984f3e952f971c8fe47ba7adf1dd9f8c75fa5f2","impliedFormat":1}],"root":[[413,415],527,528,[531,533],535,[538,545],[547,561],[664,690],[700,703],[707,728],[744,749]],"options":{"allowJs":true,"esModuleInterop":true,"jsx":1,"module":99,"skipLibCheck":true,"strict":false,"target":7},"referencedMap":[[748,1],[746,2],[747,3],[749,4],[745,5],[535,6],[715,7],[714,8],[716,9],[718,10],[717,11],[719,12],[710,13],[713,14],[722,15],[720,7],[723,16],[707,17],[708,18],[528,19],[533,20],[550,21],[551,22],[554,23],[725,24],[553,22],[556,25],[552,22],[555,26],[678,27],[560,28],[726,29],[679,30],[559,31],[557,32],[680,33],[558,34],[709,35],[670,36],[666,37],[727,38],[672,39],[667,36],[665,37],[671,36],[669,36],[673,37],[668,36],[675,40],[676,41],[674,41],[677,42],[685,43],[684,44],[687,45],[686,46],[683,47],[681,48],[711,49],[682,50],[724,48],[721,51],[712,52],[544,37],[540,49],[541,37],[728,53],[542,49],[543,49],[548,26],[549,54],[545,37],[547,26],[529,55],[532,56],[531,57],[561,58],[688,59],[664,55],[744,60],[689,61],[539,55],[690,62],[538,63],[414,64],[413,65],[415,19],[366,55],[735,55],[733,55],[743,66],[731,55],[738,55],[741,55],[736,67],[740,55],[742,68],[739,69],[737,55],[729,55],[734,70],[732,71],[730,55],[429,55],[432,72],[750,73],[430,55],[437,55],[751,41],[752,55],[753,55],[143,74],[144,74],[145,75],[98,76],[146,77],[147,78],[148,79],[93,55],[96,80],[94,55],[95,55],[149,81],[150,82],[151,83],[152,84],[153,85],[154,86],[155,86],[156,87],[157,88],[158,89],[159,90],[99,55],[97,55],[160,91],[161,92],[162,93],[196,94],[163,95],[164,55],[165,96],[166,97],[167,98],[168,99],[169,100],[170,101],[171,102],[172,103],[173,104],[174,104],[175,105],[176,55],[177,106],[178,107],[180,108],[179,109],[181,110],[182,111],[183,112],[184,113],[185,114],[186,115],[187,116],[188,117],[189,118],[190,119],[191,120],[192,121],[193,122],[100,55],[101,55],[102,55],[140,123],[141,55],[142,55],[194,124],[195,125],[201,126],[202,127],[200,128],[198,129],[199,130],[84,55],[86,131],[289,41],[754,132],[433,133],[510,134],[511,135],[509,55],[416,55],[426,136],[422,137],[425,138],[519,139],[500,55],[502,140],[522,140],[501,141],[427,55],[424,142],[417,143],[515,144],[419,145],[421,146],[514,55],[512,145],[420,55],[423,143],[418,55],[431,55],[605,147],[607,148],[610,148],[612,149],[611,148],[609,150],[608,150],[613,151],[663,152],[617,153],[616,154],[606,155],[618,156],[615,157],[614,148],[576,158],[566,159],[565,55],[536,55],[604,160],[602,55],[600,161],[603,162],[601,163],[599,164],[598,165],[596,166],[597,166],[595,55],[85,55],[567,167],[562,55],[564,168],[563,169],[574,167],[573,167],[575,170],[572,171],[570,167],[571,167],[568,172],[569,167],[620,173],[619,55],[442,55],[696,174],[698,175],[697,176],[695,177],[694,55],[470,55],[493,55],[495,178],[494,55],[546,41],[92,179],[369,180],[373,181],[375,182],[222,183],[236,184],[340,185],[268,55],[343,186],[304,187],[313,188],[341,189],[223,190],[267,55],[269,191],[342,192],[243,193],[224,194],[248,193],[237,193],[207,193],[295,195],[296,196],[212,55],[292,197],[297,198],[384,199],[290,198],[385,200],[274,55],[293,201],[397,202],[396,203],[299,198],[395,55],[393,55],[394,204],[294,41],[281,205],[282,206],[291,207],[308,208],[309,209],[298,210],[276,211],[277,212],[388,213],[391,214],[255,215],[254,216],[253,217],[400,41],[252,218],[228,55],[403,55],[705,219],[704,55],[406,55],[405,41],[407,220],[203,55],[334,55],[235,221],[205,222],[357,55],[358,55],[360,55],[363,223],[359,55],[361,224],[362,224],[221,55],[234,55],[368,225],[376,226],[380,227],[217,228],[284,229],[283,55],[275,211],[303,230],[301,231],[300,55],[302,55],[307,232],[279,233],[216,234],[241,235],[331,236],[208,237],[215,238],[204,185],[345,239],[355,240],[344,55],[354,241],[242,55],[226,242],[322,243],[321,55],[328,244],[330,245],[323,246],[327,247],[329,244],[326,246],[325,244],[324,246],[264,248],[249,248],[316,249],[250,249],[210,250],[209,55],[320,251],[319,252],[318,253],[317,254],[211,255],[288,256],[305,257],[287,258],[312,259],[314,260],[311,258],[244,255],[197,55],[332,261],[270,262],[306,55],[353,263],[273,264],[348,265],[214,55],[349,266],[351,267],[352,268],[335,55],[347,237],[246,269],[333,270],[356,271],[218,55],[220,55],[225,272],[315,273],[213,274],[219,55],[272,275],[271,276],[227,277],[280,278],[278,279],[229,280],[231,281],[404,55],[230,282],[232,283],[371,55],[370,55],[372,55],[402,55],[233,284],[286,41],[91,55],[310,285],[256,55],[266,286],[245,55],[378,41],[387,287],[263,41],[382,198],[262,288],[365,289],[261,287],[206,55],[389,290],[259,41],[260,41],[251,55],[265,55],[258,291],[257,292],[247,293],[240,210],[350,55],[239,294],[238,55],[374,55],[285,41],[367,295],[83,55],[90,296],[87,41],[88,55],[89,55],[346,297],[339,298],[338,55],[337,299],[336,55],[377,300],[379,301],[381,302],[706,303],[383,304],[386,305],[412,306],[390,306],[411,307],[392,308],[398,309],[399,310],[401,311],[408,312],[410,55],[409,73],[364,313],[594,314],[579,315],[592,316],[577,55],[578,317],[593,318],[588,319],[589,320],[587,321],[591,322],[585,323],[580,324],[590,325],[586,316],[583,55],[584,326],[581,55],[582,55],[460,327],[458,328],[459,329],[447,330],[448,328],[455,331],[446,332],[451,333],[461,55],[452,334],[457,335],[463,336],[462,337],[445,338],[453,339],[454,340],[449,341],[456,327],[450,342],[534,41],[439,343],[438,344],[483,345],[464,55],[484,346],[466,347],[491,348],[485,55],[487,349],[488,349],[489,350],[486,55],[490,351],[469,352],[467,55],[468,353],[482,354],[465,55],[480,355],[471,356],[472,357],[473,357],[474,356],[481,358],[475,357],[476,355],[477,356],[478,357],[479,356],[444,55],[537,55],[520,55],[428,55],[81,55],[82,55],[13,55],[14,55],[16,55],[15,55],[2,55],[17,55],[18,55],[19,55],[20,55],[21,55],[22,55],[23,55],[24,55],[3,55],[25,55],[26,55],[4,55],[27,55],[31,55],[28,55],[29,55],[30,55],[32,55],[33,55],[34,55],[5,55],[35,55],[36,55],[37,55],[38,55],[6,55],[42,55],[39,55],[40,55],[41,55],[43,55],[7,55],[44,55],[49,55],[50,55],[45,55],[46,55],[47,55],[48,55],[8,55],[54,55],[51,55],[52,55],[53,55],[55,55],[9,55],[56,55],[57,55],[58,55],[60,55],[59,55],[61,55],[62,55],[10,55],[63,55],[64,55],[65,55],[11,55],[66,55],[67,55],[68,55],[69,55],[70,55],[1,55],[71,55],[72,55],[12,55],[76,55],[74,55],[79,55],[78,55],[73,55],[77,55],[75,55],[80,55],[118,359],[128,360],[117,359],[138,361],[109,362],[108,363],[137,73],[131,364],[136,365],[111,366],[125,367],[110,368],[134,369],[106,370],[105,73],[135,371],[107,372],[112,373],[113,55],[116,373],[103,55],[139,374],[129,375],[120,376],[121,377],[123,378],[119,379],[122,380],[132,73],[114,381],[115,382],[124,383],[104,384],[127,375],[126,373],[130,55],[133,385],[662,386],[638,387],[650,388],[636,389],[651,384],[660,390],[627,391],[628,392],[626,363],[659,73],[654,393],[658,394],[630,395],[647,396],[629,397],[657,398],[624,399],[625,393],[631,400],[632,55],[637,401],[635,400],[622,402],[661,403],[652,404],[641,405],[640,400],[642,406],[645,407],[639,408],[643,409],[655,73],[633,410],[634,411],[646,412],[623,384],[649,413],[648,400],[644,414],[653,55],[621,55],[656,415],[435,416],[499,417],[441,418],[436,416],[434,55],[440,419],[497,55],[492,420],[496,421],[443,55],[498,422],[517,423],[526,424],[516,425],[521,426],[508,427],[505,428],[513,55],[506,137],[693,429],[691,430],[524,431],[523,432],[504,433],[692,434],[503,55],[507,435],[525,436],[699,437],[518,55],[530,55],[700,438],[701,439],[702,440],[703,438],[527,441]],"affectedFilesPendingEmit":[748,746,747,749,745,535,715,714,716,718,717,719,710,713,722,720,723,707,708,528,533,550,551,554,725,553,556,552,555,678,560,726,679,559,557,680,558,709,670,666,727,672,667,665,671,669,673,668,675,676,674,677,685,684,687,686,683,681,711,682,724,721,712,544,540,541,728,542,543,548,549,545,547,532,531,561,688,664,744,689,539,690,538,414,415,700,701,702,703,527],"version":"5.9.3"} \ No newline at end of file