From 8d7442faba475a8e818defb376872a55cb7db333 Mon Sep 17 00:00:00 2001 From: Yavor Ivanov Date: Wed, 8 Jan 2025 10:32:02 +0200 Subject: [PATCH] feat: Detect non-Test Starter test setups (#448) JIRA: CPOUI5FOUNDATION-894 --- src/linter/LinterContext.ts | 1 + src/linter/html/transpiler.ts | 22 ++ src/linter/messages.ts | 11 + src/linter/ui5Types/SourceFileLinter.ts | 42 +- .../ui5Types/amdTranspiler/tsTransformer.ts | 23 +- .../sap.f/test/sap/f/testsuite.qunit.html | 16 + .../sap.f/test/sap/f/testsuite.qunit.js | 21 + .../rules/snapshots/NoDeprecatedApi.ts.md | 13 +- .../rules/snapshots/NoDeprecatedApi.ts.snap | Bin 17870 -> 18026 bytes test/lib/linter/snapshots/linter.ts.md | 140 ++++++- test/lib/linter/snapshots/linter.ts.snap | Bin 21661 -> 22874 bytes test/lib/snapshots/index.ts.md | 358 ++++++++++++++++-- test/lib/snapshots/index.ts.snap | Bin 13928 -> 15170 bytes 13 files changed, 600 insertions(+), 47 deletions(-) create mode 100644 test/fixtures/linter/projects/sap.f/test/sap/f/testsuite.qunit.html create mode 100644 test/fixtures/linter/projects/sap.f/test/sap/f/testsuite.qunit.js diff --git a/src/linter/LinterContext.ts b/src/linter/LinterContext.ts index 6baf1df9e..9378f5a49 100644 --- a/src/linter/LinterContext.ts +++ b/src/linter/LinterContext.ts @@ -95,6 +95,7 @@ export interface PositionRange { export interface LintMetadata { // The metadata holds information to be shared across linters directives: Set; + transformedImports: Map>; } export default class LinterContext { diff --git a/src/linter/html/transpiler.ts b/src/linter/html/transpiler.ts index 9aebfd09f..d88772290 100644 --- a/src/linter/html/transpiler.ts +++ b/src/linter/html/transpiler.ts @@ -21,6 +21,8 @@ export default async function transpileHtml( lintBootstrapAttributes(bootstrapTag, report); } + detectTestStarter(resourcePath, scriptTags, context); + scriptTags.forEach((tag) => { // Tags with src attribute do not parse and run inline code const hasSrc = tag.attributes.some((attr) => { @@ -52,6 +54,26 @@ export default async function transpileHtml( } } +function detectTestStarter(resourcePath: ResourcePath, scriptTags: Tag[], context: LinterContext) { + const shouldBeMigrated = scriptTags.some((tag) => { + const isTestsuiteQunitFile = /testsuite(?:\.[a-z][a-z0-9-]*)*\.qunit\.html$/.test(resourcePath); + return (isTestsuiteQunitFile && !tag.attributes.some((attr) => { + return attr.name.value.toLowerCase() === "src" && + (attr.value.value.endsWith("/resources/sap/ui/test/starter/createSuite.js") || + attr.value.value === "resources/sap/ui/test/starter/createSuite.js"); + })) || + (!isTestsuiteQunitFile && resourcePath.endsWith("qunit.html") && !tag.attributes.some((attr) => { + return attr.name.value.toLowerCase() === "src" && + (attr.value.value.endsWith("/resources/sap/ui/test/starter/runTest.js") || + attr.value.value === "resources/sap/ui/test/starter/runTest.js"); + })); + }); + + if (shouldBeMigrated) { + context.addLintingMessage(resourcePath, MESSAGE.PREFER_TEST_STARTER, undefined as never); + } +} + function findBootstrapTag(tags: Tag[]): Tag | undefined { // First search for script tag with id "sap-ui-bootstrap" for (const tag of tags) { diff --git a/src/linter/messages.ts b/src/linter/messages.ts index 0e7989ea3..048c9c5b6 100644 --- a/src/linter/messages.ts +++ b/src/linter/messages.ts @@ -12,6 +12,7 @@ const RULES = { "no-pseudo-modules": "no-pseudo-modules", "parsing-error": "parsing-error", "ui5-class-declaration": "ui5-class-declaration", + "prefer-test-starter": "prefer-test-starter", } as const; export enum LintMessageSeverity { @@ -63,6 +64,7 @@ export enum MESSAGE { PARTIALLY_DEPRECATED_ODATA_MODEL_V2_CREATE_ENTRY, PARTIALLY_DEPRECATED_ODATA_MODEL_V2_CREATE_ENTRY_PROPERTIES_ARRAY, PARTIALLY_DEPRECATED_PARAMETERS_GET, + PREFER_TEST_STARTER, REDUNDANT_BOOTSTRAP_PARAM, REDUNDANT_BOOTSTRAP_PARAM_ERROR, REDUNDANT_VIEW_CONFIG_PROPERTY, @@ -550,6 +552,15 @@ export const MESSAGE_INFO = { }, }, + [MESSAGE.PREFER_TEST_STARTER]: { + severity: LintMessageSeverity.Warning, + ruleId: RULES["prefer-test-starter"], + + message: () => "To save boilerplate code and ensure compliance with UI5 2.x best practices," + + " please migrate to the Test Starter concept", + details: () => "{@link topic:032be2cb2e1d4115af20862673bedcdb Test Starter}", + }, + [MESSAGE.REPLACED_BOOTSTRAP_PARAM]: { severity: LintMessageSeverity.Error, ruleId: RULES["no-deprecated-api"], diff --git a/src/linter/ui5Types/SourceFileLinter.ts b/src/linter/ui5Types/SourceFileLinter.ts index 8f362c170..d19cf6907 100644 --- a/src/linter/ui5Types/SourceFileLinter.ts +++ b/src/linter/ui5Types/SourceFileLinter.ts @@ -15,6 +15,10 @@ import {findDirectives} from "./directives.js"; const log = getLogger("linter:ui5Types:SourceFileLinter"); +// This is the same check as in the framework and prevents false-positives +// https://github.com/SAP/openui5/blob/32c21c33d9dc29a32bf7ee7f41d7bae23dcf086b/src/sap.ui.core/src/sap/ui/test/starter/_utils.js#L287 +const VALID_TESTSUITE = /^\/testsuite(?:\.[a-z][a-z0-9-]*)*\.qunit\.(?:js|ts)$/; + interface DeprecationInfo { symbol: ts.Symbol; messageDetails: string; @@ -58,6 +62,7 @@ export default class SourceFileLinter { #boundVisitNode: (node: ts.Node) => void; #fileName: string; #isComponent: boolean; + #hasTestStarterFindings: boolean; constructor( private context: LinterContext, @@ -76,6 +81,7 @@ export default class SourceFileLinter { this.#boundVisitNode = this.visitNode.bind(this); this.#fileName = path.basename(resourcePath); this.#isComponent = this.#fileName === "Component.js" || this.#fileName === "Component.ts"; + this.#hasTestStarterFindings = false; } // eslint-disable-next-line @typescript-eslint/require-await @@ -88,6 +94,12 @@ export default class SourceFileLinter { findDirectives(this.sourceFile, metadata); } this.visitNode(this.sourceFile); + + if (this.sourceFile.fileName.endsWith(".qunit.js") && // TS files do not have sap.ui.define + !metadata?.transformedImports?.get("sap.ui.define")) { + this.#reportTestStarter(this.sourceFile); + } + this.#reporter.deduplicateMessages(); } catch (err) { const message = err instanceof Error ? err.message : String(err); @@ -642,6 +654,13 @@ export default class SourceFileLinter { } analyzeNewExpression(node: ts.NewExpression) { + if (/\.qunit\.(js|ts)$/.test(this.sourceFile.fileName) && + ((ts.isPropertyAccessExpression(node.expression) && node.expression.name.getText() === "jsUnitTestSuite") || + (ts.isIdentifier(node.expression) && node.expression.getText() === "jsUnitTestSuite") + )) { + this.#reportTestStarter(node); + } + const nodeType = this.checker.getTypeAtLocation(node); // checker.getContextualType(node); if (!nodeType.symbol || !this.isSymbolOfUi5OrThirdPartyType(nodeType.symbol)) { return; @@ -790,6 +809,9 @@ export default class SourceFileLinter { this.#analyzeMobileInit(node); } else if (symbolName === "setTheme" && moduleName === "sap/ui/core/Theming") { this.#analyzeThemingSetTheme(node); + } else if (/\.qunit\.(js|ts)$/.test(this.sourceFile.fileName) && + symbolName === "ready" && moduleName === "sap/ui/core/Core") { + this.#reportTestStarter(node); } } @@ -826,11 +848,17 @@ export default class SourceFileLinter { } } + const propName = getPropertyName(reportNode); + this.#reporter.addMessage(MESSAGE.DEPRECATED_FUNCTION_CALL, { - functionName: getPropertyName(reportNode), + functionName: propName, additionalMessage, details: deprecationInfo.messageDetails, }, reportNode); + + if (propName === "attachInit" && /\.qunit\.(js|ts)$/.test(this.sourceFile.fileName)) { + this.#reportTestStarter(reportNode); + } } getSymbolModuleDeclaration(symbol: ts.Symbol) { @@ -915,6 +943,13 @@ export default class SourceFileLinter { }); } + #reportTestStarter(node: ts.Node) { + if (!this.#hasTestStarterFindings) { + this.#reporter.addMessage(MESSAGE.PREFER_TEST_STARTER, node); + this.#hasTestStarterFindings = true; + } + } + #analyzeParametersGetCall(node: ts.CallExpression) { if (node.arguments.length && ts.isObjectLiteralExpression(node.arguments[0])) { // Non-deprecated usage @@ -1299,10 +1334,7 @@ export default class SourceFileLinter { analyzeTestsuiteThemeProperty(node: ts.PropertyAssignment) { // Check if the node is part of a testsuite config file by its file name. - // This is the same check as in the framework and prevents false-positives - // https://github.com/SAP/openui5/blob/32c21c33d9dc29a32bf7ee7f41d7bae23dcf086b/src/sap.ui.core/src/sap/ui/test/starter/_utils.js#L287 - const validTestSuiteName = /^\/testsuite(?:\.[a-z][a-z0-9-]*)*\.qunit\.(?:js|ts)$/; - if (!validTestSuiteName.test(node.getSourceFile().fileName)) return; + if (!VALID_TESTSUITE.test(node.getSourceFile().fileName)) return; // In a Test Starter testsuite file, // themes can be defined as default (1.) or for test configs individually (2.). diff --git a/src/linter/ui5Types/amdTranspiler/tsTransformer.ts b/src/linter/ui5Types/amdTranspiler/tsTransformer.ts index 6473d1bc6..a0726a192 100644 --- a/src/linter/ui5Types/amdTranspiler/tsTransformer.ts +++ b/src/linter/ui5Types/amdTranspiler/tsTransformer.ts @@ -9,7 +9,7 @@ import replaceNodeInParent, {NodeReplacement} from "./replaceNodeInParent.js"; import {toPosStr, UnsupportedModuleError} from "./util.js"; import rewriteExtendCall, {UnsupportedExtendCall} from "./rewriteExtendCall.js"; import insertNodesInParent from "./insertNodesInParent.js"; -import LinterContext from "../../LinterContext.js"; +import LinterContext, {LintMetadata} from "../../LinterContext.js"; import {findDirectives} from "../directives.js"; const log = getLogger("linter:ui5Types:amdTranspiler:TsTransformer"); @@ -113,6 +113,13 @@ function transform( const moduleDeclaration = parseModuleDeclaration(node.arguments, checker); const moduleDefinition = moduleDeclarationToDefinition(moduleDeclaration, sourceFile, nodeFactory); moduleDefinitions.push(moduleDefinition); + if (moduleDefinition.imports.length) { + moduleDefinition.imports.forEach((importStatement) => + addModuleMetadata(metadata, "sap.ui.define", importStatement)); + } else { + // Empty sap.ui.define (no imports, no body) + addModuleMetadata(metadata, "sap.ui.define"); + } pruneNode(node); // Mark the define call for removal } catch (err) { if (err instanceof UnsupportedModuleError) { @@ -127,6 +134,8 @@ function transform( if (requireExpression.async) { const res = transformAsyncRequireCall(node, requireExpression, nodeFactory); requireImports.push(...res.imports); + res.imports.forEach((importStatement) => + addModuleMetadata(metadata, "sap.ui.require", importStatement)); if (res.callback) { replaceNode(node, res.callback); if (res.errback) { @@ -149,6 +158,7 @@ function transform( } else { const res = transformSyncRequireCall(node, requireExpression, nodeFactory); requireImports.push(res.import); + addModuleMetadata(metadata, "sap.ui.require", res.import); replaceNode(node, res.requireStatement); } } catch (err) { @@ -273,6 +283,17 @@ function transform( } }); + function addModuleMetadata(metadata: LintMetadata, importType: string, importStatement?: ts.ImportDeclaration) { + if (!metadata.transformedImports) { + metadata.transformedImports = new Map>(); + } + const curResource = metadata.transformedImports.get(importType) ?? new Set(); + if (importStatement && ts.isStringLiteral(importStatement.moduleSpecifier)) { + curResource.add(importStatement.moduleSpecifier.text); + } + metadata.transformedImports.set(importType, curResource); + } + function getCommentsFromNode(node: ts.Node, sourceFile?: ts.SourceFile): NodeComments { const sourceText = sourceFile?.getFullText() ?? fullSourceText; const leadingComments = ts.getLeadingCommentRanges(sourceText, node.getFullStart()) ?? []; diff --git a/test/fixtures/linter/projects/sap.f/test/sap/f/testsuite.qunit.html b/test/fixtures/linter/projects/sap.f/test/sap/f/testsuite.qunit.html new file mode 100644 index 000000000..1da383824 --- /dev/null +++ b/test/fixtures/linter/projects/sap.f/test/sap/f/testsuite.qunit.html @@ -0,0 +1,16 @@ + + + + + QUnit test suite for Todo App + + + + + diff --git a/test/fixtures/linter/projects/sap.f/test/sap/f/testsuite.qunit.js b/test/fixtures/linter/projects/sap.f/test/sap/f/testsuite.qunit.js new file mode 100644 index 000000000..b52aea177 --- /dev/null +++ b/test/fixtures/linter/projects/sap.f/test/sap/f/testsuite.qunit.js @@ -0,0 +1,21 @@ +sap.ui.define(function () { + "use strict"; + return { + name: "QUnit test suite for sap.f", + defaults: { + page: "ui5://test-resources/sap/f/Test.qunit.html?testsuite={suite}&test={name}", + qunit: { + version: 2 + }, + sinon: { + version: 4 + }, + ui5: { + language: "EN", + theme: "sap_horizon" + } + }, + tests: { + } + }; +}); diff --git a/test/lib/linter/rules/snapshots/NoDeprecatedApi.ts.md b/test/lib/linter/rules/snapshots/NoDeprecatedApi.ts.md index 3382b06a5..f1a6fbcf0 100644 --- a/test/lib/linter/rules/snapshots/NoDeprecatedApi.ts.md +++ b/test/lib/linter/rules/snapshots/NoDeprecatedApi.ts.md @@ -567,8 +567,17 @@ Generated by [AVA](https://avajs.dev). errorCount: 0, fatalErrorCount: 0, filePath: 'Configuration.beforeBootstrap.qunit.js', - messages: [], - warningCount: 0, + messages: [ + { + column: 1, + line: 3, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, + ], + warningCount: 1, }, ] diff --git a/test/lib/linter/rules/snapshots/NoDeprecatedApi.ts.snap b/test/lib/linter/rules/snapshots/NoDeprecatedApi.ts.snap index f6e1bff052c5f19ab2fa2c6eaf132074d3a6e960..b35f0c47edd84635a5ae281207a5e43bc7af8817 100644 GIT binary patch literal 18026 zcmZ6yWl&sA7cCq-cyNc{4#6FQySuyF;O_1rxVsG++%>od2DibTA-Lw_d2ijSTi;Zz z)%)zzXP@pL-7~ZIYEdoGuj)>w05=pO6b3eq=oeUwAg1C%I+ozd=;F`Nq0zC?jK?BJGZr*G zJXr#={8WljvlaVP97kJz`EIj5+iqJ&f>(+?Lhpq~w-8$N#~Q+G$=6e-ha$W0sPykR zbzxxxGQ5~-@U3*@WyT4WMUbj9P{@x{Rf=AdujgABCl4=!P?lf2De(~t{8E;yB~q~t zNo@u~9+h3?{!$cT(WRVI|8#VuD@Bp}1E{L3{7jE0D>ji*nl_Y1+!gE=d=`ulvJHhy zr9(T+Y9RtV;sjwO?@Rn@Z^y6tG@htICmVp7DvwL0ACr28c&Q;SSJ25eMw3 z?IF`LWz@5}fsxereu_szXW!k-gRGbW(iKl%A8Xktt?D& zW(AHj*06u=V=Nu6%`m)xOoX0Gm*JV5>T5I|uKn;;tXYhfzc#jf%Pu>DjHMnMUF?D0 zHFB{IIi&U98dRT~jk0tY)^jc(PyJzH?cU!q@8??}t^XwAtN>UrrZA=JOBV4&Qi3bjLJs7+d(U2@SW zNE2X)<6nXls0C+VT~rINR6DQ9%&qZef|_d#Q&1h^y!73kIaeRq3v>!h$6tHWU=~zI zc3u{fCCSxAXj?h~rV#>#j1ZKU1`1BUwvkfY0o;1(^s%wLB3 z<1x7pkh6HNz)8=9qEG$NtYzQ0j?@L*Fg@NgJx(+6wh>&~EooMBdrEK!E}%H`h>tt8 zTXT1F>TB1Is7&)CxE}St@-+mabqgb$9-ab0gf%sa)&=MJg(7QY(fZ{`n-yAptc4>Y zlM4Zd(fZxsZ9GyeEyDq$3?3&&&HBl!Ger6#QEho00)TXYlX63!2>$1`;{tN*yK17I zp*}6x(Ax31<`LH7wsljF3c|mV@O#R%74w~^*tL_}2zu7atDO_rwF@s&&r8hTT3H&! zFSJ`)^Var~fcbMKyv2`q35@Z^Ha&!@{_hY-!FHRlPtnD$m}v$kq?6k=;jYSb`IRJj z?7O$5zW!p{Z)V61?8~}Un`9`AuyRgg&3Xybncl{pDyXh((l5h`-2hJz(&clKzt_JMz^a7!;U z4|?oo|CSk*^(-u`f;ze@D#TCjZdnW)+b7pIFHVe{{;*N|dB(HvOhW99E&eb|$FDN? z#ER6Eud>Q{f7_955_n#MgX!t*wV{K5Q-xXkDMmy*>ae*l$HJ$;UtH3*u-@BlZR?!T zR?<^aZC$n8)$LZ*R$*wkHNUkfj6-57JC89;LvsBdrYMT`XjX3@$M~_A-uW2{0U1lt z9&wURJud!Add6SBExi|NE7p7M->jUUA=6`ka1hJ8bLC?s#Cr2>Bs^+K-YwkbsuQ>D zNiGv-?ps$KCxYv1MUE4mK{%$Ch0Le+H?ZP%>!jM5PD0vdf85TN?&+YMzZLo};M0+7 zB3`Wqy$$36d3uW67L!FYMDUN*#p?j>CSUPmD~;ODG80%X8h8J(D9eE0UB2xgRar}b z0KY*T$A9Sp`&j3W^zcw5#6xI5ebY-Ga+&fjoo|hLC69(@k6-D!-JWPFY=7ENzNv%m|2#b+sh4s28j|2N=z zi&NAo-)7n4Tis(xq+yq5WipAKjK9}h%OtI^n&De7pg8Jd4dTr?m2dJH&Ewdc|0Ulf zI9Xnd3)6VhbNW*+U7IwrrRDMZ286O@_;XxbvQxEIkW5@ev?F>1B66><(s*zcE z9o-o48#Mqb;}~S}9aX}hCzciyW!Rye@z)Gm)uqRfahA}j@g|#g{{|UR%l*d8@SB~5 z^c)fC+sz}WBBx%<^3Q^FVoAkt6S}fpt?PsDP8&a!Q>K;Y{l1S z5=xYEV4lt?mRw753uA?fU{6$$~$1dWmP^8kER?xQQ3lYb)y$>kgW*aC&2dtflAVI4F1I!+{0;|Dr1;X$AAebsA z*17^p^5K*bvCAIsWHraKtUqHgc94idK){)jUeKg|h^h=~C3JgvC zk*f~*`LzXLGupYTb2b6YTmHYTNChT78tBzA-vt!*3`7e&1_Lq(; zk-9pLwoMKEqlKn?Gn1cD?TcW~IFyI}^bui|noi53_l!dtzLl8jUZw6BA(E!=ApAu1 zU>J#d?%-6&V@SqYtWtE1=RZg##+v|Sp|lNW>7pSMJHv^l$W3#*ZkR;~)Ih`;yX_)$ zx!afFL&+=$c^lWsx6zO<0MR5)4dN9rzQk1o(kXvorar^e-2q4IKT~$AZ{n^SVXX6x zn`UfT4MN+-8EXy#SFq4ty6whraQuer_IRB6mntp^hoX~O5a#+8_7ay3c90?s))5di z>KTV4B72}bY?Wtshqvx8%Z!w@osV`&J!HEo0(2`Xnz~A?eVkvQGg!YQR>m%0@Kb$k z#R%fS$&C0x7S{+(&2`Lccp=qa0ilxbz?ihx+?~cl$)n!9tuHJ9P7X=KT$jG zDlp{tHVXZ>=Q#3K!d8T^>;r-kb(7Vjxbx`y_5jfkCwr>kxrIBm7 z&m^nyFpk4{n%Ovgry5hx#A@7}>Sz=*-5^olwPIffht`CVJ(qGQj2&Cgw58)IumGo9 zi+2`@M+bbR)&3j)pS4+U6F0AYSd*4nq)tp7TTQs-S+4_i>BE?uyXBVLSepzWDk~z| zG^l_x{!JhARX#Qkq{}prw z`@2PrdG%5?2RlEWEI_8SWPu07So3tUTOoA$l%;1L^UEg*7QL)(9K#7XSdGpzW5ml014Sn@E)|L%3O1r^pX_G+M9T-oyyPLMh@{CoqbCs& z`HBke!{ZHe7%>e$-k=Fs(!g2-y^P|&;FfaQX_dyoE&aB*?PJh9`a8_Xx%LrV3WtIf z``!~svnYy5&iX~a;f0C1?ZdRXY-MbA7s^)o3IqH)IRz|N)9>B0gw(ig8=6|_QP-Ql zl{xaWaPuS{c=5anQF7bX!6KB|rwC%T$}aVor&wh{R|p*;(9+?k+gQa<7^UqfW4@|G z$3;txsZb6P6RcV2ugK9OcnB=zoZ3qd=Zt5jM{Q!KN5xW-8`?-tjr3W~{t@XyU1pjnFE?b6l^Xff z%S?`Ht|&J|oS7PlI9z6$`}56HV8b!0;v5o5GUL_1e5>)fq~$FOCh#CQh_7%E5s$A( z7=b%Wu6N~)@5@98qwCHjAHba@*Ph|QtdG790lt~@6Med zV1Eeo1R?1Wi&s57IPmutB6CGDae~^=_~aM?uq(=%ihB!-00ffz*L~^L{Y(^RqEe4$ z{=@rM5b(3GIxPB#rdc9WBszA^MAwE23J=~;TO62Y7+{9jtp^SAwZt#!o@`XpF+`%x z7`#-YOJw|=Io8$PhvGZAGh_)cC)iILN}2#0_7uj8ZVhj#Ks7O%IKt(sL5b7^d)Xs0s5s+oAPn=qB~| zWg`e{j@#SyZSN*^s*k!_7WaVhFM8&3bhE)~X_p&ZJu8(LTZ{KCbXe^G!5$F)w+^U>h0;xYxcJ0h?-*C<9j1;E>=1= z`CZ+^^=_v;&<{f39f1+^+))DcbFE9}S2B{S4Gq|gl|=sLSs?5i;?gtMEZ;%Rk1w6W z*jv6BoAB(`c5BE=pF>&BWwU=z-t+eIx|-?jy}CQgNmG#9d`0Z()diJ4oWF6YEAm?q zUpb4Rn(xO6*hPB*^&QK-+>Ut{89c9?P+{Nfcu`LZAIzG|W2tjoxSB#<=0ivCVs@_i zhp$8!8Z;9m#GzbtMg#P`v9k|x2oUkKW#^Ke+Pz;i7C0xRLgf4!LloH9MW_d?sUFpQ zQQI(r1anw3wYaBC zW{uC6f2W=+Iw5l#$~z!nb|GBDTf)2@(P|T?!#T3=Ysg$dLZT@i#)!V&>$4D<*?Drx zDeVLLZ09LKw>jL$4dba)Yv6y3lF{;7A*P$!F(_)`{{;NheQ30 zBl;)SUhAxs+mt1V*{D*4tx|Sc*{f-&1>q-*<_iTPwko#hD9HZJky6SNQ^C z)EF%CUH@8bkRUAAmqestd$89_YOwU?LcrBLCzp6EEyb=~oB_xD{4 zIrA5eAtLaCk!S@^!~0G+3J6yB4)|1ZU?yEn{LnUjz}&cjy>GCsy4=7p9e@CqjSS=& z!FGD|eD;GDzOAXSpnXwEVfX!^jwcoUPf?k*iJaR`L}$&WDG698!(QVn2ZJYnt6kA_YRpt1~GLsprcUJ zL>K~-QkK=+Hi)kn;hgDnwUKyI2ld4@>lnhMr+l3H7{it)`c=`ICI@(KuUcFy=dqUJ zZKu+;`$b(6*LPH&a&{l&K5J#WZnD&eS2Kby<-ElpTR;<2uG~u6T7q_`M2>3kKg}Uj z5F`ksq5^}{(jcm=$MJV_QIEF=m!&RZc6qSC-n0R&x0JSy;L$1ZYIy+510qGTzc_S# z2Qd>$&92})a|pIX1vtQj6YiX$LOfxnxD;&!Q22@* zN{P|KTArK)qT_l|=^L~Urj0wR(GI3I-g{lU-oLTxvI_Yo>9o?wDQpu#f?`!ahWM9F zED~VRzTfhRQEPt-TjUIdHfK#|H*guR3ncf;RX492gj;ar&ehzg_|l{^-wY@2=PxTb znQt8H%pP6=?cGy;?S1@NcZU}0wOsbo_BUJzbQGuRR_gbTriD#m(bT<9N^pVpG#I50 zq{w|2U7_noZ+-dF!$axmn^eVByU7fT<1?+rKeE>5!+LC-LsDZ6|% zJ;kZ_hEBe6Xz9rLEnaQ?`Ni9y)TQffE}^JB!HVcEZT%8z5qrjariLi#PeETSlS330 zRA}z<)o^3jt3o2|Fmiq^gW zC7(N2kyJ@!zK+KaW~bda3?I$?fu|k!)M{ivW1Tx7^agDrczT7bCNJ|+0;J`{Poz76 zue#^UTa(?buFo3wy4pSaHsGa1h>A50ZBl{R_tHPZ$ z6K$-+5+Y#O2RW`Pcfd`O1D(%eYpU<_`74ELQ+cb0dQkz!R2am=P;T}#PC@JrsiuAg zbNa+&F%yt~7LU;=%catwZhBFWKg)@T7Ijs&eu~EQ67G&^Y17(4S2_LBc=r%#6d2{@MKObNdcpXElUmpMmn@18)R1-s@`8035(7dOi z&}gR;<~{)ub_Pi={jEKjRJgkxA3d_0h5_TP+>PM?ItZ!KxY` zT|V5Ay=%Hat8`%2!IfoY^@ooD1o}UYGCQlPY};qC7c|W#euBtli%sr(WTEAGt~m#S zn86I$Uz{zrlHfK4UZi^M(`*y$UKxaxdyRJ#IPgJ|EF|Xk_l%QVbY4v5Tih-W!Kvj6 z_0Y0~_bS!!eQ7b0ulHTpem}lhrwcn1HNF=7T5)gdM<(&E4Q_aS$#c<{y4V3XD6^ch zf`!dB5rxLN$Fra3bSLY^N(x@N4EEv#E#DD~RFKQh8j?zw{D+h&v*=p=g$MCnNH&j+ zoWe5+Wjht@LJ&wZGyBjT zOc_jr-c+jg?hkOTV!~!%IUH}&&{D~7yLoh{z|C?z!H^Oo7s>>r}aC0I`^waYs7!{aQL*uFMb+_!|(z=Ff%RoLI2AhySc~` zR&jzumdHW>HtYp8-bM$&h($0LIcQ$pDBdA!SFmy_tWI#{C&KnPjJz<@QpGH1qh;&C z5aLsV{c*MS!4TPB(?BTV`igG+RrW6A9T+%30Mv%|r-+D#sxLE3{|j=4EIMaI$`XEr zG++q(PSI|p?8DY*NlF*$j5pvMx06S~TaI7H5Gj3|ibtt`=rs({W8;-G@kBgl3GtKP zNyAicjW-$D&lnt3<1NLmV~nttCzt+T2;5XreF6s-m~E9OMoWkk0q1cOfN+()dcxE& zm)cEh2922C{qqBtA& z*}oUAZy3JB2>vsKOLJjvR@NGNn8Nbu)k6&eM!phe8pFI3wzt3s>Y7iaKY5|5ASbjm z6ypjTAaB=2^qunYOSLN4l4vXs{NZ2GLs(uKU_I@(&7X4%6ly;+RTnz1j9NbhxA<1F z$sW^d91-pm!t<6v!4vI-z(0DyFfF>d15q^5ox_VBN7rdrRs($|k;V-rQ0YlvvN!HGLpfao&2wp!0w5RHQ@BueGW%v^@hN}I6_%g)GMd7I>l8mIts8~R}7^FFV~k7 z&1Fh`DUUVIo=5Cj2${n|sdDtA3%m0BS~ijS(;WKGAB`@N{|c_|pz86%(FaQOL@5dm zRLVCtN+GGds&BD$FdR^1Zxws89NmJJmvGdWs)7QovnZJ~DKh|UVadN-gb?W${}6~w zd@G~SdjNoyA4dWwC8UxSJ06W#kQe5wT-w=qs%W}v!$sGO8iT^Efu%SnKQ&E&orO7Z zy7+ETuJhQTz#EiYOTeZH^jxylrn`4{;>OK(t`CqT9S|Jqn{F0+f-@6b|3A<$MwMn_GGEQ>i?u`p^;7H zXOvCt$W6&$_ z*GBy4QNN^bV`}oXyFA)PGK|Pnh_>5KumR*?uwv@&qj-(HJr!YmG}z}#{sX~yChX|L zxit>MM`rNUz^;_(%U}$%5P!{C{YekWL>!6^4sr+W-Sz1(`wYgBE}Rl+K>PC%-XKSW ziYhG8$CHZ`ygi>;SVCv<27=;DEZH8X??PCZBN_Kx#YC7Qb*TY%hz51E@&p9R#`Gce zY5fb-kRwbTGUc;J&7S5T$=A0jYLAliuRYjulRJ;>?d2%F)knG?z3Wp4$R@wG5g(=v zjZT7T55As_t4WQhyTMJ>2a7WlRzT<11P{vT)c!B@RW+r zRDlzy-r3UxSmV6bBJo!jNh_zbv**uLN5%oc$RNlCuk9&>kXQYG-n!ZlBKw^p-Zo$z zu2M8@DyOMnKoxGU8nOs5V%ZM7!vE+^A_&Ce{0LwK3={e7qv>`Ep7L$4Cp7}y)WpZr zTEk#-_ZP$S)ykc-nVa2AvxLg^NtS56eaLQ2*E`@;6QUuIh z7CIJR+E@U{xuvBa6>rI`+9=ofi)@7*`<55@6G?!hariya5ctbRYBDoRB26Ru*s`-R zdWu8Tf=1m-4Qxik$_+y~T_wS)-;{i)F;}+B!F4L2&;>eGVw~nbAo;REGiL z!w7&>Tlh+=@9heopmrn+RYNUL;IoypZ3=bCMDtB@J6Pb%)?h9t6f%9Lq9K3+(rtKe^2;IAr^Xi?*+QA2Gc9{Ya$#DrKw zrg2~BHD8B%&XD1yJVFe$tt_w?Wg2)lRRQPW(jkFyZlNWGW*QC6*2tE}2dsf&p#{SW z4#n`9CK>`NLOzI&Df=)|boyci+V%9L}$Y6pZ_7N3gg)a~@$F(POk^~dl*3RQ|GBN(T$k}33e zdpaNs?WY^9f{%WrQwx)01X;;Z`$Ogayv$@QV+cq)^U#kud>oD4U+j=gb;%uA!^!Xl z(_E5yu&nmuBq4SfD{(~~_`N#Bd$fV-v#Olzlm)CI8S?#VNQz|uH+lm-c=Y3#NGYp* zH%o|F)>sSD-2uSShlw8inOz`xC)LskSYYfGz-G7n>u){H^vqmP&N;a+vt=Ak_ z(1aW@Ks3d*QN8a{MJPG`4*i$c-B5!`TIv^Vfz0Y<)*oH`H(<~}vd2z+Slns98an#o z5ZPU~5G4nDAC%nQ_-7uj{x{Sww&6MdbE-vW3vGR_=MHT_6rO`c==xf!&A>?HxR$q* zsFokYXW$k8sObFVqu7jSlbR#+nVZ6~fpu=VRT7c@%}xR}Vl%+5ld8Yzp(ZW=zBT=X zwX}23%agXAt*q? zwb8t_Aii>bBbM|PPLPJj9lUs52zaDJ&vz*j0VY2^*$_t^5AST1``6cn=3(oXuvl%n zgo-SK1K(Est9de1X#*jk{GFs{CAoIPHm%xdXDGS0PC|5pAr-dfW}PDtc%3e8S5K%W zX%yq$rRV4BNPVd!_!J#T>NKQrdpJPvyAVIemAGY4;q6&Ta5?=bbbqv^;9&%c_bX3a z%AtH#iBBUbGU@lS`ngyLhZ`0Gpu)bB2rW{@f;vAZ^kVt+WV&Scl;}BvFG~?3FWuD@ zkeuFXc}puRT*Z2hbRQlT$WA3%vk)DRh)Z_`G7v0w=uHkO8VP_$D* zMN78C19gSdMaZUrz~(ptDO*sI_wC72vQ=~SRx_$=F4?a75W(3TS)(LkR6vMu#_r#j z!R+O{!ZO&@KrSYD`@f=_EY|_GZUImQE29ZQzAI(nhI0Kli}%9!B|PM5bU(AcOF!3T znL(QND$1V`LZP_6#60-#K5+W|b92BG=L@`(=t~;n%kkc}LoWXfL&VQ{J?^f*aN5#) zm*=atmPZ(W-MTqGLo%&mPtwDMpHM2#kSc5Q$xz9k%OR41K#vmIz*4jJ$>x-uoG>BbK7M_j&gK`#NgKSG zM^|mZI)VFk%5t^qorT)%#1(rf7yK<|au8*WB(D;Cz6G9!$#9`*B`Bx^?nNQ%sQaa~M6sG2B1^+n@2it4c! zR)jy93%y!D`eY56IJ_LUt4zO#Y@>ts3$=1X6EtpB|E3!Mbc z$afaR!aXwqdf}WJgH;|J+Xi2zH)sD@Meq`hQKK-$LRxBS%5p{%G=^lAx`8tQEBk``PYtV5B8Ha>~v1b+BY|a_EoNR8e!6o7| z09P_fXZ?RfXZlH3R+hPQ=dEB`)H9n#zP?dep%i^~$pCES~_>><7S zNiB3?D4*fZe06!L+qqKh?W@reF#dDqLy~nORnB%Z+=Q>ZHTi8_ZpKV7-K|kmi1HM< ziarJ`kv!&xBX_2jirA(Af3!fA{m!%)vBLJSMR(pQ^_ql^OINW7);ISH;1e?9m=0}1#7 z5Ho0p3E!xjkE!wLE2`>33phtDSI)qFzL-dh3^}sSWJ+Z+!6k6?nki2vT z?83qvzp!stxBr1JXddX{evCoYJ1<-V+kNz^Uj+vW2--)rT>#o)SX}!94#9QCygNK- z-lI?;CEjVoHeN8^hcAd9+^1AI8)C@^i6MT}MO$eE*TpLxt^%~VH_}kOEQbu$la#qP zxLWOf*5*~YI9E#-bQJI3aY4*q z3>as7-hZE*$49Z>P4O%C8g%XUa_}1aYLOGfFl1~=x2XJA>rKJ2YZe+^cZUbpo0fSb z>>`lSe-epR2OOkT$+0c;n2t)?G%(4nNStjXu;CC@aO#B~?+*9Y?h(uO2M+}`@mjA` zgfdeh>F+Qx))z(?mqB$zy7vK&2&NF$^H>rKPoLi>v!tLBi9J2B>_ESU<%1hwNOb*j zMWn%W_Iq$417{qamD~A2&bFYyp*S}yfVTHrkf>YJBv$-$Pu+JFfs6|r>$aBwsDY$R zPRx{Ol<}hrR4TCn6A6S+TKwqB5Sbh3wnxCb?vVvj;<}Y|XAtA*BrM$Am-PaP` z@$9MnN4n&lVE5YnWUSVo&&;iedgGx&-~Z&F0A+Q?HjIDIMsza_e8_*aLx~9{ENy<8 z7NN-RFQ#*7>-36StWXTevfqwS9$8NUicqvCAhw&5NVfqvlY#(wis^y+pXr*JlaDN~ zYZlpIGVId>cqz7MfmsS}DnAt58ffwlzq%AOcsvT5^$7(QEZ4-mO#Pz1bOSQGkhwJT z1r`*nVm{Ef(q6iS3we@NSakKHWvqcGJ-z+MntO|Rs-$xMeIy&EpuG5Y5D~havUvtP z)3AgO!ku}+1hn0j*{lPel4u4gFb{|Q%5FQXd{)WO>lJQbw+@I5OZN}ttJ8;5R1E0# z3m?BS5e@8!EHY?P-j4k8S}705fa&~)_SOJYre zpIb$+2aS=6+COhd0@{VoLfQTebV-`fN9qnY0P$JqBd>6VMB)@v@HH~Nnrt_0^SVPt8dMtsCN zPT9YAN?lbZz+ndfL%vtvV{1b=;-c9*69qGXFI=uFRK}>Aa5vlSO|Tqq6}tx}%*PLu zYRsA1@L7$)x3oDGI9kmC>04Wh2~d-FWP7H&050YLr_|~qyPEWgKQ04C3?oo?N z&=~b!Riq{tKnr!FeD<4aM@G+ftn8yd*%lF+vf7hN=|YKa+P*Y_r@wlL$>E)0Cf^q& zJ2Xa^=?VpO;wc%rBLz};@kwPu#3_3974MYFQh!?-Bj^I$&ssfE%1s!igL7%Dvx4{w zb{3i8<_{B{0EN%x(_iR0MZxM>L5!{RF#4FrnZkRLeHDe$htCiAS+-o>v5Ng2?37{F zoPr~KKh>@p6b5U5>Lr-M7uBw?1FboyJ=JIs6JnaExpKrfnjqiYI`4S|r&df$=6pE? z)jHKUkSUsO)L+&a&85=Uw;|uI7fQnx2*s)lYO^9TVjfzzdqil^)_bF*1s}1LV1r(J z^M7Cx5_A1+@|2gN5Q)H?Qs(*V_B)(XB!ozKX`_E6-ghe-v;nC`8UOb}UQ{~2g6ogE@v z??q^3o$nIvAGKp+CI}hwO09}ngfC;WPSFBVbqydBr&SjmpamI5*YKa~Jn}R9dd9r8 zl_HNhUwB1TBD(U?!lcX>=8fCTU3@@(+(yNaov;~{FH;xrODNgk#ng|Y<6h)EW`E5| znxdn1Hu>X56J@%Afb!3LFPr*kx+Q*51w@LVHoA11;W&w38jOMJ*ptn>+mgQw7+Vj6 zGc6#TY?wbEW^l9yaL1#p^tT{eGI2-wUzY4kh%Dk zdsMuF5yum2X3cb{0_%k{fF%j>#UR#3dB7Q}eh&VT+#QOThy***Qm~iNpLecAm$CM z^dBOA949txu@i6Un+XY;37P1a7tA4+I}y1a;P-=Wz{N_{CeQ^>;dPAEl6AYv8P=qs$M_fFPnyL4LBCZ1jR` zbmJWKJLH{QIKT_EAqakmB&hjQzR@RVmf+9`z=qi4n3!RUlz7WJ?w}zuI3@z}ET-fC z>6WChddZ^F6AT4dg#xTYK~_{cOfYH;OREprHPmrMw<&moFg7?f-rp!H?LnG3mX)3+ zj5UrC>iXastw$%uSAFB!Rh8N$R2H5Z&!HHn_G#4FE)S3u5%6smwUs+_6CR;ufZ7qF zl2f-vEZ(x+JRtA*wN2byAea00CeqWer6ZChsFH-#F$!-T+$S#L$G?+|=3OnW?U4^o zw9HdkK-|o0sKpZAL{#=T1-9S=dsY$u9f!vb&;7!O#~Zqc^8g(Z88-|=Zq2;i*s$FP zT3Ol~ph}Q>i=ckWoQ1hR}E{A+xL@&dedNWerwUb!$+O zc2~woJ@ViodGJUX0hj<>f*NL}}DE}P(jNPzBOT2||(ge)T>pkZ{O06c$Y^_0H8emZ6iGvY*lGbUL7is5Q8y-{} z4%BS$#zCnIUDrMVGIRHuRPUTtCP zh-&%M+&Mf6D}|8XvcGb68O_Om2?d3$bLEQPGgHJa`=%isXl~_H#4CEh=6JCxuzY$!S<7absl+_UvuqU#M|+U&1`0h zXIFUA_3CXkX0z$TtUtj^StRrY&Rd;;MLf1#(L6LqMh@F`!JAe|FV_4-X2t^lNl&Tg z3iHWZ7t(-9v~P}CodUb}aK52k73Md$F+`|p0yNX>W%o9zCDF53OIA}SD`P;}dvKPW z3BPg{h-O+pRp~}-0Ki*(Yf%?~rA<&Z>x-2I(?*Z%bl49fqnHlu!W+oTf#Y%GmUKq2 zTB0z2M=`QE-Y(5*8q?u5$0I ziT9-Hv~HmMHaPJ&f69F=*>LihlXPY`Cy`Y% zp34}@Jq23cFQeb497}O4yiGmPLk|e7yU|$}k`CEmqu*L7_awqVJd9N!d}<)M*3UcY zk#NtK_UD}L*Y$f%>RN)OeEYPDAv`zqGQ3Nc$jEf0>9U5l$H;9}a15~3Jr+`ff0>2K;T6&8{icCPz2`rGY zqc^_dW;#N(!KLft-z3aGbJ8p}Y_ZpPyQEVWd0&G{XP)h4^E@)Rio9KNKj>Q3UhH~T zKsN8rs|Im6Zn!mkci8qnQv8ot9X@;%ejh!){71z95$S*A@j=C_$tvBv10U2r_(9%N zAM{vHS>*leca};wL;x!mufUB4n>BDxfzD`gp9-6`_2@S?>xatwFL66R!sSc|t!p7S zUgDyCF;O$wd5A&u{$N@MK$@jH4Vl@;suTTQ{KmwMG&dgs?{FZ+#{@K4MZ`&V?)KNz zRG2s&eapX{lFVpPo8wey3~q-h*ar>(fbw@gK5Dy@JD2K-!b9ExK{w!uxsm5;edaj^ ztt9xOqvH&gL_o~QU)#Pc;S8|!P;{wYfj_?9Pbk{^KIhYiW}B_l;B9|96}rU}Z^swb zLiy0*tPeL7{?@oMHAf`Ygnpw2xF8A|LZkH!j{dfQP*IYIty|2k0uwaa^+Ia9+bh=omo4^IDl`2=;)`WT{uQild`8WuFp zHUkym42+@vX+w$B2d6i?Z(aE2dHLbgd;@v673jcS)rX>M476xMCgx`K)C0U;V(oO) zQLm~aIrj9foX@HW?noHy3hUt0m;2dV_#W|YfnTKp5UOyATfVj7E-ej$T0Ye84AH9F z-~&DH9$eQ`6DN{fO@y|S1EKh5G?B`%iqoB0j~~Y970W{&cjeD$56eSsrynH@?+VgZ z?tUL%$uA|nL)Jt)>F|$EFt2q`okT^-_3&nMUJb@8pEI}y9TOluQZ`PZwTf12Xo)IV z=T4#a**n#WCN2X9ERW?z62A+tcD%RXSiAb!k+ZD^0-AP4ti09!3*ilTEhBi}LOEzE z3g8wLAnN5p*jluA$9E?srgkf`V`0idmY$8!KO8Lf0W=x`#4GMhI>+V;riePmY;yJq zCra9f@{RhIH?Q)5TpGZ`mK;v!I-i^3-jkIEw3JBZZ?-!1gvQTGqaz+lu8hsv9_X~8 z`H{5?@=pm~hTGMhLw0?bU;H>0eg#;iN;cIReJs|?+lblRL`Qx0@uyN_zD>NWL{yGF z@x)@(PV1p^hp2Cw)ije~D2$|D#$!Cpia7-6uFs=!YArMI$b6f7l2vO~BayjV*Tovl z9F$^8SKg|?bj9>HUesO5s%-0#zzypUgRsMQI|;AMZcB7Q$cS_NzLw3_Sf23WCelk` zv^*=>ErT%U5b+)z7RK&tqx9ZJPp`>X8)GR7N+o$py4J<&pWko~V*1Ex&7gCC_l#e) z0s*IWI-Z5;Lv1a;c_o-fowpX*r*PP9ZKc`;tDfCVUf=kN6DT(Sy4zaD`a}PPd;Xr) zn}y)0*)t!kjVNI@eFOWyqnR@E>`J2xN+_LrzoR~mH!b33NFzpvD-Hx2Qx%`mo1{3_ ze+<>gY-uZNzLt#3{;-!_Or7hmT$5Ct%<9;M-M?Vtn93_db#*sxb;Wk+gzYwYwCT*N zk3;#Tkzw;cq*2@Q(w)-rJsfomJgwvRPfh`>S9+zYA|<<%yCn;Qb-z6fdm+)ZfUed@ zO=_mz>P|5`$-=lW@)$oGC*LV0U&o_PQdFBTeSPckC1WvCq?N}Sj=@66tCQ59S z$C*W%@oCZeHHzK~MEH*#X%P!CvRTPC?s@Gw%m}oNi`^aHnrG-JU8_wITe;)xGQBLU z54M{ZcHCSA6<2g6ZrT1FI`*qADcRg4J!_vYaDsK?`M(vP&JV>3=%Y3zrEui5%*`eB zj$>;n_FokWhLnr>&}rg+hBRbGV{D+*m)uva@5^6Fg?Xa+&V`ER*uUJ4pRA03p!9yN z@*g%zAt>>~-rlYcABrKtss%aKf-W(H^0%l0tQG5V(jKcnL)o7!*GO=^1YeL$ zcw{l2*j>^vkL-_9j7KIidC1Tz!x1v{$#B06|B_*W#f&25*l2;HEYNR(i!JaA3tVS~ zN3E%8Ql{hBnPMF46X_bf=5_J&Fe3(XZ#3Z1)(;g~%-SRlG3qs;3B@h(}?)84go zN!Rl3?w+NKy^5ztRoj;=>Fn<4G?^fC1HsnV6YEFim^0%n{md9r&xra$YHL6Z3ky5i z3~8}tWQMGlU}?HD=5hL|vdSsK_J$tMn6bTOa z#lRnZ5IHh3h#DnWmhK=rX{rZN?bwKE54bB+!$>$ApG|KVeK|3VelNir66DDsyp2H_ zzCPq_{C={-DAfsC{bw_F7>%$*YGnHkwO>7T_z8T$KzP(aWWRJ@wnX}_ovH(-0P0qbXfdWm&gJS=P0<$D^uU zOPBX9>r|GvcXuxD>{hzH9~Hv*Id-#B;=99RAPdYCT+_8=k*p;fmnDm2E!h-XGJRg0@l3Z_OEzI>&1TxHC7T?+ zj;tk1ZOQ5qmQ1VwHG;JJjA+0Y8GSW&Wkzh+dn44aw`^Fc5vfcHHAvRstqieG@%8kq z*S8ba>s={fy_O}dS2(`8@d+93mf@YDkIuEg-R9QoX$w4Sfq#gvTH$0Xydc6T=GIG` z-Cu5l<7^PN!TmN^V~5aWt(V?Hjhq6CvQzA&r`S}xz-BqiOz_pbgHs3m(R4{f`y0Lu zCisqW?!}1jer?G{U5#CqwPZ$17TNbLnGmo!+X8o(Te2TpK&-|7YJoy42pO8^tWaof z$=o&&Yq7012-x7>A!~M^9r`D0$x_LG=_#Grb=bHj*;Gz~Sz6evlQ21aU0EZRmJw?k z#fXImRF6;bw|bPY+ImJb7*WHimS~^Ph+$hO!TNL!Ti;Y0wt4BHr#L%^73YOr0^ZtF~#4Z+6v|mcctCVeiCq4J!S9 zqeZh>Gh)&5C7744McX*l7R@<~kM=lfrfk-g5_~egNV`2fn{{8pX8k$2K%1AaS$3gB z>Ji(E@nD&tB-WVPE4vUJJ;(y5SYXfs-?P9w`f5f|%X%v`TVYLnXYx)fyrd_28|_r; zV}trA!pMQ1H~xV>t+b6&wJqPIZEY#qrp*F=U(cyyuRW(j6V2AtqnvCVqlsg$0ryHf N|36ztGT`zb0st}PB(MMg literal 17870 zcmYJa1yEbx*EL)yE}?kQQrs!-w79zmcZU>rmli1QPNBHFODM&i;F91@D6W0^{l91C z%gkE$oPF2X``#oo$(*&XxQ;lLrn4Ey&DO=8%99)8?VJAY?x=&py*eE~OWT$8V^!-v8 zF`M@2+8`|7>gYK@=`>Inq^2VN4k=YpO=~B~;O^@;@}J&ss1c(L5naDU2Y(BF;cm=c zcc))orZq|`89UbgOWQd$E|PDPxBnQBcfNn`Uwe3Tg}lZP-c!HWnp($yqUqUoqxqzu zcEgr-gN+0(1gV{^Q=#rs(p4cz4%KS-hD93y{NBDKI4HIa?PK5XZcL|r5pZAOrHm&} zi_ht4MMgae3e|kK|HkRdcT)~LN0w0WcGY(%3dqRFXv=7b5^+?lBxO5GfE)}%z#7gI zdInve!bi`KkNvp@gkE~@wgAy?2h%5;ekg%IKr(qrf2DH-*7? z;^cR%2Iwen`%^={eXe>QsW3J#bs=ycF@iI*Iqb*v#dz_Ds@25PzaNjKXovpL=74tHBa<3D_8dtrpmf^gJdP zKhTa51YV#tXH*hys>S#K>n8ycJvwWSiyazlf%>&eHSvN^60!qWac8Trpj(g?sh8ban~>cf7ucT^#St<5nW zq38ySGxX*nzL^Zm-|rvt>8Q|;tkAxnPQX#Tgblw0P3;d5V?u8bjUbMakWx(OJ>s3* zv;9X$mhfHz38%yw`?$iRB)c}9h(~!cJW$x;5qf5XP zny}{b4twoL`vtoMQEY3KFzq>LuALgUk#6;hsg;w^qoo(BebMRw<;eai)@Z+2ITP(|2eom!@bnx$JSyvI>Rs$zN^@R_ z$=FlK-f!tF3*wp8(}V_Pbl-u1`ciyNTO+Hah21lh>P7}9BcG&&!vLCqV`~xv;*FnI zjKI~n^DAiruR0Ebw19^{yF=_v3g~0TCbrP2p=t#~+eY8Q1lmW@S)uBBV>;T2H9Wv= zBvEUVRM({ubKuz*)v@_BP{HD{b0V>4+it|^rO%n>BACxd-9dKsXA7WxVEe{> zQXvjBGKuDZy^MUvN88W8iL|LK1Hht;xRF#eDv`Ca6A~;>+bgku|s0|2_ZzUISY;_;$ zNk}s99WE5>6&^f0FeZU}`E=6sGhU(I+ACr>fyg_)=BDVmX1M=etKm~U?wUk4I?ZdZ zc3TxD_7;g*A@UY7NR@Uo5C#qv(Xh%3{hThQ5o@hw8V+>1@^DI$FhIo3mp#%dE|@(| zUXPYtIm31#*?XK2MTk!Vo_{NC+*qYZ8HgqT(01q0Mh%F&*w9wVv7m_Qe}FSe-mVxf zuC*+rm9x3lw*F#(e!oi@{Mg<~x8?K|HB@0tMK{A%RM&FWjYZdeG*Gp#)?4E}qqsES zbS+3U#3`DgxzG(Rjxa(D_hJ!eA~-z7MjD77qNC{0nPsnhF>ysDbb5#Sq@gCr`7<1> zVUxd;79dvJYXBsHM};BeEBe{!gnMyLgWrd+^C3JWB)*|QN6p$T&~-k;@_xvARd4~9 z2FLX4*`U{Qu8cdUI$m6~`WhT5ZfG>RW4&g2-$ z4-(gAdU8y|e*G@SS#;78!R?j3iJEw)VseqNs_6bsVZ;5<6(3=4bi5i6JXp!6S& zqaPttz{)@9@;O+!*T{B=vJRi;m(7ix=bU3;sz@)Gtj!GoZkBCg$vm04#BU|(IIFKQ z$Tdtc3{vvaI&J<8Z)Fs}?hKgqtbItNzV?>9pwtmbTC81H>U696N#JC$_0h=gaB(Ll z%<>s%KU<4h8!fe|W3}^Kfq;7{gtGFvzl6SVFMhxwK>xw`_<(Tx+`5(=i%v;J4#NjB zbzSRRieHMVc-bROQn$KEllGUlGylcu`F{-H9rjL+`w2v_fZ zqhJejI8R-bGzRh`bE#QG!KT>HPT>8F&Ta(-fVoi3|CZOYG6Xqa>_uqfZMijZP5yxR zaxPfntkF9$$?4Z(7SDZ|nb*4SgW-D5m(mkA59z0~17}qQ0}z5og3o{-n11cRWbk3< znL2N>Ke0~sI9{z5Z=D<69UJ*&D|hCWX}zJdR=;|Md|k(R#c$f6L-YVUiqMIq_mW-O z&8Bf}ty8lb-5Tr4@1>KJ%VUI-bQonZ+cZI*J|S07X80*FPlZl^blS6~z0!=#)U3I9 z9BfY(8M!MU%EnW*j98`c8C&t6b8J#1FAeY2AMgM;HqxqFI=BD(}T&!m4!guwf6irYL9r&Jl?VW|SAS)=GP%BHzwIy*|h-J+&!UPCYW>Ko|H{w&f zSErAq>7;Ny{j>^jI02uhHv)qY( z9FOmgK(M&X5B%}p;kW+7B!&U90P;Z?onw0OWT{pzIz0Qi5&<-k=%q+z^jxV+`;0@rAg9yYl`eo)@op{uz}k%W*WPL z7{~L%nrqRUR&-E)CS80|&W9KSS5E7Z+)xX<*kHC8PzBm;OoB^<)!yEt0E>4OsDrSk z0sOfdRD=C8_1oXZ5%dSers_9sJ>Kbn9{Sjy^<@RL{KQmS)!x*1wfInLZcN<47iY6K zkGIHodf)OOnGE2OBLq^+CjF%B2+n%4TzW|_Ygdiht;@V(^4`JjfCg7zSuvq~9DX5w zOPSL9gPh*Z*hw+m7Z!_AyOQUF%}0qbq86Hw+e6 z4djp?JIJBw%hHl9_3F~qFE|-wGDp2J}&OQOTsy=M_ z6M91^R=9k{O0*aIvgBl2{fTi`%hrTU*>-&V%0~o5udb!gV0UYi*Tv6 zzJF2I3N{H{>GMwuSzBWyNY!cc4$ zCoeZ(n3E9cvxb)*Sx;ANmPT7_CV_63k&Qq5sn%e7_LGJL=^i|sXI%O94nfk8#~eaWGn>c$Tw8{c+VZ z1`MSPZ0~}Mk=IIzQ#chmyVMYBb>5_^8K9fgg!{2f6dRETm4)jv!-7)PG?Djp`aA3e zq&es|TP<)6VrFr2$NZTq=0yW>p*!NcwCv(bm3QU$q zVA{h3zBht7Pm`63o`uhxqxg6AGb;wh%p&V!J@ z^%uFrhOgWlJwUmUYv0UsJ;k;J(BzSF?$p=oDbdwW3v-miJc z40`mIoCe_|H)zNKnsrJYzd(q?T=<3dKqvHwUz4==EpJwl_8%BFWlZsO2+iW@@UW-9 zj$2)3+BEHA4yVJ5IE}ZL*U4~KPyY3BcA}EP#*=z?4+*4r>g1VMQyIt|ddpuE$$2+O z!S!2sqndB7bJ+#So>176=kcu=T}r6?v<)XPc`#|BEi1F{S*?G2#T)MZ>*SK+WV0-s zM!eToZ>X7<2TA!7+!P+ef|QYM-{yVkJ;$RM8LZ&fu;I?h)yve^igYJ#A3H9*CH1Qp z{X)~FQMkPVH}Bm?4w+`2@0pYi2(6$KiIq%$-CCf z5g(O1MZQKlFKB)Y-imGU*KL;0o|m@Js?oJy@s*Q8zhPSrx_t1cEIKL~(;(j^3@ckU z(>`RsY5rO;M;oT38nuK^#ZCEc*-pmOgV`vg0FS}DO(piO8}@OZ4_09$)Vhw^B{VxO zZ&Z}KdX>CjI~7%ol6O;8T58im<{3(MaL5$q2Mn-?H{p2Pbsoe=b|3C>65wL!&lejZFFG~i>TXEHE6H}1*rXPpqUEDcL?EJ zu%Hj!PY@=-AhH#Xb5&j!>%KM1S~eLPpLh8 zopbVOy3QtVx0%BU1`Y>7+MHdRCc9gB-b*=mSEYE~l}O~jJ~b0`J^$Naj$jrI8_8I- zS0_2arxCrrP7kVjF$RRVYW|%=-UZ1Et{DSV%cROMGK|n=5A~H${w8l1E8GR8g0$(L zOz3vB#r1is78)~Rkr;oGs+2{#RlqtS@K*bS%8(BSnMx>#Dck$Ja4GCAgSYz4ASt#k zAm-qnV9m;rsTl>i4r;&9ojQfT9_pO3o1vi2;y}nXv^t9WVXU_-stQHVGHHKwUUS|d zB<^>+C&{*XcmJ1KJgi%J<;tD9hUL|ws_R=B@X>=!XnQ!5Y0=a-&ZHmV5E(}vrziI1 z>H}4Qwgua!;<~NnsuQ$IL;_B-9BNA+Zb{=_gT%d#J+_=*y1S38!Lw0^e=?jEwKu<+ z&+h{3l>uY@$_6_rCRASJKjM5EX|IotC`){s^ZIoamCGzknbFk~zxH{vjwdfzzQ1jg z5!MR(ep@rq3`%R_i=HHB!qcFQ-@1@-Y5q+CXB@+8U4eS!7a*lK*#_zG_X838b9;)# z#wJaotA!-D5xR_bJZUcuvEUYO0@vRM*OCFe38M(qjfrL3t0y2r3Mm$E;!p#}hTb*X zlLLAuR^Mi~dWTWIMK*u`4s(mDg+oi69F_bEVJ|UUJaXC@^thvDYjc@GO(dHIEJ-B! z^|e`cB!`AOvHlA-|8Rf(QFaOjws~A>~dX zM-KCW?<*gkT;mtJ#m{v3 zD*cXFLZfrceJ9etTZr@qq;(*Fh`uVjIQ^na?zoMu5w@=9vJjlk`{gqnwZ%at%eS)3 zuf#fTt%>g7I=@aG8;Ip?b8#B2hXW8XY0_|+UZp{OocBCtQEI9=8+O08JhB(12>|JG zOgNSm2MC;6$lxp3$NL(R?M+_R&N~wU$#gUzo{DcoTdO^EsQ16dMlzrd81pLTWy$iQ z1f8$>yl8#Z?G(h|bSna3AGej4S;>zm<-j+qM$5Lq zm^$(a{f72WHJl>`WM{86;jpDOL5%leAst%L&M6KN`7923(hse$lUL(Srz^_}K(E-N zc*Q23*2FS;MM+YDy>V`V{mVyj2&<|ZFV3rMN>PpXL*qd02|SL193arNS=hCNfRnAs z`)?<>l^hBJ&u0*=2dLb|2x@clV@5X?@X{N3*%8St*Y)RAEN5e{HozQ~L5h3{Z#Tz7 z@?Y0&j)wH^elcbrAC2fSWSk5Om?+Q6^{J!7nH&#u+3#2MspI^h!e441DEy&jEGmC* zpz{7x^_w{6V7FJ{B5@xZGW;0PyR&xtlYXqUa7{cDL9(lrPO$ZM#N z9aIyE?*Juzt)XfUtta*FMhOQlsbTikMmWC4PK0c$!@`bC9Vnja02|d|La(t|Up;*s zSJ9jmlfX90aFmSfLi-XINj6EyxEe2mlI6$$4Q^SX+*%X$u=GNE43dhyHUZgJwpE`{ z<9!XwKiJ!pWsy`^NA{+d)J(oE)7JgJKt<+jwgb#lF|CPFsrSZn_rTR641WMgMC;Nl zUIYj3Paj3iXt2xs^QuE+p^T=|zrR>SA9RuLeC-csYQLAt>K5J9R`h;XV*z{Oo)N%2 zl5@r^qL~k15S*m$qHl+PMuJ-m<<6YGdmH#7QVuTSscp8Th3Sr%`E)--p$oa%Z_(@* zeA!xH@$HrbPWuto;5Zy2>(-Zqd3kkD@WU}vxgBK5 z?s)$1Xs{jb$v!?FMst-yOk-dzOX)9$Q!^aac}ey8!@}+WlkaFuBAc7ESXom#>Lo0~ zA4C{j`=(}E(>T^K^AQ7Di0Iw^MvN&~5)-y1;jO3Y!`Wc7gR_<|HVM@z=Oi9w=$^(!8n?4k;fo5x)uEZ%(8|!`O6aY2iDPDvE&@c&1Use@ zrU-$n@jgjT&AeWHv_nAy3ekMuAJVoel)OrWQlH47%w}jsghzATFCyo%h*tZ;QQCo` z3L)Ls-=Y3`k7-@hTS$NJv1v0$bZ~ z3o_V~j1h!X5|T{{yOHs(z};{PPt}Aqm4lA8j3B`6uNmd=6RkTCGlBBkTb?#+QW0Kd z-Dcd#4LcaR%o1ECzt+e|AC3=NC-nC_MD< z!bi5!t=++KT2$`;+vC=l>HHu!qG4;98Qes*e5P8;0TmO!uoXJ0e;y8?fx#^YUm+r*84M|uRQk)(eaT*FC#mi0w_g~;!Dm5$$J7zT?C&})D6H_+b< zWkz1r;D0EvTwU~_e?wu3GOf~nU{QX6iqo{dCaDl<6oAsHj-w>{%omXi{(kS@Iom!_ z>6mZ$O=*Pcr=(>CI<+KR5${_S+|RG+YfEB$@5$KTwrxmKC@Q7sx~ z7QU+W34|FNVKQ`aZwr|SedGbB5+DxtZ%ma7DqT-hZh?=v}ndp#;^ z7LgXmy%bFrWUq<4xGWJ;hH`0tcJtB+o1bDW(hgIK)CWSS#oGc~;X(p-OZ!8GQ_)_JB=s)L~ zUJ;KcRUSl}5}frKV|$%@z0Qg86~1V{j`xt%k3wH@5ssI@CY}P!qf*Gtp;A~+rBdj& ziO2u7_xqcMO8?C1n^gX5D^&kYgnzDmhz#zB(t)wDrQEroJp39juxjqiTCA*P|FUmG zO5%mP5z$%>a_@L3f1_!wBiwp`f8sjiY$Wo7&A^97*tR2lzwd`2JhWYGnn93iFEj;H z(LB7o)Rp(s#CuiEzXeP6^Wv4{2&_E+cu zhgPp_!7d8o^U1$n z@AD5=hCYhJXh9=Z9&6Z>t6m9%A_GW_U@S&1*5iW2#=j z-hBUy2S}enL>E;>R9|7pn>2YzK612Z)-Wn!DAuapM$PAnCpz&Pf$C_4wJm;5m0N`8H(hv?imWVnWaKZtH-XTs(dtAXH6HP;*6Kxqt}9`IAC0(V7BN5p_FOVvSi|p^ zH^0+SjuM-tp_#mcMeX6qJWxdT&lO7sz2o3iBo$NWPbhn_R~mKsH*vhk+s?z*Q$n*) z>p(g^GpCx;=~&^QAjUc`OXe*1M9n7oQ$3ij9PoX6$WLybK~~vsIC+kjyoLzsSB@QJ zur&aiLhNGs;;95au*7v9#)`tlimEOQ{>)7-BSfw>&oyA?H~tl*MupJZ^=L3geX%{!5da5ET|L)4~fM zt;7!>{jB$T;xAI+--K6my`o;qUYb+9%rJ{e>rCz)vrGIh9WCT_M|cQ!^eMDqK=*X| z>`lDS-fs>;s3B?@vwOTi!3cW1Fl=)#6JHzeR|@i21GJ2_%|yF!EE01fGts`~cV`2v zl@rpgEC`<>&nQe!>>KVkUQ^c*NJ?@V8er|G_67L;lx;6cu`mbd zQdYc_@PBiiW_jctolrp{<8`WA++1%E2aJj;=%Gg%t}9f~_Gx<7q-Nc;q#bgUwV8W) z($#QwI~m90ZQ#Mfm3qoH#%YEB+Vo7>q%CvIv24$93vy^38|s`c0D{yF9S zDM`di7JHrL)#(4v;XnVfU0gCr_-eLy+JSVXA%l=>$CwVPxu(I=2gC+hZBkXv_EAE| zPa8!Hco>Sg(Z${a1}Oyu2NxCP7QeozVKABTIuZk92-2J6)p<5t)ebd6qqB6WAvFtm zh6dj|w^YT-@=;elQFgbxByI4}xc?~N*Bw1$Q^@k;_KX*8=TFYn<=xI>lDyt45YrkO zO*8E~7iAK+pGJ&92x26UZ5s%ICVYR>(i|^99DGN`(&Ycz!VpW#8#1=0qkBxw<}@~~ zn&hqFB8TA~i6}-_RVJvv%^`K7{LQo5w=mHwXtqU}BK)`1u|M}uy^>3YulvXOvYYoq zneKt5l*FQDFg0HxGkYwBTsh5QqWx(SjbZlGEM9 z{Ahu4skwS0)f*~)d0QZxZ%bh((|M$@Of_`((U>l!1@KHqwxc$De4b`GvX57QBvTn7r(% zMpr%QguECft39s%e4))@E?0Z9Z_@QhS6%Zi@bgl)`SXG6{kL!kvhS7I(CPyH@c?h8 z*c#izr_4;zzG564m3Ev~B;S&`Nse(RRnr zcwt*+?GOGxuUA7l#~A^Aogd5Ev>kAx6Jv*#B6P7J5yI;hT-SSVG7E*otBz@ujH>Zf-(LVf1YkYcdM_X1A1A{9f>*`2Bs}`_iW_>OV}Mn>k10H9_RgAr@?)2IL;+5Pr5#0~k^I z%J%}RRiJ1>_C~Og&Tw--0-wN$_2^LhIEwBn6oKq%1BK1=pnf3LQ&Vj6+0%OoP`d=v z6n1p)ivW15sZw$M{c7ylM+T@95_grDMsF2>S&4=W4-b9BJkkHehM8v5-`W6;*H0*A zcxQDk@i!tX3wK)F|>cBR+pthSv9-5-(+3Gmf*+&h`5zpaqMiswrrcsoU{qGK~ z4j9(k!JIV=6Yyn*L#1MbhB=ld`I#=9LGF+JT$D>>J3`eO9Zkyj!JFfUCri0FC#Te< zjWgu!O_WP+YZPvxLG*odh-D7VuigR`@9kyK*IT!*;OAJ{wJ8IAMM{hRw~6}?md_AdwC(*Bs4iyWa39Swck z07cb@@3WT4l|CL0x8;wlO)2%Lx!t-c^+57qfmvVMxz9@NI;KU}pLqssTs!ic!`7#s z2Sj_6S38Or^rNo$bMu<+vI!B#l_8sJBKAR=pTlBjH(5y#nNLT2=XOk2YH*>C&+pfn z`vMR}toQU}jDBzarWorAw`dOn*FTw$*SllHp-Op6h3iV+)uKfWd2+H$7!610=vhZt zRMib&!~@N8u~j&|KGxRtw>rTKu#M~bS%ufkqtYjgQa5ni z3>_bq_;6r{=IUr|CHq0U}EJ@Q6HG=o}s%;X-}e8c5t9qJ^?VmfxI_H#diB@ zXT25L7#XLo;)IUs+kKX%VioxK^S;_yKXY|OtkvO#TD6mv<0ygHeU$RoL?cKfbYdid zf3?JslE+2nC;oNGzztb!94Un2&1c@G&!v9?ZnYU;*y76+Hyx=7MD51E95wxq#y=>; zeO(2!x7xfsO)lIZU#=2+xVy7w>?f}0M$ZZb1-|wqw0xH-;k+E=ejmR+_GwjN(o`hJ ztwCLoa|@eUJ_r9IsI$?nA!ZnhPV!5t&c0NaRPdN)5w}0TijB8^Fh5dVG}U*Ixl+y1 zuliY%BxR8AKbIXp&bKEWdh9>YkLIV|i#YSKh<1zV?;>W!Qynwek%(&|EeS(#-Pg)w z6MBwi1w)ULLQ6!q>GiK%RPC!dvArYEB6cMw_F~paJ+_Fa()+(`t zL97q6X3=x1tHlo8^CKi)hLZ8MjiL0`izibM2pgLB=zcAwIBOob^t_t}pb9`8QP-R( z&wM8lIE0}1s9Hj1mH0JoV7EP3O^_h0SEX#?)pUYivwG8GI%a}&fee>QZ7ld_qv4%g zu$qe@2K+P9jpnugd3wBl1ianb2{smvx+jx0zk1GPkAX*D6)GLWJw-g@_~FEVev^ zfsnjgrwKANjZmxtbrR;)N%S~n6l7S0PwH}w*`)!!zm3;@=cG7=q4PNp*&>Z6q4U$e zrL7~g4xF1hqFH`k>+btR=@mPn#d&Kz%(VU@zSmZyX8Fdx>O`+!D4{_@H2m6Py~_#h zy$E|>atDWCWZqiPXM!*@A4k{tTNSz3>$p>ET&?B3&1g6d?%(U=F73~nt7k2JZ;8BT z5c7+Fd)KWyMC9wi2w9${FnISmQ9sxBTkv_WmwcC;vx;&!g&RDdg(TJ#d}vkih<)AY z2pH%hDxX55pDXfy{re3`4e6qS4~&>$p*Fj`w&?Pf0v@E%F>O}Y;Desa^XDB1x?`BRR3n4Yxqn{Qkd zHSQgaf6t9)@eS*H={W{%Xvh~m)KFn44$BK@n>GCbHlD1i%z-qLgPPp*cZ;MGG4z`* zfcbA7mDK0FW&218SDGaO6kzER`iznGPVpE#i4Co8 z-Kxj)4V_)avIXW#_&tfCt`yyV#c1I^1?5pVHw|n*mt13a%k!>0aR@^z0c{WjRRJi) zTo-yvOfFoRVQo9yCKujg*Mqbgp%1bnT1!Rloe1r<$&|)$)U_V)YJkBUz3IrrAm@w%J<>;9c%?`T-*CG=T@aWrbr zzflCOrS%eaey^tYrUp^qOTI^c#y{vBVjTfEMM4jVwoe3}!ho4Xl*nT-#}xFSr4jVw zN`v(OP3=eb={siqHnrw#i#9XjbYzM=ehli-$4Y$&$Noc$f~jb#k4~&mxTwmdj0i~c(;v!P# z(1J;*4H?0^)czcQ^g30;hotU)pal`YlyNuW4|y#0zlf5~m?H3UU;AUSw)TY(35+9F z@MLg!{#5+cnClYaq6ZZwYFkFU)q~<w)kKw2ID&9;%_A3@&ktM}r zTO^ui_(<+2(tZs8s4=0-2XFj|Ppx z{%eKKRpp@Fj77Ws*A5+jakk0nXnQR=+u3N;vcXK?1y8epBFjcKk&S~iFDvZ{;Y55M z4w$@}v2xJ5`VPDKU^ZH{Y>=qhmg7w!Z`P$D+vJZwWDs)$o;|fUtweqJ$Z!<|a$__v zVsQ3Da6)3&A#3Opb%rL=BXK{4w3-f9f&59H3b0eQs38`ZNHV zqh@x3IqHDhgSX<5!FkX3uHNP3Vr)?r(Y7`4m}_w=Nwuj!Kjbw{gejfA$LC$?)afFe zHzbIDHQVpc-`FyA#{?CE3=BA!NR4ZtAp z$|Gz4YtK?Eo04<>_IAaxV4_nhBI8qPqvO`GE#D?_k zNqLwWg?}@^xgxB>SD>7-hF{gPhMqI1f${~2vy5F=jgaT`CQ6>#trTjTRG=UFmhK=8 zYKOj38f+7-k2U@BiwSf_(B_OG!iD^o%xqJp@h-o+5x0d0ocRNOD&yUWdsIpv|1607 z*ic?)&+M)eF?E~%Ars@@tZwBet;!sf>p9aA9)X{|{t%wK2_B#wyHF->*mP!xeRCvx{CIe>4Vd2soXcJ4Nt7dm>74be5@^%5U2EMx z*9h&_Pv9p5l*b(V z6Cs3d?hsl@ULSz_R0#K8AMf+-=c$k^YolhSNP9p2foN-i9ugJj$b7zm-fIXcHl)Ic zs@*gbGtRXio85clS0x`r?KFtJuDNfXXsHx=(kTQL=ng3%spwuptZfcn!nm%kYyP*d zUEN_nhi&xog+*i*qqYSc^cdth84l}#3!Mln-S79iq^hOhYaY-)?XYjeg7j?5IoTcYX_A64*@RVW*vH4=kgF#8+dIUoMJ&+5q4;OEDmpeTZ zrqvgJ@^l`1hxQ=M-Vx zzY7yv#hTz}MXlJ{W-9Q4M$B%uvkA0etUrt?@ z>I`+ALJEQBu1hWCJuT$U`hfhae~w0ll?$BnSw1N#HjNW|9$|cpYn&P<9ZREnsY`i+ zV|3U%38MOE*OWvPAG-AHg&`U8e9fYXgU4ODE6uWLey+K#Za?MAGo3VT`Y7JES^I5} zfQH`GETj0M7)rk9zjk}HW@5J{^GdhKPR!zyX|fX)J(@Y*VPjcsx2lgRZuhX39kt17 zWhc0Z#I{jmkXThvTHzb$a!RDQq&FW^7}{uXg5`Z*;tI%--E8PqGAKDg>+E`&?2G%p zBoeSC6E+_wf7!y4OS;Q=;t|zE;zrHaU>+ObowSudtZDsA{&KH)w#$@?0Anoo&|&jH zTgIMyL+YW=X*f7r40IhO#|=G`0F~PGDd#KCtcHv<4`&E|CnkB|xBJV=Wv#j*{l_@j zFOkzmRnL+~^-Ma_A&G-)MR}!lb9&?VN-Ry{Q@8%7a*FS9@+WevIZbiDf65=rvF5GC z{oe2krKz`c6~;?i?W9Lb+bS7rV-{vDXS5VI6C>x=8a&`SKZ zFApkBF3{fn%_Dg&X32K8=WXN_HJFUBcdaNo)zbgFS>d`!dBAr`hI)>#OU2i8fc&PO z-?+)E=>o2*aJsmxwVvNI`0MGPN*dy{MK)^P$IQ-K3f*wfO*Vc>VBI3rBJLtKl`#LV zvul#T@{Nd?v2LJ5{LlJ7#I<~{)7w{&zd`fZZKS|>vO;AgQ0>#g^881o)3AUg_ryu5OpW>?^fRzmoU(E8W%7)Od4llIV891z(eI zetk`D?EXp>4X>H98-GR#OBrqaO0kV6WhK2JwYA!hSlo36gD0 zMV63rucJN&3f76CstkuTxyCEkv9oY)?AkvG6W>fBtFo`Rv7`({OGTT))=jHO}RkS-!DC_iL_79 zKPL^HKK6KjO_>#4*!~{C8hK`ZXU6$7qIJ9O%oI|EXUiOt`n>C=01ecf@Ou292vwz9 zsZ=#$YEy(Am-wFFd`Ja9|AI$p+?5gBu!T950MBm}$Dq+%cfDM9MkGAHiZ7iPkGob` zOzX@4bUv41+!-SKzgh>C!Tb+FI@w2^tHiqCzX}31cq-9$-9crw*7IJBm7!V8dRoX) ze|DfIGnJw5uPMUqL0SV>_Im2r=~@FtzS{4KdIpXma1~xlNZ%EyKs$=_^qAkPE>Qig zDx`1Io~o5dr7U91LHU~EtU4lp9<105muGXV3Y)u*rjiMWa#`&6@PN+=-Dy&|&r7x% zWB)EVH~m~mIawP;b_BDzo?d!GMmF9=LEewDH1j5%ug?kFG!cr39#}<;%XuIyV4MW? zKxfq~FvD0AMXqrUXSlYfLivF@v`Gfb|Dh&C2rLC(YQh-iprYL}QR4gk>O2(8B?C`~ zpkenmXQA;-grNgues>^FNetHWNLPPMY#L`x;aUUB&e>ldL(#kopd_7xai#oaNj5*n zR_-_KY=_x8eR}L;4RgiK?@MhhoX!!ROf?}=)A)5BzD&J|HOHL*iv`|t1mrAl>6+&^P zA~$FKCoJdg;-_Ub_qK$}mA86BOJ@B?2G1@={ju?H3HZXsDOFY$R-aXZUr+62)_?HI zejUiLuRd=}k7Tt@NyQWYs1F!ZURg|$coZpQ!>_lq-dRKbQ_}ucv>Ty!3+H@ZKsTNL z-IX)WXm_{5bn!1j;Z~l&exvDyE?OsE;ScN1j>mkp4Wd~TWrxAa%IX01Iowy<5E~Ss z1k560S8aGXq3{U;*cW9v`}}O;k{3g`Pzoqe+8htyW6t}wN%J@`v)BIih26!AmeGNv z)WVM8p_u-9U?QMfA$ce5*&bZ-C7z#L=Zc`NzD4)Fh2Ipf!}-p^LTv`Gn-@vp2&qq^ zJ`FL0(~kA8(nW@-)Tx^C5y9*c`n53GvsJpt*KcO-YulYfh}?8_IIyK8i%v!#SA(OI zP2q3KUI$V0)J$1E?)BJ_tbwG)Q%4d%&jGsOEJ{9g)ciTKhT37=-A=(n{njmGV5{!4 zFM;Fp{pQ7Fy=yG`Qa}`dC-BqS*E0vrvZ?b8JgmEJ2D{{)hhSMdjowqhog~ckHw6Hx zS;g-E@8I$wVOw1>02tFnSv7~&%4d}awCLH-iaBj8Y!sJv0@m%e!VdhL&R#tqhoHeQNF=n^$1HV2hVzWi%IuC9!4%K&Vuz=2>Vi*Elv~ExfiZn zTZ$~J{%@~Pc{!go9Rn2cW)ok@+fqGmsT%wy{)9s!MYhEH@4G_%@VC+jL@;AqF(R|H z!C2~DJ%^AmwrPtHH&%EKGJ7kSW?_eiY3}QZ5?9>ycXw>#%h9F(7up0R`+1l_1Gy{W zcWY~*rfA1BNi%oqsMO}9XR6U ztO{s}fK^vgcioVdn>c#cL)XridIFw^`qw~EwLqb$J=#}AbVE>fhrOzw+7$>&tCVeu zPj!()L(h;?Tf%`}ue+sfVVB!8e|~3c`-1uHi#j?w7tHg>?oLH%oj<>=V{V(t1exs* zG)JFUKPrcv8K>xH#-MUy#2Zwa{Ypr+utUv|7F$|o$XWpwq&h<$IqDfw|5lB1hO8V8 zFYWOnX__g;%LKUEY?h3oeZ4S%_Ui(?BS4l2(?!@GqxilqCZ8HjN3Z_Vkt8&3OSX&* ztHW1yTBDxJzL9X)NIjVt*(7&N9c~DP1HC?V;14~B9BCOu^#UwRbr2mr-h-%mc*L{^ z+@7vsq&gelPHh<77#~J|7T{e0azs$QjXn{6)bDNld91@I*$G&4r3A_P+XvjfiKW}%oMEb5BwIvz`ue4est2%tH6W}%h?l&7s(L)_Si~H>sF@FAI znHW9);S?O|fck<6SBh|t2%n14M6Gw2yYRn_K>+>WG9@hGUeEMNM%{Z*XY9DK!?eU$8&wG*~WsGSq#FAEjo!9*SG9PldSkT9~k2q1fie*G0HpgircE zI?V#Nn_I7^E%3YrK2pDGg=4JniW){Sw_fVm{Y5r7+y)^V+-rm7b_kBudg(3H;3=RW zGsTX1icPi)Y?iak1YgZNIKI~xNtHyjr{P;?g6|OLUX1we(Uxq;)!6wNOJ=lW;oaYo zsRA~qSm0)JOZICEsB5u*SRmgDstnBwR>(KEWG)-1Yq5NBhvFW%jVeHNl;d~Kp z5aBTq3M}w73;fjF*u7zazgQsK3Nx$_u)+sw+1%KzvB5eUsCsK>+ThnV*kp$@#&g-0 z;*7C$>5zBw|DAu^~pUxqeZh>(_+zb1(=blMO!=G7R@<;kM=l9 zx@^`(0(>L3NV_RDn{{{GX8kR(K${V_S$0*4)U9qW#)4%kC9%rXUfET_(S0m%tOfck z@G}d1qOWEYwXC&5qZO9Nb|!DJ!fSexx6w`|KQ^e3A`BkrIU^tF6H41CS=(|=+SZb! qZQ3m0^L8FT{MvIOG|_BLJ;ce@VVXGn8gQ4i^Zx^ly@t619s&U4(AmTQ diff --git a/test/lib/linter/snapshots/linter.ts.md b/test/lib/linter/snapshots/linter.ts.md index 7fe4b783e..2738ab7a1 100644 --- a/test/lib/linter/snapshots/linter.ts.md +++ b/test/lib/linter/snapshots/linter.ts.md @@ -800,8 +800,16 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 1, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 3, + warningCount: 4, }, { coverageInfo: [], @@ -817,6 +825,14 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 4, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 4, @@ -834,7 +850,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [ @@ -901,6 +917,14 @@ Generated by [AVA](https://avajs.dev). fatalErrorCount: 0, filePath: 'webapp/test/testsuite.qunit.html', messages: [ + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 3, line: 12, @@ -910,7 +934,7 @@ Generated by [AVA](https://avajs.dev). severity: 1, }, ], - warningCount: 1, + warningCount: 2, }, { coverageInfo: [ @@ -930,8 +954,17 @@ Generated by [AVA](https://avajs.dev). errorCount: 0, fatalErrorCount: 0, filePath: 'webapp/test/testsuite.qunit.js', - messages: [], - warningCount: 0, + messages: [ + { + column: 14, + line: 3, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, + ], + warningCount: 1, }, { coverageInfo: [], @@ -969,8 +1002,16 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 2, + warningCount: 3, }, { coverageInfo: [], @@ -986,6 +1027,14 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 6, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 6, @@ -1003,7 +1052,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -1371,8 +1420,15 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 1, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 3, + warningCount: 4, }, { coverageInfo: [], @@ -1387,6 +1443,13 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 4, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 4, @@ -1402,7 +1465,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -1410,6 +1473,13 @@ Generated by [AVA](https://avajs.dev). fatalErrorCount: 0, filePath: 'webapp/test/testsuite.qunit.html', messages: [ + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 3, line: 12, @@ -1418,6 +1488,22 @@ Generated by [AVA](https://avajs.dev). severity: 1, }, ], + warningCount: 2, + }, + { + coverageInfo: [], + errorCount: 0, + fatalErrorCount: 0, + filePath: 'webapp/test/testsuite.qunit.js', + messages: [ + { + column: 14, + line: 3, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, + ], warningCount: 1, }, { @@ -1447,8 +1533,15 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 2, + warningCount: 3, }, { coverageInfo: [], @@ -1463,6 +1556,13 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 6, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 6, @@ -1478,7 +1578,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -2189,6 +2289,14 @@ Generated by [AVA](https://avajs.dev). ], warningCount: 0, }, + { + coverageInfo: [], + errorCount: 0, + fatalErrorCount: 0, + filePath: 'test/sap/f/testsuite.qunit.js', + messages: [], + warningCount: 0, + }, ] ## lint: All files of mocked minimal sap.ui.core library @@ -2915,6 +3023,14 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 4, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 4, @@ -2932,7 +3048,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], diff --git a/test/lib/linter/snapshots/linter.ts.snap b/test/lib/linter/snapshots/linter.ts.snap index 30e01cb32a9688b846303f5c3221e8e35af6549d..119160eed4a15b62597607a1190621e97e04cbcf 100644 GIT binary patch literal 22874 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 literal 21661 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 R@GWoz{|~xzC$&N;0ssrjF_HiP diff --git a/test/lib/snapshots/index.ts.md b/test/lib/snapshots/index.ts.md index ce0fa4312..eec583e80 100644 --- a/test/lib/snapshots/index.ts.md +++ b/test/lib/snapshots/index.ts.md @@ -265,8 +265,15 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 1, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 3, + warningCount: 4, }, { coverageInfo: [], @@ -281,6 +288,13 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 4, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 4, @@ -296,7 +310,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -304,6 +318,13 @@ Generated by [AVA](https://avajs.dev). fatalErrorCount: 0, filePath: 'webapp/test/testsuite.qunit.html', messages: [ + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 3, line: 12, @@ -312,6 +333,22 @@ Generated by [AVA](https://avajs.dev). severity: 1, }, ], + warningCount: 2, + }, + { + coverageInfo: [], + errorCount: 0, + fatalErrorCount: 0, + filePath: 'webapp/test/testsuite.qunit.js', + messages: [ + { + column: 14, + line: 3, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, + ], warningCount: 1, }, { @@ -341,8 +378,15 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 2, + warningCount: 3, }, { coverageInfo: [], @@ -357,6 +401,13 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 6, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 6, @@ -372,7 +423,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -676,8 +727,15 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 1, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 3, + warningCount: 4, }, { coverageInfo: [], @@ -692,6 +750,13 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 4, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 4, @@ -707,7 +772,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -715,6 +780,13 @@ Generated by [AVA](https://avajs.dev). fatalErrorCount: 0, filePath: 'webapp/test/testsuite.qunit.html', messages: [ + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 3, line: 12, @@ -723,6 +795,22 @@ Generated by [AVA](https://avajs.dev). severity: 1, }, ], + warningCount: 2, + }, + { + coverageInfo: [], + errorCount: 0, + fatalErrorCount: 0, + filePath: 'webapp/test/testsuite.qunit.js', + messages: [ + { + column: 14, + line: 3, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, + ], warningCount: 1, }, { @@ -752,8 +840,15 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 2, + warningCount: 3, }, { coverageInfo: [], @@ -768,6 +863,13 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 6, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 6, @@ -783,7 +885,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -1161,8 +1263,16 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 1, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 3, + warningCount: 4, }, { coverageInfo: [], @@ -1178,6 +1288,14 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 4, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 4, @@ -1196,7 +1314,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [ @@ -1263,6 +1381,14 @@ Generated by [AVA](https://avajs.dev). fatalErrorCount: 0, filePath: 'webapp/test/testsuite.qunit.html', messages: [ + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 3, line: 12, @@ -1272,7 +1398,7 @@ Generated by [AVA](https://avajs.dev). severity: 1, }, ], - warningCount: 1, + warningCount: 2, }, { coverageInfo: [ @@ -1292,8 +1418,17 @@ Generated by [AVA](https://avajs.dev). errorCount: 0, fatalErrorCount: 0, filePath: 'webapp/test/testsuite.qunit.js', - messages: [], - warningCount: 0, + messages: [ + { + column: 14, + line: 3, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, + ], + warningCount: 1, }, { coverageInfo: [], @@ -1331,8 +1466,16 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 2, + warningCount: 3, }, { coverageInfo: [], @@ -1348,6 +1491,14 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 6, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + messageDetails: 'Test Starter (https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb)', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 6, @@ -1366,7 +1517,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -1699,8 +1850,15 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 1, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 3, + warningCount: 4, }, { coverageInfo: [], @@ -1715,6 +1873,13 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 4, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 4, @@ -1730,7 +1895,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -1738,6 +1903,13 @@ Generated by [AVA](https://avajs.dev). fatalErrorCount: 0, filePath: 'webapp/test/testsuite.qunit.html', messages: [ + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 3, line: 12, @@ -1746,6 +1918,22 @@ Generated by [AVA](https://avajs.dev). severity: 1, }, ], + warningCount: 2, + }, + { + coverageInfo: [], + errorCount: 0, + fatalErrorCount: 0, + filePath: 'webapp/test/testsuite.qunit.js', + messages: [ + { + column: 14, + line: 3, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, + ], warningCount: 1, }, { @@ -1775,8 +1963,15 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 2, + warningCount: 3, }, { coverageInfo: [], @@ -1791,6 +1986,13 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 6, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 6, @@ -1806,7 +2008,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -2110,8 +2312,15 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 1, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 3, + warningCount: 4, }, { coverageInfo: [], @@ -2126,6 +2335,13 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 4, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 4, @@ -2141,7 +2357,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -2149,6 +2365,13 @@ Generated by [AVA](https://avajs.dev). fatalErrorCount: 0, filePath: 'webapp/test/testsuite.qunit.html', messages: [ + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 3, line: 12, @@ -2157,6 +2380,22 @@ Generated by [AVA](https://avajs.dev). severity: 1, }, ], + warningCount: 2, + }, + { + coverageInfo: [], + errorCount: 0, + fatalErrorCount: 0, + filePath: 'webapp/test/testsuite.qunit.js', + messages: [ + { + column: 14, + line: 3, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, + ], warningCount: 1, }, { @@ -2186,8 +2425,15 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 2, + warningCount: 3, }, { coverageInfo: [], @@ -2202,6 +2448,13 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 6, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 6, @@ -2217,7 +2470,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -2521,8 +2774,15 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 1, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 3, + warningCount: 4, }, { coverageInfo: [], @@ -2537,6 +2797,13 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 4, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 4, @@ -2552,7 +2819,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], @@ -2560,6 +2827,13 @@ Generated by [AVA](https://avajs.dev). fatalErrorCount: 0, filePath: 'webapp/test/testsuite.qunit.html', messages: [ + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 3, line: 12, @@ -2568,6 +2842,22 @@ Generated by [AVA](https://avajs.dev). severity: 1, }, ], + warningCount: 2, + }, + { + coverageInfo: [], + errorCount: 0, + fatalErrorCount: 0, + filePath: 'webapp/test/testsuite.qunit.js', + messages: [ + { + column: 14, + line: 3, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, + ], warningCount: 1, }, { @@ -2597,8 +2887,15 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: undefined, + line: undefined, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, ], - warningCount: 2, + warningCount: 3, }, { coverageInfo: [], @@ -2613,6 +2910,13 @@ Generated by [AVA](https://avajs.dev). ruleId: 'no-deprecated-api', severity: 2, }, + { + column: 18, + line: 6, + message: 'To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept', + ruleId: 'prefer-test-starter', + severity: 1, + }, { column: 8, line: 6, @@ -2628,7 +2932,7 @@ Generated by [AVA](https://avajs.dev). severity: 2, }, ], - warningCount: 0, + warningCount: 1, }, { coverageInfo: [], diff --git a/test/lib/snapshots/index.ts.snap b/test/lib/snapshots/index.ts.snap index 4d36498fae8f19fffbdf7101200d731f05e3c97a..7eb621e3649bc663cbbd8f0f8f025922aafa2101 100644 GIT binary patch literal 15170 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 literal 13928 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