From 6038970bbf0d206c89caa2d2ee2510a5d1358b9e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 6 Jan 2026 20:20:51 +0000 Subject: [PATCH 01/21] Initial plan From 241e6903071d6521f0c49d19f504ed83cde96071 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 6 Jan 2026 20:34:43 +0000 Subject: [PATCH 02/21] feat: add help button with markdown documentation modal for invocation nodes Co-authored-by: dunkeroni <3298737+dunkeroni@users.noreply.github.com> --- invokeai/frontend/web/package.json | 1 + invokeai/frontend/web/pnpm-lock.yaml | 675 +++++++++++++++++- invokeai/frontend/web/public/locales/en.json | 7 +- .../web/public/nodeDocs/en/z_image_denoise.md | 42 ++ .../nodes/Invocation/InvocationNodeHeader.tsx | 2 + .../Invocation/InvocationNodeHelpButton.tsx | 31 + .../Invocation/InvocationNodeHelpModal.tsx | 132 ++++ 7 files changed, 882 insertions(+), 8 deletions(-) create mode 100644 invokeai/frontend/web/public/nodeDocs/en/z_image_denoise.md create mode 100644 invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpButton.tsx create mode 100644 invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx diff --git a/invokeai/frontend/web/package.json b/invokeai/frontend/web/package.json index 118fd330d07..c1b2256662c 100644 --- a/invokeai/frontend/web/package.json +++ b/invokeai/frontend/web/package.json @@ -87,6 +87,7 @@ "react-hotkeys-hook": "4.5.0", "react-i18next": "^15.5.3", "react-icons": "^5.5.0", + "react-markdown": "9.0.1", "react-redux": "9.2.0", "react-resizable-panels": "^3.0.3", "react-textarea-autosize": "^8.5.9", diff --git a/invokeai/frontend/web/pnpm-lock.yaml b/invokeai/frontend/web/pnpm-lock.yaml index bc37d622178..234689a3011 100644 --- a/invokeai/frontend/web/pnpm-lock.yaml +++ b/invokeai/frontend/web/pnpm-lock.yaml @@ -152,6 +152,9 @@ importers: react-icons: specifier: ^5.5.0 version: 5.5.0(react@18.3.1) + react-markdown: + specifier: 9.0.1 + version: 9.0.1(@types/react@18.3.23)(react@18.3.1) react-redux: specifier: 9.2.0 version: 9.2.0(@types/react@18.3.23)(react@18.3.1)(redux@5.0.1) @@ -326,7 +329,7 @@ importers: version: 5.1.4(typescript@5.8.3)(vite@7.0.5(@types/node@22.16.0)(jiti@2.4.2)) vitest: specifier: ^3.1.2 - version: 3.2.4(@types/node@22.16.0)(@vitest/ui@3.2.4)(jiti@2.4.2) + version: 3.2.4(@types/debug@4.1.12)(@types/node@22.16.0)(@vitest/ui@3.2.4)(jiti@2.4.2) packages: @@ -1531,6 +1534,9 @@ packages: '@types/d3-zoom@3.0.8': resolution: {integrity: sha512-iqMC4/YlFCSlO8+2Ii1GGGliCAY4XdeG748w5vQUbevlbDu0zSjH/+jojorQVBK/se0j6DUFNPBGSqD3YWYnDw==} + '@types/debug@4.1.12': + resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + '@types/deep-eql@4.0.2': resolution: {integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==} @@ -1540,9 +1546,15 @@ packages: '@types/eslint@8.56.12': resolution: {integrity: sha512-03ruubjWyOHlmljCVoxSuNDdmfZDzsrrz0P2LeJsOXr+ZwFQ+0yQIwNCwt/GYhV7Z31fgtXJTAEs+FYlEL851g==} + '@types/estree-jsx@1.0.5': + resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} + '@types/estree@1.0.8': resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + '@types/hast@3.0.4': + resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} + '@types/js-cookie@2.2.7': resolution: {integrity: sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==} @@ -1561,9 +1573,15 @@ packages: '@types/lodash@4.17.20': resolution: {integrity: sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA==} + '@types/mdast@4.0.4': + resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + '@types/mdx@2.0.13': resolution: {integrity: sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==} + '@types/ms@2.1.0': + resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} + '@types/node@22.16.0': resolution: {integrity: sha512-B2egV9wALML1JCpv3VQoQ+yesQKAmNMBIAY7OteVrikcOcAkWm+dGL6qpeCktPjAv6N1JLnhbNiqS35UpFyBsQ==} @@ -1589,6 +1607,12 @@ packages: '@types/resolve@1.20.6': resolution: {integrity: sha512-A4STmOXPhMUtHH+S6ymgE2GiBSMqf4oTvcQZMcHzokuTLVYzXTB8ttjcgxOVaAp2lGwEdzZ0J+cRbbeevQj1UQ==} + '@types/unist@2.0.11': + resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} + + '@types/unist@3.0.3': + resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} + '@types/use-sync-external-store@0.0.6': resolution: {integrity: sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg==} @@ -1654,6 +1678,9 @@ packages: resolution: {integrity: sha512-YzfhzcTnZVPiLfP/oeKtDp2evwvHLMe0LOy7oe+hb9KKIumLNohYS9Hgp1ifwpu42YWxhZE8yieggz6JpqO/1w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@ungap/structured-clone@1.3.0': + resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} + '@vitejs/plugin-react-swc@3.10.2': resolution: {integrity: sha512-xD3Rdvrt5LgANug7WekBn1KhcvLn1H3jNBfJRL3reeOIua/WnZOEV5qi5qIBq5T8R0jUDmRtxuvk4bPhzGHDWw==} peerDependencies: @@ -1843,6 +1870,9 @@ packages: resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} engines: {node: '>=10', npm: '>=6'} + bail@2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} + balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} @@ -1904,6 +1934,9 @@ packages: caniuse-lite@1.0.30001727: resolution: {integrity: sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==} + ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + chai@5.2.0: resolution: {integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==} engines: {node: '>=12'} @@ -1931,6 +1964,18 @@ packages: change-case@5.4.4: resolution: {integrity: sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==} + character-entities-html4@2.1.0: + resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} + + character-entities-legacy@3.0.0: + resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} + + character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + + character-reference-invalid@2.0.1: + resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} + check-error@2.1.1: resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} engines: {node: '>= 16'} @@ -1973,6 +2018,9 @@ packages: colorette@1.4.0: resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} + comma-separated-tokens@2.0.3: + resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} @@ -2099,6 +2147,9 @@ packages: supports-color: optional: true + decode-named-character-reference@1.2.0: + resolution: {integrity: sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==} + decode-uri-component@0.4.1: resolution: {integrity: sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==} engines: {node: '>=14.16'} @@ -2132,6 +2183,9 @@ packages: detect-node-es@1.1.0: resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} + devlop@1.1.0: + resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + discontinuous-range@1.0.0: resolution: {integrity: sha512-c68LpLbO+7kP/b1Hr1qs8/BJ09F5khZGTxqxZuhzxpmwJKOgRFHJWIb9/KmqnqHhLdO55aOxFH/EGBvUQbL/RQ==} @@ -2377,6 +2431,9 @@ packages: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} + estree-util-is-identifier-name@3.0.0: + resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} + estree-walker@2.0.2: resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} @@ -2391,6 +2448,9 @@ packages: resolution: {integrity: sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==} engines: {node: '>=12.0.0'} + extend@3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -2624,6 +2684,12 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} + hast-util-to-jsx-runtime@2.3.6: + resolution: {integrity: sha512-zl6s8LwNyo1P9uw+XJGvZtdFF1GdAkOg8ujOw+4Pyb76874fLps4ueHXDhXWdk6YHQ6OgUtinliG7RsYvCbbBg==} + + hast-util-whitespace@3.0.0: + resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} + hoist-non-react-statics@3.3.2: resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} @@ -2633,6 +2699,9 @@ packages: html-parse-stringify@3.0.1: resolution: {integrity: sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==} + html-url-attributes@3.0.1: + resolution: {integrity: sha512-ol6UPyBWqsrO6EJySPz2O7ZSr856WDrEzM5zMqp+FJJLGMW35cLYmmZnl0vztAZxRUoNZJFTCohfjuIJ8I4QBQ==} + https-proxy-agent@7.0.6: resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} engines: {node: '>= 14'} @@ -2687,6 +2756,9 @@ packages: inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + inline-style-parser@0.2.7: + resolution: {integrity: sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA==} + inline-style-prefixer@7.0.1: resolution: {integrity: sha512-lhYo5qNTQp3EvSSp3sRvXMbVQTLrvGV6DycRMJ5dm2BLMiJ30wpXKdDdgX+GmJZ5uQMucwRKHamXSst3Sj/Giw==} @@ -2694,6 +2766,12 @@ packages: resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} engines: {node: '>= 0.4'} + is-alphabetical@2.0.1: + resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} + + is-alphanumerical@2.0.1: + resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} + is-array-buffer@3.0.5: resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} engines: {node: '>= 0.4'} @@ -2729,6 +2807,9 @@ packages: resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} engines: {node: '>= 0.4'} + is-decimal@2.0.1: + resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} + is-docker@2.2.1: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} engines: {node: '>=8'} @@ -2754,6 +2835,9 @@ packages: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} + is-hexadecimal@2.0.1: + resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} + is-interactive@1.0.0: resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} engines: {node: '>=8'} @@ -2774,6 +2858,10 @@ packages: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} + is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + is-regex@1.2.1: resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} engines: {node: '>= 0.4'} @@ -2968,6 +3056,9 @@ packages: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} engines: {node: '>=10'} + longest-streak@3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + loose-envify@1.4.0: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true @@ -3006,6 +3097,30 @@ packages: resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} engines: {node: '>= 0.4'} + mdast-util-from-markdown@2.0.2: + resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} + + mdast-util-mdx-expression@2.0.1: + resolution: {integrity: sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==} + + mdast-util-mdx-jsx@3.2.0: + resolution: {integrity: sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==} + + mdast-util-mdxjs-esm@2.0.1: + resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==} + + mdast-util-phrasing@4.1.0: + resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} + + mdast-util-to-hast@13.2.1: + resolution: {integrity: sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==} + + mdast-util-to-markdown@2.1.2: + resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==} + + mdast-util-to-string@4.0.0: + resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} + mdn-data@2.0.14: resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} @@ -3016,6 +3131,69 @@ packages: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} + micromark-core-commonmark@2.0.3: + resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==} + + micromark-factory-destination@2.0.1: + resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} + + micromark-factory-label@2.0.1: + resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} + + micromark-factory-space@2.0.1: + resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==} + + micromark-factory-title@2.0.1: + resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==} + + micromark-factory-whitespace@2.0.1: + resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==} + + micromark-util-character@2.1.1: + resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} + + micromark-util-chunked@2.0.1: + resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==} + + micromark-util-classify-character@2.0.1: + resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==} + + micromark-util-combine-extensions@2.0.1: + resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==} + + micromark-util-decode-numeric-character-reference@2.0.2: + resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==} + + micromark-util-decode-string@2.0.1: + resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==} + + micromark-util-encode@2.0.1: + resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} + + micromark-util-html-tag-name@2.0.1: + resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} + + micromark-util-normalize-identifier@2.0.1: + resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==} + + micromark-util-resolve-all@2.0.1: + resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==} + + micromark-util-sanitize-uri@2.0.1: + resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} + + micromark-util-subtokenize@2.1.0: + resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==} + + micromark-util-symbol@2.0.1: + resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} + + micromark-util-types@2.0.2: + resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==} + + micromark@4.0.2: + resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==} + micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} @@ -3210,6 +3388,9 @@ packages: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} + parse-entities@4.0.2: + resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} + parse-json@5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} @@ -3294,6 +3475,9 @@ packages: prop-types@15.8.1: resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + property-information@7.1.0: + resolution: {integrity: sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==} + punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} @@ -3421,6 +3605,12 @@ packages: react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} + react-markdown@9.0.1: + resolution: {integrity: sha512-186Gw/vF1uRkydbsOIkcGXw7aHq0sZOCRFFjGrr7b9+nVZg4UfA4enXCaxm4fUzecU38sWfrNDitGhshuU7rdg==} + peerDependencies: + '@types/react': '>=18' + react: '>=18' + react-redux@9.2.0: resolution: {integrity: sha512-ROY9fvHhwOD9ySfrF0wmvu//bKCQ6AeZZq1nJNtbDC+kk5DuSuNX/n6YWYF/SYy7bSba4D4FSz8DJeKY/S/r+g==} peerDependencies: @@ -3551,6 +3741,12 @@ packages: resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} engines: {node: '>= 0.4'} + remark-parse@11.0.0: + resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} + + remark-rehype@11.1.2: + resolution: {integrity: sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==} + require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} @@ -3765,6 +3961,9 @@ packages: resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} engines: {node: '>= 8'} + space-separated-tokens@2.0.2: + resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} + split-on-first@3.0.0: resolution: {integrity: sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==} engines: {node: '>=12'} @@ -3833,6 +4032,9 @@ packages: string_decoder@1.3.0: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + stringify-entities@4.0.4: + resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} + strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} @@ -3864,6 +4066,12 @@ packages: strip-literal@3.0.0: resolution: {integrity: sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA==} + style-to-js@1.1.21: + resolution: {integrity: sha512-RjQetxJrrUJLQPHbLku6U/ocGtzyjbJMP9lCNK7Ag0CNh690nSH8woqWH9u16nMjYBAok+i7JO1NP2pOy8IsPQ==} + + style-to-object@1.0.14: + resolution: {integrity: sha512-LIN7rULI0jBscWQYaSswptyderlarFkjQ+t79nzty8tcIAceVomEVlLzH5VP4Cmsv6MtKhs7qaAiwlcp+Mgaxw==} + stylis@4.2.0: resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==} @@ -3937,6 +4145,12 @@ packages: resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} hasBin: true + trim-lines@3.0.1: + resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + + trough@2.2.0: + resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} + ts-api-utils@2.1.0: resolution: {integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==} engines: {node: '>=18.12'} @@ -4019,6 +4233,24 @@ packages: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} engines: {node: '>=18'} + unified@11.0.5: + resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} + + unist-util-is@6.0.1: + resolution: {integrity: sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==} + + unist-util-position@5.0.0: + resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} + + unist-util-stringify-position@4.0.0: + resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} + + unist-util-visit-parents@6.0.2: + resolution: {integrity: sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==} + + unist-util-visit@5.0.0: + resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} + universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} @@ -4109,6 +4341,12 @@ packages: resolution: {integrity: sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==} hasBin: true + vfile-message@4.0.3: + resolution: {integrity: sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==} + + vfile@6.0.3: + resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} + vite-node@3.2.4: resolution: {integrity: sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} @@ -4339,6 +4577,9 @@ packages: react: optional: true + zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} + snapshots: '@adobe/css-tools@4.4.3': {} @@ -5550,6 +5791,10 @@ snapshots: '@types/d3-interpolate': 3.0.4 '@types/d3-selection': 3.0.11 + '@types/debug@4.1.12': + dependencies: + '@types/ms': 2.1.0 + '@types/deep-eql@4.0.2': {} '@types/doctrine@0.0.9': {} @@ -5559,8 +5804,16 @@ snapshots: '@types/estree': 1.0.8 '@types/json-schema': 7.0.15 + '@types/estree-jsx@1.0.5': + dependencies: + '@types/estree': 1.0.8 + '@types/estree@1.0.8': {} + '@types/hast@3.0.4': + dependencies: + '@types/unist': 3.0.3 + '@types/js-cookie@2.2.7': {} '@types/json-schema@7.0.15': {} @@ -5577,8 +5830,14 @@ snapshots: '@types/lodash@4.17.20': {} + '@types/mdast@4.0.4': + dependencies: + '@types/unist': 3.0.3 + '@types/mdx@2.0.13': {} + '@types/ms@2.1.0': {} + '@types/node@22.16.0': dependencies: undici-types: 6.21.0 @@ -5602,6 +5861,10 @@ snapshots: '@types/resolve@1.20.6': {} + '@types/unist@2.0.11': {} + + '@types/unist@3.0.3': {} + '@types/use-sync-external-store@0.0.6': {} '@types/uuid@10.0.0': {} @@ -5699,6 +5962,8 @@ snapshots: '@typescript-eslint/types': 8.37.0 eslint-visitor-keys: 4.2.1 + '@ungap/structured-clone@1.3.0': {} + '@vitejs/plugin-react-swc@3.10.2(vite@7.0.5(@types/node@22.16.0)(jiti@2.4.2))': dependencies: '@rolldown/pluginutils': 1.0.0-beta.11 @@ -5722,7 +5987,7 @@ snapshots: std-env: 3.9.0 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/node@22.16.0)(@vitest/ui@3.2.4)(jiti@2.4.2) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@22.16.0)(@vitest/ui@3.2.4)(jiti@2.4.2) transitivePeerDependencies: - supports-color @@ -5771,7 +6036,7 @@ snapshots: sirv: 3.0.1 tinyglobby: 0.2.14 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/node@22.16.0)(@vitest/ui@3.2.4)(jiti@2.4.2) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@22.16.0)(@vitest/ui@3.2.4)(jiti@2.4.2) '@vitest/utils@3.2.4': dependencies: @@ -5955,6 +6220,8 @@ snapshots: cosmiconfig: 7.1.0 resolve: 1.22.10 + bail@2.0.2: {} + balanced-match@1.0.2: {} base64-js@1.5.1: {} @@ -6021,6 +6288,8 @@ snapshots: caniuse-lite@1.0.30001727: {} + ccount@2.0.1: {} + chai@5.2.0: dependencies: assertion-error: 2.0.1 @@ -6060,6 +6329,14 @@ snapshots: change-case@5.4.4: {} + character-entities-html4@2.1.0: {} + + character-entities-legacy@3.0.0: {} + + character-entities@2.0.2: {} + + character-reference-invalid@2.0.1: {} + check-error@2.1.1: {} classcat@5.0.5: {} @@ -6100,6 +6377,8 @@ snapshots: colorette@1.4.0: {} + comma-separated-tokens@2.0.3: {} + commander@2.20.3: {} compare-versions@6.1.1: {} @@ -6229,6 +6508,10 @@ snapshots: optionalDependencies: supports-color: 10.0.0 + decode-named-character-reference@1.2.0: + dependencies: + character-entities: 2.0.2 + decode-uri-component@0.4.1: {} deep-eql@5.0.2: {} @@ -6257,6 +6540,10 @@ snapshots: detect-node-es@1.1.0: {} + devlop@1.1.0: + dependencies: + dequal: 2.0.3 + discontinuous-range@1.0.0: {} dockview-core@4.7.1: {} @@ -6656,6 +6943,8 @@ snapshots: estraverse@5.3.0: {} + estree-util-is-identifier-name@3.0.0: {} + estree-walker@2.0.2: {} estree-walker@3.0.3: @@ -6666,6 +6955,8 @@ snapshots: expect-type@1.2.1: {} + extend@3.0.2: {} + fast-deep-equal@3.1.3: {} fast-glob@3.3.3: @@ -6889,6 +7180,30 @@ snapshots: dependencies: function-bind: 1.1.2 + hast-util-to-jsx-runtime@2.3.6: + dependencies: + '@types/estree': 1.0.8 + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + estree-util-is-identifier-name: 3.0.0 + hast-util-whitespace: 3.0.0 + mdast-util-mdx-expression: 2.0.1 + mdast-util-mdx-jsx: 3.2.0 + mdast-util-mdxjs-esm: 2.0.1 + property-information: 7.1.0 + space-separated-tokens: 2.0.2 + style-to-js: 1.1.21 + unist-util-position: 5.0.0 + vfile-message: 4.0.3 + transitivePeerDependencies: + - supports-color + + hast-util-whitespace@3.0.0: + dependencies: + '@types/hast': 3.0.4 + hoist-non-react-statics@3.3.2: dependencies: react-is: 16.13.1 @@ -6899,6 +7214,8 @@ snapshots: dependencies: void-elements: 3.1.0 + html-url-attributes@3.0.1: {} + https-proxy-agent@7.0.6(supports-color@10.0.0): dependencies: agent-base: 7.1.3 @@ -6943,6 +7260,8 @@ snapshots: inherits@2.0.4: {} + inline-style-parser@0.2.7: {} + inline-style-prefixer@7.0.1: dependencies: css-in-js-utils: 3.1.0 @@ -6953,6 +7272,13 @@ snapshots: hasown: 2.0.2 side-channel: 1.1.0 + is-alphabetical@2.0.1: {} + + is-alphanumerical@2.0.1: + dependencies: + is-alphabetical: 2.0.1 + is-decimal: 2.0.1 + is-array-buffer@3.0.5: dependencies: call-bind: 1.0.8 @@ -6995,6 +7321,8 @@ snapshots: call-bound: 1.0.4 has-tostringtag: 1.0.2 + is-decimal@2.0.1: {} + is-docker@2.2.1: {} is-extglob@2.1.1: {} @@ -7016,6 +7344,8 @@ snapshots: dependencies: is-extglob: 2.1.1 + is-hexadecimal@2.0.1: {} + is-interactive@1.0.0: {} is-map@2.0.3: {} @@ -7029,6 +7359,8 @@ snapshots: is-number@7.0.0: {} + is-plain-obj@4.1.0: {} + is-regex@1.2.1: dependencies: call-bound: 1.0.4 @@ -7227,6 +7559,8 @@ snapshots: chalk: 4.1.2 is-unicode-supported: 0.1.0 + longest-streak@3.1.0: {} + loose-envify@1.4.0: dependencies: js-tokens: 4.0.0 @@ -7261,12 +7595,234 @@ snapshots: math-intrinsics@1.1.0: {} + mdast-util-from-markdown@2.0.2: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + decode-named-character-reference: 1.2.0 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.2 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-decode-string: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-mdx-expression@2.0.1: + dependencies: + '@types/estree-jsx': 1.0.5 + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-mdx-jsx@3.2.0: + dependencies: + '@types/estree-jsx': 1.0.5 + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + parse-entities: 4.0.2 + stringify-entities: 4.0.4 + unist-util-stringify-position: 4.0.0 + vfile-message: 4.0.3 + transitivePeerDependencies: + - supports-color + + mdast-util-mdxjs-esm@2.0.1: + dependencies: + '@types/estree-jsx': 1.0.5 + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + transitivePeerDependencies: + - supports-color + + mdast-util-phrasing@4.1.0: + dependencies: + '@types/mdast': 4.0.4 + unist-util-is: 6.0.1 + + mdast-util-to-hast@13.2.1: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@ungap/structured-clone': 1.3.0 + devlop: 1.1.0 + micromark-util-sanitize-uri: 2.0.1 + trim-lines: 3.0.1 + unist-util-position: 5.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + + mdast-util-to-markdown@2.1.2: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + longest-streak: 3.1.0 + mdast-util-phrasing: 4.1.0 + mdast-util-to-string: 4.0.0 + micromark-util-classify-character: 2.0.1 + micromark-util-decode-string: 2.0.1 + unist-util-visit: 5.0.0 + zwitch: 2.0.4 + + mdast-util-to-string@4.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdn-data@2.0.14: {} memoize-one@6.0.0: {} merge2@1.4.1: {} + micromark-core-commonmark@2.0.3: + dependencies: + decode-named-character-reference: 1.2.0 + devlop: 1.1.0 + micromark-factory-destination: 2.0.1 + micromark-factory-label: 2.0.1 + micromark-factory-space: 2.0.1 + micromark-factory-title: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-html-tag-name: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-destination@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-label@2.0.1: + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-space@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-types: 2.0.2 + + micromark-factory-title@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-factory-whitespace@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-character@2.1.1: + dependencies: + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-chunked@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-classify-character@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-combine-extensions@2.0.1: + dependencies: + micromark-util-chunked: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-decode-numeric-character-reference@2.0.2: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-decode-string@2.0.1: + dependencies: + decode-named-character-reference: 1.2.0 + micromark-util-character: 2.1.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-symbol: 2.0.1 + + micromark-util-encode@2.0.1: {} + + micromark-util-html-tag-name@2.0.1: {} + + micromark-util-normalize-identifier@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-resolve-all@2.0.1: + dependencies: + micromark-util-types: 2.0.2 + + micromark-util-sanitize-uri@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-encode: 2.0.1 + micromark-util-symbol: 2.0.1 + + micromark-util-subtokenize@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + + micromark-util-symbol@2.0.1: {} + + micromark-util-types@2.0.2: {} + + micromark@4.0.2: + dependencies: + '@types/debug': 4.1.12 + debug: 4.4.1(supports-color@10.0.0) + decode-named-character-reference: 1.2.0 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.3 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-combine-extensions: 2.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-encode: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-subtokenize: 2.1.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.2 + transitivePeerDependencies: + - supports-color + micromatch@4.0.8: dependencies: braces: 3.0.3 @@ -7487,6 +8043,16 @@ snapshots: dependencies: callsites: 3.1.0 + parse-entities@4.0.2: + dependencies: + '@types/unist': 2.0.11 + character-entities-legacy: 3.0.0 + character-reference-invalid: 2.0.1 + decode-named-character-reference: 1.2.0 + is-alphanumerical: 2.0.1 + is-decimal: 2.0.1 + is-hexadecimal: 2.0.1 + parse-json@5.2.0: dependencies: '@babel/code-frame': 7.27.1 @@ -7555,6 +8121,8 @@ snapshots: object-assign: 4.1.1 react-is: 16.13.1 + property-information@7.1.0: {} + punycode@2.3.1: {} query-string@9.2.2: @@ -7674,6 +8242,23 @@ snapshots: react-is@17.0.2: {} + react-markdown@9.0.1(@types/react@18.3.23)(react@18.3.1): + dependencies: + '@types/hast': 3.0.4 + '@types/react': 18.3.23 + devlop: 1.1.0 + hast-util-to-jsx-runtime: 2.3.6 + html-url-attributes: 3.0.1 + mdast-util-to-hast: 13.2.1 + react: 18.3.1 + remark-parse: 11.0.0 + remark-rehype: 11.1.2 + unified: 11.0.5 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + transitivePeerDependencies: + - supports-color + react-redux@9.2.0(@types/react@18.3.23)(react@18.3.1)(redux@5.0.1): dependencies: '@types/use-sync-external-store': 0.0.6 @@ -7851,6 +8436,23 @@ snapshots: gopd: 1.2.0 set-function-name: 2.0.2 + remark-parse@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.2 + micromark-util-types: 2.0.2 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-rehype@11.1.2: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + mdast-util-to-hast: 13.2.1 + unified: 11.0.5 + vfile: 6.0.3 + require-directory@2.1.1: {} require-from-string@2.0.2: {} @@ -8084,6 +8686,8 @@ snapshots: source-map@0.7.4: {} + space-separated-tokens@2.0.2: {} + split-on-first@3.0.0: {} stable-hash@0.0.6: {} @@ -8195,6 +8799,11 @@ snapshots: dependencies: safe-buffer: 5.2.1 + stringify-entities@4.0.4: + dependencies: + character-entities-html4: 2.1.0 + character-entities-legacy: 3.0.0 + strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 @@ -8221,6 +8830,14 @@ snapshots: dependencies: js-tokens: 9.0.1 + style-to-js@1.1.21: + dependencies: + style-to-object: 1.0.14 + + style-to-object@1.0.14: + dependencies: + inline-style-parser: 0.2.7 + stylis@4.2.0: {} stylis@4.3.6: {} @@ -8274,6 +8891,10 @@ snapshots: tree-kill@1.2.2: {} + trim-lines@3.0.1: {} + + trough@2.2.0: {} + ts-api-utils@2.1.0(typescript@5.8.3): dependencies: typescript: 5.8.3 @@ -8359,6 +8980,39 @@ snapshots: unicorn-magic@0.1.0: {} + unified@11.0.5: + dependencies: + '@types/unist': 3.0.3 + bail: 2.0.2 + devlop: 1.1.0 + extend: 3.0.2 + is-plain-obj: 4.1.0 + trough: 2.2.0 + vfile: 6.0.3 + + unist-util-is@6.0.1: + dependencies: + '@types/unist': 3.0.3 + + unist-util-position@5.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-stringify-position@4.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-visit-parents@6.0.2: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.1 + + unist-util-visit@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.1 + unist-util-visit-parents: 6.0.2 + universalify@2.0.1: {} unplugin@1.16.1: @@ -8428,6 +9082,16 @@ snapshots: uuid@11.1.0: {} + vfile-message@4.0.3: + dependencies: + '@types/unist': 3.0.3 + unist-util-stringify-position: 4.0.0 + + vfile@6.0.3: + dependencies: + '@types/unist': 3.0.3 + vfile-message: 4.0.3 + vite-node@3.2.4(@types/node@22.16.0)(jiti@2.4.2): dependencies: cac: 6.7.14 @@ -8481,7 +9145,7 @@ snapshots: fsevents: 2.3.3 jiti: 2.4.2 - vitest@3.2.4(@types/node@22.16.0)(@vitest/ui@3.2.4)(jiti@2.4.2): + vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.16.0)(@vitest/ui@3.2.4)(jiti@2.4.2): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 @@ -8507,6 +9171,7 @@ snapshots: vite-node: 3.2.4(@types/node@22.16.0)(jiti@2.4.2) why-is-node-running: 2.3.0 optionalDependencies: + '@types/debug': 4.1.12 '@types/node': 22.16.0 '@vitest/ui': 3.2.4(vitest@3.2.4) transitivePeerDependencies: @@ -8653,3 +9318,5 @@ snapshots: '@types/react': 18.3.23 immer: 10.1.1 react: 18.3.1 + + zwitch@2.0.4: {} diff --git a/invokeai/frontend/web/public/locales/en.json b/invokeai/frontend/web/public/locales/en.json index 881d7253270..40db38c9a3f 100644 --- a/invokeai/frontend/web/public/locales/en.json +++ b/invokeai/frontend/web/public/locales/en.json @@ -1274,7 +1274,9 @@ "alignmentDL": "Bottom Left", "alignmentUR": "Top Right", "alignmentDR": "Bottom Right" - } + }, + "help": "Help", + "noDocsAvailable": "No documentation available for this node." }, "parameters": { "aspect": "Aspect", @@ -1561,8 +1563,6 @@ "problemUnpublishingWorkflow": "Problem Unpublishing Workflow", "problemUnpublishingWorkflowDescription": "There was a problem unpublishing the workflow. Please try again.", "workflowUnpublished": "Workflow Unpublished", - "sentToCanvas": "Sent to Canvas", - "sentToUpscale": "Sent to Upscale", "promptGenerationStarted": "Prompt generation started", "uploadAndPromptGenerationFailed": "Failed to upload image and generate prompt", "promptExpansionFailed": "We ran into an issue. Please try prompt expansion again.", @@ -2685,7 +2685,6 @@ "selectPreset": "Select Style Preset", "noMatchingPresets": "No matching presets" }, - "ui": { "tabs": { "generate": "Generate", diff --git a/invokeai/frontend/web/public/nodeDocs/en/z_image_denoise.md b/invokeai/frontend/web/public/nodeDocs/en/z_image_denoise.md new file mode 100644 index 00000000000..34c19769c58 --- /dev/null +++ b/invokeai/frontend/web/public/nodeDocs/en/z_image_denoise.md @@ -0,0 +1,42 @@ +# Z Image Denoise Node + +The Z Image Denoise node performs diffusion-based denoising on an image using the Z-Image (Zunderbolts) model architecture. This node is designed for high-quality image generation and modification workflows. + +## Overview + +This node takes a source image, encodes it into latent space, applies denoising with a specified strength, and then decodes the result back into an image. The denoising process allows for controlled transformation of the input image while preserving core structure. + +## Inputs + +### Required Inputs + +- **Model**: The Z-Image main model to use for denoising +- **Positive Prompt**: Text description of what you want to see in the output +- **Negative Prompt**: Text description of what you want to avoid in the output +- **Image**: The source image to be processed + +### Optional Inputs + +- **Denoising Strength**: Controls how much of the original image is preserved (0.0 = no change, 1.0 = full regeneration) +- **Steps**: Number of denoising steps (more steps = higher quality but slower) +- **CFG Scale**: How strongly the model should follow your prompt +- **Scheduler**: The noise scheduling algorithm to use +- **Seed**: Random seed for reproducible results + +## Outputs + +- **Image**: The denoised/transformed output image + +## Tips + +1. **Lower denoising strength** (0.2-0.5) preserves more of the original image structure +2. **Higher denoising strength** (0.7-1.0) allows for more creative reinterpretation +3. Use **negative prompts** to steer the model away from unwanted artifacts or styles +4. If results are too noisy, try increasing the number of steps + +## Example Use Cases + +- Image-to-image style transfer +- Photo restoration and enhancement +- Creative image modifications +- Consistent character regeneration with slight variations diff --git a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHeader.tsx b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHeader.tsx index 63a86479b2c..a60ca776572 100644 --- a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHeader.tsx +++ b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHeader.tsx @@ -7,6 +7,7 @@ import { useNodeHasErrors } from 'features/nodes/hooks/useNodeIsInvalid'; import { memo } from 'react'; import InvocationNodeCollapsedHandles from './InvocationNodeCollapsedHandles'; +import { InvocationNodeHelpButton } from './InvocationNodeHelpButton'; import { InvocationNodeInfoIcon } from './InvocationNodeInfoIcon'; import InvocationNodeStatusIndicator from './InvocationNodeStatusIndicator'; @@ -38,6 +39,7 @@ const InvocationNodeHeader = ({ nodeId, isOpen }: Props) => { + {!isOpen && } diff --git a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpButton.tsx b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpButton.tsx new file mode 100644 index 00000000000..b34f03ae023 --- /dev/null +++ b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpButton.tsx @@ -0,0 +1,31 @@ +import { Icon, useDisclosure } from '@invoke-ai/ui-library'; +import { memo } from 'react'; +import { PiQuestionBold } from 'react-icons/pi'; + +import { InvocationNodeHelpModal } from './InvocationNodeHelpModal'; + +interface Props { + nodeId: string; +} + +export const InvocationNodeHelpButton = memo(({ nodeId: _nodeId }: Props) => { + const { isOpen, onOpen, onClose } = useDisclosure(); + + return ( + <> + + + + ); +}); + +InvocationNodeHelpButton.displayName = 'InvocationNodeHelpButton'; diff --git a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx new file mode 100644 index 00000000000..57631912a0a --- /dev/null +++ b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx @@ -0,0 +1,132 @@ +import { + Image, + Modal, + ModalBody, + ModalCloseButton, + ModalContent, + ModalHeader, + ModalOverlay, + Spinner, + Text, +} from '@invoke-ai/ui-library'; +import { useNodeTemplateOrThrow } from 'features/nodes/hooks/useNodeTemplateOrThrow'; +import type { ReactElement, ReactNode } from 'react'; +import { memo, useEffect, useState } from 'react'; +import { useTranslation } from 'react-i18next'; +import Markdown from 'react-markdown'; + +interface NodeDocsContent { + markdown: string; +} + +interface Props { + isOpen: boolean; + onClose: () => void; +} + +const markdownComponents = { + // Render images inline with the markdown + img: ({ src, alt }: { src?: string; alt?: string }) => ( + {alt + ), + // Style paragraphs + p: ({ children }: { children?: ReactNode }) => ( + + {children} + + ), + // Style headings + h1: ({ children }: { children?: ReactNode }) => ( + + {children} + + ), + h2: ({ children }: { children?: ReactNode }) => ( + + {children} + + ), + h3: ({ children }: { children?: ReactNode }) => ( + + {children} + + ), + // Style code blocks + code: ({ children }: { children?: ReactNode }) => ( + + {children} + + ), + // Style list items + li: ({ children }: { children?: ReactNode }) => ( + + {children} + + ), +}; + +export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactElement => { + const nodeTemplate = useNodeTemplateOrThrow(); + const { t, i18n } = useTranslation(); + const [docsContent, setDocsContent] = useState(null); + const [isLoading, setIsLoading] = useState(false); + const [error, setError] = useState(null); + + useEffect(() => { + if (!isOpen) { + return; + } + + const loadDocs = async () => { + setIsLoading(true); + setError(null); + + const nodeType = nodeTemplate.type; + const currentLanguage = i18n.language; + const fallbackLanguage = 'en'; + + // Try to load docs for current language first, then fallback to English + const languagesToTry = + currentLanguage !== fallbackLanguage ? [currentLanguage, fallbackLanguage] : [fallbackLanguage]; + + for (const lang of languagesToTry) { + try { + const response = await fetch(`/nodeDocs/${lang}/${nodeType}.md`); + if (response.ok) { + const markdown = await response.text(); + setDocsContent({ markdown }); + setIsLoading(false); + return; + } + } catch { + // Continue to next language + } + } + + // No docs found for any language + setError(t('nodes.noDocsAvailable')); + setIsLoading(false); + }; + + loadDocs(); + }, [isOpen, nodeTemplate.type, i18n.language, t]); + + return ( + + + + + {nodeTemplate.title} - {t('nodes.help')} + + + + {isLoading && } + {error && {error}} + {docsContent && {docsContent.markdown}} + + + + ); +}); + +InvocationNodeHelpModal.displayName = 'InvocationNodeHelpModal'; From 155282667c6aebe8f1e6aab62fe8ca43f01b1505 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 6 Jan 2026 20:44:53 +0000 Subject: [PATCH 03/21] fix: address code review feedback - add state reset, input sanitization, and logging Co-authored-by: dunkeroni <3298737+dunkeroni@users.noreply.github.com> --- .../Invocation/InvocationNodeHelpModal.tsx | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx index 57631912a0a..baee4f7783d 100644 --- a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx +++ b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx @@ -9,12 +9,15 @@ import { Spinner, Text, } from '@invoke-ai/ui-library'; +import { logger } from 'app/logging/logger'; import { useNodeTemplateOrThrow } from 'features/nodes/hooks/useNodeTemplateOrThrow'; import type { ReactElement, ReactNode } from 'react'; import { memo, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import Markdown from 'react-markdown'; +const log = logger('system'); + interface NodeDocsContent { markdown: string; } @@ -74,6 +77,9 @@ export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactE useEffect(() => { if (!isOpen) { + // Reset state when modal closes to prevent stale data + setDocsContent(null); + setError(null); return; } @@ -82,16 +88,24 @@ export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactE setError(null); const nodeType = nodeTemplate.type; + // Sanitize nodeType to prevent path traversal - only allow alphanumeric, underscore, and hyphen + const sanitizedNodeType = nodeType.replace(/[^a-zA-Z0-9_-]/g, ''); + if (sanitizedNodeType !== nodeType) { + log.warn({ nodeType }, 'Node type contains invalid characters for docs path'); + } + const currentLanguage = i18n.language; const fallbackLanguage = 'en'; + // Sanitize language code as well + const sanitizedLanguage = currentLanguage.replace(/[^a-zA-Z-]/g, ''); // Try to load docs for current language first, then fallback to English const languagesToTry = - currentLanguage !== fallbackLanguage ? [currentLanguage, fallbackLanguage] : [fallbackLanguage]; + sanitizedLanguage !== fallbackLanguage ? [sanitizedLanguage, fallbackLanguage] : [fallbackLanguage]; for (const lang of languagesToTry) { try { - const response = await fetch(`/nodeDocs/${lang}/${nodeType}.md`); + const response = await fetch(`/nodeDocs/${lang}/${sanitizedNodeType}.md`); if (response.ok) { const markdown = await response.text(); setDocsContent({ markdown }); @@ -99,7 +113,8 @@ export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactE return; } } catch { - // Continue to next language + // Log error but continue to next language + log.debug(`Failed to fetch node docs for ${sanitizedNodeType} (${lang})`); } } From f6df719a30488a6c36f1c852cd3fab5f661da6e7 Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Tue, 6 Jan 2026 20:31:01 -0500 Subject: [PATCH 04/21] image test update --- .../en/images/z_image_example_t2i.png | Bin 0 -> 133280 bytes .../web/public/nodeDocs/en/z_image_denoise.md | 41 ++++-------------- 2 files changed, 8 insertions(+), 33 deletions(-) create mode 100644 invokeai/frontend/web/public/nodeDocs/en/images/z_image_example_t2i.png diff --git a/invokeai/frontend/web/public/nodeDocs/en/images/z_image_example_t2i.png b/invokeai/frontend/web/public/nodeDocs/en/images/z_image_example_t2i.png new file mode 100644 index 0000000000000000000000000000000000000000..795aea49f23c32a80a2962352d4ad0062294218c GIT binary patch literal 133280 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

J4fH@0SP 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

sZji>VB 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 Date: Wed, 7 Jan 2026 01:40:35 +0000 Subject: [PATCH 05/21] fix: resolve relative image paths in node documentation markdown Co-authored-by: dunkeroni <3298737+dunkeroni@users.noreply.github.com> --- .../Invocation/InvocationNodeHelpModal.tsx | 38 +++++++++++++++---- 1 file changed, 31 insertions(+), 7 deletions(-) diff --git a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx index baee4f7783d..b7dce3ce6b3 100644 --- a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx +++ b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx @@ -20,6 +20,7 @@ const log = logger('system'); interface NodeDocsContent { markdown: string; + basePath: string; } interface Props { @@ -27,10 +28,30 @@ interface Props { onClose: () => void; } -const markdownComponents = { - // Render images inline with the markdown +/** + * Resolves a potentially relative image path to an absolute path based on the docs base path. + * Handles paths starting with './' or not starting with '/' or 'http'. + */ +const resolveImagePath = (src: string | undefined, basePath: string): string => { + if (!src) { + return ''; + } + // If it's already an absolute URL or data URL, return as-is + if (src.startsWith('http://') || src.startsWith('https://') || src.startsWith('data:') || src.startsWith('/')) { + return src; + } + // Handle relative paths like './images/...' or 'images/...' + const relativePath = src.startsWith('./') ? src.slice(2) : src; + return `${basePath}/${relativePath}`; +}; + +/** + * Creates markdown components with proper image path resolution. + */ +const createMarkdownComponents = (basePath: string) => ({ + // Render images inline with the markdown, resolving relative paths img: ({ src, alt }: { src?: string; alt?: string }) => ( - {alt + {alt ), // Style paragraphs p: ({ children }: { children?: ReactNode }) => ( @@ -66,7 +87,7 @@ const markdownComponents = { {children} ), -}; +}); export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactElement => { const nodeTemplate = useNodeTemplateOrThrow(); @@ -105,10 +126,11 @@ export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactE for (const lang of languagesToTry) { try { - const response = await fetch(`/nodeDocs/${lang}/${sanitizedNodeType}.md`); + const basePath = `/nodeDocs/${lang}`; + const response = await fetch(`${basePath}/${sanitizedNodeType}.md`); if (response.ok) { const markdown = await response.text(); - setDocsContent({ markdown }); + setDocsContent({ markdown, basePath }); setIsLoading(false); return; } @@ -137,7 +159,9 @@ export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactE {isLoading && } {error && {error}} - {docsContent && {docsContent.markdown}} + {docsContent && ( + {docsContent.markdown} + )} From c569ae0a1a22ddd17afec0312d008941d5fe7011 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 7 Jan 2026 01:42:51 +0000 Subject: [PATCH 06/21] fix: normalize image paths to avoid double slashes Co-authored-by: dunkeroni <3298737+dunkeroni@users.noreply.github.com> --- .../flow/nodes/Invocation/InvocationNodeHelpModal.tsx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx index b7dce3ce6b3..8b8220ab7ec 100644 --- a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx +++ b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx @@ -42,7 +42,10 @@ const resolveImagePath = (src: string | undefined, basePath: string): string => } // Handle relative paths like './images/...' or 'images/...' const relativePath = src.startsWith('./') ? src.slice(2) : src; - return `${basePath}/${relativePath}`; + // Normalize path to avoid double slashes + const normalizedBasePath = basePath.endsWith('/') ? basePath.slice(0, -1) : basePath; + const normalizedRelativePath = relativePath.startsWith('/') ? relativePath.slice(1) : relativePath; + return `${normalizedBasePath}/${normalizedRelativePath}`; }; /** From 2a01260e3e43a02d7ecd88985a697ecbe123a80b Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Wed, 7 Jan 2026 12:11:57 -0500 Subject: [PATCH 07/21] added NodeDocs info file. --- .../frontend/web/public/nodeDocs/_INFO_.md | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 invokeai/frontend/web/public/nodeDocs/_INFO_.md diff --git a/invokeai/frontend/web/public/nodeDocs/_INFO_.md b/invokeai/frontend/web/public/nodeDocs/_INFO_.md new file mode 100644 index 00000000000..cf31eb51fb2 --- /dev/null +++ b/invokeai/frontend/web/public/nodeDocs/_INFO_.md @@ -0,0 +1,55 @@ +This folder contains developer-authored node documentation to be displayed in the Workflow Editor. + +## Naming: +- One Markdown file per invocation, named exactly after its invocation_type with a .md suffix (e.g., "img_crop.md" for the "img_crop" invocation). +- Files live in this folder (and in language subfolders such as en/). + +## Authoring: +- Description: Explain the intended use case(s) for the node, and any important details about its behavior. The intention here is to explain to the user **why** and **how** they would use this node. The description should not be a repeat of the node's technical specification, but rather a user-focused explanation of its purpose and functionality, written in clear, non-technical language. + +- Inputs: List and describe each input port, including expected data types and any important details about how the input affects the node's behavior. + +- Outputs: (if applicable) List and describe each output port, including data types and any important details about the output data. + +- Examples: Provide one or more example usages of the node, including images where applicable. Each example should include a brief description of the scenario being demonstrated. + +## Images: +- Place image files in the images/ subfolder next to the markdown file. Reference them using relative paths in the markdown. +- Ensure image names are unique and descriptive. Images can be reused across multiple docs if applicable, e.g., SD1.5 denoise and prompt nodes can all be shown in a single image since their usage is tied together. +- Images can be screenshots of the node in use, example outputs, or diagrams illustrating concepts. +- When displaying node use examples, keep the example focused on the node and its immediate upstream/downstream connections, and, for best readability, keep the image width approximately two nodes wide. + +[Use IMAGE_PLACEHOLDER for any images at this time. We will replace these with actual images later.] + +## Submitting: +- Before you submit a PR, make sure you run lint:prettier to ensure proper formatting and to pass tests. +- Check that your markdown renders correctly in a markdown viewer in the UI. +- You can update docs and test them without having to rebuild or re-launch the UI each time: the server loads the markdown files on each request. Just refresh the page to see your changes. + +Doc Template: +--- + +# [NODE NAME] +[Node description goes here.] + +## Inputs +- [Input 1 Name]: [Description of input 1] +- [Input 2 Name]: [Description of input 2] +- ... + +## Outputs +- [Output 1 Name]: [Description of output 1] +- [Output 2 Name]: [Description of output 2] +- ... + +## Example Usage +### [Example Scenario 1] +![Descriptive Alt Text for Example 1](./images/[image_file_name_1].png) +[Brief description of Example Scenario 1.] + +### [Example Scenario 2] +![Descriptive Alt Text for Example 2](./images/[image_file_name_2].png) +[Brief description of Example Scenario 2.] + +## Notes: +- [Any additional notes or important details about the node's behavior.] From fbc966f0d9e6bb4e63301fe5f8b6b0eaba9b71bd Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Wed, 7 Jan 2026 13:47:29 -0500 Subject: [PATCH 08/21] example float to int node documentation --- invokeai/frontend/web/public/nodeDocs/_INFO_.md | 5 ++--- .../web/public/nodeDocs/en/float_to_int.md | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 3 deletions(-) create mode 100644 invokeai/frontend/web/public/nodeDocs/en/float_to_int.md diff --git a/invokeai/frontend/web/public/nodeDocs/_INFO_.md b/invokeai/frontend/web/public/nodeDocs/_INFO_.md index cf31eb51fb2..6ede10f4323 100644 --- a/invokeai/frontend/web/public/nodeDocs/_INFO_.md +++ b/invokeai/frontend/web/public/nodeDocs/_INFO_.md @@ -9,7 +9,7 @@ This folder contains developer-authored node documentation to be displayed in th - Inputs: List and describe each input port, including expected data types and any important details about how the input affects the node's behavior. -- Outputs: (if applicable) List and describe each output port, including data types and any important details about the output data. +- Outputs: (if applicable) List and describe each output port, including data types and any important details about the output data. If the node has a single output that is already explained in the description, this section can be omitted. - Examples: Provide one or more example usages of the node, including images where applicable. Each example should include a brief description of the scenario being demonstrated. @@ -22,9 +22,8 @@ This folder contains developer-authored node documentation to be displayed in th [Use IMAGE_PLACEHOLDER for any images at this time. We will replace these with actual images later.] ## Submitting: -- Before you submit a PR, make sure you run lint:prettier to ensure proper formatting and to pass tests. +- Before you submit a PR, make sure you run `lint:prettier` and `pnpm build` to ensure proper formatting and to pass tests. - Check that your markdown renders correctly in a markdown viewer in the UI. -- You can update docs and test them without having to rebuild or re-launch the UI each time: the server loads the markdown files on each request. Just refresh the page to see your changes. Doc Template: --- diff --git a/invokeai/frontend/web/public/nodeDocs/en/float_to_int.md b/invokeai/frontend/web/public/nodeDocs/en/float_to_int.md new file mode 100644 index 00000000000..cc485d34636 --- /dev/null +++ b/invokeai/frontend/web/public/nodeDocs/en/float_to_int.md @@ -0,0 +1,14 @@ +# Float to Integer +The Float to Integer node rounds floating-point numbers to integers. At "Multiple of" 1, it performs standard rounding to the nearest integer. By adjusting the "Multiple of" parameter, users can round to the nearest specified multiple. Multiples of 64 are helpfulfor image dimensions that are more compatible with denoising models, 2 will return the nearest even number, etc. The "Method" parameter allows you to choose the rounding direction. + +## Inputs +- Value: The floating-point number to be converted to an integer. +- Multiple of: The multiple to which the value should be rounded. Leave at 1 for rounding to the nearest integer. +- Method: The direction to apply rounding: + - Nearest: Rounds to the nearest multiple. + - Floor: Rounds down to the nearest multiple. + - Ceil: Rounds up to the nearest multiple. + - Truncate: Rounds towards zero to the nearest multiple. + +## Notes: +- This node uses numpy floor/ceiling operations, so direction is consistent for both positive and negative values. For example; flooring 3.7 results in 3, but flooring -3.7 results in -4, and not -3. To round towards the next lesser magnitude (i.e., -3), use the Truncate method. From 07f31b0c594fe4e5f01f2c63c6a2bdf3edc23dbf Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Thu, 15 Jan 2026 19:11:57 -0500 Subject: [PATCH 09/21] example math docs --- .../frontend/web/public/nodeDocs/_INFO_.md | 18 +++++++--- .../web/public/nodeDocs/en/float_math.md | 34 +++++++++++++++++++ .../web/public/nodeDocs/en/float_to_int.md | 11 +++--- .../web/public/nodeDocs/en/integer_math.md | 34 +++++++++++++++++++ .../web/public/nodeDocs/en/rand_float.md | 24 +++++++++++++ .../web/public/nodeDocs/en/rand_int.md | 23 +++++++++++++ .../web/public/nodeDocs/en/round_float.md | 23 +++++++++++++ 7 files changed, 159 insertions(+), 8 deletions(-) create mode 100644 invokeai/frontend/web/public/nodeDocs/en/float_math.md create mode 100644 invokeai/frontend/web/public/nodeDocs/en/integer_math.md create mode 100644 invokeai/frontend/web/public/nodeDocs/en/rand_float.md create mode 100644 invokeai/frontend/web/public/nodeDocs/en/rand_int.md create mode 100644 invokeai/frontend/web/public/nodeDocs/en/round_float.md diff --git a/invokeai/frontend/web/public/nodeDocs/_INFO_.md b/invokeai/frontend/web/public/nodeDocs/_INFO_.md index 6ede10f4323..560b88b240d 100644 --- a/invokeai/frontend/web/public/nodeDocs/_INFO_.md +++ b/invokeai/frontend/web/public/nodeDocs/_INFO_.md @@ -1,54 +1,64 @@ This folder contains developer-authored node documentation to be displayed in the Workflow Editor. ## Naming: + - One Markdown file per invocation, named exactly after its invocation_type with a .md suffix (e.g., "img_crop.md" for the "img_crop" invocation). - Files live in this folder (and in language subfolders such as en/). ## Authoring: + - Description: Explain the intended use case(s) for the node, and any important details about its behavior. The intention here is to explain to the user **why** and **how** they would use this node. The description should not be a repeat of the node's technical specification, but rather a user-focused explanation of its purpose and functionality, written in clear, non-technical language. -- Inputs: List and describe each input port, including expected data types and any important details about how the input affects the node's behavior. +- Inputs: List and describe each input port, including expected data types and any important details about how the input affects the node's behavior. Use code formatting for input names (e.g., `Input Name`) when listing and referring to them. - Outputs: (if applicable) List and describe each output port, including data types and any important details about the output data. If the node has a single output that is already explained in the description, this section can be omitted. - Examples: Provide one or more example usages of the node, including images where applicable. Each example should include a brief description of the scenario being demonstrated. ## Images: + - Place image files in the images/ subfolder next to the markdown file. Reference them using relative paths in the markdown. - Ensure image names are unique and descriptive. Images can be reused across multiple docs if applicable, e.g., SD1.5 denoise and prompt nodes can all be shown in a single image since their usage is tied together. - Images can be screenshots of the node in use, example outputs, or diagrams illustrating concepts. -- When displaying node use examples, keep the example focused on the node and its immediate upstream/downstream connections, and, for best readability, keep the image width approximately two nodes wide. +- When displaying node usage examples, keep the example focused on the node and its immediate upstream/downstream connections. For best readability, keep the image width approximately two nodes wide. [Use IMAGE_PLACEHOLDER for any images at this time. We will replace these with actual images later.] ## Submitting: + - Before you submit a PR, make sure you run `lint:prettier` and `pnpm build` to ensure proper formatting and to pass tests. - Check that your markdown renders correctly in a markdown viewer in the UI. -Doc Template: ---- +## Doc Template: # [NODE NAME] + [Node description goes here.] ## Inputs + - [Input 1 Name]: [Description of input 1] - [Input 2 Name]: [Description of input 2] - ... ## Outputs + - [Output 1 Name]: [Description of output 1] - [Output 2 Name]: [Description of output 2] - ... ## Example Usage + ### [Example Scenario 1] + ![Descriptive Alt Text for Example 1](./images/[image_file_name_1].png) [Brief description of Example Scenario 1.] ### [Example Scenario 2] + ![Descriptive Alt Text for Example 2](./images/[image_file_name_2].png) [Brief description of Example Scenario 2.] ## Notes: + - [Any additional notes or important details about the node's behavior.] diff --git a/invokeai/frontend/web/public/nodeDocs/en/float_math.md b/invokeai/frontend/web/public/nodeDocs/en/float_math.md new file mode 100644 index 00000000000..6a25494d5b9 --- /dev/null +++ b/invokeai/frontend/web/public/nodeDocs/en/float_math.md @@ -0,0 +1,34 @@ +# Float Math + +The Float Math node performs common floating-point operations on two inputs. Use it when you need precise decimal arithmetic, roots, exponentiation, or min/max comparisons with float inputs. + +## Inputs + +- `Operation`: The operation to perform. Choices: + - Add A+B: Adds `A` and `B`. + - Subtract A-B: Subtracts `B` from `A`. + - Multiply A\*B: Multiplies `A` by `B`. + - Divide A/B: Floating-point division. + - Exponentiate A^B: Raises `A` to the power `B` (watch out for zero-to-negative exponents). + - Absolute Value of A: Absolute value of `A` (ignores `B`). + - Square Root of A: Square root of `A` (ignores `B`; result invalid for negative `A`). + - Minimum(A,B): The smaller of `A` and `B`. + - Maximum(A,B): The larger of `A` and `B`. +- `A`: First float input. +- `B`: Second float input. + +## Outputs + +- Result: Float — the result of the selected operation. + +## Example Usage + +![Example](./images/IMAGE_PLACEHOLDER.png) +Use Float Math to compute a square root or fractional power for precise scaling. + +## Notes: + +- Division by zero is invalid and will produce a validation error; ensure `B` is not zero for DIV. +- Exponentiation will error if raising zero to a negative exponent. Root operations that produce complex numbers are rejected. +- Square Root operates on `A` only; negative `A` will be rejected because it would produce a complex result. +- For integer-only operations, use the Integer Math node. diff --git a/invokeai/frontend/web/public/nodeDocs/en/float_to_int.md b/invokeai/frontend/web/public/nodeDocs/en/float_to_int.md index cc485d34636..0f70376aa4b 100644 --- a/invokeai/frontend/web/public/nodeDocs/en/float_to_int.md +++ b/invokeai/frontend/web/public/nodeDocs/en/float_to_int.md @@ -1,14 +1,17 @@ # Float to Integer + The Float to Integer node rounds floating-point numbers to integers. At "Multiple of" 1, it performs standard rounding to the nearest integer. By adjusting the "Multiple of" parameter, users can round to the nearest specified multiple. Multiples of 64 are helpfulfor image dimensions that are more compatible with denoising models, 2 will return the nearest even number, etc. The "Method" parameter allows you to choose the rounding direction. ## Inputs + - Value: The floating-point number to be converted to an integer. - Multiple of: The multiple to which the value should be rounded. Leave at 1 for rounding to the nearest integer. - Method: The direction to apply rounding: - - Nearest: Rounds to the nearest multiple. - - Floor: Rounds down to the nearest multiple. - - Ceil: Rounds up to the nearest multiple. - - Truncate: Rounds towards zero to the nearest multiple. + - Nearest: Rounds to the nearest multiple. + - Floor: Rounds down to the nearest multiple. + - Ceil: Rounds up to the nearest multiple. + - Truncate: Rounds towards zero to the nearest multiple. ## Notes: + - This node uses numpy floor/ceiling operations, so direction is consistent for both positive and negative values. For example; flooring 3.7 results in 3, but flooring -3.7 results in -4, and not -3. To round towards the next lesser magnitude (i.e., -3), use the Truncate method. diff --git a/invokeai/frontend/web/public/nodeDocs/en/integer_math.md b/invokeai/frontend/web/public/nodeDocs/en/integer_math.md new file mode 100644 index 00000000000..b9f05a5ce88 --- /dev/null +++ b/invokeai/frontend/web/public/nodeDocs/en/integer_math.md @@ -0,0 +1,34 @@ +# Integer Math + +The Integer Math node performs a range of integer operations (add, subtract, multiply, divide, modulus, power, absolute, min, max) on two integer inputs. Use it when you need a single node to perform common integer arithmetic with built-in validation for operations that would produce invalid integer results. + +## Inputs + +- operation: The operation to perform. Choices: + - Add A+B: Adds `A` and `B`. + - Subtract A-B: Subtracts `B` from `A`. + - Multiply A\*B: Multiplies `A` by `B`. + - Divide A/B: Integer division; fractional part discarded. + - Exponentiate A^B: Raises `A` to the power `B` (b must be >= 0). + - Modulus A%B: Remainder of `A` divided by `B`. + - Absolute Value of A: Absolute value of `A` (ignores `B`). + - Minimum(A,B): The smaller of `A` and `B`. + - Maximum(A,B): The larger of `A` and `B`. +- `A`: First integer (primary operand). +- `B`: Second integer (secondary operand; some operations may ignore it). + +## Outputs + +- Result: Integer — the result of the selected operation. + +## Example Usage + +![Example](./images/IMAGE_PLACEHOLDER.png) +Use the Integer Math node to compute integer exponents or combine two counters with a chosen operation. + +## Notes: + +- Division and modulus by zero are invalid and will produce a validation error; ensure `B` is not zero for DIV or MOD. +- Exponentiation (EXP) requires a non-negative exponent (`B` >= 0); negative exponents are rejected because they don't produce integers. +- Division uses integer division (equivalent to int(`A` / `B`)), so fractional portions are discarded rather than rounded. +- Absolute Value ignores the `B` input. diff --git a/invokeai/frontend/web/public/nodeDocs/en/rand_float.md b/invokeai/frontend/web/public/nodeDocs/en/rand_float.md new file mode 100644 index 00000000000..5466bc7b87d --- /dev/null +++ b/invokeai/frontend/web/public/nodeDocs/en/rand_float.md @@ -0,0 +1,24 @@ +# Random Float + +The Random Float node outputs a single non-deterministic floating-point number sampled uniformly from a range. Use it to introduce small continuous variation or random seeds for float parameters. + +## Inputs + +- `Low`: Inclusive lower bound (float). +- `High`: Exclusive upper bound (float) — generated value will be >= `Low` and < `High`. +- `Decimals`: Number of decimal places to round the result to (integer). + +## Outputs + +- Result: Float — a randomly chosen float rounded to the specified number of decimals. + +## Example Usage + +![Example](./images/IMAGE_PLACEHOLDER.png) +Generate a randomized float parameter (e.g., color hue offset) with controlled precision. + +## Notes: + +- This node is non-deterministic (use_cache=False) and will produce a new value each run. +- The node rounds the sampled float to the requested number of decimals before output. +- Ensure low < high to avoid errors. diff --git a/invokeai/frontend/web/public/nodeDocs/en/rand_int.md b/invokeai/frontend/web/public/nodeDocs/en/rand_int.md new file mode 100644 index 00000000000..e94ffa84fb7 --- /dev/null +++ b/invokeai/frontend/web/public/nodeDocs/en/rand_int.md @@ -0,0 +1,23 @@ +# Random Integer + +The Random Integer node outputs a single non-deterministic integer drawn from a range. Use it when you need jittered counts, random indices, or other unpredictable integer values. + +## Inputs + +- `Low`: Inclusive lower bound (integer). +- `High`: Exclusive upper bound (integer) — the generated value will be >= `Low` and < `High`. + +## Outputs + +- Result: Integer — a randomly chosen integer in [`Low`, `High`). + +## Example Usage + +![Example](./images/IMAGE_PLACEHOLDER.png) +Generate a random index or offset to vary results across runs. + +## Notes: + +- This node is non-deterministic (use_cache=False) and will produce a new value each run. +- high is exclusive; set high = low + 1 to get either low only. +- Ensure low < high to avoid errors. diff --git a/invokeai/frontend/web/public/nodeDocs/en/round_float.md b/invokeai/frontend/web/public/nodeDocs/en/round_float.md new file mode 100644 index 00000000000..b135b91c2b5 --- /dev/null +++ b/invokeai/frontend/web/public/nodeDocs/en/round_float.md @@ -0,0 +1,23 @@ +# Round Float + +The Round Float node reduces a floating-point number to a specified number of decimal places. Use it when you want to control numeric precision for display, comparison, or downstream calculations. + +## Inputs + +- `Value`: The float value to round. +- `Decimals`: Number of decimal places to retain (integer). Use 0 for whole-number results. + +## Outputs + +- Result: Float — the rounded value. + +## Example Usage + +![Example](./images/IMAGE_PLACEHOLDER.png) +Round a noisy parameter to two decimal places for stable downstream behavior. + +## Notes: + +- Rounding uses Python's round behavior (ties round to the nearest even value). +- Negative values are rounded according to the same rule (e.g., rounding -1.5 to 0 decimals yields -2.0 under nearest-even tie resolution). +- If you need integer results, use the Float to Integer node which supports rounding to multiples and different rounding methods. From e393a8e3601ac69656ae7ef6ef2c720e8cd7dc2d Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Thu, 15 Jan 2026 19:13:28 -0500 Subject: [PATCH 10/21] chore(node-docs): add packaged node docs resources and node_docs router --- invokeai/app/api/routers/node_docs.py | 54 +++++++++++++++++++ invokeai/app/api_app.py | 4 ++ invokeai/resources/node_docs/_INFO_.md | 54 +++++++++++++++++++ invokeai/resources/node_docs/en/float_math.md | 3 ++ .../resources/node_docs/en/float_to_int.md | 14 +++++ .../en/images/z_image_example_t2i.png | 0 .../resources/node_docs/en/integer_math.md | 3 ++ invokeai/resources/node_docs/en/rand_float.md | 3 ++ invokeai/resources/node_docs/en/rand_int.md | 3 ++ .../resources/node_docs/en/round_float.md | 3 ++ .../resources/node_docs/en/z_image_denoise.md | 38 +++++++++++++ 11 files changed, 179 insertions(+) create mode 100644 invokeai/app/api/routers/node_docs.py create mode 100644 invokeai/resources/node_docs/_INFO_.md create mode 100644 invokeai/resources/node_docs/en/float_math.md create mode 100644 invokeai/resources/node_docs/en/float_to_int.md create mode 100644 invokeai/resources/node_docs/en/images/z_image_example_t2i.png create mode 100644 invokeai/resources/node_docs/en/integer_math.md create mode 100644 invokeai/resources/node_docs/en/rand_float.md create mode 100644 invokeai/resources/node_docs/en/rand_int.md create mode 100644 invokeai/resources/node_docs/en/round_float.md create mode 100644 invokeai/resources/node_docs/en/z_image_denoise.md diff --git a/invokeai/app/api/routers/node_docs.py b/invokeai/app/api/routers/node_docs.py new file mode 100644 index 00000000000..bff473b37e1 --- /dev/null +++ b/invokeai/app/api/routers/node_docs.py @@ -0,0 +1,54 @@ +from __future__ import annotations + +import mimetypes +import re +from pathlib import Path +from typing import Optional + +from fastapi import APIRouter, HTTPException +from fastapi.responses import FileResponse, PlainTextResponse + +import importlib.resources as pkg_resources + +router = APIRouter() + +VALID_SEGMENT = re.compile(r"^[A-Za-z0-9_-]+$") + +RESOURCE_ROOT = Path("invokeai") / "resources" / "node_docs" + + +@router.get("/nodeDocs/{lang}/{name}.md") +def get_node_doc(lang: str, name: str) -> PlainTextResponse: + # Basic validation + if not VALID_SEGMENT.match(lang) or not VALID_SEGMENT.match(name): + raise HTTPException(status_code=400, detail="Invalid path segment") + + # Attempt to load the resource from package resources + try: + # Build the package-relative path: resources/node_docs/{lang}/{name}.md + pkg_path = pkg_resources.files("invokeai").joinpath("resources", "node_docs", lang, f"{name}.md") + if not pkg_path.exists(): + raise FileNotFoundError + text = pkg_path.read_text(encoding="utf-8") + return PlainTextResponse(content=text, media_type="text/plain") + except FileNotFoundError: + raise HTTPException(status_code=404, detail="Not found") + + +@router.get("/nodeDocs/{lang}/images/{image_name}") +def get_node_doc_image(lang: str, image_name: str) -> FileResponse: + if not VALID_SEGMENT.match(lang) or not VALID_SEGMENT.match(image_name): + raise HTTPException(status_code=400, detail="Invalid path segment") + + try: + pkg_path = pkg_resources.files("invokeai").joinpath("resources", "node_docs", lang, "images", image_name) + if not pkg_path.exists(): + raise FileNotFoundError + mime_type, _ = mimetypes.guess_type(str(pkg_path)) + return FileResponse(path=str(pkg_path), media_type=mime_type or "application/octet-stream") + except FileNotFoundError: + raise HTTPException(status_code=404, detail="Not found") + + +# Expose the router +node_docs_router = router diff --git a/invokeai/app/api_app.py b/invokeai/app/api_app.py index 335327f532b..6938add450c 100644 --- a/invokeai/app/api_app.py +++ b/invokeai/app/api_app.py @@ -28,6 +28,8 @@ style_presets, utilities, workflows, + # node_docs router serves packaged node documentation + node_docs, ) from invokeai.app.api.sockets import SocketIO from invokeai.app.services.config.config_default import get_config @@ -133,6 +135,8 @@ async def dispatch(self, request: Request, call_next: RequestResponseEndpoint): app.include_router(workflows.workflows_router, prefix="/api") app.include_router(style_presets.style_presets_router, prefix="/api") app.include_router(client_state.client_state_router, prefix="/api") +# Include node docs router (serves packaged node docs) +app.include_router(node_docs.node_docs_router, prefix="") app.openapi = get_openapi_func(app) diff --git a/invokeai/resources/node_docs/_INFO_.md b/invokeai/resources/node_docs/_INFO_.md new file mode 100644 index 00000000000..349c2b0950e --- /dev/null +++ b/invokeai/resources/node_docs/_INFO_.md @@ -0,0 +1,54 @@ +This folder contains developer-authored node documentation to be displayed in the Workflow Editor. + +## Naming: +- One Markdown file per invocation, named exactly after its invocation_type with a .md suffix (e.g., "img_crop.md" for the "img_crop" invocation). +- Files live in this folder (and in language subfolders such as en/). + +## Authoring: +- Description: Explain the intended use case(s) for the node, and any important details about its behavior. The intention here is to explain to the user **why** and **how** they would use this node. The description should not be a repeat of the node's technical specification, but rather a user-focused explanation of its purpose and functionality, written in clear, non-technical language. + +- Inputs: List and describe each input port, including expected data types and any important details about how the input affects the node's behavior. + +- Outputs: (if applicable) List and describe each output port, including data types and any important details about the output data. + +- Examples: Provide one or more example usages of the node, including images where applicable. Each example should include a brief description of the scenario being demonstrated. + +## Images: +- Place image files in the images/ subfolder next to the markdown file. Reference them using relative paths in the markdown. +- Ensure image names are unique and descriptive. Images can be reused across multiple docs if applicable, e.g., SD1.5 denoise and prompt nodes can all be shown in a single image since their usage is tied together. +- Images can be screenshots of the node in use, example outputs, or diagrams illustrating concepts. +- When displaying node use examples, keep the example focused on the node and its immediate upstream/downstream connections, and, for best readability, keep the image width approximately two nodes wide. + +[Use IMAGE_PLACEHOLDER for any images at this time. We will replace these with actual images later.] + +## Submitting: +- Before you submit a PR, make sure you run `lint:prettier` and `pnpm build` to ensure proper formatting and to pass tests. +- Check that your markdown renders correctly in a markdown viewer in the UI. + +Doc Template: +--- + +# [NODE NAME] +[Node description goes here.] + +## Inputs +- [Input 1 Name]: [Description of input 1] +- [Input 2 Name]: [Description of input 2] +- ... + +## Outputs +- [Output 1 Name]: [Description of output 1] +- [Output 2 Name]: [Description of output 2] +- ... + +## Example Usage +### [Example Scenario 1] +![Descriptive Alt Text for Example 1](./images/[image_file_name_1].png) +[Brief description of Example Scenario 1.] + +### [Example Scenario 2] +![Descriptive Alt Text for Example 2](./images/[image_file_name_2].png) +[Brief description of Example Scenario 2.] + +## Notes: +- [Any additional notes or important details about the node's behavior.] diff --git a/invokeai/resources/node_docs/en/float_math.md b/invokeai/resources/node_docs/en/float_math.md new file mode 100644 index 00000000000..72abafcf7ba --- /dev/null +++ b/invokeai/resources/node_docs/en/float_math.md @@ -0,0 +1,3 @@ +# Float Math + +Float math node docs placeholder. diff --git a/invokeai/resources/node_docs/en/float_to_int.md b/invokeai/resources/node_docs/en/float_to_int.md new file mode 100644 index 00000000000..cc485d34636 --- /dev/null +++ b/invokeai/resources/node_docs/en/float_to_int.md @@ -0,0 +1,14 @@ +# Float to Integer +The Float to Integer node rounds floating-point numbers to integers. At "Multiple of" 1, it performs standard rounding to the nearest integer. By adjusting the "Multiple of" parameter, users can round to the nearest specified multiple. Multiples of 64 are helpfulfor image dimensions that are more compatible with denoising models, 2 will return the nearest even number, etc. The "Method" parameter allows you to choose the rounding direction. + +## Inputs +- Value: The floating-point number to be converted to an integer. +- Multiple of: The multiple to which the value should be rounded. Leave at 1 for rounding to the nearest integer. +- Method: The direction to apply rounding: + - Nearest: Rounds to the nearest multiple. + - Floor: Rounds down to the nearest multiple. + - Ceil: Rounds up to the nearest multiple. + - Truncate: Rounds towards zero to the nearest multiple. + +## Notes: +- This node uses numpy floor/ceiling operations, so direction is consistent for both positive and negative values. For example; flooring 3.7 results in 3, but flooring -3.7 results in -4, and not -3. To round towards the next lesser magnitude (i.e., -3), use the Truncate method. diff --git a/invokeai/resources/node_docs/en/images/z_image_example_t2i.png b/invokeai/resources/node_docs/en/images/z_image_example_t2i.png new file mode 100644 index 00000000000..e69de29bb2d diff --git a/invokeai/resources/node_docs/en/integer_math.md b/invokeai/resources/node_docs/en/integer_math.md new file mode 100644 index 00000000000..158c487c4af --- /dev/null +++ b/invokeai/resources/node_docs/en/integer_math.md @@ -0,0 +1,3 @@ +# Integer Math + +Integer math node docs placeholder. diff --git a/invokeai/resources/node_docs/en/rand_float.md b/invokeai/resources/node_docs/en/rand_float.md new file mode 100644 index 00000000000..6b8fd63999f --- /dev/null +++ b/invokeai/resources/node_docs/en/rand_float.md @@ -0,0 +1,3 @@ +# Rand Float + +Rand float node docs placeholder. diff --git a/invokeai/resources/node_docs/en/rand_int.md b/invokeai/resources/node_docs/en/rand_int.md new file mode 100644 index 00000000000..fd8c066bd84 --- /dev/null +++ b/invokeai/resources/node_docs/en/rand_int.md @@ -0,0 +1,3 @@ +# Rand Int + +Rand int node docs placeholder. diff --git a/invokeai/resources/node_docs/en/round_float.md b/invokeai/resources/node_docs/en/round_float.md new file mode 100644 index 00000000000..ca246dbdbfd --- /dev/null +++ b/invokeai/resources/node_docs/en/round_float.md @@ -0,0 +1,3 @@ +# Round Float + +Round float node docs placeholder. diff --git a/invokeai/resources/node_docs/en/z_image_denoise.md b/invokeai/resources/node_docs/en/z_image_denoise.md new file mode 100644 index 00000000000..db6d16a3648 --- /dev/null +++ b/invokeai/resources/node_docs/en/z_image_denoise.md @@ -0,0 +1,38 @@ +# Z Image Denoise Node + +The Z Image Denoise node performs diffusion-based denoising on an image using the Z-Image model architecture. It can be used in either Text-to-Image or Image-to-Image workflows. + +## Inputs + +### Required Inputs + +- **Model**: The Z-Image main model to use for denoising +- **Positive Prompt**: Text description of what you want to see in the output +- **Negative Prompt**: Text description of what you want to avoid in the output +- **Image**: The source image to be processed + +### Optional Inputs + +- **Denoising Strength**: Controls how much of the original image is preserved (0.0 = no change, 1.0 = full regeneration) +- **Steps**: Number of denoising steps (more steps = higher quality but slower) +- **CFG Scale**: How strongly the model should follow your prompt +- **Scheduler**: The noise scheduling algorithm to use +- **Seed**: Random seed for reproducible results + +## Outputs + +- **Image**: The denoised/transformed output image + +## Tips + +1. **Lower denoising strength** (0.2-0.5) preserves more of the original image structure +2. **Higher denoising strength** (0.7-1.0) allows for more creative reinterpretation +3. Use **negative prompts** to steer the model away from unwanted artifacts or styles +4. If results are too noisy, try increasing the number of steps + +## Example Use Cases + +- Image-to-image style transfer +- Photo restoration and enhancement +- Creative image modifications +- Consistent character regeneration with slight variations From 57ee686be85e76e8668592debda60e62bb072e1e Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Thu, 15 Jan 2026 19:13:53 -0500 Subject: [PATCH 11/21] feat(node-docs): serve packaged node docs; switch frontend to marked and remove react-markdown --- invokeai/frontend/web/package.json | 2 +- .../Invocation/InvocationNodeHelpModal.tsx | 43 +++---------------- 2 files changed, 7 insertions(+), 38 deletions(-) diff --git a/invokeai/frontend/web/package.json b/invokeai/frontend/web/package.json index c1b2256662c..52b71c8c9a2 100644 --- a/invokeai/frontend/web/package.json +++ b/invokeai/frontend/web/package.json @@ -87,7 +87,7 @@ "react-hotkeys-hook": "4.5.0", "react-i18next": "^15.5.3", "react-icons": "^5.5.0", - "react-markdown": "9.0.1", + "marked": "^6.1.0", "react-redux": "9.2.0", "react-resizable-panels": "^3.0.3", "react-textarea-autosize": "^8.5.9", diff --git a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx index 8b8220ab7ec..09fb52a6790 100644 --- a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx +++ b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx @@ -14,7 +14,7 @@ import { useNodeTemplateOrThrow } from 'features/nodes/hooks/useNodeTemplateOrTh import type { ReactElement, ReactNode } from 'react'; import { memo, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import Markdown from 'react-markdown'; +import { marked } from 'marked'; const log = logger('system'); @@ -51,45 +51,11 @@ const resolveImagePath = (src: string | undefined, basePath: string): string => /** * Creates markdown components with proper image path resolution. */ +// We will not use react-markdown components anymore; keep resolveImagePath for potential future work const createMarkdownComponents = (basePath: string) => ({ - // Render images inline with the markdown, resolving relative paths img: ({ src, alt }: { src?: string; alt?: string }) => ( {alt ), - // Style paragraphs - p: ({ children }: { children?: ReactNode }) => ( - - {children} - - ), - // Style headings - h1: ({ children }: { children?: ReactNode }) => ( - - {children} - - ), - h2: ({ children }: { children?: ReactNode }) => ( - - {children} - - ), - h3: ({ children }: { children?: ReactNode }) => ( - - {children} - - ), - // Style code blocks - code: ({ children }: { children?: ReactNode }) => ( - - {children} - - ), - // Style list items - li: ({ children }: { children?: ReactNode }) => ( - - {children} - - ), }); export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactElement => { @@ -163,7 +129,10 @@ export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactE {isLoading && } {error && {error}} {docsContent && ( - {docsContent.markdown} +

]+>/g, '')) }} + /> )} From 75db28b2c579f37b925923578cc1a74c53335198 Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Thu, 15 Jan 2026 19:17:17 -0500 Subject: [PATCH 12/21] moved nodeDocs location --- .../frontend/web/public/nodeDocs/_INFO_.md | 64 ------------------ .../web/public/nodeDocs/en/float_math.md | 34 ---------- .../web/public/nodeDocs/en/float_to_int.md | 17 ----- .../en/images/z_image_example_t2i.png | Bin 133280 -> 0 bytes .../web/public/nodeDocs/en/integer_math.md | 34 ---------- .../web/public/nodeDocs/en/rand_float.md | 24 ------- .../web/public/nodeDocs/en/rand_int.md | 23 ------- .../web/public/nodeDocs/en/round_float.md | 23 ------- .../web/public/nodeDocs/en/z_image_denoise.md | 17 ----- invokeai/resources/node_docs/_INFO_.md | 20 ++++-- invokeai/resources/node_docs/en/float_math.md | 33 ++++++++- .../resources/node_docs/en/float_to_int.md | 11 +-- .../en/images/z_image_example_t2i.png | Bin 0 -> 133280 bytes .../resources/node_docs/en/integer_math.md | 33 ++++++++- invokeai/resources/node_docs/en/rand_float.md | 25 ++++++- invokeai/resources/node_docs/en/rand_int.md | 24 ++++++- .../resources/node_docs/en/round_float.md | 22 +++++- .../resources/node_docs/en/z_image_denoise.md | 37 +++------- 18 files changed, 160 insertions(+), 281 deletions(-) delete mode 100644 invokeai/frontend/web/public/nodeDocs/_INFO_.md delete mode 100644 invokeai/frontend/web/public/nodeDocs/en/float_math.md delete mode 100644 invokeai/frontend/web/public/nodeDocs/en/float_to_int.md delete mode 100644 invokeai/frontend/web/public/nodeDocs/en/images/z_image_example_t2i.png delete mode 100644 invokeai/frontend/web/public/nodeDocs/en/integer_math.md delete mode 100644 invokeai/frontend/web/public/nodeDocs/en/rand_float.md delete mode 100644 invokeai/frontend/web/public/nodeDocs/en/rand_int.md delete mode 100644 invokeai/frontend/web/public/nodeDocs/en/round_float.md delete mode 100644 invokeai/frontend/web/public/nodeDocs/en/z_image_denoise.md diff --git a/invokeai/frontend/web/public/nodeDocs/_INFO_.md b/invokeai/frontend/web/public/nodeDocs/_INFO_.md deleted file mode 100644 index 560b88b240d..00000000000 --- a/invokeai/frontend/web/public/nodeDocs/_INFO_.md +++ /dev/null @@ -1,64 +0,0 @@ -This folder contains developer-authored node documentation to be displayed in the Workflow Editor. - -## Naming: - -- One Markdown file per invocation, named exactly after its invocation_type with a .md suffix (e.g., "img_crop.md" for the "img_crop" invocation). -- Files live in this folder (and in language subfolders such as en/). - -## Authoring: - -- Description: Explain the intended use case(s) for the node, and any important details about its behavior. The intention here is to explain to the user **why** and **how** they would use this node. The description should not be a repeat of the node's technical specification, but rather a user-focused explanation of its purpose and functionality, written in clear, non-technical language. - -- Inputs: List and describe each input port, including expected data types and any important details about how the input affects the node's behavior. Use code formatting for input names (e.g., `Input Name`) when listing and referring to them. - -- Outputs: (if applicable) List and describe each output port, including data types and any important details about the output data. If the node has a single output that is already explained in the description, this section can be omitted. - -- Examples: Provide one or more example usages of the node, including images where applicable. Each example should include a brief description of the scenario being demonstrated. - -## Images: - -- Place image files in the images/ subfolder next to the markdown file. Reference them using relative paths in the markdown. -- Ensure image names are unique and descriptive. Images can be reused across multiple docs if applicable, e.g., SD1.5 denoise and prompt nodes can all be shown in a single image since their usage is tied together. -- Images can be screenshots of the node in use, example outputs, or diagrams illustrating concepts. -- When displaying node usage examples, keep the example focused on the node and its immediate upstream/downstream connections. For best readability, keep the image width approximately two nodes wide. - -[Use IMAGE_PLACEHOLDER for any images at this time. We will replace these with actual images later.] - -## Submitting: - -- Before you submit a PR, make sure you run `lint:prettier` and `pnpm build` to ensure proper formatting and to pass tests. -- Check that your markdown renders correctly in a markdown viewer in the UI. - -## Doc Template: - -# [NODE NAME] - -[Node description goes here.] - -## Inputs - -- [Input 1 Name]: [Description of input 1] -- [Input 2 Name]: [Description of input 2] -- ... - -## Outputs - -- [Output 1 Name]: [Description of output 1] -- [Output 2 Name]: [Description of output 2] -- ... - -## Example Usage - -### [Example Scenario 1] - -![Descriptive Alt Text for Example 1](./images/[image_file_name_1].png) -[Brief description of Example Scenario 1.] - -### [Example Scenario 2] - -![Descriptive Alt Text for Example 2](./images/[image_file_name_2].png) -[Brief description of Example Scenario 2.] - -## Notes: - -- [Any additional notes or important details about the node's behavior.] diff --git a/invokeai/frontend/web/public/nodeDocs/en/float_math.md b/invokeai/frontend/web/public/nodeDocs/en/float_math.md deleted file mode 100644 index 6a25494d5b9..00000000000 --- a/invokeai/frontend/web/public/nodeDocs/en/float_math.md +++ /dev/null @@ -1,34 +0,0 @@ -# Float Math - -The Float Math node performs common floating-point operations on two inputs. Use it when you need precise decimal arithmetic, roots, exponentiation, or min/max comparisons with float inputs. - -## Inputs - -- `Operation`: The operation to perform. Choices: - - Add A+B: Adds `A` and `B`. - - Subtract A-B: Subtracts `B` from `A`. - - Multiply A\*B: Multiplies `A` by `B`. - - Divide A/B: Floating-point division. - - Exponentiate A^B: Raises `A` to the power `B` (watch out for zero-to-negative exponents). - - Absolute Value of A: Absolute value of `A` (ignores `B`). - - Square Root of A: Square root of `A` (ignores `B`; result invalid for negative `A`). - - Minimum(A,B): The smaller of `A` and `B`. - - Maximum(A,B): The larger of `A` and `B`. -- `A`: First float input. -- `B`: Second float input. - -## Outputs - -- Result: Float — the result of the selected operation. - -## Example Usage - -![Example](./images/IMAGE_PLACEHOLDER.png) -Use Float Math to compute a square root or fractional power for precise scaling. - -## Notes: - -- Division by zero is invalid and will produce a validation error; ensure `B` is not zero for DIV. -- Exponentiation will error if raising zero to a negative exponent. Root operations that produce complex numbers are rejected. -- Square Root operates on `A` only; negative `A` will be rejected because it would produce a complex result. -- For integer-only operations, use the Integer Math node. diff --git a/invokeai/frontend/web/public/nodeDocs/en/float_to_int.md b/invokeai/frontend/web/public/nodeDocs/en/float_to_int.md deleted file mode 100644 index 0f70376aa4b..00000000000 --- a/invokeai/frontend/web/public/nodeDocs/en/float_to_int.md +++ /dev/null @@ -1,17 +0,0 @@ -# Float to Integer - -The Float to Integer node rounds floating-point numbers to integers. At "Multiple of" 1, it performs standard rounding to the nearest integer. By adjusting the "Multiple of" parameter, users can round to the nearest specified multiple. Multiples of 64 are helpfulfor image dimensions that are more compatible with denoising models, 2 will return the nearest even number, etc. The "Method" parameter allows you to choose the rounding direction. - -## Inputs - -- Value: The floating-point number to be converted to an integer. -- Multiple of: The multiple to which the value should be rounded. Leave at 1 for rounding to the nearest integer. -- Method: The direction to apply rounding: - - Nearest: Rounds to the nearest multiple. - - Floor: Rounds down to the nearest multiple. - - Ceil: Rounds up to the nearest multiple. - - Truncate: Rounds towards zero to the nearest multiple. - -## Notes: - -- This node uses numpy floor/ceiling operations, so direction is consistent for both positive and negative values. For example; flooring 3.7 results in 3, but flooring -3.7 results in -4, and not -3. To round towards the next lesser magnitude (i.e., -3), use the Truncate method. diff --git a/invokeai/frontend/web/public/nodeDocs/en/images/z_image_example_t2i.png b/invokeai/frontend/web/public/nodeDocs/en/images/z_image_example_t2i.png deleted file mode 100644 index 795aea49f23c32a80a2962352d4ad0062294218c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 133280 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

J4fH@0SP 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

J4fH@0SP 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

sZji>VB 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 0). + - Modulus A%B: Remainder of `A` divided by `B`. + - Absolute Value of A: Absolute value of `A` (ignores `B`). + - Minimum(A,B): The smaller of `A` and `B`. + - Maximum(A,B): The larger of `A` and `B`. +- `A`: First integer (primary operand). +- `B`: Second integer (secondary operand; some operations may ignore it). + +## Outputs + +- Result: Integer — the result of the selected operation. + +## Example Usage + +![Example](./images/IMAGE_PLACEHOLDER.png) +Use the Integer Math node to compute integer exponents or combine two counters with a chosen operation. + +## Notes: + +- Division and modulus by zero are invalid and will produce a validation error; ensure `B` is not zero for DIV or MOD. +- Exponentiation (EXP) requires a non-negative exponent (`B` >= 0); negative exponents are rejected because they don't produce integers. +- Division uses integer division (equivalent to int(`A` / `B`)), so fractional portions are discarded rather than rounded. +- Absolute Value ignores the `B` input. diff --git a/invokeai/resources/node_docs/en/rand_float.md b/invokeai/resources/node_docs/en/rand_float.md index 6b8fd63999f..5466bc7b87d 100644 --- a/invokeai/resources/node_docs/en/rand_float.md +++ b/invokeai/resources/node_docs/en/rand_float.md @@ -1,3 +1,24 @@ -# Rand Float +# Random Float -Rand float node docs placeholder. +The Random Float node outputs a single non-deterministic floating-point number sampled uniformly from a range. Use it to introduce small continuous variation or random seeds for float parameters. + +## Inputs + +- `Low`: Inclusive lower bound (float). +- `High`: Exclusive upper bound (float) — generated value will be >= `Low` and < `High`. +- `Decimals`: Number of decimal places to round the result to (integer). + +## Outputs + +- Result: Float — a randomly chosen float rounded to the specified number of decimals. + +## Example Usage + +![Example](./images/IMAGE_PLACEHOLDER.png) +Generate a randomized float parameter (e.g., color hue offset) with controlled precision. + +## Notes: + +- This node is non-deterministic (use_cache=False) and will produce a new value each run. +- The node rounds the sampled float to the requested number of decimals before output. +- Ensure low < high to avoid errors. diff --git a/invokeai/resources/node_docs/en/rand_int.md b/invokeai/resources/node_docs/en/rand_int.md index fd8c066bd84..e94ffa84fb7 100644 --- a/invokeai/resources/node_docs/en/rand_int.md +++ b/invokeai/resources/node_docs/en/rand_int.md @@ -1,3 +1,23 @@ -# Rand Int +# Random Integer -Rand int node docs placeholder. +The Random Integer node outputs a single non-deterministic integer drawn from a range. Use it when you need jittered counts, random indices, or other unpredictable integer values. + +## Inputs + +- `Low`: Inclusive lower bound (integer). +- `High`: Exclusive upper bound (integer) — the generated value will be >= `Low` and < `High`. + +## Outputs + +- Result: Integer — a randomly chosen integer in [`Low`, `High`). + +## Example Usage + +![Example](./images/IMAGE_PLACEHOLDER.png) +Generate a random index or offset to vary results across runs. + +## Notes: + +- This node is non-deterministic (use_cache=False) and will produce a new value each run. +- high is exclusive; set high = low + 1 to get either low only. +- Ensure low < high to avoid errors. diff --git a/invokeai/resources/node_docs/en/round_float.md b/invokeai/resources/node_docs/en/round_float.md index ca246dbdbfd..b135b91c2b5 100644 --- a/invokeai/resources/node_docs/en/round_float.md +++ b/invokeai/resources/node_docs/en/round_float.md @@ -1,3 +1,23 @@ # Round Float -Round float node docs placeholder. +The Round Float node reduces a floating-point number to a specified number of decimal places. Use it when you want to control numeric precision for display, comparison, or downstream calculations. + +## Inputs + +- `Value`: The float value to round. +- `Decimals`: Number of decimal places to retain (integer). Use 0 for whole-number results. + +## Outputs + +- Result: Float — the rounded value. + +## Example Usage + +![Example](./images/IMAGE_PLACEHOLDER.png) +Round a noisy parameter to two decimal places for stable downstream behavior. + +## Notes: + +- Rounding uses Python's round behavior (ties round to the nearest even value). +- Negative values are rounded according to the same rule (e.g., rounding -1.5 to 0 decimals yields -2.0 under nearest-even tie resolution). +- If you need integer results, use the Float to Integer node which supports rounding to multiples and different rounding methods. diff --git a/invokeai/resources/node_docs/en/z_image_denoise.md b/invokeai/resources/node_docs/en/z_image_denoise.md index db6d16a3648..02d17c4f942 100644 --- a/invokeai/resources/node_docs/en/z_image_denoise.md +++ b/invokeai/resources/node_docs/en/z_image_denoise.md @@ -1,38 +1,17 @@ -# Z Image Denoise Node +# Z Image Denoise -The Z Image Denoise node performs diffusion-based denoising on an image using the Z-Image model architecture. It can be used in either Text-to-Image or Image-to-Image workflows. +The Z Image Denoise node performs diffusion-based denoising on a latent image using the Z-Image model architecture. It can be used in either Text-to-Image or Image-to-Image workflows. ## Inputs -### Required Inputs +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. -- **Model**: The Z-Image main model to use for denoising -- **Positive Prompt**: Text description of what you want to see in the output -- **Negative Prompt**: Text description of what you want to avoid in the output -- **Image**: The source image to be processed +## Example Usage -### Optional Inputs +### Text-to-Image -- **Denoising Strength**: Controls how much of the original image is preserved (0.0 = no change, 1.0 = full regeneration) -- **Steps**: Number of denoising steps (more steps = higher quality but slower) -- **CFG Scale**: How strongly the model should follow your prompt -- **Scheduler**: The noise scheduling algorithm to use -- **Seed**: Random seed for reproducible results +![Z Image Denoise Text-to-Image Example](./images/z_image_example_t2i.png) -## Outputs +## Notes: -- **Image**: The denoised/transformed output image - -## Tips - -1. **Lower denoising strength** (0.2-0.5) preserves more of the original image structure -2. **Higher denoising strength** (0.7-1.0) allows for more creative reinterpretation -3. Use **negative prompts** to steer the model away from unwanted artifacts or styles -4. If results are too noisy, try increasing the number of steps - -## Example Use Cases - -- Image-to-image style transfer -- Photo restoration and enhancement -- Creative image modifications -- Consistent character regeneration with slight variations +- For Z-Image Turbo models, the indended Guidance Scale (CFG) is 1.0, which disables the negative prompt influence and doubles the generation speed. From 71f231890d69d3891cc17d81b7161a7c6fcb9190 Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Thu, 15 Jan 2026 20:04:23 -0500 Subject: [PATCH 13/21] fix doc service for user installs --- invokeai/app/api/routers/node_docs.py | 67 +- invokeai/frontend/web/package.json | 2 +- invokeai/frontend/web/pnpm-lock.yaml | 668 +----------------- .../Invocation/InvocationNodeHelpModal.tsx | 7 +- invokeai/resources/__init__.py | 1 + pyproject.toml | 2 + 6 files changed, 79 insertions(+), 668 deletions(-) create mode 100644 invokeai/resources/__init__.py diff --git a/invokeai/app/api/routers/node_docs.py b/invokeai/app/api/routers/node_docs.py index bff473b37e1..386ea475076 100644 --- a/invokeai/app/api/routers/node_docs.py +++ b/invokeai/app/api/routers/node_docs.py @@ -6,13 +6,17 @@ from typing import Optional from fastapi import APIRouter, HTTPException -from fastapi.responses import FileResponse, PlainTextResponse +from fastapi.responses import PlainTextResponse, Response import importlib.resources as pkg_resources +from invokeai.backend.util.logging import InvokeAILogger + +logger = InvokeAILogger.get_logger(__name__) router = APIRouter() VALID_SEGMENT = re.compile(r"^[A-Za-z0-9_-]+$") +IMAGE_SEGMENT = re.compile(r"^[A-Za-z0-9_.-]+$") RESOURCE_ROOT = Path("invokeai") / "resources" / "node_docs" @@ -26,27 +30,74 @@ def get_node_doc(lang: str, name: str) -> PlainTextResponse: # Attempt to load the resource from package resources try: # Build the package-relative path: resources/node_docs/{lang}/{name}.md - pkg_path = pkg_resources.files("invokeai").joinpath("resources", "node_docs", lang, f"{name}.md") + # Use the resources package so importlib can find package data reliably + from importlib import import_module + + pkg_path = None + try: + # Preferred: read from the installed package resources + res_pkg = import_module("invokeai.resources") + pkg_path = pkg_resources.files(res_pkg).joinpath("node_docs", lang, f"{name}.md") + logger.debug(f"node_docs: attempting to read resource from package: {pkg_path}") + except Exception as e: + # Fall back to reading from the repository tree (useful when running from scripts) + logger.warning(f"node_docs: failed to import invokeai.resources: {e}; falling back to repo filesystem") + repo_root = Path(__file__).resolve().parents[4] + pkg_path = repo_root.joinpath("invokeai", "resources", "node_docs", lang, f"{name}.md") + logger.debug(f"node_docs: attempting to read resource from repo path: {pkg_path}") + if not pkg_path.exists(): + logger.warning(f"node_docs: resource not found at {pkg_path}") + raise FileNotFoundError + try: + text = pkg_path.read_text(encoding="utf-8") + except Exception as e: + logger.warning(f"node_docs: failed reading resource {pkg_path}: {e}") raise FileNotFoundError - text = pkg_path.read_text(encoding="utf-8") return PlainTextResponse(content=text, media_type="text/plain") except FileNotFoundError: raise HTTPException(status_code=404, detail="Not found") @router.get("/nodeDocs/{lang}/images/{image_name}") -def get_node_doc_image(lang: str, image_name: str) -> FileResponse: - if not VALID_SEGMENT.match(lang) or not VALID_SEGMENT.match(image_name): +def get_node_doc_image(lang: str, image_name: str) -> Response: + # Use a different validation for images to allow dots and file extensions + if not IMAGE_SEGMENT.match(image_name): + raise HTTPException(status_code=400, detail="Invalid path segment") + # previous validation for lang remains below + + if not VALID_SEGMENT.match(lang): raise HTTPException(status_code=400, detail="Invalid path segment") try: - pkg_path = pkg_resources.files("invokeai").joinpath("resources", "node_docs", lang, "images", image_name) + from importlib import import_module + + pkg_path = None + try: + # Preferred: read from installed package resources + res_pkg = import_module("invokeai.resources") + pkg_path = pkg_resources.files(res_pkg).joinpath("node_docs", lang, "images", image_name) + logger.debug(f"node_docs: attempting to read image resource from package: {pkg_path}") + except Exception as e: + logger.warning( + f"node_docs: failed to import invokeai.resources for image: {e}; falling back to repo filesystem" + ) + repo_root = Path(__file__).resolve().parents[4] + pkg_path = repo_root.joinpath("invokeai", "resources", "node_docs", lang, "images", image_name) + logger.debug(f"node_docs: attempting to read image resource from repo path: {pkg_path}") + if not pkg_path.exists(): + logger.warning(f"node_docs: image resource not found at {pkg_path}") + raise FileNotFoundError + try: + data = pkg_path.read_bytes() + except Exception as e: + logger.warning(f"node_docs: failed reading image resource {pkg_path}: {e}") raise FileNotFoundError - mime_type, _ = mimetypes.guess_type(str(pkg_path)) - return FileResponse(path=str(pkg_path), media_type=mime_type or "application/octet-stream") + mime_type, _ = mimetypes.guess_type(image_name) + return Response(content=data, media_type=mime_type or "application/octet-stream") except FileNotFoundError: + logger.debug(f"node_docs: returning 404 for image {lang}/{image_name}") raise HTTPException(status_code=404, detail="Not found") diff --git a/invokeai/frontend/web/package.json b/invokeai/frontend/web/package.json index 52b71c8c9a2..223345d9bcc 100644 --- a/invokeai/frontend/web/package.json +++ b/invokeai/frontend/web/package.json @@ -87,7 +87,7 @@ "react-hotkeys-hook": "4.5.0", "react-i18next": "^15.5.3", "react-icons": "^5.5.0", - "marked": "^6.1.0", + "marked": "^17.0.1", "react-redux": "9.2.0", "react-resizable-panels": "^3.0.3", "react-textarea-autosize": "^8.5.9", diff --git a/invokeai/frontend/web/pnpm-lock.yaml b/invokeai/frontend/web/pnpm-lock.yaml index 234689a3011..d96c5a68229 100644 --- a/invokeai/frontend/web/pnpm-lock.yaml +++ b/invokeai/frontend/web/pnpm-lock.yaml @@ -98,6 +98,9 @@ importers: lru-cache: specifier: ^11.1.0 version: 11.1.0 + marked: + specifier: ^17.0.1 + version: 17.0.1 mtwist: specifier: ^1.0.2 version: 1.0.2 @@ -152,9 +155,6 @@ importers: react-icons: specifier: ^5.5.0 version: 5.5.0(react@18.3.1) - react-markdown: - specifier: 9.0.1 - version: 9.0.1(@types/react@18.3.23)(react@18.3.1) react-redux: specifier: 9.2.0 version: 9.2.0(@types/react@18.3.23)(react@18.3.1)(redux@5.0.1) @@ -1546,15 +1546,9 @@ packages: '@types/eslint@8.56.12': resolution: {integrity: sha512-03ruubjWyOHlmljCVoxSuNDdmfZDzsrrz0P2LeJsOXr+ZwFQ+0yQIwNCwt/GYhV7Z31fgtXJTAEs+FYlEL851g==} - '@types/estree-jsx@1.0.5': - resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} - '@types/estree@1.0.8': resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} - '@types/hast@3.0.4': - resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} - '@types/js-cookie@2.2.7': resolution: {integrity: sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==} @@ -1573,9 +1567,6 @@ packages: '@types/lodash@4.17.20': resolution: {integrity: sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA==} - '@types/mdast@4.0.4': - resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} - '@types/mdx@2.0.13': resolution: {integrity: sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==} @@ -1607,12 +1598,6 @@ packages: '@types/resolve@1.20.6': resolution: {integrity: sha512-A4STmOXPhMUtHH+S6ymgE2GiBSMqf4oTvcQZMcHzokuTLVYzXTB8ttjcgxOVaAp2lGwEdzZ0J+cRbbeevQj1UQ==} - '@types/unist@2.0.11': - resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} - - '@types/unist@3.0.3': - resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} - '@types/use-sync-external-store@0.0.6': resolution: {integrity: sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg==} @@ -1678,9 +1663,6 @@ packages: resolution: {integrity: sha512-YzfhzcTnZVPiLfP/oeKtDp2evwvHLMe0LOy7oe+hb9KKIumLNohYS9Hgp1ifwpu42YWxhZE8yieggz6JpqO/1w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@ungap/structured-clone@1.3.0': - resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} - '@vitejs/plugin-react-swc@3.10.2': resolution: {integrity: sha512-xD3Rdvrt5LgANug7WekBn1KhcvLn1H3jNBfJRL3reeOIua/WnZOEV5qi5qIBq5T8R0jUDmRtxuvk4bPhzGHDWw==} peerDependencies: @@ -1870,9 +1852,6 @@ packages: resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} engines: {node: '>=10', npm: '>=6'} - bail@2.0.2: - resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} - balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} @@ -1934,9 +1913,6 @@ packages: caniuse-lite@1.0.30001727: resolution: {integrity: sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==} - ccount@2.0.1: - resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} - chai@5.2.0: resolution: {integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==} engines: {node: '>=12'} @@ -1964,18 +1940,6 @@ packages: change-case@5.4.4: resolution: {integrity: sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==} - character-entities-html4@2.1.0: - resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} - - character-entities-legacy@3.0.0: - resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} - - character-entities@2.0.2: - resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} - - character-reference-invalid@2.0.1: - resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} - check-error@2.1.1: resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} engines: {node: '>= 16'} @@ -2018,9 +1982,6 @@ packages: colorette@1.4.0: resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} - comma-separated-tokens@2.0.3: - resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} - commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} @@ -2147,9 +2108,6 @@ packages: supports-color: optional: true - decode-named-character-reference@1.2.0: - resolution: {integrity: sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==} - decode-uri-component@0.4.1: resolution: {integrity: sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==} engines: {node: '>=14.16'} @@ -2183,9 +2141,6 @@ packages: detect-node-es@1.1.0: resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} - devlop@1.1.0: - resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} - discontinuous-range@1.0.0: resolution: {integrity: sha512-c68LpLbO+7kP/b1Hr1qs8/BJ09F5khZGTxqxZuhzxpmwJKOgRFHJWIb9/KmqnqHhLdO55aOxFH/EGBvUQbL/RQ==} @@ -2431,9 +2386,6 @@ packages: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} - estree-util-is-identifier-name@3.0.0: - resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} - estree-walker@2.0.2: resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} @@ -2448,9 +2400,6 @@ packages: resolution: {integrity: sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==} engines: {node: '>=12.0.0'} - extend@3.0.2: - resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} - fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -2684,12 +2633,6 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} - hast-util-to-jsx-runtime@2.3.6: - resolution: {integrity: sha512-zl6s8LwNyo1P9uw+XJGvZtdFF1GdAkOg8ujOw+4Pyb76874fLps4ueHXDhXWdk6YHQ6OgUtinliG7RsYvCbbBg==} - - hast-util-whitespace@3.0.0: - resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} - hoist-non-react-statics@3.3.2: resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} @@ -2699,9 +2642,6 @@ packages: html-parse-stringify@3.0.1: resolution: {integrity: sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==} - html-url-attributes@3.0.1: - resolution: {integrity: sha512-ol6UPyBWqsrO6EJySPz2O7ZSr856WDrEzM5zMqp+FJJLGMW35cLYmmZnl0vztAZxRUoNZJFTCohfjuIJ8I4QBQ==} - https-proxy-agent@7.0.6: resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} engines: {node: '>= 14'} @@ -2756,9 +2696,6 @@ packages: inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - inline-style-parser@0.2.7: - resolution: {integrity: sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA==} - inline-style-prefixer@7.0.1: resolution: {integrity: sha512-lhYo5qNTQp3EvSSp3sRvXMbVQTLrvGV6DycRMJ5dm2BLMiJ30wpXKdDdgX+GmJZ5uQMucwRKHamXSst3Sj/Giw==} @@ -2766,12 +2703,6 @@ packages: resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} engines: {node: '>= 0.4'} - is-alphabetical@2.0.1: - resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} - - is-alphanumerical@2.0.1: - resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} - is-array-buffer@3.0.5: resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} engines: {node: '>= 0.4'} @@ -2807,9 +2738,6 @@ packages: resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} engines: {node: '>= 0.4'} - is-decimal@2.0.1: - resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} - is-docker@2.2.1: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} engines: {node: '>=8'} @@ -2835,9 +2763,6 @@ packages: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} - is-hexadecimal@2.0.1: - resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} - is-interactive@1.0.0: resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} engines: {node: '>=8'} @@ -2858,10 +2783,6 @@ packages: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} - is-plain-obj@4.1.0: - resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} - engines: {node: '>=12'} - is-regex@1.2.1: resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} engines: {node: '>= 0.4'} @@ -3056,9 +2977,6 @@ packages: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} engines: {node: '>=10'} - longest-streak@3.1.0: - resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} - loose-envify@1.4.0: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true @@ -3090,6 +3008,11 @@ packages: resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} engines: {node: '>=10'} + marked@17.0.1: + resolution: {integrity: sha512-boeBdiS0ghpWcSwoNm/jJBwdpFaMnZWRzjA6SkUMYb40SVaN1x7mmfGKp0jvexGcx+7y2La5zRZsYFZI6Qpypg==} + engines: {node: '>= 20'} + hasBin: true + math-expression-evaluator@2.0.7: resolution: {integrity: sha512-uwliJZ6BPHRq4eiqNWxZBDzKUiS5RIynFFcgchqhBOloVLVBpZpNG8jRYkedLcBvhph8TnRyWEuxPqiQcwIdog==} @@ -3097,30 +3020,6 @@ packages: resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} engines: {node: '>= 0.4'} - mdast-util-from-markdown@2.0.2: - resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} - - mdast-util-mdx-expression@2.0.1: - resolution: {integrity: sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==} - - mdast-util-mdx-jsx@3.2.0: - resolution: {integrity: sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==} - - mdast-util-mdxjs-esm@2.0.1: - resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==} - - mdast-util-phrasing@4.1.0: - resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} - - mdast-util-to-hast@13.2.1: - resolution: {integrity: sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==} - - mdast-util-to-markdown@2.1.2: - resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==} - - mdast-util-to-string@4.0.0: - resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} - mdn-data@2.0.14: resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} @@ -3131,69 +3030,6 @@ packages: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} - micromark-core-commonmark@2.0.3: - resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==} - - micromark-factory-destination@2.0.1: - resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} - - micromark-factory-label@2.0.1: - resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} - - micromark-factory-space@2.0.1: - resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==} - - micromark-factory-title@2.0.1: - resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==} - - micromark-factory-whitespace@2.0.1: - resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==} - - micromark-util-character@2.1.1: - resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} - - micromark-util-chunked@2.0.1: - resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==} - - micromark-util-classify-character@2.0.1: - resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==} - - micromark-util-combine-extensions@2.0.1: - resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==} - - micromark-util-decode-numeric-character-reference@2.0.2: - resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==} - - micromark-util-decode-string@2.0.1: - resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==} - - micromark-util-encode@2.0.1: - resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} - - micromark-util-html-tag-name@2.0.1: - resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} - - micromark-util-normalize-identifier@2.0.1: - resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==} - - micromark-util-resolve-all@2.0.1: - resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==} - - micromark-util-sanitize-uri@2.0.1: - resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} - - micromark-util-subtokenize@2.1.0: - resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==} - - micromark-util-symbol@2.0.1: - resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} - - micromark-util-types@2.0.2: - resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==} - - micromark@4.0.2: - resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==} - micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} @@ -3388,9 +3224,6 @@ packages: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} - parse-entities@4.0.2: - resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} - parse-json@5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} @@ -3475,9 +3308,6 @@ packages: prop-types@15.8.1: resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} - property-information@7.1.0: - resolution: {integrity: sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==} - punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} @@ -3605,12 +3435,6 @@ packages: react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - react-markdown@9.0.1: - resolution: {integrity: sha512-186Gw/vF1uRkydbsOIkcGXw7aHq0sZOCRFFjGrr7b9+nVZg4UfA4enXCaxm4fUzecU38sWfrNDitGhshuU7rdg==} - peerDependencies: - '@types/react': '>=18' - react: '>=18' - react-redux@9.2.0: resolution: {integrity: sha512-ROY9fvHhwOD9ySfrF0wmvu//bKCQ6AeZZq1nJNtbDC+kk5DuSuNX/n6YWYF/SYy7bSba4D4FSz8DJeKY/S/r+g==} peerDependencies: @@ -3741,12 +3565,6 @@ packages: resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} engines: {node: '>= 0.4'} - remark-parse@11.0.0: - resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} - - remark-rehype@11.1.2: - resolution: {integrity: sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==} - require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} @@ -3961,9 +3779,6 @@ packages: resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} engines: {node: '>= 8'} - space-separated-tokens@2.0.2: - resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} - split-on-first@3.0.0: resolution: {integrity: sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==} engines: {node: '>=12'} @@ -4032,9 +3847,6 @@ packages: string_decoder@1.3.0: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} - stringify-entities@4.0.4: - resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} - strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} @@ -4066,12 +3878,6 @@ packages: strip-literal@3.0.0: resolution: {integrity: sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA==} - style-to-js@1.1.21: - resolution: {integrity: sha512-RjQetxJrrUJLQPHbLku6U/ocGtzyjbJMP9lCNK7Ag0CNh690nSH8woqWH9u16nMjYBAok+i7JO1NP2pOy8IsPQ==} - - style-to-object@1.0.14: - resolution: {integrity: sha512-LIN7rULI0jBscWQYaSswptyderlarFkjQ+t79nzty8tcIAceVomEVlLzH5VP4Cmsv6MtKhs7qaAiwlcp+Mgaxw==} - stylis@4.2.0: resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==} @@ -4145,12 +3951,6 @@ packages: resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} hasBin: true - trim-lines@3.0.1: - resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} - - trough@2.2.0: - resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} - ts-api-utils@2.1.0: resolution: {integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==} engines: {node: '>=18.12'} @@ -4233,24 +4033,6 @@ packages: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} engines: {node: '>=18'} - unified@11.0.5: - resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} - - unist-util-is@6.0.1: - resolution: {integrity: sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==} - - unist-util-position@5.0.0: - resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} - - unist-util-stringify-position@4.0.0: - resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} - - unist-util-visit-parents@6.0.2: - resolution: {integrity: sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==} - - unist-util-visit@5.0.0: - resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} - universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} @@ -4341,12 +4123,6 @@ packages: resolution: {integrity: sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==} hasBin: true - vfile-message@4.0.3: - resolution: {integrity: sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==} - - vfile@6.0.3: - resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - vite-node@3.2.4: resolution: {integrity: sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} @@ -4577,9 +4353,6 @@ packages: react: optional: true - zwitch@2.0.4: - resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} - snapshots: '@adobe/css-tools@4.4.3': {} @@ -5794,6 +5567,7 @@ snapshots: '@types/debug@4.1.12': dependencies: '@types/ms': 2.1.0 + optional: true '@types/deep-eql@4.0.2': {} @@ -5804,16 +5578,8 @@ snapshots: '@types/estree': 1.0.8 '@types/json-schema': 7.0.15 - '@types/estree-jsx@1.0.5': - dependencies: - '@types/estree': 1.0.8 - '@types/estree@1.0.8': {} - '@types/hast@3.0.4': - dependencies: - '@types/unist': 3.0.3 - '@types/js-cookie@2.2.7': {} '@types/json-schema@7.0.15': {} @@ -5830,13 +5596,10 @@ snapshots: '@types/lodash@4.17.20': {} - '@types/mdast@4.0.4': - dependencies: - '@types/unist': 3.0.3 - '@types/mdx@2.0.13': {} - '@types/ms@2.1.0': {} + '@types/ms@2.1.0': + optional: true '@types/node@22.16.0': dependencies: @@ -5861,10 +5624,6 @@ snapshots: '@types/resolve@1.20.6': {} - '@types/unist@2.0.11': {} - - '@types/unist@3.0.3': {} - '@types/use-sync-external-store@0.0.6': {} '@types/uuid@10.0.0': {} @@ -5962,8 +5721,6 @@ snapshots: '@typescript-eslint/types': 8.37.0 eslint-visitor-keys: 4.2.1 - '@ungap/structured-clone@1.3.0': {} - '@vitejs/plugin-react-swc@3.10.2(vite@7.0.5(@types/node@22.16.0)(jiti@2.4.2))': dependencies: '@rolldown/pluginutils': 1.0.0-beta.11 @@ -6220,8 +5977,6 @@ snapshots: cosmiconfig: 7.1.0 resolve: 1.22.10 - bail@2.0.2: {} - balanced-match@1.0.2: {} base64-js@1.5.1: {} @@ -6288,8 +6043,6 @@ snapshots: caniuse-lite@1.0.30001727: {} - ccount@2.0.1: {} - chai@5.2.0: dependencies: assertion-error: 2.0.1 @@ -6329,14 +6082,6 @@ snapshots: change-case@5.4.4: {} - character-entities-html4@2.1.0: {} - - character-entities-legacy@3.0.0: {} - - character-entities@2.0.2: {} - - character-reference-invalid@2.0.1: {} - check-error@2.1.1: {} classcat@5.0.5: {} @@ -6377,8 +6122,6 @@ snapshots: colorette@1.4.0: {} - comma-separated-tokens@2.0.3: {} - commander@2.20.3: {} compare-versions@6.1.1: {} @@ -6508,10 +6251,6 @@ snapshots: optionalDependencies: supports-color: 10.0.0 - decode-named-character-reference@1.2.0: - dependencies: - character-entities: 2.0.2 - decode-uri-component@0.4.1: {} deep-eql@5.0.2: {} @@ -6540,10 +6279,6 @@ snapshots: detect-node-es@1.1.0: {} - devlop@1.1.0: - dependencies: - dequal: 2.0.3 - discontinuous-range@1.0.0: {} dockview-core@4.7.1: {} @@ -6943,8 +6678,6 @@ snapshots: estraverse@5.3.0: {} - estree-util-is-identifier-name@3.0.0: {} - estree-walker@2.0.2: {} estree-walker@3.0.3: @@ -6955,8 +6688,6 @@ snapshots: expect-type@1.2.1: {} - extend@3.0.2: {} - fast-deep-equal@3.1.3: {} fast-glob@3.3.3: @@ -7180,30 +6911,6 @@ snapshots: dependencies: function-bind: 1.1.2 - hast-util-to-jsx-runtime@2.3.6: - dependencies: - '@types/estree': 1.0.8 - '@types/hast': 3.0.4 - '@types/unist': 3.0.3 - comma-separated-tokens: 2.0.3 - devlop: 1.1.0 - estree-util-is-identifier-name: 3.0.0 - hast-util-whitespace: 3.0.0 - mdast-util-mdx-expression: 2.0.1 - mdast-util-mdx-jsx: 3.2.0 - mdast-util-mdxjs-esm: 2.0.1 - property-information: 7.1.0 - space-separated-tokens: 2.0.2 - style-to-js: 1.1.21 - unist-util-position: 5.0.0 - vfile-message: 4.0.3 - transitivePeerDependencies: - - supports-color - - hast-util-whitespace@3.0.0: - dependencies: - '@types/hast': 3.0.4 - hoist-non-react-statics@3.3.2: dependencies: react-is: 16.13.1 @@ -7214,8 +6921,6 @@ snapshots: dependencies: void-elements: 3.1.0 - html-url-attributes@3.0.1: {} - https-proxy-agent@7.0.6(supports-color@10.0.0): dependencies: agent-base: 7.1.3 @@ -7260,8 +6965,6 @@ snapshots: inherits@2.0.4: {} - inline-style-parser@0.2.7: {} - inline-style-prefixer@7.0.1: dependencies: css-in-js-utils: 3.1.0 @@ -7272,13 +6975,6 @@ snapshots: hasown: 2.0.2 side-channel: 1.1.0 - is-alphabetical@2.0.1: {} - - is-alphanumerical@2.0.1: - dependencies: - is-alphabetical: 2.0.1 - is-decimal: 2.0.1 - is-array-buffer@3.0.5: dependencies: call-bind: 1.0.8 @@ -7321,8 +7017,6 @@ snapshots: call-bound: 1.0.4 has-tostringtag: 1.0.2 - is-decimal@2.0.1: {} - is-docker@2.2.1: {} is-extglob@2.1.1: {} @@ -7344,8 +7038,6 @@ snapshots: dependencies: is-extglob: 2.1.1 - is-hexadecimal@2.0.1: {} - is-interactive@1.0.0: {} is-map@2.0.3: {} @@ -7359,8 +7051,6 @@ snapshots: is-number@7.0.0: {} - is-plain-obj@4.1.0: {} - is-regex@1.2.1: dependencies: call-bound: 1.0.4 @@ -7559,8 +7249,6 @@ snapshots: chalk: 4.1.2 is-unicode-supported: 0.1.0 - longest-streak@3.1.0: {} - loose-envify@1.4.0: dependencies: js-tokens: 4.0.0 @@ -7591,238 +7279,18 @@ snapshots: dependencies: semver: 7.7.2 + marked@17.0.1: {} + math-expression-evaluator@2.0.7: {} math-intrinsics@1.1.0: {} - mdast-util-from-markdown@2.0.2: - dependencies: - '@types/mdast': 4.0.4 - '@types/unist': 3.0.3 - decode-named-character-reference: 1.2.0 - devlop: 1.1.0 - mdast-util-to-string: 4.0.0 - micromark: 4.0.2 - micromark-util-decode-numeric-character-reference: 2.0.2 - micromark-util-decode-string: 2.0.1 - micromark-util-normalize-identifier: 2.0.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - unist-util-stringify-position: 4.0.0 - transitivePeerDependencies: - - supports-color - - mdast-util-mdx-expression@2.0.1: - dependencies: - '@types/estree-jsx': 1.0.5 - '@types/hast': 3.0.4 - '@types/mdast': 4.0.4 - devlop: 1.1.0 - mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.2 - transitivePeerDependencies: - - supports-color - - mdast-util-mdx-jsx@3.2.0: - dependencies: - '@types/estree-jsx': 1.0.5 - '@types/hast': 3.0.4 - '@types/mdast': 4.0.4 - '@types/unist': 3.0.3 - ccount: 2.0.1 - devlop: 1.1.0 - mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.2 - parse-entities: 4.0.2 - stringify-entities: 4.0.4 - unist-util-stringify-position: 4.0.0 - vfile-message: 4.0.3 - transitivePeerDependencies: - - supports-color - - mdast-util-mdxjs-esm@2.0.1: - dependencies: - '@types/estree-jsx': 1.0.5 - '@types/hast': 3.0.4 - '@types/mdast': 4.0.4 - devlop: 1.1.0 - mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.2 - transitivePeerDependencies: - - supports-color - - mdast-util-phrasing@4.1.0: - dependencies: - '@types/mdast': 4.0.4 - unist-util-is: 6.0.1 - - mdast-util-to-hast@13.2.1: - dependencies: - '@types/hast': 3.0.4 - '@types/mdast': 4.0.4 - '@ungap/structured-clone': 1.3.0 - devlop: 1.1.0 - micromark-util-sanitize-uri: 2.0.1 - trim-lines: 3.0.1 - unist-util-position: 5.0.0 - unist-util-visit: 5.0.0 - vfile: 6.0.3 - - mdast-util-to-markdown@2.1.2: - dependencies: - '@types/mdast': 4.0.4 - '@types/unist': 3.0.3 - longest-streak: 3.1.0 - mdast-util-phrasing: 4.1.0 - mdast-util-to-string: 4.0.0 - micromark-util-classify-character: 2.0.1 - micromark-util-decode-string: 2.0.1 - unist-util-visit: 5.0.0 - zwitch: 2.0.4 - - mdast-util-to-string@4.0.0: - dependencies: - '@types/mdast': 4.0.4 - mdn-data@2.0.14: {} memoize-one@6.0.0: {} merge2@1.4.1: {} - micromark-core-commonmark@2.0.3: - dependencies: - decode-named-character-reference: 1.2.0 - devlop: 1.1.0 - micromark-factory-destination: 2.0.1 - micromark-factory-label: 2.0.1 - micromark-factory-space: 2.0.1 - micromark-factory-title: 2.0.1 - micromark-factory-whitespace: 2.0.1 - micromark-util-character: 2.1.1 - micromark-util-chunked: 2.0.1 - micromark-util-classify-character: 2.0.1 - micromark-util-html-tag-name: 2.0.1 - micromark-util-normalize-identifier: 2.0.1 - micromark-util-resolve-all: 2.0.1 - micromark-util-subtokenize: 2.1.0 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - - micromark-factory-destination@2.0.1: - dependencies: - micromark-util-character: 2.1.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - - micromark-factory-label@2.0.1: - dependencies: - devlop: 1.1.0 - micromark-util-character: 2.1.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - - micromark-factory-space@2.0.1: - dependencies: - micromark-util-character: 2.1.1 - micromark-util-types: 2.0.2 - - micromark-factory-title@2.0.1: - dependencies: - micromark-factory-space: 2.0.1 - micromark-util-character: 2.1.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - - micromark-factory-whitespace@2.0.1: - dependencies: - micromark-factory-space: 2.0.1 - micromark-util-character: 2.1.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - - micromark-util-character@2.1.1: - dependencies: - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - - micromark-util-chunked@2.0.1: - dependencies: - micromark-util-symbol: 2.0.1 - - micromark-util-classify-character@2.0.1: - dependencies: - micromark-util-character: 2.1.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - - micromark-util-combine-extensions@2.0.1: - dependencies: - micromark-util-chunked: 2.0.1 - micromark-util-types: 2.0.2 - - micromark-util-decode-numeric-character-reference@2.0.2: - dependencies: - micromark-util-symbol: 2.0.1 - - micromark-util-decode-string@2.0.1: - dependencies: - decode-named-character-reference: 1.2.0 - micromark-util-character: 2.1.1 - micromark-util-decode-numeric-character-reference: 2.0.2 - micromark-util-symbol: 2.0.1 - - micromark-util-encode@2.0.1: {} - - micromark-util-html-tag-name@2.0.1: {} - - micromark-util-normalize-identifier@2.0.1: - dependencies: - micromark-util-symbol: 2.0.1 - - micromark-util-resolve-all@2.0.1: - dependencies: - micromark-util-types: 2.0.2 - - micromark-util-sanitize-uri@2.0.1: - dependencies: - micromark-util-character: 2.1.1 - micromark-util-encode: 2.0.1 - micromark-util-symbol: 2.0.1 - - micromark-util-subtokenize@2.1.0: - dependencies: - devlop: 1.1.0 - micromark-util-chunked: 2.0.1 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - - micromark-util-symbol@2.0.1: {} - - micromark-util-types@2.0.2: {} - - micromark@4.0.2: - dependencies: - '@types/debug': 4.1.12 - debug: 4.4.1(supports-color@10.0.0) - decode-named-character-reference: 1.2.0 - devlop: 1.1.0 - micromark-core-commonmark: 2.0.3 - micromark-factory-space: 2.0.1 - micromark-util-character: 2.1.1 - micromark-util-chunked: 2.0.1 - micromark-util-combine-extensions: 2.0.1 - micromark-util-decode-numeric-character-reference: 2.0.2 - micromark-util-encode: 2.0.1 - micromark-util-normalize-identifier: 2.0.1 - micromark-util-resolve-all: 2.0.1 - micromark-util-sanitize-uri: 2.0.1 - micromark-util-subtokenize: 2.1.0 - micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.2 - transitivePeerDependencies: - - supports-color - micromatch@4.0.8: dependencies: braces: 3.0.3 @@ -8043,16 +7511,6 @@ snapshots: dependencies: callsites: 3.1.0 - parse-entities@4.0.2: - dependencies: - '@types/unist': 2.0.11 - character-entities-legacy: 3.0.0 - character-reference-invalid: 2.0.1 - decode-named-character-reference: 1.2.0 - is-alphanumerical: 2.0.1 - is-decimal: 2.0.1 - is-hexadecimal: 2.0.1 - parse-json@5.2.0: dependencies: '@babel/code-frame': 7.27.1 @@ -8121,8 +7579,6 @@ snapshots: object-assign: 4.1.1 react-is: 16.13.1 - property-information@7.1.0: {} - punycode@2.3.1: {} query-string@9.2.2: @@ -8242,23 +7698,6 @@ snapshots: react-is@17.0.2: {} - react-markdown@9.0.1(@types/react@18.3.23)(react@18.3.1): - dependencies: - '@types/hast': 3.0.4 - '@types/react': 18.3.23 - devlop: 1.1.0 - hast-util-to-jsx-runtime: 2.3.6 - html-url-attributes: 3.0.1 - mdast-util-to-hast: 13.2.1 - react: 18.3.1 - remark-parse: 11.0.0 - remark-rehype: 11.1.2 - unified: 11.0.5 - unist-util-visit: 5.0.0 - vfile: 6.0.3 - transitivePeerDependencies: - - supports-color - react-redux@9.2.0(@types/react@18.3.23)(react@18.3.1)(redux@5.0.1): dependencies: '@types/use-sync-external-store': 0.0.6 @@ -8436,23 +7875,6 @@ snapshots: gopd: 1.2.0 set-function-name: 2.0.2 - remark-parse@11.0.0: - dependencies: - '@types/mdast': 4.0.4 - mdast-util-from-markdown: 2.0.2 - micromark-util-types: 2.0.2 - unified: 11.0.5 - transitivePeerDependencies: - - supports-color - - remark-rehype@11.1.2: - dependencies: - '@types/hast': 3.0.4 - '@types/mdast': 4.0.4 - mdast-util-to-hast: 13.2.1 - unified: 11.0.5 - vfile: 6.0.3 - require-directory@2.1.1: {} require-from-string@2.0.2: {} @@ -8686,8 +8108,6 @@ snapshots: source-map@0.7.4: {} - space-separated-tokens@2.0.2: {} - split-on-first@3.0.0: {} stable-hash@0.0.6: {} @@ -8799,11 +8219,6 @@ snapshots: dependencies: safe-buffer: 5.2.1 - stringify-entities@4.0.4: - dependencies: - character-entities-html4: 2.1.0 - character-entities-legacy: 3.0.0 - strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 @@ -8830,14 +8245,6 @@ snapshots: dependencies: js-tokens: 9.0.1 - style-to-js@1.1.21: - dependencies: - style-to-object: 1.0.14 - - style-to-object@1.0.14: - dependencies: - inline-style-parser: 0.2.7 - stylis@4.2.0: {} stylis@4.3.6: {} @@ -8891,10 +8298,6 @@ snapshots: tree-kill@1.2.2: {} - trim-lines@3.0.1: {} - - trough@2.2.0: {} - ts-api-utils@2.1.0(typescript@5.8.3): dependencies: typescript: 5.8.3 @@ -8980,39 +8383,6 @@ snapshots: unicorn-magic@0.1.0: {} - unified@11.0.5: - dependencies: - '@types/unist': 3.0.3 - bail: 2.0.2 - devlop: 1.1.0 - extend: 3.0.2 - is-plain-obj: 4.1.0 - trough: 2.2.0 - vfile: 6.0.3 - - unist-util-is@6.0.1: - dependencies: - '@types/unist': 3.0.3 - - unist-util-position@5.0.0: - dependencies: - '@types/unist': 3.0.3 - - unist-util-stringify-position@4.0.0: - dependencies: - '@types/unist': 3.0.3 - - unist-util-visit-parents@6.0.2: - dependencies: - '@types/unist': 3.0.3 - unist-util-is: 6.0.1 - - unist-util-visit@5.0.0: - dependencies: - '@types/unist': 3.0.3 - unist-util-is: 6.0.1 - unist-util-visit-parents: 6.0.2 - universalify@2.0.1: {} unplugin@1.16.1: @@ -9082,16 +8452,6 @@ snapshots: uuid@11.1.0: {} - vfile-message@4.0.3: - dependencies: - '@types/unist': 3.0.3 - unist-util-stringify-position: 4.0.0 - - vfile@6.0.3: - dependencies: - '@types/unist': 3.0.3 - vfile-message: 4.0.3 - vite-node@3.2.4(@types/node@22.16.0)(jiti@2.4.2): dependencies: cac: 6.7.14 @@ -9318,5 +8678,3 @@ snapshots: '@types/react': 18.3.23 immer: 10.1.1 react: 18.3.1 - - zwitch@2.0.4: {} diff --git a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx index 09fb52a6790..c6a60dadd13 100644 --- a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx +++ b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx @@ -11,10 +11,9 @@ import { } from '@invoke-ai/ui-library'; import { logger } from 'app/logging/logger'; import { useNodeTemplateOrThrow } from 'features/nodes/hooks/useNodeTemplateOrThrow'; -import type { ReactElement, ReactNode } from 'react'; -import { memo, useEffect, useState } from 'react'; -import { useTranslation } from 'react-i18next'; import { marked } from 'marked'; +import { memo, type ReactElement, useEffect, useState } from 'react'; +import { useTranslation } from 'react-i18next'; const log = logger('system'); @@ -52,7 +51,7 @@ const resolveImagePath = (src: string | undefined, basePath: string): string => * Creates markdown components with proper image path resolution. */ // We will not use react-markdown components anymore; keep resolveImagePath for potential future work -const createMarkdownComponents = (basePath: string) => ({ +const _createMarkdownComponents = (basePath: string) => ({ img: ({ src, alt }: { src?: string; alt?: string }) => ( {alt ), diff --git a/invokeai/resources/__init__.py b/invokeai/resources/__init__.py new file mode 100644 index 00000000000..f3ad163ee77 --- /dev/null +++ b/invokeai/resources/__init__.py @@ -0,0 +1 @@ +# package to hold static resources used by the InvokeAI package diff --git a/pyproject.toml b/pyproject.toml index adfe5982baf..710cdae2367 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -183,6 +183,7 @@ version = { attr = "invokeai.version.__version__" } "invokeai.configs*", "invokeai.app*", "invokeai.invocation_api*", + "invokeai.resources*", ] [tool.setuptools.package-data] @@ -198,6 +199,7 @@ version = { attr = "invokeai.version.__version__" } "invokeai.frontend.web.dist" = ["**"] "invokeai.frontend.web.static" = ["**"] "invokeai.app.invocations" = ["**"] +"invokeai.resources" = ["node_docs/**"] #=== Begin: PyTest and Coverage [tool.pytest.ini_options] From 33fa002a969e4b97772a04f5d345d905dd688189 Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Thu, 15 Jan 2026 20:18:35 -0500 Subject: [PATCH 14/21] git markdown style --- invokeai/frontend/web/package.json | 1 + invokeai/frontend/web/pnpm-lock.yaml | 9 ++++++ .../Invocation/InvocationNodeHelpModal.tsx | 4 +++ node_modules/.pnpm-workspace-state.json | 31 +++++++++++++++++++ 4 files changed, 45 insertions(+) create mode 100644 node_modules/.pnpm-workspace-state.json diff --git a/invokeai/frontend/web/package.json b/invokeai/frontend/web/package.json index 223345d9bcc..267f983d85b 100644 --- a/invokeai/frontend/web/package.json +++ b/invokeai/frontend/web/package.json @@ -88,6 +88,7 @@ "react-i18next": "^15.5.3", "react-icons": "^5.5.0", "marked": "^17.0.1", + "github-markdown-css": "^5.2.0", "react-redux": "9.2.0", "react-resizable-panels": "^3.0.3", "react-textarea-autosize": "^8.5.9", diff --git a/invokeai/frontend/web/pnpm-lock.yaml b/invokeai/frontend/web/pnpm-lock.yaml index d96c5a68229..42aee5eb016 100644 --- a/invokeai/frontend/web/pnpm-lock.yaml +++ b/invokeai/frontend/web/pnpm-lock.yaml @@ -74,6 +74,9 @@ importers: framer-motion: specifier: ^11.10.0 version: 11.18.2(@emotion/is-prop-valid@1.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + github-markdown-css: + specifier: ^5.2.0 + version: 5.8.1 i18next: specifier: ^25.3.2 version: 25.3.2(typescript@5.8.3) @@ -2569,6 +2572,10 @@ packages: resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} engines: {node: '>= 0.4'} + github-markdown-css@5.8.1: + resolution: {integrity: sha512-8G+PFvqigBQSWLQjyzgpa2ThD9bo7+kDsriUIidGcRhXgmcaAWUIpCZf8DavJgc+xifjbCG+GvMyWr0XMXmc7g==} + engines: {node: '>=10'} + glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -6855,6 +6862,8 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.3.0 + github-markdown-css@5.8.1: {} + glob-parent@5.1.2: dependencies: is-glob: 4.0.3 diff --git a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx index c6a60dadd13..4205ad90d58 100644 --- a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx +++ b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx @@ -1,3 +1,5 @@ +import 'github-markdown-css/github-markdown.css'; + import { Image, Modal, @@ -129,6 +131,8 @@ export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactE {error && {error}} {docsContent && (

]+>/g, '')) }} /> diff --git a/node_modules/.pnpm-workspace-state.json b/node_modules/.pnpm-workspace-state.json new file mode 100644 index 00000000000..82dc2b9ac20 --- /dev/null +++ b/node_modules/.pnpm-workspace-state.json @@ -0,0 +1,31 @@ +{ + "lastValidatedTimestamp": 1768525730655, + "projects": { + "/home/dunkeroni/Stable-Diffusion/dev/InvokeAI/invokeai/frontend/web": { + "name": "@invoke-ai/invoke-ai-ui", + "version": "0.0.1" + }, + "/home/dunkeroni/Stable-Diffusion/dev/InvokeAI/invokeai/frontend/web/scripts": {} + }, + "pnpmfileExists": false, + "settings": { + "autoInstallPeers": true, + "dedupeDirectDeps": false, + "dedupeInjectedDeps": true, + "dedupePeerDependents": true, + "dev": true, + "excludeLinksFromLockfile": false, + "hoistPattern": [ + "*" + ], + "hoistWorkspacePackages": true, + "injectWorkspacePackages": false, + "linkWorkspacePackages": false, + "nodeLinker": "isolated", + "optional": true, + "preferWorkspacePackages": false, + "production": true, + "publicHoistPattern": [] + }, + "filteredInstall": true +} From cf63143bde077a6104bc0ec6afcc70feb1fb5d67 Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Thu, 15 Jan 2026 22:13:13 -0500 Subject: [PATCH 15/21] fix style issues --- invokeai/frontend/web/package.json | 5 +- invokeai/frontend/web/pnpm-lock.yaml | 28 +++-- .../Invocation/InvocationNodeHelpModal.tsx | 118 +++++++++++++++++- .../frontend/web/src/types/dompurify.d.ts | 7 ++ 4 files changed, 141 insertions(+), 17 deletions(-) create mode 100644 invokeai/frontend/web/src/types/dompurify.d.ts diff --git a/invokeai/frontend/web/package.json b/invokeai/frontend/web/package.json index 267f983d85b..a9c8d89b564 100644 --- a/invokeai/frontend/web/package.json +++ b/invokeai/frontend/web/package.json @@ -57,6 +57,7 @@ "cmdk": "^1.1.1", "compare-versions": "^6.1.1", "dockview": "^4.7.1", + "dompurify": "^2.4.0", "es-toolkit": "^1.39.7", "filesize": "^10.1.6", "fracturedjsonjs": "^4.1.0", @@ -69,6 +70,7 @@ "linkify-react": "^4.3.1", "linkifyjs": "^4.3.1", "lru-cache": "^11.1.0", + "marked": "^17.0.1", "mtwist": "^1.0.2", "nanoid": "^5.1.5", "nanostores": "^1.0.1", @@ -87,8 +89,6 @@ "react-hotkeys-hook": "4.5.0", "react-i18next": "^15.5.3", "react-icons": "^5.5.0", - "marked": "^17.0.1", - "github-markdown-css": "^5.2.0", "react-redux": "9.2.0", "react-resizable-panels": "^3.0.3", "react-textarea-autosize": "^8.5.9", @@ -116,6 +116,7 @@ "@storybook/addon-docs": "^9.0.17", "@storybook/addon-links": "^9.0.17", "@storybook/react-vite": "^9.0.17", + "@types/dompurify": "^3.2.0", "@types/node": "^22.15.1", "@types/react": "^18.3.11", "@types/react-dom": "^18.3.0", diff --git a/invokeai/frontend/web/pnpm-lock.yaml b/invokeai/frontend/web/pnpm-lock.yaml index 42aee5eb016..5a6188e26b6 100644 --- a/invokeai/frontend/web/pnpm-lock.yaml +++ b/invokeai/frontend/web/pnpm-lock.yaml @@ -62,6 +62,9 @@ importers: dockview: specifier: ^4.7.1 version: 4.7.1(react@18.3.1) + dompurify: + specifier: ^2.4.0 + version: 2.5.8 es-toolkit: specifier: ^1.39.7 version: 1.39.7 @@ -74,9 +77,6 @@ importers: framer-motion: specifier: ^11.10.0 version: 11.18.2(@emotion/is-prop-valid@1.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - github-markdown-css: - specifier: ^5.2.0 - version: 5.8.1 i18next: specifier: ^25.3.2 version: 25.3.2(typescript@5.8.3) @@ -222,6 +222,9 @@ importers: '@storybook/react-vite': specifier: ^9.0.17 version: 9.0.17(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.45.1)(storybook@9.0.17(@testing-library/dom@10.4.0)(prettier@3.6.2))(typescript@5.8.3)(vite@7.0.5(@types/node@22.16.0)(jiti@2.4.2)) + '@types/dompurify': + specifier: ^3.2.0 + version: 3.2.0 '@types/node': specifier: ^22.15.1 version: 22.16.0 @@ -1546,6 +1549,10 @@ packages: '@types/doctrine@0.0.9': resolution: {integrity: sha512-eOIHzCUSH7SMfonMG1LsC2f8vxBFtho6NGBznK41R84YzPuvSBzrhEps33IsQiOW9+VL6NQ9DbjQJznk/S4uRA==} + '@types/dompurify@3.2.0': + resolution: {integrity: sha512-Fgg31wv9QbLDA0SpTOXO3MaxySc4DKGLi8sna4/Utjo4r3ZRPdCt4UQee8BWr+Q5z21yifghREPJGYaEOEIACg==} + deprecated: This is a stub types definition. dompurify provides its own type definitions, so you do not need this installed. + '@types/eslint@8.56.12': resolution: {integrity: sha512-03ruubjWyOHlmljCVoxSuNDdmfZDzsrrz0P2LeJsOXr+ZwFQ+0yQIwNCwt/GYhV7Z31fgtXJTAEs+FYlEL851g==} @@ -2172,6 +2179,9 @@ packages: dom-helpers@5.2.1: resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} + dompurify@2.5.8: + resolution: {integrity: sha512-o1vSNgrmYMQObbSSvF/1brBYEQPHhV1+gsmrusO7/GXtp1T9rCS8cXFqVxK/9crT1jA6Ccv+5MTSjBNqr7Sovw==} + dpdm@3.14.0: resolution: {integrity: sha512-YJzsFSyEtj88q5eTELg3UWU7TVZkG1dpbF4JDQ3t1b07xuzXmdoGeSz9TKOke1mUuOpWlk4q+pBh+aHzD6GBTg==} hasBin: true @@ -2572,10 +2582,6 @@ packages: resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} engines: {node: '>= 0.4'} - github-markdown-css@5.8.1: - resolution: {integrity: sha512-8G+PFvqigBQSWLQjyzgpa2ThD9bo7+kDsriUIidGcRhXgmcaAWUIpCZf8DavJgc+xifjbCG+GvMyWr0XMXmc7g==} - engines: {node: '>=10'} - glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -5580,6 +5586,10 @@ snapshots: '@types/doctrine@0.0.9': {} + '@types/dompurify@3.2.0': + dependencies: + dompurify: 2.5.8 + '@types/eslint@8.56.12': dependencies: '@types/estree': 1.0.8 @@ -6312,6 +6322,8 @@ snapshots: '@babel/runtime': 7.27.6 csstype: 3.1.3 + dompurify@2.5.8: {} + dpdm@3.14.0: dependencies: chalk: 4.1.2 @@ -6862,8 +6874,6 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.3.0 - github-markdown-css@5.8.1: {} - glob-parent@5.1.2: dependencies: is-glob: 4.0.3 diff --git a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx index 4205ad90d58..52530c06f80 100644 --- a/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx +++ b/invokeai/frontend/web/src/features/nodes/components/flow/nodes/Invocation/InvocationNodeHelpModal.tsx @@ -1,6 +1,5 @@ -import 'github-markdown-css/github-markdown.css'; - import { + Box, Image, Modal, ModalBody, @@ -12,6 +11,7 @@ import { Text, } from '@invoke-ai/ui-library'; import { logger } from 'app/logging/logger'; +import DOMPurify from 'dompurify'; import { useNodeTemplateOrThrow } from 'features/nodes/hooks/useNodeTemplateOrThrow'; import { marked } from 'marked'; import { memo, type ReactElement, useEffect, useState } from 'react'; @@ -49,6 +49,17 @@ const resolveImagePath = (src: string | undefined, basePath: string): string => return `${normalizedBasePath}/${normalizedRelativePath}`; }; +/** + * Rewrite relative image paths in markdown to be absolute based on basePath + */ +const rewriteRelativeImagePaths = (markdown: string, basePath: string): string => { + return markdown.replace(/!\[([^\]]*)\]\((?!\s*(?:https?:\/\/|\/|data:))([^)]+)\)/g, (_match, alt, src) => { + const cleaned = src.startsWith('./') ? src.slice(2) : src; + const normalized = cleaned.startsWith('/') ? cleaned.slice(1) : cleaned; + return `![${alt}](${basePath}/${normalized})`; + }); +}; + /** * Creates markdown components with proper image path resolution. */ @@ -65,6 +76,7 @@ export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactE const [docsContent, setDocsContent] = useState(null); const [isLoading, setIsLoading] = useState(false); const [error, setError] = useState(null); + const [sanitizedHtml, setSanitizedHtml] = useState(null); useEffect(() => { if (!isOpen) { @@ -118,6 +130,27 @@ export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactE loadDocs(); }, [isOpen, nodeTemplate.type, i18n.language, t]); + useEffect(() => { + if (!docsContent) { + setSanitizedHtml(null); + return; + } + + let mounted = true; + (async () => { + const htmlOrPromise = marked.parse(rewriteRelativeImagePaths(docsContent.markdown, docsContent.basePath)); + const html = typeof htmlOrPromise === 'string' ? htmlOrPromise : await htmlOrPromise; + if (!mounted) { + return; + } + setSanitizedHtml(DOMPurify.sanitize(html)); + })(); + + return () => { + mounted = false; + }; + }, [docsContent]); + return ( @@ -129,12 +162,85 @@ export const InvocationNodeHelpModal = memo(({ isOpen, onClose }: Props): ReactE {isLoading && } {error && {error}} - {docsContent && ( -
]+>/g, '')) }} + bg="transparent" + color="base.100" + sx={{ + // Headings + h1: { color: 'base.100', fontSize: '2xl', mt: 2, mb: 2, fontWeight: 'semibold' }, + h2: { color: 'base.100', fontSize: 'xl', mt: 2, mb: 2, fontWeight: 'semibold' }, + h3: { color: 'base.100', fontSize: 'lg', mt: 2, mb: 1.5, fontWeight: 'semibold' }, + h4: { color: 'base.100', fontSize: 'md', mt: 1.5, mb: 1, fontWeight: 'semibold' }, + + // Paragraphs + p: { color: 'base.100', mt: 1, mb: 1 }, + + // Links + a: { color: 'blue.200', _hover: { textDecoration: 'underline', color: 'blue.300' } }, + + // Lists + ul: { pl: 6, mt: 1, mb: 1 }, + ol: { pl: 6, mt: 1, mb: 1 }, + li: { mt: 1, mb: 1 }, + + // Code + pre: { + bg: 'base.800', + color: 'base.100', + borderRadius: '6px', + px: 4, + py: 3, + overflowX: 'auto', + fontFamily: "ui-monospace, SFMono-Regular, Menlo, Monaco, 'Roboto Mono', 'Courier New', monospace", + fontSize: 'sm', + }, + code: { + bg: 'rgba(255,255,255,0.02)', + color: 'base.100', + px: '0.25rem', + py: '0.125rem', + borderRadius: '4px', + fontFamily: "ui-monospace, SFMono-Regular, Menlo, Monaco, 'Roboto Mono', 'Courier New', monospace", + fontSize: '0.85em', + }, + + // Blockquote + blockquote: { + borderLeft: '4px solid rgba(255,255,255,0.06)', + background: 'rgba(255,255,255,0.02)', + color: 'base.200', + py: 2, + px: 4, + my: 3, + }, + + // Tables + table: { width: '100%', borderCollapse: 'collapse', my: 2 }, + th: { + border: '1px solid rgba(255,255,255,0.06)', + px: 3, + py: 2, + textAlign: 'left', + color: 'base.100', + }, + td: { + border: '1px solid rgba(255,255,255,0.06)', + px: 3, + py: 2, + color: 'base.100', + }, + + // Images + img: { maxW: '100%', borderRadius: '6px', display: 'block', my: 3 }, + + // Horizontal rule + hr: { border: 'none', h: '1px', bg: 'base.700', my: 4 }, + }} + // Render sanitized HTML + dangerouslySetInnerHTML={{ __html: sanitizedHtml }} /> )} diff --git a/invokeai/frontend/web/src/types/dompurify.d.ts b/invokeai/frontend/web/src/types/dompurify.d.ts new file mode 100644 index 00000000000..5a8f523aab7 --- /dev/null +++ b/invokeai/frontend/web/src/types/dompurify.d.ts @@ -0,0 +1,7 @@ +declare module 'dompurify' { + interface DOMPurifyInstance { + sanitize: (dirty: string) => string; + } + const DOMPurify: DOMPurifyInstance; + export default DOMPurify; +} From f9f13a3ae6099158899a86fa6bc1cc46f2d24bec Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Fri, 16 Jan 2026 09:42:06 -0500 Subject: [PATCH 16/21] api: serve packaged node docs via importlib.resources (no filesystem fallback); set markdown content-type and image headers --- invokeai/app/api/routers/node_docs.py | 105 +++++++++++------------- node_modules/.pnpm-workspace-state.json | 31 ------- 2 files changed, 46 insertions(+), 90 deletions(-) delete mode 100644 node_modules/.pnpm-workspace-state.json diff --git a/invokeai/app/api/routers/node_docs.py b/invokeai/app/api/routers/node_docs.py index 386ea475076..52e09e170ed 100644 --- a/invokeai/app/api/routers/node_docs.py +++ b/invokeai/app/api/routers/node_docs.py @@ -2,8 +2,8 @@ import mimetypes import re +from importlib import import_module from pathlib import Path -from typing import Optional from fastapi import APIRouter, HTTPException from fastapi.responses import PlainTextResponse, Response @@ -15,89 +15,76 @@ router = APIRouter() +# validation regexes VALID_SEGMENT = re.compile(r"^[A-Za-z0-9_-]+$") IMAGE_SEGMENT = re.compile(r"^[A-Za-z0-9_.-]+$") -RESOURCE_ROOT = Path("invokeai") / "resources" / "node_docs" - @router.get("/nodeDocs/{lang}/{name}.md") def get_node_doc(lang: str, name: str) -> PlainTextResponse: + """Return packaged markdown for a node. + + This endpoint only reads packaged resources from the installed `invokeai.resources` + package via `importlib.resources`. There are no filesystem fallbacks. + """ # Basic validation if not VALID_SEGMENT.match(lang) or not VALID_SEGMENT.match(name): raise HTTPException(status_code=400, detail="Invalid path segment") - # Attempt to load the resource from package resources try: - # Build the package-relative path: resources/node_docs/{lang}/{name}.md - # Use the resources package so importlib can find package data reliably - from importlib import import_module - - pkg_path = None - try: - # Preferred: read from the installed package resources - res_pkg = import_module("invokeai.resources") - pkg_path = pkg_resources.files(res_pkg).joinpath("node_docs", lang, f"{name}.md") - logger.debug(f"node_docs: attempting to read resource from package: {pkg_path}") - except Exception as e: - # Fall back to reading from the repository tree (useful when running from scripts) - logger.warning(f"node_docs: failed to import invokeai.resources: {e}; falling back to repo filesystem") - repo_root = Path(__file__).resolve().parents[4] - pkg_path = repo_root.joinpath("invokeai", "resources", "node_docs", lang, f"{name}.md") - logger.debug(f"node_docs: attempting to read resource from repo path: {pkg_path}") - - if not pkg_path.exists(): - logger.warning(f"node_docs: resource not found at {pkg_path}") - raise FileNotFoundError - try: - text = pkg_path.read_text(encoding="utf-8") - except Exception as e: - logger.warning(f"node_docs: failed reading resource {pkg_path}: {e}") + res_pkg = import_module("invokeai.resources") + pkg_path = pkg_resources.files(res_pkg).joinpath("node_docs", lang, f"{name}.md") + except Exception as e: + logger.warning(f"node_docs: unable to import packaged resources: {e}") + raise HTTPException(status_code=404, detail="Not found") + + # Ensure resource exists in the package + try: + if not pkg_path.is_file(): + logger.debug(f"node_docs: resource not found in package: {pkg_path}") raise FileNotFoundError - return PlainTextResponse(content=text, media_type="text/plain") + text = pkg_path.read_text(encoding="utf-8") + return PlainTextResponse(content=text, media_type="text/markdown") except FileNotFoundError: raise HTTPException(status_code=404, detail="Not found") + except Exception as e: + logger.warning(f"node_docs: failed reading resource {pkg_path}: {e}") + raise HTTPException(status_code=404, detail="Not found") @router.get("/nodeDocs/{lang}/images/{image_name}") def get_node_doc_image(lang: str, image_name: str) -> Response: - # Use a different validation for images to allow dots and file extensions - if not IMAGE_SEGMENT.match(image_name): - raise HTTPException(status_code=400, detail="Invalid path segment") - # previous validation for lang remains below + """Return packaged image resource for node docs. - if not VALID_SEGMENT.match(lang): + Only reads from `invokeai.resources` packaged data. Adds `X-Content-Type-Options` + and a conservative Cache-Control header. + """ + # Validate inputs + if not IMAGE_SEGMENT.match(image_name) or not VALID_SEGMENT.match(lang): raise HTTPException(status_code=400, detail="Invalid path segment") try: - from importlib import import_module - - pkg_path = None - try: - # Preferred: read from installed package resources - res_pkg = import_module("invokeai.resources") - pkg_path = pkg_resources.files(res_pkg).joinpath("node_docs", lang, "images", image_name) - logger.debug(f"node_docs: attempting to read image resource from package: {pkg_path}") - except Exception as e: - logger.warning( - f"node_docs: failed to import invokeai.resources for image: {e}; falling back to repo filesystem" - ) - repo_root = Path(__file__).resolve().parents[4] - pkg_path = repo_root.joinpath("invokeai", "resources", "node_docs", lang, "images", image_name) - logger.debug(f"node_docs: attempting to read image resource from repo path: {pkg_path}") - - if not pkg_path.exists(): - logger.warning(f"node_docs: image resource not found at {pkg_path}") - raise FileNotFoundError - try: - data = pkg_path.read_bytes() - except Exception as e: - logger.warning(f"node_docs: failed reading image resource {pkg_path}: {e}") + res_pkg = import_module("invokeai.resources") + pkg_path = pkg_resources.files(res_pkg).joinpath("node_docs", lang, "images", image_name) + except Exception as e: + logger.warning(f"node_docs: unable to import packaged resources for image: {e}") + raise HTTPException(status_code=404, detail="Not found") + + try: + if not pkg_path.is_file(): + logger.debug(f"node_docs: image resource not found in package: {pkg_path}") raise FileNotFoundError + data = pkg_path.read_bytes() mime_type, _ = mimetypes.guess_type(image_name) - return Response(content=data, media_type=mime_type or "application/octet-stream") + headers = { + "X-Content-Type-Options": "nosniff", + "Cache-Control": "public, max-age=86400", + } + return Response(content=data, media_type=mime_type or "application/octet-stream", headers=headers) except FileNotFoundError: - logger.debug(f"node_docs: returning 404 for image {lang}/{image_name}") + raise HTTPException(status_code=404, detail="Not found") + except Exception as e: + logger.warning(f"node_docs: failed reading image resource {pkg_path}: {e}") raise HTTPException(status_code=404, detail="Not found") diff --git a/node_modules/.pnpm-workspace-state.json b/node_modules/.pnpm-workspace-state.json deleted file mode 100644 index 82dc2b9ac20..00000000000 --- a/node_modules/.pnpm-workspace-state.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "lastValidatedTimestamp": 1768525730655, - "projects": { - "/home/dunkeroni/Stable-Diffusion/dev/InvokeAI/invokeai/frontend/web": { - "name": "@invoke-ai/invoke-ai-ui", - "version": "0.0.1" - }, - "/home/dunkeroni/Stable-Diffusion/dev/InvokeAI/invokeai/frontend/web/scripts": {} - }, - "pnpmfileExists": false, - "settings": { - "autoInstallPeers": true, - "dedupeDirectDeps": false, - "dedupeInjectedDeps": true, - "dedupePeerDependents": true, - "dev": true, - "excludeLinksFromLockfile": false, - "hoistPattern": [ - "*" - ], - "hoistWorkspacePackages": true, - "injectWorkspacePackages": false, - "linkWorkspacePackages": false, - "nodeLinker": "isolated", - "optional": true, - "preferWorkspacePackages": false, - "production": true, - "publicHoistPattern": [] - }, - "filteredInstall": true -} From f1a16ffeadc6cf139ddd979110e8734bc3216289 Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Fri, 16 Jan 2026 10:02:56 -0500 Subject: [PATCH 17/21] clean up docstrings --- invokeai/app/api/routers/node_docs.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/invokeai/app/api/routers/node_docs.py b/invokeai/app/api/routers/node_docs.py index 52e09e170ed..5636f544285 100644 --- a/invokeai/app/api/routers/node_docs.py +++ b/invokeai/app/api/routers/node_docs.py @@ -24,8 +24,8 @@ def get_node_doc(lang: str, name: str) -> PlainTextResponse: """Return packaged markdown for a node. - This endpoint only reads packaged resources from the installed `invokeai.resources` - package via `importlib.resources`. There are no filesystem fallbacks. + This endpoint reads packaged resources from the installed `invokeai.resources` + package via importlib. """ # Basic validation if not VALID_SEGMENT.match(lang) or not VALID_SEGMENT.match(name): From a9311e5d7e1233c9c7f0404543480245db0598a9 Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Fri, 16 Jan 2026 10:04:46 -0500 Subject: [PATCH 18/21] edit install info --- invokeai/resources/node_docs/_INFO_.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/invokeai/resources/node_docs/_INFO_.md b/invokeai/resources/node_docs/_INFO_.md index 560b88b240d..3461f9966bc 100644 --- a/invokeai/resources/node_docs/_INFO_.md +++ b/invokeai/resources/node_docs/_INFO_.md @@ -17,7 +17,7 @@ This folder contains developer-authored node documentation to be displayed in th ## Images: -- Place image files in the images/ subfolder next to the markdown file. Reference them using relative paths in the markdown. +- Place image files in the `images/` subfolder next to the markdown file. Reference them using relative paths in the markdown. - Ensure image names are unique and descriptive. Images can be reused across multiple docs if applicable, e.g., SD1.5 denoise and prompt nodes can all be shown in a single image since their usage is tied together. - Images can be screenshots of the node in use, example outputs, or diagrams illustrating concepts. - When displaying node usage examples, keep the example focused on the node and its immediate upstream/downstream connections. For best readability, keep the image width approximately two nodes wide. @@ -26,7 +26,7 @@ This folder contains developer-authored node documentation to be displayed in th ## Submitting: -- Before you submit a PR, make sure you run `lint:prettier` and `pnpm build` to ensure proper formatting and to pass tests. +- Because these docs are included as an installed module and served through API, new files will only be included after a `uv pip install`. This ensures parity between dev and user installs. - Check that your markdown renders correctly in a markdown viewer in the UI. ## Doc Template: From ef49c2924c26579a38c53fbbd11fc6eace57dc36 Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Fri, 16 Jan 2026 10:07:27 -0500 Subject: [PATCH 19/21] (chore) ruff --- invokeai/app/api/routers/node_docs.py | 3 +-- invokeai/app/api_app.py | 4 ++-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/invokeai/app/api/routers/node_docs.py b/invokeai/app/api/routers/node_docs.py index 5636f544285..af16c27e979 100644 --- a/invokeai/app/api/routers/node_docs.py +++ b/invokeai/app/api/routers/node_docs.py @@ -1,14 +1,13 @@ from __future__ import annotations +import importlib.resources as pkg_resources import mimetypes import re from importlib import import_module -from pathlib import Path from fastapi import APIRouter, HTTPException from fastapi.responses import PlainTextResponse, Response -import importlib.resources as pkg_resources from invokeai.backend.util.logging import InvokeAILogger logger = InvokeAILogger.get_logger(__name__) diff --git a/invokeai/app/api_app.py b/invokeai/app/api_app.py index 6938add450c..205abb7351a 100644 --- a/invokeai/app/api_app.py +++ b/invokeai/app/api_app.py @@ -24,12 +24,12 @@ images, model_manager, model_relationships, + # node_docs router serves packaged node documentation + node_docs, session_queue, style_presets, utilities, workflows, - # node_docs router serves packaged node documentation - node_docs, ) from invokeai.app.api.sockets import SocketIO from invokeai.app.services.config.config_default import get_config From 3150d99b9d281a1c6bdee1dd563a94033f97d090 Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Fri, 16 Jan 2026 10:13:35 -0500 Subject: [PATCH 20/21] (chore): update schema --- .../frontend/web/src/services/api/schema.ts | 110 ++++++++++++++++++ 1 file changed, 110 insertions(+) diff --git a/invokeai/frontend/web/src/services/api/schema.ts b/invokeai/frontend/web/src/services/api/schema.ts index 1f0464d1cc4..f967ea82743 100644 --- a/invokeai/frontend/web/src/services/api/schema.ts +++ b/invokeai/frontend/web/src/services/api/schema.ts @@ -1958,6 +1958,52 @@ export type paths = { patch?: never; trace?: never; }; + "/nodeDocs/{lang}/{name}.md": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get Node Doc + * @description Return packaged markdown for a node. + * + * This endpoint reads packaged resources from the installed `invokeai.resources` + * package via importlib. + */ + get: operations["get_node_doc_nodeDocs__lang___name__md_get"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/nodeDocs/{lang}/images/{image_name}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get Node Doc Image + * @description Return packaged image resource for node docs. + * + * Only reads from `invokeai.resources` packaged data. Adds `X-Content-Type-Options` + * and a conservative Cache-Control header. + */ + get: operations["get_node_doc_image_nodeDocs__lang__images__image_name__get"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; }; export type webhooks = Record; export type components = { @@ -30429,4 +30475,68 @@ export interface operations { }; }; }; + get_node_doc_nodeDocs__lang___name__md_get: { + parameters: { + query?: never; + header?: never; + path: { + lang: string; + name: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + get_node_doc_image_nodeDocs__lang__images__image_name__get: { + parameters: { + query?: never; + header?: never; + path: { + lang: string; + image_name: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; } From 0f5c52e07e39c7be903e99e85232bc6e39d945dd Mon Sep 17 00:00:00 2001 From: dunkeroni Date: Sun, 25 Jan 2026 22:47:49 -0500 Subject: [PATCH 21/21] generated image node documentations --- invokeai/resources/node_docs/_INFO_.md | 13 ++++--- .../node_docs/en/apply_mask_to_image.md | 26 ++++++++++++++ .../resources/node_docs/en/blank_image.md | 28 +++++++++++++++ .../node_docs/en/canvas_paste_back.md | 10 ++++++ .../resources/node_docs/en/color_correct.md | 32 ++++++++++++++++++ .../en/crop_image_to_bounding_box.md | 25 ++++++++++++++ .../node_docs/en/expand_mask_with_fade.md | 9 +++++ .../images/blank_image_random_color_noise.jpg | Bin 0 -> 91035 bytes .../en/images/highres_color_correction.jpg | Bin 0 -> 96061 bytes .../highres_color_correction_result.jpg | Bin 0 -> 399683 bytes .../images/paste_images_blank_background.jpg | Bin 0 -> 61987 bytes .../paste_images_blank_background_result.jpg | Bin 0 -> 320067 bytes .../en/images/z_image_example_t2i.jpg | Bin 0 -> 115270 bytes .../en/images/z_image_example_t2i.png | Bin 133280 -> 0 bytes invokeai/resources/node_docs/en/img_blur.md | 9 +++++ invokeai/resources/node_docs/en/img_chan.md | 12 +++++++ .../node_docs/en/img_channel_multiply.md | 27 +++++++++++++++ .../node_docs/en/img_channel_offset.md | 26 ++++++++++++++ invokeai/resources/node_docs/en/img_conv.md | 8 +++++ invokeai/resources/node_docs/en/img_crop.md | 15 ++++++++ .../resources/node_docs/en/img_hue_adjust.md | 25 ++++++++++++++ invokeai/resources/node_docs/en/img_ilerp.md | 26 ++++++++++++++ invokeai/resources/node_docs/en/img_lerp.md | 26 ++++++++++++++ invokeai/resources/node_docs/en/img_mul.md | 25 ++++++++++++++ invokeai/resources/node_docs/en/img_noise.md | 31 +++++++++++++++++ invokeai/resources/node_docs/en/img_nsfw.md | 24 +++++++++++++ .../resources/node_docs/en/img_pad_crop.md | 28 +++++++++++++++ invokeai/resources/node_docs/en/img_paste.md | 30 ++++++++++++++++ invokeai/resources/node_docs/en/img_resize.md | 27 +++++++++++++++ invokeai/resources/node_docs/en/img_scale.md | 26 ++++++++++++++ .../resources/node_docs/en/img_watermark.md | 25 ++++++++++++++ .../resources/node_docs/en/mask_combine.md | 25 ++++++++++++++ invokeai/resources/node_docs/en/mask_edge.md | 28 +++++++++++++++ .../resources/node_docs/en/mask_from_id.md | 27 +++++++++++++++ .../en/paste_image_into_bounding_box.md | 26 ++++++++++++++ invokeai/resources/node_docs/en/save_image.md | 24 +++++++++++++ invokeai/resources/node_docs/en/show_image.md | 18 ++++++++++ invokeai/resources/node_docs/en/tomask.md | 25 ++++++++++++++ .../resources/node_docs/en/unsharp_mask.md | 26 ++++++++++++++ .../resources/node_docs/en/z_image_denoise.md | 2 +- 40 files changed, 729 insertions(+), 5 deletions(-) create mode 100644 invokeai/resources/node_docs/en/apply_mask_to_image.md create mode 100644 invokeai/resources/node_docs/en/blank_image.md create mode 100644 invokeai/resources/node_docs/en/canvas_paste_back.md create mode 100644 invokeai/resources/node_docs/en/color_correct.md create mode 100644 invokeai/resources/node_docs/en/crop_image_to_bounding_box.md create mode 100644 invokeai/resources/node_docs/en/expand_mask_with_fade.md create mode 100644 invokeai/resources/node_docs/en/images/blank_image_random_color_noise.jpg create mode 100644 invokeai/resources/node_docs/en/images/highres_color_correction.jpg create mode 100644 invokeai/resources/node_docs/en/images/highres_color_correction_result.jpg create mode 100644 invokeai/resources/node_docs/en/images/paste_images_blank_background.jpg create mode 100644 invokeai/resources/node_docs/en/images/paste_images_blank_background_result.jpg create mode 100644 invokeai/resources/node_docs/en/images/z_image_example_t2i.jpg delete mode 100644 invokeai/resources/node_docs/en/images/z_image_example_t2i.png create mode 100644 invokeai/resources/node_docs/en/img_blur.md create mode 100644 invokeai/resources/node_docs/en/img_chan.md create mode 100644 invokeai/resources/node_docs/en/img_channel_multiply.md create mode 100644 invokeai/resources/node_docs/en/img_channel_offset.md create mode 100644 invokeai/resources/node_docs/en/img_conv.md create mode 100644 invokeai/resources/node_docs/en/img_crop.md create mode 100644 invokeai/resources/node_docs/en/img_hue_adjust.md create mode 100644 invokeai/resources/node_docs/en/img_ilerp.md create mode 100644 invokeai/resources/node_docs/en/img_lerp.md create mode 100644 invokeai/resources/node_docs/en/img_mul.md create mode 100644 invokeai/resources/node_docs/en/img_noise.md create mode 100644 invokeai/resources/node_docs/en/img_nsfw.md create mode 100644 invokeai/resources/node_docs/en/img_pad_crop.md create mode 100644 invokeai/resources/node_docs/en/img_paste.md create mode 100644 invokeai/resources/node_docs/en/img_resize.md create mode 100644 invokeai/resources/node_docs/en/img_scale.md create mode 100644 invokeai/resources/node_docs/en/img_watermark.md create mode 100644 invokeai/resources/node_docs/en/mask_combine.md create mode 100644 invokeai/resources/node_docs/en/mask_edge.md create mode 100644 invokeai/resources/node_docs/en/mask_from_id.md create mode 100644 invokeai/resources/node_docs/en/paste_image_into_bounding_box.md create mode 100644 invokeai/resources/node_docs/en/save_image.md create mode 100644 invokeai/resources/node_docs/en/show_image.md create mode 100644 invokeai/resources/node_docs/en/tomask.md create mode 100644 invokeai/resources/node_docs/en/unsharp_mask.md diff --git a/invokeai/resources/node_docs/_INFO_.md b/invokeai/resources/node_docs/_INFO_.md index 3461f9966bc..be3042c7d2b 100644 --- a/invokeai/resources/node_docs/_INFO_.md +++ b/invokeai/resources/node_docs/_INFO_.md @@ -20,14 +20,15 @@ This folder contains developer-authored node documentation to be displayed in th - Place image files in the `images/` subfolder next to the markdown file. Reference them using relative paths in the markdown. - Ensure image names are unique and descriptive. Images can be reused across multiple docs if applicable, e.g., SD1.5 denoise and prompt nodes can all be shown in a single image since their usage is tied together. - Images can be screenshots of the node in use, example outputs, or diagrams illustrating concepts. -- When displaying node usage examples, keep the example focused on the node and its immediate upstream/downstream connections. For best readability, keep the image width approximately two nodes wide. +- When displaying node usage examples, keep the example focused on the node and its immediate upstream/downstream connections. For best readability, keep the image width approximately two or three nodes wide. +- To reduce space requirements, use JPG format for all example images. [Use IMAGE_PLACEHOLDER for any images at this time. We will replace these with actual images later.] ## Submitting: -- Because these docs are included as an installed module and served through API, new files will only be included after a `uv pip install`. This ensures parity between dev and user installs. - Check that your markdown renders correctly in a markdown viewer in the UI. +- Because these docs are included as an installed module and served through API, new folders will only be included after a `uv pip install`. This ensures parity between dev and user installs. Just adding new files to existing folders *shouldn't* require installing again. ## Doc Template: @@ -47,18 +48,22 @@ This folder contains developer-authored node documentation to be displayed in th - [Output 2 Name]: [Description of output 2] - ... +--- + ## Example Usage ### [Example Scenario 1] -![Descriptive Alt Text for Example 1](./images/[image_file_name_1].png) +![Alt Text for Example 1](./images/[image_file_name_1].png) [Brief description of Example Scenario 1.] ### [Example Scenario 2] -![Descriptive Alt Text for Example 2](./images/[image_file_name_2].png) +![Alt Text for Example 2](./images/[image_file_name_2].png) [Brief description of Example Scenario 2.] +--- + ## Notes: - [Any additional notes or important details about the node's behavior.] diff --git a/invokeai/resources/node_docs/en/apply_mask_to_image.md b/invokeai/resources/node_docs/en/apply_mask_to_image.md new file mode 100644 index 00000000000..4414b5afe45 --- /dev/null +++ b/invokeai/resources/node_docs/en/apply_mask_to_image.md @@ -0,0 +1,26 @@ +# Apply Mask to Image + +Extracts a region from an image defined by a mask (black=keep, white=discard) and uses the mask as the alpha channel so the extracted region can be composited elsewhere. + +## Inputs + +- `image`: The source image to extract from (RGBA expected). +- `mask`: The mask defining the region (black=keep, white=discard). +- `invert_mask`: Whether to invert the mask before applying it. + +## Outputs + +- `image`: The resulting image where the mask has been applied as the alpha channel. + +## Example Usage + +### Extract masked region + +Use `Apply Mask to Image` to produce an RGBA image where only the masked area remains visible for pasting into another composition. + +![IMAGE_PLACEHOLDER](./images/IMAGE_PLACEHOLDER.png) +Turn a mask into an image alpha to extract a region. + +## Notes + +- The mask is used directly as the alpha channel; black areas become opaque. \ No newline at end of file diff --git a/invokeai/resources/node_docs/en/blank_image.md b/invokeai/resources/node_docs/en/blank_image.md new file mode 100644 index 00000000000..595d693df2f --- /dev/null +++ b/invokeai/resources/node_docs/en/blank_image.md @@ -0,0 +1,28 @@ +# Blank Image + +Creates a new blank image with the specified dimensions, color, and mode, then forwards it downstream. Useful for creating a canvas for compositing, drawing, or testing. + +## Inputs + +- `width`: The width of the image in pixels (default `512`). +- `height`: The height of the image in pixels (default `512`). +- `mode`: The image mode (`RGB` or `RGBA`) determining channels and transparency. +- `color`: The background color to fill the image. Supports RGBA values. + +--- + +## Example Usage + +### Pasting images onto a solid background border + +![image](images/paste_images_blank_background.jpg) + +In this example, the `Blank Image` node creates a solid color background. Multiple images are then pasted onto this background to create a composite image with a border effect. + +![image](images/paste_images_blank_background_result.jpg) + +### Generating random color noise for Text2Img workflows + +![image](images/blank_image_random_color_noise.jpg) + +In this example, a blank image is created with middle gray before being adjusted for saturation, hue, and brightness to create a random color input for a Text2Img workflow. \ No newline at end of file diff --git a/invokeai/resources/node_docs/en/canvas_paste_back.md b/invokeai/resources/node_docs/en/canvas_paste_back.md new file mode 100644 index 00000000000..0caaee9e81b --- /dev/null +++ b/invokeai/resources/node_docs/en/canvas_paste_back.md @@ -0,0 +1,10 @@ +# Canvas Paste Back + +Combines two images using a mask, used in several of the Unified Canvas workflows. This pastes the `target_image` onto the `source_image` using a prepared mask. The node dilates (expands) and thenblurs the mask before using it to blend the images. This reduces the visible seam when pasting inpaint results back into the original canvas. + +## Inputs + +- `source_image`: The image onto which the target will be pasted. +- `target_image`: The image to paste into the source. +- `mask`: The mask controlling where the paste occurs. +- `mask_blur`: Amount of Gaussian blur to apply to the mask (default `0`). \ No newline at end of file diff --git a/invokeai/resources/node_docs/en/color_correct.md b/invokeai/resources/node_docs/en/color_correct.md new file mode 100644 index 00000000000..224c40c2e30 --- /dev/null +++ b/invokeai/resources/node_docs/en/color_correct.md @@ -0,0 +1,32 @@ +# Color Correct + +Matches the color histogram of a base image to a reference image. You can limit correction to specific channels or colorspaces and optionally apply a mask to restrict where correction occurs. + +## Inputs + +- `base_image`: The image to color-correct. +- `color_reference`: Reference image whose colors should be matched. +- `mask` (optional): Mask limiting correction (white=use original, black=apply correction). +- `colorspace`: Colorspace to operate in (`RGB`, `YCbCr`, `YCbCr-Chroma`, `YCbCr-Luma`). Default `RGB`. + +## Outputs + +- `image`: The color-corrected image with original alpha preserved. + +--- + +## Example Usage + +### Fix color drift from high-res passes + +Depending on upscaling, manipulations, controlnets, loras, or other inputs, the colors of a high-resolution output from a multi-stage generation might drift from the original low-res image. This node can be used to restore the original color balance by matching the high-res output back to the low-res input, restoring saturation or brightness depending on the colorspace used. + +![image](images/highres_color_correction.jpg) + +![image](images/highres_color_correction_result.jpg) + +--- + +## Notes + +- The node performs histogram matching per-channel using cumulative distribution functions. This can lead to colors (combinations of channels) that were not present in the reference image. This is especially true when operating in `RGB` colorspace. Using `YCbCr` or its variants can help preserve color relationships. \ No newline at end of file diff --git a/invokeai/resources/node_docs/en/crop_image_to_bounding_box.md b/invokeai/resources/node_docs/en/crop_image_to_bounding_box.md new file mode 100644 index 00000000000..bff3bfe6695 --- /dev/null +++ b/invokeai/resources/node_docs/en/crop_image_to_bounding_box.md @@ -0,0 +1,25 @@ +# Crop Image to Bounding Box + +Crops an image to a provided bounding box. If no bounding box is supplied, the node crops to the image's non-transparent bounding box. + +## Inputs + +- `image`: The image to crop. +- `bounding_box` (optional): The bounding box to crop to; if omitted, the image's non-transparent extents are used. + +## Outputs + +- `image`: The cropped image. + +## Example Usage + +### Trim transparent edges + +Use `Crop Image to Bounding Box` to remove surrounding transparent pixels or to crop to a specific box. + +![IMAGE_PLACEHOLDER](./images/IMAGE_PLACEHOLDER.png) +Crop to the non-transparent content of an image. + +## Notes + +- If a bounding box is provided it must be compatible with the image dimensions. \ No newline at end of file diff --git a/invokeai/resources/node_docs/en/expand_mask_with_fade.md b/invokeai/resources/node_docs/en/expand_mask_with_fade.md new file mode 100644 index 00000000000..8d4eda199e9 --- /dev/null +++ b/invokeai/resources/node_docs/en/expand_mask_with_fade.md @@ -0,0 +1,9 @@ +# Expand Mask with Fade + +Expands a binary mask outward by a specified fade distance and applies a smooth fade from black to white. Black indicates areas to keep from the generated image and white indicates areas to discard. + +## Inputs + +- `mask`: The mask to expand (grayscale). +- `threshold`: Threshold used to binarize the input mask (default `0`). +- `fade_size_px`: Fade distance in pixels (default `32`). If `0`, the mask is returned unchanged. \ No newline at end of file diff --git a/invokeai/resources/node_docs/en/images/blank_image_random_color_noise.jpg b/invokeai/resources/node_docs/en/images/blank_image_random_color_noise.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e4b5519dbdeda2f394276766f25bf4d15da47a5d GIT binary patch literal 91035 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 WSJ@uHx{^d?HN7nRW$#Y`Kmx9*E2}93 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�WS2 z&Q^g5oK2B@9*WB58N!2!$Y@`u(KqZPbwE=*)Mz*r1&u6|y)7#&9N{qq5d{z{`Kepj z1h|qVG}(|`lHL&bl$}^zaXL#_FUiemBN-kEWU6BtEk;X^3uMMIylZ`ATH2w7A}vp z)c-F2jI>l=w*?`=maeGNTt6nf^Ri!Ve5~}|mxhh+-_^|h)QYOL9}y8@H!k*PRjYNc*p@WZLL8y4|7Ra2g?RMMY^U0XU0xJVvs>uoy z!r~{BeNk{5?+`T&mSHVJ& zJrf6P1IjxZc5zNQ&GAx{Y|hM%NT~{n?h)GFghT76lY6Gc;1Z7v977g1TTN zxZw@#nbG_l^{w#fFn9D{NcfYo1^|Vq?94`Ad zDOl0QkC0Z_`OiOkQ{q@}x#IHGNt1E7wQXEz?c=b1_uImB-D>#OCVZREJj!NSDvjBL zR3z=pJiP=ZJKzsm&?rI^05(KhlSfM-#zZL19k->fGYOhWz!zFyd(Sk;m73Qv&`E(JJGqLJ}RG1{JCp9 zO`&gB>GitPk=s!HN{1N^8l9FZvlbVS9dBGrF+d4~yNxyR#b|VH=5_8*85LD#oC_LR z2E6A}bOp>RUslb}p80a!PM|6@yAJ1wY*G1&=WZMoE-lM`kvKxWBREa#9NzULoaUL! zB&<}y7dZ#j9PK(^4JkC5Or!OX%MGJFI0@}i_tICAu(9AI0MZId^v{U?ON*BoX*1<( z3|G&Q4`-glcg6%2fvRcIl7J$*`-TRd2PFf(ZA?GFF`aro$}s5X$#p5wE?!Lg$cc9G zeJY;2NaunKvdgJ@HK&`$mnQHkB1-lfrVJAYw%o91!@FCr>!pJ=QuU)O3ARoJ3&8{{ z53cdMENwYjYD`da~0N(kecLfN>s9C6cDv_UG=7y)I3Ufn!RlM|| z52Vw)(hi`92$AI}#1>g=T#-^Ppb<;2EEu~0C?x1M%jKw{sO*QdLbvS}>_9u^dcXh@ z#7K%>qGR@?qK(b9@GHR#Dp0o#tx`W_jRb<_p*Hq;`^wQ=>%yx0aL%@bFQ?g(*4rxV zSKA#A@YZt0XwDbQJ<1TPdm6;`uORd3#l6jTX#Gx8s=D~?rI=?GPmNGN5-NPY#KjTj z4PxShXt2%|63#1fn_I=`!Am8q`Ds@3+jts0(JUHW6Nh$WSm$DICZh?0XmWH#`s<~C z7SLd~$aSI_%$bQ*L2wigZ0?olv4S6tWIYFGK(bL=gpH3foyV=I=SeBTSVf6vB5PES zk`8B9@)r;ukY3YNG!N>YJQ?O*?diJ=y~NL?(P}iRX3 zs&#luLdzmqm@P%q0_E%+Mx_H=-LdT!^78Ph$akUga*!JQ$8v8BQ>dV#ogeT+`jNloKz5@mmvz#>FQ?yH32K_c<>6(!3sN*pzT!ZS!DKx&Xv>g`9iETmT+3 z93et$1pF*e8Ffg9J^B7J+uPy06=+2Ntt|)H_4gTiH^Ybpjc3vem=Nk zDX%BY|F$h&tY#EgWj&fC&Iq^Lm;GAO892j46hu2xG2AWUYqBt0%xa$+Ki@ZBID5ED zJ_CDidKoPhGU@FD5A~Q_ZRB89jxWCeTxZ5k;V%Fa;h&0Bp`ISe}bU_c*Q>_R( z?528+iR9{|qBqM4gUXNIs#mrzv)g3$EUKw*s~tlH>C9p!ax@%-2X}EX_CH$hVO=|3 zj#*-8x}X;S3Ocbw*718K!N zEh9zN&PzPYh0(`7zH$_DzUt5`hVxjh7qD$&rFdjaRV^9it$EmOpjYHob67bJQadis zv5|4D5}jTaRWSRl6m(=9|Ad0YV24zUhpynB>V`Dx!`zb9ls{}DFgjlI*d`OAhe;|& zLl+kUs^R2M#hZMKwd5T>W-E)fj`1gv6`E_6a}>f@B?J|_p`@*xrgBA+g`Z7t+|PZj zXJ}|(1Je4qe*w5uM$-YUrZWc14|TNOMwcc>yxDR&QfWx;w+&zh;7Ze|rF+<4n981K z2}2ySY#AMLJMvA}napsg*$H%mZissT^rPi-P+Mo5!ulE8jX6kJ;359^COA1~uXI=Wn%4BwJy{vZ|Xf zF_CavnQsS8p&nE!Pn#Qz^~T}eq$TQGV$sf*mG6tCnYSb?dS-bPf#HUu9z&s?ra~FM zc8rdUBa=1FkN{PPV~6o@_H;GtR}gW4a8{6$yhV&^qZ>+6twn9XWzTm;=M_M z+(~IV*-_$%?48m9Xf{r+a@2pM^eBsJai7oJ_5P~t%{6{o_B6MyC-*Y5&j{fm<-q2` z&07eMbEpv~U(w^*)AU)@`(a{5F^`zv>e~Cxz-mpkTHh4`{a5_@>~0a11z+-SgvoLJ0`RlSGz%Snswr%YMR?QYXn=S}GUL4NSc%cb z&06XQKm;%s0Gt4jWqOlfs^UlXc;e)T*1V1D?!4TYo)cR);Sa`35dtFQgri|+Oxs-O z58i2h#h|G=Z`c+Gb^$-6-XOv`N1KbKr)<5u{|Q9aO0t( zUw)tO=eX~p47}GwqG@G+W#Hc?J`Y+Gu+=Ec z3puiQ^xja4bS}-t)Bly*`gCKl97T`*d5J_*YNsKW)~H3p+m}w4G()p07l^`6M^T*j zTChQ{T|Cfmty)B993||!iZgG(6OooURW8ZdxA6u(tb1kz#$Df$6+U}xFVBrW{Qg|c z;mh3qzLL;2fvg_wSQU<*8XKnmZ>b0qf8*oX+J=Vd8BKX#zn&ahGe*dR*Jbvi;1E~&YyhLxBJ!EPjdeTtg<#^dfAJsLFhn@726 z>QVUUR>mG-IYm<^OZc^LCA{w^%hLAg-*+TXQ?Cl#$O<@|J=P?75jjI z3UP`O0uapbV@A_yE50uWwe?yerjNrUgs+?UH-Ovn-W2-$NpES^Z!trdJBQdDR`mbQG+@rBjY*cWDzFI z?^Xe_g(MaakVoZ8*h+K~LIFGeda;Fba>lMP)i~AmxN2Kp#(33SZCPY_{BvDjQxnD6 zi9iNW$#-{K7#-6wPcnL7qR}B~W?2(&DCiWBqNWi0s$8gtESQ-yku2Ju)0UGA?bVSN zqG-H8Z~vuBqOaHOW*8#Sg1dH{q_NET;fqrLgVqbc#*&ZUzz{<$&3)nUnJ z%hb8g1KsFhcTflVKjf*-GfJ8rFv4B6UlhD779Ay59c=lk>NPj-R?M*MONp?lt#L)^ zV>Qu_X|M(lcit|Uus0dom3oof`nhcNRd4S4em9sOU1*ehR*YxDg^ZUCE@UCc^j*Br z#@)5k#GB=dGr1#yERfkUbh;Pwe)Cng_=j#Uw$tdirpBT0jPj43r3G9=m%pl9adxY?$#19rnBc z18n2UM|)8|A7ZaGXga$sV`%sNxaO3%)YqZ#D>w&PmW&!7rCK>$cAYfjix+3R^revB zg@n`JV!pYf8(Otmm^t0+o%<5%Fq1j^V{1k<=JhvF2ibIMe0HlnOa5Ka)eq$x{w?9i zk_1|%k@uV`!(C0~E!B9N_S|dEU~vKrMc`q`BMd`pp&fJhjLua{C1%RIOD-3Hx0h%T z5-So%)dDKC>Jk=Xc&7o;(*`}!eCk@X@3C>gzR`PnZ4RSl z){0dS2MEjZ*l{G-Aq4KS5*=7bi(OT-Q{ftcL>hUm}+#X+#?c!DXg5P0Wto{W!p?o=GN1 zZE9-L|jXg3imIW_g$RTd1RB*f0=Dc*5 z(?dB$ki&FV%BDR~rFCSX)O)QB#tiP)KF@S|v%6bEjMx89GQ%9m->12pTGCFdT@sfF(2kBANQ(?4Z!7B}C_X|MsKi`NpONj4em1AX z>>3X#106u@ZZGkJuRO8x9~5#?3mSN#r4+cRi6fThN9#2W?(;mHFSF;~w?@ZLOY-(^ z;cEoTO`{No(huj0SB_U2U1^Jr2PgVD^tqQuJUj}+T-xns6a;|^=hS!;o?QF*@f!Ou}0tsY87mB*|^jCQQli#QmY3@uQEN9b$y1K0boSLob0!R z6t1Z{B~YgwPJe>{u9jgnM3t7L8NOXs&D9+$6T`hN_bmS?zIjsJbmrUdIU`QZp|&2k zxo!3YY|(k-e`hp)b?R#@fbShFMe;y?KBNWW@AcS!SYJcK;QXv3Z7`_gMSt$L1V7(u zihf;6ZR>A{?C|o>8qOpM;kS(8KF@dJF`-ck zh+C8EZ;U>BjKr4+to3dA-@$HSk2{Avu31*Rg``?KQP1x6%x3t1Pj-7<{Oa8mA z&x5K=2obbu*iw`*B^Qm-YY*1*a<$-9y?6$5OKWE>o=N?W*oaP}fx^TRa7-0mUY3ub|Cs-<2f&o)=4TXjXa6xdP;sI(b(OhMJ&A|* zfl5_^1IBzex$kK0*b(SV{eXqUT|!-GT|Rd~8KD@M-Qu<66@oJ? z!|7Fz)CdR)Ir^;5^M-R!y?oMo*pHF`B4qcYpjP>3O zaEKp+TAQ)j&9lM`ZMUrUctnR@Q+02C3}BH-cA9-VNPJy!_>OxGAyjgYqo&SyhTs#4 z_5Li+YGsF99+A~Rd%YNU+Hp^sa02)WtP3xzZiR5&`wA)YK`VMNAbrX*+)JPC^yUYz zl&;uDPV6>HO}jK`IlHuFYb3oa(U^}By^C-|!rvdu^Sl)XSvm+Xt^l~2V|^kIIM?<{ zfFwU7P&C&K4Zn$zoA3D+MaE&52(A--(dVoeq|fdHm;w5OtMw;~rRvF@r$;Iqv)9`X z#QY&n5~gV;A3U4p7J5y5;2QE8Mp)g&AzHrJu{X;NzA{$T!CG=-p$J~T5uykDY5Hl{ zp(EF50Yj%|DK{SV9IweTRhgDVY}*m=W4U{Ft2ImTExOe;5aRiftUkr^WRXxrN4LC- zx*!Cx>9!b#jGyqn@rm`0g?V)J{TD%jR}S;_EAhkgj1gKB_dJT-$&Y>vKc#=g!o&RsK`&@-&G4(wuMi=BviJ;~Bkn;aij5B0ZJT zOUv3BL1nhX5WjM;Z^v{-NWp?1Ok=ED2)Sng5{vX()#-?Nd}m<)ZrEWFoPxDq2lr?O3Ai{q_zA+NR@j1MPF^Jp?zD)?IizD?VIU_6C35>7 z_7arhCv-Zt|Fw%-VQTPM&t2LvX)@kDmq?39{aCOJ3KT9&v>HWh0Mm+o-hd*qjEX7i zA$8jg59)+ogD9c4^%is{B|!Pp_7sxAZjca%KpkfrCI9OxbW zpr!JzFdp-=q^-V=&)ku$i%`pmh8>enq&~6OPT^ zC_mqhI?eo^l5ZOu=$;$4YDkVgXP4;2L9Akr&u&1ukW;n5ZpDxbZJ_?1MS?3G_5F=U z%hZXHW{u^z+LKMZ?TBv^l#p~NyeF5lXp)OqsH*F9a4;}MdDfqphiQl`J|r5lIME-{ zQAU3o{uUX3=WbsI2`4iACyoO{*l7kd)WaT)TaL~zaoWFAQR#WC+xBwLyT_+%yhfwc z?Rn#vu;q1=In_~3?q^Nu(S%5AYCqB!HSx*uX3j|i-gU?6!tJTmHJJ1YSF*GiW_|<< zS6>UN^<`~C(je;2q8t10eRr3!YpztjyFm~SD^#)SSYzAgBK+Q5G`U>gY0Qe*jr7;~ z%f($LMnm7uXF8fu?`{v>E9Na27+^bWRLff}_4R z=U!JkgI?#QlMn+*Z0D(iASk++MEuzki#F#)3za&b5{Y`MzhRS|_@^ zXeG03p{v3B{&IiT`hP9izm{u%s>sP-MvvKv>WF$J;kKTYF`k4Htth(Tv72{>4bbgHFmbBlLkMAKX5`0>6Zd}I!bB5I6byq|6g~qG@@cYqO`Tf=n4Vrs za0yp&$AH7p&x&<)G;$pA1Z#(W@KyF76LN{z{*GIS)H?Npm>?KtaY^`$^a8N0R8&An zehLr2UCa%+-_kkU#XQGTq07>(Ce5&3aAbx3a2dMDwp7kEv4C@J-dFnlw%uV*H$gpO zgF5|XE1E|jj`>(8-r6YHi1eo#-gRUaE!xU7W~MGiu0LU3=AdGexIM2>oNy6V<+&fw zup(8f`5AMU=o0q<_W{qWo{1mNnTj0(FN}SQ9HNXcoY?F$)-IY=W)S)m9_-QffS3jN zT)A`+8stxj(S!#c%E`QdkM%~g9J)C7RjMK_R;bCGwfbB#aAQhR$JNbS&+YtrPr0PD zP4iGg!K_Rj3lS;`7{)v=t`POGk=1Fz{bt8weSov;6@IdOmjNH);8rFu6DlgH*eVCB zVTztj`oZGpky;nq^MIYIE$n4RJxA5I+?p6sd11!>n%BrAJ zAIzIb9u(HsBzC4U*?cRm7cz(!Rbgu>gpea?h;dIQ2=)kF>HGNzWGUUasqu9g*)P2{ z5mph`BZZu=EC-0Z7|%Et-mB?MM+`2=OzxSHgRh%l#t?C~o1r-IS+N2ojw0h~SJTez4iVnhJ;%i> z_IJxt)JoGks~yVvO^VX*|<-PU8Ld&D33Xep%* zrF9h|hkd*B4dUD?H(KI8l_C()BDom&a_5m~QEt%Sa0U&;y45;6B>^rre@xhfP`y{$ zS6dU4?+%TUXFx!0jiWsAO0^>+-zL`)2$A&4`Um@0@a!vJ`7?Q>R~rel3Y@>7fYB=i zhPB?aOTjkQC2UP#Om7-1OVNC4xKjRulzqtq0#bT9Tvv{gDh7?B7khoCv&Aakch}XMvR9s^#kDO{cNh5&Wk~&aBR+H;tkRimp*dPJ>B+areh*Y# zNOFV>Bwvd5L4*%09k&kfVGZPDYW;N4$!ch=_ArRz)eM;t2}k9l-arj{OfEU|&!&jj z!Ors^;7hG~a+-YfawfRali)tW7To`j1r5hWLRe?G4k&)bdz!xadw{wqW4Yh_?(OW7 zfZ}I%b^3Q&rCE{@nc|HmjdS+bx^aaMco4+Ek)~&aSLy`F=yppn3`(8Ro#Fjv_UWPK zX3(J~fAglhcN?yixxgor7xs4+KIZ)CJj0Z>%1z2N&=KD;?yPS0HolX9>cTv6U7jzr zzXh(born2d0OYq%!hw~-@U=O(h)E*7D|Z7y{r;)lm@SRnlVi|#eJdsQP@#Xe|4;t> z-y}b@^675&sd?`c{d~epO#{B(=MGRn2EA0yxin*@Nq0W(B%df672;Y$Nca%_+g0Y} z?O~8|xP%2U)P@EBo&Q_Ur#jDBkM#jBGdAGTQoGp^Q4j%6jBj4IgbMV}&WJTRfrrZe z7*F~^TS-CTPeFQ@r2fumDwlFfT<0PK{xv*YSIgC^l7U`ZPa%u&rjc((G(CjiGKooj zuHPT&RZJ!ktV4sq@KZM=*E`ued0;k;)UIjG^z)u552=wYtERUm+t~(FkjZ}H>Q5Ar zG4^OGn|7u~sVG90mbAfcW{c#L*2g;w)m&M~^V?^Th|?LZ#25~xq!`*imfU3MYoKO>-0^5G3+!Ukv+t91z zD&=FVMWKB5yH$?JIv&o01Wh+#sbi9I#?haUV-ATLmR{+o0DaGlJuJ?G^4;uVcws zh-zbJw4`|!0PLj<<5;G}kT7{(s9ieoQ-^N{GoB3%A1a(BpMuLdQ)NUV*oH+rxZv9PS8dNH`$b|iqSmQ0P zi>ux0?iQ<0Zo;?vMyssr7|(>n_m7jHRx(YtMz*aXT&q3YSrIduPNL(+663Q z(tKYiuXlq`Pw_^(=iUswHQ`gm-X~DgH;3?;R>tvisNLpA?uraU3ATPaK}luRPm%@S z3+kC4$W=Iup8yvMuynZMGBlLLX^y?lrm%J=b}V!cdEbT*_WhQ6y2UzdBeEg zqu$nv{e*H<>F!6Z*BFw8j!!7~(c7_IDx!xJW%*pSV3yn9q1I(~S1WJfJEaD}J{@}E zX!Ot1EmHhcP{GL-A21B_VIBk&E6xzXnxpXft^ zBNMZ5O%{|RnOK5NLTzd}lfq%HIj(v-IPY1vR=!k+qAHY{KE}cOpPE|V%Ni`3b^N^43jM+|i8!Nh*7_kYY!@a%bp-cNo(&>-xxZbqvveo3;J7ij zh2>LyUz#g40sy#1WJ;?X?rO z5CbBWp#Nb(HjJF2J?EGH0y-%E3QREj5z1QH>Zi3QF^M2%kGfu*HQncWW!r=S9)43K zMxLK$HvbB+)Q&OsQ-hKvv|Y>YycfP3hZp~ARl@6WW%<8xPTYhv%13|)Pv@((qe)0M zioxXkuAcq#p2M&q7dl}Y>IynrhDQCa%A{an8vc#&Zl;XUvjpe@56<@Y^+rn813eWS z?-6V^6@S9D^t-Ck4+BK@7vLg)HGX;Fn9u_2@9RQ=-7O4pg!dxJ6&&9pT5}OUY7s}(hmIVO_ zWO#|nh_Ms$e|=NJ#JhtDyOSS#<^Ki=L08o?LLK&a&+b44h9*5h-JUz^X>Q>MTz>*@Wmd&_4ja%>1CB*XACJ3KJ(PrEB5e{ZdtI{n+uZFY&> z(WV#FkvN{tP?y}ao|od3t$X2${572X#Nvnt{2DlZV#7A+RsYJj@Z4B(0h-Sedc*Rl z)>?U&>=vFS{dR*^CVL+@gAL%ck8%Nd#)Kz8{<0{ww44Ho&q0|y*JW(r+HVgdjX3j! zGA=K9CdD%c9L`?`8fC07AH0~TO;~uz%lM<$MK*+-UfuBHDd2&GmjSxFYH^WeoR9=` zU+tJ`rK+oGz5ePC9?|gO;pPX$;BfsIwUJ$q2iL6P2j^A=4k@Vg$K3k|IJdV!+x%Y| zwOU9!t)zz5&yqq#p468#d89p|Q6D$RXs=Aln zyZ}6>J>R!^v$uV^O~&web=pB7jJrMznITrQl&Jm%_L$~oz|HJhuC{5MXDvcA+g`)b zy)X7RM_zIP&bQR}JC80E+4~4(WiQkuWm&kr_NgDJ`7X#FBqy&2*#C{g>ysig5C&yeVn1NiICV!OzfH5<%SX7Rd-j(uc6!7E&Q19>X?xX zW{e5WYr3a{QcitGoVKKnH5x@v_lPiNqr4Nz$L3AIABj!-W`)I=Dupq^7C4r;ll5vp z)S@U9H7edzPis*ltw+)SqmaYxe13^x2J5DaAx-Y$kRR%V)46xI-n#*!TG!jcNPTmD zha{2Po5eFMnu?xhNf1&Ba}>tkyeX~rHKFR5oK)J+J|J`XIz$WtymBu+JkJxahp5qn zI^wz3e>iltHMSaO8|ikly_$MwEV8`X8 z=TbX6D@&J)jpAkI?V#5Vcj**!jRtH=>FSJ3ruJXti$r1B57(I2V(nMqn4P)iJJ3w* z^L9N`y1Fq1kJC98&tAeSvHPkx#- zoc}JU_i8=z{gRxT^lAf~4Cl_2F`V)yI< zuyv5_ggN$FaaeQzp&2D$3}Bua#d=si)xL~o;x5+!O7B%%gEgo)mb zE{NW{(L19KGbZozTYIm4R@v8C>+JWez0W_&aGB?s%Y5(q{N6*@Pz5b z*BX#N_fO(t=6NC0Bv_Juy}=Z1b*i1tAks2NvU;ih9bEJJNTr9K4_zz*YXJ3GD-@oq3-!+<1`FYO!-hR%JB{2M1{aF@u_21=D|LV`T z{N4Zx@3}35QB;hU_#l86 z{*xH)?w`bPJdcv^5U9x!$c~o|qN)hY&AXsHjEBMWuTHw268!v9i7a;?xFCzek=TR( z<12#h|DnfIsaRnN6A+1;m~h?5_L4UHl(O%}{t{uG@6OYg|F>T1W&`U%q89qX zR3b>|G^7F^)y z9x&>opEbZ-gyXSMfJ|3kWef^rUsRuo3OT8qPt3>N`O*l-GlqAXA8o+*Yk&wR(7`VS zz>bj#WMTMs0I{^(7sc@NQ~Vm+eB2SDkxlU*K84l^aPS@NUjCAA1g)F<$OT89{3gKI zfEeKefV-$^={Ldh2YA~9OfTM_>hcWm9kAqV0o3gJ4ECe154gYS*!wCSVAuNF%K(zA zU!qfR7a;7O5MKJvxAEZg7@qFGaY)Ly;Y5jVMbh~hzdG&XdQ6{u&THr-pi_9vYeO7x zuM&)!TVR537&zf5%7F_w=@oK0>{Wh~nou`+o*a4c^fv+i1{NKzUY5GI--fiU3RUlB zpPvfM0+MpgP0Vqk^wAJp-M>Ax(MaBlZ;evb8zqmo9x-XE`D7^l{cEy;6US2GUZ6vB zt7Vkmo&L0h3rw0C-_>iDYI{bdr0H%yVlon?-Y2YFEM2dxhSXl4=G#PIyu3OSe-ntb z!51Aefz}}p$TalC0W~oD74kr00C>|*fW>@28=NOZUO3@dXVCfh&@jMWH3P$ieBwrY{Y`+HL;l6BACLSdAl}CeUk4pTOTf2Jfp6o6e$|J5 zIufS?guS=nwp4U}W&$)12y*{6_~Ix*4S?j=fyD2a9hAWMHo(-~`V1e|+|a zGp(Wqm1C{Ue~@KXUOy#2|LnQ$DLPW+q78nR!Wt>|U*$ydQMrcVy${>iUBD5YKuW+@Si>tTMHLAzL$>JnTg(9 z8aUg9f2iED&fIrC$3I&Hn3($B)$>eMVA4KQ=?hDM+ z(PEjh$9o_92EV+9X7m&y-PQYS=9?oCTbbL$iexr=O_8e+H$NA!2}kePZix8vi2L6% zW&i2M;UzIrvQcuEBgZXRnjn~pm}%GG8)bf}w#gi#FnkR9&9OXWb>D$3gA)BUf6?F2 zsbVv7{oP9ozuJ_c@RKdRtp!4y>TrYa*NW5FJGBuuzJ?4=aSL<)+sj7D(}%v2p4F+U zjDwwh%ygWpEi9hwl`fWLTd*QY(em1{-ioJ7*(ugJ+mto1|{rk;EGYH!koWLe)S zWF&quu|_gm{OEm}&!|_5mVx1bo9vq~S`pPrF8iPaXK6XofuRQN983_A-E?~Kp0Z~f zH`n2|PR{+>gh5R;S;@izZGd|!R-h;rvNG`XoVUW^I4EpNZ8 z^U|qbp#hkcPSC#z8o=phXb>)J?>E6bJ~&YHHGtnIF5BY#VCwkh2k;G7{WPJc$MC1e~9z1MJ;#klS!16qkqiShTq?If9p$GsIsa4wD<7m0#|Gz};yKzX{H~{g9%YOxcCo z5A2}WUlnhiLmJIXj63tKl5Okvv`)6o71J!BFAubfm6r5y1AM$~!yOi=r`4^$;%>r% z&$PmOV(#uksJX`Ze^)4a=I z1l2~<$zjPWeWadg80lJaKka+dU8pIZwW(n$nut~ioM)bJJU+F&*Sf&**3u_K@q2M4 z(8Mq`NR22ueV^&7xkIg~Um|*#h)DqRwqP_+;$xL0qkB5ym4&T$K|Tqda(#&A(!(swo656m;zG!qEG=)KuY7-!CJBH7f8CxZNmRisXBsWtk{NjNANA!)d zQdEu?mAALk8Lh<7NQgGXLA>Z*A9H(u)E&w^&2dH&Alpv<`p*I?ql?LY(Z~<1BMLrR zA3*#`pLQ>VcIj`2qvVAk8Y0kMEYu@R&E`Gtt%fVY2{5AJ+CKf$w`j8*_c+?*(+7NE zhcBa9n?3ob#?ZxM=$L<>9?d&K^RgAS7=!w5#f8%rRH7 za+>%0O=Z*LLIUJ4DT<#2N(N3>OPi^m!F`YQSu(rCk0stMLp8J?n?Bv*IS!qvT^gn7 zwPM)bliyy~5NNt*@A*oOXAy;JxqqdPB0r%gzcyo=5`G<0`Nk-qkBtY-`6IC-;C^NB zVtU^_c6*utwXJd)~0LDf@*SK$*Hab9Gam7LgaH;^E_MXSL#3$vhw@f4GP z%Bt}uMN2KW%3#x#HW) zK;RQxrf~^;PBHhJpz-o5fz8kpT0*YQ0Sx9K2^O96ZzBM>XC4_LwfJ;V*irv6~ zzP`K#uFCFaMS2Lh4o4>Q@|ur_>3-IkQ5nf#X-d&Km{0OmAU~6M-*;ClsP;Wg&`hHK zHdo7bd8-W5@x9hr%aJpv(b)RHl1(Y*`PavKI{ZYEb1%HXPY;Bq)pcWM+M5`HVjuC< zg7(vMz>%q|0LhPyK-xh9osDPJDYws~yd9MlVL`-{?N$NepV4c^2wKdtw)zv%Zldqh z-`Ijkq`;<~jid%%ePs3vkn~_Wi`>}?Ersv{$@XGVg9D9L`?qRt`P0I+VI~3RbZ#|1 zD^&dr#?1?r{wZO3iOcrrP)|?Wx9XGZsX`~EJSEsnO$DG z5B9jO3+iWH~B9BC~!9;t!e`}pi4Q0#4FZUsJuGrx>Amty+#SbZ59jh$( z;-E9_jpkDnpS6)X=b#h7aj_#=A3!~tI4~9vR>4GtdYhENh^4A3peVyH30U=vV4jIMtNnTLaX*S_|YYjwQ)BCM+LE@ol|Q9d{R)UgGHveFQ8D1O$BrQc7`-l2jKk8vO;}uqbKlLu2H7j+=c-vhM^tx; zuGCd4-wlI25;fCaqMBw0bcyAVuouSx12Xz;aB?-?8N->XMq4@{t_56I9Z}l6l9uKr zzGsE*c$K^IO{!#KWG#+FIEfU$9UNdY5!nEd43d)+ig=09T2i06Zm4@g#bDBsGqYzw zr|ZyGaVRQGaG#JP@@ybn3);koae&FGeVM|EC*wJ>Qa_vo_oRLjzq{rd(^ViPA18iZ zjix^>A6MYP84Wf(9x>fi&u_b1TIL%kF0l82Ry8zsa8gil>&9~BiwOl@%xAOs)QeO6 zWgN%cyzKhH{iYJL;i}4SY_vQhUoR&?aCMYW2pee=eZYP6`!U4L1U-j`%5Jj`N^6os zpT1dN7B*2~?tXkN;e5AC$nvEZax8)orxD=Lw<|_>2iT9YrhT_MOTa6f3zTOgT;5 zYvNBdQ^Hpp$Hle+=Y`Q*`>F(qtJr4{D-}Qdql(D3w%6~M^^D6aF2CZrw!ydd-5EWi zLS&7;FA3M*1zh%Bif1ZM(M%h1hV}lX!kQ6Y4&GU?Hg|wd!_y5+d^UTk%N*M|s41)l z0D}g%|H{hnpV=G!{V_Esd=vOA{HSQ29Z*2cEnpW0b(#OmO{>j^kM$#_QxZ242(P-vU4 z`%&Zbv2G|^-J6b~R+b&q3MZ3OSypYI_K)p-llj`2;S9v1P?xztCm6aBI(CDMu@R;!K~uLM8l@q>tJ2 z72X^1*+WCdfnBS%EY0FIhj5jQvrn8oW_Fo7*-&h0|Hhk(3(?3*kQFW}09cXm{sb|G zJf<FCXc0B6@C7w@{$qx9$&c*XTpn4`hkY-WkA)V zdbc~`-wd%UXsc%VpKTCuSdnM==r5H1Znfa6ZYQo+QPY-S>LzU zb)HD8ai6@fg_3@z(r2?#!G!bg z#Y3-1`{+|Ddut472{XJmc=v(LVch1?a?pIiA~%#M+h>Z_saaELDo2i2N#`!>?Y{s?ttxuV1cRM-mp!eGu*}Q-ky4d zb&p6*r^Nc5*oNR{bcm@Hhyf>sz9D!&`KKkn4J0YxyA(pWV|M5Cg}P-QUfPcxEffSzSK8c<5o82zPH6Yi3X#;`+8j_UKT8r|Z6W6;iNiE>) zpE$maIZ*orB!af;Q=!p9P`|^f{_=tN8mK}!<02r*dI?r+Ri_~zX_CvAau_EYxF3=s zzdh3{Ovx}!>H7rHzn&PI=O1hx~aSLn%NHn(f*&*AHklC%=w%%tMm`@ZJu(<;}E4an)jzudsf6T!G0Qwv`M0 zSWG6$^xNbXQ&L8CzFnRFm-Ccc_WEQ@NGSd*BKPj#dSL zep^96Qp7<<(m|PQA7#&p1HTjEZVd=ZEXYB5ZTN;9wfO^hiz4{7@jjiOYeUr-gDJ3? zL^;*OQ{pfwh%=h1qRfh|Y@c!K5hBkwvjq}4|6sVmDaW{bDdzb`yr!T~@oJ5oC05MR zuR-GBIbG4BQ0%Epc(ejLCeEz1x(*rUJM;M+X}jSNla2r0HD?8v#BH-mqg!qF2X526 z0A*pSA?UpvhrG+Qjfq=j-+mr`N|8SQ=$92u=`x@MKnx-Wd*N7dJ0JO^#Mefih2jnB zj18lfjmd@|$?4zxV3dau`0B5$xAon#EO}DU6GvBEAZW!-_?h@BNo_YGpbXvg&NbqG z##ZMeLWP%{ZVSX(PoKK16=eRb72CAhS;0X+`cpKBJ~aokQfi&867 zPPBI?F6?BQ{aHX>(c0FD(-c5>Jjd9!(`F}piG|K=z zc>C>j`ow&NreCvnqUYR?J=$Lq|B$+yD}kr>X1npSI?BDYeVuf*yqAk4P;`KmZxjyog;LSt zNQVV09F#|lf(P`2t$d}4K)kx{FO*^DA4%8zoB$33Q;YR)!x(o+kU4Rz_f(A?(Z^E{ z%)hs)l4225-8JoM15cK>;;&XWL2hC2zX?q6gVi@pCNZwP-4Qppwp#5D)bw=kL|pnq z52J0^k}1p9JY6;_adE>xV0Dv`BH?^4Df)wF`#Tzv?em~&hWFD{bKZnDldKRCyd(sM=Hdm41w+0KJnP``2=q0Z z>?=2Kp=rmbwk)ND$|PS-w+-NB;q6gW5x{a02x{PV+^%d<{W~YI!u#<}PsnE$wbHJV zRTK~f7Mrnh8FrfW8^J#vSMt4@UEF%KUt9I9v_O|o$N8$?8CD0T)Q%TK)3;rM+a~C> zp7_HKOg;yYzZ5fg6YCc4wnICyX`LD9Cu_+KtMGlOa;M_e4>(g>BSt=Jo~%lBdfMBh z!u6r*VGz+O(N|eK_$jyIP(eO4jGacEhD2kYYmL5(iUBjRcrQP!LWp`xvg|j3!;D%s zRR4^yWQ^VPuoXvmkNw=zg@E-}E{p!CIWgFgipmdq;IR-cr{Q!Nx(xd;)lKdqI%E2a z_C1<9J#bmp1ib}a*^dEJ`8`4Ro+8HFV<@4}Ij+_-B6a$5liUZ7eyVHmhkjmVJ}Y!w z;f+o`hEJWL<}zFMV*{j2jbP>v&U2kwQyb6rxsvH;I3C1KZIOXATZ(pt2yj*h#JBq#uBKvKCimb9gzt>89TU>v zeTxb?w*w)RQZf@XBSy2`Dr zVYZMc&wdKS2%%M4F2bYejcejMWQg%BO|iW%M)s3Yx3y^;9>u)V{TxWdeT+z~gh#Bm zDcrUDo?BOqj8wXlF|Nei-Zd0N%m$stfzTxF8I+BcqZI-=_F6`&9Ph}&tnaMbkrbRT zvgn7wj#_SE;yUzG(}BH>Zf3uRyX{<`J-W}4SY4t&l6t}D)_Fq!l6g6u)IWnt-)*Wb zGTusTPED_n{?O)<5Us-S>O@|?XakG^LesMy?~cjI5~G8niPcC}n)Ly@Y1tS~;B^!V z%i{r+_22Y$p;bC7ndG=vEl@$&W#((sNQ+5P9~ZDPSgfWGj7z;`ksyknwPh%&d-3#! ze7|?s$8E99sWUviz;1v2B0yiiH#9B?*{OQY*HCifS9DMfV^1`t=UQ21+|*R%Y>y|OZRX!IH^>v;`{RKG%4fquIFvQ6*HFOht={;X}i@(<{h8$cwMrzp~X`n|6`K8)lJ4Ik&3@ zx)XLe6^L&I&|=o)jBSh6ZpWRfiD4lXs6EMW+2G|+w#p+icZ3>7GU(MZfAnvH_M$&R z4}ELi>_5n%dn#_)ume!yC9k(Ng@;n-@1v9Rm%5V>U$1aTtFkj&nzz-SNq?8&Mo1JJ zC9Q4gCOVwh$~tQ9j2%?t!ixine-mV-_R4G6!;JAt<48SV9MiDQ_*#1N!~bTC|J!k& z?s$I(Pyn!H@c$+Vm^fEA7yfI?)#sBfc2)tNC#*?JcW#)>J1S8I=lz&>=nu zva@AL47TB~WM-I;|EfL9jj}^iZDZ2CU#!+nh^biXWghY{rv7gZ%71$FeL*6u; z9FUWFbHI>CtUP&7&e6h$%FRp~OXnwl@FXJxFE=5StH554gwjwf?0p%@dlSlanNJ*O z9Ox>X0R;krTQ6b}g;7Jfag>H%pYeHkaJKJ2(B6twkNu^&M)egbs$!f@-$KEa8Vc<- zbqRxxbyg_#2hSN|odYVr^UAo`dE8geP-}WSFO8OnTl6I=+0NjU5zL6De-p#jO=TLH zr!LCEMxv0kgqOX{_n3Rs{oRjovGIwyRt)OLn1{Zx5+8M($aUlOM8*L~K?!mxE?S&1 zFQhetsXX?~s7^tL&67z=wd<2uMtuAC+@mAWZ?VUKb`hftx7iOn!`~a*qd3_uZrW}% zI=Z%YYI2L-%X;83gDz2?15>hklKsW4Av8tijyjrWY&BfD{8s;(8oT$Y>Mu=oVQYf4 zL+=5jlgyhq#;8Syukl%h>QSGHo5sBS0)t$nEtnZMzFjF`OFI$Y2bXJ{MJaH+&RNor z5;D4eQgiki52}`R*x~Q)DL?a0BT#dydvJ|%YokdXBO*it<6SzYI^KQ295Ly^OVW>g z=7u4ib}c;k)gZ}l|8*cS{Au~CLbFZL8*d!f%Turis?YIZ1+$NBg5Jw28^>%os{kx- zyCfUmpnm_zdUa!@+?s4Ir-^4T)h7s&eY*BUer>N(r3nUIu8#7Py+h?Et{xD^jH-{b zVUWhbNslijPh$`E%JVcFmMBCF{Kka4uViKLJU=|pvU~>!3V`7`; z9o9Qfs@RpG5FF++eyPV@Ua8hk=?eXb$#;I2Ki$(M*=fR$?4%`%&!}0^<7z94acghl zi5wE=NxoIg{|n+vF}C047R;6C(#kVWN@tB~&h>+W<$d&=qQxl8RVrYP)nz$X zy2Y$H%+aiTJ3&LxwFOqHVFd?KRyIWaTT zv;EDkKQC|0T|u+TPJLRcl?@Pv;0E!1H5KUl#csTryep4~BnNM*oSzhV982z6A51(t zkVn4t5Mbhi+Kd7F)Epdl{K~1r9d*(K{n`ShnsH6u2r_EOlBU`N!@(1Iy$&W;rcrONYA314yUllv z6t_hRF4dtoffI6e1>ag697)KR3D=xuxTV3DFIDFcRBXm&xxFG>++0 z(etHmr4Xc0*Fg(Kc{=&dRR5?*0$@|+pechmyZcAEXR}SgO=N&H=M&Do7VQ)#(8RQH zR6Y5f!9UOP4dZ<|2ZaW7+^PTeR%ZA@#dr`3{#M2z{qX0-W%T_q{@o=h|D2WhkGL#0 z(QfGhx^oxbB@%R37xq$fP1|{RzJKXa0Q&hP_+y`s0h7>lPi{)9%hLT_2BC@_|FOkg zrx&FMohhu9Cmj`Vng1c)FP>9Wp007 zP47N^-3&gUHWKgP^7J=~RO2AZV^&(Z$v_=Uq0`WqI<8nYv>wIM@J0koG@jh0Th(Y$ z+Wn5iVAkOkhAFro0`P9+Vn{l>Bja8>)^#9D|XBE%4J+hUk=p@)JNK3^2 z@VcfH!$64|!Uk;?!WH4jwl=$Y;XhL{k+ASAj7s!!`Bt`5VV`RgkTYFL#fVu~A3hQA z8G%$FYgO|a4W^Yfx`=LcdN*%(LN|CU9*oWuWZ?BmkHilqyA`z(Jk7kGtv3;D4Brsf zP#gXB%3*N15Zm{gplqUSIlof1=~@&DpXZN?dN6Vsyl3pNXuWFfningR7(2GfMuX8g zqIUbfCWYa%&tC)Yvn?q0Swl$7MN2ND-S-EzyR>_M^w61~Bb8DP!b1cbv^~y@_-J2p zW`e$4q@M0_sa6i|437`rrF|;grKga4CT=r7&8M2c&2C_!82XrjKzk-HASuP#{m0FH zh2I3LD*4~!z+2g z_u+~<4*$tKM9>Emi~kO1*8hN>0{JI7#T)clICHxXjmpiwUlePd!s+cq@tBbFr3Ud2 zIb}b1dsOe7Tx&|%G^0Y3DAgaF7J7MmunBN|T8Y$Mkx-L51?-9JEq+oT1w7%|BW)OD z6qV%H?Gx!3WsrKoeu*1!E0S8C1HdN?%4Bi*KC0e=`-~tB}JLxXg+N6`4xzR$U2#rK3O3&5m7J zg?fj#(RaOAhn?Ox@&2)lzs(UAtb(lDC#Dh_A=U7MF8ZtQu!)S6Jf=xTcLLeX3*Qo)vlS99T8T5fJMO4GB6-(7Z8n`HB}&psMUrFmIlh&#$)f1 z=1S1yDY;l*9c(WxV(ZEVDLr4!R3;#MKw-4dq(_2wM$l{4kM>BAsrkg8IEAq zHZ>jlQt{Y|7`>Jt>k~BI=vPgSt|@p?ZhtXTy1E9d3~BBEW+zsG3<&o{Es#vTzHWWT z)Ep@?*CVnsht5bF-+yXaff2~7`*b%#prsBe#<83%9uK6~_?ffNJ=QSn)*^6!f z9l!@9?ej2o2I&ywWU&^liSmz$ZN6FnFa!3fmY2){!)50nVVn_$2mE&0R9jh1up*#L zWo#GV2K=#JCnZE}W(-Yejs2;eWo8{4HRHXkv)=@ySQVY7u+FJe6Jd5jnYD)L`OYrY zSU0E>MNGZuvu%dyq71cD&~SsyteQ5N;&8RNW*lz7B36z3iSCQja9zC0`aX_Uz3n!h zwhH57>)3bKdXytUWw9QfbH!yQYpF>TQ37AghST|pqRHCvw@2jU3%kDce#sl2*Kj&| zRD3tezUbIOt~||I3K3rvazn4!N4U^%Uh@n)HS;c?RNPd?zT5Z^(2v&rN21|BvaJ5= z37kJblK(uEKk>i`^b(y6-=Lep*9qwU(Y1;JA=3Zau63a_^FJi;f5v0vaByrxlliCP zP`%OPdQ+%oYR@TMP1T22@yN{5B6t0n9$vf7ryJ+5yIbaEM4NGTD4hfOU)0_+JNf)~ zys&Mc)_ELWywB`mb=6LI&Ef^f=t8tT0|>-0OFm_KtMGR9CD}Kf6YotD#vN$kQme#wibD0i_3E;L~9qXt{yhkG3 zOLPTtmIChmYCqNne~s}`Bbld8AgN&l{bb6mo8-OPQ8sXxB#>t111eU}RVQV1__DCl zWTE&T)*tK@ITaWn zQ{0HInH(#0O(Rw0=$2+cEHL{n!;w|Bd$lo!NyhgjyMD!NC@vwzA>xBDr6sC}CeW<9 zWcZ2U@v?;6=ra+u*wCaPVmw`m(Dl+AVmm_yXa^^7JxzKN$hU_{mUrM*s zq_$}*cFsgS&p&!pxxvJ>TX};NAc{F4`|?T6PB@Q1ya%dRsH93?AvVJyJR@di^uiIg zVqwG+?X*WEv}%}=x;mc})=+UvX{0}>2J{@tj56==r&?xNn`nbWYesdIu{9AID6B8QKQ4LJ{Xm>Ry0^KDNuC?lf3Wu%ohGqQ6`&}Q?xt|pYrbC2h9 zA9bqbtVsX5zSQE;b!qT*a*eXj9+2W$rB|j*#SegLZ*& zb zf*q87GhIV~HNp`bmR(o^d;n-GU<+7`vl&Is-r72VI_WU$N%} zRRPTT0PHuxeyPd~(08skz|SVLZWI&*%m5^+Jis6{b%6fGf1h`*d7VtmDx)Qoz!10- za}c)ed~BZ@$Y^uizue#8jrsc)`5|KkaK@|soh{V|{8x(O5*D~Muz(=iAAz;qm0Ne3 z!o?uZ#xEDbfB-rA{~uo1Q5G|gT4QQ(D2{ELZS;>Tw@ zwts=>n|(FJpHXG5^ppR4#Ym#nGI#g;NE5jt=Y6mYLHE^&z`tx!M?Y~7;qZO1$5-N5 z5mNlhC`Rrvt4!qP=NCmXG`c+XVt(OEPLvA(&zI1q71f*Mta25rW7F@@O zzH5! z^8Ad3wH$2Jg{X~!U&Ssu2yN4V0_HQ{mAs7}b!%bmz4l2@8Pwj!b%e-_a<{mxe^!raN-+mL^^A9{zs6^AZCeI5W;8OkP5YwmtQp@<+o4z+6-Z{Njg0bza z6uy>FEG&&`cF`5$ zG{&2*+TU&>$5gGG9%OudW@H<+JF))EohIM3w~JlQ?Z{PGvO|asW{bL-W3qLTE7`|y zVa&{`pzFO)SF6k#f4!@JA<(iz6It0AQlcsr#|*Oo|9B$A6!u{O8ab_)CUNchevhzJ zKVS91Kr*2Nw}NV!E*6jADu>xJuEF^E5yZW3MU z?N4sCEM2U>yfQEVi9|Aa>_?t8n~6-mK9F#5|NP>yuuDwe-0Yd>dSWysU(gw1P$=5` z0HQ&rujIc-2B0scZFUpSMvTEV79D_nmhFP{JhKB-itIp;@x(U>2o@3iCP+>-2?oT$ z%_P7C7CY|T(OTWuSG4zfqb^`aF9L1NGHijcpBBtUVLL0w_#NG6^0p~v1!&@00>xGC zq)sUm3|NrGp$hDwzz67L4o=LQuCf5Yl#8RU6mCsWIJ|z!BFb8OT$GfKfOnBg_M$Jy@ye^Up^y^*-xz zmc{nafNN;3u;Lf%`Um);JY$6`8ot&X+*6yuJ%m8kiw&IQ84%DPnIS%Mym11d-ki{$ zdOfHfQzRFCZUIs3xdLlVSx?={ufu~AI_rYYB+{^FbUXtffn~<317<}OPCD(uFn>;yimO`VhpfWww0)LhT1NJ%H)!9Yh~?=lVVNrWpTJpmFy>e_y!3{tDblRqMR!h!-5JOszf>7s z5H2^d0-L-2%xsu$hZJrrlY1kl#$8Rky*KM$O7&A2^#!-Ct)U(6Rwo-*!3ADE7P#y9 z`BALfuKDYLu1rQjAPXj4wnZi&$@a?zlg-=VU+?dT%$pX5nt3y`c3TjftfY}!;CnJ| z)>REFu)`Kqene@ZH5%JCQy&e)y#Lw7zb;SG|2E^nx3=0`lHR)YV7Vu#2=+{aL2-@y zjMr~)o}|4mq8YjR!KVDU@gCNsF?K+stY%b*1DkwWDpn>rq;m_pTWqtwROBaswo08Z zLVb^~yPb=(N?vH#gU zpcj$+hsUe^A2wls*uKOS?k)cSTDJdMUhn_ab}I;b6-Hu+&PZ8)SMk}S7R#S(@%ZRU z^{@M#q7!?m7(7z>H^E{8yNqo+(EMst>|b76tI9Jou>1C7j!`GKsADAg*OmvI-2Q_2 zvpB2B)~{2M_J?4l!EtN2U>WG`!h(=H3|-?Uz$Z$keK=mDUE8@+Fw*@bk88 zjKXSGU9h^{NLZ}yblVo+&P68>T;z_Roni1`mRcizsa|n|W@GLN3^N;?q&`4-Ztj?Q zKxKI&eKdbh-=r6*z1-3*(ikH*5fSXHi~ zF2(obQWxKtCn;{sBSSr}XJ3<@;Kwp|cz~bDNm_q3u)AGq$3r@Kee{t->FQ1wvrDH! z(*1g`uTysVFYL=&Zl~RIb3Ws^-tMcp+m4R5L4y70(OvBeq*|F8qhwPVRrF+Q?dz9G zTQ`7Qf4VKeVlt2<%knMjxI;VV{vocGG{B}PSTfT2H8w@*$f4^S9)&H&lb8dnA75T zV#z}BS_Ms~z5qbHlUz>r*}$6gxy&_EWr<)JZAX5Ay-v<| z2FLx~LS8hgp@X_h67_r)i&=C9)3SKaN&~EpDkE6yvcJU%s556BfH|?b^Ho*F(Gh}cpBMwaEXOMx^^58 zyScZAwj_yObGTHw;kfemNl2s>@}zjMqxj{=yV=J!)u?p7_VLaI{Sp2XDJp~gJBIp) zFQHv>uduX!_tAcF!Uvl}C28>DVcXY0Cl+XxkC!!DfcjIc_~yL9dR<(~Z~3gn7F;F)@c1XIdfp#>qTBg>^#Q9nm5|Y3CW~MeFw1&v;T`0{|$K z626_0joaNurDFYv^W?-hxk`|q6||WW5F8E2JAf>1P%5~*avyU9IqNzU&(ZNHNHu1! zu!UX&KZU%Mp1xo{z5SaYVFP(eUW2zYmm4xn_BTIZ?vi;q8X(}OFzOLeK^8}??q27a zExYsN<9U3Nz+_rBOZ4s?*C+1g*Ay5BusnTBUirA@J;OQV>y^ z!b4dNcLkP%GJH3f)X&LlNy8ZOxufY$6_zsd>r~&GNK8rg0Ku}LLE1}VBI!5!U8B!Q zMgiO!T;3!T(0>ajXsS1$j@FCwadMyBx0*~LHC+e+eqNlUNyyIY5@IB};T+IwPT*(x zW!tAXbRrsOgtXF7=rMoLapTe3YJx?+pKj4sfuiG0DqjNS<4{7KyL^jhK^|X+DwLff zBnMWMzR%LZigzQ{El$Xv4%P!zmq$QDi`@O?p#2B;q)pHs-xUygen+nQcG71Ypg) z7c?4c6RjNhcw*jHJHG3BL1vkO&`Lt>&Ly*ky+Xlm0_Us<`q zZ&j68(5;z)gz#e;p$VeJH(hdBXy@!3jyqAeV%SgJ&g*oJZx>M|-MNSva7(;%$11RS zadG1RWADAgn(Eg4Zx9qkib$_PihzKKNRtu~X(COKUX&tDKze|X2uLrX2q-Ne(nN^# zBE47Xz4s0YH9&~(ex5UD&U4PpnK|eE&Ajuwu6O>@TqJAnz4qFBt##ku`}6H~({cm+Db!}%K!C*&Yj$A|uPYnG{y8^kd=m88vN`76 zZY7RC<1eU-(kCTiVZ7NK|Aj1dz+02>J0?LLy!hfb@9E#IJ(vJ%5C73mJ{L&%$V&X>sOWhpm=)@pJ&7{TkD*H=^tzIlFg1lYOCbu zlS_fh&CrweSK#Yz2q1_%2FJY)yeN|;BkGF;Zt?G*>#1FQ)fi>7OO9=z?b}L`zX)tK z{P6eFn)dK?#0gB10ZwI=!RkM5F|#k{1*bhaJR8%Z-^oH-S!m+LB9TPSOb+wF(tqwN zPUBBEe^Bp(4)eg9XU`*2Vn>kW0mmcQyCk?MU>Nyt)#F8!e-V@;8?7Jbw8cb2*f%O5 z;L|Jh)c5~<3U#hWeXU?1yk|{GO`nLr`C+JVisxs^P~i~IFetSBx*VsgQu-C}L{QhD9M0hmUijeJjmZS0?F}<28?7?Mwt3hKJ2hC#ttm01@8fd|W-`EI z09=%p&}FqF>+GT?3H0{%%&TmCxGp6mox;ap7vy{jxBdTn*Ml-4PM zyANqcX~q|_;;U78*y<}{b#4R|g1kevl12f`kwoS+_&(#>)RE{ZbKIs4(Ck{gW^(P^ z0$$!A{>1V5ruO;p~O})LDZW3Yyt@?Ur6gcGW|!3ETh3JF=ih?LU7>7UK!4W5Suqs5jU_ zqshShf3}8)8sYH>Ozxi^hxm6$Jnc~*4qI_?@f*&be+zkvaXLQ(x26B7?*xDc4-I6a z*IMiMfZYfHwKp>cwoc*jxdFWBmEZ5zz)PNA1cAQ5ZIKoHMF9UDZU1i$6ix{KL*odn z-Wd2`aqa}bF3J6=L-nr#W9ct#1EBvpK$C_9)?M|PI6Jc6=Y`J=8h^Zo%s-sE=ARx0 zx=ZjsG!6RWnFsvd*EZj&fr8dQG;OQbK!3;e_!6u*;KHu%UoJ?@0Se}h2o+0zK014! z`Lf^Z_LrAmZ_>X$JGS>1UKM8drWheHeEO2+A4_)_j7JiikUvUQo<6nK*k=wYU+Xz| z=)UA+dL#lsR$77iGd=xZM5q6h@gP46jc5YXV|PaiOJyh)_lIvvA6tfrapsb($l>^} zHyfI7nQ{yso;c*WyVH=(`h6tAZOwvh!6Dx5@1aT-3zQUQ#x{oPsn&Eio8+%caz+%- z&yzW)Rekl)Qakdv`NQFE*jflSr}5#5zvJkX@nE6bgxRiF=YDK+N-f_yE&F4 zA!?{-TvO5o>bSS5i@Rc^kVn={U)nmLa_McSWMg5kG!gJrENJ+ zQ@^!|2HvAY7ax*6jEnWwa+o>%MIbz5ldu*rKB1OpIyGs;^T}B{oW?dp^WJ8 z*7_UYZr7smamVL2miwvrAu`Atq6n#g{;+^Wikt-*4XtvgtLrC*3LoBX$2+dxmqx`M z?Ds|qH!Rkc%qzwN{;vemwy!?(m*>ljPC2uDzAacT8=*`TaYD0*Vw8GQuO-7xJB`_+ z#W7%V{NIr8mZWPqysr0#%-jaJ%#gO;3QVi>i=&F>0#GZQ9Cvwf3lU0>VncA}h0S&y zV;uFXbcydWzMF{_3+UW2=4tMG&m@}D91f?q$Fq$}8_D3Z1Rq3lTS{r(6t6l>B5yzUKZ1CdOG`+TYqK?Ow{n9@h- zhdeeEV-I5JI**duc+qkC0lIU*lRUG!4^--}hMky!AW99wknE*~I>v!L@B()lUV>UP z$>W~U?#ril61m@LM||gDKQQ?KtZ-|{)9sJ(jL8kKJEIkE!knmDS@2J#2oK0BA7@IZ zIPZmN8Fz{Tk(VE`!QC`^{rJmR>P#c3)0i}OVbf$`vV*0g!>2EhkN(>BHzOnoLu4v9 zbfM()W`Q6o$0IPQt;fTHx-xsRNH&yoJ2kD8DlwT3S@c^yiM=EhliSt#7gIsKIRjIB zpJI4IYhDS=jX$I=)o`+#GV~(R0xAv&2pI(=8FFziKuu0JA@_k2 z+~!Wt1rwKnhM=ZhmD}_dQ;F>`mwVo5SNQ?6wf&c69;X0Z)|WXG%F-{*I$uEjd`$Wl z3NoiVVnJP2{-O9(H}?^{FoI=1>dW$4Hh&ZrgU-=FOMBm~_$=pR^<@(icT6t#wAY@U z;KR%5Lm3KX_I=w<7pHZqllZZ`Wj8Ga<$pM3`;Vq}|DEss=YY?DuX>H(--9dv9gkf# zE6=+~ugk;a#Wq|9RJ9B&0jFVS;w=vI;7PX8W`iG?7xe)(YGl_hPm4D`(TG}d<&}=} zXO@@`J1q{&pD_p<^;9asJxW|y^M?{cMHV&$YqS@yhZ0TOr#))nk5*P(V{9PclTlZ< z&mM8a@nP10F&VYj>LE*qxe`e^k&Sr%GL&Qfl1?n)&wfQpAgi2``}w5y7ePLyz0q0K zA*h9t6>HZi3&ILL8XnRbDpehST|L}6MfI|oi@HtL+T5EAu(*`Z$C>s+h0m2{>>}Y# z@btNjfeAG)EA~&E^Q;q(UH$Jl_lfS$(4403o>!dY!yXrxC0f?4xo*HoAf7;+smY1X z7~6^S%-KBt{;j|w$Dp{j&G-fpLCf+bCAl#k+IaL_dlDdac#pq3vuPNZhV=Qy*?YOH zwTZLCz)DJ!I)U>oi(X%;j*R)z;OKc*UCpc~>4{U2EdTcbxOF|VL8|#=vtE+#=qOMO zsJ{yeIaTPe=s!FZU3j2f|AY5Lmwxj3_O37CJe=MZNe!a}*1#C`5_{{f5oA*pSR^15CF*cL==GdHH$SBWN+2(RjqSaMQma88)dL*7ozs5Na zf>8hdTKr*Jl~*!knOENH&GIX6*Tdx_6yax7(%^HGUA5X-Gk&(z#XZKUb$IFJlh8L- z;hJR?BMMzIHGYFS#Mbr{6pCIbBa9$Eb;*p1lFAm&bi3b;IW^YU)>UC!V%#>N|FFCl_QV5-^63C8zdI=aZ9 zA1;--B1;_Wvu(`ig`7kMp8^VYd;36odhKsou_kYcgo%tvpijq4-@kR4hX!O>3NRx_j1iW8(dg4q!F94!=_IfUmx z5^hZzUz*&VTs+z_uOuK~errXtyX-C<)9U5fW+Ja~@L)!)xoxsNl8so%UFN7;^-b|S z<#Z6vCv7^-zGwYw+^XkknCxan2Y}Fs{#T6WKZE@IC%?;uodCj|Y&QXtF&XHLC4TMt zU@hox5vNH=fB|LrpDs3$0TyCx_t!v}JA1zfO#Tw$d6$<_Tv__H;PBJ%IpFzb0+;R8uN^Pp@fFy9!v8(S|1bLL%=%bz@C{VMb}{qYgwbXjeK{5L zdV-S>hw;udg^1r!zxLDJ7IizSRqLL)zc+}?zRaOfzd>3a&&B{r1}Zq_w|yqM;^Mlu z5}rT-5Q~r2^`;;V5f%s5=eN)C&|UD}5IpdYgOdL+8Bco>Sif#G2u5EL!r#vLf!2F3 z;4tfhpj_{7L3+)$v6JAXRGPYWBF*DGlyP%^J&M&%aHqg1&IUHJ7c6L@_fXK%jFMJ) zF?uzg#>3{@YhPIbNpnSlHXo*SCm8Aas5NKPo(jWh!L2$8C{o2nZ{DnAHZ{rz~LR$11hsN~{Wu@0ci=cDC2RK=DC1_vJ7K9}P zQpeP${(&Py5^UT&)^xBpa7*BUOl`k7b3$kS;nHDoAOeWKJ9-v~?Y$F*V?@oz7GQqR zDF+-+wz@CpP^Qyzsf0^@Iq#xQY9`&pY3AR18fnj7h&Ln1r=AXUFZkZ!qyJimyaA-G zS#y8e_G69kfwjOV0*+qeM#f*b^NXyk_g62WsF*?@j{g_Ib<8gUO(RE* z3yiUufl1V!)hdkX@1EmIGn#*)snD!}jc(ctjJaLj0B92VxUr1raq>CzJBS%kx(U-% z9AI#$b(A#@Ydryz!~Ze_wElQ2>RlFrpUvk90-N!smbjk}jNVY@bSlpg!I=H^fpO8; zM|vd^Sbeqp){<#=4^H&&4%>4$p456lhPpuyOc5O9<_m7__DJ%p#CMjdY6)vQRd^;` z*>-$movo3F3i-o}dQ6AAkCv0~uHMVP+wvd2J#c{nW)5%#=;Wxr?OXIe{gZc;e>L0u zaS;4vwgF9^%pIHqlMUPmXG8G6$N1CC{C`PbUE9hR>rfZL@TI;s@X_E9KoH^8 z8vzz~dpIv_JHFZw&S$R-RbFd>lOr`pd}b7<)FWhiFbz2wG4FcyQL@;|s?wpU?=iva ze2aF~53;oQ#}}Ih^uq>nc!tOaNt-%X7_sDg985tu1%a*sZbG&!Inx=;NG0<;^EUbxP{-frSu{y+q^n2i%bbFe@E?Uo1l7|k(cJfhfBnsC{LoOykICoKTX{_ zL912Bo}AmMyJ~?(JN2p5t<9V($!2d-2Tn_LJxG6i-b$=v88)vg`q=uwIvet8UCCJ| zH{;95$J>j$h-@h3(v}djelX(39Q(ylku<9E$Z(x2H0f2NG&F~i;6!xaHz>n7%e2|Y znqSWKT9Je@P*0zumr&rnstY;H^YxU;T;3#vuws732);1u$3>^bb0 zB&8tOv|)(0JnXxaz{gn`Y8g4IJZ)v5F2|NWpEfa*jE77?MP_N-V7PPrHN;f z_zHanY?G#Y{!u9S|0M1Fzn`yg1m6avX>2gzUj&5-$S%Xv$AA4IFqB_Z0??Rm&Vnk< z!ue7;dTZ|rp90w=(%pOn_VXw7V)=btH?TTWNjv{S&ibpwALbdGUIH=mlmKNoPg#@& z)o_Mbd+zvC0m=+kR_aHVe6?uu+`HIn0&^K2#SGT8AA1Koy<0XHuHJu4iMnnuSEkn< z3b)pHpJ>WoHk2{q6xpMja6Cq#dw*A5mFnlEd=}FE6xOFTF*7CB+*hkqExj*j*T5z9 zt$DH%I9BvYIMThKkZc+RlbtCvD$JpV#dC5p-bT#j(MdkBv&iIqrvml&o#=y~ok;8n|mbT7C zgDX;&*0gI#ng<_7pqzaB5phPtVyl=6tiNNXrFW}EJ~c-`>BXF^AmfXLH^JL#7{ zsmKU-o>>pp3P?|>)Rv2_glA=r(72ylSQpH-z=K{lwri>@9pv5>xa$B^Y-T_PHL82= zk-M|eVUX`(JofZslMjFhQ`$gH9_J^IxF}*jpS*UGsWSHyUCr6Y1JAW(jEACs8)$H%NkZ|opThrVb@aDkh-~HBye$f|k_`;y{ zhic;YpN3K)9e(w64IoVg?|ayhg3PtoTeTNSWqVAW z$9;^rr&ZL?Xji@uh3Jvw< zC>5pE{E8!#?hup}-PcIeQ-m$!JujTZ+&Kr^ z@`0U|pFJi5kFm?!eOAs7z-26%>VQ4e-y>%KlO9ulvs_srJ*z)v1;7np27sfWs<9$y zOBu?7MJ$wTGOfyTwt<=w1>k-$)$mf1qr$Yxy)eDDxn}>%oZ>gXMk~D(huaA9mzPks>%<0;Y#%{O@WI=rw@8xXET<>1~hAg3f%X@YO0`fO546 za26Ek>&s>sf?~kKg`7*g&-a^jtJ3qL$IYi*Wyh4w`5ND`lybog90M$Vo6XL6_k;GG zk@LHd%;UHU^dt1hP6UZ^Wu;LrDy2M}4Wv;q$cC;q0cRj>2{?Nm-`BQ^mgVJZ!OeM$hQv$gx;O^ZxxyA zO%rv(xmBzfJK?Co&7g5`33=+l-3igi=ey{%Wj=i+d{`ltn}t@z)0RcsvsJ-EX{e4v z?Tob_kjaSd)3?Ftn{Q`N>ZWWm>e0t4&HUh5_QGBEwOHEf1mev^_G2DjnHFc;Y%QLP zB^NIj)%xRV7OeDF=ii;CJqVdd&&WhFj(RrCP0dPDTpVoGaWT zDwZt51lBAp)}jaW+f9=dq0$PJ?}QxH%jUNZKg`%x2V60tnKb%Y;d1RUB|5?~+Iws! zplOz6NLujKLho(W8G6+cwU8u>kDhLw7Pu#ADl#futF@C7SBITbOqSNY+%d6P^w;=R zhp~OFaP-q3s4(wulWVPJh=+Y4WuN*!t}@dEF}S$sih42Jp?F7-?ydI|4pf5#o`YfC zhOKppx!BAWQ(+9z=O4D@o=z5Iq%%ymxN`RBYge!Mq+Aj?@{9!AQoaLG!XyB1T5XJ2 z{Y4e+^jl-&?n|9k4kA>6N$M0ps*jk$MUj8M{WyQ@sGb_7e3dHp40{N5h(^* zQRP#n+5EgJafE^lgPqKnOeOgp*;y~O-qWmqreq52hKVoG<$epuYg=r$Fvh}mMfS;u z>jFt~-zWJqRim9_2bCE5UPfN*$}W7z&^J~I-kihJY6SNvUy88(E(z#bs*yi`@Y&Q3 zztY;WM{>^KCt&xg1sILedOdI9^}lr^Cx5hh-f<`9zKJM|oEhb8D{^mc zmU4|-Norf~&Mu-C5hD9w6!-F&$Dq!B$dN^%iq>Oy3Rz8(j?0fm<@_RW)VKoWL*K1h za1dYk%HS9wPHp#HbhzXLar?5h4{KFR4dt6-)JOg_jZf2~ce)<|ZmLiJhh~9778}n1 zIi|))cu8;H#FOMP+1E4UQz?gg5jww_+tb+m+0CrH2DG3$$7DZx_9EnximY`^-L}oc zqGM2A!=8TGq0n|~W=oQ6(bxDZwmfthKLTHnDJ>eq9@j$iiHoq6nh8_&3K#mLDPGGl za}eE2*o0!>og2q) zpFj9;j;L^3dbLO4X$|KlJAE=Am5+s77p<|l#(PLqbmolPYVEkA%t`Eir4EHkt>d;W z+DLmaY!PxfN|BmC%288eQw`?ZQsr=mRO0KMF%MgZWgz9I0j5?{npJfA`>Zojw9-FE zJNw61<28GW(;u1M$VcqKm-z?yyXyq|QgxeTuXL#3rT|^FaaCM7lbKMDfsRu+qHkY< z$Ktp$aXcwNf4JcA2V>#xs=i>x^L^#DK!TeZ^Mv3)FAYEeZi~2rHGOU4$US=dl8&$; zAG782E29Ee2-)9FN0CFzFj7mhwV21)@U5U=)hN$|$89Ou z_Z$G(>d~vGO_m&u=>zuX2x2IA|IrjVy%vV1*uY5QdnqB8{y4{;z#Q-S{F0>X^ddM2 zR5pshC>*Ic)bK5`3aJ$*@ha?WU!_xwxqeqi_|CP$gm3gBX!s_ei67a?Ud&8N`tdlrPMPz}|NET6%X511Md&MM%=MWIZrueX+Pl{G;`0I)c+bAct7El=k19=S`+#N%)yJR>dntVFArrH15U(#VWhiKKU za+d6AtK1!nH;!-E;yWNq%|vZ_)SK%urYii5s}*>z*URxojG~+53(C^23#`mWVGK35 z>~DEiKWr2htR@PwmU;U_g@Gk1Ky=v<5mv(~b2b67F#9o@O;{l_n|jRk2HwZHD(QG1 z_A+>~I;-nw_hp=kdd0%-CyI&%`>TS@=_R%fU9Ife%#IYY@?*CSrgByWX2v1Gitm}d zBD*LT2=+i@M_E9azM{E~9lbJacoJGr!|k4HdOh5}J7iY>*ebv>N0CsQk#kSfhjnZ_ z7;|N^Ut@lcaRVmsoxh5_pdSg=bm=}Fh8-!QOB4>YHRh!6f~j?}ihA8e zGTfklS0IbTp7AB8?ODWd^$?inTA*3!-67eQ%7*sV6lPNI@#X37<#8?aH?TNUA} zs*)XeMu!f7pRBJ(#P(_aLf_9JmqYy7H3D!RKK@DudjICN(qY;$*0#N2^E~sHhaCF$ zDQpFc;d@MwME%htKIl~UM9)tpg-!`gDS~?hhqUC6tKF(!T&#TS4vsv&P?7*gs;RuW zIj|0>Fz-M9W9alh`2T-9)mpC()&pY?G1{EutTdMBZGpzT7Qmh`yV=uD=UuRB%+={#U+F+Yc>1C8xuBDCY( z>~REJV$f{auNMTzZ(uU^RROKl+{4tpPWcnY?ZmJ*+1CT(%;At7p0JCws8{b%l(y=h z?Z*zby~CXCHj>H?f)PiMqk4Kfdf|IEo*@Ilk7+LVE&0Qlwt+W@tx$pG(Bb1nNkRk1 zaR)AM_DzvZ_}S4)8Ja~QX|Q#FAy?|l?wsl=8;s*C@(1;QXl#lN2zmO?Xczu=QwYs4 z)5AB{W7d{HXB)P-tb$t@P9zmh%vavj0^>P9JxBe;U-_u>LGz6lR9;5W?^L+v1JWQn z?Ta!Gza>*s8whqYFdZEmp%Qw`hS3tNr#QmQo9pM`IT;FRq4F0(a(1xCxJTGq-*DoX z!h-ZIg32T@AJyI*%dJX~u+sAvL8GRbT!)RaUfEb7vtgmg+Cqe<^L_Cie`>#@B?i>^ zUKsc~JBGFLBSf_9LVY@@Y?x`TTWqh5)r><^uJKe!ZnVb22&=Nhe_;?gG&Q$5M&fGJ z>A{(L(WLSn*;GTOc=v4YcF>)p7lE&mR3h1K=ShqSw_a=RsMon3mvg6h^w?|hOEOdmwF1QB0 zUWa``1xmkKq6~wVvBioa!esB2VpY+_=xc&*{O+!u3o~FFs zoee-qYN<^5B3Lde>TM3OYv+&3X5%G?p`i3?{f&GoS(Bfm0tW=}x`{?`Q@-iWIRn0F zmL8k4kOx)4knRgAcY2Ho+jzv$#7nkWzX~V|;kt9gAh}~g5{SQoBftvIr&7NdsgcTu z1Q?GL5?2cbhvFnp@;UUW1#YscvQwL zIwtF`70stp9*oa|SyT$j4Jt9+SD7NPWa)Za?T^gc%;Tl;9s z%CZUrml$d|zbdwL3Qk*X?_!sF7Rr%OPto&Rz7`I7hN`w+#Cp0Vd@AgzM45S;q-j@C z31A!0xN4)U$WZpEG*1ps&`}3r%;FGU*-?iqX60hUNv*O^e#+U5aVN0U{8fMi4Ux8~{^lJq zc0A^BylqHj*Ba5=@4@^?I_1o~&VK~P07+~p_DW*Qak;f7NU{1XDkCn%dcAp!w#&vN zv=E!HzxBMh)BsnoDDm=1loE^6WX(+<%xLZ83r^kX!ZknB_vpO@yLL4+nibqUDxTCB zS+E!W&G`!RqQV>gXdeL1THl@aUeDLoLKf*F^nmrb58u0v*g-{IkftPx1-;Xa4N#Be z&xgSJwfqYQ!}r}Dr_cLXFnpT)*>R^cqM$w{{`X+rAIdS(!aQv=|Y6=2J#74F|PMH^LiP8E>fJudKXo1kRLQBg` zUMZ30BdH&uNBkj<*ecjp3?kekqS@9JjD zZYMYzuzD@em)Mqc{J(0}|BWmA@2P<`8jF%C87=UB@N=!-!>qS};6R5c6o^LrU7M(M z;(w_HA^1oBMdbr#YjfBG4C2DA6d+Y~(f;k8wGyf%#)*A)Vitmz&>*rIF!mC3mfrW$ zN|#{0#)VABb)e+1dRZzNO4jg2)r#cSB%D?3NGHc6Epv--9*-R$M4o=9?u?|z#usc9 zK_8)8%L^MHB$H1@_Di2u^4Jkh$A0`p;HM{Pf39pF4Vg2*u;|{KF`b?AjUC_-SnOgy zWmbYN@eJc%>`xTvJ+I(CR2p2N;nbkWaj^6aUG#;kqmMrx*fG`Cg)>9*o!@o=AtXz2 z?b9(5tFPlY`HHkYWek_;oluq8>cS|VGF{e+&uuh-$R`vx%=!etY7w(TjX^^kgng<$nB#DT}Y;ibFhPcfik zG(Ou+CG9|KSXMW-`B}Nw%1gyZ67xiJJUOHBlLLh9P+K+zG(321*j2f_G;Yt+1RlO+9PHOK{5wfYSGi& zs=raA>ZpkFP!hY*A*(9o4&Gc)kha(pQ{gG=qk?r}ZYO}AjB+PxY9&M+@p<(H z>>KLnuoW+`&}s!dl3!k0cYv$EVmihnA~Wh2!C+k}x_*ax{=#FFvfMP41M}{tyxaRb z6;KHV&bhF)xV89+ojWegUpBV;5^>t-oOW5dgWHMC2fYrUyZt#I367?}MCg42g77pC zB#){N^9p|^=RG=?POhKXm66k3cWsA`ZNw*JSbsGtXpJA%^VmDF@@vk+DR@z~%}q!( zfSCm>9pu%ROux%fZB~1StZL)?*PF)&i>)rqO*DuGVRy03N~K0V8aGV7u|q#A-hAmp zM?9vM0UMOPH&|Q|XS8)AjdbP-ZP9ioVoY=&+_o182a+9D&H}m>_qQH$vP_yb0xrLn zBq^DfH2os{TFoKyOKTyw2M)IitTl>1PRl*$>Aw9hU8~>n5XFYA%Cw!N$h=ZZtzzr8^rr5qf3XWmPY%k=F@69m zwRoJo*eh!vVC`zzf1}u``L1)?)n)wSn!Tm=upResewvbKRhkA1cK^pIX_R&RId|W0 zn74jm}cHE zsZ41c%I|cbT3K)jG@{%|NwV&Ok)f9-XX_nk5_TQ5nt$rw5Q~~P*)X%f31CMS&4P|W z*i1CPE>`e2-$NTUYfq;pfr#Sb!0;>5>3aAyPzui6BQilAdiAt_7<$_>*<6@c( z3MmKXaQ3n2`j%eph9uJ*i_Z!)^k?Zh4o@OFoo@Vm?0r+i>=nZB2tG;DTx@1b=Uu~B zIZ+g4Oc63eIj@A5F$4Fp2Qr=?((dbHB^J3Rr_a6>eomtk+sN2K7USb+ks)Oo)OMbI z))_X@rziJCqGP)zCYjI2Pm|ex_}Y7eSf^nFASO4HhnfRe!$H@F6T*wiOWlsqo`UaW z{Mz$SR|8t~t4`klE^IP{K-z4#L=HzHc)pG)_V?n_U{S zZ3Z{va-)of%J)DA?6Goj1$bQkO~Mw^?igv2oR)A>TD~<2&FkNf*9kZJ3ZRncxEAq;^gC+yxs7if z3gdLEpL`S>ecYr#%+{X9KhVVQ+Uur7$2l7>;c0V030SDLpyyf&40)rKE;ong#w!x& zEzf&9PJ>D3%W*AdBR|5c_Eu~Qvtw5+PQHBVE;@@dQEF;Ok7MG$LO#mZXI^6x2Co;!BH8AEA?!A6# zK$)b=R|g?KC3?EC1R}QSUSzGFd7qf@_St|M?YGa2*NB5Ar<6%HugdUOq1PgS8o{}O zpNT$V$sXWpmx67%Q+*$nQSs0;wdef#pVUv6Jw8pbsz`!=mgeZ{WaqGUrro6F>q?m! z!clS#18Nr%s1$z4gwmwGey|YlRJ=Lr+$>r}fT`kkSR(zEi8e6AyyhHws1T{Z&MBKvv99pc1`64 z<8PyTb2|3nMfGYP1l6&GUeXqv(UFu^0y-|w-B~Slp`3owo^ly4;9U-j-@10Q?b7G> zat$vS2=v?qDkfDYb!FjHDP13YqgXdC+$81*pmzpwmkPMN()x zn8$H3#+E*+yz-6(sebf1)^20ns+;T7aQIZ?co7gmAg}x)sPe=upc1yWgr@qGkU(Dl z{Y{m&_EaI|hzMGO#<7D9v)f}l(sn)ro=RovH*+pC=HL4q#>e!JObow$=l^hWXgZ#s zxQOdZ-2SW~-ZAUp)F$q*k>Z?m2#Q2vFbhKG1dV`nzSHz=?HxO)Li?+K%_{<-S7OKb z4G;-o9a125f^7Z8_6>QxwxvsG^)Dd{vW7xokF=fkKAf2ql_au9p#j;U< zD%PL(Ko^PaT6@E=`0l8tnkU*(>jsX(uU-%1>7YOC76f8Co0deY7KB2WP(csiH*7sz za>m_rq2alygdGI)0mD>rr=u_0VthWU+(zaZso1+;Z20fE})mNDW5kVP(iyoWYBy+6~jqA9c5c@E$p|_(acI) z_sY0J%9!KGCe2DE^=Cs-Q3oQIZF+>iK zbmUZ8_=8EWOLikDd+nK3YEATp3OqrV4t;#}T19%D9pePQ$eQml5_Xg4u#Jm~zn5n9 z!tm?iTL&!_V&b3`lwI-+o9(BB(@7`!LV@LG*LQA?HoFZxBlP)1Fvscl)A@`NUf^A2 zC8|wL%Tr#L)3a8Ic=bLhC*RxqW=yMC8o9{;*Y{xEG6!{@WDN@G!^rQgK4UW#7W*cX ziYWh@%ej!r^>0Mm$I42{9!o1`R-hK&dTG4@HfHn+BG7HQ_ZtD+fagN@wjxxji#M;Vx8ir(N6}Yh!q$G>>FClx%HGj%O+9=MRL36zlMk6z&VgO zRUe0^qW7Ynq%w(YQrcmpoXBnKXkvHq`}=hMSIjHKiItex@f`Z|EPBG{3b0928tfaZ z!5yoItA(G4)Jxx9`o71%Pkk|~Q3iwH46r9lpa?yqvfd|I{&m>Wsb}p@j7L+*kLN|V zYpO=_wS0J`o*eTnY{-2rqg^hSxqiHiZC?QNHb6R0P+Ht=470wt!Sh3BiY#JP;A-c} zyZt_ic1}jrN4uF5G)(k)Z4DOli1Ct zb-)mM@fQ9Gb-i$smR6Z(7$ZzG^Dxp#J`RhR*OzumuOZYDy;^)cRKaX?{^gA6R7$rj zw#!y&*X=(HcoG(j5WMi1V6yeyp79-#-O4=ccpM%gTv#Y@}@ zmS6Y1GgA?={ah`3{tZtQCGCMDxs2A)=4T(Khky`qayyeuDJ8%HmBGRU)MQQCH{spW zk{7RLN@d(0^&rA(@M`q$g3z~2gMBzRn9{2hFU`W2Sc!Zt?2UAX3ZzXI&TD1gGV$j| zI85isTs>o9%2gfj)mc|iKDUtoQ4w52J;QpQ%Rx{Jhg9ROZ>tkxQv_3ImF3nWM_?%k zyG6h}JiqVimZzcB;cLkZb3)Ew(;gW)+C4x zuBeE%N?&Fa@{}LVN?Cj*IFR(SYM^SMzvS7e;6zqbOlf?JFj7 zVlV6fIl+8<8-qeX1zioZVz zRnmPe&C8Zu*L^J_$CN%H(h*80LL@Et;__D?wk&kcqE%hE)7?)6GX=E~%7gOmQkRwA z5f_)Rg}+ng$%6WxzrfEvOpHX`#fhSiH%&yEF(L}L3mExj*50&ve|B#?Z%5HC*O!vC zZ$O=##e)y8r3q0!X|+mWVICzx<;sn-)oQ$y7BBOX_!^zBRk`hhy`!C_awj=#P~?Zy z&7O9yxLAz><~-g)?aDlui#FzKyyN-T-`|~Jbj;EsIHU>iz6?m={haZm%1D_>agCKE z4{)3)bWt`~cNxzhQk?#qZPau}>ctvl!mFkK9`74b8i3o;-D3bv(YqyDDdq0|BJJn}^7rgfKXx08aI< zP8aWgBPtW}{FR5rZ!dX33&adwT52*oCJgvRARk+^V&NnN8!C~Qi4xh+)&}%;z(QP8 z^Ut1hKz@K{euAU9O&@T=)cgM~XtIvL-GoqQLsc8wc!o-VTG8pTHFsDDFfH(WC{M(Q zkm;RFda_$yOocVoqbCZ$p&;K`Lxo&}UWbQ!VV1(xY4c-Uvt0el=-DdIoTsV}C>|Fv zOxGe-!p@4com|?7$Ks*R=zJ4{)(?71$()0(&y9}yM@T3%Pd zfyGj)7zNs0Ho}9GcBhFU{LN1*V>pqUN&v&z+5GB@N|_0bNB9}aF;tgf5YqjNnVJ>c zfjf1X=S}ppEECE~>9GxWh}n)Bx*rnPG>49vFbW=dP$qb{@j%rHXK*xeQkR_H+4_nm zE|0v=^K#S&!yIkLwGQFgZbwqLMIH4mvV11m)*V$aR74N zp`~`%X2pKl+Z)#@(t(7^aHiRe$>kNwoNA=Jso*!<4GdeVh;OWfyQGh{sk}YhNAPUy}_v_vc2pdHo-wIBlVw1QDh1N#BN# z>brrW{jjm!vdi5-zD>knj%3HhsA=_MCYo%g(rC8xcsTgw&b?~ScHVo+{_47d(<6@< zMde+Twef;N-C&n+w^Sfw}yP?sx?*;H*&t$Ee; z1_f>fmzlt6XCw>rEE!j)7~gWJ8Z~|Tt|qT~b5AN;DIG4$ZBZf%-X2*0@ZNjw1d7&A zO1hY%GFXZAcK&L6%Q0vPA><12%X6)3KB2G8S2ct`)8nmZWj6rVz0L5=&1C)UTr+*OH_mv5%YBQ1$b~yaNSs~C9+IpOBGsgSo&0D868zTAV@c_{piR$v zsTz~3>t=?(?wo9rU4VG6U~nWrypN6hFbI3>dl#ra#ZEk+iQyeOae%tJ9ak4~aRsIekJ$*}}ynWlE@o?Ti0|Tad zVlG;7-N9HfBJUiT{R`7QUuq7${CjB|e792*_KgVG8!IY)p|B-9E5R4@jPFowf++TM zT(&H_I|#g~1m{tKF^8cZAvvFvmOe44hQD=^3t03`fVP?}5I>CGabsA>?BZliU#Qv4 zAq?N$P~!Iy!9kj7YUJS;mIqfvpK>%<3x2y|R#WjgicUs!Q7E)1y;*XFA3=3KA$O2m z2Ds1F+K=)#yaBm&5{?-DWW)o2S8~~r31rpiG1}9IH2CKPC+w&xxuXhKk#<;^Q(&G* zLr-Tcf6?64CO$IY#O}O1*gN$AU&oCH$N{5PW)Vl!t;99)UgauMO4$}Od6=#DN((Z+tyV%LM>DS7WN-ifi9FGnkpQkl=kV;U)!wJ!IG)T}BFXz&X)s4m5)42j`?F~+wSvzsbIFgO`z3qn zUS#23f4eZn;3(K)Qc7EKQ-B3zHSbAgB)q`F@h>Y!-Jz6ECfWmi)Uu7r7xMQ#&j=d` z<})wRZbcX=Q?g7&CY>|)#Z{`-5i*bN5s+Hg);xOyPXo-fEPAC{@}Y-7>V2JH%Z4_G zzFLFaW%y@X|1IKW^jg_)J>Qx%M$zP97%{=e%C}`#R)MaLwPd>h>@RO7!{uaUPlcA6FDA6}f*$IwWE02Tp&sDjWm^^wpAjVth?Zq##!|_}O z4)Otb6iQF#p@rrgz`?e|iMmm0)!!p(hQ~waVgVc;$R~3a;jhF;2%1fXwG9X0e5|Z7y>6RVlO(&WK%SLEk{M4fzcuOd;Bl zZ@fGawK7E?+`Cz0M~<3hKJ#fg@g@nS1?-4%cz#91u~^(>MU^6&Ac6H4qnq(5g0=AT zu(+115{>D`UvX*{9FJA6Nwj_SydE}dO9=X^)@_KQucvrYFHIQ4ogO(fl0;GxwDB98 zKG~N?7!s5@lqUt)Egu`sqv@X|w3EW&^B5m7^1=)`>YMo>wwn(1{0Ks@?{FD$5hI&B#7ZiQpuDJ)i!x(=!Nmgy6*S;m1p=o?K9{+{*|NI!z3o$wx-1LjLYwAu5XUa6 zcqG^x+*T#}8p4^CXd!QQxA}Bp@hd}s)KD8duJopMUmMGnhijjsE4M~_yGeRhhqv}l zuwP<_vFR&WrhM~P>;+jRfOaRh-T(mVdQreoxCGa8+a(|a_aHPaBF>IQwh}4|CPt;P zHas!mIREPg#~%flOJSqYSs!r@?FlYHlEmzk$xRWlNS9-z1NuH!MGeY2Z|>GDHiGAD z@2eue3oyF5jeP?E_`t|i?G~RzD|s~{`T9+?szH?DXgZMrC|AzG_CtI)wYsxd(XEBhnkHG21qTex2RVlVo~x-rr^HhW(ae+qfXu#)(1a-W}wxe7-L_1?I^NcKm2mX<+-r zYZjIrkBzC6I@!Xt-?A^o6aVY-r0MAK*csz;Pg%3pr@oEcBRNx(8n(~)#0y7NdHRk^ z0<5F}I_95xF&+Y}E5}n@tD!AjOC*ovK3jsb&`ve#4tzGcvqqB;-vjo|cK-qLz!Vn| zrR^XXwVB37)-2PBR$nLK3p`P*4Cx=2m1jd>$`Jv)Rcl5GMImLrCp@96`uHE9b>e(sDEPvsko zW=EpC!HHwJI~_M}@Q@URzTsX$)l_xgGs~4Knb%sfg{w?a-%B~QX#vYr=5s#%Sw@xW zljNb$GfFfvZ03X%lmZs9=|Dr1h@`)_sOj*b?@Jh$hmwSUow!$+!3PChwPf69%cEw- zL;IUNVXodlXKNyRbiCunLN9SQ*yJE&+xDeaC9C1S-C~58&UV#P zT5w*&?M;p#LDh6I*4B!{Q{`P=&lk%j?@Uaz*H8yUE@~8CsO0gfO*jCXBE#UfwF6QR&h6-}=9!?B;{#~*7|zUhR}M1XozPwPjL|R}wEQKnI7{N5Z-lqmn*kyhWx= zt1RD&Mts!0QBd zQ1n#lW3T<~-g=3UL#F9Pp-;^%=%IbiIs~fR?e6)k4c=Vw2L@^_aICIHC@N@X6Z!)r z??uS12byC2qX7<|rRJ@}B{(2Rfyq7MK#?Z6!QDuq2mo;(_ibBQg~1@z^@OcMI_V62 zhPz`VT+Qv+_m=)I2U@gr+7(1b%(vcSu%f%T6R%yhytB0{ClOt;~r1S#__t0?ma zT(>Ogk1M%xGLaPMMgoFV2{L1Hyn!6|Ss!EE$r_xr3zwRt7vwEpvIvuwqLHrjL+b4} z!mc+PkH34WJd3FldPu5Jy0mJn*P5@HzB1~0?rr9unNWs_uJjGl$_qaFBH& z#Fp9t65xtDJ$KYkwk2LErAdwhszMQRTa9Lxx9rII*Pq2c{9MCi>npC?1<{2hcNWo*o4$~D;qgEo9$Z`quH#;WH-(<~ zYVaU2FW%N#&yJ(&AqyxviQaxAdXA}_yXl4!XQ&DNx?0VVMN%8kFE#T;TE=BE46#X; z`UbZ!g?oX!0A_0LF$3;t#10s(^1-yHvyoL+0TY&VE;^t`NbN6!|LcW?n-)>c07Y_K zQxWSJAyLDB1Vipp=Z)B7O_QIqx^eoem)O=w!3vz&MwaZhlr^nR{5)O4cj z+G3SwSo($coy!`_fFMMn=f8V_r9wh49);TqtCfF|&Nu)-ie~jU&G?7YVqH~PBqSb#`TV2*&8?iDHgb>P3aW4$&b za7X%cYhEgNB)~AnPV4EaLHX@u;-!vPLpg#zgZ>hY?Z#NIfq(DI*Q>Xhb2$QA>62pAMB8J=zokmW$t#(=sB_0&tz6@YJanF~^ z?njwWuT?FBvGqQ{9acWtBGM)TT3MOEa^IUn9MaFgXRT(4W-m4v?`#*g11X)RLmY}k zwS~fpyO2c?1gNz;$er?})UQHF`B`4YJpcki5#VnyW>2aMfCA(vHYEA*9LbzI_&JRG^kC~|ev z*r!_Ub_SQi(EE8|9uhmCv6!Vf=djXt`OUO)5;_J!?l#?HRO;c3G#~Ko0fZ4Sv8Y`8 ziiymH&YGbD|5Ks@FSrc-IkHBtMOIeOGddU&x-q?Hr<9-P+E=p0bWxtu@^lj}V(IbI z?NMJ!5eiB}*i!XVl_jit!AO~Ye6J7$&2l)AvQ3R9O3@~b>GZQE>tuvUgz>OV1od+*F1Dh7s5@-u=7wWo_4jlfFYruDW zr5ztbc&A1Tul~2ApC0zMa6V}9dOs0Suwd`?dTd9eNamZ+>?7;=UjX5-^)gkY}gstDP!OX=e(@ap|u+Pu4|9l-Y8+3SIcs+GNzYl6T3( zX)56#FYpKF{#e5QIkOc-@b?H#f5Yy5eU8>?ZbJQV#EjuS1t5TZ{MW(Jf5M0Zx!_`qf!ui@um8$s4t zWk*knc#L#1Jxt%_pX&HZ3$#KyBoXSc+jAy_l^g;fL#c43^|9E5vFf{4mhJbY92O6s zMft7`mBZrDAw)6kak>*Nho7P5>tGnQpXuQ|lIW_(Y1=?Ow>4qVg6qyPUnw>+YIR-G z@{K!>5D_bfDAgl-qRTSb9SiH{6N%2Jak_vuF0(bkaGUfD?}RfCPdB$e2g$T=>eMtd zu^aWX>Z9oVo~d?^i-NyIiQ9(_$K2vApSYm_h+)Nce>NfAauH;7vpcfzx_`tykmMMF zpAF>|?59SB^E$R#E%f8w?gG#(I)};$=bQ^FpG@v{idS`BTT7YU>-8CNvSxn%G$Vf< za7M&{QqMmH+Wqf3?l%M0(f+ z@c*3nd2pwG3)rfisy4{@JLG4S==hDr2*aN7a{*V|T$MWtL!pF74EO>eY7jb9&Z|^p zSFHTBM2%G|yb7jA>F*t~_$k{n`yHor5l)~bVGE$d((uh;54Rus_-4MDWxRO7_0=t` zZ_WTw8+WH(1b*QM$f297dREA+DUbCL$dvIuLl{NdbvM&GhHKJPg-dDON4JQ#QZ@>$ za2y4^xBAXHeH<^I1M_!R$#Tpo?e!9FV<5q`C-@3dS9ex058`?67qN5ehMiuTVeHnq z7UD~uzahU5W1^B=)QkF(E|wUU(g0JD~)Bro{?|s&*%eK z6D^xcVZXA5fg``#1HmLGuiMyA)vpDt@KLTtQ`pjKvIA@={+fKmqFAr;}1~u z8Kd_)u9D=x9EYe}nb`#(E1hrhzh3#m2LH=(YLmNLhbQ3k&HC01rf0x^IV^qS(35lw zwQZ3n9wKrQ`SVdac#=H%74+cxaJ&jLCFJLWKK*rUU1_1OvVT5m$oDTpv(Zs$82syD zfBb|$p2Ghd6A55>wprD_Xvo&4kLFM}(^#i-5P4!eZ5!OiNv*56@<=uT3=l%*CHw#p z--w{5$^H>9Z2^?S%jn;xtpS0qe+uynKG`FzVBH4)vo2)q_}||zP9lTA^HNTGE~Mil zcB>AW&B$%Gio;5>zk}qS`{ z*gPOk`?nj1yeY8^Sohyp)*!aPl0KEVFr5>51p6x`pg}E$=9HVPD4#Ge0DXt~S1*Z%`lE4YaQl0~6KK(Z*ikM{6N+PmNQGeGjk z9Pu}IP7Ct(%lfsyf^6hur|pm^%mO-f}W$x}G0+2ZLPoc#R(1uE3XyZ)j z^XW_{&e6A`?AivPP)%31```)7CZr>vdn|O5a4ijHGy3376J}S6gc{Fykqo8enFpmO zg&aD9>1`Mv=RP$V9w*H#IxcH#S~h9Z=`@`~XVIy?u}8tp|f7M`DLXFfV5fBcF1-YE$(H&DE1)D399 zl}C7AuxmT7^OPpK8(mhi%+-0kZ}TLPa6W;0fdS zg!X2DL0{bM@;3w;!GopOZ!cbw4Va5-@a_%tOv874^F?<~I(mvwz)X&!9#QN%g8a(X zH(V7GLat=|6o3Do7bO}{d*ME6DqI6fCoF({^FBPC`8W3O!SYF8z@Yq^WZe~GCUbOL zl?QobvLPQf*&Z{$aa7~AIo0DU^yN3)>wqv#7W|hoG=+m`2x1brcCh~9{QX7+B!mZ=$I-RZsS!N zX4Y3HEP9G-3B`FRcHWSTW0o+#HwY2x6-p|L60-s8+6x|Vj7sIi4{7D8IHC*|-Sl!- zQM{0UG@G!8EWdj)72N__%@l<&+=z>V<%tWW#UcDvuy2kI;hAvvg2@}5imr5us?b;U z46t;JTrYn>7W)?-r>LIo47WT>*>C5f2VbS6Rae2Sd*7C*_L2}Z8>|y?k>~vap6lMD zPgelr5O;^jS61qeW6Pv}fW}7d-!1*#L=}7Y;v|RR+>_0zj=2bpJRkFZD8{1(yVH8# zq%cwLPV8VeIadqEE2(SykuSM`;Od4%!mVK`^x;fy9hrQZ-htMN%BP+RR&IznU0Z6` zdOUqPfri0Y}9-c%tklF&b!ECWmtM3H+kKLKhan4c?i@`;Sq!96uy zS>mZeraC*YHS%p&h&JNbdGUwS&5;|;2E21cfhqh1=aC&+H=_gJJNg@E{znJHe2Vdqdg*-4e=Kx%m;mTpu?ggXloa{b;RN^Y=XDI5w@J_Ke z+MuZFONF<`ab-VlVxQDQRfTA!V(z?Vd`wSuLJfKs7Z0}Edb_RK@qEv$A*|p%2=Q^; zeDFwiOdtehOM)v`Rz=9yM8B|at=bMNangSz{|wpmibbDR ztSsyi?ITOh>q66Dbf^^SkYydb^$qYWXpI0*sIT1usK}USb&0qTZw@O-_{d`QDp1~- zJoZmJY^IHjNte;r8V+h}ulG>!R?YDy)EsHf^yU&Nu-zNqwyLVWlqTqdXiH5xG#X}~ zYH46xUU8ozTB47%m<@1KnTyGe5A&TIZ{N@f6lt*TpsG@;d+`Zn?*Jo$u?Ed-!h;!c zu2UvW$C8-OHLP|~nOYT*b_J97&TT6)=or2KJ;{Lo-d+0NI{CmSad>)GTOg`A(sAfc z%=G#@0*7{lUxfB4S!K1qnvRgv-)rEGk)w<3y^a@&#DAJv8Tc~MYbSrFOOaX^=(=Ju z2t_U11M3`X2^4i0O{W+dR={X$SPl720Z`33DFMelgg1S~d6Lc;&yZiP&rM3>Lcl3kwrU0`g4?&tjA|Mok55Xl|B zb-Jbq!010-BW*1Uz6YSPuOlwIU*@<{vXD0c)tBGxoc$ih?w8;FAKJ8{v5q#)ZKiYN%m2$(?gFK0&x+*BVd%a$jG0#kpHoS&PPeHp%!$RB9zFiR zDyfeglbksOa;Wn)@Nn)&gYab_0~@tLmNcaODg;?)b0M98Z=0do5XE+=T_6YB=>e!O z3ZJxQ%*LOQA^W2aL}upHesKyWO7W1vqmw`_UKvV^1GF9gdWukrcojQR08npFEh1}H z68iso29=jxX=UWbEMTiP_yM{+Nqq8)Q=~Q6=orI)F*M&_oa2$il>+cD$ENhlvlO$w z|KkV#@dW>`P0?eoDJ6g;CHeU?=#t@|Bl(mISu2J7Mk$AS3m3j!NyQ6D#YuL%33V)q z%$F$bx>Nj=b^RaME3c&0B{qXg-S^EoDn^KU7$gm~z*|4xT?v%VqR>=E; zQBI}?Bkf`R=FvETS&tmR@ZJqD4!B=BN(9TFKpr zS#T!@eKvUfJSi6=tI%CjvH3_MENo6u!i>8W5ro9%5iO(xNgqks3#}ZeC)+;xo2+e9 z-Gggd%hA4f%AG`lIRBi`+2syIp4_7k&Vj>33(B0>8f=#C*MKi2*@E1X=(N>Ap1B%z zucr`7X>|xFDH%`j*f+u=Lw2`VObo9&eA>9F!3(l_M|oZ0m{-`VHivdWuQ6Yd-{a>0 zSA6$3*=Zo@>;?XtGO(1=zmtdlvl=i!^YkBeERyNpOwY9@2pbq4NlZ6=-drjB(gQ!e zhnU#h+=PUjGr4DI)M&{(9!Q8PM#O>?2*d9ELe5brR zw)T>$-k}FzBegFcsTE*;?ZcY}Z&E~Oy79f;s5a`j!5#texe%q%uoN;lP%i<~Y$4MO zl+nMHJA+R&mUq~PG%)%uHe6Sl!+KR|E% zz!ih&fjv&heSh|jf>C?*$(kqyZWL7@^Sp6{Qp zgU&R6VeL^2ge@VIWQ<|yM%eO-#LW6=w9_%zyno->fiJq^5ZRuSpx$TE-B2L-d7_?5 z0FYYLg@LxNBchJ6rAE_%;R`pfH!lcN@tl3JGLSqxTxJkcTUbU^v9VrVUwX7eipE~2#(xzbAs9TpfL zkat)F!(K=G?SyT?Jp>@d!%~K#fjQ`4vqQ>kM~D)>0tuazj}0foX3tCPD<3uZ%MC^Z z7XtZ5QT_OVNuqFnIf>bDsGbovKw9+Y-1k!Hgk6SVwWk_HHfN8W+DMqeqCz14Ku<{? zr?I?{_hg3@|IzgtEnMr>$d^y+I#}E5g^=9rKGd^Ndi&TJdLIe6b*{bG2dmnlB<^e4 zu4-ExNw%*VdZ>GZGO!U<89>k1R8qp`hv&YRe3fUbD%B==^dsxtZ?HVNc?qfUv_5p} z%V8TC{yapkun@&wPqF5Aab$fX9Y+_a#9Lqa_F|;pgMd9+RXHn4ec~B`2%_R_0qd?4 zO|v;|aU`WiuKiA09hR4;0%K@pH48M{2nFHV+aPpB&2zK8$CgLE^kduv;yo3QD1~bS zB3P^6-4IA^6S{3kXrF~}E_(^VDx0gz4tt`VFNQnX>Qy2^t}Vra)Eu+t6}99uCe5L- zMPv$T4~+wWk5kPW2S&#R7ZRUhwJOI8W-CW{BxbH5zcDO`w}ioAw6$iI*9{xZw$IBM&b zV@&wgbhsD~;3F9cR61&}klKlNhaU7)zNZXxZs!yWNJ(9i!c3ng%=*a8DSGSH^cO7k zOZD|nujn_Zh6M3AHniR3^Pb;T7%nhrhtrlNUw9DEM5e3$GUO8d_`5?Up9uu^(&h#y zf@)|kB;Mh8ZGj7TEk}nixkCgO21TCpSGmlfd-h+*(EYCL-mkmc0U4P=Kq7V83T!I_ zw%H~&E^bcN$a`(H!;Lq8E3cY^{AJcsa5^$$YOOlC9%)IPvWdp4vF(HV=rWG@0gj~Y-F$f zR2mAJ9y_~yd%P*CG7au+J74~c*353FCmmH#zs7ZA4hfiras2`43hjeS`Z?T)&y zDRYxWBeetd1-!gekx*H}nwl0+PzcP>tT>CF)9DieHPC0d5e%A^4$Kq;L@xQ4nUtFQ zsZClLCEqiUI^DBQrxZB5qX zD6S#XkU!;B{#R?Xzb@zeQ|W1;WtZ`2{oq|i=)Ld9`%OcW>%M*t?45nE$GFq&Ob~6| zPoWx}9TqO`Lh+S|HGN}U&EDp~^RVrG&VSs1K^vPml2{iOVQS$`Jz<_xUg;ZhLh)G7 z7R3u~Bf*ygCusb|@lT75?jJI4?XfZrl%6;q1>%VEHdx=y9V|GZn-mSn1#{)xb+Jt?fI+6Ub{7POuGIKV^^cYu7>Ja+nhQi+saVLqy>?xV4qcb-Y} zl`cmO-ceAJUyMcVt;V+|G>oQLg{0XBzov4Ap7O2A12$m*wALGrAQ8Cd)QEhLA0Q=Z z@ct}3+-d|#ymZ)$r^0Um>fv~S#Cf=#Z#=ns5&o>JZEAYF8w4hw7x)1}vU49{!EFeF zI+E<;2;Tx^zu5}Xm#c%`KEL8l5^P#}fJ(v$naCO&S;_V=GMtA|rDn1*Wjyy7P(`{w zS9#y$c<0PgFh!%*hp8`IW8F;0+J89;Zfqo&NEid!5MGg`z;A1*G0;@&vx{{_s8=+TV^<>#dK`z?~X?FEs-ARi$8!*PIC`SLS#r#eE9p= zBXZ)9P05wMGcLcpAz<_+_yMj2Xsw_mI`D^p03YaeFu)+v)=nnU zsR85{k3tgObms?XXU-C+RZtQB)LQb#mw!1^{?sw^#|`_xFiF_O92PZnxSBfB&z?Fv z7m}TCoEe+#M*HGa!FIsd^ITx5uL1rU3@%rP0Uw+J%r<~W0sXTyJwTFm=(mVx>MuFR z{~U|z5HvoSO|R5n*Vwd4exUg^KZ=QRKXg!Pq5C(b*Oks}tBwRMvoyggX`iD110u_P z`tfuOU80?Lu8$(lDjw?+df&LK2Uc1IaEUx9^s*?XKI9rk@21YqyV}Q8#P+($Z&s=e zk0{Y6;^nX|Z;2{-9}?TElLnW`TspncAlWD^-8jqS9#__91y0OW@(I5lF~Xc0HDEAM zVNzG~(ZfJzbZl(@l3(}uLHw)EeJ=k`eiH@~rm*w|KgS{gqHe6#PKiSDIQW6CkC+qh zoM!_L+q7m_+D9}>pQ-=&vGdcng+^E*9YMy!F-oma?PE?^Lc&ym(p`PHU%}z$B8FK! z1ezE=I+bP~cfFpIJj``@;5mDqD97|PVXa9n3_|xY(_Z(W^%d0_b|sIqt}q@yS>AF| z%C6#tmYHK@@d@))r&Jgq9IkbFzH_mYftpwP7@~F_lb__*GTp`aT*EK=+{~bZ0brx_oT*eP$Kw0+$|3hl_>j z)CQ&U32rJ?rRlpSmwP}Db<2rI*M5K~gmP35g~$&Z-dtlj-;NDFJrgcUFNvi%zByeCE>=J zn(EpEk@Fl(vN!hkDA}O&^_=#|QgDERCkD=0mlExrvpi_Wrux1z5+XJC4KYo@etqmZ z-LtigBo~lMCefF`YJpwZ3%$nPmcmgRyQFHS3Ke80Sl@sJa3P`_@SLBOg(h^~RI37; zLf&SnLpkYW0j$as9*fwjMt$rhDw1-ZA5psi0`A{uU|UUWNurF4$)B{A)H4FgF`k{b z=;S#3c+Lqla|cYHz=<|N&k>ed4o3>o$5-TXO^%luF4$REAHVd`+?wwt^`rDCHO3nB z%(x*@Mzi-E(KdEQ8M~0AZ84aN3g6tj>gvH~ZsbV2v$lRxy%&4bF0k%07yCwnK?@W5 z_^tNc!p2uAyV3>xl^XCB4Tq(?17~WbC)uSy1y;k`k1CYVK!6e6tdY;@DgJg>!gY0^9;8G$$R9zM8jaXKz(g9ZL36JI{P|mk;C{oXbrIe?rei z(Vs8|$wTtvp18Y}g2?s@kY++&pvMi;Jxm}U6-A}wuu6eR(tT6c+ z<}E2cK*+*U@A%94-Og51$tWG7_avkpE0I#-2?Sj;!2&JZ6P1{gRdY0<$;>S>_3Zr{ z)?zD%=J5iN$FJu!T~$F7DCIvZ1%#C66O9J_uKV02IOKJvp8>a)OiwE3PdDYhoB0wi zeV4)A(H0!^NXVfDRnq&Gs8iIP>vN-apjL18Xyx9>#A~_N8u%w;OO9V#&Kk(d9>?`@ zorJuty*yh4^3frj-Z%P}r7JM$R2BBw zZM_HbQ&4gnfK$D)HZe%nM$Vx~p)#mLe!->e%q!oHJ`*n`5WBOAbajBHZC1%%+P?bp zFbPa$%QcB+IQ?@)XL%Nj*f~Q$j*3Hw!%fZKIz)0_M4~xqJ|by^9Ec4<)3tk4^;i}OREQE%B|6AP!a;<5>$>Q(*W z#B6Hk?N{X=@T@Go$|(+ge&@)&Ui*#Uw|GBU-0(3pNm z^Rhe~ZlfX7okkktMl}ah~zU#VTwb9#jQTmqn{Hhsk8w_V+j>clbA zQ{`$kO)-XJk9jgR9&5W&J%z<-j06GnA~r7Ja>bAO82$_Nv8*`_535{lgpT$=bXn*flCXlqPef0f5q$6 z(Q^ae%lI+BAdlREq>J5)7e<6Q-&wD_1CxJClrWzvvNMa6uK3uy!HJ1Z!a4O8ZSoe;724}Q z^>>^|yQ|%(!l0jJ@!Kf+cmAKM%&!~Dq#!ZNX`iNHwD`L_p)|3o#EPjGN&iKK}xYbx{eI5x0#ys`?6Sr z`Za{#gFm`+yRtH-#-oc^wbx$oC;T}e5s{kuZ%9=N_TRvKMiVQ4gQNZ{{9zbdNen9R z18i1m!Z$^&Con&Zyw>9hBg0F_lr8(L&XMeGu=O9mYy@*YYo<1!+DoMk5i%j4^VKB7 zL`ftl5UBn2->I|-e|+}GefeWf{M#J(|Id1ugzo{J)wSSca~wDE%_h(^L-x-OXqH)# zbi`#mVL9I|I7{D?>)=WKJkRtSyR)hvi|5A8pXA6v|8mFCugJ51(irIXJJ(flXb^7Y zxS_>Y(oS+W&h?JI_NLzmjEx@u0UCrHEdh)kKtc`=-yI|aHH)?3sS7p^I)DH3es?CD zaz=o1f?5$t0&wH?@WWkr6U6ohNDI7$B-b%3|MB&|b8G*&b$?8oKbFjYwYhNmiHP%8 zlt=)9LV{j$E$5{rhh?U9iDjd;p3$E=3e$_rel6IwMP}XsdMLQyW2~rMsX~fs130!e z@~6L8l3#WMFzAAZGW;eSXBZ5!0nZ&k0n&h*rmv5{E8wMIG*|f%BpMHu+2H1_n3^1Q z`QGO0HBb?bA1ci8RA>vC#xe(@&@#BJ&{W^Nb?AhF&ZKYpw;hGLcJ_*STdsJq1DCv_r3idsvmGE*Y@1?8~*AC&${=?;C^FZqZ0JhdIOBUQR z8`^MRqw%b+tB$mIbE?hgdlKks#^mRd0|wT{LMs$UTocP9BYm(ujQ%Thfd`sWE$g06 zFu*UHam!bnA#9hwHXYO3I0c_wtYShI2#dG6zR@(9)W1f%N-xWI?9?1j1gY_4u!vcs zLrF7Ga(xNllLVJ$d&kKqO?*_zV^d4!B*c--`j_^uX3uyODJ9W+FWZTI1L!N@)Fs!X zIQ+E*Y!~v9Ogl()n_FJryCY%L=)8aJ6d(2J7zz!JxogO#>g&6ggA3TMPiwdHi!#zO zalt~6w0ctr`Ly~~02ZM(3)C^hdjQy^-w8W_D4+g~fnmE76*G%ICscf8j%lWtUcuXZcQ3v2r|TG!}Ck&PrLywgJkQZpnXB zz5Iu9*J+xwpiTvl(6XlJxbzvJJA*|EE;vdxtl46!zq+u)n;jO%64-Q_RsM zs;Azkj|7@Nyv?gFsq7+dD?EQ4trN~FO#*ij_(Kkt@ZF@uvZ8>A%i(*;b;;$;cV9}y zef``veq7wv{}hYtQc7LDYSH^vwE6jL-Y7sbtMJoN(n)FAL+!NCP%U7B7TvBRlmiB9 z`qU3l$65lRcxP%!cdc%0ht>2)Fd#&NR>noPp zGUt6?Yb}NP5L0ZVH`@zk3pF;q#KsB$GP$syTCIM1sjip-`X}@U%(X9o_G|#@+&A)t za-ar)aB**o!gk0Fz{3C8O#0q95(uB6Az#0;fco4{S#+4QwkWrYcs0Z3;ztXMz-(N* z@L-@QeOol2&nfNUx^iPPZA$v_^YVk?3GYqH2bG1gGO8uNA}J`qYzj=EUZNHcaJfM5 zks>(yj68mDBpVl5Zl-9dd_1m!-5uG9u=By5lzEgw(Q3JZ;v&<+c<;l{5+LYSqB(yv zOZfLxR0Je|dhP|MIJNYUH2Dy#XuDKeeW!Y+Qj8T2NLG4^)Cxsg4jmOVg zU5(-GTS45kyNWR44QyMvL&4fP7S3|Jp~=ad-l=1%*TRylD7Pl6W+;4Iu|udcgAMR= zl0x0KcPc*gT6<=7FfC363xLk2Zg)p`&jx5nRz*#J+Zl%L9WV^9PmjW5BWAL@fX8Ad z0qkT9MA1R18j^S8A)ee>mI5bZ4k#tbTGte zSo(b|^zAO`+1Fjw&v_SHJc)rXUb?+2DizVsOi z+-`G|P=+UmN~P&A-bVBDNy6eVdkyr9C0()Y+@)t1`rP+=jWG(8*yyGa?lMS=L-1}# zp(KK~89!+z_FmFr>NaVxk!I(SJ1bXAk0}vOfPh;xAzT3Eo&bhg;hs(Sl16rTK^o5q zah{o2*YuYjg|4td=NbG5L^H6K_qN#W{(q+~B$vBF{we$}~c~opVh^ z^o8_ZS^12C!v&Y;g(+K0IUk=NnahOkZa8S*vR}JTK~<^(qrOgb`^1&Ipf65(Du1V) z_i{6fd#wOveg(HIkT)iOEgLR$+Ov^@W%<9!zz{HmWB`G2=HX^y; zJ3*qsv!HPGT^XN)pJ{9bIzoGR`T#ULN14ictV#$KCMVUtKI4KV8qb`uSG>L91djEe zbjCYUqC8%ZHwAAb=vLsNhX%{lF%IRv0GLp8?e>tLphFHW9dBBOYb(kcpM*uU>oCpO zl_6{vrivppWG}vIbBk>CIzFK|+K4zoFwnp{qh=vA(~u{Xa)C=BA}un^5jO>%OgxS6 z=z-1BKCX8Tm^&HHyguoMB}_u$P8y$l^R;;)rR&oL;gkEelt<-#jkw;16eX;4a5_;7 zyO`(wX}RRowdY!FdgnD*Kqp+g(oJI1uU;xB#3Q#JH_Qp*6nBdxjd~9=#L<5OJ z4rt#?U%B}u!_|;(gG(_%58A8NqMn&@J}a22N!T?wjR%kGX%g=xKV-7Z{tDuR^m4)$ zys6fU@oJ_xHejTdrfsI2!#F5R zf!z&VK;b@f2Bv!-@8#1)`BkiJv+WkKmX@iJFUlbmikP8xBJ(NFb@*JxFyj~osYQGa z(w|)Hm>9TIZ`(zfr7WXe3e&r#Q-5f-HK_^3?ec37*DJOb2wut1W=%yAK=y`Ni9WZW zJ~Ed&qxdB| z!z!HRV<_G~4nr5s*yUlXW0L9rC{IY`W#Q|Syq7)c>ekXo8TCrbGfYmBPNL1y%+)rL zcEY32T3@hTjC#QmHKt|}VYs*29s+O}S3@?Wz5?j6&1xwCj27+=iHFC{*m!#cr1oM% z(E_i*=nEr6Ms%HvK_zqLM0QBw9r5qZdQK%i*{I2_tnc1BwE4rk_c*|CYGG}DV&9&cxd;< zL+zZf6BpyvZc^!geZcl zyESS&2Rr?e^HnZ?jX82yJKR^;u1~~e6F&g;O8EK}`0kCh#k+X!vp$de%U#BMZ(?bs zN7wT0_OmcX(~?Z&y`2*Ba<0Lrv z5T`h`HGa*y7U4B1LQ1FnwA?c5591WX=M_$p`)5i~AqrYWcKXsOSF!Uo=|jSpZQ^iK zayDP|J9S>!o>Q$aiki41ywn1TjJYuGHZQ)3{nuObJN^@2jAs4B4ft%|otl3Xagaw= zB5a}G`mt%vf`jBvEQY2{Yc5Vt*=w_5oR!-sWz6z=HUn7la);7IB@5<(5&9E5v+_ry zJ$H-&Ftoz{YCnNvA_O3ImsdNd4r9_IbDkvBb+#oGr01;SvSx~?wfKoMtrhq7+OEnY` z0V#suf)ouPO^8TaiV!J66c%aH1VRxofP@kVA&K{(yL<0)pWQ$A&%O8AA36DP=K1E# zyqU@QX6Bno=2p;%Bb#_+T>IqobEILMTbA0{7vH$;oP_GDeS`?ZYpo29TcmP zid2bZYK1COQysBawdBc9s(q)C5+e?Y5LntpSVH3z!QplOddqy4OaI*zpOi4`add}$ z_O0m+d&EjJrFfy~G&wzO3OD*0G)4L4fjjy#qYymmd9YWnZOuvN5=(~|AI_fQibt(k zVcg)fO$>v5v5St{0rK)~sH1eg89}9G3la4nYSzljx)eCMLxIN2_~b|}$ALK9RPHFe zH5i_#CAD~Jn1u6~{>e^VJW(qCmGLtMQ4yq;RBu<=Yk-rUHy*-a6A8C0@ zg%K60ttO4+R}ZGM?LJ~-tX9uWOUdO~!73o&Idz+vrl4OGE-=+iuz?-Kt<9u68b-vj z^FYy$SB_=J?P|7r<&R`pEE*M5#b?;|*9j7E3RL83gI-@FYYmFN$-%krA{ zBTmZYlLBVLgXW7!!BMu82k00gcQdygH3ZM(y{@J7@Rx^ngOQr_+@;8T;!V{J))c>D z@y#)lpzFY-=7G$sW80HGn8i*Scr%6CT^tHSaE&bl-^@W%M1*B&(eJffO1~96PzZG+ zIE4jnl=F1mgflzO6>ianB0t5jK9D~Ko~meG6Y)Y-ooQc&OpnjszS6slD|>LRzdgT& zrli-C^&z0aCCnR%TQbfpUTrFLp|oG zir9vY!gp##X~!44OM5Y{Z>Uw1@%3zdU1ID72FY2Dqmo>wNJgNL%#G*o(v{;e-J;#c zw7jyOzc)q^;EWTwejYi82OE{slZuDmT&eZmewM+Z0^iV7;GA8(#gZu!)m?&kRk&na!ME56}P zV>&eg+tRimjWFB+&!u{UV%T+|nHx`U1?P+`D6F80f1Ix9rxn<&6|A1FL>{CpGN5FV z2YY(!;(%+9L>b!_qBLdgBjeQkhZr`1ddSs;_Xe7icP}(Jn$Lh^Z~aXOtdbzF?qOoX6&Wt=1IVzsg$$%;nH*F-+vkPeDAlQ!oFZ2 zi1<{f3N4I}@+-rhB}El;k&NiD@Y5B52N6I9oRZgVn)WMw)t^bv$(+CmsQTu^Yez2)kf`Vr4~4 zw3gvX7q1J}!0w!DT?g2Ue+C%jaRF2IZlW973(Z?yxl?Cgye?jT{~6iB?rOPT zR)hY&+SXU5Kn3P+O#he27G?uoY@t`qSP0pg?t?z&Xuwge>%j~@nj~Xgl4=fUagTi8 z+xSZOPLi{z$(XK}B|y{gYq@kwQF3-*D)Y7oa8R2S(EM~MfI@W0Bg`&Jm|c)W$v8hg zn&<{%XAVIwdr^R%$6)A(9+Ie-?aihYD)leb>-Kwa(mi5AfgI z!ycatxCdx93PMfbmszA?iv&UTga{xzWdZzi`%fcig8nG_ejo`NS02L@m;>(UGvk5j zqXZ^Drls+VRbqCnvSu@_Ihz55zD?1kQ$X{*ut_qny7}Nrb*$CJow4{4eh1C2vg54% z;+e(B6*}w%7?APEu8cAvn%sCMe+If5@oiyj4zykq{$oUB*BPBP6_&6wc7$T13B;;O zlB~6?)h+EK5qAQW!P}SPTWccTQqDh6)uP~e(@LkC4CNw3@Sof%t|kNXz5cL}9SiIzLFKS{S|lScDt@A5P$z308vJ$>T%U59zuFFaul2;ou=;qvDPjejA_HUO!(KFf1` zRwm+XS2yIDGQITpp0myEwtdP)c%mg2$g{`Mu*cC98xHx(ujmoS(kB14O@YTniz;db z)%OqGR~TuZZLj_&xvodtpO%@YvwvhsYGg@zz-%uw;J|Eoxl%mx^y{$nk*8YeC?b7C8ADeZ4w7*tFuW9dYvb&5iLAy@sQ9QY^~7 wHR*AnAFHkxU=wuyzrOgZ%vj>2u<^U6Yw=RptSS(%v>P@YNKAhDXn!902ZbSYg8%>k literal 0 HcmV?d00001 diff --git a/invokeai/resources/node_docs/en/images/highres_color_correction_result.jpg b/invokeai/resources/node_docs/en/images/highres_color_correction_result.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e7fe4c835b1c773f25d7f305d6a6d2a5cd1eac1b GIT binary patch literal 399683 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

Ezvbs^Ro-@c#|+KWlA-UlMb5Ivrc{)sHPH6 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

  • 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
  • 1fZ`@c5p;onft_c0rn5xWi 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

    sZji>VB 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 0). - - Modulus A%B: Remainder of `A` divided by `B`. - - Absolute Value of A: Absolute value of `A` (ignores `B`). - - Minimum(A,B): The smaller of `A` and `B`. - - Maximum(A,B): The larger of `A` and `B`. -- `A`: First integer (primary operand). -- `B`: Second integer (secondary operand; some operations may ignore it). - -## Outputs - -- Result: Integer — the result of the selected operation. - -## Example Usage - -![Example](./images/IMAGE_PLACEHOLDER.png) -Use the Integer Math node to compute integer exponents or combine two counters with a chosen operation. - -## Notes: - -- Division and modulus by zero are invalid and will produce a validation error; ensure `B` is not zero for DIV or MOD. -- Exponentiation (EXP) requires a non-negative exponent (`B` >= 0); negative exponents are rejected because they don't produce integers. -- Division uses integer division (equivalent to int(`A` / `B`)), so fractional portions are discarded rather than rounded. -- Absolute Value ignores the `B` input. diff --git a/invokeai/frontend/web/public/nodeDocs/en/rand_float.md b/invokeai/frontend/web/public/nodeDocs/en/rand_float.md deleted file mode 100644 index 5466bc7b87d..00000000000 --- a/invokeai/frontend/web/public/nodeDocs/en/rand_float.md +++ /dev/null @@ -1,24 +0,0 @@ -# Random Float - -The Random Float node outputs a single non-deterministic floating-point number sampled uniformly from a range. Use it to introduce small continuous variation or random seeds for float parameters. - -## Inputs - -- `Low`: Inclusive lower bound (float). -- `High`: Exclusive upper bound (float) — generated value will be >= `Low` and < `High`. -- `Decimals`: Number of decimal places to round the result to (integer). - -## Outputs - -- Result: Float — a randomly chosen float rounded to the specified number of decimals. - -## Example Usage - -![Example](./images/IMAGE_PLACEHOLDER.png) -Generate a randomized float parameter (e.g., color hue offset) with controlled precision. - -## Notes: - -- This node is non-deterministic (use_cache=False) and will produce a new value each run. -- The node rounds the sampled float to the requested number of decimals before output. -- Ensure low < high to avoid errors. diff --git a/invokeai/frontend/web/public/nodeDocs/en/rand_int.md b/invokeai/frontend/web/public/nodeDocs/en/rand_int.md deleted file mode 100644 index e94ffa84fb7..00000000000 --- a/invokeai/frontend/web/public/nodeDocs/en/rand_int.md +++ /dev/null @@ -1,23 +0,0 @@ -# Random Integer - -The Random Integer node outputs a single non-deterministic integer drawn from a range. Use it when you need jittered counts, random indices, or other unpredictable integer values. - -## Inputs - -- `Low`: Inclusive lower bound (integer). -- `High`: Exclusive upper bound (integer) — the generated value will be >= `Low` and < `High`. - -## Outputs - -- Result: Integer — a randomly chosen integer in [`Low`, `High`). - -## Example Usage - -![Example](./images/IMAGE_PLACEHOLDER.png) -Generate a random index or offset to vary results across runs. - -## Notes: - -- This node is non-deterministic (use_cache=False) and will produce a new value each run. -- high is exclusive; set high = low + 1 to get either low only. -- Ensure low < high to avoid errors. diff --git a/invokeai/frontend/web/public/nodeDocs/en/round_float.md b/invokeai/frontend/web/public/nodeDocs/en/round_float.md deleted file mode 100644 index b135b91c2b5..00000000000 --- a/invokeai/frontend/web/public/nodeDocs/en/round_float.md +++ /dev/null @@ -1,23 +0,0 @@ -# Round Float - -The Round Float node reduces a floating-point number to a specified number of decimal places. Use it when you want to control numeric precision for display, comparison, or downstream calculations. - -## Inputs - -- `Value`: The float value to round. -- `Decimals`: Number of decimal places to retain (integer). Use 0 for whole-number results. - -## Outputs - -- Result: Float — the rounded value. - -## Example Usage - -![Example](./images/IMAGE_PLACEHOLDER.png) -Round a noisy parameter to two decimal places for stable downstream behavior. - -## Notes: - -- Rounding uses Python's round behavior (ties round to the nearest even value). -- Negative values are rounded according to the same rule (e.g., rounding -1.5 to 0 decimals yields -2.0 under nearest-even tie resolution). -- If you need integer results, use the Float to Integer node which supports rounding to multiples and different rounding methods. diff --git a/invokeai/frontend/web/public/nodeDocs/en/z_image_denoise.md b/invokeai/frontend/web/public/nodeDocs/en/z_image_denoise.md deleted file mode 100644 index 02d17c4f942..00000000000 --- a/invokeai/frontend/web/public/nodeDocs/en/z_image_denoise.md +++ /dev/null @@ -1,17 +0,0 @@ -# Z Image Denoise - -The Z Image Denoise node performs diffusion-based denoising on a latent image using the Z-Image model architecture. It can be used in either Text-to-Image or Image-to-Image workflows. - -## Inputs - -Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. - -## Example Usage - -### Text-to-Image - -![Z Image Denoise Text-to-Image Example](./images/z_image_example_t2i.png) - -## Notes: - -- For Z-Image Turbo models, the indended Guidance Scale (CFG) is 1.0, which disables the negative prompt influence and doubles the generation speed. diff --git a/invokeai/resources/node_docs/_INFO_.md b/invokeai/resources/node_docs/_INFO_.md index 349c2b0950e..560b88b240d 100644 --- a/invokeai/resources/node_docs/_INFO_.md +++ b/invokeai/resources/node_docs/_INFO_.md @@ -1,54 +1,64 @@ This folder contains developer-authored node documentation to be displayed in the Workflow Editor. ## Naming: + - One Markdown file per invocation, named exactly after its invocation_type with a .md suffix (e.g., "img_crop.md" for the "img_crop" invocation). - Files live in this folder (and in language subfolders such as en/). ## Authoring: + - Description: Explain the intended use case(s) for the node, and any important details about its behavior. The intention here is to explain to the user **why** and **how** they would use this node. The description should not be a repeat of the node's technical specification, but rather a user-focused explanation of its purpose and functionality, written in clear, non-technical language. -- Inputs: List and describe each input port, including expected data types and any important details about how the input affects the node's behavior. +- Inputs: List and describe each input port, including expected data types and any important details about how the input affects the node's behavior. Use code formatting for input names (e.g., `Input Name`) when listing and referring to them. -- Outputs: (if applicable) List and describe each output port, including data types and any important details about the output data. +- Outputs: (if applicable) List and describe each output port, including data types and any important details about the output data. If the node has a single output that is already explained in the description, this section can be omitted. - Examples: Provide one or more example usages of the node, including images where applicable. Each example should include a brief description of the scenario being demonstrated. ## Images: + - Place image files in the images/ subfolder next to the markdown file. Reference them using relative paths in the markdown. - Ensure image names are unique and descriptive. Images can be reused across multiple docs if applicable, e.g., SD1.5 denoise and prompt nodes can all be shown in a single image since their usage is tied together. - Images can be screenshots of the node in use, example outputs, or diagrams illustrating concepts. -- When displaying node use examples, keep the example focused on the node and its immediate upstream/downstream connections, and, for best readability, keep the image width approximately two nodes wide. +- When displaying node usage examples, keep the example focused on the node and its immediate upstream/downstream connections. For best readability, keep the image width approximately two nodes wide. [Use IMAGE_PLACEHOLDER for any images at this time. We will replace these with actual images later.] ## Submitting: + - Before you submit a PR, make sure you run `lint:prettier` and `pnpm build` to ensure proper formatting and to pass tests. - Check that your markdown renders correctly in a markdown viewer in the UI. -Doc Template: ---- +## Doc Template: # [NODE NAME] + [Node description goes here.] ## Inputs + - [Input 1 Name]: [Description of input 1] - [Input 2 Name]: [Description of input 2] - ... ## Outputs + - [Output 1 Name]: [Description of output 1] - [Output 2 Name]: [Description of output 2] - ... ## Example Usage + ### [Example Scenario 1] + ![Descriptive Alt Text for Example 1](./images/[image_file_name_1].png) [Brief description of Example Scenario 1.] ### [Example Scenario 2] + ![Descriptive Alt Text for Example 2](./images/[image_file_name_2].png) [Brief description of Example Scenario 2.] ## Notes: + - [Any additional notes or important details about the node's behavior.] diff --git a/invokeai/resources/node_docs/en/float_math.md b/invokeai/resources/node_docs/en/float_math.md index 72abafcf7ba..6a25494d5b9 100644 --- a/invokeai/resources/node_docs/en/float_math.md +++ b/invokeai/resources/node_docs/en/float_math.md @@ -1,3 +1,34 @@ # Float Math -Float math node docs placeholder. +The Float Math node performs common floating-point operations on two inputs. Use it when you need precise decimal arithmetic, roots, exponentiation, or min/max comparisons with float inputs. + +## Inputs + +- `Operation`: The operation to perform. Choices: + - Add A+B: Adds `A` and `B`. + - Subtract A-B: Subtracts `B` from `A`. + - Multiply A\*B: Multiplies `A` by `B`. + - Divide A/B: Floating-point division. + - Exponentiate A^B: Raises `A` to the power `B` (watch out for zero-to-negative exponents). + - Absolute Value of A: Absolute value of `A` (ignores `B`). + - Square Root of A: Square root of `A` (ignores `B`; result invalid for negative `A`). + - Minimum(A,B): The smaller of `A` and `B`. + - Maximum(A,B): The larger of `A` and `B`. +- `A`: First float input. +- `B`: Second float input. + +## Outputs + +- Result: Float — the result of the selected operation. + +## Example Usage + +![Example](./images/IMAGE_PLACEHOLDER.png) +Use Float Math to compute a square root or fractional power for precise scaling. + +## Notes: + +- Division by zero is invalid and will produce a validation error; ensure `B` is not zero for DIV. +- Exponentiation will error if raising zero to a negative exponent. Root operations that produce complex numbers are rejected. +- Square Root operates on `A` only; negative `A` will be rejected because it would produce a complex result. +- For integer-only operations, use the Integer Math node. diff --git a/invokeai/resources/node_docs/en/float_to_int.md b/invokeai/resources/node_docs/en/float_to_int.md index cc485d34636..0f70376aa4b 100644 --- a/invokeai/resources/node_docs/en/float_to_int.md +++ b/invokeai/resources/node_docs/en/float_to_int.md @@ -1,14 +1,17 @@ # Float to Integer + The Float to Integer node rounds floating-point numbers to integers. At "Multiple of" 1, it performs standard rounding to the nearest integer. By adjusting the "Multiple of" parameter, users can round to the nearest specified multiple. Multiples of 64 are helpfulfor image dimensions that are more compatible with denoising models, 2 will return the nearest even number, etc. The "Method" parameter allows you to choose the rounding direction. ## Inputs + - Value: The floating-point number to be converted to an integer. - Multiple of: The multiple to which the value should be rounded. Leave at 1 for rounding to the nearest integer. - Method: The direction to apply rounding: - - Nearest: Rounds to the nearest multiple. - - Floor: Rounds down to the nearest multiple. - - Ceil: Rounds up to the nearest multiple. - - Truncate: Rounds towards zero to the nearest multiple. + - Nearest: Rounds to the nearest multiple. + - Floor: Rounds down to the nearest multiple. + - Ceil: Rounds up to the nearest multiple. + - Truncate: Rounds towards zero to the nearest multiple. ## Notes: + - This node uses numpy floor/ceiling operations, so direction is consistent for both positive and negative values. For example; flooring 3.7 results in 3, but flooring -3.7 results in -4, and not -3. To round towards the next lesser magnitude (i.e., -3), use the Truncate method. diff --git a/invokeai/resources/node_docs/en/images/z_image_example_t2i.png b/invokeai/resources/node_docs/en/images/z_image_example_t2i.png index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..795aea49f23c32a80a2962352d4ad0062294218c 100644 GIT binary patch literal 133280 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