[Crafting] Screenshot baseline updater (#2120) #8868
BuildJobs.yml
on: push
Check SHA in GH Actions
8s
Matrix: build
Matrix: Run automated end-to-end tests
Publish E2E test summary
44s
Annotations
14 errors and 31 warnings
|
Run automated end-to-end tests (4)
Process completed with exit code 1.
|
|
Run automated end-to-end tests (4)
@mendix/skiplink-web#e2e: command (/home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/skiplink-web) /home/runner/setup-pnpm/node_modules/.bin/pnpm run e2e exited (1)
|
|
Run automated end-to-end tests (7)
Process completed with exit code 1.
|
|
Run automated end-to-end tests (7)
@mendix/accessibility-helper-web#e2e: command (/home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/accessibility-helper-web) /home/runner/setup-pnpm/node_modules/.bin/pnpm run e2e exited (1)
|
|
Run automated end-to-end tests (1)
Process completed with exit code 1.
|
|
Run automated end-to-end tests (1)
@mendix/badge-button-web#e2e: command (/home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/badge-button-web) /home/runner/setup-pnpm/node_modules/.bin/pnpm run e2e exited (1)
|
|
Run automated end-to-end tests (0)
Process completed with exit code 1.
|
|
Run automated end-to-end tests (0)
@mendix/datagrid-web#e2e: command (/home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/datagrid-web) /home/runner/setup-pnpm/node_modules/.bin/pnpm run e2e exited (1)
|
|
Failed Test: datagrid-web filtering integration:
packages/pluggableWidgets/datagrid-web/e2e/filtering/DataGridFilteringIntegration.spec.js#L0
datagrid-web filtering integration: Error: expect(page).toHaveScreenshot(expected) failed
101 pixels (ratio 0.01 of all image pixels) are different.
Snapshot: datagridFilteringIntegration.png
Call log:
- Expect "toHaveScreenshot(datagridFilteringIntegration.png)" with timeout 5000ms
- verifying given screenshot expectation
- taking page screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- 101 pixels (ratio 0.01 of all image pixels) are different.
- waiting 100ms before taking screenshot
- taking page screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- captured a stable screenshot
- 101 pixels (ratio 0.01 of all image pixels) are different.
- Error: expect(page).toHaveScreenshot(expected) failed
101 pixels (ratio 0.01 of all image pixels) are different.
Snapshot: datagridFilteringIntegration.png
Call log:
- Expect "toHaveScreenshot(datagridFilteringIntegration.png)" with timeout 5000ms
- verifying given screenshot expectation
- taking page screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- 101 pixels (ratio 0.01 of all image pixels) are different.
- waiting 100ms before taking screenshot
- taking page screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- captured a stable screenshot
- 101 pixels (ratio 0.01 of all image pixels) are different.
at /home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/datagrid-web/e2e/filtering/DataGridFilteringIntegration.spec.js:55:24
|
|
Failed Test: closes a page:
packages/pluggableWidgets/badge-button-web/e2e/onClick.spec.js#L0
closes a page: Error: expect(locator).toBeVisible() failed
Locator: locator('.mx-name-pageTitle1').nth(1)
Expected: visible
Timeout: 5000ms
Error: element(s) not found
Call log:
- Expect "toBeVisible" with timeout 5000ms
- waiting for locator('.mx-name-pageTitle1').nth(1)
- Error: expect(locator).toBeVisible() failed
Locator: locator('.mx-name-pageTitle1').nth(1)
Expected: visible
Timeout: 5000ms
Error: element(s) not found
Call log:
- Expect "toBeVisible" with timeout 5000ms
- waiting for locator('.mx-name-pageTitle1').nth(1)
at /home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/badge-button-web/e2e/onClick.spec.js:62:70
|
|
Failed Test: updates target attributes using a NF:
packages/pluggableWidgets/accessibility-helper-web/e2e/AccessibilityHelper.spec.js#L0
updates target attributes using a NF: Test timeout of 30000ms exceeded. - Test timeout of 30000ms exceeded.
|
|
Failed Test: visual comparison:
packages/pluggableWidgets/skiplink-web/e2e/SkipLink.spec.js#L0
visual comparison: Error: expect(locator).toHaveScreenshot(expected) failed
Locator: locator('.widget-skip-link').first()
Expected an image 185px by 40px, received 177px by 36px. 1940 pixels (ratio 0.27 of all image pixels) are different.
Snapshot: skiplink-focused.png
Call log:
- Expect "toHaveScreenshot(skiplink-focused.png)" with timeout 5000ms
- verifying given screenshot expectation
- waiting for locator('.widget-skip-link').first()
- locator resolved to <a href="#" class="widget-skip-link mx-name-skipLink1">Skip to main content</a>
- taking element screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- attempting scroll into view action
- waiting for element to be stable
- Expected an image 185px by 40px, received 177px by 36px. 1940 pixels (ratio 0.27 of all image pixels) are different.
- waiting 100ms before taking screenshot
- waiting for locator('.widget-skip-link').first()
- locator resolved to <a href="#" class="widget-skip-link mx-name-skipLink1">Skip to main content</a>
- taking element screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- attempting scroll into view action
- waiting for element to be stable
- captured a stable screenshot
- Expected an image 185px by 40px, received 177px by 36px. 1940 pixels (ratio 0.27 of all image pixels) are different.
- Error: expect(locator).toHaveScreenshot(expected) failed
Locator: locator('.widget-skip-link').first()
Expected an image 185px by 40px, received 177px by 36px. 1940 pixels (ratio 0.27 of all image pixels) are different.
Snapshot: skiplink-focused.png
Call log:
- Expect "toHaveScreenshot(skiplink-focused.png)" with timeout 5000ms
- verifying given screenshot expectation
- waiting for locator('.widget-skip-link').first()
- locator resolved to <a href="#" class="widget-skip-link mx-name-skipLink1">Skip to main content</a>
- taking element screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- attempting scroll into view action
- waiting for element to be stable
- Expected an image 185px by 40px, received 177px by 36px. 1940 pixels (ratio 0.27 of all image pixels) are different.
- waiting 100ms before taking screenshot
- waiting for locator('.widget-skip-link').first()
- locator resolved to <a href="#" class="widget-skip-link mx-name-skipLink1">Skip to main content</a>
- taking element screenshot
- disabled all CSS animations
- waiting for fonts to load...
- fonts loaded
- attempting scroll into view action
- waiting for element to be stable
- captured a stable screenshot
- Expected an image 185px by 40px, received 177px by 36px. 1940 pixels (ratio 0.27 of all image pixels) are different.
at /home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/skiplink-web/e2e/SkipLink.spec.js:72:32
|
|
Failed Test: skip link becomes visible when focused via keyboard:
packages/pluggableWidgets/skiplink-web/e2e/SkipLink.spec.js#L0
skip link becomes visible when focused via keyboard: Error: expect(received).toContain(expected) // indexOf
Expected substring: "matrix(1, 0, 0, 1, 0, 0)"
Received string: "none" - Error: expect(received).toContain(expected) // indexOf
Expected substring: "matrix(1, 0, 0, 1, 0, 0)"
Received string: "none"
at /home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/skiplink-web/e2e/SkipLink.spec.js:33:27
|
|
Failed Test: skip link is present in DOM but initially hidden:
packages/pluggableWidgets/skiplink-web/e2e/SkipLink.spec.js#L0
skip link is present in DOM but initially hidden: Error: expect(received).toContain(expected) // indexOf
Expected substring: "matrix(1, 0, 0, 1, 0, -48)"
Received string: "none" - Error: expect(received).toContain(expected) // indexOf
Expected substring: "matrix(1, 0, 0, 1, 0, -48)"
Received string: "none"
at /home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/skiplink-web/e2e/SkipLink.spec.js:21:27
|
|
Plan E2E matrix
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Run automated end-to-end tests (4)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Run automated end-to-end tests (6)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Run automated end-to-end tests (5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Run automated end-to-end tests (7)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Run automated end-to-end tests (2)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Run automated end-to-end tests (3)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Run automated end-to-end tests (1)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Run automated end-to-end tests (0)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Publish E2E test summary
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6, pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Run code quality check
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Run code quality check:
packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L202
Missing return type on function
|
|
Run code quality check:
packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L10
`./SizeContainer` import should occur after import of `./CalendarLoader`
|
|
Run code quality check:
packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L9
`./Toolbar` import should occur after import of `./CalendarLoader`
|
|
Run code quality check:
packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L6
`react-big-calendar` import should occur after import of `moment`
|
|
Run code quality check:
packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L4
`../utils/namespaces` import should occur after import of `./CalendarLoader`
|
|
Run code quality check:
packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L3
`./Alert` import should occur after import of `react-big-calendar/lib/addons/dragAndDrop`
|
|
Run code quality check:
packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L1
`react` import should occur after import of `moment`
|
|
Run code quality check:
packages/customWidgets/calendar-custom-web/src/components/Button.ts#L2
`classnames` import should occur before import of `react`
|
|
Run code quality check:
packages/customWidgets/calendar-custom-web/src/components/Alert.ts#L2
`classnames` import should occur before import of `react`
|
|
Run code quality check:
packages/customWidgets/calendar-custom-web/src/Calendar.webmodeler.ts#L6
`./utils/style` import should occur before import of `./utils/validation`
|
|
Run release task on ubuntu-latest
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Run release task on ubuntu-latest:
packages/pluggableWidgets/google-tag-web/src/utils.ts#L3
`react` import should occur before import of `../typings/TXhHdGFnProps`
|
|
Run release task on ubuntu-latest:
packages/pluggableWidgets/google-tag-web/src/utils.ts#L2
`./commonGtag` import should occur before import of `../typings/TXhHdGFnProps`
|
|
Run release task on ubuntu-latest:
packages/pluggableWidgets/google-tag-web/src/TXhHdGFn.tsx#L3
`./utils` import should occur before import of `../typings/TXhHdGFnProps`
|
|
Run release task on ubuntu-latest:
packages/pluggableWidgets/google-tag-web/src/TXhHdGFn.editorConfig.ts#L2
`@mendix/pluggable-widgets-tools` import should occur before import of `../typings/TXhHdGFnProps`
|
|
Run release task on windows-latest
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Run release task on windows-latest:
packages/pluggableWidgets/google-tag-web/src/utils.ts#L3
`react` import should occur before import of `../typings/TXhHdGFnProps`
|
|
Run release task on windows-latest:
packages/pluggableWidgets/google-tag-web/src/utils.ts#L2
`./commonGtag` import should occur before import of `../typings/TXhHdGFnProps`
|
|
Run release task on windows-latest:
packages/pluggableWidgets/google-tag-web/src/TXhHdGFn.tsx#L3
`./utils` import should occur before import of `../typings/TXhHdGFnProps`
|
|
Run release task on windows-latest:
packages/pluggableWidgets/google-tag-web/src/TXhHdGFn.editorConfig.ts#L2
`@mendix/pluggable-widgets-tools` import should occur before import of `../typings/TXhHdGFnProps`
|
Artifacts
Produced during runtime
| Name | Size | Digest | |
|---|---|---|---|
|
ctrf-reports-0
|
7.06 KB |
sha256:fc425b8346560e0ae95f86e32ffca2a43031c0602e09b50acad576b67060039e
|
|
|
ctrf-reports-1
|
3.35 KB |
sha256:2e8a5c701dd96c3ad70f8e15962d5e0a4a51365aee67024a3897ad3bfef7e69e
|
|
|
ctrf-reports-2
|
3.27 KB |
sha256:194a5c5496db2b3ed5b889f73901473994a29f03d7b56f293d0353d84d0c3bdd
|
|
|
ctrf-reports-3
|
5.5 KB |
sha256:186a436093e6680814893625c88dc01e4ee1977eec12f3f9f36f4e01b6536606
|
|
|
ctrf-reports-4
|
2.26 KB |
sha256:31f57e8a68ff2e7fb1a79dcd25acfb008ca197a483cb9736998fda89892b85f3
|
|
|
ctrf-reports-5
|
4.49 KB |
sha256:eef5f5658c7eb582dd9d0225756548fd9c0bca7fd631a466bb49d60880b5da9a
|
|
|
ctrf-reports-6
|
2.97 KB |
sha256:1a4f32d572ede2b51e9c0ced8ec196187bac5cc7403b1b8acc5b297f8f3e9e42
|
|
|
ctrf-reports-7
|
1.97 KB |
sha256:758b63c954a681436f88baee69dab6f5cfa3cbe01e7f3b1dfdfa55d9bb6b1939
|
|
|
test-screenshot-results-0
|
7.01 MB |
sha256:9df216265b1430b3978d3919758e333b15e44e5963d4d27b53de2e38f509ac53
|
|
|
test-screenshot-results-1
|
484 KB |
sha256:35d4841f03ab198283daeec31fbc2ce99c0553ac46ad5047e892d720646af012
|
|
|
test-screenshot-results-4
|
2.65 MB |
sha256:756d8f7a51fe8c83ad537ea3c348af09d2fd58c2f889c2ca7cfa3982220beb31
|
|
|
test-screenshot-results-7
|
69.8 KB |
sha256:c4b21f0864ffd4d68df26abfcad7e297a84bad016bfda161fcceedec6084a157
|
|