diff --git a/.gitattributes b/.gitattributes index a6344aac8c09253b3b630fb776ae94478aa0275b..288e54e855fb24d6580a1132f17f99e80cdce689 100644 --- a/.gitattributes +++ b/.gitattributes @@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text *.zip filter=lfs diff=lfs merge=lfs -text *.zst filter=lfs diff=lfs merge=lfs -text *tfevents* filter=lfs diff=lfs merge=lfs -text +software/** filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore index dc62faad07bc9a2e609141f982774914730fc77d..7dbcd3b1c849657d9e8846c871dc3f46ce2f9cf8 100644 --- a/.gitignore +++ b/.gitignore @@ -26,6 +26,10 @@ test/users/user_accounts.csv .env.prd .env.example +CLAUDE.md + +/experiments +src/rag/experiments/ erd/ playground/ playground_retriever.py @@ -33,4 +37,6 @@ playground_chat.py playground_flush_cache.py playground_create_user.py API_CONTRACT.md -context_engineering/ \ No newline at end of file +context_engineering/ +sample_file/ +test_tesseract.py \ No newline at end of file diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000000000000000000000000000000000000..4678f2f16db31b66487088a8eddf39298add06ba --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,25 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "DataEyond: FastAPI (debug)", + "type": "debugpy", + "request": "launch", + "module": "uvicorn", + "args": [ + "main:app", + "--host", "0.0.0.0", + "--port", "7860", + "--reload" + ], + "jinja": true, + "justMyCode": true, + "envFile": "${workspaceFolder}/.env", + "console": "integratedTerminal", + "cwd": "${workspaceFolder}" + } + ] +} \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index ad4faea1d89d3fbbebf2d905a74c02c4513fed9a..14418425b0c48755469efd4a1df7626584893083 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,6 +12,8 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ libpq-dev \ gcc \ libgomp1 \ + tesseract-ocr \ + poppler-utils \ && rm -rf /var/lib/apt/lists/* RUN addgroup --system app && \ diff --git a/README.md b/README.md index 6e6319e163f6931f17fe7a98d97b5977db250954..8626abee01439c4c94352a4c751feea79ee65fe7 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,8 @@ short_description: AI Agent core service Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference +# Agentic Service Data Eyond + How to run: `uv run --no-sync uvicorn main:app --host 0.0.0.0 --port 7860` diff --git a/main.py b/main.py index 9328bd702ff71b9e98871b92b1e9e143f4e37341..7398bf92cc5a96f9e118a3040b22cc257ef37903 100644 --- a/main.py +++ b/main.py @@ -10,6 +10,7 @@ from src.api.v1.chat import router as chat_router from src.api.v1.room import router as room_router from src.api.v1.users import router as users_router from src.api.v1.knowledge import router as knowledge_router +from src.api.v1.db_client import router as db_client_router from src.db.postgres.init_db import init_db import uvicorn @@ -35,6 +36,7 @@ app.include_router(document_router) app.include_router(knowledge_router) app.include_router(room_router) app.include_router(chat_router) +app.include_router(db_client_router) @app.on_event("startup") diff --git a/pyproject.toml b/pyproject.toml index 240485931fd9a2fc88a7a595bdf72013d1bf509f..d609856e69dbc70b617083800fda98b15fea4573 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -79,6 +79,17 @@ dependencies = [ "jsonpatch>=1.33", "pymongo>=4.14.0", "psycopg2>=2.9.11", + # --- SQL parsing / guardrails --- + "sqlglot>=25.0.0", + # --- User-DB connectors (db_pipeline) --- + "pymysql>=1.1.1", + "pymssql>=2.3.0", + "sqlalchemy-bigquery>=1.11.0", + "snowflake-sqlalchemy>=1.7.0", + # --- OCR (pdf processing) --- + "pdf2image>=1.17.0", + "pytesseract>=0.3.13", + "pypdf2>=3.0.1", ] [project.optional-dependencies] @@ -92,16 +103,6 @@ dev = [ "pre-commit==4.0.1", ] -[tool.uv] -dev-dependencies = [ - "pytest==8.3.4", - "pytest-asyncio==0.24.0", - "pytest-cov==6.0.0", - "ruff==0.8.4", - "mypy==1.13.0", - "pre-commit==4.0.1", -] - [tool.hatch.build.targets.wheel] packages = ["src/agent_service"] diff --git a/software/Tesseract-OCR/ambiguous_words.1.html b/software/Tesseract-OCR/ambiguous_words.1.html new file mode 100644 index 0000000000000000000000000000000000000000..b27d902b4a25b56cce0b9a27272396fa6af973f8 --- /dev/null +++ b/software/Tesseract-OCR/ambiguous_words.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9e122cc6b60a9515b253a99321354ae2de2d5886f72ee6e88841c38f111ff86 +size 17823 diff --git a/software/Tesseract-OCR/ambiguous_words.exe b/software/Tesseract-OCR/ambiguous_words.exe new file mode 100644 index 0000000000000000000000000000000000000000..83f9bb889f0c3b58eb25d602a5ba1470095c167c --- /dev/null +++ b/software/Tesseract-OCR/ambiguous_words.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85c23ac33fa8235cf5f3adaf87b97c506a56e71a96dd0f7bb83b373c029c2ae5 +size 1066496 diff --git a/software/Tesseract-OCR/classifier_tester.1.html b/software/Tesseract-OCR/classifier_tester.1.html new file mode 100644 index 0000000000000000000000000000000000000000..ea6e1d635f48e0529bff10087e80aa84b5976b87 --- /dev/null +++ b/software/Tesseract-OCR/classifier_tester.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb84879ff16408961c96c40dd2640647cf74b8d779a614ef4f86e6eb8daa2b0c +size 19529 diff --git a/software/Tesseract-OCR/classifier_tester.exe b/software/Tesseract-OCR/classifier_tester.exe new file mode 100644 index 0000000000000000000000000000000000000000..09e0503dae51abdeb96c69bb8d96d4d5e7cee085 --- /dev/null +++ b/software/Tesseract-OCR/classifier_tester.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e059fdeafdc95a6a4220619226ad0d0e7a48e95fd6902c7cdd523af376d3bd74 +size 4987040 diff --git a/software/Tesseract-OCR/cntraining.1.html b/software/Tesseract-OCR/cntraining.1.html new file mode 100644 index 0000000000000000000000000000000000000000..d54e5190043a0154215689715e4f531622c308f2 --- /dev/null +++ b/software/Tesseract-OCR/cntraining.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a2adb8ab0f247b19462b83364bc41dd15004a9d5cade19c678d5be52d9bc756 +size 18156 diff --git a/software/Tesseract-OCR/cntraining.exe b/software/Tesseract-OCR/cntraining.exe new file mode 100644 index 0000000000000000000000000000000000000000..bb896f2ffbfff0b4a2ba0ceb4f5e87b1796be4d6 --- /dev/null +++ b/software/Tesseract-OCR/cntraining.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ea0cf4a9e750cb73bafddcc1bd14193e3dc15f2874a5e5ba4191b4662d0560e +size 4709776 diff --git a/software/Tesseract-OCR/combine_lang_model.1.html b/software/Tesseract-OCR/combine_lang_model.1.html new file mode 100644 index 0000000000000000000000000000000000000000..a0ea430c1dd2e2d61b322e122c922001266d61e8 --- /dev/null +++ b/software/Tesseract-OCR/combine_lang_model.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9daa4a2944dc0d3c38758670bbbb07dccc17cc2176b2b5e571ce4c99fee04654 +size 21055 diff --git a/software/Tesseract-OCR/combine_lang_model.exe b/software/Tesseract-OCR/combine_lang_model.exe new file mode 100644 index 0000000000000000000000000000000000000000..052e121977df931bc958a518085c38c0c6ccb860 --- /dev/null +++ b/software/Tesseract-OCR/combine_lang_model.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddd26b40ab4c2633dade1a2678769e9c51075e552be9161d3ce652f52546697e +size 3503232 diff --git a/software/Tesseract-OCR/combine_tessdata.1.html b/software/Tesseract-OCR/combine_tessdata.1.html new file mode 100644 index 0000000000000000000000000000000000000000..36acc2398aeecbedd4da775eee544da1044b5d5b --- /dev/null +++ b/software/Tesseract-OCR/combine_tessdata.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9111e27f1333055506be7d14948b265e031aa0f834b6f68f67ed8c9a12111c60 +size 27130 diff --git a/software/Tesseract-OCR/combine_tessdata.exe b/software/Tesseract-OCR/combine_tessdata.exe new file mode 100644 index 0000000000000000000000000000000000000000..be52194cf2cbe1949bbe880e1505d4c2241358f9 --- /dev/null +++ b/software/Tesseract-OCR/combine_tessdata.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f905d89cd6bd3737fa78369e6a91ce06a3f10641f56a2e8671e0d6c6168f485a +size 1281096 diff --git a/software/Tesseract-OCR/dawg2wordlist.1.html b/software/Tesseract-OCR/dawg2wordlist.1.html new file mode 100644 index 0000000000000000000000000000000000000000..db5ec938c725d539c229a730ad02e33c3fe46aee --- /dev/null +++ b/software/Tesseract-OCR/dawg2wordlist.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81566db3708b5a5dd581255eba17a244e51b3b14d9b6cfd82d529c87a0881cad +size 18336 diff --git a/software/Tesseract-OCR/dawg2wordlist.exe b/software/Tesseract-OCR/dawg2wordlist.exe new file mode 100644 index 0000000000000000000000000000000000000000..8d5bd1949e71d5d79e337750ba4590a8fb5c1e71 --- /dev/null +++ b/software/Tesseract-OCR/dawg2wordlist.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee984cc2c0967473a2dcc361274f3e296c9b3019f8840b85446e5ca166f8a532 +size 575032 diff --git a/software/Tesseract-OCR/doc/AUTHORS b/software/Tesseract-OCR/doc/AUTHORS new file mode 100644 index 0000000000000000000000000000000000000000..c64be3929d437a23bf27d996a6ee8780e601bbee --- /dev/null +++ b/software/Tesseract-OCR/doc/AUTHORS @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d69deaae7deeaa053e597906f19482aa56e3de1536851cd20600a09d888c1224 +size 838 diff --git a/software/Tesseract-OCR/doc/LICENSE b/software/Tesseract-OCR/doc/LICENSE new file mode 100644 index 0000000000000000000000000000000000000000..5f65c4cbaa5613266cff935d0ef43622a7958ed6 --- /dev/null +++ b/software/Tesseract-OCR/doc/LICENSE @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ddf9be5c28fe27dad143a5dc76eea25222ad1dd68934a047064e56ed2fa40c5 +size 11560 diff --git a/software/Tesseract-OCR/doc/README.md b/software/Tesseract-OCR/doc/README.md new file mode 100644 index 0000000000000000000000000000000000000000..cf87c056848b90db2a35bf36b8a686b54418d172 --- /dev/null +++ b/software/Tesseract-OCR/doc/README.md @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7918a2fc5dd61b3ea013601f45007604574452ce4934859dc7f43e2e459c019f +size 8619 diff --git a/software/Tesseract-OCR/libLerc.dll b/software/Tesseract-OCR/libLerc.dll new file mode 100644 index 0000000000000000000000000000000000000000..bf521635ecd528e818e94e7094668cc769b58ec0 --- /dev/null +++ b/software/Tesseract-OCR/libLerc.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ab688c7c5c4afdfee0f519f942759137067a7876a1c1bb825ee575b0a5760b1 +size 761261 diff --git a/software/Tesseract-OCR/libarchive-13.dll b/software/Tesseract-OCR/libarchive-13.dll new file mode 100644 index 0000000000000000000000000000000000000000..fe29d22efbab2b3f2ff1f307791ed756fe86303d --- /dev/null +++ b/software/Tesseract-OCR/libarchive-13.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98b9b7e9259f23eab6749ee25cca2c0643f09df6b23c58229fd43bf6249195e9 +size 769154 diff --git a/software/Tesseract-OCR/libb2-1.dll b/software/Tesseract-OCR/libb2-1.dll new file mode 100644 index 0000000000000000000000000000000000000000..b52f586ab3bde9f5b6510cdd01f9de439c2afe47 --- /dev/null +++ b/software/Tesseract-OCR/libb2-1.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fb8418a1172042dab5227fcd466b1bf293737f5b5cf35359e851516227f109c +size 34372 diff --git a/software/Tesseract-OCR/libbrotlicommon.dll b/software/Tesseract-OCR/libbrotlicommon.dll new file mode 100644 index 0000000000000000000000000000000000000000..ac60465e8714af003ec4b0b7a4a459a1c64c3e53 --- /dev/null +++ b/software/Tesseract-OCR/libbrotlicommon.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62f363f6aac0d54ce7b115c0412b19e0fe5480f4e6fc1254f663b0ab6868e46f +size 143397 diff --git a/software/Tesseract-OCR/libbrotlidec.dll b/software/Tesseract-OCR/libbrotlidec.dll new file mode 100644 index 0000000000000000000000000000000000000000..a29675d689fddc31e59388d702cebb8a6a0ef907 --- /dev/null +++ b/software/Tesseract-OCR/libbrotlidec.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d6c0f954b6f2db1c1c5fd5904886ae055859a02ca31b6dde5f96f6b0259d23f +size 60412 diff --git a/software/Tesseract-OCR/libbz2-1.dll b/software/Tesseract-OCR/libbz2-1.dll new file mode 100644 index 0000000000000000000000000000000000000000..332440012fcd207772e155700a89d0fe5f93f7d1 --- /dev/null +++ b/software/Tesseract-OCR/libbz2-1.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b79cd3a7102e359ef6324e98966a67939e58ec2b651ae2847cae84a4dfa453f7 +size 100964 diff --git a/software/Tesseract-OCR/libcairo-2.dll b/software/Tesseract-OCR/libcairo-2.dll new file mode 100644 index 0000000000000000000000000000000000000000..3207f78c8a6d89a1bd58c15b58ee9d893a38e3f3 --- /dev/null +++ b/software/Tesseract-OCR/libcairo-2.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a30ed066ebbb5ed6e97da2c119d61a24e4135518c18f8cd8c61299a5182e720 +size 1207571 diff --git a/software/Tesseract-OCR/libcrypto-3-x64.dll b/software/Tesseract-OCR/libcrypto-3-x64.dll new file mode 100644 index 0000000000000000000000000000000000000000..3ff3974cd17ee9c73b2df4da3be9380a7d08f533 --- /dev/null +++ b/software/Tesseract-OCR/libcrypto-3-x64.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dbc1531aa728e1e5d1b11e2927882b8ee2a12bacb2495f04f0d248d5be82cd1 +size 5094016 diff --git a/software/Tesseract-OCR/libcurl-4.dll b/software/Tesseract-OCR/libcurl-4.dll new file mode 100644 index 0000000000000000000000000000000000000000..081449c507fe7fe18156dea28a939fbc38b0b086 --- /dev/null +++ b/software/Tesseract-OCR/libcurl-4.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40986750cf6a9eb36c5fcd2cff5275c4cf45e99794bbbef8c3ff5380ce051bc7 +size 751728 diff --git a/software/Tesseract-OCR/libdatrie-1.dll b/software/Tesseract-OCR/libdatrie-1.dll new file mode 100644 index 0000000000000000000000000000000000000000..8a33845e19073db457324bf40e7e423db5154131 --- /dev/null +++ b/software/Tesseract-OCR/libdatrie-1.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f760aef8a31b7c3670484ca4eabab1ab8e95c14052167e191463f6371c3f0850 +size 34386 diff --git a/software/Tesseract-OCR/libdeflate.dll b/software/Tesseract-OCR/libdeflate.dll new file mode 100644 index 0000000000000000000000000000000000000000..02b274799701b21fa3ba286624d25d1ad5494901 --- /dev/null +++ b/software/Tesseract-OCR/libdeflate.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6ee7b31a23605d8e8b9be5eae782a3ddf7adf2b7ca2c8e0041bdfd4fe4659ee +size 91035 diff --git a/software/Tesseract-OCR/libexpat-1.dll b/software/Tesseract-OCR/libexpat-1.dll new file mode 100644 index 0000000000000000000000000000000000000000..2c704e4c19fb1f6e137d45b0d08d586586abf912 --- /dev/null +++ b/software/Tesseract-OCR/libexpat-1.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9ea333175b1e995bbe6a062567f38ff362f1b2f369fa8ebdb0eeed21813bdc6 +size 188909 diff --git a/software/Tesseract-OCR/libffi-8.dll b/software/Tesseract-OCR/libffi-8.dll new file mode 100644 index 0000000000000000000000000000000000000000..c7e4bf03fc670e30e0f0641940843a531cb4984d --- /dev/null +++ b/software/Tesseract-OCR/libffi-8.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1ed51652b3746c1b4bce497b7041e677e5d80c5ab8198efebb8fc6f75329ae8 +size 33708 diff --git a/software/Tesseract-OCR/libfontconfig-1.dll b/software/Tesseract-OCR/libfontconfig-1.dll new file mode 100644 index 0000000000000000000000000000000000000000..aa7f4cb66018a9797c23fb08d2f5c8bbe0a5fd32 --- /dev/null +++ b/software/Tesseract-OCR/libfontconfig-1.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6c70b7e205f24ff96b29a80849b59c84f8701b311434f64f2bf93bd36bdb163 +size 350185 diff --git a/software/Tesseract-OCR/libfreetype-6.dll b/software/Tesseract-OCR/libfreetype-6.dll new file mode 100644 index 0000000000000000000000000000000000000000..2b9dfbe9d3186f2dae5d506eb8cb12e576ebe29e --- /dev/null +++ b/software/Tesseract-OCR/libfreetype-6.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5297f754dfca04abdb0d21705d5afc3c4122aa25c7afbdd87900313cb780c868 +size 776690 diff --git a/software/Tesseract-OCR/libfribidi-0.dll b/software/Tesseract-OCR/libfribidi-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..05ba6358183301e7790774ade510fd3a8d34fc83 --- /dev/null +++ b/software/Tesseract-OCR/libfribidi-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:252dec79246c013d8b32e4b1a034626965c55853aec32c5cafcd643b90d018db +size 150259 diff --git a/software/Tesseract-OCR/libgcc_s_seh-1.dll b/software/Tesseract-OCR/libgcc_s_seh-1.dll new file mode 100644 index 0000000000000000000000000000000000000000..ee9c0de4b9e153f147f5c86680786f6a803d23cc --- /dev/null +++ b/software/Tesseract-OCR/libgcc_s_seh-1.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0cc0027247c22e73cba10ba9e25ea2444a2b4072cb38e45c2cda7374e12a5c2 +size 117427 diff --git a/software/Tesseract-OCR/libgif-7.dll b/software/Tesseract-OCR/libgif-7.dll new file mode 100644 index 0000000000000000000000000000000000000000..a31aae6c3a50d9f2d19289bb77cce20bf397cdf3 --- /dev/null +++ b/software/Tesseract-OCR/libgif-7.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1a179853ae6fad8eb045b8e9f12c55e6fc99929446b02fa345512354cf5e582 +size 41367 diff --git a/software/Tesseract-OCR/libgio-2.0-0.dll b/software/Tesseract-OCR/libgio-2.0-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..ecdd9de940445409264181a3eb75aa6280d59a1b --- /dev/null +++ b/software/Tesseract-OCR/libgio-2.0-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ec4f4ddbc2384dd8a0d27c6d559bc7034b390c6bfba1ef89b755c2291cd8ef9 +size 1800402 diff --git a/software/Tesseract-OCR/libglib-2.0-0.dll b/software/Tesseract-OCR/libglib-2.0-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..19edb49de0ddfb0f9c4a0a9c51cac044f4da2e8f --- /dev/null +++ b/software/Tesseract-OCR/libglib-2.0-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:876cf35b494d95ab012e7220208501882d5f40eb7c3f421b7a92b05ff9e8c3f9 +size 1448224 diff --git a/software/Tesseract-OCR/libgmodule-2.0-0.dll b/software/Tesseract-OCR/libgmodule-2.0-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..b84de7d2793a50a4d2a24828d35593d5862890e0 --- /dev/null +++ b/software/Tesseract-OCR/libgmodule-2.0-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41bf2686dd2b8ffb471ded05b876dea3fcb5913212b809da143adc3e9f98e5bd +size 26783 diff --git a/software/Tesseract-OCR/libgobject-2.0-0.dll b/software/Tesseract-OCR/libgobject-2.0-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..18a208d0eee544627072529834a10b6afa6a3dee --- /dev/null +++ b/software/Tesseract-OCR/libgobject-2.0-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5bd93c3eb8db5e86fe8135ffd6eb246d8f9e5c15b8bc1719ca29586ccf1facd +size 358489 diff --git a/software/Tesseract-OCR/libgraphite2.dll b/software/Tesseract-OCR/libgraphite2.dll new file mode 100644 index 0000000000000000000000000000000000000000..02736bea8e060b46f5afa001e084aea0757874bf --- /dev/null +++ b/software/Tesseract-OCR/libgraphite2.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f927efecd958f0e54a24ae297f86cd6aed05e7fc20e5da0882050ab9ec464395 +size 152538 diff --git a/software/Tesseract-OCR/libharfbuzz-0.dll b/software/Tesseract-OCR/libharfbuzz-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..ad1e6653db291bbf3f933562be2170c7a8684b26 --- /dev/null +++ b/software/Tesseract-OCR/libharfbuzz-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ccf58a209c175b4d8bc583e4866e1fb55414effcddebd5f8b2ea5d2feacb0af +size 1291986 diff --git a/software/Tesseract-OCR/libiconv-2.dll b/software/Tesseract-OCR/libiconv-2.dll new file mode 100644 index 0000000000000000000000000000000000000000..f091ac75cb99f23e63b4f16b36f433f015f54e85 --- /dev/null +++ b/software/Tesseract-OCR/libiconv-2.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:967189adfbc889fde89aafc867f7a1f02731f8592cf6fd5a4ace1929213e2e13 +size 1118202 diff --git a/software/Tesseract-OCR/libicudt74.dll b/software/Tesseract-OCR/libicudt74.dll new file mode 100644 index 0000000000000000000000000000000000000000..f69dcdb069565cc8be4af6818473a91e05d2bd20 --- /dev/null +++ b/software/Tesseract-OCR/libicudt74.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90a20195f28e27f65709211c8fa02af5197038f5746692c49b34f7f1bdd98931 +size 30796806 diff --git a/software/Tesseract-OCR/libicuin74.dll b/software/Tesseract-OCR/libicuin74.dll new file mode 100644 index 0000000000000000000000000000000000000000..ff13a332340e40db90026be6d810bcb1e139ead2 --- /dev/null +++ b/software/Tesseract-OCR/libicuin74.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69328f8c98dc27ee26bba561cd9b6077a63dcfca88d601ade3bb50143a171d2e +size 2958241 diff --git a/software/Tesseract-OCR/libicuuc74.dll b/software/Tesseract-OCR/libicuuc74.dll new file mode 100644 index 0000000000000000000000000000000000000000..9e07bd4678d4edce6862eef29a43fe5c81c07726 --- /dev/null +++ b/software/Tesseract-OCR/libicuuc74.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:faea09e5599364842e832ab3f196ad2f166bada760124d10b2acc67c1c06d55c +size 1839550 diff --git a/software/Tesseract-OCR/libidn2-0.dll b/software/Tesseract-OCR/libidn2-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..e92de45ce1f0a1be4f7ce9e0d5ca545e3f512c88 --- /dev/null +++ b/software/Tesseract-OCR/libidn2-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:621f5bfc24cdae8479a69b56de530ab6cee633352ae0bce01885cc6b1eca0371 +size 242965 diff --git a/software/Tesseract-OCR/libintl-8.dll b/software/Tesseract-OCR/libintl-8.dll new file mode 100644 index 0000000000000000000000000000000000000000..4a53df02e856529d9a84c22430be0d61b153765b --- /dev/null +++ b/software/Tesseract-OCR/libintl-8.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42a63cb4c3c28a683d9f6c3510de5ec17849eb18c097fa02cd78aeb800bff202 +size 188681 diff --git a/software/Tesseract-OCR/libjbig-0.dll b/software/Tesseract-OCR/libjbig-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..14c8a0d8745e75f82c7f1d25f72fc43ef71cd7e3 --- /dev/null +++ b/software/Tesseract-OCR/libjbig-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:275a827ba6839d47cfdbe059db1b1b403a92ff26e2b76a29362915487868bef2 +size 62083 diff --git a/software/Tesseract-OCR/libjpeg-8.dll b/software/Tesseract-OCR/libjpeg-8.dll new file mode 100644 index 0000000000000000000000000000000000000000..f33ceb7f8ba2964f76fd868ca4632b04fd5cf485 --- /dev/null +++ b/software/Tesseract-OCR/libjpeg-8.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4342cced309104c858b5e506a7c3dc1a7018764908b1d65bb6f4b3ff164c78f5 +size 928587 diff --git a/software/Tesseract-OCR/libleptonica-6.dll b/software/Tesseract-OCR/libleptonica-6.dll new file mode 100644 index 0000000000000000000000000000000000000000..7aa3286be601c0163851c646744ecaf99a9238a8 --- /dev/null +++ b/software/Tesseract-OCR/libleptonica-6.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26861baff4d25446a03ed1f6064d2eae7435eddf51bb36af4e634c0eb4eb3af0 +size 2721006 diff --git a/software/Tesseract-OCR/liblz4.dll b/software/Tesseract-OCR/liblz4.dll new file mode 100644 index 0000000000000000000000000000000000000000..dc487777fcda54bf3ccc731c0e69de6ce9879dbe --- /dev/null +++ b/software/Tesseract-OCR/liblz4.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b64d6429ae4aacf9eb35b8158d98556859a5c5e8ee817e155da343e194dd8e3 +size 147105 diff --git a/software/Tesseract-OCR/liblzma-5.dll b/software/Tesseract-OCR/liblzma-5.dll new file mode 100644 index 0000000000000000000000000000000000000000..a667e49dbdbf695bffc584dd4913d9b9c77032e5 --- /dev/null +++ b/software/Tesseract-OCR/liblzma-5.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5b17c53a932497f0994881b87a55381a282d0bab2e3bd41933b308fc7127f78 +size 184667 diff --git a/software/Tesseract-OCR/libopenjp2-7.dll b/software/Tesseract-OCR/libopenjp2-7.dll new file mode 100644 index 0000000000000000000000000000000000000000..7dea0ef74c71e0a89b147001dbc87fb3ac158c75 --- /dev/null +++ b/software/Tesseract-OCR/libopenjp2-7.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ff762ff6d672a06ee502819daf1494aa3aa3acf408805f0429303e026705011 +size 462194 diff --git a/software/Tesseract-OCR/libpango-1.0-0.dll b/software/Tesseract-OCR/libpango-1.0-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..871b78f3eac02670e1d95d9da3b36e745e05ce60 --- /dev/null +++ b/software/Tesseract-OCR/libpango-1.0-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:834caf40403a447634b0e80ff4ea290f1ee361364cf24ffc8bb55b048f9254a9 +size 401912 diff --git a/software/Tesseract-OCR/libpangocairo-1.0-0.dll b/software/Tesseract-OCR/libpangocairo-1.0-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..533b2fa52fd54a565cba36b5dfcc6501277b5bd2 --- /dev/null +++ b/software/Tesseract-OCR/libpangocairo-1.0-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee706c4561af24de6cbe7ad10b46852fc8b0f328534ea2beb5f1147696e87b55 +size 74540 diff --git a/software/Tesseract-OCR/libpangoft2-1.0-0.dll b/software/Tesseract-OCR/libpangoft2-1.0-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..808661f7904093f6de7073edf1c76cebe57d0e0e --- /dev/null +++ b/software/Tesseract-OCR/libpangoft2-1.0-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c80bc1949255a8bc62fe05ab003b777aa844ac8f6c5da1ebc4c49ee35f3b9b8 +size 102261 diff --git a/software/Tesseract-OCR/libpangowin32-1.0-0.dll b/software/Tesseract-OCR/libpangowin32-1.0-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..e223985caeda4d5e22c3b9ca0ea09edfd722c316 --- /dev/null +++ b/software/Tesseract-OCR/libpangowin32-1.0-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d940a831f2a9be33dd36ff3d8b97488a068b1699fb6b2e874633d4d5564f301c +size 114044 diff --git a/software/Tesseract-OCR/libpcre2-8-0.dll b/software/Tesseract-OCR/libpcre2-8-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..3877ae96c111fc7978d2165c4a86ec049704f9eb --- /dev/null +++ b/software/Tesseract-OCR/libpcre2-8-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ffa31709c275120a745f9f714974db1e86c8fd54f8ca6889617530dffbff95b +size 399737 diff --git a/software/Tesseract-OCR/libpixman-1-0.dll b/software/Tesseract-OCR/libpixman-1-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..efcc087490134da844f5cbdc03ec014917105a76 --- /dev/null +++ b/software/Tesseract-OCR/libpixman-1-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f8b8f09ec8fe9945ba76fadf8a04183056afd2c35aa7be1808e1a1301d87757 +size 714812 diff --git a/software/Tesseract-OCR/libpng16-16.dll b/software/Tesseract-OCR/libpng16-16.dll new file mode 100644 index 0000000000000000000000000000000000000000..145e02f7988bf790152e484ca712d8216bc403de --- /dev/null +++ b/software/Tesseract-OCR/libpng16-16.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1b0a9d6cf3b8809c22fa0e27b5b82d9357e5bca43ab0ce8762f55fb303ed23f +size 247380 diff --git a/software/Tesseract-OCR/libpsl-5.dll b/software/Tesseract-OCR/libpsl-5.dll new file mode 100644 index 0000000000000000000000000000000000000000..2e71a8ac3b040f562e30af1f8f291e38bd2e06a3 --- /dev/null +++ b/software/Tesseract-OCR/libpsl-5.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d516bbc47418475bbbddfdba4da9d38abf6201329f5f7037750c31d5b4bcdc73 +size 103768 diff --git a/software/Tesseract-OCR/libsharpyuv-0.dll b/software/Tesseract-OCR/libsharpyuv-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..6313a180c46d35d711921f0024251d677ffec1bb --- /dev/null +++ b/software/Tesseract-OCR/libsharpyuv-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60bcc87ac64a834e967e9ec9461be37395dbc090c579f3e23497ef69a5d8323e +size 57852 diff --git a/software/Tesseract-OCR/libssh2-1.dll b/software/Tesseract-OCR/libssh2-1.dll new file mode 100644 index 0000000000000000000000000000000000000000..55df38e74864bdbd01e78436a2528e1344f33c76 --- /dev/null +++ b/software/Tesseract-OCR/libssh2-1.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe29b88792005f3ab3e86a6c9a514a6c04737fbee77b56be9c4fc0acca74b6ab +size 255839 diff --git a/software/Tesseract-OCR/libstdc++-6.dll b/software/Tesseract-OCR/libstdc++-6.dll new file mode 100644 index 0000000000000000000000000000000000000000..1aff9a6a383135d911fc32d69eb80a0608741577 --- /dev/null +++ b/software/Tesseract-OCR/libstdc++-6.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0952e6dfaf1b9b147384c96cf981b2cad444a5ddc4f9deae1ab1c68365ac1d61 +size 2345455 diff --git a/software/Tesseract-OCR/libtesseract-5.dll b/software/Tesseract-OCR/libtesseract-5.dll new file mode 100644 index 0000000000000000000000000000000000000000..13d695a95853172bc95f2447173cbfa1b4a4d060 --- /dev/null +++ b/software/Tesseract-OCR/libtesseract-5.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b556c8893c955372aa29d0e32ba04f1cd53c22140f7e5ce51309d07c669c6b8b +size 101470640 diff --git a/software/Tesseract-OCR/libthai-0.dll b/software/Tesseract-OCR/libthai-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..09fa927c449cdc5ac6d0444b72aa66cad7f86f69 --- /dev/null +++ b/software/Tesseract-OCR/libthai-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:420e08cedaf9daaabcf8f6c92349d9dadb7b5ad9e4e79d1126bb2a55a7cdbe09 +size 69739 diff --git a/software/Tesseract-OCR/libtiff-6.dll b/software/Tesseract-OCR/libtiff-6.dll new file mode 100644 index 0000000000000000000000000000000000000000..a2fdbf16c365700aaa9b71d46bddb7594fce92a1 --- /dev/null +++ b/software/Tesseract-OCR/libtiff-6.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e000306d3de299b05ebef443e48c1486d9fa291b0244f6ca6225843b75fdf581 +size 576887 diff --git a/software/Tesseract-OCR/libunistring-5.dll b/software/Tesseract-OCR/libunistring-5.dll new file mode 100644 index 0000000000000000000000000000000000000000..d5051eee412791f69d59b4f7fe1e165e1d345ef7 --- /dev/null +++ b/software/Tesseract-OCR/libunistring-5.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9267f38109fb1a290c5c0fe28fcf0531909b3135407b57fe398cb6cfa2aa8767 +size 1999287 diff --git a/software/Tesseract-OCR/libwebp-7.dll b/software/Tesseract-OCR/libwebp-7.dll new file mode 100644 index 0000000000000000000000000000000000000000..2db1838f8cd387f37276523ee9a3e8b0bc7f6ac5 --- /dev/null +++ b/software/Tesseract-OCR/libwebp-7.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:687b8859e1f739dad5800fdc293a6ee1fd0dd4b33380ab283681a5a12eb3d4fa +size 743580 diff --git a/software/Tesseract-OCR/libwebpmux-3.dll b/software/Tesseract-OCR/libwebpmux-3.dll new file mode 100644 index 0000000000000000000000000000000000000000..b8f62d7aa9b7564d162a26d61afe9839256a2879 --- /dev/null +++ b/software/Tesseract-OCR/libwebpmux-3.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad10bacecd37b44c7c2c813da098a8bf6a42a3bf0152f7f33726d216815558f9 +size 78730 diff --git a/software/Tesseract-OCR/libwinpthread-1.dll b/software/Tesseract-OCR/libwinpthread-1.dll new file mode 100644 index 0000000000000000000000000000000000000000..dc28c4da651e8522e565652fcb3f1a3fa4299d16 --- /dev/null +++ b/software/Tesseract-OCR/libwinpthread-1.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc9ae61e899fdc2f7ff33b20564eeb179788dd921e44d673a80e0db162c706b3 +size 60798 diff --git a/software/Tesseract-OCR/libzstd.dll b/software/Tesseract-OCR/libzstd.dll new file mode 100644 index 0000000000000000000000000000000000000000..c38501f5df9e21f2b0a3ea3a9329a55a5ca53f66 --- /dev/null +++ b/software/Tesseract-OCR/libzstd.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f216ea8efb5b3bb9ad3d938fb9ac07e3b8f78c2c92faab03d2c468d0b6798a5a +size 1179848 diff --git a/software/Tesseract-OCR/lstmeval.1.html b/software/Tesseract-OCR/lstmeval.1.html new file mode 100644 index 0000000000000000000000000000000000000000..f72a2226bf92a2368b5a484adefe6b066f9808bd --- /dev/null +++ b/software/Tesseract-OCR/lstmeval.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b0353582e3c85f3ed96c75b93632e2f94b1d9a3619a02dc7558a1c85ccc29c5 +size 19519 diff --git a/software/Tesseract-OCR/lstmeval.exe b/software/Tesseract-OCR/lstmeval.exe new file mode 100644 index 0000000000000000000000000000000000000000..0bbce8e616244d512b8698d81b69c3f071bb8cf6 --- /dev/null +++ b/software/Tesseract-OCR/lstmeval.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bcd82ca1ebc4b352ba612f682230b41f25a1a36d95e23db8d1ee1dee75bc002e +size 8646880 diff --git a/software/Tesseract-OCR/lstmtraining.1.html b/software/Tesseract-OCR/lstmtraining.1.html new file mode 100644 index 0000000000000000000000000000000000000000..e0d45ca3ddd29250c868d50e3137ab0557b145b4 --- /dev/null +++ b/software/Tesseract-OCR/lstmtraining.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8ee5c639eaafedcbc0c0102c8466cea20075e5418500f8ed899541c7c6e79f4 +size 22643 diff --git a/software/Tesseract-OCR/lstmtraining.exe b/software/Tesseract-OCR/lstmtraining.exe new file mode 100644 index 0000000000000000000000000000000000000000..724c99ff205b19ed63617d8af18dc66fa239c63a --- /dev/null +++ b/software/Tesseract-OCR/lstmtraining.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23b90a289abb6d8ab7d91211e0b0ed7372ba402ae9795cb8467d7774b5df6273 +size 9702296 diff --git a/software/Tesseract-OCR/merge_unicharsets.1.html b/software/Tesseract-OCR/merge_unicharsets.1.html new file mode 100644 index 0000000000000000000000000000000000000000..87a08745b854acf9e0b511215e3acc546720ab27 --- /dev/null +++ b/software/Tesseract-OCR/merge_unicharsets.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc7dc65b9f389b92b0a8a4b488b664a6e8682341f43a3b1e538ff6cbdd2c777a +size 18944 diff --git a/software/Tesseract-OCR/merge_unicharsets.exe b/software/Tesseract-OCR/merge_unicharsets.exe new file mode 100644 index 0000000000000000000000000000000000000000..e003f15b59f2fccdad56cde5ff9c07117f4f5e6f --- /dev/null +++ b/software/Tesseract-OCR/merge_unicharsets.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84fa6b08609b615b641b65c7263c83ad2d5705f36a0a3aa7078137844a28ca64 +size 385776 diff --git a/software/Tesseract-OCR/mftraining.1.html b/software/Tesseract-OCR/mftraining.1.html new file mode 100644 index 0000000000000000000000000000000000000000..1fa9f79bdc92c89776d36296dcd82ee60f6eff09 --- /dev/null +++ b/software/Tesseract-OCR/mftraining.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:245b2de7614ad43ca40faaa4965ea7b8af13a8e7cd391d8e6e5c0e7bc4c76c20 +size 19427 diff --git a/software/Tesseract-OCR/mftraining.exe b/software/Tesseract-OCR/mftraining.exe new file mode 100644 index 0000000000000000000000000000000000000000..a0f1936a67eff83821a02bc4a6f2d1d86459b98a --- /dev/null +++ b/software/Tesseract-OCR/mftraining.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40254a9a9b3aad900f59805989fcc7927a66b3f6288cf8db325da82e5d020848 +size 5310104 diff --git a/software/Tesseract-OCR/set_unicharset_properties.1.html b/software/Tesseract-OCR/set_unicharset_properties.1.html new file mode 100644 index 0000000000000000000000000000000000000000..42bd8ed3a5d670c8a1aa67d692be4563d0e651aa --- /dev/null +++ b/software/Tesseract-OCR/set_unicharset_properties.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:338b10d7530c7aeddb20dd06d94bb3f548a58f9b001a407f02152aaec887979e +size 19109 diff --git a/software/Tesseract-OCR/set_unicharset_properties.exe b/software/Tesseract-OCR/set_unicharset_properties.exe new file mode 100644 index 0000000000000000000000000000000000000000..1f0cbf754ff3cc91feaac1fa098ec4699af2270c --- /dev/null +++ b/software/Tesseract-OCR/set_unicharset_properties.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc8bcf160657b66449e6a455a9cec716b9ddd3ad3fe0479b374914d6b2327c7d +size 6484416 diff --git a/software/Tesseract-OCR/shapeclustering.1.html b/software/Tesseract-OCR/shapeclustering.1.html new file mode 100644 index 0000000000000000000000000000000000000000..21180d06c374e87f76db9ba22c1ed65ca463e33e --- /dev/null +++ b/software/Tesseract-OCR/shapeclustering.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:790325fd33384679f1c8403a90ab4b7b9e1200256e910f458a50d1b9c5e378a5 +size 19448 diff --git a/software/Tesseract-OCR/shapeclustering.exe b/software/Tesseract-OCR/shapeclustering.exe new file mode 100644 index 0000000000000000000000000000000000000000..e6409713181754f02fd3e4fe9021c8ad24f16bf6 --- /dev/null +++ b/software/Tesseract-OCR/shapeclustering.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d18f5a2608a963f90bc2daae93e8c770de9c670ce114d08a5b28b6a2ca3e402 +size 4986944 diff --git a/software/Tesseract-OCR/tessdata/ScrollView.jar b/software/Tesseract-OCR/tessdata/ScrollView.jar new file mode 100644 index 0000000000000000000000000000000000000000..f1b4c2e193a5627038399063dc7a57070223da35 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ScrollView.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e00751bbb3a88942522e81b63528c26b2f556f506d9718ce7f1b854c2527821 +size 26376 diff --git a/software/Tesseract-OCR/tessdata/afr.traineddata b/software/Tesseract-OCR/tessdata/afr.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..1458955ababf8034a32debd0a0efb047c1dcac4d --- /dev/null +++ b/software/Tesseract-OCR/tessdata/afr.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:126d480bfae95be2a911ed4916465e27bde75fea2da631e21b96762e5f239646 +size 2652786 diff --git a/software/Tesseract-OCR/tessdata/amh.traineddata b/software/Tesseract-OCR/tessdata/amh.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..361337ca9b9694f6ab29cd6a74eb39fb46fef436 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/amh.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ec3311833a108e07d58a1152b00c0cf1848752e4f85769d46e8ca2b718a2ccc +size 5470094 diff --git a/software/Tesseract-OCR/tessdata/ara.traineddata b/software/Tesseract-OCR/tessdata/ara.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..dfd48e650b53a0c4f084805ea0dd0e1619cd7c73 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ara.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3206d3dc87fd50c24a0fb9f01838615911d25168f4e64415244b67d2bb3e729 +size 1432056 diff --git a/software/Tesseract-OCR/tessdata/asm.traineddata b/software/Tesseract-OCR/tessdata/asm.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..cd92e9ec7bfd52bc9994a6b9757a61ff09903a3f --- /dev/null +++ b/software/Tesseract-OCR/tessdata/asm.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:299c7f6135ac72ca4820d4c39e3cf65b32b24127fc78c4938d11153adbb9fa77 +size 2045427 diff --git a/software/Tesseract-OCR/tessdata/aze.traineddata b/software/Tesseract-OCR/tessdata/aze.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..86b0011b2cb754f70ac042ff518aea9108d7e765 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/aze.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a365310848aecb739f19369cb3831d4660fcd9345d798e91a3042455f9ccc9f0 +size 3524799 diff --git a/software/Tesseract-OCR/tessdata/aze_cyrl.traineddata b/software/Tesseract-OCR/tessdata/aze_cyrl.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..779c2b706f3c9dbf1f111f2e19353f89c1a748b6 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/aze_cyrl.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e96ab67817819e14a3a2d6250261130457c8e78dde3077841ab391fe003551c +size 1943672 diff --git a/software/Tesseract-OCR/tessdata/bel.traineddata b/software/Tesseract-OCR/tessdata/bel.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..ef4c522b41ff43eb7259ec9428e8029624180bd2 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/bel.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c6668a0b202f3dcfe074b64620d108e1902ca7498a40b5a11b4a3da6112d58f +size 3692098 diff --git a/software/Tesseract-OCR/tessdata/ben.traineddata b/software/Tesseract-OCR/tessdata/ben.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..5f27985824c21aa9e8d2969e18d80de7b8de2911 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ben.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31163084c279aaebd376216f0c3d5c17ad4b5fee8db49dae79c20000b5de5964 +size 855841 diff --git a/software/Tesseract-OCR/tessdata/bod.traineddata b/software/Tesseract-OCR/tessdata/bod.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..487596d26ee5e6bc80edab38489e439173e8c6ad --- /dev/null +++ b/software/Tesseract-OCR/tessdata/bod.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1aab1db8dae337dfc8fa0f94a1c137c47e4c7857c3e6b30093ec726cef912a0b +size 1966440 diff --git a/software/Tesseract-OCR/tessdata/bos.traineddata b/software/Tesseract-OCR/tessdata/bos.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..798ad32a4f1054330ef51851eae0da46ea6a74e3 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/bos.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cc8cc87cf1afbfa6a41febb725dbadb14bed96a46685906440a6eb8a7892f04 +size 2498242 diff --git a/software/Tesseract-OCR/tessdata/bre.traineddata b/software/Tesseract-OCR/tessdata/bre.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..1a3a9ca49712787df72a35d29d699c3dbf943108 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/bre.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db8b31f76b986d63b82dfff9e84e252bf5f7dc53d9128167aaab18b3ec96dd49 +size 6335007 diff --git a/software/Tesseract-OCR/tessdata/bul.traineddata b/software/Tesseract-OCR/tessdata/bul.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..00be636cdc1cd596508b58cda670499b6e7054c5 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/bul.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aebc9b0fcc8cfaf8a9f38a02bb7b85052bd850744696a2c11cf0081820e5b21e +size 1675212 diff --git a/software/Tesseract-OCR/tessdata/cat.traineddata b/software/Tesseract-OCR/tessdata/cat.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..8bd7f311b128aa8751b2934d7bbd7122c7c15c9b --- /dev/null +++ b/software/Tesseract-OCR/tessdata/cat.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:250db73cd5b380d2798581295dc12f20d0828cdb335a65d833d12dfdbf57117d +size 1146012 diff --git a/software/Tesseract-OCR/tessdata/ceb.traineddata b/software/Tesseract-OCR/tessdata/ceb.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..2a422ea37c7944d82323fd5fcb6476ab226cde6a --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ceb.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:346a39de801495c93ece6656d018d7d19d298af7db42d82ebae99dfe8ee14961 +size 716214 diff --git a/software/Tesseract-OCR/tessdata/ces.traineddata b/software/Tesseract-OCR/tessdata/ces.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..7ec6809a53569adf559ae7b6ebe4e9f5810f3969 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ces.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:934bcaf97ef3348413263331131c9fa7f55f30db333c711929c124fb635f7e1b +size 3795684 diff --git a/software/Tesseract-OCR/tessdata/chi_sim.traineddata b/software/Tesseract-OCR/tessdata/chi_sim.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..abcd6293ed1b927d68676679fda66e7617118551 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/chi_sim.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5fcb6f0db1e1d6d8522f39db4e848f05984669172e584e8d76b6b3141e1f730 +size 2469156 diff --git a/software/Tesseract-OCR/tessdata/chi_sim_vert.traineddata b/software/Tesseract-OCR/tessdata/chi_sim_vert.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..cd45de6df374c4b04c5646692fada40c818f3491 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/chi_sim_vert.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20590de84725bab69cde93bd6e8ed360a13cc5421a7e7364ddeb93e9af53d6da +size 1927902 diff --git a/software/Tesseract-OCR/tessdata/chi_tra.traineddata b/software/Tesseract-OCR/tessdata/chi_tra.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..a2f625d59864089890afd0b9d660ad650c955edf --- /dev/null +++ b/software/Tesseract-OCR/tessdata/chi_tra.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:529c5b5797d64b126065cd55f2bb4c7fd7b15790798091b1ff259941a829330b +size 2366642 diff --git a/software/Tesseract-OCR/tessdata/chi_tra_vert.traineddata b/software/Tesseract-OCR/tessdata/chi_tra_vert.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..c7297a41db5fb288bf3fc5c2aeb6b1f0d103ab7e --- /dev/null +++ b/software/Tesseract-OCR/tessdata/chi_tra_vert.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1df02a4b210e5c217b783819538b63e9dfe6904e2b5e53b62664f1b9f7a989d0 +size 1824756 diff --git a/software/Tesseract-OCR/tessdata/chr.traineddata b/software/Tesseract-OCR/tessdata/chr.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..c0467988e16e12a172428d1373be86a71b1936c7 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/chr.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4da60d844ebb9dbaeb8843a92290083c1fd275b167fc9c9686d790ccd311fab +size 374944 diff --git a/software/Tesseract-OCR/tessdata/configs/alto b/software/Tesseract-OCR/tessdata/configs/alto new file mode 100644 index 0000000000000000000000000000000000000000..d67470bb7aa4512728b0276b01d7269329d75634 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/alto @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cb7a5da613177c894eeff97c3891c7b3ebe0080375a14b51bb2b12db115a74c +size 24 diff --git a/software/Tesseract-OCR/tessdata/configs/ambigs.train b/software/Tesseract-OCR/tessdata/configs/ambigs.train new file mode 100644 index 0000000000000000000000000000000000000000..a918ccf746f03f60683476ff2e8cebd702d162dc --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/ambigs.train @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eba51051707cdbe99515fd4e557a29728174983575b8d77553df5120ab5ccbdd +size 153 diff --git a/software/Tesseract-OCR/tessdata/configs/api_config b/software/Tesseract-OCR/tessdata/configs/api_config new file mode 100644 index 0000000000000000000000000000000000000000..5b02b5465583c5f7dd11ec97b9ba1e7d32f5a640 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/api_config @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02971208303f55e147bb5a455e9156806b99ef7e8ca36ace2f190d74b4691fb3 +size 27 diff --git a/software/Tesseract-OCR/tessdata/configs/bigram b/software/Tesseract-OCR/tessdata/configs/bigram new file mode 100644 index 0000000000000000000000000000000000000000..f483befccd453206b83d5b47017cfffd4e7e16ec --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/bigram @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1f9b7e5c7595af1fde2c0063c6d94bbe72ec5105d40e7c2a67f10cdcf01195e +size 134 diff --git a/software/Tesseract-OCR/tessdata/configs/box.train b/software/Tesseract-OCR/tessdata/configs/box.train new file mode 100644 index 0000000000000000000000000000000000000000..8c80f4e146435ff652f8111747c13fd456da8483 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/box.train @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b34da7c5f00e2d2e8e800a5d3af599d87889febf8e07ee77b724c86c4c22e14f +size 323 diff --git a/software/Tesseract-OCR/tessdata/configs/box.train.stderr b/software/Tesseract-OCR/tessdata/configs/box.train.stderr new file mode 100644 index 0000000000000000000000000000000000000000..425a8bd51b989efb6dfbfffc283b73e27eb556d8 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/box.train.stderr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0158084d234db00a2b0326f0ed21e15367026eecaa381998db3127c641c09516 +size 324 diff --git a/software/Tesseract-OCR/tessdata/configs/digits b/software/Tesseract-OCR/tessdata/configs/digits new file mode 100644 index 0000000000000000000000000000000000000000..30aad1a55419dc67bf3294cdd5d4f5352f5fbde3 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/digits @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d8f4f2274e4489d627d6791c3a83d959617d5e63f72af23d43086ad3a4b7030 +size 38 diff --git a/software/Tesseract-OCR/tessdata/configs/get.images b/software/Tesseract-OCR/tessdata/configs/get.images new file mode 100644 index 0000000000000000000000000000000000000000..bb7b790d60f6b564975e5d357fc81bf463cf9387 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/get.images @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1a1bd6bb43ed71531db20cad17d5b94c9977ce6f55f03323c4859d1566a477b +size 25 diff --git a/software/Tesseract-OCR/tessdata/configs/hocr b/software/Tesseract-OCR/tessdata/configs/hocr new file mode 100644 index 0000000000000000000000000000000000000000..250de222b0ca2f18ab41e0cd987887826497ca50 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/hocr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acc5a54f11a92d84215ba558df3b3598ec1afeaf2756d8ce5fe398e7299976eb +size 42 diff --git a/software/Tesseract-OCR/tessdata/configs/inter b/software/Tesseract-OCR/tessdata/configs/inter new file mode 100644 index 0000000000000000000000000000000000000000..d71b0c64450bfd9295d79627f33b8817cade1c57 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/inter @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edc5afc0e8a64644f1769667c6f161e10e5f6cc95803a0fcc5105c9b278c3d87 +size 61 diff --git a/software/Tesseract-OCR/tessdata/configs/kannada b/software/Tesseract-OCR/tessdata/configs/kannada new file mode 100644 index 0000000000000000000000000000000000000000..d21cf89154ab781acc9b5a62f534562a48385943 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/kannada @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c499f0cb650735e2e6b487458d3c209a448f7715a432d700cfbc7abaf31c8b4c +size 105 diff --git a/software/Tesseract-OCR/tessdata/configs/linebox b/software/Tesseract-OCR/tessdata/configs/linebox new file mode 100644 index 0000000000000000000000000000000000000000..c4b7b0fa9bf23f9817252255f6ba1886bd2df383 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/linebox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cf9314ff5d29232091877194847ef7f04a485bbec6aea3af15dcb03f638a1f5 +size 72 diff --git a/software/Tesseract-OCR/tessdata/configs/logfile b/software/Tesseract-OCR/tessdata/configs/logfile new file mode 100644 index 0000000000000000000000000000000000000000..5839feb42944294509597e85ad0c7834fbf9d29f --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/logfile @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:541604c332624d56f22914917f12c29b74ae0b04950602be6c9ab551b6d5fb9c +size 26 diff --git a/software/Tesseract-OCR/tessdata/configs/lstm.train b/software/Tesseract-OCR/tessdata/configs/lstm.train new file mode 100644 index 0000000000000000000000000000000000000000..3e8c07755f0c3f9ce641a98691f670ab44d35be1 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/lstm.train @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4958555ffca8a1501b5b0bdb4ce9bfc40b1bb5d7fc606056dad4fb72626efbba +size 293 diff --git a/software/Tesseract-OCR/tessdata/configs/lstmbox b/software/Tesseract-OCR/tessdata/configs/lstmbox new file mode 100644 index 0000000000000000000000000000000000000000..00286400e6389084b99e007d4e28534a4a49c865 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/lstmbox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2bcbc9d9b4642ae7f10f6b23c2a117400acbf6b8dc618e8bcbb29ef2f22fa41 +size 27 diff --git a/software/Tesseract-OCR/tessdata/configs/lstmdebug b/software/Tesseract-OCR/tessdata/configs/lstmdebug new file mode 100644 index 0000000000000000000000000000000000000000..73181c454234ba08d08dd95bab29278a03f194df --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/lstmdebug @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ce5ffeb41b674b9bc3a8ad3f37e5e4bad3e447852d80b661a5e7b49f516c2dd +size 102 diff --git a/software/Tesseract-OCR/tessdata/configs/makebox b/software/Tesseract-OCR/tessdata/configs/makebox new file mode 100644 index 0000000000000000000000000000000000000000..e4fcf21c3fa4a82f81886c128548c20be43ae8ba --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/makebox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c04f00353769fb15eaebc56c649cc6be5a1695877f63c360d5582d352748ae2 +size 27 diff --git a/software/Tesseract-OCR/tessdata/configs/page b/software/Tesseract-OCR/tessdata/configs/page new file mode 100644 index 0000000000000000000000000000000000000000..5fed0dcbe39b1b2c2e6036f6fc5abb60340d86d4 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/page @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:604bf47444c9750dc9b24dc9b6d57029b94ab23ee746736d5eb7eea426132528 +size 70 diff --git a/software/Tesseract-OCR/tessdata/configs/pdf b/software/Tesseract-OCR/tessdata/configs/pdf new file mode 100644 index 0000000000000000000000000000000000000000..64e6082b5c05a1e97d4f71c9845ad952d10bcb53 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/pdf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88630f865cdaa38ce52ad1688f51ed55596f125f85536ec29b1b11fed721545b +size 23 diff --git a/software/Tesseract-OCR/tessdata/configs/quiet b/software/Tesseract-OCR/tessdata/configs/quiet new file mode 100644 index 0000000000000000000000000000000000000000..694623ba75fe953a5c3a925bab581e9c5186eba2 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/quiet @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa4709bd13bd7a15f3eee98d04a78e7b69b2a72a2047c312063a395ca4328cd4 +size 22 diff --git a/software/Tesseract-OCR/tessdata/configs/rebox b/software/Tesseract-OCR/tessdata/configs/rebox new file mode 100644 index 0000000000000000000000000000000000000000..d8d7fd187f3ee71ae5b3cb9975316eca42d3b4cf --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/rebox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f06b6fee88e97fbefafcac6deaa15df0c186d4e65364c65a3f014ad5d4f51a3d +size 67 diff --git a/software/Tesseract-OCR/tessdata/configs/strokewidth b/software/Tesseract-OCR/tessdata/configs/strokewidth new file mode 100644 index 0000000000000000000000000000000000000000..4725440ee3e770db6961a0feb951b2235ea2de7d --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/strokewidth @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eda2151d6f0eb80b4567fb90cbe9a9605c87cd50c442f66c70a9a2c182911cd5 +size 389 diff --git a/software/Tesseract-OCR/tessdata/configs/tsv b/software/Tesseract-OCR/tessdata/configs/tsv new file mode 100644 index 0000000000000000000000000000000000000000..7a4f2474dfc44431a4a68ed61b8fa7875f252b41 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/tsv @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d5ea1506d22f4e85bd5b7bdd4d9dc4d58257b35b7447149742c7a471d5f57a0 +size 23 diff --git a/software/Tesseract-OCR/tessdata/configs/txt b/software/Tesseract-OCR/tessdata/configs/txt new file mode 100644 index 0000000000000000000000000000000000000000..7e09d75e2fcd02b60b96756137d19897604b9d6b --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d8dc5097351a7db7f36ec31a66a6bd697ec63a6467830b496a91b3aceeb7105 +size 169 diff --git a/software/Tesseract-OCR/tessdata/configs/unlv b/software/Tesseract-OCR/tessdata/configs/unlv new file mode 100644 index 0000000000000000000000000000000000000000..88007b363a3a8a217881e8432bb4380a91800b64 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/unlv @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:600e8b8ef4f27ff0b514806a595f2da1b06e42e0cdcf3a71e5d193fbcd0726da +size 47 diff --git a/software/Tesseract-OCR/tessdata/configs/wordstrbox b/software/Tesseract-OCR/tessdata/configs/wordstrbox new file mode 100644 index 0000000000000000000000000000000000000000..8e22e9fcbc9829ef76550bea44b6bd0192e1ee43 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/configs/wordstrbox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb7e8a5764708f953298e5e4e57fbe3b09640cf7bc1aa7dcbdfe938e8fbad7bb +size 30 diff --git a/software/Tesseract-OCR/tessdata/cos.traineddata b/software/Tesseract-OCR/tessdata/cos.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..ca3ee886bc6f61c4793552a05cd0a0bd1a9bd69c --- /dev/null +++ b/software/Tesseract-OCR/tessdata/cos.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:018952d1b4b3d4fd6ee5ebbacf90603c9cef6221951359937c274fe1f190f8d3 +size 2299099 diff --git a/software/Tesseract-OCR/tessdata/cym.traineddata b/software/Tesseract-OCR/tessdata/cym.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..234a6743124875026cd58aac4e5d24b130688b43 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/cym.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f6ee3374749645a7c92dfe773f5c3d6492194d371712ecfd775edc53c363fb4 +size 2208919 diff --git a/software/Tesseract-OCR/tessdata/dan.traineddata b/software/Tesseract-OCR/tessdata/dan.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..3c2bce4bd2810233aca90d0e29e31a2eb4b9ab88 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/dan.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acb1fd074487a31d1294fcdfd7d7c673467ffd8aeacb2ccd61ebcbf04eb4e2fa +size 2580059 diff --git a/software/Tesseract-OCR/tessdata/deu.traineddata b/software/Tesseract-OCR/tessdata/deu.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..bc60f81284909142919098b730f46b11e2c37fee --- /dev/null +++ b/software/Tesseract-OCR/tessdata/deu.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19d219bbb6672c869d20a9636c6816a81eb9a71796cb93ebe0cb1530e2cdb22d +size 1525436 diff --git a/software/Tesseract-OCR/tessdata/div.traineddata b/software/Tesseract-OCR/tessdata/div.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..eb312f4b0d858be857046f4629459f96fa8d57cf --- /dev/null +++ b/software/Tesseract-OCR/tessdata/div.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06051412588963b34b663cc59a468dbf10753329f015ccd574ee711e8c6b84c3 +size 1774535 diff --git a/software/Tesseract-OCR/tessdata/dzo.traineddata b/software/Tesseract-OCR/tessdata/dzo.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..762451a3985436e23e2c90ec8cb2e35f5b345e63 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/dzo.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:364d244fad3f8d4438c9f7ee7642b9b876a4620cf76c0115619b979d6bfef1fa +size 449596 diff --git a/software/Tesseract-OCR/tessdata/ell.traineddata b/software/Tesseract-OCR/tessdata/ell.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..55f9a441473eb4028d5f38edc71605d6f865efba --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ell.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fba8a0b461038d51f1c20d043d4f2ac38c4e778f1b90830847f7bd8fa3ba726 +size 1419514 diff --git a/software/Tesseract-OCR/tessdata/eng.traineddata b/software/Tesseract-OCR/tessdata/eng.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..b15334db4df434b6e9b7e8119fe96f85f855589b --- /dev/null +++ b/software/Tesseract-OCR/tessdata/eng.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d4322bd2a7749724879683fc3912cb542f19906c83bcc1a52132556427170b2 +size 4113088 diff --git a/software/Tesseract-OCR/tessdata/eng.user-patterns b/software/Tesseract-OCR/tessdata/eng.user-patterns new file mode 100644 index 0000000000000000000000000000000000000000..25672abf1c5edab2c73cc4a9e965b658787f90b6 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/eng.user-patterns @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5477542772cb7ef517461d456f50b00a9f6244fda735beae8548e7c763d467c +size 35 diff --git a/software/Tesseract-OCR/tessdata/eng.user-words b/software/Tesseract-OCR/tessdata/eng.user-words new file mode 100644 index 0000000000000000000000000000000000000000..ff1de4a02376c112e9fcf29160a9d2a0dc60f7e7 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/eng.user-words @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51092dbdc346d684af477879c0c3794731840c973bf0232f278a00d4587f2e77 +size 32 diff --git a/software/Tesseract-OCR/tessdata/enm.traineddata b/software/Tesseract-OCR/tessdata/enm.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..0220aa914c83ab1845b1f2b6d864adfe32b346bd --- /dev/null +++ b/software/Tesseract-OCR/tessdata/enm.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d312ab5aafc9f99a78082c75e035b0873d2da6cb6d95cde03e219c1b26750034 +size 3101551 diff --git a/software/Tesseract-OCR/tessdata/epo.traineddata b/software/Tesseract-OCR/tessdata/epo.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..4f25f05a20281e6bebff96e3734f7c101817a8d4 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/epo.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71181a6a07af3812aeedfa1aa993623424f4b8a6aac3e271b36ec11774e674d9 +size 4728393 diff --git a/software/Tesseract-OCR/tessdata/equ.traineddata b/software/Tesseract-OCR/tessdata/equ.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..bb8277ed1afa6742695fc2bb7093038f3ff867e9 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/equ.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f660323d8a7b7a0e8d2fae1a3439e6e470222bfbb990b2ab7fe9e1fb4791c0b +size 2251950 diff --git a/software/Tesseract-OCR/tessdata/est.traineddata b/software/Tesseract-OCR/tessdata/est.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..bdcd1e23287e9b3bf807e5311887b5f7da3d478e --- /dev/null +++ b/software/Tesseract-OCR/tessdata/est.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:515d4a773682b286369511e83fe412bcff16a92a886f99c761c1d760a7e30456 +size 4458101 diff --git a/software/Tesseract-OCR/tessdata/eus.traineddata b/software/Tesseract-OCR/tessdata/eus.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..0371594c61d9de205798b363247563c6e77910f2 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/eus.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40e7418296c355d9fd9ca843d115c51e740089e576e887443e61704823cd6624 +size 5175921 diff --git a/software/Tesseract-OCR/tessdata/fao.traineddata b/software/Tesseract-OCR/tessdata/fao.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..7b304b767fda8ca13b5ec7998eb8b62599b9d12e --- /dev/null +++ b/software/Tesseract-OCR/tessdata/fao.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ed46203c283c952b7de0530d1c6e6ac9a25a79773fb89cadd149275ffea9a80 +size 3439772 diff --git a/software/Tesseract-OCR/tessdata/fas.traineddata b/software/Tesseract-OCR/tessdata/fas.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..9f841ce8b9169215da79910ce1491eef6f3a5a99 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/fas.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db1c0a91208aff00d3cf1ed2c1d23f76419afd5f024688b4f71adc3f2ce4a505 +size 431500 diff --git a/software/Tesseract-OCR/tessdata/fil.traineddata b/software/Tesseract-OCR/tessdata/fil.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..e578b0f375d6625c3931bc88f28653a75e44a360 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/fil.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b17f68014ab44b88b5e2334ebcd0ce0090d9af7c6fbef6fab22e0bbd9a934dd +size 1841715 diff --git a/software/Tesseract-OCR/tessdata/fin.traineddata b/software/Tesseract-OCR/tessdata/fin.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..a51afb274b96423b8990ec36741f011c7a6ec468 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/fin.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61a04cd62b507c3d9ae0e1cda399e6715ebf49dea9df47897c8acdcd3bd3e13c +size 7865732 diff --git a/software/Tesseract-OCR/tessdata/fra.traineddata b/software/Tesseract-OCR/tessdata/fra.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..21c0bd0428132222136f1164927ee40512fa5ec9 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/fra.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ced037562e8c80c13122dece28dd477d399af80911a28791a66a63ac1e3445ca +size 1130365 diff --git a/software/Tesseract-OCR/tessdata/frk.traineddata b/software/Tesseract-OCR/tessdata/frk.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..a80fca09764d4a14a7f3712c73f95cc7e468b604 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/frk.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c10cde70e87aa83d0996c0ffdf6afe1e5ba9938b8f78a4f78e879e78da147ae9 +size 20 diff --git a/software/Tesseract-OCR/tessdata/frm.traineddata b/software/Tesseract-OCR/tessdata/frm.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..abd68597606bd48a922402509e23b06ed1aa849b --- /dev/null +++ b/software/Tesseract-OCR/tessdata/frm.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3fe6eed7108136a85dbbf53baf23d9fb435afe1262323f5fba7711b6c6048728 +size 2024948 diff --git a/software/Tesseract-OCR/tessdata/fry.traineddata b/software/Tesseract-OCR/tessdata/fry.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..b41aab1f0e0178d1fd7d004b8c9a852c5adf359b --- /dev/null +++ b/software/Tesseract-OCR/tessdata/fry.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c9dbc47ef3848e33b623d1b927dd4d998ed39ff750fbc0f14aeb0f627b5da15 +size 1906018 diff --git a/software/Tesseract-OCR/tessdata/gla.traineddata b/software/Tesseract-OCR/tessdata/gla.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..4c9fec3bb5ba6965bf56fa1f9162c20796979e6c --- /dev/null +++ b/software/Tesseract-OCR/tessdata/gla.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb7b206d9f56b601d1666683ea8a516c8bb9c04362dbb874fc9665b339b72adf +size 3068307 diff --git a/software/Tesseract-OCR/tessdata/gle.traineddata b/software/Tesseract-OCR/tessdata/gle.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..6c054844e246afe1459344102b982a97399277fc --- /dev/null +++ b/software/Tesseract-OCR/tessdata/gle.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fe9ba6119aac7e2a20d6cfb69ed91afe9520f41bc7e3a903f84280f2663858d +size 1181824 diff --git a/software/Tesseract-OCR/tessdata/glg.traineddata b/software/Tesseract-OCR/tessdata/glg.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..2e9326222dbf8ae8e3d083a5fe47d1752715b435 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/glg.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7947619c5544d86849f563bd737ad90dbea9f5319fbd838c4747a7a1cd40b260 +size 2554555 diff --git a/software/Tesseract-OCR/tessdata/grc.traineddata b/software/Tesseract-OCR/tessdata/grc.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..209491f29d17dd1f328085e42d4a9ea0b15ccc01 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/grc.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57b735557eeb67503803cf9f99786dd0b62417931352601952a0b1a23b6c4759 +size 2246328 diff --git a/software/Tesseract-OCR/tessdata/guj.traineddata b/software/Tesseract-OCR/tessdata/guj.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..e0c721a8f91e01754d94fae4c8b3ddd6e5dfcdf6 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/guj.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa69658614b4946a9afae8853d67e0689838803dfa3d12c2e35ec53ee6f8df34 +size 1418394 diff --git a/software/Tesseract-OCR/tessdata/hat.traineddata b/software/Tesseract-OCR/tessdata/hat.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..34494083a2213256b58fe0f211331408267018c0 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/hat.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:842e489a0e0eb12c72b5cb12e9e6624aae5928de1d097d76445474c263ce8b5a +size 1976902 diff --git a/software/Tesseract-OCR/tessdata/heb.traineddata b/software/Tesseract-OCR/tessdata/heb.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..3de2677b36784e5173bfda836148e839592b8448 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/heb.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11f9e43ab227f786352a50f75c94c2e9906f1baba86d93276da19da7ce0904db +size 961404 diff --git a/software/Tesseract-OCR/tessdata/hin.traineddata b/software/Tesseract-OCR/tessdata/hin.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..7a21d4eb4827db5f8340011e199987fdfe8378a2 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/hin.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c73ffc59d497c186b19d1e90f5d721d678ea6b2e277b719bee4e2af12271825 +size 1122751 diff --git a/software/Tesseract-OCR/tessdata/hrv.traineddata b/software/Tesseract-OCR/tessdata/hrv.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..da2799bfcaeaa10c76a5e06ad8d76ccb9c2a3fe1 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/hrv.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e515d9832ce259dbab550b1cc6b998f8b929faf2edacaaca981b05adb130571 +size 4103348 diff --git a/software/Tesseract-OCR/tessdata/hun.traineddata b/software/Tesseract-OCR/tessdata/hun.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..10834b6237fcd82e007b8e46eb69413fe13af085 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/hun.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35067e7cfe102dcdc953f9a758fdfaa6296b17a1ee6d874ee780fa306430b9fb +size 5296273 diff --git a/software/Tesseract-OCR/tessdata/hye.traineddata b/software/Tesseract-OCR/tessdata/hye.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..136d0ac8d7b903587c34c5fb262dc5e0a212a117 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/hye.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b701d0d95799a716143dedb0197504e56f27a1bb133d6607ff5778c6988cb67c +size 3463717 diff --git a/software/Tesseract-OCR/tessdata/iku.traineddata b/software/Tesseract-OCR/tessdata/iku.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..edafae6885f225039a869a0a9db8437dd4d91ab3 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/iku.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81ef16ee0fa0a3548c8a2d1ff10786e3278b6720e51cefd9a81a506f52660223 +size 2802266 diff --git a/software/Tesseract-OCR/tessdata/ind.traineddata b/software/Tesseract-OCR/tessdata/ind.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..804a41c9c0ff3a095717f156c2e15e7cb1e76324 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ind.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69786901da87ab8766c1ea7fbb10b28f2110c14da3f6c8f2735df131fba95d88 +size 1122661 diff --git a/software/Tesseract-OCR/tessdata/isl.traineddata b/software/Tesseract-OCR/tessdata/isl.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..8b50da6af2196328625909a6d7a43af1f0c4baf0 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/isl.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ec828c363f3f0062c3caf08216677cf5f3c0c981b05fab445123a16b98f10a9 +size 2278973 diff --git a/software/Tesseract-OCR/tessdata/ita.traineddata b/software/Tesseract-OCR/tessdata/ita.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..4852797a736fed7af520699def4a968d845641fe --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ita.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8f89e1e785118dac4d51ae042c029a64edb5c3ee42ef73027a6d412748d8827 +size 2701314 diff --git a/software/Tesseract-OCR/tessdata/ita_old.traineddata b/software/Tesseract-OCR/tessdata/ita_old.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..b4bc434d04424208e2f2ffcfed81528b0db13410 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ita_old.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee85de25acf70d5eeefdb3012424814a18ab368183099cc2c3f2fe2d3dce3b02 +size 3286123 diff --git a/software/Tesseract-OCR/tessdata/jav.traineddata b/software/Tesseract-OCR/tessdata/jav.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..858f68c8ffc7ad503a03101636f1df2af96e3426 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/jav.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46107b6bed3bf2d9617e5e192e52524e368242543fead1a7175c363dddd400f2 +size 2982741 diff --git a/software/Tesseract-OCR/tessdata/jaxb-api-2.3.1.jar b/software/Tesseract-OCR/tessdata/jaxb-api-2.3.1.jar new file mode 100644 index 0000000000000000000000000000000000000000..02d23dc5d3509a9a5a2814449d2b3f83a0a332f5 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/jaxb-api-2.3.1.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88b955a0df57880a26a74708bc34f74dcaf8ebf4e78843a28b50eae945732b06 +size 128076 diff --git a/software/Tesseract-OCR/tessdata/jpn.traineddata b/software/Tesseract-OCR/tessdata/jpn.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..a662e4dd3b46ee7ebe71a182f87e6af82e370868 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/jpn.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f5de9236d2e85f5fdf4b3c500f2d4926f8d9449f28f5394472d9e8d83b91b4d +size 2471260 diff --git a/software/Tesseract-OCR/tessdata/jpn_vert.traineddata b/software/Tesseract-OCR/tessdata/jpn_vert.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..c91ecaacd828ed477e22ebc2c80cb4611796d6cd --- /dev/null +++ b/software/Tesseract-OCR/tessdata/jpn_vert.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf1e2640954691797e2dc14f38533e601b59ee37958698ae0f0b81dc6f09c71b +size 3037480 diff --git a/software/Tesseract-OCR/tessdata/kan.traineddata b/software/Tesseract-OCR/tessdata/kan.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..2bd34773734b8102951ae71d93c55dc8005dedab --- /dev/null +++ b/software/Tesseract-OCR/tessdata/kan.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd31e6b6ae93271e3bcf5383d306d8eefbb91542937cd6d735a5930c970e61d8 +size 3608331 diff --git a/software/Tesseract-OCR/tessdata/kat.traineddata b/software/Tesseract-OCR/tessdata/kat.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..b9907a239ab5a155ec1fef5a46298e13fb2165be --- /dev/null +++ b/software/Tesseract-OCR/tessdata/kat.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:557abb6f1c68bc1b286f1bdd00bb6b82f85a427a91899807dab6c2f6c7986731 +size 2524769 diff --git a/software/Tesseract-OCR/tessdata/kat_old.traineddata b/software/Tesseract-OCR/tessdata/kat_old.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..5537ed055eb104a26e9733ad28818775b7cdd400 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/kat_old.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b77290303d5d88db6adc5b679d1eb876e3c62f64c8999e919bcb4608af379bc +size 423167 diff --git a/software/Tesseract-OCR/tessdata/kaz.traineddata b/software/Tesseract-OCR/tessdata/kaz.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..38f3cc313d80f55c60aa8fbf6c4c51c484940095 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/kaz.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcc01eed3815a42b9c6321c4c9d3606f39b166cbf95ade98b7d8d12063eae53d +size 4734644 diff --git a/software/Tesseract-OCR/tessdata/khm.traineddata b/software/Tesseract-OCR/tessdata/khm.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..4c8ebc094078a044766dd1cf9664e14e557e79a1 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/khm.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47f110575341b322052f3becbefee61a3ecf1ef549352b5d4d33d28afe30d099 +size 1446926 diff --git a/software/Tesseract-OCR/tessdata/kir.traineddata b/software/Tesseract-OCR/tessdata/kir.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..30890e171ca5e9223c95e8a70459bd6491f240df --- /dev/null +++ b/software/Tesseract-OCR/tessdata/kir.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9777956300900b528d26932cf80693f95e75143433fb851d567194bcc38a31ae +size 9928497 diff --git a/software/Tesseract-OCR/tessdata/kmr.traineddata b/software/Tesseract-OCR/tessdata/kmr.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..9960851f71691fdd8119b7ab31a91850d546b5d1 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/kmr.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3ef2daa828399ca8d6ae69edfa21ed21aa5abb3f868e2024d3235406312e7b6 +size 3568615 diff --git a/software/Tesseract-OCR/tessdata/kor.traineddata b/software/Tesseract-OCR/tessdata/kor.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..3b7d22be9d63e071e96acc3ba3731606700e441c --- /dev/null +++ b/software/Tesseract-OCR/tessdata/kor.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b85e11d9bbf07863b97b3523b1b112844c43e713df8b66418a081fd1060b3b2 +size 1677415 diff --git a/software/Tesseract-OCR/tessdata/lao.traineddata b/software/Tesseract-OCR/tessdata/lao.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..f4892baf8a447bc24f4611c1f4382e25d4cfb377 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/lao.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20124962e93e68121e02c49a949d1f9df5db87dd62e5e4aa578362ca532444f8 +size 6386744 diff --git a/software/Tesseract-OCR/tessdata/lat.traineddata b/software/Tesseract-OCR/tessdata/lat.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..eb4d3cce63e0579a545f85e4de2a380775ba5608 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/lat.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3859d8ba60404f4b79830622625bbc76fb4ee2808eac1ad360ffa77f0a533328 +size 3187463 diff --git a/software/Tesseract-OCR/tessdata/lav.traineddata b/software/Tesseract-OCR/tessdata/lav.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..e572e47e9d781b66422da2b723f259779770d73c --- /dev/null +++ b/software/Tesseract-OCR/tessdata/lav.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d9eaf22254b381f18b806cd6cb647862a397a7221adbce3e22cc421793a8847 +size 2717247 diff --git a/software/Tesseract-OCR/tessdata/lit.traineddata b/software/Tesseract-OCR/tessdata/lit.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..e9dc6115eaf4063a50c9c2a5d7f58d964d7e2e90 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/lit.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e383df5b055583bc01cb5764ecdf74c540753f2cb3f8205e7105361da4bc989 +size 3154896 diff --git a/software/Tesseract-OCR/tessdata/ltz.traineddata b/software/Tesseract-OCR/tessdata/ltz.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..ec15d142dc24b0365eb8e60c8553508dccba8efd --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ltz.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5516a78efa30c050da7eb0727fec3de59670c19735c00678a67fdad98e4b3ec1 +size 2606426 diff --git a/software/Tesseract-OCR/tessdata/mal.traineddata b/software/Tesseract-OCR/tessdata/mal.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..5e4a82a3c4acd3291634ee9f12fb047df9008115 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/mal.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd05cbf1b197e7810d2903419aedb06f9ef77bfedf50b358673c1d18d707cdb4 +size 5275996 diff --git a/software/Tesseract-OCR/tessdata/mar.traineddata b/software/Tesseract-OCR/tessdata/mar.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..ddd051263b5c32867aeb82fb1242ef9db9021923 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/mar.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ba3f2d116972e72fe9e176bc84c38e81dfb6670f4ed1f7f6c8e16a27da7cb61 +size 2118233 diff --git a/software/Tesseract-OCR/tessdata/mkd.traineddata b/software/Tesseract-OCR/tessdata/mkd.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..295e539f2a58dab61fb638600b1f4064600f984b --- /dev/null +++ b/software/Tesseract-OCR/tessdata/mkd.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58622bf154830fa62103359938564aeb8112b929759e22a48224f3ecfaac34c6 +size 1600188 diff --git a/software/Tesseract-OCR/tessdata/mlt.traineddata b/software/Tesseract-OCR/tessdata/mlt.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..cbe9995860eff3634031d9b9f272333a6052101b --- /dev/null +++ b/software/Tesseract-OCR/tessdata/mlt.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3040b443d5d49e4183da0eaaf58d1033c3a616153d35d2342a56777f9bbb31c7 +size 2308796 diff --git a/software/Tesseract-OCR/tessdata/mon.traineddata b/software/Tesseract-OCR/tessdata/mon.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..73951e4bea3f36a82de939c279e0a35590ccc836 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/mon.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a151a3806d61ac43619cd383896d551ba5c3b07388ffec6fc83c8c604d677570 +size 2137042 diff --git a/software/Tesseract-OCR/tessdata/mri.traineddata b/software/Tesseract-OCR/tessdata/mri.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..a4c1c54456525d89b2aa58e7fce801f5c4f25696 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/mri.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8552be985e8fa0210d6d815d736151d645089b590a56f2d92391fb864e8bf9c9 +size 862973 diff --git a/software/Tesseract-OCR/tessdata/msa.traineddata b/software/Tesseract-OCR/tessdata/msa.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..ab3849aad8b33992081b6a98f74c70cc18fed6f5 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/msa.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e41a3e5febfec50c90371eb1cbb17a48b10cad387900e3420b1f134c1b766cba +size 1747801 diff --git a/software/Tesseract-OCR/tessdata/mya.traineddata b/software/Tesseract-OCR/tessdata/mya.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..b990a959d555da9d562b5d1a7f5762b5c5511bab --- /dev/null +++ b/software/Tesseract-OCR/tessdata/mya.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02aa6c25cfe9e583fa7b5d4131eac948f962308983f0f397df077dea58212b03 +size 4640561 diff --git a/software/Tesseract-OCR/tessdata/nep.traineddata b/software/Tesseract-OCR/tessdata/nep.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..4110d3272935a2df58d1d5009b031e4ffcfe3de8 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/nep.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:280ba9450b4f21afbf5985e0de87857b75a972577c50ef0603c141ddde4f1cb8 +size 1002911 diff --git a/software/Tesseract-OCR/tessdata/nld.traineddata b/software/Tesseract-OCR/tessdata/nld.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..206078a25e3a6e9389f84651005ce8aaa975d773 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/nld.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ced0e5e046a84c908a6aa7accbef9a232c4a5d9a8276691b81c6ee64d02963f6 +size 6050296 diff --git a/software/Tesseract-OCR/tessdata/nor.traineddata b/software/Tesseract-OCR/tessdata/nor.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..3bc306fa959e8281d89b311f9ce8c927c3df2dd1 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/nor.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0451eb4f8049ae78196806bf878a389a2f40f1386fe038568cf4441226ba6ef2 +size 3610079 diff --git a/software/Tesseract-OCR/tessdata/oci.traineddata b/software/Tesseract-OCR/tessdata/oci.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..992c2f7758e6b6de0e12c6d854abeb253db4a7b3 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/oci.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:747b9be4c5b80b4c730ce4f426a3b85060a1bb0de54cd566fcbdcb7f407940c9 +size 6322087 diff --git a/software/Tesseract-OCR/tessdata/ori.traineddata b/software/Tesseract-OCR/tessdata/ori.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..3e2a5b0be64b28ef959961e7f44ac07b27052375 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ori.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36f3135e61d501a3acfad41f5fe60b8e791274fff4c5375c969fdcca980cdbac +size 1480066 diff --git a/software/Tesseract-OCR/tessdata/osd.traineddata b/software/Tesseract-OCR/tessdata/osd.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..f4f02c3c55ddbbfdb31fe2687f2852e17fda3d9b --- /dev/null +++ b/software/Tesseract-OCR/tessdata/osd.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cf5d576fcc47564f11265841e5ca839001e7e6f38ff7f7aacf46d15a96b00ff +size 10562727 diff --git a/software/Tesseract-OCR/tessdata/pan.traineddata b/software/Tesseract-OCR/tessdata/pan.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..7956d1ef9ab5b0d299afb238e065528d2af120ca --- /dev/null +++ b/software/Tesseract-OCR/tessdata/pan.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ec0907fc3534065ea9ae190c6bb7ec9e5c74fd9d2fa996aaec7407f11ad8131 +size 497721 diff --git a/software/Tesseract-OCR/tessdata/pdf.ttf b/software/Tesseract-OCR/tessdata/pdf.ttf new file mode 100644 index 0000000000000000000000000000000000000000..a0546768297bc99a823a0af7eae89f73af43cd29 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/pdf.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7845420925a23d88ed830a63957b8af85a66a8daf8d9fc90e843673b2ef1a59 +size 572 diff --git a/software/Tesseract-OCR/tessdata/piccolo2d-core-3.0.1.jar b/software/Tesseract-OCR/tessdata/piccolo2d-core-3.0.1.jar new file mode 100644 index 0000000000000000000000000000000000000000..f52bd3ebae01bed1fffe4c11eac03b80baf3e56f --- /dev/null +++ b/software/Tesseract-OCR/tessdata/piccolo2d-core-3.0.1.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9acad723136ddb996e96f5d488b9b046753a1d4c60ea639d5e3f9701deaf60ad +size 125187 diff --git a/software/Tesseract-OCR/tessdata/piccolo2d-extras-3.0.1.jar b/software/Tesseract-OCR/tessdata/piccolo2d-extras-3.0.1.jar new file mode 100644 index 0000000000000000000000000000000000000000..6e6096ef751b54851aea9392595b9484ed030aa9 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/piccolo2d-extras-3.0.1.jar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba45f343e9ebc06c9b4ce165c8bb539b11cbf59e93d1df48489ab173f74375a8 +size 149558 diff --git a/software/Tesseract-OCR/tessdata/pol.traineddata b/software/Tesseract-OCR/tessdata/pol.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..3f1f5bf11995e01834ce29799a14b4ce8cd3a06b --- /dev/null +++ b/software/Tesseract-OCR/tessdata/pol.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4476cdbc0e33d898d32345122b7be1cbf85ace15f920f06c7714756e1ef79b2 +size 4765518 diff --git a/software/Tesseract-OCR/tessdata/por.traineddata b/software/Tesseract-OCR/tessdata/por.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..71cb12583bd32436552a855e88135fa87bd0422f --- /dev/null +++ b/software/Tesseract-OCR/tessdata/por.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4932b937207a9514b7514d518b931a99938c02a28a5a5a553f8599ed58b7deb +size 1982756 diff --git a/software/Tesseract-OCR/tessdata/pus.traineddata b/software/Tesseract-OCR/tessdata/pus.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..5578705d7cd81a5818158d8cd23efc8aa6fccb66 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/pus.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f15550bfe3a20ca781cf5afb7b2af6ee769c6521cf4bb990848e72856b484600 +size 1772087 diff --git a/software/Tesseract-OCR/tessdata/que.traineddata b/software/Tesseract-OCR/tessdata/que.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..d24fdee93583b8da94dce7ce05a1730e384eae8b --- /dev/null +++ b/software/Tesseract-OCR/tessdata/que.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a3f78b010254ae237a7ca89e65e6d0c349221e437ac1575df1877e63a76bf57 +size 5026336 diff --git a/software/Tesseract-OCR/tessdata/ron.traineddata b/software/Tesseract-OCR/tessdata/ron.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..ac44ba33db1720f5557452c46c0aa5fbc1f8ba7c --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ron.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9adfde6b51ba4b97efd10ea37c3070fd3fc2bad7815e81f5c3c198cd96216cc9 +size 2376323 diff --git a/software/Tesseract-OCR/tessdata/rus.traineddata b/software/Tesseract-OCR/tessdata/rus.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..a9480b209701c895765b42aec59ba52cef4984c0 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/rus.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e16e5e036cce1d9ec2b00063cf8b54472625b9e14d893a169e2b0dedeb4df225 +size 3861738 diff --git a/software/Tesseract-OCR/tessdata/san.traineddata b/software/Tesseract-OCR/tessdata/san.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..f1e6bada21458da3b3088cb80187fda304f935fb --- /dev/null +++ b/software/Tesseract-OCR/tessdata/san.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a399958921c64e7d2319369ade1e74b4db2577744ac5bfeabd16663cf743b91c +size 12404677 diff --git a/software/Tesseract-OCR/tessdata/script/Arabic.traineddata b/software/Tesseract-OCR/tessdata/script/Arabic.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..9a6eb3b5413befe2157acb3ae73edd7bd845d845 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Arabic.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47c262ac4e843c024df87ffa1363b77a821a843c069c71ef7650f4d2ecfea1e8 +size 9311038 diff --git a/software/Tesseract-OCR/tessdata/script/Armenian.traineddata b/software/Tesseract-OCR/tessdata/script/Armenian.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..c3cbd931f6216530b2a99f453ade36bc200e221e --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Armenian.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e94e3cfcb79dc6bc24b819ce01340b690f2aabe4c5ac295545ae1bca5d7472f4 +size 7879909 diff --git a/software/Tesseract-OCR/tessdata/script/Bengali.traineddata b/software/Tesseract-OCR/tessdata/script/Bengali.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..3ba9c1ee9bb6ddf46ee060883d89b8d321b88353 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Bengali.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d04c2064bd0ffcd18488c4048d40d88ab056185f3462c2337b52f9e6c51158e5 +size 5712242 diff --git a/software/Tesseract-OCR/tessdata/script/Canadian_Aboriginal.traineddata b/software/Tesseract-OCR/tessdata/script/Canadian_Aboriginal.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..77ebb8268e7000067c243de0c539f63031f367ba --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Canadian_Aboriginal.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec11e31e65541a2040982ee8a08514278f850127908df71553f0958cd02609f8 +size 7180795 diff --git a/software/Tesseract-OCR/tessdata/script/Cherokee.traineddata b/software/Tesseract-OCR/tessdata/script/Cherokee.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..b56dc42e22611941321305acedc55be86cc28f04 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Cherokee.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76df30145426bde13c7ab07a2cb9a27b415a7d703472424801b35c3c3da3aab7 +size 4231619 diff --git a/software/Tesseract-OCR/tessdata/script/Cyrillic.traineddata b/software/Tesseract-OCR/tessdata/script/Cyrillic.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..2951ecc682c3edd7fe67afe1ddf31a2f95d49e2e --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Cyrillic.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a80325ebb1c7aa2dca5002ec05b15052a51dcb2e9e65373c264a3df7ac284358 +size 29252466 diff --git a/software/Tesseract-OCR/tessdata/script/Devanagari.traineddata b/software/Tesseract-OCR/tessdata/script/Devanagari.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..75b7490b76f995a2517da1f62617dffea655b063 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Devanagari.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bbb87c1de2a6a2ef0a97dc041e6eea2723a1c22d638f5e38157a5cd441c12b7 +size 17943870 diff --git a/software/Tesseract-OCR/tessdata/script/Ethiopic.traineddata b/software/Tesseract-OCR/tessdata/script/Ethiopic.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..0a7f4c94fb9710a858a5bbb1b18c878a599dbfa9 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Ethiopic.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4856c53285f9dd28dd130228316cdd506a5172505c99f367d63d84e6467c15f4 +size 9074416 diff --git a/software/Tesseract-OCR/tessdata/script/Fraktur.traineddata b/software/Tesseract-OCR/tessdata/script/Fraktur.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..73259ebc1f5fd935fb1498d7d7e4b6d435b559de --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Fraktur.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac985c3020e42986f8a19e07f1c1b501d47ed7d8e96de69f685bb907aa8db55c +size 10915632 diff --git a/software/Tesseract-OCR/tessdata/script/Georgian.traineddata b/software/Tesseract-OCR/tessdata/script/Georgian.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..51901dcbbfcce6b9de6153ed1e4dad593ced456e --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Georgian.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8da5cc7e2af2c8da04d126ab1f2604904305e548bc3fc20d3c0bae6d519ca013 +size 6949865 diff --git a/software/Tesseract-OCR/tessdata/script/Greek.traineddata b/software/Tesseract-OCR/tessdata/script/Greek.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..73997005e2ca3ef69f27b917234060372ff4c662 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Greek.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52e201e4a22336d89ee202b579aca04f15ffd6e5e6af1fe164498f2c7de898e6 +size 3041556 diff --git a/software/Tesseract-OCR/tessdata/script/Gujarati.traineddata b/software/Tesseract-OCR/tessdata/script/Gujarati.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..828de39094cf7f9894281e232596b8aae0426f95 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Gujarati.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94643022c1dc06a6b1a96f7dbc3bcc77f455b38e6843cc115a4c9c460b0b32aa +size 5017100 diff --git a/software/Tesseract-OCR/tessdata/script/Gurmukhi.traineddata b/software/Tesseract-OCR/tessdata/script/Gurmukhi.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..627d193b5792f17b7280738b814d38457f260514 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Gurmukhi.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34c36da0fc59198f009ebbe8646708255fa3ca2553e62645a7b584cbceca8b24 +size 4213597 diff --git a/software/Tesseract-OCR/tessdata/script/HanS.traineddata b/software/Tesseract-OCR/tessdata/script/HanS.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..cc69419e8398eb2840f33dd91ed2045e21d7ad83 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/HanS.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d03c250faaa48015bfde2213f3d7d5bda82bcee93422fceac5906a32073d9152 +size 5972903 diff --git a/software/Tesseract-OCR/tessdata/script/HanS_vert.traineddata b/software/Tesseract-OCR/tessdata/script/HanS_vert.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..6d143c4e8eb8e28f9716faafb24888a409d32f2e --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/HanS_vert.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b555a9a60c88e5e27ddd34541d055200c05492d1f184732518a721faf1db979b +size 5429738 diff --git a/software/Tesseract-OCR/tessdata/script/HanT.traineddata b/software/Tesseract-OCR/tessdata/script/HanT.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..e69984c12ca299e605cf98a3909d99f45fdb107f --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/HanT.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29588327f0d830b5c112209045d826b9be014138266b20f2b08843aac2730fbb +size 5448070 diff --git a/software/Tesseract-OCR/tessdata/script/HanT_vert.traineddata b/software/Tesseract-OCR/tessdata/script/HanT_vert.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..20d52d96bc57b427faba3ddf02fa0ecc13942528 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/HanT_vert.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec4e31daec478e61216b1d9f34e0441fc1fcefacfe4fb28f1ea8bcfcc97ba302 +size 5448267 diff --git a/software/Tesseract-OCR/tessdata/script/Hangul.traineddata b/software/Tesseract-OCR/tessdata/script/Hangul.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..869ab49a25009d9022bcc51471631014a81d18df --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Hangul.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cae2d12b8cdac6b62643b65915bec347e80970adc55228ca42ac1ec8909b198a +size 4845849 diff --git a/software/Tesseract-OCR/tessdata/script/Hangul_vert.traineddata b/software/Tesseract-OCR/tessdata/script/Hangul_vert.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..870dc14282c4ce123f032394322de98783239c3d --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Hangul_vert.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fbbd6366654e043038bbcf78b2b8e031c64c2b65f133593d097edee6c7e2ea8 +size 4725034 diff --git a/software/Tesseract-OCR/tessdata/script/Hebrew.traineddata b/software/Tesseract-OCR/tessdata/script/Hebrew.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..d011367028f6159cb0f9601d25aa2bd878d657e0 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Hebrew.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f4f3405404a61e21e5c16316ed5c3052ddb3572a75e0b3dc3fe118b12dea76e +size 4866337 diff --git a/software/Tesseract-OCR/tessdata/script/Japanese.traineddata b/software/Tesseract-OCR/tessdata/script/Japanese.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..39a43cad72c68e25ba7d46b781cfc293364d1251 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Japanese.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c176cdca0c17e9be97bda854ac91baea90b92e2813b45749ad05e409477ba8b2 +size 5877645 diff --git a/software/Tesseract-OCR/tessdata/script/Japanese_vert.traineddata b/software/Tesseract-OCR/tessdata/script/Japanese_vert.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..363787522b0517b7249ad84f0d65771eba4cdb7c --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Japanese_vert.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d463a4811f3ae174e11b3f87773e07130c1c6aca042f31f7a90c41d939f1538 +size 6445356 diff --git a/software/Tesseract-OCR/tessdata/script/Kannada.traineddata b/software/Tesseract-OCR/tessdata/script/Kannada.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..2fc2c51d8e49deac7d63be6c06839b8563998cc6 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Kannada.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1252172cbbe99d27e5e52009a0e79444d555329b82e0b88d6e1f2a601a1b7d86 +size 6777791 diff --git a/software/Tesseract-OCR/tessdata/script/Khmer.traineddata b/software/Tesseract-OCR/tessdata/script/Khmer.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..1f567d934e20d74494ba805dbd17e1096305d6ed --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Khmer.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:330366535d1155974af0f99630df3060c9a98c657b1e4b29f458125f1d10e44a +size 4476365 diff --git a/software/Tesseract-OCR/tessdata/script/Lao.traineddata b/software/Tesseract-OCR/tessdata/script/Lao.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..141bd7756a19ef76494c540d9766d90486d5b9da --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Lao.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bdca344c3ed9ecf405e2f8b5eb0af9832c1de7d92af2f4891867549c1d1fb63 +size 10103937 diff --git a/software/Tesseract-OCR/tessdata/script/Latin.traineddata b/software/Tesseract-OCR/tessdata/script/Latin.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..e1de7548f06f4b3006dfff9b7a01efae75848694 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Latin.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6dbdaf8ecc6c40f025c2648bf3b3f3fbffe073e1fd2df2047fde2e2b2f020d53 +size 89384811 diff --git a/software/Tesseract-OCR/tessdata/script/Malayalam.traineddata b/software/Tesseract-OCR/tessdata/script/Malayalam.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..b916cfdd2fa756323e036d2477da0e5d0067b8ea --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Malayalam.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:822ad7ed9fb2eba0b0da5c788ed8710eba651d91777fc659ce0d700cfb99be06 +size 9007302 diff --git a/software/Tesseract-OCR/tessdata/script/Myanmar.traineddata b/software/Tesseract-OCR/tessdata/script/Myanmar.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..e3434c0068846997f9977c50eb15ca8c24576e8f --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Myanmar.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78f95e6033824b7c197a099e9fdef55e0742146619d822c9b8d81f933f2b27df +size 7840489 diff --git a/software/Tesseract-OCR/tessdata/script/Oriya.traineddata b/software/Tesseract-OCR/tessdata/script/Oriya.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..3d408fbb9a1179195d521659d55c2ebcb7603d20 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Oriya.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39fc17f9e30eee261ac08b2d9d3c82bf28e69cff7c38d0a3aea19f1023410ade +size 5744929 diff --git a/software/Tesseract-OCR/tessdata/script/Sinhala.traineddata b/software/Tesseract-OCR/tessdata/script/Sinhala.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..9c4dc43ab0979c0a73ad6737b69349a7e07c0384 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Sinhala.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce202bfbdc65e677abd76f5349f4765296b3d2b01c87608f49154ad7fa12ec4a +size 4782577 diff --git a/software/Tesseract-OCR/tessdata/script/Syriac.traineddata b/software/Tesseract-OCR/tessdata/script/Syriac.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..79e0a483dd016b0a75ba024712c7a1da47d80002 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Syriac.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a89964433928a74de707e6fb61df1e933660de19c969f5301e8195e0219ea9bc +size 5803220 diff --git a/software/Tesseract-OCR/tessdata/script/Tamil.traineddata b/software/Tesseract-OCR/tessdata/script/Tamil.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..46af07f5bee6270b21d642626791ede9c5695d74 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Tamil.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6857e222c6977986915bd073f669c2cde33039dedde26603ed6be87b0a8d62bb +size 7089032 diff --git a/software/Tesseract-OCR/tessdata/script/Telugu.traineddata b/software/Tesseract-OCR/tessdata/script/Telugu.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..cdc3854d77e24b8e4e75ec3103d7560b4da9f77c --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Telugu.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:615dd18355098058d77a45ee3bacc5d36aca574880c1b6099011f2aca09f2d1c +size 6485174 diff --git a/software/Tesseract-OCR/tessdata/script/Thaana.traineddata b/software/Tesseract-OCR/tessdata/script/Thaana.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..96376d5acce61ec800f17d3067252640134a2314 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Thaana.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aae14e808cc783e00fe37af8afa67ff09c8d01b454065b7633e014eb2b5b6e2d +size 6048323 diff --git a/software/Tesseract-OCR/tessdata/script/Thai.traineddata b/software/Tesseract-OCR/tessdata/script/Thai.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..74270c1b7eab2d6dbaccad45c6d4a2b18f7d3604 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Thai.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9e34be94556ddb65fd7e04892ff606e1a5b696d0eb422b5a7efc6859943702d +size 4249016 diff --git a/software/Tesseract-OCR/tessdata/script/Tibetan.traineddata b/software/Tesseract-OCR/tessdata/script/Tibetan.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..82898ce686d1925382d1f8a531659ef77ef293f5 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Tibetan.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c869d52597d5b03eb6f52c5d0c217514e883259ead05765c0329e5a536538ae +size 5699531 diff --git a/software/Tesseract-OCR/tessdata/script/Vietnamese.traineddata b/software/Tesseract-OCR/tessdata/script/Vietnamese.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..52e3eb6e66dacb31c1141589b1e62d5deb6cba15 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/script/Vietnamese.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30546eea618459e79761f962391e6879778b026ad7b4459a11664a1b654758bd +size 1667794 diff --git a/software/Tesseract-OCR/tessdata/sin.traineddata b/software/Tesseract-OCR/tessdata/sin.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..e27b7c71312e86426abbcafc32d32cdb539cc2c8 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/sin.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc75c6df2375a30c9f7e759fa7d4b58ae3ecf9ce72668a702d01acb13e551422 +size 1727413 diff --git a/software/Tesseract-OCR/tessdata/slk.traineddata b/software/Tesseract-OCR/tessdata/slk.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..c70cd82c640ff27045a0ef6016eff72715273628 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/slk.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbcc400a9c74c6a13d922fcb1211b655d1b165387b675ed75cd2dbd756b974a5 +size 4427661 diff --git a/software/Tesseract-OCR/tessdata/slv.traineddata b/software/Tesseract-OCR/tessdata/slv.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..ef0848077c0b8ba15a7ac86e8376df63cc37f5a9 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/slv.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b937632c17ce5fdf20535d25feec044da10a0c4c8234f4302d5606fd671cf60d +size 3003829 diff --git a/software/Tesseract-OCR/tessdata/snd.traineddata b/software/Tesseract-OCR/tessdata/snd.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..709dcc30052924dc3bc29cd9cc74551665d66253 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/snd.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f25cae3b325b0a6dc4dd5d8aeb3ac40b129a18bdd92666317022ee198f7878a7 +size 1694035 diff --git a/software/Tesseract-OCR/tessdata/spa.traineddata b/software/Tesseract-OCR/tessdata/spa.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..edd70875a4d356bc89f69038ee8a4f3fc9cc62ee --- /dev/null +++ b/software/Tesseract-OCR/tessdata/spa.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f2e04d02774a18f01bed44b1111f2cd7f3ba7ac9dc4373cd3f898a40ea6b464 +size 2294433 diff --git a/software/Tesseract-OCR/tessdata/spa_old.traineddata b/software/Tesseract-OCR/tessdata/spa_old.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..ad79f8bb07f59f2cfa6d44206411a5ee20ed6bd2 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/spa_old.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11d89a6763ff134ef8f7e41b995974d36fba5d1a807156d3202d7bf991bb1823 +size 2894755 diff --git a/software/Tesseract-OCR/tessdata/sqi.traineddata b/software/Tesseract-OCR/tessdata/sqi.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..8125d099bb60af011b256c0e007ba76bdeafdd60 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/sqi.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d89621d9afe8ddf35b403ecf8951edea52c3a960d241f287b1a7b2c5ba8daac +size 1874705 diff --git a/software/Tesseract-OCR/tessdata/srp.traineddata b/software/Tesseract-OCR/tessdata/srp.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..7018fe26505cd628360bb4cafc64723aeb5989ad --- /dev/null +++ b/software/Tesseract-OCR/tessdata/srp.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa41ae3d9cc705e60d398ab38a5c3cc8b772c0d420c7d4f0859beb13d0e321b6 +size 2149931 diff --git a/software/Tesseract-OCR/tessdata/srp_latn.traineddata b/software/Tesseract-OCR/tessdata/srp_latn.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..ab49260338823170ee26d3bb8def2de9fc8bf51a --- /dev/null +++ b/software/Tesseract-OCR/tessdata/srp_latn.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54b2e001bd8a336bdffc249c1487b8b7cb712f0a031f2551930ba050ebefa2a0 +size 3281787 diff --git a/software/Tesseract-OCR/tessdata/sun.traineddata b/software/Tesseract-OCR/tessdata/sun.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..df1fcb9e21f6bdad6b25d1ce7bb13e7f06992b7b --- /dev/null +++ b/software/Tesseract-OCR/tessdata/sun.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa939213b005b3477a1032b7222f63cd0b0ac486f83fd9554caf653d6e6c6ffe +size 1369500 diff --git a/software/Tesseract-OCR/tessdata/swa.traineddata b/software/Tesseract-OCR/tessdata/swa.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..66dc0f27f53f888cf4af2346ac20e4a01fe41b2a --- /dev/null +++ b/software/Tesseract-OCR/tessdata/swa.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:395439d1ec308535066cbaea9b15e0e4cc81f8609170af76ab7e7e8d3ec42f3e +size 2167651 diff --git a/software/Tesseract-OCR/tessdata/swe.traineddata b/software/Tesseract-OCR/tessdata/swe.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..5c3b5d9fba5df8432ea010e4c0814bb009a6a39c --- /dev/null +++ b/software/Tesseract-OCR/tessdata/swe.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7304988d41f833efebcc2d529df54b1903ecebbc3da1faabd19a0fddd4fe586 +size 4167034 diff --git a/software/Tesseract-OCR/tessdata/syr.traineddata b/software/Tesseract-OCR/tessdata/syr.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..3557f51dcd97aee142f001ac542255d14d632391 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/syr.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7435b43466da8343619bdc43c4da8dc8581f21aab3337fa1bd22ed8a8c10af04 +size 2207208 diff --git a/software/Tesseract-OCR/tessdata/tam.traineddata b/software/Tesseract-OCR/tessdata/tam.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..047d42eb5e7a562d161c742f4fa7c02901fac2f5 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tam.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d02fbec24be4b07e32e80d0ccfc3b6b67a3c5d61c9d0a7c8532677990912c6ec +size 3237963 diff --git a/software/Tesseract-OCR/tessdata/tat.traineddata b/software/Tesseract-OCR/tessdata/tat.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..3594a51b74ceb8bca22b0242e30dacd931d63184 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tat.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ad946d753f4b9688e4e4bcf525a931f486da4aaa9020e32b6a7262718bdf093 +size 1072896 diff --git a/software/Tesseract-OCR/tessdata/tel.traineddata b/software/Tesseract-OCR/tessdata/tel.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..3311c3f0a31d96e44b1e8e4180350aa894312c66 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tel.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d10691fddd5b67802e1c12800ebb321d3b8bcd8d24a2ac3ff206f93188c04ab5 +size 2769654 diff --git a/software/Tesseract-OCR/tessdata/tessconfigs/batch b/software/Tesseract-OCR/tessdata/tessconfigs/batch new file mode 100644 index 0000000000000000000000000000000000000000..17dc8843bf6456ed73960e367496ef15be39efb8 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tessconfigs/batch @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45570b43b2be9076d65f1fd6e66f3ddcce22606639ac1a018c96cbc3b0fef429 +size 50 diff --git a/software/Tesseract-OCR/tessdata/tessconfigs/batch.nochop b/software/Tesseract-OCR/tessdata/tessconfigs/batch.nochop new file mode 100644 index 0000000000000000000000000000000000000000..bda74692b0852b88fc334c1c54d40182f744e1e3 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tessconfigs/batch.nochop @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7672271d9911d5ff9bb8c6a5b491a0ac5b08d7a32fab67f3f88061e663ecd12 +size 39 diff --git a/software/Tesseract-OCR/tessdata/tessconfigs/matdemo b/software/Tesseract-OCR/tessdata/tessconfigs/matdemo new file mode 100644 index 0000000000000000000000000000000000000000..867bb6368f366ea110cf69a25d4fc2047211fa20 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tessconfigs/matdemo @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9307ed7fe364d838db651d970b3344a722f916a758b7d8fb0f097f6220fbf15 +size 250 diff --git a/software/Tesseract-OCR/tessdata/tessconfigs/msdemo b/software/Tesseract-OCR/tessdata/tessconfigs/msdemo new file mode 100644 index 0000000000000000000000000000000000000000..7e882e8d3ca5b63061c6a645b4adbf2a81a9506c --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tessconfigs/msdemo @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b140205986b89509eda494f8d2bfe6f93531e16f5a2bd30d74642cf6665eda1 +size 380 diff --git a/software/Tesseract-OCR/tessdata/tessconfigs/nobatch b/software/Tesseract-OCR/tessdata/tessconfigs/nobatch new file mode 100644 index 0000000000000000000000000000000000000000..424c3d9095502234a87cca94421e7f496307ee01 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tessconfigs/nobatch @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7eb70257593da06f682a3ddda54a9d260d4fc514f645237f5ca74b08f8da61a6 +size 2 diff --git a/software/Tesseract-OCR/tessdata/tessconfigs/segdemo b/software/Tesseract-OCR/tessdata/tessconfigs/segdemo new file mode 100644 index 0000000000000000000000000000000000000000..5b40a49f8ea1ebeb317bead7c87df432dc18c882 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tessconfigs/segdemo @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00ae4cb269c63b5261e669649dc21ad6b9ba28e9408dcb0c156ffae23054c9b2 +size 304 diff --git a/software/Tesseract-OCR/tessdata/tgk.traineddata b/software/Tesseract-OCR/tessdata/tgk.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..d1e2672facd697521e4f5b8ae2d257cbb6ee0649 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tgk.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b32ed1374649b9b44b9a20ed07f1e86c1e1004c3bd11ce182496a47a18cb321 +size 2602685 diff --git a/software/Tesseract-OCR/tessdata/tha.traineddata b/software/Tesseract-OCR/tessdata/tha.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..c0956148d25094e87ae3bf5e4328ced842dc1ce4 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tha.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:294227cc2d1292b0acb28d61d4115c88252b96d466ca90b417cf4cf0c67bf07c +size 1072600 diff --git a/software/Tesseract-OCR/tessdata/tir.traineddata b/software/Tesseract-OCR/tessdata/tir.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..2292e28041f63a2cbbbf9cdddb1cfcd798875396 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tir.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73d7430c22a062b061f603a2c1d70c4ea4aa092f7a932a97921926e15b4fdb3d +size 378822 diff --git a/software/Tesseract-OCR/tessdata/ton.traineddata b/software/Tesseract-OCR/tessdata/ton.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..792b5e96670ae23bb420fb83028129703b254050 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ton.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23d36448a3c59499da59502419ffcaa279056fa369a0fa2c798e066321d01bd1 +size 947249 diff --git a/software/Tesseract-OCR/tessdata/tur.traineddata b/software/Tesseract-OCR/tessdata/tur.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..70ac08374524a2c04f23e569606194a599ecb5fa --- /dev/null +++ b/software/Tesseract-OCR/tessdata/tur.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7393381111e1152420fc4092cb44eef4237580d21b92bf30d7d221aad192c6b7 +size 4550554 diff --git a/software/Tesseract-OCR/tessdata/uig.traineddata b/software/Tesseract-OCR/tessdata/uig.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..9e88c20f80fabf88d7d6e2c38e57563240f90bce --- /dev/null +++ b/software/Tesseract-OCR/tessdata/uig.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:163b360268c39fc69e0c0dc9299c06dfe7a6c51ef8f33766da75022217b69b22 +size 2794272 diff --git a/software/Tesseract-OCR/tessdata/ukr.traineddata b/software/Tesseract-OCR/tessdata/ukr.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..cdca3be957eff8477c1659693c5423f0fd8bcc93 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/ukr.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d59e53e2bded32f4445f124b4b00240fcac7e8044c003ab822ccb94f0b3db59b +size 3825102 diff --git a/software/Tesseract-OCR/tessdata/urd.traineddata b/software/Tesseract-OCR/tessdata/urd.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..c1d6d48ad5d46dd1b4bae24bc08f84311cd610b7 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/urd.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62e8250ce2a994106e313a82e26a516a39e2cf159d0ce3c5b5008387fd0d555f +size 1398718 diff --git a/software/Tesseract-OCR/tessdata/uzb.traineddata b/software/Tesseract-OCR/tessdata/uzb.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..02b6bd9a1a3fcf1f3d5db68147a4bd496bb7447d --- /dev/null +++ b/software/Tesseract-OCR/tessdata/uzb.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e39021eefe692906b50d9bd22e580fa57fe43fa35db6846ad8b6369ddc21ea8 +size 6470703 diff --git a/software/Tesseract-OCR/tessdata/uzb_cyrl.traineddata b/software/Tesseract-OCR/tessdata/uzb_cyrl.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..fef1d7ed7d0be86b91fca7c1ad7d7692a5bbdeb4 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/uzb_cyrl.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2fe0b3f0eb4a5e46252470160ad51cc5f3c4c0f390ba67d1911beb0dbe80cc8 +size 1563501 diff --git a/software/Tesseract-OCR/tessdata/vie.traineddata b/software/Tesseract-OCR/tessdata/vie.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..1c6f39b96f95e0e239f8ebb76b63ef0be69b8a66 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/vie.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79df64caf7bcfb2a27df5042ecb6121e196eada34da774956995747636d5bfa1 +size 531275 diff --git a/software/Tesseract-OCR/tessdata/yid.traineddata b/software/Tesseract-OCR/tessdata/yid.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..32dc802cb437cdd3b716171d911b5ade169934e4 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/yid.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9a3d74076460a505dc0c6b59a0f5bd1108c6436d570954223b3695988d1666d +size 545606 diff --git a/software/Tesseract-OCR/tessdata/yor.traineddata b/software/Tesseract-OCR/tessdata/yor.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..8fe515beb6a86f253badfe3b4ac9ac39ffb14ec5 --- /dev/null +++ b/software/Tesseract-OCR/tessdata/yor.traineddata @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17ab3855f1ba9056183759a84e4c11cebf417a7d3c8c2cdcc37537d7fbffba3d +size 963400 diff --git a/software/Tesseract-OCR/tesseract-uninstall.exe b/software/Tesseract-OCR/tesseract-uninstall.exe new file mode 100644 index 0000000000000000000000000000000000000000..328e6fceed5b715fe24033ee1974b785b35847f7 --- /dev/null +++ b/software/Tesseract-OCR/tesseract-uninstall.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:014cd1aa16540c06497b19fbed1916595c261b3c1cdebe516ada164995360aa2 +size 151384 diff --git a/software/Tesseract-OCR/tesseract.1.html b/software/Tesseract-OCR/tesseract.1.html new file mode 100644 index 0000000000000000000000000000000000000000..2591d9f9edaace8a6ad351d037d2133ba530b64a --- /dev/null +++ b/software/Tesseract-OCR/tesseract.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c11278e5d003e030235cb5158d4677140423432ae3e2eea757f80348249c1d0c +size 42221 diff --git a/software/Tesseract-OCR/tesseract.exe b/software/Tesseract-OCR/tesseract.exe new file mode 100644 index 0000000000000000000000000000000000000000..a33353e77cdd750e8bc634e0e03ffedfbf0a1a8e --- /dev/null +++ b/software/Tesseract-OCR/tesseract.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e217535aa321dbf316a8aa8be36b97cdfb11aff792744cf520a591e76cba582a +size 1585872 diff --git a/software/Tesseract-OCR/text2image.1.html b/software/Tesseract-OCR/text2image.1.html new file mode 100644 index 0000000000000000000000000000000000000000..759b77ca7b9dc75d2d8e8971d2e388c7b5b49105 --- /dev/null +++ b/software/Tesseract-OCR/text2image.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6619cb8dbac9a181bf9c7b19f9dd46f963cfad8ba449eeba7e3641fef09fcdda +size 25663 diff --git a/software/Tesseract-OCR/text2image.exe b/software/Tesseract-OCR/text2image.exe new file mode 100644 index 0000000000000000000000000000000000000000..8e095ba051ad15e30fc1bd5c0239dd12cb1fe80f --- /dev/null +++ b/software/Tesseract-OCR/text2image.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e2e03eda8881ac81552ad46d880ed2e117faff9288385fe04309e3d0a4e4dc5 +size 9975784 diff --git a/software/Tesseract-OCR/unicharambigs.5.html b/software/Tesseract-OCR/unicharambigs.5.html new file mode 100644 index 0000000000000000000000000000000000000000..2305931c311364d62e29bca0ff256449147290a4 --- /dev/null +++ b/software/Tesseract-OCR/unicharambigs.5.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37a3dd3ee8d6ee795489cce3d3ca013892764af9e51424ee2091cf954c25c7b9 +size 21249 diff --git a/software/Tesseract-OCR/unicharset.5.html b/software/Tesseract-OCR/unicharset.5.html new file mode 100644 index 0000000000000000000000000000000000000000..9ab8afd4137d913ce488322982a55ba844a2c6ff --- /dev/null +++ b/software/Tesseract-OCR/unicharset.5.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51f459863353f7e863bd1abc7f78fb0dd0188e1d44c495cf8abe2f696a52ccf5 +size 23829 diff --git a/software/Tesseract-OCR/unicharset_extractor.1.html b/software/Tesseract-OCR/unicharset_extractor.1.html new file mode 100644 index 0000000000000000000000000000000000000000..8a80995449215cd8f0bb948617384dec4f5b561b --- /dev/null +++ b/software/Tesseract-OCR/unicharset_extractor.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09f5f2e262cc4fd5a67422d7ca0a656ea9bfe60e66d880196d11dccb7b267f2b +size 18811 diff --git a/software/Tesseract-OCR/unicharset_extractor.exe b/software/Tesseract-OCR/unicharset_extractor.exe new file mode 100644 index 0000000000000000000000000000000000000000..7f5046dfa9ad5a87446cf7b1ee72f97a366f26c8 --- /dev/null +++ b/software/Tesseract-OCR/unicharset_extractor.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0faf69ee9b5e4e14743015cb2a39548aaf20ded324b5e81248fcf84924ee8b89 +size 3770696 diff --git a/software/Tesseract-OCR/winpath.exe b/software/Tesseract-OCR/winpath.exe new file mode 100644 index 0000000000000000000000000000000000000000..05bfa7cf71e6bd4a3fe769a7349f621298001399 --- /dev/null +++ b/software/Tesseract-OCR/winpath.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5223e97b220215cc3ec12acb8979a6f41f5344737af63a90f47879051567777d +size 19154 diff --git a/software/Tesseract-OCR/wordlist2dawg.1.html b/software/Tesseract-OCR/wordlist2dawg.1.html new file mode 100644 index 0000000000000000000000000000000000000000..6f6bbe3ab23eb001f42166dd54e1a64bdb5610b8 --- /dev/null +++ b/software/Tesseract-OCR/wordlist2dawg.1.html @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:351375a74912987db3c6abc65af0fc7a16661b432025a8a2c51b2798095e81bc +size 19492 diff --git a/software/Tesseract-OCR/wordlist2dawg.exe b/software/Tesseract-OCR/wordlist2dawg.exe new file mode 100644 index 0000000000000000000000000000000000000000..f5891d5ad3d9825c9f83be0088717cdb3dfdd518 --- /dev/null +++ b/software/Tesseract-OCR/wordlist2dawg.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22e58e0ab4602545d1e4a0d3f1a62f8f8269c87ab09d6eafe523ddeceaa4df97 +size 1019632 diff --git a/software/Tesseract-OCR/zlib1.dll b/software/Tesseract-OCR/zlib1.dll new file mode 100644 index 0000000000000000000000000000000000000000..33423b112d3c8e369f7549484457b014fe39aeb5 --- /dev/null +++ b/software/Tesseract-OCR/zlib1.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb7ab3788d10940df874acd97b1821bbb5ee4a91f3eec11982bb5bf7a3c96443 +size 120814 diff --git a/software/poppler-24.08.0/Library/bin/Lerc.dll b/software/poppler-24.08.0/Library/bin/Lerc.dll new file mode 100644 index 0000000000000000000000000000000000000000..e8d474939377cb560b6ffb18bbc19002d9ddd558 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/Lerc.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3383b3f5df29c5b556ccbff8b5c1cbcdcaa423a68cb22bc3bf84c4c36a1bcdbc +size 519680 diff --git a/software/poppler-24.08.0/Library/bin/cairo.dll b/software/poppler-24.08.0/Library/bin/cairo.dll new file mode 100644 index 0000000000000000000000000000000000000000..7256f2988adfdd087264f6b0cd322e4f34118131 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/cairo.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c690978c5be8486d06e4363cbc802fe800a3c454d66b64dd19f172292bd20a3f +size 1016320 diff --git a/software/poppler-24.08.0/Library/bin/charset.dll b/software/poppler-24.08.0/Library/bin/charset.dll new file mode 100644 index 0000000000000000000000000000000000000000..9bc286eb53079f6201e6e2c4bef0b8ced48535aa --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/charset.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fd754b8284bf99cac2569cc3358c970103a5dc3f9eb9dde81046c0754ebd75f +size 11776 diff --git a/software/poppler-24.08.0/Library/bin/deflate.dll b/software/poppler-24.08.0/Library/bin/deflate.dll new file mode 100644 index 0000000000000000000000000000000000000000..7de7e549b03e67fa3eed6be5f92203a8352d31aa --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/deflate.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0c144c1bcb58b16d25f43cfb36e5e7fb03f39414fbb2f5b2e14b1874f6c7f27 +size 177152 diff --git a/software/poppler-24.08.0/Library/bin/expat.dll b/software/poppler-24.08.0/Library/bin/expat.dll new file mode 100644 index 0000000000000000000000000000000000000000..67b0c636da3118fe88b872736806817081c8266f --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/expat.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1eef16676ab7cabca520ed0b809bb7f38b23250a7d051942cf1b288aebdb9bfe +size 402432 diff --git a/software/poppler-24.08.0/Library/bin/fontconfig-1.dll b/software/poppler-24.08.0/Library/bin/fontconfig-1.dll new file mode 100644 index 0000000000000000000000000000000000000000..de155a3a148645f08faa87e736298ae814a6f0b3 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/fontconfig-1.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfce15422bcf0fce28278b2e517741ef718de4e9f86ee8e9234805695005d018 +size 282624 diff --git a/software/poppler-24.08.0/Library/bin/freetype.dll b/software/poppler-24.08.0/Library/bin/freetype.dll new file mode 100644 index 0000000000000000000000000000000000000000..605d1c47b8163f52503b7827aac0942400c5e92f --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/freetype.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f878121d560f43c398671bc1d0d7a61bf719fa7894eac5a1db665414bcd4096f +size 670720 diff --git a/software/poppler-24.08.0/Library/bin/iconv.dll b/software/poppler-24.08.0/Library/bin/iconv.dll new file mode 100644 index 0000000000000000000000000000000000000000..4077b061c81401f983910915e5a9df3fa66dadd7 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/iconv.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb108fa99613c60b732221c6edf9a7ee0484c2758c63252708969616912c256c +size 937472 diff --git a/software/poppler-24.08.0/Library/bin/jpeg8.dll b/software/poppler-24.08.0/Library/bin/jpeg8.dll new file mode 100644 index 0000000000000000000000000000000000000000..4959ab00a4d47b0ceecdb96013c839f17b2722b5 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/jpeg8.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b98a020fe2161efb9f8cfe991f8f77c5d497b290422328fe351948d2234838e9 +size 803328 diff --git a/software/poppler-24.08.0/Library/bin/lcms2.dll b/software/poppler-24.08.0/Library/bin/lcms2.dll new file mode 100644 index 0000000000000000000000000000000000000000..cf4075a2d9a5176f6c9e0d9dc50abdb06d1cde2e --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/lcms2.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f864b9f1bf5839fbc963265a0c9c94a4709124439e5ab5bfcae5f522483a1c4 +size 560128 diff --git a/software/poppler-24.08.0/Library/bin/libcrypto-3-x64.dll b/software/poppler-24.08.0/Library/bin/libcrypto-3-x64.dll new file mode 100644 index 0000000000000000000000000000000000000000..a82ffcc1bedc843f219fc52c6ef6f9f301246f0b --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/libcrypto-3-x64.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:124c5f40a6cf0e642f9d92784dd66314fd548b4fdf93c543bf478e71e1209f9d +size 6459392 diff --git a/software/poppler-24.08.0/Library/bin/libcurl.dll b/software/poppler-24.08.0/Library/bin/libcurl.dll new file mode 100644 index 0000000000000000000000000000000000000000..68f277130c59698f3d984fef414aceefe91bbbf8 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/libcurl.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a70c1cee2d55cf029eedc1a304e087d9276995d7caa0970832faf856d3bd4ae7 +size 617984 diff --git a/software/poppler-24.08.0/Library/bin/libexpat.dll b/software/poppler-24.08.0/Library/bin/libexpat.dll new file mode 100644 index 0000000000000000000000000000000000000000..67b0c636da3118fe88b872736806817081c8266f --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/libexpat.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1eef16676ab7cabca520ed0b809bb7f38b23250a7d051942cf1b288aebdb9bfe +size 402432 diff --git a/software/poppler-24.08.0/Library/bin/liblzma.dll b/software/poppler-24.08.0/Library/bin/liblzma.dll new file mode 100644 index 0000000000000000000000000000000000000000..7cf055c0b6ccf33ac0352d8c494767d750ef1e10 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/liblzma.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07a4148f1972c843ddb31dbf1d058a7f73cb375f74473c9220f1476b8b973518 +size 154624 diff --git a/software/poppler-24.08.0/Library/bin/libpng16.dll b/software/poppler-24.08.0/Library/bin/libpng16.dll new file mode 100644 index 0000000000000000000000000000000000000000..62e9b3117f358c5ce66cf13d4e6dbdf73dc3c93a --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/libpng16.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54789e18aceb43b5ad8a1c6a3a496b9379dd63d3ce46aefeddbeec87b8da3a08 +size 196608 diff --git a/software/poppler-24.08.0/Library/bin/libssh2.dll b/software/poppler-24.08.0/Library/bin/libssh2.dll new file mode 100644 index 0000000000000000000000000000000000000000..dd4ad33a77f528e7f7febdf9093a8cf2b6398c63 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/libssh2.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a37f850e18c32d9606a9c5b38039bc4079b9d9f0346a3aab4c34ad7e2e4b5d9 +size 244224 diff --git a/software/poppler-24.08.0/Library/bin/libtiff.dll b/software/poppler-24.08.0/Library/bin/libtiff.dll new file mode 100644 index 0000000000000000000000000000000000000000..367cf311b1c31aaeb868f71b2c6cce989b6f2eb5 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/libtiff.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58498f3e9e5f8444c9e315de6f35dae090e630978326838770187b5946303bda +size 493056 diff --git a/software/poppler-24.08.0/Library/bin/libzstd.dll b/software/poppler-24.08.0/Library/bin/libzstd.dll new file mode 100644 index 0000000000000000000000000000000000000000..943e4f96c7842185bad5a05983447a8d9ba8154a --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/libzstd.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:626adec52d89c6275e5d58427f6c44a76c94ea2fe700a663d6df5610065fbdb4 +size 654336 diff --git a/software/poppler-24.08.0/Library/bin/openjp2.dll b/software/poppler-24.08.0/Library/bin/openjp2.dll new file mode 100644 index 0000000000000000000000000000000000000000..d511d4d09285fc4373b25b170232b3135676eed7 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/openjp2.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac644640e2f4328a3cae0aaa7ba30412988cc9c478a3ecd39e21030f6f77c622 +size 353280 diff --git a/software/poppler-24.08.0/Library/bin/pdfattach.exe b/software/poppler-24.08.0/Library/bin/pdfattach.exe new file mode 100644 index 0000000000000000000000000000000000000000..e5c45d3f26f6097d336074f0f35dd17776e69ac9 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pdfattach.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef06272997606e135f9a3b77156a413f77de6a561cb9b3b65d35462e823506a2 +size 22528 diff --git a/software/poppler-24.08.0/Library/bin/pdfdetach.exe b/software/poppler-24.08.0/Library/bin/pdfdetach.exe new file mode 100644 index 0000000000000000000000000000000000000000..b23a30a652b91714a5a0b4ad3d69c3fedcc82c13 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pdfdetach.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0cc249a516d70262d6800813f2190d16dee2457fd905c32299f6c406d49f8cd9 +size 45568 diff --git a/software/poppler-24.08.0/Library/bin/pdffonts.exe b/software/poppler-24.08.0/Library/bin/pdffonts.exe new file mode 100644 index 0000000000000000000000000000000000000000..3c581207ab84d70baa92123e40fe34299394e53d --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pdffonts.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19cbb79d65a53556c5951e701c4f68ebf4b291ccab505baf37b0b3280ee3ffc2 +size 25600 diff --git a/software/poppler-24.08.0/Library/bin/pdfimages.exe b/software/poppler-24.08.0/Library/bin/pdfimages.exe new file mode 100644 index 0000000000000000000000000000000000000000..492d3a6e940023a6e07c28abb01d4dd2be7f819c --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pdfimages.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b80f31bfa4e1d7ed61f3d3bee1fc09e4d904f5ba2957a3e8e69cf0d33ac0ddd +size 52224 diff --git a/software/poppler-24.08.0/Library/bin/pdfinfo.exe b/software/poppler-24.08.0/Library/bin/pdfinfo.exe new file mode 100644 index 0000000000000000000000000000000000000000..010f568042db837c79437cc519a37cb9c58f1da1 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pdfinfo.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40d0c30a0edbf2aed90159372c1f477903b00f05a1c60620fb1c40be12a92ac6 +size 65024 diff --git a/software/poppler-24.08.0/Library/bin/pdfseparate.exe b/software/poppler-24.08.0/Library/bin/pdfseparate.exe new file mode 100644 index 0000000000000000000000000000000000000000..a03e118d7a773aaa7518b4c863d981dc34bcfea5 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pdfseparate.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3fe515a79cfcda05d426fadff3cfcb5f6771575806e73ae440235a373c517e4 +size 24064 diff --git a/software/poppler-24.08.0/Library/bin/pdftocairo.exe b/software/poppler-24.08.0/Library/bin/pdftocairo.exe new file mode 100644 index 0000000000000000000000000000000000000000..edc584b616eb36cfa807a4ea6a6b9ef160754ff7 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pdftocairo.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83502dfdd181d6281ab012a64f0f6f548cd521cd6ba21ca7e2ce389e011a1ae9 +size 164352 diff --git a/software/poppler-24.08.0/Library/bin/pdftohtml.exe b/software/poppler-24.08.0/Library/bin/pdftohtml.exe new file mode 100644 index 0000000000000000000000000000000000000000..eeb4e43ef87f3e295335402b19de7eead93efed0 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pdftohtml.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1423e765739ae68dcff1a05135bd92ff8a992d079441305e012ebee09182b973 +size 116224 diff --git a/software/poppler-24.08.0/Library/bin/pdftoppm.exe b/software/poppler-24.08.0/Library/bin/pdftoppm.exe new file mode 100644 index 0000000000000000000000000000000000000000..ec25e848c53ae9cd8f0d3636fa67244ad2e1d298 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pdftoppm.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0336e2bb2379adac9f3927a0c4e0794e0ef8287dd923fc707c62f6ab89c6fa7e +size 48640 diff --git a/software/poppler-24.08.0/Library/bin/pdftops.exe b/software/poppler-24.08.0/Library/bin/pdftops.exe new file mode 100644 index 0000000000000000000000000000000000000000..7adbae898426e0a011d0b4f004d578a9b2bc99ea --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pdftops.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:adcc172a63abd4fec59ed5065b0fe2b44f477035e4e8cb6905b947a4b6dfc7ed +size 48640 diff --git a/software/poppler-24.08.0/Library/bin/pdftotext.exe b/software/poppler-24.08.0/Library/bin/pdftotext.exe new file mode 100644 index 0000000000000000000000000000000000000000..8edf244d6fb71b56abf39a51526742d763f0eb15 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pdftotext.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9558adf8c9df5a748f3a02c2756affbccbfc187e5873bf94244f9a3d487cd08 +size 56832 diff --git a/software/poppler-24.08.0/Library/bin/pdfunite.exe b/software/poppler-24.08.0/Library/bin/pdfunite.exe new file mode 100644 index 0000000000000000000000000000000000000000..8949f486f0726db22e03679e30288edaa5dcfa48 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pdfunite.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7304de76dc9758348a65a145b1db3b6d108d96ac931ad3ff2dd57cbbf52d80e +size 38400 diff --git a/software/poppler-24.08.0/Library/bin/pixman-1-0.dll b/software/poppler-24.08.0/Library/bin/pixman-1-0.dll new file mode 100644 index 0000000000000000000000000000000000000000..ada44edbf6ec1072ca62e8654fa61a37177b38bf --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/pixman-1-0.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3686735bc0d04989c4a2c01a6bd4f8eafcab2d87e0632a3e4538017beef52450 +size 592896 diff --git a/software/poppler-24.08.0/Library/bin/poppler-cpp.dll b/software/poppler-24.08.0/Library/bin/poppler-cpp.dll new file mode 100644 index 0000000000000000000000000000000000000000..a8f9cd90b960f63a4914ff8179247be8eb973f3a --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/poppler-cpp.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cf87082da7b207c9ae595acfbe64d59e1ad953c482545c1759c36b93c648f51 +size 160768 diff --git a/software/poppler-24.08.0/Library/bin/poppler-glib.dll b/software/poppler-24.08.0/Library/bin/poppler-glib.dll new file mode 100644 index 0000000000000000000000000000000000000000..59d3f8e66906cb39de8c08ce5d621007e68de7f5 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/poppler-glib.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8142f521852f642b60c84d1a323a1d54bfe313c2148a449124149ce52a4f7d2 +size 404480 diff --git a/software/poppler-24.08.0/Library/bin/poppler.dll b/software/poppler-24.08.0/Library/bin/poppler.dll new file mode 100644 index 0000000000000000000000000000000000000000..f3e66443056bf4d4392a1af12ae95f2498431f54 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/poppler.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42e4f63379b9dc729164a68fa245a7614539dcafc8e7736b2e71b939c9ffbbb5 +size 5171712 diff --git a/software/poppler-24.08.0/Library/bin/tiff.dll b/software/poppler-24.08.0/Library/bin/tiff.dll new file mode 100644 index 0000000000000000000000000000000000000000..367cf311b1c31aaeb868f71b2c6cce989b6f2eb5 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/tiff.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58498f3e9e5f8444c9e315de6f35dae090e630978326838770187b5946303bda +size 493056 diff --git a/software/poppler-24.08.0/Library/bin/zlib.dll b/software/poppler-24.08.0/Library/bin/zlib.dll new file mode 100644 index 0000000000000000000000000000000000000000..a80af703c4b3c493cfdff873c340fcf9f0625870 --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/zlib.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d86de8659d728d0cc22615ea37248ca83b24af64a9fc19ecc4548105308ee0a +size 89088 diff --git a/software/poppler-24.08.0/Library/bin/zstd.dll b/software/poppler-24.08.0/Library/bin/zstd.dll new file mode 100644 index 0000000000000000000000000000000000000000..943e4f96c7842185bad5a05983447a8d9ba8154a --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/zstd.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:626adec52d89c6275e5d58427f6c44a76c94ea2fe700a663d6df5610065fbdb4 +size 654336 diff --git a/software/poppler-24.08.0/Library/bin/zstd.exe b/software/poppler-24.08.0/Library/bin/zstd.exe new file mode 100644 index 0000000000000000000000000000000000000000..2b5265fb542bb4f0ba5c70554124726887775dce --- /dev/null +++ b/software/poppler-24.08.0/Library/bin/zstd.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04976ef676adb02813b48834d249d43ff609737dc957fbf1d64ad4eff813782d +size 160768 diff --git a/software/poppler-24.08.0/Library/include/poppler/Annot.h b/software/poppler-24.08.0/Library/include/poppler/Annot.h new file mode 100644 index 0000000000000000000000000000000000000000..460e1a8aa1a08259a9eface812437278d96e3383 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Annot.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:527574638bf52e2119be8d72daa642acd8283052648ace7d9d61a9ed08a0091d +size 61988 diff --git a/software/poppler-24.08.0/Library/include/poppler/AnnotStampImageHelper.h b/software/poppler-24.08.0/Library/include/poppler/AnnotStampImageHelper.h new file mode 100644 index 0000000000000000000000000000000000000000..65c42476f626172c26ee5844cc57baccc0e2bc8d --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/AnnotStampImageHelper.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e9c614d8389d5c6b725e0a17bc4e22bb461ab25700d6ddf9ee54d107bbaf08c +size 2238 diff --git a/software/poppler-24.08.0/Library/include/poppler/Array.h b/software/poppler-24.08.0/Library/include/poppler/Array.h new file mode 100644 index 0000000000000000000000000000000000000000..f8385f48aecd6acad9ecc4f2c07a5ee3713d7917 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Array.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ec6e0c62183367718060c0225735f2b66488de6f45789b7f7c2bb3c275ec0b5 +size 2786 diff --git a/software/poppler-24.08.0/Library/include/poppler/BBoxOutputDev.h b/software/poppler-24.08.0/Library/include/poppler/BBoxOutputDev.h new file mode 100644 index 0000000000000000000000000000000000000000..17861521294ea1f6aefa608308c436c5a0904a44 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/BBoxOutputDev.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ff330518828d9e30c1016ae09838b7c8a71092ff11dc6dbf5475959b8674cfc +size 2438 diff --git a/software/poppler-24.08.0/Library/include/poppler/CMap.h b/software/poppler-24.08.0/Library/include/poppler/CMap.h new file mode 100644 index 0000000000000000000000000000000000000000..5156f3c052f290bf75a31219bd1a0818bb148cff --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/CMap.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8161973b182ca3a22b6986daa1882fa7e23d0c33b1cab67813077bd48bd25174 +size 4814 diff --git a/software/poppler-24.08.0/Library/include/poppler/CachedFile.h b/software/poppler-24.08.0/Library/include/poppler/CachedFile.h new file mode 100644 index 0000000000000000000000000000000000000000..7fea5b5a5eecf5bc1c428b56f48138288a3d7324 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/CachedFile.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73eca8206667673a4eb0f21c1ff96bab0f4fd89e82d8f4a06dc70cb2cea2df22 +size 4360 diff --git a/software/poppler-24.08.0/Library/include/poppler/CairoFontEngine.h b/software/poppler-24.08.0/Library/include/poppler/CairoFontEngine.h new file mode 100644 index 0000000000000000000000000000000000000000..9cd574a67fed0583615d151c8cf5cc89c4bf304b --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/CairoFontEngine.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4d8379748acb99046dd558ae895f1d4d78b0d2225507b4488eda2ad96362d34 +size 4898 diff --git a/software/poppler-24.08.0/Library/include/poppler/CairoOutputDev.h b/software/poppler-24.08.0/Library/include/poppler/CairoOutputDev.h new file mode 100644 index 0000000000000000000000000000000000000000..f771bb10fde572afaed72bccb5edbe96aa7ae33f --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/CairoOutputDev.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f676112e2e64d88743a6be0c41a5fe5d51cc4ba629c341ad233e5073ac71e8fa +size 22601 diff --git a/software/poppler-24.08.0/Library/include/poppler/CairoRescaleBox.h b/software/poppler-24.08.0/Library/include/poppler/CairoRescaleBox.h new file mode 100644 index 0000000000000000000000000000000000000000..b74a43aca6e84751f0270b408fbcf60108ac1e98 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/CairoRescaleBox.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8651d877fa0058e261be53bcbe45532b6c608c8b4aac63261661dd2327f3e84 +size 2595 diff --git a/software/poppler-24.08.0/Library/include/poppler/Catalog.h b/software/poppler-24.08.0/Library/include/poppler/Catalog.h new file mode 100644 index 0000000000000000000000000000000000000000..77158c28c45651dbdc13ac3e01de655d8e5e0ab1 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Catalog.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:855b651729d849a13734987bff3ad0c746c9d4551d08c3f1957a0a64c3317df2 +size 10781 diff --git a/software/poppler-24.08.0/Library/include/poppler/CertificateInfo.h b/software/poppler-24.08.0/Library/include/poppler/CertificateInfo.h new file mode 100644 index 0000000000000000000000000000000000000000..07d0abcc0cbf9989c6db95abac122da471e46e1e --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/CertificateInfo.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c501025b5c71833ff46de856f7ca7632dbc95806d2caeaf10b69c1b289336fe +size 4489 diff --git a/software/poppler-24.08.0/Library/include/poppler/CharCodeToUnicode.h b/software/poppler-24.08.0/Library/include/poppler/CharCodeToUnicode.h new file mode 100644 index 0000000000000000000000000000000000000000..e1073aeaf10881d7a794dc16bc273e749275afd2 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/CharCodeToUnicode.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:458dfa6eaed95653d8e53a27a2043a24522fd1ae99820b4aa090f62f0f240a5f +size 5096 diff --git a/software/poppler-24.08.0/Library/include/poppler/CharTypes.h b/software/poppler-24.08.0/Library/include/poppler/CharTypes.h new file mode 100644 index 0000000000000000000000000000000000000000..11e14e156d4f327d5433ca4970f4f5bfeaf78154 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/CharTypes.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:554ee252a7f943295737be1ef2bed5c7f463702e355a250b6dd9ab087e54fa46 +size 550 diff --git a/software/poppler-24.08.0/Library/include/poppler/CurlCachedFile.h b/software/poppler-24.08.0/Library/include/poppler/CurlCachedFile.h new file mode 100644 index 0000000000000000000000000000000000000000..1b813b46bae352c1bed450badd67f2c00bc8592a --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/CurlCachedFile.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40ad17c1c9b0f9d8e61d76c7d44cf13915b210f886c10974e67c7a1e703f0368 +size 969 diff --git a/software/poppler-24.08.0/Library/include/poppler/CurlPDFDocBuilder.h b/software/poppler-24.08.0/Library/include/poppler/CurlPDFDocBuilder.h new file mode 100644 index 0000000000000000000000000000000000000000..e121b6714b8a524193b5e2d516f2129fc05a872e --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/CurlPDFDocBuilder.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d41300e051f69ad8802685f5275cb8be81133146bc316734fa9633cded64561c +size 1114 diff --git a/software/poppler-24.08.0/Library/include/poppler/DateInfo.h b/software/poppler-24.08.0/Library/include/poppler/DateInfo.h new file mode 100644 index 0000000000000000000000000000000000000000..fd2b7c6242d80c77b5cefb18ea0e95e7ea942619 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/DateInfo.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e64cacc52a374b900c5ae0e95b03a6894ff43115063107d0d9d4ec1cf76648e +size 1913 diff --git a/software/poppler-24.08.0/Library/include/poppler/Decrypt.h b/software/poppler-24.08.0/Library/include/poppler/Decrypt.h new file mode 100644 index 0000000000000000000000000000000000000000..a6243dda950dadcf4fbe6470a10f7b2fda500035 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Decrypt.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f081f9142d772a5fbbed7bbff04a470dcb425b4983b8b7768d313251a72b6a2 +size 5376 diff --git a/software/poppler-24.08.0/Library/include/poppler/Dict.h b/software/poppler-24.08.0/Library/include/poppler/Dict.h new file mode 100644 index 0000000000000000000000000000000000000000..b63d09c2f042630e6076df483fabaa6618f57b6e --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Dict.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e709902a1cf13d8ec174ca6046168de9a46aa640f64e89ed710ccae279d1baa9 +size 4938 diff --git a/software/poppler-24.08.0/Library/include/poppler/Error.h b/software/poppler-24.08.0/Library/include/poppler/Error.h new file mode 100644 index 0000000000000000000000000000000000000000..8559276e255516d15dde4442e60bc936c4123ec3 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Error.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b8ccb3208d8e9fe5f6e42edcf1a436785cee220c941117372bc2cb9d83b6f1d +size 2346 diff --git a/software/poppler-24.08.0/Library/include/poppler/ErrorCodes.h b/software/poppler-24.08.0/Library/include/poppler/ErrorCodes.h new file mode 100644 index 0000000000000000000000000000000000000000..2a55b096935e06281a6e60fc624e4acea6ac23c1 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/ErrorCodes.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:169ee72523ca9b688d49837bd796dac0f930088d9704b4d243cdcfbd7e20da6c +size 2048 diff --git a/software/poppler-24.08.0/Library/include/poppler/FDPDFDocBuilder.h b/software/poppler-24.08.0/Library/include/poppler/FDPDFDocBuilder.h new file mode 100644 index 0000000000000000000000000000000000000000..9618982126bfed6405a12b0a8c50d1c08bac439f --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/FDPDFDocBuilder.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45310cd8f4f7af66ba3db3553da02af06d2f37bd9ae9574081a279ac52334fc5 +size 1280 diff --git a/software/poppler-24.08.0/Library/include/poppler/FILECacheLoader.h b/software/poppler-24.08.0/Library/include/poppler/FILECacheLoader.h new file mode 100644 index 0000000000000000000000000000000000000000..3c37159da335907601fdb36d569d7d234bf406b8 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/FILECacheLoader.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9491874f2680ce005286558c17974d141963c607b626d77c74b9ef0fb83a094 +size 905 diff --git a/software/poppler-24.08.0/Library/include/poppler/FileSpec.h b/software/poppler-24.08.0/Library/include/poppler/FileSpec.h new file mode 100644 index 0000000000000000000000000000000000000000..52be79696bca46fd8dda5ae47e6a3819971974e8 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/FileSpec.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22fa06c0af0add1f28146f630c7a1afdba8fcb58ef2e35b50fb2e58f44a82980 +size 2641 diff --git a/software/poppler-24.08.0/Library/include/poppler/FontEncodingTables.h b/software/poppler-24.08.0/Library/include/poppler/FontEncodingTables.h new file mode 100644 index 0000000000000000000000000000000000000000..5c8d0bac0570b0eaafa91d3639d9fef6e5c1b8be --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/FontEncodingTables.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e83d3a33241799b6e6f5691259a54265d9b2918f897352122702e167b1038f3 +size 584 diff --git a/software/poppler-24.08.0/Library/include/poppler/FontInfo.h b/software/poppler-24.08.0/Library/include/poppler/FontInfo.h new file mode 100644 index 0000000000000000000000000000000000000000..d7505609e898c1393de1a6ba0685d136a5df638c --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/FontInfo.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:529b70012b46f5267139d8cfa3b422bc31ec861d6782e7d61f3f0915979653e6 +size 3160 diff --git a/software/poppler-24.08.0/Library/include/poppler/Form.h b/software/poppler-24.08.0/Library/include/poppler/Form.h new file mode 100644 index 0000000000000000000000000000000000000000..e5a17eee6fb289e49e0495a230f098c581cebc4b --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Form.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd45df819f18de21d842876e22ba7aa36c0b8154125aed927a891f172dabf849 +size 30831 diff --git a/software/poppler-24.08.0/Library/include/poppler/Function.h b/software/poppler-24.08.0/Library/include/poppler/Function.h new file mode 100644 index 0000000000000000000000000000000000000000..c2bba71d0d9a251f73bf0acb02c77383c81986f4 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Function.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:805a459f26aa29647481eb4b08a876bb58e3015e315d04d47b7439f30fd0bfb8 +size 8625 diff --git a/software/poppler-24.08.0/Library/include/poppler/Gfx.h b/software/poppler-24.08.0/Library/include/poppler/Gfx.h new file mode 100644 index 0000000000000000000000000000000000000000..5b8ccac2d1b69edacef02a93f16d41731673f405 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Gfx.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:827df0dff632fce1ee96e83b29f5e8d075759a6054c590cc4d104f2717596374 +size 14606 diff --git a/software/poppler-24.08.0/Library/include/poppler/GfxFont.h b/software/poppler-24.08.0/Library/include/poppler/GfxFont.h new file mode 100644 index 0000000000000000000000000000000000000000..42aaa4342eb573cb1eeb1c2963c163303ecdfee4 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/GfxFont.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c4d6bd79aab3324fec94fabadeaff0284fc333fa4902bddbeeb80dc83d6eb63 +size 16447 diff --git a/software/poppler-24.08.0/Library/include/poppler/GfxState.h b/software/poppler-24.08.0/Library/include/poppler/GfxState.h new file mode 100644 index 0000000000000000000000000000000000000000..39bd788f7339c3b4c1e25acc27d3fc1dfbc703c4 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/GfxState.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c400763a0e38d5dd1c6609e2cb02a3419da0045793534e4efdd652ab54fe88b +size 67200 diff --git a/software/poppler-24.08.0/Library/include/poppler/GfxState_helpers.h b/software/poppler-24.08.0/Library/include/poppler/GfxState_helpers.h new file mode 100644 index 0000000000000000000000000000000000000000..cfb53f1d79150aeb5cee166050db3eabcf00afea --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/GfxState_helpers.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a40aec6725f82c5beb1fd76f196bb8ae93b818a50fb842d1e7f22ad02b5abbb +size 2705 diff --git a/software/poppler-24.08.0/Library/include/poppler/GlobalParams.h b/software/poppler-24.08.0/Library/include/poppler/GlobalParams.h new file mode 100644 index 0000000000000000000000000000000000000000..f642c687f7364e1d3a51c868f9763d5afffbd9bc --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/GlobalParams.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:334695cd9e34c555c8a38e94620a75fed1a800021584c4bb60501fb856924290 +size 9307 diff --git a/software/poppler-24.08.0/Library/include/poppler/HashAlgorithm.h b/software/poppler-24.08.0/Library/include/poppler/HashAlgorithm.h new file mode 100644 index 0000000000000000000000000000000000000000..3962bb3e425d4f28222e32204a206f9086e2540d --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/HashAlgorithm.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a20481c94816d9b87696304217bbd1a0facd3bb7c711d9f66b1983beee703cd +size 533 diff --git a/software/poppler-24.08.0/Library/include/poppler/Hints.h b/software/poppler-24.08.0/Library/include/poppler/Hints.h new file mode 100644 index 0000000000000000000000000000000000000000..432c9cd981898e8735c01f3e648dd34731b44eb2 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Hints.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbe9541f5b612b020055a9ffc6847a6c010a32ae58c8def4ec09923dd31cb89f +size 2449 diff --git a/software/poppler-24.08.0/Library/include/poppler/JArithmeticDecoder.h b/software/poppler-24.08.0/Library/include/poppler/JArithmeticDecoder.h new file mode 100644 index 0000000000000000000000000000000000000000..12781439a9816558d0a6180bacbc8ab2b0abf862 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/JArithmeticDecoder.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ead585d3388325386c3875a479f02b9a64e9e2d33eea4e47e3891bc306a65995 +size 4101 diff --git a/software/poppler-24.08.0/Library/include/poppler/JBIG2Stream.h b/software/poppler-24.08.0/Library/include/poppler/JBIG2Stream.h new file mode 100644 index 0000000000000000000000000000000000000000..825c04be94be7be07499a41193989ffbe53fce2d --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/JBIG2Stream.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38135d306d7015c97486f7b44e427156784d14c68d40de477cca0c69ef2ca323 +size 6374 diff --git a/software/poppler-24.08.0/Library/include/poppler/JPEG2000Stream.h b/software/poppler-24.08.0/Library/include/poppler/JPEG2000Stream.h new file mode 100644 index 0000000000000000000000000000000000000000..2e1988a2ef6ab00c921dccf2da1be5be0710cbf8 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/JPEG2000Stream.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f02943e659d5f7d1cc8e518b3722e6111fda716334588876890611865df2606c +size 1606 diff --git a/software/poppler-24.08.0/Library/include/poppler/JSInfo.h b/software/poppler-24.08.0/Library/include/poppler/JSInfo.h new file mode 100644 index 0000000000000000000000000000000000000000..5ff678da281e07c87d1d8ed6df46833c05470abb --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/JSInfo.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8bd3467f378c29fc8f848000b8426ec6a3c03fde7e9b9dc2cc0669949e9256e +size 1861 diff --git a/software/poppler-24.08.0/Library/include/poppler/Lexer.h b/software/poppler-24.08.0/Library/include/poppler/Lexer.h new file mode 100644 index 0000000000000000000000000000000000000000..5720e25251674e2d69e895133f2b3848a23d08b5 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Lexer.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ebc14e70e21ce8b013807e4eb8f058ea72d6e460a22ca6eea8fb43e5cc1fe12 +size 3702 diff --git a/software/poppler-24.08.0/Library/include/poppler/Linearization.h b/software/poppler-24.08.0/Library/include/poppler/Linearization.h new file mode 100644 index 0000000000000000000000000000000000000000..149c5cce769fcc1a85b79e7fd418b543c8deaaa9 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Linearization.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68735b82e1242a924bee8b760e1e251dae57797495835f4aea32bdc1acd768bf +size 1160 diff --git a/software/poppler-24.08.0/Library/include/poppler/Link.h b/software/poppler-24.08.0/Library/include/poppler/Link.h new file mode 100644 index 0000000000000000000000000000000000000000..a3509b3312dfba8ff9a053bee678a57746b44200 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Link.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61ce28659a9252c7bf5a4549967a7997a255e75826d7af63e8e1ad2e46cf1e0d +size 17493 diff --git a/software/poppler-24.08.0/Library/include/poppler/LocalPDFDocBuilder.h b/software/poppler-24.08.0/Library/include/poppler/LocalPDFDocBuilder.h new file mode 100644 index 0000000000000000000000000000000000000000..58a88f67520d81eefa73efc5f1ed5602f451ef82 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/LocalPDFDocBuilder.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddb92bbe013bc177e02c04133afa09dab2be8fc9ee19ce056d5345dc4b771e90 +size 1120 diff --git a/software/poppler-24.08.0/Library/include/poppler/MarkedContentOutputDev.h b/software/poppler-24.08.0/Library/include/poppler/MarkedContentOutputDev.h new file mode 100644 index 0000000000000000000000000000000000000000..7ecb8248106cbc28e68a1a054a5bce6df264990d --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/MarkedContentOutputDev.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4df50401bb29b907e4dabd1fda6819410e21c647b395898919615a5453a89d5c +size 3745 diff --git a/software/poppler-24.08.0/Library/include/poppler/Movie.h b/software/poppler-24.08.0/Library/include/poppler/Movie.h new file mode 100644 index 0000000000000000000000000000000000000000..a6a3b6f1ef5cd8fb2591a178d951307dc27f472a --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Movie.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23530c413fa38f93eff762ea5eb89d1652e3d1db44d5e872178eb76b9c67632e +size 3560 diff --git a/software/poppler-24.08.0/Library/include/poppler/NameToCharCode.h b/software/poppler-24.08.0/Library/include/poppler/NameToCharCode.h new file mode 100644 index 0000000000000000000000000000000000000000..4fe9f7a9ffd3a21236bb1b84696c1cb0d7d25737 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/NameToCharCode.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32864523596714a076eff1ef94172b23c8724e8dec187f9bfd0a6dcf638fff64 +size 1408 diff --git a/software/poppler-24.08.0/Library/include/poppler/NameToUnicodeTable.h b/software/poppler-24.08.0/Library/include/poppler/NameToUnicodeTable.h new file mode 100644 index 0000000000000000000000000000000000000000..a5f1edbe1a6cb015c3a06bec800e6b0512e1c009 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/NameToUnicodeTable.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52dad21600ad7f6cee6755e85e48e25591b369e31486e6b5df99e351d99f9a7e +size 398149 diff --git a/software/poppler-24.08.0/Library/include/poppler/Object.h b/software/poppler-24.08.0/Library/include/poppler/Object.h new file mode 100644 index 0000000000000000000000000000000000000000..3d42d18440c0df9777dc5f9aed8954def746662c --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Object.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3008da3de51088c22bf232152e1b56f891835fa1c26a8081e7bd35e2c36b1d05 +size 23834 diff --git a/software/poppler-24.08.0/Library/include/poppler/OptionalContent.h b/software/poppler-24.08.0/Library/include/poppler/OptionalContent.h new file mode 100644 index 0000000000000000000000000000000000000000..400641e4d7b8eb7b24711e4a34b041e0b228e572 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/OptionalContent.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4a8eb0c1a7c90af021050abea66e82585c815b7776b739eca4bea2511670e06 +size 3278 diff --git a/software/poppler-24.08.0/Library/include/poppler/Outline.h b/software/poppler-24.08.0/Library/include/poppler/Outline.h new file mode 100644 index 0000000000000000000000000000000000000000..7552c2ecd2b5c0b52b631e55c1f97f35f7aa0477 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Outline.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d706c60841b98e962810d3ac4137a661b9ab31948d42e3c0b4747470fd5a7d20 +size 3999 diff --git a/software/poppler-24.08.0/Library/include/poppler/OutputDev.h b/software/poppler-24.08.0/Library/include/poppler/OutputDev.h new file mode 100644 index 0000000000000000000000000000000000000000..075e09188eee861471f97db70ed661aac49a723e --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/OutputDev.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:deee151893a2fc983895a268a984594b123e944d58e8e7345c178300fc21e367 +size 18865 diff --git a/software/poppler-24.08.0/Library/include/poppler/PDFDoc.h b/software/poppler-24.08.0/Library/include/poppler/PDFDoc.h new file mode 100644 index 0000000000000000000000000000000000000000..464c7cd74d911c371dfe96686057fa89545e2ef6 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/PDFDoc.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ece432e6fc13f165df09575e76408035350d24ba7f37f58d0e50263306f3c53 +size 20898 diff --git a/software/poppler-24.08.0/Library/include/poppler/PDFDocBuilder.h b/software/poppler-24.08.0/Library/include/poppler/PDFDocBuilder.h new file mode 100644 index 0000000000000000000000000000000000000000..9cee6c19b2c17cfe49e8ed1b483512088bed6181 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/PDFDocBuilder.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e4e50af4b5c28814a1e64d1332bf35a6c7a36937620677c70ea7f258c6ae83f +size 1605 diff --git a/software/poppler-24.08.0/Library/include/poppler/PDFDocEncoding.h b/software/poppler-24.08.0/Library/include/poppler/PDFDocEncoding.h new file mode 100644 index 0000000000000000000000000000000000000000..ef6db9afc5981cbb4c6fbecda4c572653bab7f18 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/PDFDocEncoding.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3883005904bbae631b375f7fe2a17497569c8c2b6f36d0c17ee761771ad1fe44 +size 1350 diff --git a/software/poppler-24.08.0/Library/include/poppler/PDFDocFactory.h b/software/poppler-24.08.0/Library/include/poppler/PDFDocFactory.h new file mode 100644 index 0000000000000000000000000000000000000000..3e561ff15812b0a74ca37c019617195441ea288a --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/PDFDocFactory.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:451d9c4bfeb71dc6adb039c44008d1606f1d3fc6ab204913fafd48ea428f118b +size 2059 diff --git a/software/poppler-24.08.0/Library/include/poppler/PSOutputDev.h b/software/poppler-24.08.0/Library/include/poppler/PSOutputDev.h new file mode 100644 index 0000000000000000000000000000000000000000..f813d8b2372437c0dc9193b2912b6d3c26a9d86e --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/PSOutputDev.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71f2dd2a931efd3d7f810f53d3f30db68332877fa24ddea8142e7cb4e077a295 +size 26559 diff --git a/software/poppler-24.08.0/Library/include/poppler/PSTokenizer.h b/software/poppler-24.08.0/Library/include/poppler/PSTokenizer.h new file mode 100644 index 0000000000000000000000000000000000000000..30fdabb0f8e13fa70d6e47fb404e6a4e29dc3de3 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/PSTokenizer.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65c5166ac3b659837b15737768f1509854dc92afbbf43189e71687f220a6b804 +size 1316 diff --git a/software/poppler-24.08.0/Library/include/poppler/Page.h b/software/poppler-24.08.0/Library/include/poppler/Page.h new file mode 100644 index 0000000000000000000000000000000000000000..bd1274c64d008112e4dbb5210d278ef351d1e3f2 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Page.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c73c0b5406a19f42b364280f7bd7d433c2e11e46d19eb826015ba69c5032cc76 +size 11422 diff --git a/software/poppler-24.08.0/Library/include/poppler/PageTransition.h b/software/poppler-24.08.0/Library/include/poppler/PageTransition.h new file mode 100644 index 0000000000000000000000000000000000000000..66143e2b33a00ec3f5ea7161aefb02aaf6112573 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/PageTransition.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de60e45d555460bcbdb4d24b7004e832a5d08156c294e215f657a8394e6eae2c +size 3165 diff --git a/software/poppler-24.08.0/Library/include/poppler/Parser.h b/software/poppler-24.08.0/Library/include/poppler/Parser.h new file mode 100644 index 0000000000000000000000000000000000000000..27e19b1985be0cc927769941800a1bb90e439992 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Parser.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82458bf6400f39ed98319c252b84a0a7d7c57e75c8e70f3ec238f897427d58e1 +size 2749 diff --git a/software/poppler-24.08.0/Library/include/poppler/PopplerCache.h b/software/poppler-24.08.0/Library/include/poppler/PopplerCache.h new file mode 100644 index 0000000000000000000000000000000000000000..a1df9af545988ebb9bd0ca5437fca109238196fe --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/PopplerCache.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8aae7e4fa181e474b6aa8d448cfbde759778669103e2ff151c9765f9fd09d33 +size 1839 diff --git a/software/poppler-24.08.0/Library/include/poppler/PreScanOutputDev.h b/software/poppler-24.08.0/Library/include/poppler/PreScanOutputDev.h new file mode 100644 index 0000000000000000000000000000000000000000..8c6e00d6f975ce63f4546bd53eddd48087713bc5 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/PreScanOutputDev.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e60ddcc7368baca215364408084107b9fef628b27463faf066fc897707367bf8 +size 6504 diff --git a/software/poppler-24.08.0/Library/include/poppler/ProfileData.h b/software/poppler-24.08.0/Library/include/poppler/ProfileData.h new file mode 100644 index 0000000000000000000000000000000000000000..022981244db1b24f0d6e5953c46c89bbeae322b8 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/ProfileData.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6980ea9d24d20ac7d509afb0d20475554065df69b0c3d36d1dcbdba77866c65 +size 1031 diff --git a/software/poppler-24.08.0/Library/include/poppler/Rendition.h b/software/poppler-24.08.0/Library/include/poppler/Rendition.h new file mode 100644 index 0000000000000000000000000000000000000000..b7ba9abb31f91d34409c6815959cb875f417d914 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Rendition.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f3e153b6db6cff1aea6072f727c8eab1821af0267cc12ae050a3638c34a7b7a +size 4686 diff --git a/software/poppler-24.08.0/Library/include/poppler/SecurityHandler.h b/software/poppler-24.08.0/Library/include/poppler/SecurityHandler.h new file mode 100644 index 0000000000000000000000000000000000000000..64a633d364e46ccd1c544bb2dd5f3ae5348c38e9 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/SecurityHandler.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b604d9cf0e27e86b030f6d493f4443c2d74cb2d1c50aafaa348a58d84f2bec84 +size 4983 diff --git a/software/poppler-24.08.0/Library/include/poppler/SignatureInfo.h b/software/poppler-24.08.0/Library/include/poppler/SignatureInfo.h new file mode 100644 index 0000000000000000000000000000000000000000..51e3fdc14558286e5b16789fb53bc50cddee4ef0 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/SignatureInfo.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c9aa9f81cd6f93793109b81f899f3dca3ee1acf94ed9d9da622e2ee58387c92 +size 3266 diff --git a/software/poppler-24.08.0/Library/include/poppler/Sound.h b/software/poppler-24.08.0/Library/include/poppler/Sound.h new file mode 100644 index 0000000000000000000000000000000000000000..fc92977b042a76450eaa137847ef20e00052ce8c --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Sound.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56820edfe0827b6c4955decd2da6d3a8d4ae612390b7507935e9c88d4fe18e0d +size 2494 diff --git a/software/poppler-24.08.0/Library/include/poppler/SplashOutputDev.h b/software/poppler-24.08.0/Library/include/poppler/SplashOutputDev.h new file mode 100644 index 0000000000000000000000000000000000000000..1779f711f98cbf0a90312e5eb0cb807bb11f2c80 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/SplashOutputDev.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d07e9f2df73396aedbf4e674563979a1e2a207f3c7cef866e707c172da865fde +size 17259 diff --git a/software/poppler-24.08.0/Library/include/poppler/Stream-CCITT.h b/software/poppler-24.08.0/Library/include/poppler/Stream-CCITT.h new file mode 100644 index 0000000000000000000000000000000000000000..83ec051d04a92c3bab006d481637fd1b6d44eaee --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Stream-CCITT.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2675bfd04ca51c20acac71832a9be2bcdd3d3b62eebe77ebd55a8724132d035 +size 24377 diff --git a/software/poppler-24.08.0/Library/include/poppler/Stream.h b/software/poppler-24.08.0/Library/include/poppler/Stream.h new file mode 100644 index 0000000000000000000000000000000000000000..321759e37edbfd84eeffe4d859225a39953d8f4d --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/Stream.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:629d82a01b731a786c3be2c21e86eb10fc79e923e2fc29054406c093475f23a9 +size 50502 diff --git a/software/poppler-24.08.0/Library/include/poppler/StructElement.h b/software/poppler-24.08.0/Library/include/poppler/StructElement.h new file mode 100644 index 0000000000000000000000000000000000000000..8f1be6027a06d464c72432bc8d083fcc702e1b02 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/StructElement.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f546e2476abf8939f6be85f7a03b08455975350a817258da18eb4ec3242db5f4 +size 12382 diff --git a/software/poppler-24.08.0/Library/include/poppler/StructTreeRoot.h b/software/poppler-24.08.0/Library/include/poppler/StructTreeRoot.h new file mode 100644 index 0000000000000000000000000000000000000000..3b93c5dbb9523892ea5a7b82f23eb430450e3145 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/StructTreeRoot.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb9ead2db8bf6ca20c1013c9b858575799d2a170ea104b33a9a350fbed0d17e3 +size 2608 diff --git a/software/poppler-24.08.0/Library/include/poppler/TextOutputDev.h b/software/poppler-24.08.0/Library/include/poppler/TextOutputDev.h new file mode 100644 index 0000000000000000000000000000000000000000..95c40d35bcd223c3e14c61027017ab0eb1345696 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/TextOutputDev.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1f693940d28b178583b53054f2421426a84c7869bbe7d58d24b0a6e233d186c +size 35217 diff --git a/software/poppler-24.08.0/Library/include/poppler/UTF.h b/software/poppler-24.08.0/Library/include/poppler/UTF.h new file mode 100644 index 0000000000000000000000000000000000000000..a90f0271ca8cf675d6ce0237b040369535cae030 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/UTF.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f732127b3731266cd3531f4ada3d0171122d7ec2984a6a5f92bec11c4f16f22 +size 7036 diff --git a/software/poppler-24.08.0/Library/include/poppler/UnicodeCClassTables.h b/software/poppler-24.08.0/Library/include/poppler/UnicodeCClassTables.h new file mode 100644 index 0000000000000000000000000000000000000000..f179c9f3faaaaa2b012ab6c74ffbdcdadc0d14e7 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/UnicodeCClassTables.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:793e922f6197c67ec79a1f9d4e1258f428d0de27df989f98d6c341cd0e3bc118 +size 108100 diff --git a/software/poppler-24.08.0/Library/include/poppler/UnicodeCompTables.h b/software/poppler-24.08.0/Library/include/poppler/UnicodeCompTables.h new file mode 100644 index 0000000000000000000000000000000000000000..82b7bc7cafe2139ee8802ddc03b5537d5ea00db2 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/UnicodeCompTables.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c63de7122712842766b5febea6b790b8af6beb2aa632d04a2138e74e4081d3ff +size 41139 diff --git a/software/poppler-24.08.0/Library/include/poppler/UnicodeDecompTables.h b/software/poppler-24.08.0/Library/include/poppler/UnicodeDecompTables.h new file mode 100644 index 0000000000000000000000000000000000000000..ca658e6d5d3e3725b8d938599c5ca927b5c15fe8 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/UnicodeDecompTables.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01168a585b1173ab5a635e6a1cc567b68dc614894d3bf71cb094b9e2787b6cfe +size 273108 diff --git a/software/poppler-24.08.0/Library/include/poppler/UnicodeMap.h b/software/poppler-24.08.0/Library/include/poppler/UnicodeMap.h new file mode 100644 index 0000000000000000000000000000000000000000..5524ba78d8f5da73623d66da0acfe433f3315966 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/UnicodeMap.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:383a0b46dde253140f94a12d007efd164e90d46e55b4bf80cf181636e4498842 +size 3976 diff --git a/software/poppler-24.08.0/Library/include/poppler/UnicodeMapFuncs.h b/software/poppler-24.08.0/Library/include/poppler/UnicodeMapFuncs.h new file mode 100644 index 0000000000000000000000000000000000000000..76a5ecfb104cf2c09c5645cd3c4cc3899d09f28b --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/UnicodeMapFuncs.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5e1bbbfe09d8a6de89e8bf4674a571176895a8cdb1a1d191448c2b6cc1eb6af +size 1183 diff --git a/software/poppler-24.08.0/Library/include/poppler/UnicodeMapTables.h b/software/poppler-24.08.0/Library/include/poppler/UnicodeMapTables.h new file mode 100644 index 0000000000000000000000000000000000000000..1488ac0bcae9e74fa9e6c9b7dc3edb9305ef462c --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/UnicodeMapTables.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3829577e44d2da2a7751bfd8e56876ed1858c6887f0f17d8c8d63a1659d54c85 +size 12352 diff --git a/software/poppler-24.08.0/Library/include/poppler/UnicodeTypeTable.h b/software/poppler-24.08.0/Library/include/poppler/UnicodeTypeTable.h new file mode 100644 index 0000000000000000000000000000000000000000..5a90fd31c30fe7a404969b8f2f318b491efabc3f --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/UnicodeTypeTable.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe357d841c5d7442e3f4e2d41307957d4a29b39a66635167899271a638dcc775 +size 1681 diff --git a/software/poppler-24.08.0/Library/include/poppler/ViewerPreferences.h b/software/poppler-24.08.0/Library/include/poppler/ViewerPreferences.h new file mode 100644 index 0000000000000000000000000000000000000000..5fe9f95beb6e02ab00fb141f0bac195226c81120 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/ViewerPreferences.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ccff2879605b4eeaa0602e451e832b1f36fd62256fc0cdd18d8b3eb4c4e354cd +size 2573 diff --git a/software/poppler-24.08.0/Library/include/poppler/XRef.h b/software/poppler-24.08.0/Library/include/poppler/XRef.h new file mode 100644 index 0000000000000000000000000000000000000000..be58d04bab82ab79ee0b086f46d080c24164698b --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/XRef.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cdf403fed3fc8fc0f0e692f6502308b86b478536bf943fd8cb16467ae9339cbe +size 13135 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-destination.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-destination.h new file mode 100644 index 0000000000000000000000000000000000000000..09d8c05e79c239b4f4dcf952a0072b64b785000d --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-destination.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60f2724108de5e3ea3750697862a10842f9267a720dd32313de1faeb9618f212 +size 1937 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-document.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-document.h new file mode 100644 index 0000000000000000000000000000000000000000..b4d2c8cd7b52cc51030775b6b25d7e0be493b8a9 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-document.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a275f44cff2a424b94450600d084daea04c2aec5f4df8b917b87d99ced489178 +size 4904 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-embedded-file.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-embedded-file.h new file mode 100644 index 0000000000000000000000000000000000000000..e80eaea2871d15362ce6b45cb5e1d993b8a44fb8 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-embedded-file.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bd34b1bc872188ff3e1c6a8e08046ad1a88d7da578d50bad6cd0c5821874595 +size 1700 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-font-private.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-font-private.h new file mode 100644 index 0000000000000000000000000000000000000000..8bc5de013c4397dbd736c2aca17f4760ecec303f --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-font-private.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9bbb76e44e9d892e1b07da87cd290eef1b6a4864614e416bad6fc964254ba65 +size 2218 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-font.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-font.h new file mode 100644 index 0000000000000000000000000000000000000000..635e23189d4d61e8c0c97cce173ad3e779408013 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-font.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06b9bc1a78352bce6bbe84f6d20c4dc5dce1dee9404553000f7a2d2c0945adb1 +size 2309 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-global.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-global.h new file mode 100644 index 0000000000000000000000000000000000000000..14152f76e364343443fc8e675b1e94ed04c8e764 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-global.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9034a2638d57ee756296f91d8dc39b907cd8d8cb1d7e212e20f08db6ae2eef9 +size 3684 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-image.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-image.h new file mode 100644 index 0000000000000000000000000000000000000000..44e72f1dbbe3742fac3bbf67cdd99662ec4440cd --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-image.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a10df5018acb5035e729b0ffb8991361b364ba034cac26c45c8728fbb650c0ee +size 1996 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-page-renderer.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-page-renderer.h new file mode 100644 index 0000000000000000000000000000000000000000..87f72738572f8a0b61f990a31e06981478ecfd60 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-page-renderer.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9380f142aef682d145554643e69cc7eb4a2173adc23e22de8928dcbca95e8f4b +size 2180 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-page-transition.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-page-transition.h new file mode 100644 index 0000000000000000000000000000000000000000..87378de2be3f8426ed3b629cd3a9eee1c862e135 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-page-transition.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a871c6215ec563dd12c469e5b9fb22caa355d53597744747f074976352be30b8 +size 2035 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-page.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-page.h new file mode 100644 index 0000000000000000000000000000000000000000..a5ad282b0f8ad5886ea807c5f82b94a8655da6bc --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-page.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc2767d88541fef528939f955b31cdaa92fdd7129e50c46d272a29a702ff2fee +size 6191 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-rectangle.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-rectangle.h new file mode 100644 index 0000000000000000000000000000000000000000..98e521e3ef647403a2ff637295416baf08b40bac --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-rectangle.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbd46a94a766ff8e4f785e8a0084817b76ca776d4598723f8cc0a5deb09d4c63 +size 1938 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-toc.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-toc.h new file mode 100644 index 0000000000000000000000000000000000000000..06cf4bd61e18cdd87baea48afae361cfdf567f62 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-toc.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:958722e24af8d5fc5916e5c62b49b22762cebf6c576759535c0002db72d19f7a +size 1679 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-version.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-version.h new file mode 100644 index 0000000000000000000000000000000000000000..f76ec19774cc437ca5046ece02ff00424e9e4273 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler-version.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bf7c503d84564f89209fd062c1dd5b7e8a1350f3fd4295e0277198b31690de5 +size 1247 diff --git a/software/poppler-24.08.0/Library/include/poppler/cpp/poppler_cpp_export.h b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler_cpp_export.h new file mode 100644 index 0000000000000000000000000000000000000000..9b97d639e2904adf7e28c0bcf0f39870d3a916ae --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/cpp/poppler_cpp_export.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9516bc281aea27c56d40040adfb1e2e0f551119970bf7a18a33dfba8cc0886d6 +size 1159 diff --git a/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiBase.h b/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiBase.h new file mode 100644 index 0000000000000000000000000000000000000000..683ebcda96a6ddb27bf31f5047655c35fbbe9f5a --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiBase.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:539a082a1c1b99d56dcbe072030fa6a37efeddc91ef176f82b502f97548284b9 +size 2179 diff --git a/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiEncodings.h b/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiEncodings.h new file mode 100644 index 0000000000000000000000000000000000000000..74b945a4d18acf9223812e45b6ebd8411c73d33d --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiEncodings.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2162b488907d1453e1cbf77f6d2b28083a24642fc8d4612cdf6b4eaf6871f01a +size 1612 diff --git a/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiIdentifier.h b/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiIdentifier.h new file mode 100644 index 0000000000000000000000000000000000000000..52d96628370745e4110e48eaa4f7f076bb70eaef --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiIdentifier.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bd14faa17195532a220f7f0b1169ecb065621fa3d6b0749493c5c2eb5414566 +size 1800 diff --git a/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiTrueType.h b/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiTrueType.h new file mode 100644 index 0000000000000000000000000000000000000000..9955ea995db9157fc3e68063b24d2d2007ffa0f6 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiTrueType.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:852748e804d1c0cb76cc65a3a4a285deed85e379beb5ab456ea4ccdd0e34bb66 +size 8796 diff --git a/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiType1.h b/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiType1.h new file mode 100644 index 0000000000000000000000000000000000000000..68afe9bedee76a48e22780afe13b0e3d38f2b370 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiType1.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bc241b6fe9b6694a979a7504b85ecfe12dc3a969c9134d5eb4d895ad570dfcf +size 1925 diff --git a/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiType1C.h b/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiType1C.h new file mode 100644 index 0000000000000000000000000000000000000000..53258bfb48ac2f7834817c5e7585d8ffa02c4cfe --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/fofi/FoFiType1C.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:711d9f2ca6c0e3e18329aadde257db22c69a73fbb8cddf4319e46252916f6755 +size 9129 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-action.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-action.h new file mode 100644 index 0000000000000000000000000000000000000000..1d3e9124a5781a0d9b0bfa7d1e6de7f2bfcd2a44 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-action.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49966ff0319a27fe319e66a6e6a99926cadde8e72874443ee603504e07fc3cbb +size 12649 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-annot.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-annot.h new file mode 100644 index 0000000000000000000000000000000000000000..f0a3de3fdfcb26bed098890053677adb38e4fbe1 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-annot.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7654f64e59bbb1e299f1a9b9a4f0a9ab6159f4cb3f646354c1fe6d0a9cfd5e37 +size 15870 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-attachment.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-attachment.h new file mode 100644 index 0000000000000000000000000000000000000000..2c8af5e712282d13da2c0b7519159ee02a3e2429 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-attachment.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f37f9b0132ddff89b3ae7c2240a54c3e3a0377dec2b92bc7f12bf6b136017514 +size 4715 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-date.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-date.h new file mode 100644 index 0000000000000000000000000000000000000000..31ad2a629b7412a06630273f3220a69aa818e8e3 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-date.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d05c53f017bd62c03273e4e84a5ec0d65721be714d28641bc44ea936a9b41556 +size 1072 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-document.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-document.h new file mode 100644 index 0000000000000000000000000000000000000000..61e226773ac0952e8ce315102b8fcefde82da506 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-document.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b38a84de2f451f98e71afe60a8a5cf3920ee82cbafcf0f6e693855e13d06e900 +size 22585 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-enums.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-enums.h new file mode 100644 index 0000000000000000000000000000000000000000..4d01647378accfe65dcd77cddd9c81fcdf3a6964 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-enums.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4c1dfc9ac97f203b679f9292fed1ff78944c7e6cdce5a081d44ed84bd5bc090 +size 9364 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-features.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-features.h new file mode 100644 index 0000000000000000000000000000000000000000..16d217d024fca4f4764c8924666301026963e704 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-features.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4141a18dee74b9483925a3690fb8eeebee54ace6c031ef32a579fccf38725638 +size 2785 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-form-field.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-form-field.h new file mode 100644 index 0000000000000000000000000000000000000000..3532e8bf984b2a5e476f60c9ee2be48bf7f80c5c --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-form-field.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:816584c8ff843d7a6f505b88acf4736bca19d830b8cc3464d1fdfb3a7b5a66b3 +size 17429 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-layer.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-layer.h new file mode 100644 index 0000000000000000000000000000000000000000..d48c07c7e8ae6cdb375488a25b8e2c05103578d1 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-layer.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a33a30015a8cbd6d922b4fd1390c8eec496b9eedb75244df345891f801cd20bf +size 1763 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-macros.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-macros.h new file mode 100644 index 0000000000000000000000000000000000000000..7a3f9b250aa4b04dff0dc46a597311ea9722214d --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-macros.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9767df423646c8014b57a33a33f0954acacd804b34697aea7b9c4efedbe42178 +size 1143 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-media.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-media.h new file mode 100644 index 0000000000000000000000000000000000000000..6245c6660c9b5bad6185d951907939350178c97e --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-media.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcb339bc61771da50859e117daec99eb5f2ec0c43ae55465ba4b57c44190ccfc +size 3194 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-movie.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-movie.h new file mode 100644 index 0000000000000000000000000000000000000000..4937adf5dc6411f3f4f3c3c9676ce6b19932e701 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-movie.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a41c940c04ca19f1884a8659c239d53715e8cc029c35c894270f6ab2df12853 +size 3142 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-page.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-page.h new file mode 100644 index 0000000000000000000000000000000000000000..ff6afcc6116a62d6a1d0f65ca46491dea2f9200c --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-page.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5c4b3edd4ec13827aba59931150777e6d249a0f5a1a9083c99372f65a53d0da +size 14811 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler-structure-element.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-structure-element.h new file mode 100644 index 0000000000000000000000000000000000000000..53d164cf46b30de060f19f2d6d53a6ec21567f5f --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler-structure-element.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3976023ca9c934aeb90a6862072c4a0b571fd3f83133fcd04a6545f1ced15840 +size 17303 diff --git a/software/poppler-24.08.0/Library/include/poppler/glib/poppler.h b/software/poppler-24.08.0/Library/include/poppler/glib/poppler.h new file mode 100644 index 0000000000000000000000000000000000000000..78c55d1e338b2b958422f1d000559c2dbbf715cc --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/glib/poppler.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b94a22edaca8abec1713b0e196869948533fa39a30d5623ac7db9f0b35774eb +size 10050 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/GooCheckedOps.h b/software/poppler-24.08.0/Library/include/poppler/goo/GooCheckedOps.h new file mode 100644 index 0000000000000000000000000000000000000000..7e25dabf5a2bc465fca6147a6a997d3a8fb19d16 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/GooCheckedOps.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76fee7ac49d6251d478f410a4846a07c1591826239de504327d72c759a4cf170 +size 3660 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/GooLikely.h b/software/poppler-24.08.0/Library/include/poppler/goo/GooLikely.h new file mode 100644 index 0000000000000000000000000000000000000000..fd3e7b397705795a8a74311374c6e807cc087564 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/GooLikely.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e969e8a8dbdce4808b6b15fdd2c823e30fd18a60c84d8da419e31ee313a56c9 +size 578 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/GooString.h b/software/poppler-24.08.0/Library/include/poppler/goo/GooString.h new file mode 100644 index 0000000000000000000000000000000000000000..098a5e827b133f7b6cf81f9c9e00946c998dc744 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/GooString.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6acdb6fdc4ca966712232cdb0c161db1ff82cd9b02d60457975fb02403eb6ea +size 9258 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/GooTimer.h b/software/poppler-24.08.0/Library/include/poppler/goo/GooTimer.h new file mode 100644 index 0000000000000000000000000000000000000000..187e1250876be0ffa5039cf3d42164f2cf439ca9 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/GooTimer.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d383bb21c5fbafd6e6811cc19031a97baa5d255c7ed9b0d0344182af9b0680b0 +size 1471 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/ImgWriter.h b/software/poppler-24.08.0/Library/include/poppler/goo/ImgWriter.h new file mode 100644 index 0000000000000000000000000000000000000000..9eea016667d98564a335bdb0700792f0b8751d64 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/ImgWriter.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a11e9f03d057607ae3dd6358dddc3aaf12c5a394d410b6ff95717e0f5281c93 +size 1193 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/JpegWriter.h b/software/poppler-24.08.0/Library/include/poppler/goo/JpegWriter.h new file mode 100644 index 0000000000000000000000000000000000000000..f27039901ab6e8fbe7a4a77fba90eced9da96659 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/JpegWriter.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25bf82b42beaf80c73be5f2e817d852216157e204421192623af017e9a169df9 +size 1986 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/PNGWriter.h b/software/poppler-24.08.0/Library/include/poppler/goo/PNGWriter.h new file mode 100644 index 0000000000000000000000000000000000000000..17df0662057ef1d1e2c0cee12d5706a8814dd7cf --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/PNGWriter.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e00307079488fae2daeb4588b7b3a0618c7a2e3dbc49fe9b22020f0033a3ffc +size 1773 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/TiffWriter.h b/software/poppler-24.08.0/Library/include/poppler/goo/TiffWriter.h new file mode 100644 index 0000000000000000000000000000000000000000..1449d5230eb8cfa6cb7982bb8f3f07c566f313ca --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/TiffWriter.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4298998dd410a2440540e5b2ebfb6e1f1987b7bfdbb5fd2eb761ffe1ff0964a9 +size 1871 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/gdir.h b/software/poppler-24.08.0/Library/include/poppler/goo/gdir.h new file mode 100644 index 0000000000000000000000000000000000000000..e322e98be70c647504ac2f57b7d3ad68b253413c --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/gdir.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f63e5d81dd5b035f0c245fcc97bcdde8d7ca0d4b2e38cb6dbbefb006c902927f +size 2875 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/gfile.h b/software/poppler-24.08.0/Library/include/poppler/goo/gfile.h new file mode 100644 index 0000000000000000000000000000000000000000..8997f8361b81c4cf81fba3a92937267fe92df3c0 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/gfile.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a24e59c6c6bdcb64dd775c32a68ad070622f1ab75f1ff80e4203844aadd1d7f +size 4954 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/gmem.h b/software/poppler-24.08.0/Library/include/poppler/goo/gmem.h new file mode 100644 index 0000000000000000000000000000000000000000..6ff5dd2cedc4f42f4b8f47f4e7742532d5d8c4c6 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/gmem.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c849039c0b0bea7c64065d4e544fe026bcc239c2d30ede2babfc1f3bb07a11c +size 5028 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/grandom.h b/software/poppler-24.08.0/Library/include/poppler/goo/grandom.h new file mode 100644 index 0000000000000000000000000000000000000000..fcfdfcf7d83484c53124c95a7fc1bb7b3592eda4 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/grandom.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d2423df07a7091f75bb19be8d15426d3f3845441a6b4f5871abdafe0aacf24f +size 462 diff --git a/software/poppler-24.08.0/Library/include/poppler/goo/gstrtod.h b/software/poppler-24.08.0/Library/include/poppler/goo/gstrtod.h new file mode 100644 index 0000000000000000000000000000000000000000..d0e04e978dbb80bd02c4e18e5526e7d4757e76d4 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/goo/gstrtod.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74099461e17e957e571af2721645a3c72bb17437c4c6d11be396ac5a06f22962 +size 1550 diff --git a/software/poppler-24.08.0/Library/include/poppler/poppler-config.h b/software/poppler-24.08.0/Library/include/poppler/poppler-config.h new file mode 100644 index 0000000000000000000000000000000000000000..307aaf495ac14dec1523c1001b92f969b6055b14 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/poppler-config.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e14047fd001b2b64e769b702a6c550fe686fe6e8d62d5821017df0e026717959 +size 4485 diff --git a/software/poppler-24.08.0/Library/include/poppler/poppler_private_export.h b/software/poppler-24.08.0/Library/include/poppler/poppler_private_export.h new file mode 100644 index 0000000000000000000000000000000000000000..c05f927d196de905b0bff909f27e112d4f729a99 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/poppler_private_export.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:806c8145350da7baef885d042e07bc1ab93febfe0d1f062172d2e4a3151a57c0 +size 1247 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/Splash.h b/software/poppler-24.08.0/Library/include/poppler/splash/Splash.h new file mode 100644 index 0000000000000000000000000000000000000000..c7cbf4c9aacfb8b36e2c216c8a242bdf2d8ab977 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/Splash.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5eb47a03e7283b73daaa5d5f697fdeceffe7fa0903ebb551485cb49d0375b078 +size 16673 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashBitmap.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashBitmap.h new file mode 100644 index 0000000000000000000000000000000000000000..8200134903818e15fc2c2b1c76a9aca625b1afeb --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashBitmap.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80c40373651e016df9d185dd54a80211e4492156e18ff204837620e773386918 +size 5429 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashClip.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashClip.h new file mode 100644 index 0000000000000000000000000000000000000000..606aad13a1e8942054f5cda5fdbff88f5187f873 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashClip.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9fa3643e68b578751ddb122ac78a3b32cf9e3847ac1d811f1c75e16ed5e30b75 +size 4472 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashErrorCodes.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashErrorCodes.h new file mode 100644 index 0000000000000000000000000000000000000000..fdf0a68cbc7b9bfaabddd6bfc0fa9cebd0d824b1 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashErrorCodes.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37efee5e3bdaec765fe1e1f73eb6081633ce0c3d2a895f87a7ad4726401ccb59 +size 1529 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashFTFont.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFTFont.h new file mode 100644 index 0000000000000000000000000000000000000000..b602c1d29fd971d2f2fc85851a38d99da25c52ee --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFTFont.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0b89baed526aefd25dd7720792d2ece0a88f25bc8159fb4cd4813c82cce5728 +size 2421 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashFTFontEngine.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFTFontEngine.h new file mode 100644 index 0000000000000000000000000000000000000000..d835a1323fef9947ef6911167943378228805cd4 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFTFontEngine.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ac06294c032ed0148d5ee6e5c6c69c439fa34d05a5c9b20a0ba9939644f7aac +size 2753 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashFTFontFile.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFTFontFile.h new file mode 100644 index 0000000000000000000000000000000000000000..7e77f4aa26f088e80c77177f47226925c1989d58 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFTFontFile.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddf162666bd683b2861555401fbf63e5eff69fdf22ea4ffefd8922f4ee256255 +size 2393 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashFont.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFont.h new file mode 100644 index 0000000000000000000000000000000000000000..78c1171c4e79ad40f7789d38392d4448961d38f0 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFont.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab8e2e7a6526f0daa673869f807852a98fbbaddb52d422b25d47753298e03939 +size 4564 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashFontEngine.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFontEngine.h new file mode 100644 index 0000000000000000000000000000000000000000..d88ab4a372368e734cd4d1d8387fbb8329bb75eb --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFontEngine.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:582d6e56c40d7d3e7fb8c9a181ed4d80772713806d0f9b068d3ba2724b06bdf8 +size 3489 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashFontFile.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFontFile.h new file mode 100644 index 0000000000000000000000000000000000000000..e87447e97880b0fa53ef963bd7bda08b0a09a31f --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFontFile.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f706871f070752729fbe9c8467d7a1259213762e6f7bcd3842ac5011a778ddf3 +size 2660 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashFontFileID.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFontFileID.h new file mode 100644 index 0000000000000000000000000000000000000000..a1824797161f273d9f71ce822b1e4e55c853b158 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashFontFileID.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad3ca7e85d3cd2a3a0fe746cb22a5b433177648e42ce281d4405957498c67359 +size 1332 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashGlyphBitmap.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashGlyphBitmap.h new file mode 100644 index 0000000000000000000000000000000000000000..faff91d5b4cc4e6b06eb86917cbf951ce7b723af --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashGlyphBitmap.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4072c75f5b0ab2f75a1b530e9314527123f8bcdc736cd40954cb28fd3a4ac4e0 +size 713 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashMath.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashMath.h new file mode 100644 index 0000000000000000000000000000000000000000..0d560b1d25c5644d4457e541bc82f1da3ad4f8be --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashMath.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76632ea4b68da18245a165699eefffb3cc70b50b10c1868af81260460d0fa11a +size 6534 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashPath.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashPath.h new file mode 100644 index 0000000000000000000000000000000000000000..30d68eda06491164d8b36ef904ef816ffbda40b4 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashPath.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65ad560a08a774d5224a5e704d35d7e53b8f7dae3e2abd124a8f3c32bd35a79f +size 4497 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashPattern.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashPattern.h new file mode 100644 index 0000000000000000000000000000000000000000..911eccfeff3fd9c1928b6345e03b3d6384c7070d --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashPattern.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38ff7125cceeb22392d0aef6410f0b01a57b19ab575863bdc7b38532d9a4916a +size 3497 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashScreen.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashScreen.h new file mode 100644 index 0000000000000000000000000000000000000000..2a9f2c789c5f8b21d74959caaa018824bd1c7aa3 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashScreen.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9881caabc0143fcde8854fd1a8ba179721a017acd76225ea03711adf60988c64 +size 2829 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashState.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashState.h new file mode 100644 index 0000000000000000000000000000000000000000..fcd1278e5b641b1d126d367d565fb4ace4b9884b --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashState.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc14c0a6859eb000ba0a7498c2d729e52ce2811cb7fd9557021664a054f70005 +size 4491 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashTypes.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashTypes.h new file mode 100644 index 0000000000000000000000000000000000000000..44962c06eea59259e4f611385b34b4c837166b70 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashTypes.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62ab9011b8144f032d0dcadd7d3236a9fa0c32ade443d0ab077b880c828d4842 +size 7186 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashXPath.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashXPath.h new file mode 100644 index 0000000000000000000000000000000000000000..ae09746a64af1402691142958e6bc6eb2ca3e88f --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashXPath.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2fff57b51dfc2b9cb22d59fbcb0febef0314ef0b0549b09c61fa726610591f9 +size 3802 diff --git a/software/poppler-24.08.0/Library/include/poppler/splash/SplashXPathScanner.h b/software/poppler-24.08.0/Library/include/poppler/splash/SplashXPathScanner.h new file mode 100644 index 0000000000000000000000000000000000000000..a92ed1c93a70ce96daf839289c1e3ef3b05e9e46 --- /dev/null +++ b/software/poppler-24.08.0/Library/include/poppler/splash/SplashXPathScanner.h @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2e0f1c6d164ebf23a9028b6121627eb56babdf46c0c431ac393dec9b801f137 +size 4413 diff --git a/software/poppler-24.08.0/Library/lib/pkgconfig/poppler-cpp.pc b/software/poppler-24.08.0/Library/lib/pkgconfig/poppler-cpp.pc new file mode 100644 index 0000000000000000000000000000000000000000..c53e87d306305617202610d2ab8fa415b3847f7e --- /dev/null +++ b/software/poppler-24.08.0/Library/lib/pkgconfig/poppler-cpp.pc @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed6dfa37af449f9eb25b05d4d60062781dabfedbd011ccfdc082c9cbf2221539 +size 410 diff --git a/software/poppler-24.08.0/Library/lib/pkgconfig/poppler-glib.pc b/software/poppler-24.08.0/Library/lib/pkgconfig/poppler-glib.pc new file mode 100644 index 0000000000000000000000000000000000000000..870205676e070c9a9681cf4c4024637817a4f2e6 --- /dev/null +++ b/software/poppler-24.08.0/Library/lib/pkgconfig/poppler-glib.pc @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a06019a09cd7707ef27f28a8618eb13d08d2adebd54d43adf3b879389264511 +size 445 diff --git a/software/poppler-24.08.0/Library/lib/pkgconfig/poppler.pc b/software/poppler-24.08.0/Library/lib/pkgconfig/poppler.pc new file mode 100644 index 0000000000000000000000000000000000000000..af775ff31cf2a53af4aab3c7ee6d17f268f16aa4 --- /dev/null +++ b/software/poppler-24.08.0/Library/lib/pkgconfig/poppler.pc @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:613afd5969865c7fdf7dcda00f872106fb92316fecc978aa549d92198cbba5c8 +size 325 diff --git a/software/poppler-24.08.0/Library/lib/poppler-cpp.lib b/software/poppler-24.08.0/Library/lib/poppler-cpp.lib new file mode 100644 index 0000000000000000000000000000000000000000..ae76ac1d2f5bc5b975ec7112be400afaab77c22e --- /dev/null +++ b/software/poppler-24.08.0/Library/lib/poppler-cpp.lib @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:519feb761328a7d94475b3305de363f738a2a66239d4aae634f4f3e6091334aa +size 198166 diff --git a/software/poppler-24.08.0/Library/lib/poppler-glib.lib b/software/poppler-24.08.0/Library/lib/poppler-glib.lib new file mode 100644 index 0000000000000000000000000000000000000000..8b5b06ab62c80773a0b6a920802f65529eb74930 --- /dev/null +++ b/software/poppler-24.08.0/Library/lib/poppler-glib.lib @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e8a0d39f092169cfffa937e56848de233a25766017ab9d077a8157781f884dd +size 156196 diff --git a/software/poppler-24.08.0/Library/lib/poppler.lib b/software/poppler-24.08.0/Library/lib/poppler.lib new file mode 100644 index 0000000000000000000000000000000000000000..4763eaaca51312656c13549ab1e8b8e7fd218852 --- /dev/null +++ b/software/poppler-24.08.0/Library/lib/poppler.lib @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40ab7732155c482e9ef6e83e74a4559f793f8f42fa4ba7f448d6861356a8763f +size 10706424 diff --git a/software/poppler-24.08.0/Library/share/man/man1/pdfattach.1 b/software/poppler-24.08.0/Library/share/man/man1/pdfattach.1 new file mode 100644 index 0000000000000000000000000000000000000000..5591605786308790413c7031e84c5c12b2bf8484 --- /dev/null +++ b/software/poppler-24.08.0/Library/share/man/man1/pdfattach.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13316a415cce7252a5fea3dd4d43cb9b620eb5a30a8e18f5d664516d36748cee +size 1188 diff --git a/software/poppler-24.08.0/Library/share/man/man1/pdfdetach.1 b/software/poppler-24.08.0/Library/share/man/man1/pdfdetach.1 new file mode 100644 index 0000000000000000000000000000000000000000..cf5ad9a75694fcb8725c95f5ab656246beb63e8d --- /dev/null +++ b/software/poppler-24.08.0/Library/share/man/man1/pdfdetach.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5758bc24f11c69db72edac445bba7133900ff3a4dc1d16ceabec74483b3c9f41 +size 2558 diff --git a/software/poppler-24.08.0/Library/share/man/man1/pdffonts.1 b/software/poppler-24.08.0/Library/share/man/man1/pdffonts.1 new file mode 100644 index 0000000000000000000000000000000000000000..5ec14e2c313832283b4884b05bfc8861dacda4e3 --- /dev/null +++ b/software/poppler-24.08.0/Library/share/man/man1/pdffonts.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a18a97bc6fb879d065a7111bc41ea01a13441d165cad1c5e26e799a1f429575 +size 2507 diff --git a/software/poppler-24.08.0/Library/share/man/man1/pdfimages.1 b/software/poppler-24.08.0/Library/share/man/man1/pdfimages.1 new file mode 100644 index 0000000000000000000000000000000000000000..c2db09da5cc74641683a94cde8a9b840281e7c03 --- /dev/null +++ b/software/poppler-24.08.0/Library/share/man/man1/pdfimages.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4b0e10de72d13dded9bffb72a669e24b01d4f9eac46d69608ebb4492401bc2b +size 6602 diff --git a/software/poppler-24.08.0/Library/share/man/man1/pdfinfo.1 b/software/poppler-24.08.0/Library/share/man/man1/pdfinfo.1 new file mode 100644 index 0000000000000000000000000000000000000000..02ea0d4e4ef0b52e364d191ae53f412d246abb42 --- /dev/null +++ b/software/poppler-24.08.0/Library/share/man/man1/pdfinfo.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2dc02bd0b387fc9a6f34bb9eca89d236dca0756a4dc0914a08f7529fa29195c +size 4095 diff --git a/software/poppler-24.08.0/Library/share/man/man1/pdfseparate.1 b/software/poppler-24.08.0/Library/share/man/man1/pdfseparate.1 new file mode 100644 index 0000000000000000000000000000000000000000..e37145f8e3d7ac6f15d01090c3b2b33b491cb463 --- /dev/null +++ b/software/poppler-24.08.0/Library/share/man/man1/pdfseparate.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c429ff394b98640fcb0b405385ca8b9103f90f0babb64335b81f96cab95a23a2 +size 1645 diff --git a/software/poppler-24.08.0/Library/share/man/man1/pdftocairo.1 b/software/poppler-24.08.0/Library/share/man/man1/pdftocairo.1 new file mode 100644 index 0000000000000000000000000000000000000000..33acb88bd513ec8045dd6e52b834f5d15dbbf18c --- /dev/null +++ b/software/poppler-24.08.0/Library/share/man/man1/pdftocairo.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:294eb76ece4cdabfabb3307df360ecbedc49493fff7746cedca0f72ca58c6e92 +size 12043 diff --git a/software/poppler-24.08.0/Library/share/man/man1/pdftohtml.1 b/software/poppler-24.08.0/Library/share/man/man1/pdftohtml.1 new file mode 100644 index 0000000000000000000000000000000000000000..e4d3b6f58c8f3cffea9601e57f0ef3acf60a1aa1 --- /dev/null +++ b/software/poppler-24.08.0/Library/share/man/man1/pdftohtml.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eca73642fcc2d9333ad702b48051b1eaaf4ac4a91dbd2b6a36e6220c0f9e9d1b +size 2812 diff --git a/software/poppler-24.08.0/Library/share/man/man1/pdftoppm.1 b/software/poppler-24.08.0/Library/share/man/man1/pdftoppm.1 new file mode 100644 index 0000000000000000000000000000000000000000..62b3b07b028ab962a5b25da1322f4875ceea1b54 --- /dev/null +++ b/software/poppler-24.08.0/Library/share/man/man1/pdftoppm.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ca0f213a2c8f9fd02a1a2ea1234c3d67f731bc986c83b8ceef01b3f4cfba42d +size 6893 diff --git a/software/poppler-24.08.0/Library/share/man/man1/pdftops.1 b/software/poppler-24.08.0/Library/share/man/man1/pdftops.1 new file mode 100644 index 0000000000000000000000000000000000000000..29575b753d2dc6d9ddc593ffffe809d84e257c8d --- /dev/null +++ b/software/poppler-24.08.0/Library/share/man/man1/pdftops.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2892ccf2d4c1f142b2494f073166759941f02faf1f5d26512efa15559dbc4e1 +size 9418 diff --git a/software/poppler-24.08.0/Library/share/man/man1/pdftotext.1 b/software/poppler-24.08.0/Library/share/man/man1/pdftotext.1 new file mode 100644 index 0000000000000000000000000000000000000000..f912666f5af4c642ebd7f9896ab028e3b60683d4 --- /dev/null +++ b/software/poppler-24.08.0/Library/share/man/man1/pdftotext.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:667c296f3c3c84031c4c957e1ad190f4ea187fb6f8f6f5a39b5ce69e4f24486c +size 4157 diff --git a/software/poppler-24.08.0/Library/share/man/man1/pdfunite.1 b/software/poppler-24.08.0/Library/share/man/man1/pdfunite.1 new file mode 100644 index 0000000000000000000000000000000000000000..1b787d18a6d9c89296f90885111e70eb777ff1e8 --- /dev/null +++ b/software/poppler-24.08.0/Library/share/man/man1/pdfunite.1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f519ae7c8eedf13a8e1a3460efb172113983339edd1e54eca5867d9ee2fe8cd +size 1208 diff --git a/software/poppler-24.08.0/share/poppler/CMakeLists.txt b/software/poppler-24.08.0/share/poppler/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..eef8c7ddf58f7df0c28e5369e65be8641fb15d8c --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/CMakeLists.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ba11cd436a10b94b1f793d1e737ebf17c749716218319ad96541c83ec5012eb +size 9641 diff --git a/software/poppler-24.08.0/share/poppler/COPYING b/software/poppler-24.08.0/share/poppler/COPYING new file mode 100644 index 0000000000000000000000000000000000000000..2bfe1cc619e0d74f44a81dbb122e0dc43f06372e --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/COPYING @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac9c4202b58358b3c9ded9a4f5290c257f1e75659514af1c9f8541da858e3a21 +size 1590 diff --git a/software/poppler-24.08.0/share/poppler/COPYING.adobe b/software/poppler-24.08.0/share/poppler/COPYING.adobe new file mode 100644 index 0000000000000000000000000000000000000000..a33f8015d51fb672589d72ea7a3079c7b9e3c9c3 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/COPYING.adobe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cedd4c914992686f10332ac85bbed2e01cb9acc7566db50358783dc505be670d +size 1598 diff --git a/software/poppler-24.08.0/share/poppler/COPYING.gpl2 b/software/poppler-24.08.0/share/poppler/COPYING.gpl2 new file mode 100644 index 0000000000000000000000000000000000000000..f52c9e7549647c42d11a13f334b7280820cad2f9 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/COPYING.gpl2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f2e250993c6206fac643824e05e5a0d7d3e0895d9e09a5ce4b12bc2610afc11 +size 18326 diff --git a/software/poppler-24.08.0/share/poppler/Makefile b/software/poppler-24.08.0/share/poppler/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..fb02293eea24318152d33e37dc37c5ee3771f381 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/Makefile @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b75e404d576428d768c9dab964d7e25c8fa663af02d1f70401230b60aeceb9b +size 11251 diff --git a/software/poppler-24.08.0/share/poppler/README b/software/poppler-24.08.0/share/poppler/README new file mode 100644 index 0000000000000000000000000000000000000000..6275bbd99008f43ed396889455730bad3b1adeba --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/README @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68f98b46e15cdc57dba6ddbb28effd00e57c20c228182683cf267f820fbff3d8 +size 1050 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-0 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-0 new file mode 100644 index 0000000000000000000000000000000000000000..8b56d33bc45a78b13ec16adf91c81dc7ec5a6d47 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-0 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:647f6b10672c0817021febac5955b0e0d2f8637b432cd9eb260463a57b765cd9 +size 3963 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-1 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-1 new file mode 100644 index 0000000000000000000000000000000000000000..78132a166aa89d05afa3a6d8da32acc8bd7e9c7a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3cc65e7db9d5588ffa0fe6c9e9fa3e7bae2052be2113eba25569ada8e62fd9dc +size 4147 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-2 new file mode 100644 index 0000000000000000000000000000000000000000..86e59ef1937d40e0725742cc528fbaea93716e09 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f07937887d04be4f556466202d404c8e572afc5324a61d052fd864d7d7e11d53 +size 4168 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-3 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-3 new file mode 100644 index 0000000000000000000000000000000000000000..6fbc0fbd6c7ffcab553abb83f3976f264d81f4ac --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-3 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b329e3f5ecc1c2e3eaba34031037dc7c7bf7a7167b14b5c3b2cfa7d355db7127 +size 4273 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-4 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-4 new file mode 100644 index 0000000000000000000000000000000000000000..70e89bd404b9b8a86d3c21eda1a84a31926462fe --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-4 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49c4ecc903fe8ea74a792b6ea7a92c243fe00d050a83e089b3baf95cc2410818 +size 4294 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-5 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-5 new file mode 100644 index 0000000000000000000000000000000000000000..0d9a848726afbf0fef1c538682ac0aca7ad83280 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-5 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d47db71e5d670c3c6eebeac7988ff12eae4ac6e9275f66e98a5eaa8d2d3885b3 +size 4294 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-6 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-6 new file mode 100644 index 0000000000000000000000000000000000000000..c0ed778ae6d0c67574db05d8df0ee100cce0c256 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-6 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:084b1b21449f4498986f86b50d07da01a19faf8b9505e53440a489035c83ab0b +size 4294 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-7 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-7 new file mode 100644 index 0000000000000000000000000000000000000000..afaf394a68ab309249825d348638019c348d4e46 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-7 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1b48e708dea4aafaadfdde1232d6f168adc379625017228b7045697b67e3bd4 +size 4268 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-B5pc b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-B5pc new file mode 100644 index 0000000000000000000000000000000000000000..7124bccff41ecd59728d998f569fc0ee14819cda --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-B5pc @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:465e829c816a7d2daf226f8affa1761996ce50a5ceee2ba45bcc3711119e9743 +size 9445 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-ETen-B5 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-ETen-B5 new file mode 100644 index 0000000000000000000000000000000000000000..b40fd5271bd6f8da65edb4ae42e494260bef33e7 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-ETen-B5 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d01a23c8ed82416947c035f5848378b441004f424d8c8ebff1770450b19868c9 +size 9865 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-H-CID b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-H-CID new file mode 100644 index 0000000000000000000000000000000000000000..fac82e66552f87851be9071cc3ce6a1c34de02ac --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-H-CID @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1ad871ef97b3b93ee2224dbdfbe12166f8f662f7fd64ec70e0b3ce1fbb0cf01 +size 3463 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-H-Host b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-H-Host new file mode 100644 index 0000000000000000000000000000000000000000..d2781fdfbbf4ce0cd3748f3a38bfffed0ac4d471 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-H-Host @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b628acb93b21a4eec61587c50c210fc21aa9bdcc02a7873306264a528414745 +size 9980 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-H-Mac b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-H-Mac new file mode 100644 index 0000000000000000000000000000000000000000..e97a78f654940c97de204c831ec933aae5460c83 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-H-Mac @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:250376bd445f915d6e85d1caf58e564601fb75f7737e9ab4536d908ed658103a +size 9512 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..7de79f6c79fc13ac31e8a69458d823ee87c15da4 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/Adobe-CNS1-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4eb88018a9a2c8160f43b37df32fbacd5a39198c92028ee7d65fbda7f8cebeaf +size 284834 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5-H new file mode 100644 index 0000000000000000000000000000000000000000..2973de826c75a3418d313c172e2d1db7cb2f7a38 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:798c8e2a265831d6dd6e894115f1f713374d0be3648eb28397841d65d9b6f40d +size 7824 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5-V new file mode 100644 index 0000000000000000000000000000000000000000..4875e1ef8d127b15d30a8745f648b8495d84cb7a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07c921b79a9fbd730a72826031973ac329dca713484a0e10c7c83f4f19b33338 +size 3012 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5pc-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5pc-H new file mode 100644 index 0000000000000000000000000000000000000000..224f48cbe7a507f3f0d52129e5f8bd666efb2c1a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5pc-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3cefbdbdda765f4b0da351eee5cce2a2dd1416929d51ef1f5d7c92f82cc29696 +size 7882 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5pc-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5pc-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..c780a239741ca70b1be1f0f739e776dc692804f0 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5pc-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be284f0a12ff830325492adfaf8801209f724d85077eb921cc3ee482f9506046 +size 2715 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5pc-UCS2C b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5pc-UCS2C new file mode 100644 index 0000000000000000000000000000000000000000..cdd9c03a35572fdc53106b9da6e7b3d94d8fc2de --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5pc-UCS2C @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e381dcc8f199358b0e86390221d66819499497088453a88d2df8e42affa42768 +size 286096 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5pc-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5pc-V new file mode 100644 index 0000000000000000000000000000000000000000..a242af3dd7a59989936499fb11260ef7ead4bc3f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/B5pc-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d0d4fa801667f3ac15d5c487404eca99478bda9eaac92a214cb05484e50a48d +size 3024 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS-EUC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS-EUC-H new file mode 100644 index 0000000000000000000000000000000000000000..fa8e7f87545697b3b0b0cca2985d7623e404691b --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS-EUC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3ec14798e4e5434111c04f7f7141fc1ef59aae12e8c61b83fce178524c00876 +size 12734 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS-EUC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS-EUC-V new file mode 100644 index 0000000000000000000000000000000000000000..abdb64ce6192f773fcae3ba7e619f8c0ceffa3dc --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS-EUC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:055c8cc40241bd50fbcef1acce5561d05bcfa066822e161a702371597ecd0bac +size 13814 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS1-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS1-H new file mode 100644 index 0000000000000000000000000000000000000000..f22e3c01684072f397e13a33927d5fe0f046ea92 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS1-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b1e237f0088810669c8c4db6526d677bc47932ac9c8f44b4f14c94c47d950c7 +size 5846 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS1-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS1-V new file mode 100644 index 0000000000000000000000000000000000000000..b42be1a8e6780c5de1bdb1e2fc2f850aeafef40d --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS1-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96009bb6bf6dc89b7eeb4722c83c5044cbc5b224179bd24fb13e67aba072f931 +size 3020 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS2-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS2-H new file mode 100644 index 0000000000000000000000000000000000000000..486c2aa712dbb04114ac6522c0d384e4d390a9a8 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS2-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b99ca6182b54e128035f152700be01ccdb10f4a51046506746290d3a9b424be +size 4433 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS2-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS2-V new file mode 100644 index 0000000000000000000000000000000000000000..d8d931776c6fa5fb43a2fc0ffc63804cd0218410 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/CNS2-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46dae1395138e76c8c79153d3decfb79e582f02baae831ff6e2c5868219206a2 +size 2757 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETHK-B5-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETHK-B5-H new file mode 100644 index 0000000000000000000000000000000000000000..4f3d7c8a8e476fafd40a641036c688f3ed68cd5f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETHK-B5-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ec8938300491acfd8b1b2e58cb91e2dabccddbf8412de72f86eb73b7c4c7278 +size 24528 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETHK-B5-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETHK-B5-V new file mode 100644 index 0000000000000000000000000000000000000000..3dfe8e35433862ddba50d9c31d95f0d58775cc56 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETHK-B5-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edd415746005fb7180f664efeaa2f1ad1816d2aff5e708509306d11da3cfb6a8 +size 3043 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETen-B5-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETen-B5-H new file mode 100644 index 0000000000000000000000000000000000000000..2b63788663ce784611de016d9c498d7f0649fc09 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETen-B5-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1313d23c55f932a807b8ef360a71fa222d7ec63348d5895998d591e48a183fa6 +size 8044 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETen-B5-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETen-B5-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..44cfd5f799a41908b0e17aa0c6c54cf20b9968e0 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETen-B5-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:236e5f7154e1872222bb8b4791589546ccf44247c9a0529b88370775605fe9ac +size 289953 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETen-B5-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETen-B5-V new file mode 100644 index 0000000000000000000000000000000000000000..9f184eace31500d91a2f50acfd8354621af71e13 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETen-B5-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7100f8b627f1321cdb75ce1e64f6739c586db57d39c9673128fe2be099d11072 +size 3063 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETenms-B5-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETenms-B5-H new file mode 100644 index 0000000000000000000000000000000000000000..58743fec76bf4d4dcab1b73a9a550b538e4c9acb --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETenms-B5-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0755c63fa4d007abad19325d06734a585eb2d0b3e79d8d4810bf096160a577d +size 2806 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETenms-B5-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETenms-B5-V new file mode 100644 index 0000000000000000000000000000000000000000..03fb87beb85b1a55d55adcce77c5d59cafffe175 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/ETenms-B5-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bfb5dc962af3ccd08f40c86bdda9c503f6dbd780cdee01816e7d920e9638b0e +size 3138 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKdla-B5-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKdla-B5-H new file mode 100644 index 0000000000000000000000000000000000000000..cd6e3adc4b1168c58cd636715e31bfe8272aa396 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKdla-B5-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60ebe3c5b6e9ed4cfac9d385d229d224d2daa9adee5c3b4a5385f27a1e77e46a +size 24400 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKdla-B5-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKdla-B5-V new file mode 100644 index 0000000000000000000000000000000000000000..2f50852a4842d1600490837221a93599d2bfd985 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKdla-B5-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1e8e93b435c9fc0fc9be625120f9daf6196e2a169c4a942c24d5512733f39a9 +size 3028 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKdlb-B5-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKdlb-B5-H new file mode 100644 index 0000000000000000000000000000000000000000..f50b8e3f63e2adaad2cf7333ba5d80924ede5a2f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKdlb-B5-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f24de4717101039806d046a68e20d58f2c4d87fe09c2b745f7f662e0198f530d +size 21942 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKdlb-B5-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKdlb-B5-V new file mode 100644 index 0000000000000000000000000000000000000000..98caf551006e21092cd3b57bd23c8e4d83f7f2bb --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKdlb-B5-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:320684503ba14bebd9f73cc9607497ed6326d990ed179cb6d15dffd6ab4d3774 +size 3028 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKgccs-B5-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKgccs-B5-H new file mode 100644 index 0000000000000000000000000000000000000000..4c4e5ee007cb729f26f838849c9e267a4f4ad641 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKgccs-B5-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78c86deaa94d487c92929b003c92a444f5ff6ce28bd38a5397e22c3af0b84f90 +size 14371 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKgccs-B5-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKgccs-B5-V new file mode 100644 index 0000000000000000000000000000000000000000..09a960300300f02b26aedaa7a956d00a49e8962d --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKgccs-B5-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee4d297885c533013fead023ae50ca4a683826178a3af9b9f8fea0b02a1adb75 +size 3034 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKm314-B5-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKm314-B5-H new file mode 100644 index 0000000000000000000000000000000000000000..53af2110522c96e707a57046d32b6227b243c393 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKm314-B5-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b76e40f2acab37dae294946110f2a5ba89b62fc56922f337f3ddd9e70d5c3408 +size 14174 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKm314-B5-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKm314-B5-V new file mode 100644 index 0000000000000000000000000000000000000000..389da506949f0729b9f6bb9102f026537dd18687 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKm314-B5-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c62d3ab35cebec59aef879f164f4e627625aaad11d26105e4950267cb7bc2d4b +size 3034 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKm471-B5-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKm471-B5-H new file mode 100644 index 0000000000000000000000000000000000000000..3e6210617c3edc55eb187a4b54b48e58596ee534 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKm471-B5-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f284c56c07a1c914f5e3de4400b1537704262052912cc85045a8d4689532c9d8 +size 17294 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKm471-B5-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKm471-B5-V new file mode 100644 index 0000000000000000000000000000000000000000..f9647e6025578f9f32cd9187098b29a79ce4075c --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKm471-B5-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cf8828ed9d6e63d3929c3127055a9fb3fedb21af525d53d3fa590254142bb3a +size 3034 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKscs-B5-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKscs-B5-H new file mode 100644 index 0000000000000000000000000000000000000000..f7e8e87a506ba272cf8c5f7fa159c5472e06964b --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKscs-B5-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b956fdf2f426401a16adb96ad9e7c1d6ec964bd35c66719840a1d544afd11be +size 24582 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKscs-B5-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKscs-B5-V new file mode 100644 index 0000000000000000000000000000000000000000..8ce34d7ccf0128113c70fa484a97ff1dddb66a70 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/HKscs-B5-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14790ebcaa8d00d50e3daf020ddc96b0240a42315a088cc82d1fa74614465ab1 +size 3049 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UCS2-B5pc b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UCS2-B5pc new file mode 100644 index 0000000000000000000000000000000000000000..36654ed327e428da6b4882891ace159ce59a3350 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UCS2-B5pc @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ef0a786b418a80f189081c09f95d586d2ba902703b2e602dfd16536412a2d88 +size 286421 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UCS2-ETen-B5 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UCS2-ETen-B5 new file mode 100644 index 0000000000000000000000000000000000000000..4bc9df773dbdd0dc8015a6298188b821a73b78f6 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UCS2-ETen-B5 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9dc841c301a27e43c5ff1883cb276efce7ff8abed00f16e56a59b560347d081e +size 300773 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UCS2-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UCS2-H new file mode 100644 index 0000000000000000000000000000000000000000..c9478c3deeaf8dd931b93b2d1d0bc71c8edd9c55 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UCS2-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:feeeffdec4c3bd0e40ad3f35945d61d5cee9c61e275c4789b4008de7987a74c9 +size 343339 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UCS2-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UCS2-V new file mode 100644 index 0000000000000000000000000000000000000000..e0b092f007f6f701eb1fa85beb57dc018793e99a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UCS2-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bb1688f76dd6b2f0b1bbf8624fe25b76c3a2a6665035673b26a335b5aa6417a +size 3059 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF16-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF16-H new file mode 100644 index 0000000000000000000000000000000000000000..be1bee0499e604ec88ef11f967e54e31b1fc7146 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF16-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04c34b2e001b1c6ad5e6a79cbbf015d5cacfd1a2b70c3ce8815f74e36b02dc20 +size 272399 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF16-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF16-V new file mode 100644 index 0000000000000000000000000000000000000000..fc172c6ff2c9d86351db0f60b60260c189d27d0d --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF16-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18c55d84283664a311215e3a60eda8a4846154170317cfbe3b04fbc60b71bdbc +size 3052 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF32-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF32-H new file mode 100644 index 0000000000000000000000000000000000000000..32eaaeb0a4748d2501cc4acc64af303bc8060599 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF32-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9e5dfc4eaf7663e5ac1682a32dd922b9fe2d7b29322b53abf12a0464d026cd8 +size 343801 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF32-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF32-V new file mode 100644 index 0000000000000000000000000000000000000000..6d3a769027e470ff0d840c2ed53365cc2b8a7f38 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF32-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9724329194f9de39cc54487aff7828ba31cbe12cdade979d0ffa051196d7c04 +size 3132 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF8-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF8-H new file mode 100644 index 0000000000000000000000000000000000000000..41b9e62cd3a62d8468cc575670b7c520c674f95b --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF8-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c95fdd17989845ec4455a3da3a297bca7a8094c009ce72f69cc7cfc36db1bdcd +size 309265 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF8-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF8-V new file mode 100644 index 0000000000000000000000000000000000000000..1bfb766ad2fb2bd9e1109ef38433bb7a5e03c69f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-CNS1/UniCNS-UTF8-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc93e56543cef8b9bbd4f55bf59cafde97b2192d1de019e97412aae82ff25e47 +size 3088 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-0 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-0 new file mode 100644 index 0000000000000000000000000000000000000000..a40c6e4399ac41636069b17304221390b8aee0b4 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-0 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ada8273b024cab75298ef8ac50a17b3def1748dc044278a696331ac2b093645f +size 3401 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-1 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-1 new file mode 100644 index 0000000000000000000000000000000000000000..fe02d6df9bc6d6290c71d884c246481767bba3bc --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0f310c092c06d9d60fa690c76e2c496b5cd78cdf8147c34a8cde8105989c7c6 +size 3563 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-2 new file mode 100644 index 0000000000000000000000000000000000000000..64190cb5cae547bd41919d6540b1909ea2093a35 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6aaced47c4ff18b593553b5fac82d664a0736c42a60d254b1251092bc52f63f +size 4565 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-3 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-3 new file mode 100644 index 0000000000000000000000000000000000000000..9de9c56e48c8571856bdfe55c8af4b9b6f53dd28 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-3 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82cb509c3977706768e1ab79ff59a46466b6d35dfa8bb0d37c95efb025340098 +size 4564 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-4 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-4 new file mode 100644 index 0000000000000000000000000000000000000000..787000a40ea85697b417e6da92fedbb1a312b3e7 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-4 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bafd639dac2bed1123ced5360582cb80df20981c87f5268f749ab9607554c57 +size 5146 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-5 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-5 new file mode 100644 index 0000000000000000000000000000000000000000..db99d52095962775586bdc144c5dbd594a5cd90e --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-5 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93458f66939f24e509b111120fdfbe3410129f4033557dcb056c5b42b380ef76 +size 5251 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-GBK-EUC b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-GBK-EUC new file mode 100644 index 0000000000000000000000000000000000000000..1098fd7c56be501c49afb285ab6b3a283f8c27de --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-GBK-EUC @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b4941a3862b8a7f7967f09df758444987ff2e36426fa3d9776ba9bf498b1c2a +size 95320 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-GBpc-EUC b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-GBpc-EUC new file mode 100644 index 0000000000000000000000000000000000000000..c67e71e4671f14ec18b70817a089ccd5a0f902b8 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-GBpc-EUC @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e3aa60eaa5f59cf9682fc019bce9450e633342c45a15e2a945bd2737f263a8c +size 5716 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-H-CID b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-H-CID new file mode 100644 index 0000000000000000000000000000000000000000..486e0b74c114ecebef0b36fa84f811377541587f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-H-CID @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3e8ee2ce4adfb4a6847925fde104cccd1335641f1cd95fb96832c577a2c1960 +size 3582 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-H-Host b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-H-Host new file mode 100644 index 0000000000000000000000000000000000000000..3c2653206410dae370bb086c3e80b0b0307ba659 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-H-Host @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf2b1d8d977e4fd44d54773206f154128a359583f4487a10bedabb7af3576110 +size 95926 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-H-Mac b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-H-Mac new file mode 100644 index 0000000000000000000000000000000000000000..a61a765a95a4576410c4cc52c909fa14c7c0c73b --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-H-Mac @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d43a2f5678f8108a8f89a60a45fc8f9581088ffa283c2b44adcd3cb80100fd6 +size 5697 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..eeed16457b7c513fd6b200373cae1ac336f712dc --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/Adobe-GB1-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fae9b131ccc61800a261ba98f489ecee810fd98700667461846b7be5227feb83 +size 235479 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GB-EUC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GB-EUC-H new file mode 100644 index 0000000000000000000000000000000000000000..08971ec1c8523f6cf77be75d3b490acbe60a5f6c --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GB-EUC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d416c6dde8e9bc5f379dd84ccf143685112a43d27ec8d31765dce7ec40ebd6bc +size 4598 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GB-EUC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GB-EUC-V new file mode 100644 index 0000000000000000000000000000000000000000..199c857934f9a3406c1d5071730d744d9202ae36 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GB-EUC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d53e4f01f8cfb7d1d1e3a715e2781db1b976feb75713794ea31b88d598b5d906 +size 3196 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GB-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GB-H new file mode 100644 index 0000000000000000000000000000000000000000..5723e080915299be6a980c593de27098110570ed --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GB-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7156ff546d732e43f431253365952ee9b7eaec68b763541ca259e9323ffb5cf7 +size 4486 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GB-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GB-V new file mode 100644 index 0000000000000000000000000000000000000000..52618c0a8070768a1ddc5020bc84865c51fca572 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GB-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aee29f90cb1c44f5c169b2a53467211e0664ef4b45e8d28b76c4a5e55f5ae7bb +size 3172 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK-EUC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK-EUC-H new file mode 100644 index 0000000000000000000000000000000000000000..482d4116e68c899383c0471f185f1cc6c2047abe --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK-EUC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84e570523e3c44dc50a022ee29d46ead49ae6f4398608a16620e6584c7b0b64c +size 87373 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK-EUC-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK-EUC-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..f734036f164d3f2715de98ebaabb86570fbeefd1 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK-EUC-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:709ea105b04f1658b2d63a8b24ec1d93008f474bcdd1808de93755b0175d82bf +size 235042 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK-EUC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK-EUC-V new file mode 100644 index 0000000000000000000000000000000000000000..91cae8895a2ad0d2cde272103f9748d1a10ec832 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK-EUC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e8514b6dec0f5dce09ead4eab4da0b8e44c20641ffaf5477a104cd33126096e +size 3184 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK2K-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK2K-H new file mode 100644 index 0000000000000000000000000000000000000000..f5d8ec12fe6e0b33b21a62d65bc990b73c217699 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK2K-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afd5b4f9ebf2555f53bfe6544914f5f8456dbbb362621e68adbf6e4490f3b32d +size 96249 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK2K-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK2K-V new file mode 100644 index 0000000000000000000000000000000000000000..68f4b0d016b18e8a2df434bbdb7146b243f5721f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBK2K-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f5e186f337bccc84613e316f47c2bae8cc1bb4a80801a9e2c8b2465ba251dba +size 3598 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBKp-EUC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBKp-EUC-H new file mode 100644 index 0000000000000000000000000000000000000000..2aa94aafe1e0c744d9fd4fcf4724356dace90d84 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBKp-EUC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2511041c6412c0f412dbf049206be4ce80a190304a1f5301d99d9930eb9b9095 +size 87353 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBKp-EUC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBKp-EUC-V new file mode 100644 index 0000000000000000000000000000000000000000..08b6b27d89ba1a809534d114b550b9fb1816fd91 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBKp-EUC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f94f120815296a7d824a8bf4305f2c16ee88439fa02770874616fd0b51dd4626 +size 3190 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBT-EUC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBT-EUC-H new file mode 100644 index 0000000000000000000000000000000000000000..9e9730ac66310a1b3934f7aca15fa05faa5be95e --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBT-EUC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68358d6dc99993f5ae33d3c6acd7f827540b771fc695fbbcccdbbbed7ef673b8 +size 49203 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBT-EUC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBT-EUC-V new file mode 100644 index 0000000000000000000000000000000000000000..deb4f4242f89853283affdc26f42adf404381694 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBT-EUC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe3e04fe5e1beafb6e95a0c99d0155b1e52c82f13b90d1e25f14a7678fb60307 +size 3204 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBT-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBT-H new file mode 100644 index 0000000000000000000000000000000000000000..91bacb1296814e87e3e4477fe66033a2f7093ea1 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBT-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67795dba158ad172298f9b665b89d873fb43d51b7cb819a3e0749cac15d458b0 +size 49091 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBT-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBT-V new file mode 100644 index 0000000000000000000000000000000000000000..bf8fd12c59a736162590575841266e7213e2ed97 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBT-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d90cb7f10f6be39eb0f47a43d5de661773c3c369e5a4c2799ae6cbe69fca1e20 +size 3180 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBTpc-EUC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBTpc-EUC-H new file mode 100644 index 0000000000000000000000000000000000000000..9d6162a2ede0276b09327087f05cf6d70b2e1f73 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBTpc-EUC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37fdb31c6f6cd3c84ad350717e0944f6eeb89ceba7bd3368a1b9ba48ce55c92d +size 49235 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBTpc-EUC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBTpc-EUC-V new file mode 100644 index 0000000000000000000000000000000000000000..e988f73c95126c1f74b55256f9e4f556c3207847 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBTpc-EUC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d694d453ba05a7af776e7f2cd82719d868a8c6e274e1495050a692f9f70a43c3 +size 3216 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBpc-EUC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBpc-EUC-H new file mode 100644 index 0000000000000000000000000000000000000000..3926218622769d8cf42c5f14d46829b98258bfc5 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBpc-EUC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:735c12317b5e54d8bff5ff162b122ce19313cefb373f91bb81106de66f3b5474 +size 4628 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBpc-EUC-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBpc-EUC-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..88bfe4b679f3f4cce252c5b088cd6ffbe24915d4 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBpc-EUC-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93ff552f8eba026c5d9450e2a7f984240fca2f8b36245443f1c0673e7dd785d7 +size 2802 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBpc-EUC-UCS2C b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBpc-EUC-UCS2C new file mode 100644 index 0000000000000000000000000000000000000000..2bb4dddb8789ffea973da9d9924d57a5f3dc03f6 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBpc-EUC-UCS2C @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27dc14de616de6641bde5d1c53d50fe858b52868c94dfb302052b808ad13ab41 +size 149608 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBpc-EUC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBpc-EUC-V new file mode 100644 index 0000000000000000000000000000000000000000..2ab2ebdbd7acbe4b068ec4e5f52e16e21974a638 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/GBpc-EUC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d59bd7638000b10b1dab7024125256d7701cdbf8dca1c5be2fae5c853291692c +size 3208 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UCS2-GBK-EUC b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UCS2-GBK-EUC new file mode 100644 index 0000000000000000000000000000000000000000..deb619782d8e0fac1903ae9f41f263bfe5705402 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UCS2-GBK-EUC @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02fc15004d4ccbf6743a988270dfbc3d13995751d6fd94b3fdf504a5db9bcd43 +size 245325 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UCS2-GBpc-EUC b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UCS2-GBpc-EUC new file mode 100644 index 0000000000000000000000000000000000000000..a2e62880c6b1b8fe7e350982b178df495df91987 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UCS2-GBpc-EUC @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68697ec8e4850146fd9ec7f72eb4a78c04dd21ca02095801b9a07ecb2fe2e28f +size 198653 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UCS2-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UCS2-H new file mode 100644 index 0000000000000000000000000000000000000000..c303e10dee6c33b8eb7b71674d4078c12b407d1a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UCS2-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e81f83b1edb814385211d6ad3576680ce40b5af3727d76f832384854650d681 +size 288702 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UCS2-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UCS2-V new file mode 100644 index 0000000000000000000000000000000000000000..b7f56f00b4056d9be6131ee522c229f41f6c5b3f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UCS2-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebca5541ce37ffc95cc52452ae09182d3ecac0dd5d299cd1fcfca768056b8b0a +size 3266 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF16-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF16-H new file mode 100644 index 0000000000000000000000000000000000000000..45750e5aa042e1e5f2318e0a5ba488c83b1ef0db --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF16-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d13ea755269f27b8bb440feec69210dc416752756c93ab0778ac01fbfa88b1d +size 214364 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF16-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF16-V new file mode 100644 index 0000000000000000000000000000000000000000..3922de7768163ec89d0cd313ebdbd1edd5b9cdfa --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF16-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dcaacfed79a717d4bc501c1579e98a4fc1a11c847f431d95ffe8d1624410cb6f +size 3163 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF32-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF32-H new file mode 100644 index 0000000000000000000000000000000000000000..71f4ed7f77eb3d3b172b7933c14e3987392f5351 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF32-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f67509f2d6cb504628f6727325cbdab8c9448269728662cb415218d5ccb97d6f +size 282290 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF32-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF32-V new file mode 100644 index 0000000000000000000000000000000000000000..51e5f8092280729db1176ccfffc12350f530c5d7 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF32-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9670bb197a039c964fcfc261b8b6f655269079b3b5872508665f0e4d02d1826 +size 3279 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF8-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF8-H new file mode 100644 index 0000000000000000000000000000000000000000..41f042fb3af0b7cd5b7726e7c8d26e510a0ff10b --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF8-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2a9d6f0459c5307bd4758eda5503b97648742a6a516b093e3a341409c750b48 +size 252420 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF8-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF8-V new file mode 100644 index 0000000000000000000000000000000000000000..a76d405f2cb8d03aec99383f4a057a9dfc6debce --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-GB1/UniGB-UTF8-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93bedbc4cb1b31c90629d60797f0a8daf57706dd882178cad08e49f59311dc69 +size 3217 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-EUC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-EUC-H new file mode 100644 index 0000000000000000000000000000000000000000..6189347eb7279d666c88ddf90235b6fd8f2b2c6d --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-EUC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f246c549e594808e931f9236235696822f3c067e943743c7a314583f58205bf +size 15520 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-EUC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-EUC-V new file mode 100644 index 0000000000000000000000000000000000000000..0c49f4b5f0b5d947c6eaf7d6448496dbed5ac4c0 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-EUC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2bd2a9d9be8e61fcfd3a89cec98b37462dafa11f44228afbb46b9eb7ca14cb0 +size 3324 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-H new file mode 100644 index 0000000000000000000000000000000000000000..4ce8d2303d4b871c265217895456b1a0d1efe986 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba1e26653ce70208ffc4b97425e5b31a11661e94e1b716bd8e99174adc8ed21f +size 15389 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-RKSJ-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-RKSJ-H new file mode 100644 index 0000000000000000000000000000000000000000..ba0f0db54641ff5140c94fe20a8c6ffd9269d441 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-RKSJ-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8aa6e87c7e652f1b400a171095992ae6eba8960498a720e8235aa0c75ca88310 +size 15553 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-RKSJ-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-RKSJ-V new file mode 100644 index 0000000000000000000000000000000000000000..b292a830d93560038b7db86d243403ce5b65b2ee --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-RKSJ-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef1ba72386ed1e0cc063270e5386efadc179715ae8634c8af8ac01c6fb4f6820 +size 3330 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-V new file mode 100644 index 0000000000000000000000000000000000000000..a00530e7f78d9b94690578f3129ede9cae084fce --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97fbfdc65ec5c4318549a74917a25ec41eeeab9149339fbeec19bd259edc33ce +size 3300 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78ms-RKSJ-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78ms-RKSJ-H new file mode 100644 index 0000000000000000000000000000000000000000..37f87380493593664978c7786fb382378d2d7d90 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78ms-RKSJ-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60c31b5c5ff22476b3873762bd2e2cf9312b0d55a765d8bbef3516ea40ff8fb0 +size 17316 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78ms-RKSJ-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78ms-RKSJ-V new file mode 100644 index 0000000000000000000000000000000000000000..a0d669cf1c65404518f5ca3eac3dab3ba2e699a3 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/78ms-RKSJ-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8baa11b5c3244703861d17c426f59cba7c615d92865846e7f1faf852cee5af1 +size 4362 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/83pv-RKSJ-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/83pv-RKSJ-H new file mode 100644 index 0000000000000000000000000000000000000000..833e90b516fba33d8ababc120939ca9764e951e4 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/83pv-RKSJ-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a30a4981d972525cdfa98dbab2047a36800e1745f0e8e9827fa12087dce5602b +size 7392 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90ms-RKSJ-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90ms-RKSJ-H new file mode 100644 index 0000000000000000000000000000000000000000..de988cc0fdead39a421830d2587b1d25acb981ef --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90ms-RKSJ-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:978cf1d70432aca9cea5e440f2090607ceab42ac47a004897b3ed1bb3329f4f6 +size 6327 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90ms-RKSJ-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90ms-RKSJ-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..4801aac8883343554e798acb518ab883f15b36ae --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90ms-RKSJ-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48249ef1d47b69d2146cb3162bfb230d134d478bf9d0e8fd8549955b01c26456 +size 113616 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90ms-RKSJ-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90ms-RKSJ-V new file mode 100644 index 0000000000000000000000000000000000000000..f8c66d53a6a34c270614fac77c2518bc7222c197 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90ms-RKSJ-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06237861bc47989d631ed66eef781d18bb77770b6e37534f4468f37ad32a0a9f +size 4383 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90msp-RKSJ-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90msp-RKSJ-H new file mode 100644 index 0000000000000000000000000000000000000000..3ae066266077344382f68ab50b420bf68867e8b6 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90msp-RKSJ-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:476e9e276b81e864797c7c70c46f0302789f9ba1f9023f408d39ce9c23ab8c97 +size 6256 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90msp-RKSJ-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90msp-RKSJ-V new file mode 100644 index 0000000000000000000000000000000000000000..a16801a848d813021c8abc43164d97f2a3fae968 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90msp-RKSJ-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d348325ec4d68221407f0064ddde7eb7af0d8b808eb445780d01f5ce18bc2a2 +size 4365 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90pv-RKSJ-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90pv-RKSJ-H new file mode 100644 index 0000000000000000000000000000000000000000..71bb9f3786576e921d12a8157d27ebbab46b237a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90pv-RKSJ-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e99fd644ac1bcfb27bb0031d1f2a26764fe612d5cf71048af0310f0bee6f479 +size 8168 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90pv-RKSJ-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90pv-RKSJ-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..70b09695ea31494b9f4520796995d2cd82d6a860 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90pv-RKSJ-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4743a0bafe5a3ad23dc8dd80adf8b8cdc31e0f1cde2c2076599dee421bd72bc +size 3344 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90pv-RKSJ-UCS2C b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90pv-RKSJ-UCS2C new file mode 100644 index 0000000000000000000000000000000000000000..406f1fad1cb1a22c59b458408d4be3d81103e5ff --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90pv-RKSJ-UCS2C @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c101d5a82b509fb8953d04e866c3f438dfd08ee6ce84a64f831f301c152dbab +size 104081 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90pv-RKSJ-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90pv-RKSJ-V new file mode 100644 index 0000000000000000000000000000000000000000..060d34331c65d11767044dc400f6b3c0d68241e8 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/90pv-RKSJ-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26a0088b45a2ab9c1d56d760f8e73c2c406daaabdb61c6548931b0dac923a746 +size 3842 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Add-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Add-H new file mode 100644 index 0000000000000000000000000000000000000000..5c38abff771afc26ac894bca42cd9b89c883ca82 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Add-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1673e67e29d57049a71bdf240a949b4d7915bc05bb84b2d1c6e237c74c701ed6 +size 15579 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Add-RKSJ-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Add-RKSJ-H new file mode 100644 index 0000000000000000000000000000000000000000..923b8310d39c226ca57efed0bf24cc5df357a253 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Add-RKSJ-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c66e61ba04cbb9f7d1eddc5bc1822da230fb915beb497c1b92e827841c05371b +size 15774 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Add-RKSJ-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Add-RKSJ-V new file mode 100644 index 0000000000000000000000000000000000000000..53b4424ea57ba57b2da7cf89df8015edd711309b --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Add-RKSJ-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41158260f0de26faa561ac6e9e83cba07329cff10bf9274e7627546cac9b3ad1 +size 3956 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Add-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Add-V new file mode 100644 index 0000000000000000000000000000000000000000..7271b2f7f689150c1384c92269bd368c0e6d43ef --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Add-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33c4164179f8aa08534aaa742a8f8a7c49c8c532c58e390292909a64ced0753a +size 3926 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-0 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-0 new file mode 100644 index 0000000000000000000000000000000000000000..14dbe1e97b50182c4980c7909a45a8a8847d54b9 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-0 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:850cc1fc520661d1988bca3f05efd38edb54019440858b6fb5bb7f610c4774da +size 3452 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-1 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-1 new file mode 100644 index 0000000000000000000000000000000000000000..61fe32d117929ae778c797393a8602c5d05e1fa9 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0eb0c9e2bcda3493eb3f4d4803da9afc9f96a5cfd1106b08e6781703a9444613 +size 3453 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-2 new file mode 100644 index 0000000000000000000000000000000000000000..35542f08658df13d1f2094f0b4ad9b5686316132 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bad641b1d3c8ed5744b597c352f95405abf1181f8e8c354e39ca50d2b0de0765 +size 3493 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-3 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-3 new file mode 100644 index 0000000000000000000000000000000000000000..65e65f7ad2298bb6a5ae34784133541efe0bfaa3 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-3 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7ce955b98d44cc85017a4d45d45396cd85d37c19273980e13616c89e3a40780 +size 3504 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-4 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-4 new file mode 100644 index 0000000000000000000000000000000000000000..e5c6b7856a1daf8e82faba4b24c70a88cd8ea39d --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-4 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b554629cfe7efadcff19ac9d7d473d3a7364a4fc3438bd73c8b6a11c45b7984 +size 4006 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-5 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-5 new file mode 100644 index 0000000000000000000000000000000000000000..e36680be115724c84032759ff90d5526f07dff2a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-5 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82d4bda141ae8f7a839d531499103d18f8d61b616e11dd3df494b73787d910a9 +size 4405 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-6 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-6 new file mode 100644 index 0000000000000000000000000000000000000000..c63ed3b01a03924078c3a9a74f9b5723577953c1 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-6 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c2c8286aa64fce204e0bc45a672c61a3308118840a0c4d88e17e25b2a64b9ff +size 4636 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-7 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-7 new file mode 100644 index 0000000000000000000000000000000000000000..6900694eeb429335111c82d18d359652dcd88540 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-7 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afc67ff1e7d3f5271bd111714f64f86af63bd24d5d308820249b27e753cd307a +size 4610 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-90ms-RKSJ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-90ms-RKSJ new file mode 100644 index 0000000000000000000000000000000000000000..854ca35bfeaa7605d74ad43c0b9602919ba9a150 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-90ms-RKSJ @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:492bc8e96c83a93adc8c311536e1411e446429dbb13a0c036ac3bf2b23ecbe1a +size 7843 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-90pv-RKSJ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-90pv-RKSJ new file mode 100644 index 0000000000000000000000000000000000000000..a1c9d1044ecb4c2826a84a6ac1bcf68f3b61828d --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-90pv-RKSJ @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62c8652f459ef2cc3fbd37a9411e29c69895b1dc61640f973d4d0c647fbe91b2 +size 9932 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-H-CID b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-H-CID new file mode 100644 index 0000000000000000000000000000000000000000..aec3fd93249ecd7772753c428b9480beda5ba388 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-H-CID @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea3c34315af86fc99f0bc46b0a48a9ac31c427505f5077d3c3eb801eda27d23b +size 3781 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-H-Host b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-H-Host new file mode 100644 index 0000000000000000000000000000000000000000..08927429a6df73587d2d8dcab77febedbc9ac32e --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-H-Host @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2c4a334567d756b0961a845b8dd269bcad1b400b3d350ab84e9bdb67df4c0d8 +size 8113 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-H-Mac b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-H-Mac new file mode 100644 index 0000000000000000000000000000000000000000..ede6429c75705fbe4cbb962bf72f327cc392e96c --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-H-Mac @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f85f05d398944b9e35bc3f0d78a59939264d5ac1bd64b2392b649d12f616ea26 +size 6982 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-PS-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-PS-H new file mode 100644 index 0000000000000000000000000000000000000000..92dc8f80d1953d2c638d27238be3927ff378ba1d --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-PS-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36f5b5081a3f6581e8e50d5b3bf0548683d314a453f122c5cb8559df852c564f +size 24513 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-PS-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-PS-V new file mode 100644 index 0000000000000000000000000000000000000000..ab36a0117cae5c2ad5ed1bdc2e6ba67b06aa460e --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-PS-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2348c59969b8f38ed041ff453a206224ac3f4687dab25cea92ae8fd0cf12ad7c +size 14836 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..a70f6780785966a26bf9bc39a8f530531044c533 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Adobe-Japan1-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e4dae9b61cdbf4b77e85bfddb45f21c1c47ebe30b4c90aae492af2d586f9eec +size 313271 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/EUC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/EUC-H new file mode 100644 index 0000000000000000000000000000000000000000..90b523306d415d50451c49a2ec6c7314620438a3 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/EUC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39ac510e774f3c003306d0cd034b6a0dee52877822f7212d7121877c96a4e44e +size 5280 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/EUC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/EUC-V new file mode 100644 index 0000000000000000000000000000000000000000..df8684fdaa7be36b08a7f069fcd40a9cba46d44b --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/EUC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d71ede9aeff2f544f3c870faba71f325dbe5b5ba2a890a446f77c9de12e1213 +size 3326 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Ext-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Ext-H new file mode 100644 index 0000000000000000000000000000000000000000..ceb2a4054316289abf7c1a07f409d8288944958f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Ext-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49814256322b2ac821892d74204b1e264415c60a2e0461af71cf47a14e9b6b9e +size 16179 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Ext-RKSJ-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Ext-RKSJ-H new file mode 100644 index 0000000000000000000000000000000000000000..2a7fb50578afe07315e0c5a3a40800ed7c0c01c6 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Ext-RKSJ-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8cd2d8eaf75f0bc343d3506987e368d2745b5e87db011a3a6480a45ebc0cf29 +size 16373 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Ext-RKSJ-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Ext-RKSJ-V new file mode 100644 index 0000000000000000000000000000000000000000..0001daa2c7c70d346f22fb4e4791eb45357e7ddb --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Ext-RKSJ-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5ede867630eb3432fa0c1f6ad2623dd16e830ba848d1b3da1c729ea7ac57824 +size 3596 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Ext-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Ext-V new file mode 100644 index 0000000000000000000000000000000000000000..8eadc523b22a8f4558761400d45163e3d2023abd --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Ext-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70afed69aa6106c237b00857cc69a7c684a2dc98ac4980b5a3b959c48fe17c36 +size 3566 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/H new file mode 100644 index 0000000000000000000000000000000000000000..a0ed7e15390e794068e7d869d1bd42e3af28f78d --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee47b1220dbce663eb1e2927101dce6f1808955ff06b1374b8d21ab687acd61b +size 5139 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hankaku b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hankaku new file mode 100644 index 0000000000000000000000000000000000000000..4f778858af2d047142ab4c804324c95d899b147a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hankaku @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a71cf26f24b90e2655506f623e76820130e27f4924c9eaa719b5b6f333d6ab5b +size 2907 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hiragana b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hiragana new file mode 100644 index 0000000000000000000000000000000000000000..cb4518a28ce7cbd6c75ce82cb86c1b95d2c2e741 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hiragana @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26a5f6f7c723cb536cdf5f48e70911d31535350fe1f7401ed0071b0af4a49581 +size 2879 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hojo-EUC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hojo-EUC-H new file mode 100644 index 0000000000000000000000000000000000000000..32ac91fbb4054b9e96d3f0b7b906ee6386ad0895 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hojo-EUC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8187505b53cf74a1d6d7ef5110cb5d5e451aad18d1832cbf1a2325bdf62d8b4 +size 4786 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hojo-EUC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hojo-EUC-V new file mode 100644 index 0000000000000000000000000000000000000000..9c9bd46aa663bb7566712a7d4b0904d37c458356 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hojo-EUC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c984301ed9394258cca099869273f80ded1a2b429540541d374829c1f9bf5bd3 +size 2783 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hojo-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hojo-H new file mode 100644 index 0000000000000000000000000000000000000000..7ff3fbf807956546e7fbd84550aae1b4a4088f3b --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hojo-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52fe23d867c97ae5919f7d84d4c5ec772531a1a6a2ec60b4fa36fb81b1fb20d0 +size 4436 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hojo-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hojo-V new file mode 100644 index 0000000000000000000000000000000000000000..b7d4548d3f6545185e5f839fe7fc7d2a8d48b9b3 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Hojo-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c53ed91c011f7badfdef1c8d6c3421a41f77968f01c00efa37a4657773e3afb8 +size 2759 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Katakana b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Katakana new file mode 100644 index 0000000000000000000000000000000000000000..a8ef956b0d86cc98d9d00e29e3e9a85478c509a5 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Katakana @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:657c35f94bb76fa9dcd74b7faf35333f019814334d88395ec6bbca00dc2b1ff8 +size 2789 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/NWP-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/NWP-H new file mode 100644 index 0000000000000000000000000000000000000000..e4c6b4496b1bd629c5513d8fe0e07d1d8afbe58b --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/NWP-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:360f4d748105f9a047727dac52792057a308de52e39e0030e9f539b2f69668eb +size 18153 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/NWP-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/NWP-V new file mode 100644 index 0000000000000000000000000000000000000000..181eb193c3836fc7d04af51d60f279ac98853dbe --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/NWP-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db770974cd1581b5d2796eff23ac5f2037c921348d9d5c093ab2fc496802049d +size 3726 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/RKSJ-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/RKSJ-H new file mode 100644 index 0000000000000000000000000000000000000000..322f29ea730229362f3ba9f993a6dd1d32a4b23c --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/RKSJ-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9de71966a5b90f34a09194aa6f0241cd5280ac39d21cc34193ff0426b39a2103 +size 5332 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/RKSJ-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/RKSJ-V new file mode 100644 index 0000000000000000000000000000000000000000..de442694a9c0b4e9f7a2ae572863693e1cf027c5 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/RKSJ-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdc936f7917ceef641fd335a9c848b7938dfcea8ab79931366878872047d508e +size 3332 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Roman b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Roman new file mode 100644 index 0000000000000000000000000000000000000000..cb9bbabd807237cd737f1663ca052003e3215177 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/Roman @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb804545fa57e80dfae6ee9b15852ab5753d309a322254a081f9496f2bbe213b +size 2765 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UCS2-90ms-RKSJ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UCS2-90ms-RKSJ new file mode 100644 index 0000000000000000000000000000000000000000..39d5a54bc24bab18c03b5f267e53089cc9fd8611 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UCS2-90ms-RKSJ @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4d90bf38ca009a3f53e25ee50252beab4617f1dcdee084f1d0573c59a5e998b +size 156889 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UCS2-90pv-RKSJ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UCS2-90pv-RKSJ new file mode 100644 index 0000000000000000000000000000000000000000..2cce54b1d0fff308de89c0463f46834ff1a7961a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UCS2-90pv-RKSJ @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cedca784eec313334d5852c203e075dcc223eb537475cf019460556193fb4089 +size 149829 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UCS2-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UCS2-H new file mode 100644 index 0000000000000000000000000000000000000000..c8008ff9e0dc4dcb66a6b3519a240072f3a07ab8 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UCS2-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b265b72f30d087de3279191a29ef2c5a458f3df4ccc849866ec5af8d4121ab2 +size 88026 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UCS2-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UCS2-V new file mode 100644 index 0000000000000000000000000000000000000000..af7f11ada90094ad1fa753aa88f4bb7f4a3b426e --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UCS2-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:718934efb1d3637d234d47f73926794672cd92223f6bef3c0eb3a33b639b5a2a +size 2787 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF16-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF16-H new file mode 100644 index 0000000000000000000000000000000000000000..86b4a8c7805961b2421ce2c221d4b0902bc42357 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF16-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4909792bcbdd67c7853b876cd3a67900f491a2aaaa56c7d1ca8582413e9798d +size 67414 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF16-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF16-V new file mode 100644 index 0000000000000000000000000000000000000000..8e6cf88935d605e8bc6bd2f5ec6f701a2a3bde4d --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF16-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6880e9905a4258111596a62ae9ecad4edc45827b9ea377f26d1a27ecefd17f7c +size 2793 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF32-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF32-H new file mode 100644 index 0000000000000000000000000000000000000000..5752af28645c7fb6c6f275cadb81358ab421bbf7 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF32-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4cd3c6fb7a76413ddd573acbfe70aebeb2121c90c0b54b886d949611ec121fde +size 89281 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF32-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF32-V new file mode 100644 index 0000000000000000000000000000000000000000..3aef3fa213a516e1c3f0b0e155554c50740830d6 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF32-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:767cc56a6f8667724d45464fb1e6aced9144ba579a7a36846bf98d6e35b41987 +size 2793 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF8-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF8-H new file mode 100644 index 0000000000000000000000000000000000000000..36dd00940515aebecece6432f788d9c4f23ca273 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF8-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b13ace065151080d15c392c61cfacd63e5a00e707bcdadee49cc2ea962fb7d13 +size 78190 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF8-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF8-V new file mode 100644 index 0000000000000000000000000000000000000000..c102dcbd7069b141ddf41ec735171a13026ec3fc --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniHojo-UTF8-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28602bb54078e616170af55e794ae5a8f2f73ab79d1be3cffd1bdb71cdeab765 +size 2789 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UCS2-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UCS2-H new file mode 100644 index 0000000000000000000000000000000000000000..5f6dfc524350adaff94d9f24b1f87901e89618ae --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UCS2-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:186f3c717b105d95db92f4f6ee4b4b52ae7455d170aac421e02e445f3eb5e149 +size 177465 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UCS2-HW-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UCS2-HW-H new file mode 100644 index 0000000000000000000000000000000000000000..a48f77c84d6f216d686591cc4e1e210bd50eea33 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UCS2-HW-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90d05be46345c5578f4e81fe500a275a58c7d9b0d12091728c746e844c0b928b +size 2899 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UCS2-HW-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UCS2-HW-V new file mode 100644 index 0000000000000000000000000000000000000000..38acacb03f7524b338690393f78fbf08f41c9213 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UCS2-HW-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9180729d30d6a6fb1a1a3c80c53a5bea7a62ecb270f08cb45bac4b2308d98ffd +size 6868 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UCS2-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UCS2-V new file mode 100644 index 0000000000000000000000000000000000000000..98b387e25bdc3625143c5272b5431db72e450845 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UCS2-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6f5a163bdf44852ab299f09c38544b09589b73dbd0004b60f76b5cb589dc291 +size 6782 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF16-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF16-H new file mode 100644 index 0000000000000000000000000000000000000000..8deaa81d9ffbf42ceac9addca60a46769401ad14 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF16-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12e5a56bd76fafbbc1b475aaa85c7030da1ae198159446a72c2c8319ec7aa582 +size 202708 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF16-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF16-V new file mode 100644 index 0000000000000000000000000000000000000000..9d34454a6d5b0ca0ee0baa23bab320582b968d14 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF16-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da767b15f4437660fdef203973ee6eb8ade959a0a3fd1766d9392ff6d35d9027 +size 6111 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF32-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF32-H new file mode 100644 index 0000000000000000000000000000000000000000..a35807d1e0b48aaa66cba32d7d1c22e3f62ca1b5 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF32-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4150419a719cd622f0445b68fc1d424abf7d9fcfae9ccb9c0800b1a7f644f76a +size 259926 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF32-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF32-V new file mode 100644 index 0000000000000000000000000000000000000000..9288eb9f7a675e6baf3ea31cc097cbcc07f653d8 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF32-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc5f2014df20f2e4da4e9fa8965e2020f01999fbc16272be2a7b4ba4f5f50c04 +size 7143 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF8-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF8-H new file mode 100644 index 0000000000000000000000000000000000000000..687d8020cd64d20e16d7daa15820c0e726fea492 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF8-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50df9afea252276f36ddbf600de77222b78c42765d88df81e00d246048e84b47 +size 230970 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF8-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF8-V new file mode 100644 index 0000000000000000000000000000000000000000..bdb294709d24d9fb5e88ab43e198c6e95495112b --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS-UTF8-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75bdf303f8266e411a4b1c90456edd23d361a35aedb93f6f6493d56116f2a36f +size 6637 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF16-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF16-H new file mode 100644 index 0000000000000000000000000000000000000000..9e4e2f35a4abd0fef45a0ab7492e637d92b28f98 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF16-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf3ccd63f652ea9786a2f3237eedb84eabbf79ba868f0fe45ecad4968b63bfbf +size 202791 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF16-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF16-V new file mode 100644 index 0000000000000000000000000000000000000000..1e92f03b759a2841c30212c030ac1b5461811f77 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF16-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80e101d00e7a6417098c6fd39f4faff261b19e63737c340699c43b75c63e0242 +size 6135 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF32-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF32-H new file mode 100644 index 0000000000000000000000000000000000000000..0451a58e8cd7cdfab73c68553c8145060f873301 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF32-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f397f50f3f3120b5f3c9419e3419611b7acb9f561cae8f0df00e090eb2cd19b6 +size 260009 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF32-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF32-V new file mode 100644 index 0000000000000000000000000000000000000000..0e89f4d8a54a782852b90750dcd4690d71ba1d1e --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF32-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:317827f1342f2f61d41ed6b28b6faa286ffac2c5e2da377937b0eaf7f8d8424d +size 7167 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF8-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF8-H new file mode 100644 index 0000000000000000000000000000000000000000..91bcc924e0e488c6d6c9b6ae1bc4a53e8dc7a25f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF8-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9412d64c3231562e3452183fbddd8d32bc0e2216a84b04376d9f4422e071c7c6 +size 231051 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF8-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF8-V new file mode 100644 index 0000000000000000000000000000000000000000..231a29c13c939534be8eceb89a51bcfe813486a0 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJIS2004-UTF8-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c44cde1e5ea2b482d4a2e53a4f9ae143df3d6e84b3dfc5621c8cd79524861888 +size 6659 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISPro-UCS2-HW-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISPro-UCS2-HW-V new file mode 100644 index 0000000000000000000000000000000000000000..ab6fa38c424f236d1eff4601ac5c474e2d2af9e4 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISPro-UCS2-HW-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce445c47d484ea8e19312a96b5db6ba8bb35efc1a1331c8f0b0e94893df51bde +size 7014 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISPro-UCS2-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISPro-UCS2-V new file mode 100644 index 0000000000000000000000000000000000000000..3501182f3f09bc65f1e80b6fb0b88e3f4a9fef90 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISPro-UCS2-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f44e42376c85a93492cf9cbe367ca85bf9fc8978de436691cd4bce67d7ca5405 +size 6896 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISPro-UTF8-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISPro-UTF8-V new file mode 100644 index 0000000000000000000000000000000000000000..1f5461faf913b4ae87ae1a1915555bd4a325b08f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISPro-UTF8-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87ceb04c21bb91d945dc1556d50e1343fcd477161250c9a301a745aa254cf197 +size 7749 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISX0213-UTF32-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISX0213-UTF32-H new file mode 100644 index 0000000000000000000000000000000000000000..7db98789f064758e98ef1f76d1087b6dd8a12efa --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISX0213-UTF32-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4cf1ccd425e51bbe19e263ebf93983c57f123b21c367809e472afb6b7d1f545f +size 259909 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISX0213-UTF32-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISX0213-UTF32-V new file mode 100644 index 0000000000000000000000000000000000000000..b0bb18bcc06508145467c0cae1ff8889daaaeae3 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISX0213-UTF32-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80826e395b088a10f5daa57b8a0bcc782d2f018b46eb95fe563279fc1b80cd15 +size 7105 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISX02132004-UTF32-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISX02132004-UTF32-H new file mode 100644 index 0000000000000000000000000000000000000000..6499d3da0674f0e0b8e40c990cc4a96261e6f27b --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISX02132004-UTF32-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1b56cbd6534e03a5cf9f32a7a6aaded0abf5604994afed758a1ea2277f72604 +size 259993 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISX02132004-UTF32-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISX02132004-UTF32-V new file mode 100644 index 0000000000000000000000000000000000000000..5afb079c7614caf85d5972d08f9e075ba81875db --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/UniJISX02132004-UTF32-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9b0d5a5e657f3cb05231f12874ac7961e6d91989f3bf02639fa856171814b0c +size 7129 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/V new file mode 100644 index 0000000000000000000000000000000000000000..b82e326f6ee23bbf66e2f0a2bf8a23c0b7067360 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d89af3e372aa464987b60ae27207b81cf4b477c2e3f0b06b99d62ffc54c61743 +size 3302 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/WP-Symbol b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/WP-Symbol new file mode 100644 index 0000000000000000000000000000000000000000..4bcc1d3f7317554764d70e574ee5bdf1eb79482e --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan1/WP-Symbol @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8130d847e4971fff0699868d203c9855f657955796297cdad9c020597fb5282c +size 3196 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan2/Adobe-Japan2-0 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan2/Adobe-Japan2-0 new file mode 100644 index 0000000000000000000000000000000000000000..b2c66bb094115f97c0d650add4bb742bb6107ca8 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Japan2/Adobe-Japan2-0 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ac91e5fb8b2f5b71fef96dc0b583eef4a9719943e6ff10566c905df5a2a183c +size 3270 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-0 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-0 new file mode 100644 index 0000000000000000000000000000000000000000..692785b33af50a51ac6a07fa27e99c0faae273b3 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-0 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7140dde65be8d17116f6586416be9eaec98eb19b25fefc27cbf130031b67116 +size 2966 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-1 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-1 new file mode 100644 index 0000000000000000000000000000000000000000..6482880463b95fdeecf839868d3c6c723e96be33 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe9adab6c5ce0d7344d1dbde3510f3303f9e83e7f042c360f2cfb40e257a7a6f +size 3106 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-2 new file mode 100644 index 0000000000000000000000000000000000000000..191a3211fd8d77e36f91f3186bd3f860d7b75d6d --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:690dce7f353906a0574c7a5cad06bc01aa6a1162bc85f2e7c6f9bf94fee197e9 +size 3632 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-3 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-3 new file mode 100644 index 0000000000000000000000000000000000000000..87e2f24d6e566020f8b0294bd9f41899949d5a15 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-3 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:424aff1b4698d7c22acfc407468baab5c1d06394f4b706ad6aabdd35fd84600a +size 3653 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-4 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-4 new file mode 100644 index 0000000000000000000000000000000000000000..c01834232d16715865ee22664a5815f092abc0a0 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-4 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5552082d4f55d5111168e17da3b023123ec97fd5986c0a7136baa6f8f79046bb +size 3674 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-5 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-5 new file mode 100644 index 0000000000000000000000000000000000000000..e3b0246b1ea4054bee2b48f72cfbc4286c9e369f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-5 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b11932e1834c18918fd78ab0b3d92bf26039e2de164ac3e68e4a6b5c1f1e0b61 +size 3695 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-6 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-6 new file mode 100644 index 0000000000000000000000000000000000000000..69937e3c0417a4ce59888bd6586195fe8702a772 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-6 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5b22d1851738d2e4339c153213f2d636d0ba7351daa3d774c143f3900ee6020 +size 3863 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-7 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-7 new file mode 100644 index 0000000000000000000000000000000000000000..46e9c7901dc77dc82ac866242a03e6defa2cb933 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-7 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:731749b1e4e460ae47d2ea539cb61cb867165ef131938920addce628f4b576f1 +size 4241 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-8 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-8 new file mode 100644 index 0000000000000000000000000000000000000000..2b53460076b3d07d68154b7743b5a98e47c84297 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-8 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72e74947223b68655db49dc05cbe86c5c19d606921e1e42d05ddd912a2c93447 +size 4535 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-9 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-9 new file mode 100644 index 0000000000000000000000000000000000000000..84650a5115c5c0ca2e04062e8599059cc0bd0a3a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-9 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:867555d9af43ab088fbff9b3152db80eeb991ab642ce6983f192f2107dcf3240 +size 4577 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..af9c260f7b78bab39d3b6b25e51d2b9db8ac39ab --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/Adobe-KR-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e48475963f292310de23449e37a41e9d610ba997e749a6a8bd452f18886ec0c3 +size 215700 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/UniAKR-UTF16-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/UniAKR-UTF16-H new file mode 100644 index 0000000000000000000000000000000000000000..f8cbe69b9342b83f8b67213e50d9148f680142e3 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/UniAKR-UTF16-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b189df2a2df746de2b78778170b81cf143e957bdd277447add554def9a3aeded +size 199166 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/UniAKR-UTF32-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/UniAKR-UTF32-H new file mode 100644 index 0000000000000000000000000000000000000000..3aecf512f145fa736f6c1fc2f40a653144778006 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/UniAKR-UTF32-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e764990aba789a88fb714664327913a18d2d6596ed4894b2b09779b5853d64a5 +size 263101 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/UniAKR-UTF8-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/UniAKR-UTF8-H new file mode 100644 index 0000000000000000000000000000000000000000..71645ec2be96de9c06b7abc9b5af589d9ec09c68 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-KR/UniAKR-UTF8-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38272f10e60d2cece267a087c0846521ea5a0dbe65de6b8de4e55826b7b035aa +size 232713 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-0 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-0 new file mode 100644 index 0000000000000000000000000000000000000000..0bab9e04badf1b3131dd9d2caa343426ad55e665 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-0 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac898238ee618a02853e7e876aab0d7d8cfa81c56da7b9da3bcffd811258059b +size 3547 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-1 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-1 new file mode 100644 index 0000000000000000000000000000000000000000..8978cecffe41cb3e660de624b04d54fa137e6a89 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efe76a3b6defd17b8cfcbd1ecbc850b3b347fee03f499e001ce392768158178e +size 4238 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-2 new file mode 100644 index 0000000000000000000000000000000000000000..96f2e85b5e667257fe6c55470e3e1d9174901391 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dd0a79a5adcc9bbfd2b0684bf04bc7faa7367c2e8eb4edbb8ac0bbb0ead1ee9 +size 4237 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-H-CID b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-H-CID new file mode 100644 index 0000000000000000000000000000000000000000..a68a75199e42b478e9fb2f9ed8138e4f934fe510 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-H-CID @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2657d2b6e0b3baa91ea069b2bbbfc54a7ed80503b3942eb49e38ee4b3f665f4c +size 3132 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-H-Host b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-H-Host new file mode 100644 index 0000000000000000000000000000000000000000..b027c9a4628bb42f150a4e7190517c871901a4d5 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-H-Host @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4314ee728d301367b64f04a436204400aba67f5d64af2942656e47aef8d645a2 +size 17554 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-H-Mac b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-H-Mac new file mode 100644 index 0000000000000000000000000000000000000000..c95e73b94e81df7926a0691de4bf658b13921444 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-H-Mac @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:529feb2bd37fef6d4ed46fbffbc1f5922520def8553192f79ebafd0e0edfac6d +size 12819 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-KSCms-UHC b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-KSCms-UHC new file mode 100644 index 0000000000000000000000000000000000000000..ed171345c6d2163dbb632adce4604b23e1d4266f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-KSCms-UHC @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4cf1af8ff85aa0374029abc3bb241bbe4b54834c7f7f11126f335aba0cd9f9ed +size 17348 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-KSCpc-EUC b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-KSCpc-EUC new file mode 100644 index 0000000000000000000000000000000000000000..db11debe5faba8d7f0a681053355bc34ab66e76c --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-KSCpc-EUC @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67f79f9e2e6b0e727c1ac4bf5ec598ffc76e10d7a11c5fbc13fe4f97ede6484b +size 12997 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..5af3a822d089cb37187052d596a8c7ecfbb45294 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/Adobe-Korea1-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90a9c9a094f47150f34c39c86efff022431f073a37cbd3d7ac47cca96040ac29 +size 156072 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-EUC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-EUC-H new file mode 100644 index 0000000000000000000000000000000000000000..c68941ccab13916ec4110c6f8e909a215c1db470 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-EUC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76c5850df1d6ab941e2bc91ed14439a42d3ed3f0ef54cff4b01238d434301e09 +size 12288 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-EUC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-EUC-V new file mode 100644 index 0000000000000000000000000000000000000000..c047d9909da417356de6285348f589a5b36ebf7b --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-EUC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6db4317809ae5c3fdba1f3eac107b5ea1e375d4bfd9abfd86245f39385f9f2dd +size 3128 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-H new file mode 100644 index 0000000000000000000000000000000000000000..7e0f33837f8abec77fafe5d4beb76f7b2f4694bc --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55e88789a40cdb06fd67a02c356ad42fc587083c651738d397564ba58eddde3e +size 12191 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-Johab-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-Johab-H new file mode 100644 index 0000000000000000000000000000000000000000..daecfed3e9714df83797f4f606b87f33f5db089f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-Johab-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:118171b85633f359474df6b91ac724cdf1c674b2e3fd2b5dacddc3f4ebb8c4d2 +size 88593 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-Johab-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-Johab-V new file mode 100644 index 0000000000000000000000000000000000000000..68cac7e3b297466a352994b3d907ac512e6bf947 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-Johab-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8954e8f0ba938d18d4117ae3e5d921aab5100c90205f40cfb01d59852b413ad2 +size 3142 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-V new file mode 100644 index 0000000000000000000000000000000000000000..98f3a8322f8136dc1309e2ff1659f69308b8f353 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f6b5f71b186c5bf02986ddb3e295f7c6bbe6bffd5ec4372d64fe1bff71427fc +size 3104 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-H new file mode 100644 index 0000000000000000000000000000000000000000..da079424aec14dfe0e6b9b63b860048d9649ac28 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18a763cdf71712324bcf3de14a9b7c75ab68095fa719e673109631af52889300 +size 16714 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-HW-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-HW-H new file mode 100644 index 0000000000000000000000000000000000000000..ad9e9e01bdf3bdc02885c244eb47e87671263761 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-HW-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c67104bcd7f1c72d7710117c4bb9c8ee5fe6aa63eba8267d8ba09a5280ab1149 +size 16709 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-HW-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-HW-V new file mode 100644 index 0000000000000000000000000000000000000000..8e5a85f7c3186850b950ca63c959cf559f366d59 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-HW-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1dda1805fdcf67868ab3346f581139c903f05827019f6dcf6910e73315e36ba +size 3140 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..4ae9b3e61a21ee5b8fe6e6e0ba2959d31585cd35 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:026f3b7bbe5a3f2017de1aad5df7141abf3e425f8cb60d7181723dc94c99b2fa +size 191337 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-V new file mode 100644 index 0000000000000000000000000000000000000000..5bdfe347edf099673f359c4f248cdcbc7f2d7bf1 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCms-UHC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:097f08b942694985aac45b079147de40cc18f8b6a0b51b5638d431fe251d54d7 +size 3142 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCpc-EUC-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCpc-EUC-H new file mode 100644 index 0000000000000000000000000000000000000000..c597fd28d17b409ce310f3427cd77cc4782cc11a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCpc-EUC-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3a6fb7082c6632468d87e127d48b4ba07b5ca1da816a45a1656f8caec55247d +size 13161 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCpc-EUC-UCS2 b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCpc-EUC-UCS2 new file mode 100644 index 0000000000000000000000000000000000000000..567576e22940a3c6e99b1dc8519a148a3fda1cff --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCpc-EUC-UCS2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cb2c4a7370e039348325c26f12f93b76a3b4ee7b63337248ca40ac7c8b70426 +size 17818 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCpc-EUC-UCS2C b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCpc-EUC-UCS2C new file mode 100644 index 0000000000000000000000000000000000000000..fd8b69787ac3fe9fbe07047ee1696a77b4e54a6e --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCpc-EUC-UCS2C @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2c6dbf42bfcf7168f28327b253b8be0ea6f47cea1a805d3b8e8d6407ef1a51b +size 158315 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCpc-EUC-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCpc-EUC-V new file mode 100644 index 0000000000000000000000000000000000000000..e2503e3c073b006ac0c34415110ab8d91560468e --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/KSCpc-EUC-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c86615b741cabce2bce47b2730e2c695f6a54a858d4f7c0c32fbcda2e9978ab +size 3140 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UCS2-KSCms-UHC b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UCS2-KSCms-UHC new file mode 100644 index 0000000000000000000000000000000000000000..9550270c8764e2aaf4c4af4b634056955b9dc52a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UCS2-KSCms-UHC @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4c1525fe6891b463a568914ebe9678d8807b38c581ece97c0f492611d66e7d9 +size 197939 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UCS2-KSCpc-EUC b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UCS2-KSCpc-EUC new file mode 100644 index 0000000000000000000000000000000000000000..3ec81ab161792f438df5c45813d41e076d9edcc2 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UCS2-KSCpc-EUC @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd1cef464a38d45b95a52ba85335a676049efe98e87163b0923e27ac8a336df3 +size 154815 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UCS2-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UCS2-H new file mode 100644 index 0000000000000000000000000000000000000000..ef6a8d8b87af6a22d275cfd4e8228101fd6bc479 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UCS2-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffd7623cf400b28a3a24856d394b1718133325fd1396f2a5b5b1eddc3695b828 +size 174732 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UCS2-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UCS2-V new file mode 100644 index 0000000000000000000000000000000000000000..f9abc4a94feb0679d38a9457eabb54203b5e1386 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UCS2-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1efeaa112a8ca3f04d9c8c12681dc21eb3e69176d816675d23903a8d1d93099e +size 3169 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF16-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF16-H new file mode 100644 index 0000000000000000000000000000000000000000..786b2fcbf6d4d245d4d4cc27b179531d75253c7a --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF16-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff2d25fcc236260ced5d70bc223ceb640ba59ef4b150d935b2e21abfd904e5a6 +size 131831 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF16-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF16-V new file mode 100644 index 0000000000000000000000000000000000000000..b0f0f515a390d50a11a6969125e31223fbef858c --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF16-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fc39d60a6e18ac9032e2a4c58746be3363715e41f4d5434b397c51eee120f70 +size 3127 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF32-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF32-H new file mode 100644 index 0000000000000000000000000000000000000000..35f42d5caa1f708f814a13d64951ed29ebd32d0c --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF32-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fc23a0ee083dbd9d143c757be04b66e3dc9d05ff574252acf30e58746d1d9e8 +size 173901 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF32-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF32-V new file mode 100644 index 0000000000000000000000000000000000000000..dff27d6bf48026e2e54a1bc231f9f3e279476301 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF32-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d74fae89014c90bd04b20e026cea1f26410029d40570043280df2e21527127d6 +size 3227 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF8-H b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF8-H new file mode 100644 index 0000000000000000000000000000000000000000..e97c74088f64928bb17e04e077c324088fcdcf9f --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF8-H @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98dafc0aeefb6091b1b19e8ddebe626d68462776a1188ebf5ff8086cb94ca34f +size 154834 diff --git a/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF8-V b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF8-V new file mode 100644 index 0000000000000000000000000000000000000000..fae143870297cab69a81860f593d7bd705275394 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cMap/Adobe-Korea1/UniKS-UTF8-V @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edd634974ab12fdb8361ff4227ae237d8c5aed50e87be7475a018aa96fd87f3b +size 3173 diff --git a/software/poppler-24.08.0/share/poppler/cidToUnicode/Adobe-CNS1 b/software/poppler-24.08.0/share/poppler/cidToUnicode/Adobe-CNS1 new file mode 100644 index 0000000000000000000000000000000000000000..d1c3a58b39d9a969bc65c37f51d625c213e41bbf --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cidToUnicode/Adobe-CNS1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:661af5581a3165d54bd085aa9559e416fdf6d12bf73d738fba407afed7b1b747 +size 116477 diff --git a/software/poppler-24.08.0/share/poppler/cidToUnicode/Adobe-GB1 b/software/poppler-24.08.0/share/poppler/cidToUnicode/Adobe-GB1 new file mode 100644 index 0000000000000000000000000000000000000000..f1ba24803ad9180e778f697a392c44459a9648e9 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cidToUnicode/Adobe-GB1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8477b0599726a1995e07f2c67c2ca535af8208bd4b31b032b8914531c1b83ba +size 181710 diff --git a/software/poppler-24.08.0/share/poppler/cidToUnicode/Adobe-Japan1 b/software/poppler-24.08.0/share/poppler/cidToUnicode/Adobe-Japan1 new file mode 100644 index 0000000000000000000000000000000000000000..f82e1289125bae89023918b9dd6974a9dd0801ac --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cidToUnicode/Adobe-Japan1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bcddcea387a6b8da93f2d4a9012cac98953e0d02073170ea5b1575f4ef13c4b4 +size 138701 diff --git a/software/poppler-24.08.0/share/poppler/cidToUnicode/Adobe-Korea1 b/software/poppler-24.08.0/share/poppler/cidToUnicode/Adobe-Korea1 new file mode 100644 index 0000000000000000000000000000000000000000..c031b5d67c0704fb755bfe2312b9a298dad75287 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/cidToUnicode/Adobe-Korea1 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe7c294fdfa12501f5216053123d233e8890000816bf256e7b2614e8dd292d47 +size 110112 diff --git a/software/poppler-24.08.0/share/poppler/nameToUnicode/Bulgarian b/software/poppler-24.08.0/share/poppler/nameToUnicode/Bulgarian new file mode 100644 index 0000000000000000000000000000000000000000..e2cffd0641eb7b10da39e86f1bf4af4c9e0c042d --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/nameToUnicode/Bulgarian @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68973290f2a870daf9a1ca56d3bf45ea04f501552ae3454e57bfa41620febd58 +size 688 diff --git a/software/poppler-24.08.0/share/poppler/nameToUnicode/Greek b/software/poppler-24.08.0/share/poppler/nameToUnicode/Greek new file mode 100644 index 0000000000000000000000000000000000000000..1ceb96b2ba54f6f906def34a27f126ee968de0c9 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/nameToUnicode/Greek @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3da3a605a48af58636e5cadffd339f91a1c8eea0ccedb63eab0ffdd10046fcbb +size 136 diff --git a/software/poppler-24.08.0/share/poppler/nameToUnicode/Thai b/software/poppler-24.08.0/share/poppler/nameToUnicode/Thai new file mode 100644 index 0000000000000000000000000000000000000000..b4206bff0d813dcd20ca4ec64efd30cd5f598eb5 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/nameToUnicode/Thai @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ffb5ef9bbe50ec27629b500b00ac9839dc5f7d569e8091db10b2af62caa4931 +size 3190 diff --git a/software/poppler-24.08.0/share/poppler/poppler-data.pc b/software/poppler-24.08.0/share/poppler/poppler-data.pc new file mode 100644 index 0000000000000000000000000000000000000000..ac143219bf851e83a2927d25bd9d1e2c3d459a5d --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/poppler-data.pc @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff6659fe29a8c663653c19b7b1ebdb2e960d6129fe1b56d891be9b83d9bfc7b2 +size 187 diff --git a/software/poppler-24.08.0/share/poppler/poppler-data.pc.in b/software/poppler-24.08.0/share/poppler/poppler-data.pc.in new file mode 100644 index 0000000000000000000000000000000000000000..ce3ae7ceca0c9bd32cf5de73329518bdb9c56028 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/poppler-data.pc.in @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3441ea8b214eb7a90e91ea41cb55e803d9fd6c5e204aa40b8e3a619096cfa67 +size 166 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/Big5 b/software/poppler-24.08.0/share/poppler/unicodeMap/Big5 new file mode 100644 index 0000000000000000000000000000000000000000..5ea6deb294fa4707010f9a1bc8ec42dfb4c6cbd5 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/Big5 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:477fc07be3c6c1e2750cd4ac0bd200b77d8c026f4692d15741231fdea655b095 +size 146522 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/Big5ascii b/software/poppler-24.08.0/share/poppler/unicodeMap/Big5ascii new file mode 100644 index 0000000000000000000000000000000000000000..cd98cfda81c24c0c564536f2f4f5d89d417207c2 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/Big5ascii @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2d60f8b461d00f89c6b070c2cd2fe86f1ef3beae46eb9858c27acda88554139 +size 146956 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/EUC-CN b/software/poppler-24.08.0/share/poppler/unicodeMap/EUC-CN new file mode 100644 index 0000000000000000000000000000000000000000..f4485e5e447ddc450019d5a1bf30761c26172ea8 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/EUC-CN @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7346af8197c09e26178ba32ba8cccb08fab3bb3dda29ef0fcc46f1183c3728bb +size 74242 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/EUC-JP b/software/poppler-24.08.0/share/poppler/unicodeMap/EUC-JP new file mode 100644 index 0000000000000000000000000000000000000000..96e3fc1cdb96be077a47e1aa9f1316dff3d5bf4e --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/EUC-JP @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:710917f0293c210b9618e03a876b77377f81297d8bd8a2e08a03c04de01a7aa7 +size 72711 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/GBK b/software/poppler-24.08.0/share/poppler/unicodeMap/GBK new file mode 100644 index 0000000000000000000000000000000000000000..1f1ff4b4fc19f0b709a06e885e67fbef836e45c1 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/GBK @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c18dcddfe97ca896fc79e416d21e62822b918ad6814fa4574a22363447160b14 +size 128315 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-2022-CN b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-2022-CN new file mode 100644 index 0000000000000000000000000000000000000000..24285412625ac02453132cfef5ab58250ed55cb1 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-2022-CN @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efe5d28a815d4331f6dbac17c6d061e6d42c3760b712f2c991b110d5252784d7 +size 73606 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-2022-JP b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-2022-JP new file mode 100644 index 0000000000000000000000000000000000000000..e09dbc0d75eeecd0a5dd7c3257008b20135ea445 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-2022-JP @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02341a35275f362339cf0b05ea23d9297aaaa5c901fa50112ddb3a1dc29a5c41 +size 72385 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-2022-KR b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-2022-KR new file mode 100644 index 0000000000000000000000000000000000000000..1f798ca7027aa002cd4b38edbdda4951375ac7c1 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-2022-KR @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63266fbcaf66a61f934c535fb02f11c34d082e8b751b846da305e10246b2ede8 +size 74758 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-8859-6 b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-8859-6 new file mode 100644 index 0000000000000000000000000000000000000000..35ca1d9dd28d181680d04fe7a27f0abf98f30629 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-8859-6 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb3e62f8e7d800a2f7516e270ad020560dea2e83b89d2b3f86783dc0f4761f8b +size 564 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-8859-7 b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-8859-7 new file mode 100644 index 0000000000000000000000000000000000000000..b339210487f25cf67cb30871a02c09e04e2902a9 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-8859-7 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6a98d303151c370e6ca994c3905317e8ea227b11378458449909f1dcc08f7c7 +size 647 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-8859-8 b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-8859-8 new file mode 100644 index 0000000000000000000000000000000000000000..10a6ce0c4f0b92d6ce53e2a65d0990e3fd5b6245 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-8859-8 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c90072eea21b8e37aa3b6b7bd92e7b4d7689582ebe380ae192bf57dfbe3012b7 +size 668 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-8859-9 b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-8859-9 new file mode 100644 index 0000000000000000000000000000000000000000..29a1f967bf44eb86c5ffe37ae52269ee3d54e255 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/ISO-8859-9 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72b3eed31315305b48cfd7df8f226ca734e969367cc5a64bf720d15869f639ec +size 693 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/KOI8-R b/software/poppler-24.08.0/share/poppler/unicodeMap/KOI8-R new file mode 100644 index 0000000000000000000000000000000000000000..d11ed66cd2bd570ada889124b4996f7c1d7d29d0 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/KOI8-R @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a85c46cc13e14be874dc2e5ac58230a03019603a7b1012436a8288c29aac6025 +size 1004 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/Latin2 b/software/poppler-24.08.0/share/poppler/unicodeMap/Latin2 new file mode 100644 index 0000000000000000000000000000000000000000..66542589f0d049bbc01b5a085757d5462a20bd37 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/Latin2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88db44567e8dbb17053a607fdba258200491eabe4a706fd09509cef6b6cfa071 +size 1478 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/Shift-JIS b/software/poppler-24.08.0/share/poppler/unicodeMap/Shift-JIS new file mode 100644 index 0000000000000000000000000000000000000000..2b101f6c780c22df6096df3d55acb80b70d40958 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/Shift-JIS @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4363ce0143b010e077dd7a3ec97e90ee52ce846bcb0ea30bab861def498457fe +size 72466 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/TIS-620 b/software/poppler-24.08.0/share/poppler/unicodeMap/TIS-620 new file mode 100644 index 0000000000000000000000000000000000000000..6eaa4341ff82596ed8d2c13d772b3e1a05fed721 --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/TIS-620 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30388e87dd749c3fd5d508ca3052d9eb96ec3c66afd01a3297a8583596c3645d +size 498 diff --git a/software/poppler-24.08.0/share/poppler/unicodeMap/Windows-1255 b/software/poppler-24.08.0/share/poppler/unicodeMap/Windows-1255 new file mode 100644 index 0000000000000000000000000000000000000000..97d190841de9495b34c2908b181eabb3454344ce --- /dev/null +++ b/software/poppler-24.08.0/share/poppler/unicodeMap/Windows-1255 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5357b7dcc89f182d23ca204b0d3540ed13fbf5e9236bb72093fc0e5774c60600 +size 704 diff --git a/src/agents/chatbot.py b/src/agents/chatbot.py index cb11014a3b47ad14a5f12f85ed9fe48e216b1bf5..44856d94373589d3890398fb75e2ac6e3b346526 100644 --- a/src/agents/chatbot.py +++ b/src/agents/chatbot.py @@ -1,5 +1,6 @@ """Chatbot agent with RAG capabilities.""" +import tiktoken from langchain_openai import AzureChatOpenAI from langchain_core.prompts import ChatPromptTemplate, MessagesPlaceholder from langchain_core.output_parsers import StrOutputParser @@ -9,6 +10,14 @@ from langchain_core.messages import HumanMessage, AIMessage logger = get_logger("chatbot") +_enc = tiktoken.get_encoding("cl100k_base") + + +def _count_tokens(messages: list, context: str) -> dict: + msg_tokens = sum(len(_enc.encode(m.content)) for m in messages) + ctx_tokens = len(_enc.encode(context)) + return {"messages_tokens": msg_tokens, "context_tokens": ctx_tokens, "total": msg_tokens + ctx_tokens} + class ChatbotAgent: """Chatbot agent with RAG capabilities.""" @@ -64,7 +73,8 @@ class ChatbotAgent: async def astream_response(self, messages: list, context: str = ""): """Stream response tokens as they are generated.""" try: - logger.info("Streaming chatbot response") + token_counts = _count_tokens(messages, context) + logger.info("LLM input tokens", **token_counts) async for token in self.chain.astream({"messages": messages, "context": context}): yield token except Exception as e: diff --git a/src/agents/orchestration.py b/src/agents/orchestration.py index a73faaa623cfc3ab222ee591045f812a5bcb9d26..44614ede11ef183f1b16749be031ffce3be40f06 100644 --- a/src/agents/orchestration.py +++ b/src/agents/orchestration.py @@ -35,6 +35,11 @@ Intent Routing: - greeting -> needs_search=False, direct_response="Hello! How can I assist you today?" - goodbye -> needs_search=False, direct_response="Goodbye! Have a great day!" - other -> needs_search=True, search_query= + +Source Routing (set source_hint): +- Columns, tables, sheets, data types, schema, row counts, statistics -> source_hint=schema +- Document content, paragraphs, reports, articles, text -> source_hint=document +- Unclear or spans both -> source_hint=both """), MessagesPlaceholder(variable_name="history"), ("user", "{message}") diff --git a/src/api/v1/chat.py b/src/api/v1/chat.py index 00a8d983d0a49972672d88fbf80e7badf15127ec..06f704ef7ab028115a110bc5ae749905a25c3f36 100644 --- a/src/api/v1/chat.py +++ b/src/api/v1/chat.py @@ -9,6 +9,9 @@ from src.db.postgres.models import ChatMessage, MessageSource from src.agents.orchestration import orchestrator from src.agents.chatbot import chatbot from src.rag.retriever import retriever +from src.rag.base import RetrievalResult +from src.query.query_executor import query_executor +from src.query.base import QueryResult from src.db.redis.connection import get_redis from src.config.settings import settings from src.middlewares.logging import get_logger, log_execution @@ -61,18 +64,49 @@ def _extract_sources(results: List[Dict[str, Any]]) -> List[Dict[str, Any]]: seen = set() sources = [] for result in results: - meta = result["metadata"] - key = (meta.get("document_id"), meta.get("page_label")) - if key not in seen: - seen.add(key) - sources.append({ - "document_id": meta.get("document_id"), - "filename": meta.get("filename", "Unknown"), - "page_label": meta.get("page_label"), - }) + if "document_id" in result["metadata"].get("data", {}): + meta = result["metadata"] + key = (meta.get("data", {}).get("document_id"), meta.get("data", {}).get("page_label")) + if key not in seen: + seen.add(key) + sources.append({ + "document_id": meta.get("data", {}).get("document_id"), + "filename": meta.get("data", {}).get("filename", "Unknown"), + "page_label": meta.get("data", {}).get("page_label", "Unknown"), + }) + else: + meta = result["metadata"] + key = (meta.get("data", {}).get("table_name"), meta.get("data", {}).get("column_name")) + if key not in seen: + seen.add(key) + table_name = meta.get("data", {}).get("table_name") + user_id = meta.get("user_id") + sources.append({ + "document_id": f"{user_id}_{table_name}", + "filename": meta.get("data", {}).get("table_name", "Unknown"), + "page_label": meta.get("data", {}).get("column_name", "Unknown"), + }) + + logger.debug(f"Extracted sources: {sources}") return sources +def _format_query_results(results: list[QueryResult]) -> str: + if not results: + return "" + lines = [] + for r in results: + name = r.metadata.get("client_name", r.source_id) + lines.append(f"[Query result — {name}, tables: {r.table_or_file}]") + lines.append(f"SQL: {r.metadata.get('sql', '')}") + if r.columns and r.rows: + lines.append(" | ".join(r.columns)) + for row in r.rows[:20]: + lines.append(" | ".join(str(row.get(c, "")) for c in r.columns)) + lines.append(f"({r.row_count} rows total)\n") + return "\n".join(lines) + + async def get_cached_response(redis, cache_key: str) -> Optional[str]: cached = await redis.get(cache_key) if cached: @@ -167,16 +201,25 @@ async def chat_stream(request: ChatRequest, db: AsyncSession = Depends(get_db)): if not intent_result.get("needs_search"): retrieval_task.cancel() + try: + await retrieval_task + except asyncio.CancelledError: + pass raw_results = [] else: search_query = intent_result.get("search_query", request.message) logger.info(f"Searching for: {search_query}") if search_query != request.message: retrieval_task.cancel() + try: + await retrieval_task + except asyncio.CancelledError: + pass raw_results = await retriever.retrieve( query=search_query, user_id=request.user_id, db=db, + source_hint=intent_result.get("source_hint", "both"), ) else: raw_results = await retrieval_task @@ -184,6 +227,27 @@ async def chat_stream(request: ChatRequest, db: AsyncSession = Depends(get_db)): context = _format_context(raw_results) sources = _extract_sources(raw_results) + source_hint = intent_result.get("source_hint", "both") + if source_hint in ("schema", "both"): + retrieval_objects = [ + RetrievalResult( + content=r["content"], + metadata=r["metadata"], + score=0.0, + source_type=r["metadata"].get("source_type", ""), + ) + for r in raw_results + ] + query_results = await query_executor.execute( + results=retrieval_objects, + user_id=request.user_id, + db=db, + question=intent_result.get("search_query") or request.message, + ) + query_context = _format_query_results(query_results) + if query_context: + context = query_context + "\n\n" + context + # Step 3: Direct response for greetings / non-document intents if intent_result.get("direct_response"): response = intent_result["direct_response"] diff --git a/src/api/v1/db_client.py b/src/api/v1/db_client.py index 72af1786749d8a7c7945e02365fd356810d746ac..08bd4d75fe74fc2f0537552b1ff783fd8762a2a5 100644 --- a/src/api/v1/db_client.py +++ b/src/api/v1/db_client.py @@ -1,5 +1,473 @@ -from typing import Literal, Dict +"""API endpoints for user-registered database connections. +Credential schemas (DbType, PostgresCredentials, etc.) live in +`src/models/credentials.py` — they are imported below (with noqa: F401) so +FastAPI/Swagger picks them up for OpenAPI schema generation even though they +are not referenced by name in this file. +""" -dbtypes: Literal["postgresql", "mysql", "sqlite"] = Literal["postgresql", "mysql", "sqlite"] -creds: Dict[str, str] \ No newline at end of file +from typing import Any, Dict, List, Literal, Optional +from datetime import datetime + +from fastapi import APIRouter, Depends, HTTPException, Query, Request, status +from pydantic import BaseModel, Field +from sqlalchemy.ext.asyncio import AsyncSession + +from src.database_client.database_client_service import database_client_service +from src.db.postgres.connection import get_db +from src.middlewares.logging import get_logger, log_execution +from src.middlewares.rate_limit import limiter +from src.models.credentials import ( # noqa: F401 — re-exported for Swagger schema discovery + BigQueryCredentials, + CredentialSchemas, + DbType, + MysqlCredentials, + PostgresCredentials, + SnowflakeCredentials, + SqlServerCredentials, + SupabaseCredentials, +) +from src.pipeline.db_pipeline import db_pipeline_service +from src.utils.db_credential_encryption import decrypt_credentials_dict + +logger = get_logger("database_client_api") + +router = APIRouter(prefix="/api/v1", tags=["Database Clients"]) + + +# --------------------------------------------------------------------------- +# Request / Response schemas +# --------------------------------------------------------------------------- + + +class DatabaseClientCreate(BaseModel): + """ + Payload to register a new external database connection. + + The `credentials` object shape depends on `db_type`: + + | db_type | Required fields | + |-------------|----------------------------------------------------------| + | postgres | host, port, database, username, password, ssl_mode | + | mysql | host, port, database, username, password, ssl | + | sqlserver | host, port, database, username, password, driver? | + | supabase | host, port, database, username, password, ssl_mode | + | bigquery | project_id, dataset_id, location?, service_account_json | + | snowflake | account, warehouse, database, schema?, username, password, role? | + + Sensitive fields (`password`, `service_account_json`) are encrypted + at rest using Fernet symmetric encryption. + """ + + name: str = Field(..., description="Display name for this connection.", examples=["Production DB"]) + db_type: DbType = Field(..., description="Type of the database engine.", examples=["postgres"]) + credentials: Dict[str, Any] = Field( + ..., + description="Connection credentials. Shape depends on db_type. See schema descriptions above.", + examples=[ + { + "host": "db.example.com", + "port": 5432, + "database": "mydb", + "username": "admin", + "password": "s3cr3t!", + "ssl_mode": "require", + } + ], + ) + + +class DatabaseClientUpdate(BaseModel): + """ + Payload to update an existing database connection. + + All fields are optional — only provided fields will be updated. + If `credentials` is provided, it replaces the entire credentials object + and sensitive fields are re-encrypted. + """ + + name: Optional[str] = Field(None, description="New display name for this connection.", examples=["Staging DB"]) + credentials: Optional[Dict[str, Any]] = Field( + None, + description="Updated credentials object. Replaces existing credentials entirely if provided.", + examples=[{"host": "new-host.example.com", "port": 5432, "database": "mydb", "username": "admin", "password": "n3wP@ss!", "ssl_mode": "require"}], + ) + status: Optional[Literal["active", "inactive"]] = Field( + None, + description="Set to 'inactive' to soft-disable the connection without deleting it.", + examples=["inactive"], + ) + + +class DatabaseClientResponse(BaseModel): + """ + Database connection record returned by the API. + + Credentials are **never** included in the response for security reasons. + """ + + id: str = Field(..., description="Unique identifier of the database connection.") + user_id: str = Field(..., description="ID of the user who owns this connection.") + name: str = Field(..., description="Display name of the connection.") + db_type: str = Field(..., description="Database engine type.") + status: str = Field(..., description="Connection status: 'active' or 'inactive'.") + created_at: datetime = Field(..., description="Timestamp when the connection was registered.") + updated_at: Optional[datetime] = Field(None, description="Timestamp of the last update, if any.") + + model_config = {"from_attributes": True} + + +# --------------------------------------------------------------------------- +# Supported DB types registry +# --------------------------------------------------------------------------- + +_DB_TYPES: List[Dict[str, Any]] = [ + { + "db_type": "postgres", + "display_name": "PostgreSQL", + "logo": "postgres", + "status": "active", + "message": None, + "fields": [ + {"name": "host", "type": "string", "required": True, "default": None, "description": "Hostname or IP address"}, + {"name": "port", "type": "integer", "required": False, "default": 5432, "description": "Port number"}, + {"name": "database", "type": "string", "required": True, "default": None, "description": "Database name"}, + {"name": "username", "type": "string", "required": True, "default": None, "description": "Database username"}, + {"name": "password", "type": "string", "required": True, "default": None, "description": "Database password", "sensitive": True}, + {"name": "ssl_mode", "type": "select", "required": False, "default": "require", "description": "SSL mode", "options": ["disable", "require", "verify-ca", "verify-full"]}, + ], + }, + { + "db_type": "mysql", + "display_name": "MySQL", + "logo": "mysql", + "status": "active", + "message": None, + "fields": [ + {"name": "host", "type": "string", "required": True, "default": None, "description": "Hostname or IP address"}, + {"name": "port", "type": "integer", "required": False, "default": 3306, "description": "Port number"}, + {"name": "database", "type": "string", "required": True, "default": None, "description": "Database name"}, + {"name": "username", "type": "string", "required": True, "default": None, "description": "Database username"}, + {"name": "password", "type": "string", "required": True, "default": None, "description": "Database password", "sensitive": True}, + {"name": "ssl", "type": "boolean", "required": False, "default": True, "description": "Enable SSL"}, + ], + }, + { + "db_type": "supabase", + "display_name": "Supabase", + "logo": "supabase", + "status": "active", + "message": None, + "fields": [ + {"name": "host", "type": "string", "required": True, "default": None, "description": "Supabase database host"}, + {"name": "port", "type": "integer", "required": False, "default": 5432, "description": "Port number (5432 direct, 6543 pooler)"}, + {"name": "database", "type": "string", "required": False, "default": "postgres", "description": "Database name"}, + {"name": "username", "type": "string", "required": True, "default": None, "description": "Database user"}, + {"name": "password", "type": "string", "required": True, "default": None, "description": "Database password", "sensitive": True}, + {"name": "ssl_mode", "type": "select", "required": False, "default": "require", "description": "SSL mode", "options": ["require", "verify-ca", "verify-full"]}, + ], + }, + { + "db_type": "sqlserver", + "display_name": "SQL Server", + "logo": "sqlserver", + "status": "inactive", + "message": "Coming soon", + "fields": [ + {"name": "host", "type": "string", "required": True, "default": None, "description": "Hostname or IP address"}, + {"name": "port", "type": "integer", "required": False, "default": 1433, "description": "Port number"}, + {"name": "database", "type": "string", "required": True, "default": None, "description": "Database name"}, + {"name": "username", "type": "string", "required": True, "default": None, "description": "Database username"}, + {"name": "password", "type": "string", "required": True, "default": None, "description": "Database password", "sensitive": True}, + {"name": "driver", "type": "string", "required": False, "default": None, "description": "ODBC driver name"}, + ], + }, + { + "db_type": "bigquery", + "display_name": "BigQuery", + "logo": "bigquery", + "status": "inactive", + "message": "Coming soon", + "fields": [ + {"name": "project_id", "type": "string", "required": True, "default": None, "description": "GCP project ID"}, + {"name": "dataset_id", "type": "string", "required": True, "default": None, "description": "BigQuery dataset name"}, + {"name": "location", "type": "string", "required": False, "default": "US", "description": "Dataset location/region"}, + {"name": "service_account_json", "type": "string", "required": True, "default": None, "description": "GCP Service Account key JSON", "sensitive": True}, + ], + }, + { + "db_type": "snowflake", + "display_name": "Snowflake", + "logo": "snowflake", + "status": "inactive", + "message": "Coming soon", + "fields": [ + {"name": "account", "type": "string", "required": True, "default": None, "description": "Snowflake account identifier"}, + {"name": "warehouse", "type": "string", "required": True, "default": None, "description": "Virtual warehouse name"}, + {"name": "database", "type": "string", "required": True, "default": None, "description": "Database name"}, + {"name": "schema", "type": "string", "required": False, "default": "PUBLIC", "description": "Schema name"}, + {"name": "username", "type": "string", "required": True, "default": None, "description": "Snowflake username"}, + {"name": "password", "type": "string", "required": True, "default": None, "description": "Snowflake password", "sensitive": True}, + {"name": "role", "type": "string", "required": False, "default": None, "description": "Snowflake role"}, + ], + }, +] + + +# --------------------------------------------------------------------------- +# Endpoints +# --------------------------------------------------------------------------- + + +@router.get( + "/database-clients/dbtypes", + summary="List supported database types", + response_description="All database types supported by DataEyond with their connection parameters.", +) +async def list_db_types(): + """ + Return every database type DataEyond can connect to, along with the + credential fields the frontend should render, a logo filename, and + an active/inactive status with an optional message. + """ + return _DB_TYPES + + +@router.post( + "/database-clients", + response_model=DatabaseClientResponse, + status_code=status.HTTP_201_CREATED, + summary="Register a new database connection", + response_description="The newly created database connection record (credentials excluded).", + responses={ + 201: {"description": "Connection registered successfully."}, + 422: {"description": "Validation error — check the credentials shape for the given db_type."}, + 500: {"description": "Internal server error."}, + }, +) +@limiter.limit("10/minute") +@log_execution(logger) +async def create_database_client( + request: Request, + payload: DatabaseClientCreate, + user_id: str = Query(..., description="ID of the user registering the connection."), + db: AsyncSession = Depends(get_db), +): + """ + Register a new external database connection for a user. + + The `credentials` object must match the shape for the chosen `db_type` + (see **CredentialSchemas** in the schema section below for exact fields). + Sensitive fields (`password`, `service_account_json`) are encrypted + before being persisted — they are never returned in any response. + """ + try: + client = await database_client_service.create( + db=db, + user_id=user_id, + name=payload.name, + db_type=payload.db_type, + credentials=payload.credentials, + ) + return DatabaseClientResponse.model_validate(client) + except Exception as e: + logger.error(f"Failed to create database client for user {user_id}", error=str(e)) + raise HTTPException( + status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, + detail=f"Failed to create database client: {str(e)}", + ) + + +@router.get( + "/database-clients/{user_id}", + response_model=List[DatabaseClientResponse], + summary="List all database connections for a user", + response_description="List of database connections (credentials excluded).", + responses={ + 200: {"description": "Returns an empty list if the user has no connections."}, + }, +) +@log_execution(logger) +async def list_database_clients( + user_id: str, + db: AsyncSession = Depends(get_db), +): + """ + Return all database connections registered by the specified user, + ordered by creation date (newest first). + + Credentials are never included in the response. + """ + clients = await database_client_service.get_user_clients(db, user_id) + return [DatabaseClientResponse.model_validate(c) for c in clients] + + +@router.get( + "/database-clients/{user_id}/{client_id}", + response_model=DatabaseClientResponse, + summary="Get a single database connection", + response_description="Database connection detail (credentials excluded).", + responses={ + 404: {"description": "Connection not found."}, + 403: {"description": "Access denied — user_id does not own this connection."}, + }, +) +@log_execution(logger) +async def get_database_client( + user_id: str, + client_id: str, + db: AsyncSession = Depends(get_db), +): + """ + Return the detail of a single database connection. + + Returns **403** if the `user_id` in the path does not match the owner + of the requested connection. + """ + client = await database_client_service.get(db, client_id) + + if not client: + raise HTTPException(status_code=404, detail="Database client not found") + + if client.user_id != user_id: + raise HTTPException(status_code=403, detail="Access denied") + + return DatabaseClientResponse.model_validate(client) + + +@router.put( + "/database-clients/{client_id}", + response_model=DatabaseClientResponse, + summary="Update a database connection", + response_description="Updated database connection record (credentials excluded).", + responses={ + 404: {"description": "Connection not found."}, + 403: {"description": "Access denied — user_id does not own this connection."}, + }, +) +@log_execution(logger) +async def update_database_client( + client_id: str, + payload: DatabaseClientUpdate, + user_id: str = Query(..., description="ID of the user who owns the connection."), + db: AsyncSession = Depends(get_db), +): + """ + Update an existing database connection. + + Only fields present in the request body are updated. + If `credentials` is provided it **replaces** the entire credentials object + and sensitive fields are re-encrypted automatically. + """ + client = await database_client_service.get(db, client_id) + + if not client: + raise HTTPException(status_code=404, detail="Database client not found") + + if client.user_id != user_id: + raise HTTPException(status_code=403, detail="Access denied") + + updated = await database_client_service.update( + db=db, + client_id=client_id, + name=payload.name, + credentials=payload.credentials, + status=payload.status, + ) + return DatabaseClientResponse.model_validate(updated) + + +@router.delete( + "/database-clients/{client_id}", + status_code=status.HTTP_200_OK, + summary="Delete a database connection", + responses={ + 200: {"description": "Connection deleted successfully."}, + 404: {"description": "Connection not found."}, + 403: {"description": "Access denied — user_id does not own this connection."}, + }, +) +@log_execution(logger) +async def delete_database_client( + client_id: str, + user_id: str = Query(..., description="ID of the user who owns the connection."), + db: AsyncSession = Depends(get_db), +): + """ + Permanently delete a database connection. + + This action is irreversible. The stored credentials are also removed. + """ + client = await database_client_service.get(db, client_id) + + if not client: + raise HTTPException(status_code=404, detail="Database client not found") + + if client.user_id != user_id: + raise HTTPException(status_code=403, detail="Access denied") + + await database_client_service.delete(db, client_id) + return {"status": "success", "message": "Database client deleted successfully"} + + +@router.post( + "/database-clients/{client_id}/ingest", + status_code=status.HTTP_200_OK, + summary="Ingest schema from a registered database into the vector store", + response_description="Count of chunks ingested.", + responses={ + 200: {"description": "Ingestion completed successfully."}, + 403: {"description": "Access denied — user_id does not own this connection."}, + 404: {"description": "Connection not found."}, + 501: {"description": "The connection's db_type is not yet supported by the pipeline."}, + 500: {"description": "Ingestion failed (connection error, profiling error, etc.)."}, + }, +) +@limiter.limit("5/minute") +@log_execution(logger) +async def ingest_database_client( + request: Request, + client_id: str, + user_id: str = Query(..., description="ID of the user who owns the connection."), + db: AsyncSession = Depends(get_db), +): + """ + Decrypt the stored credentials, connect to the user's database, introspect + its schema, profile each column, embed the descriptions, and store them in + the shared PGVector collection tagged with `source_type="database"`. + + Chunks become retrievable via the same retriever used for document chunks. + """ + client = await database_client_service.get(db, client_id) + + if not client: + raise HTTPException(status_code=404, detail="Database client not found") + + if client.user_id != user_id: + raise HTTPException(status_code=403, detail="Access denied") + + if client.status != "active": + raise HTTPException( + status_code=status.HTTP_409_CONFLICT, + detail="Cannot ingest from an inactive database connection.", + ) + + try: + creds = decrypt_credentials_dict(client.credentials) + with db_pipeline_service.engine_scope( + db_type=client.db_type, + credentials=creds, + ) as engine: + total = await db_pipeline_service.run(user_id=user_id, client_id=client_id, engine=engine) + except NotImplementedError as e: + raise HTTPException(status_code=status.HTTP_501_NOT_IMPLEMENTED, detail=str(e)) + except Exception as e: + logger.error( + f"Ingestion failed for client {client_id}", user_id=user_id, error=str(e) + ) + raise HTTPException( + status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, + detail=f"Ingestion failed: {e}", + ) + + return {"status": "success", "client_id": client_id, "chunks_ingested": total} diff --git a/src/api/v1/document.py b/src/api/v1/document.py index 9e7c3429b72ca50318dbaceee56b55e5d5046125..92380bb2c20b74fb4cabeb3d5704ae8a29e33477 100644 --- a/src/api/v1/document.py +++ b/src/api/v1/document.py @@ -1,21 +1,20 @@ """Document management API endpoints.""" - -from fastapi import APIRouter, Depends, HTTPException, Request, UploadFile, File, status + +from fastapi import APIRouter, Depends, HTTPException, Request, UploadFile, File from sqlalchemy.ext.asyncio import AsyncSession from src.db.postgres.connection import get_db from src.document.document_service import document_service -from src.knowledge.processing_service import knowledge_processor -from src.storage.az_blob.az_blob import blob_storage from src.middlewares.logging import get_logger, log_execution from src.middlewares.rate_limit import limiter +from src.pipeline.document_pipeline.document_pipeline import document_pipeline from pydantic import BaseModel from typing import List - + logger = get_logger("document_api") - + router = APIRouter(prefix="/api/v1", tags=["Documents"]) - - + + class DocumentResponse(BaseModel): id: str filename: str @@ -23,6 +22,27 @@ class DocumentResponse(BaseModel): file_size: int file_type: str created_at: str + + +# NOTE: Keep in sync with SUPPORTED_FILE_TYPES in src/pipeline/document_pipeline/document_pipeline.py +_DOC_TYPES = [ + {"doc_type": "pdf", "max_size": 10, "status": "active", "message": None}, + {"doc_type": "docx", "max_size": 10, "status": "active", "message": None}, + {"doc_type": "txt", "max_size": 10, "status": "active", "message": None}, + {"doc_type": "csv", "max_size": 10, "status": "active", "message": None}, + {"doc_type": "xlsx", "max_size": 10, "status": "active", "message": None}, +] + + +@router.get( + "/documents/doctypes", + summary="List supported document types", + response_description="All document types supported by DataEyond with their size limits and status.", +) +@log_execution(logger) +async def get_document_types(): + """Return every document type DataEyond can process, with max file size and active/inactive status.""" + return {"status": "success", "data": _DOC_TYPES} @router.get("/documents/{user_id}", response_model=List[DocumentResponse]) @@ -44,8 +64,8 @@ async def list_documents( ) for doc in documents ] - - + + @router.post("/document/upload") @limiter.limit("10/minute") @log_execution(logger) @@ -57,57 +77,12 @@ async def upload_document( ): """Upload a document.""" if not user_id: - raise HTTPException( - status_code=400, - detail="user_id is required" - ) - - try: - # Read file content - content = await file.read() - file_size = len(content) - - # Get file type - filename = file.filename - file_type = filename.split('.')[-1].lower() if '.' in filename else 'txt' - - if file_type not in ['pdf', 'docx', 'txt']: - raise HTTPException( - status_code=400, - detail="Unsupported file type. Supported: pdf, docx, txt" - ) - - # Upload to blob storage - blob_name = await blob_storage.upload_file(content, filename, user_id) - - # Create document record - document = await document_service.create_document( - db=db, - user_id=user_id, - filename=filename, - blob_name=blob_name, - file_size=file_size, - file_type=file_type - ) - - return { - "status": "success", - "message": "Document uploaded successfully", - "data": { - "id": document.id, - "filename": document.filename, - "status": document.status - } - } - - except Exception as e: - logger.error(f"Upload failed for user {user_id}", error=str(e)) - raise HTTPException( - status_code=500, - detail=f"Upload failed: {str(e)}" - ) - - + raise HTTPException(status_code=400, detail="user_id is required") + + data = await document_pipeline.upload(file, user_id, db) + return {"status": "success", "message": "Document uploaded successfully", "data": data} + + @router.delete("/document/delete") @log_execution(logger) async def delete_document( @@ -116,31 +91,10 @@ async def delete_document( db: AsyncSession = Depends(get_db) ): """Delete a document.""" - document = await document_service.get_document(db, document_id) - - if not document: - raise HTTPException( - status_code=404, - detail="Document not found" - ) - - if document.user_id != user_id: - raise HTTPException( - status_code=403, - detail="Access denied" - ) - - success = await document_service.delete_document(db, document_id) - - if success: - return {"status": "success", "message": "Document deleted successfully"} - else: - raise HTTPException( - status_code=500, - detail="Failed to delete document" - ) - - + await document_pipeline.delete(document_id, user_id, db) + return {"status": "success", "message": "Document deleted successfully"} + + @router.post("/document/process") @log_execution(logger) async def process_document( @@ -149,45 +103,6 @@ async def process_document( db: AsyncSession = Depends(get_db) ): """Process document and ingest to vector index.""" - document = await document_service.get_document(db, document_id) - - if not document: - raise HTTPException( - status_code=404, - detail="Document not found" - ) - - if document.user_id != user_id: - raise HTTPException( - status_code=403, - detail="Access denied" - ) - - try: - # Update status to processing - await document_service.update_document_status(db, document_id, "processing") - - # Process document - chunks_count = await knowledge_processor.process_document(document, db) - - # Update status to completed - await document_service.update_document_status(db, document_id, "completed") - - return { - "status": "success", - "message": "Document processed successfully", - "data": { - "document_id": document_id, - "chunks_processed": chunks_count - } - } - - except Exception as e: - logger.error(f"Processing failed for document {document_id}", error=str(e)) - await document_service.update_document_status( - db, document_id, "failed", str(e) - ) - raise HTTPException( - status_code=500, - detail=f"Processing failed: {str(e)}" - ) + data = await document_pipeline.process(document_id, user_id, db) + return {"status": "success", "message": "Document processed successfully", "data": data} + \ No newline at end of file diff --git a/src/config/agents/system_prompt.md b/src/config/agents/system_prompt.md index 16ac4392cf64e0d3474e44faa7d82c1651aa9a7b..6c1d11fc7f630465f803bff1ecf0eba836da879b 100644 --- a/src/config/agents/system_prompt.md +++ b/src/config/agents/system_prompt.md @@ -3,8 +3,7 @@ You are a helpful AI assistant with access to user's uploaded documents. Your ro 1. Answer questions based on provided document context 2. If no relevant information is found in documents, acknowledge this honestly 3. Be concise and direct in your responses -4. Cite source documents when providing information -5. If user's question is unclear, ask for clarification +4. If user's question is unclear, ask for clarification When document context is provided: - Use information from documents to answer accurately diff --git a/src/config/settings.py b/src/config/settings.py index 59a29e5c18d8e12700e523295c2699c0d39c5604..9aa2af4225efdd0ca24ddc6fd443d54837fba0fa 100644 --- a/src/config/settings.py +++ b/src/config/settings.py @@ -61,6 +61,11 @@ class Settings(BaseSettings): # Bcrypt salt (for users - existing) emarcal_bcrypt_salt: str = Field(alias="emarcal__bcrypt__salt", default="") + # DB credential encryption (Fernet key for user-registered database creds) + dataeyond_db_credential_key: str = Field( + alias="dataeyond__db__credential__key" + ) + # Singleton instance settings = Settings() diff --git a/src/database_client/database_client_service.py b/src/database_client/database_client_service.py new file mode 100644 index 0000000000000000000000000000000000000000..ebfdef2ee9c511e12d37e892a241d9fe872e9f63 --- /dev/null +++ b/src/database_client/database_client_service.py @@ -0,0 +1,164 @@ +"""Service for managing user-registered external database connections.""" + +import uuid +from typing import List, Optional + +from sqlalchemy import delete, select +from sqlalchemy.ext.asyncio import AsyncSession + +from src.db.postgres.models import DatabaseClient +from src.middlewares.logging import get_logger +from src.utils.db_credential_encryption import ( + decrypt_credentials_dict, + encrypt_credentials_dict, +) + +logger = get_logger("database_client_service") + + + # Fields that identify the same physical database per db_type. +_CONNECTION_IDENTITY_KEYS: dict[str, tuple[str, ...]] = { + "postgres": ("host", "port", "database"), + "supabase": ("host", "port", "database"), + "mysql": ("host", "port", "database"), + "sqlserver": ("host", "port", "database"), + "bigquery": ("project_id", "dataset_id"), + "snowflake": ("account", "warehouse", "database"), +} + + +class DatabaseClientService: + """Service for managing user-registered external database connections.""" + + async def _find_duplicate( + self, + db: AsyncSession, + user_id: str, + db_type: str, + credentials: dict, + ) -> Optional[DatabaseClient]: + """Return an existing client if it points to the same physical database.""" + identity_keys = _CONNECTION_IDENTITY_KEYS.get(db_type, ()) + if not identity_keys: + return None + + result = await db.execute( + select(DatabaseClient).where( + DatabaseClient.user_id == user_id, + DatabaseClient.db_type == db_type, + ) + ) + for existing in result.scalars().all(): + decrypted = decrypt_credentials_dict(existing.credentials) + if all( + decrypted.get(k) == credentials.get(k) for k in identity_keys + ): + return existing + return None + + async def create( + self, + db: AsyncSession, + user_id: str, + name: str, + db_type: str, + credentials: dict, + ) -> DatabaseClient: + """Register a new database client connection. + + If a connection to the same physical database already exists for this + user, the existing record is returned instead of creating a duplicate. + Credentials are encrypted before being stored. + """ + existing = await self._find_duplicate(db, user_id, db_type, credentials) + if existing: + logger.info( + f"Duplicate connection detected, returning existing client {existing.id}" + ) + return existing + + client = DatabaseClient( + id=str(uuid.uuid4()), + user_id=user_id, + name=name, + db_type=db_type, + credentials=encrypt_credentials_dict(credentials), + status="active", + ) + db.add(client) + await db.commit() + await db.refresh(client) + logger.info(f"Created database client {client.id} for user {user_id}") + return client + + async def get_user_clients( + self, + db: AsyncSession, + user_id: str, + ) -> List[DatabaseClient]: + """Return all active and inactive database clients for a user.""" + result = await db.execute( + select(DatabaseClient) + .where(DatabaseClient.user_id == user_id) + .order_by(DatabaseClient.created_at.desc()) + ) + return result.scalars().all() + + async def get( + self, + db: AsyncSession, + client_id: str, + ) -> Optional[DatabaseClient]: + """Return a single database client by its ID.""" + result = await db.execute( + select(DatabaseClient).where(DatabaseClient.id == client_id) + ) + return result.scalars().first() + + async def update( + self, + db: AsyncSession, + client_id: str, + name: Optional[str] = None, + credentials: Optional[dict] = None, + status: Optional[str] = None, + ) -> Optional[DatabaseClient]: + """Update an existing database client connection. + + Only non-None fields are updated. + Credentials are re-encrypted if provided. + """ + client = await self.get(db, client_id) + if not client: + return None + + if name is not None: + client.name = name + if credentials is not None: + client.credentials = encrypt_credentials_dict(credentials) + if status is not None: + client.status = status + + await db.commit() + await db.refresh(client) + logger.info(f"Updated database client {client_id}") + return client + + async def delete( + self, + db: AsyncSession, + client_id: str, + ) -> bool: + """Permanently delete a database client connection.""" + result = await db.execute( + delete(DatabaseClient).where(DatabaseClient.id == client_id) + ) + await db.commit() + deleted = result.rowcount > 0 + if deleted: + logger.info(f"Deleted database client {client_id}") + return deleted + + +database_client_service = DatabaseClientService() + \ No newline at end of file diff --git a/src/db/postgres/init_db.py b/src/db/postgres/init_db.py index b4713f8909a3349e807b8f75e68d8cc81095e733..04b9832d5b7ffe55a832b1d4ae9fe42f933869ff 100644 --- a/src/db/postgres/init_db.py +++ b/src/db/postgres/init_db.py @@ -2,7 +2,14 @@ from sqlalchemy import text from src.db.postgres.connection import engine, Base -from src.db.postgres.models import Document, Room, ChatMessage, User, MessageSource +from src.db.postgres.models import ( + ChatMessage, + DatabaseClient, + Document, + MessageSource, + Room, + User, +) async def init_db(): @@ -21,3 +28,38 @@ async def init_db(): await conn.execute(text( "ALTER TABLE rooms ADD COLUMN IF NOT EXISTS status VARCHAR NOT NULL DEFAULT 'active'" )) + + # HNSW index for fast approximate vector similarity search + # Only created when the embedding column has explicit dimensions (HNSW requirement). + # atttypmod > 0 means the vector column was created with a dimension (e.g. vector(1536)); + # atttypmod = -1 means dimensionless — HNSW would fail with "column does not have dimensions". + await conn.execute(text(""" + DO $$ + BEGIN + IF EXISTS ( + SELECT FROM pg_attribute a + JOIN pg_class c ON c.oid = a.attrelid + WHERE c.relname = 'langchain_pg_embedding' + AND a.attname = 'embedding' + AND a.atttypmod > 0 + ) THEN + CREATE INDEX IF NOT EXISTS idx_langchain_pg_embedding_hnsw + ON langchain_pg_embedding USING hnsw (embedding vector_cosine_ops); + END IF; + END $$ + """)) + + # GIN index for FTS on schema chunks — only created if table exists + # (langchain_pg_embedding is created by PGVector on first use, not by create_all) + await conn.execute(text(""" + DO $$ + BEGIN + IF EXISTS ( + SELECT FROM information_schema.tables + WHERE table_name = 'langchain_pg_embedding' + ) THEN + CREATE INDEX IF NOT EXISTS idx_langchain_pg_embedding_fts + ON langchain_pg_embedding USING GIN (to_tsvector('english', document)); + END IF; + END $$ + """)) diff --git a/src/db/postgres/models.py b/src/db/postgres/models.py index 3aa25f87fa18a76b249e9bbdeec32a7eac2a9ace..62c542bbffc22be43653ea22a096746ac982e1a4 100644 --- a/src/db/postgres/models.py +++ b/src/db/postgres/models.py @@ -4,6 +4,7 @@ from uuid import uuid4 from sqlalchemy import Column, String, DateTime, Text, Integer, ForeignKey from sqlalchemy.orm import relationship from sqlalchemy.sql import func +from sqlalchemy.dialects.postgresql import JSONB from src.db.postgres.connection import Base @@ -81,3 +82,18 @@ class MessageSource(Base): created_at = Column(DateTime(timezone=True), server_default=func.now()) message = relationship("ChatMessage", back_populates="sources") + + +class DatabaseClient(Base): + """User-registered external database connections.""" + __tablename__ = "databases" + + id = Column(String, primary_key=True, default=lambda: str(uuid4())) + user_id = Column(String, nullable=False, index=True) + name = Column(String, nullable=False) # display name, e.g. "Prod DB" + db_type = Column(String, nullable=False) # postgres|mysql|sqlserver|supabase|bigquery|snowflake + credentials = Column(JSONB, nullable=False) # per-type JSON; sensitive fields Fernet-encrypted + status = Column(String, nullable=False, default="active") # active | inactive + created_at = Column(DateTime(timezone=True), server_default=func.now()) + updated_at = Column(DateTime(timezone=True), onupdate=func.now()) + \ No newline at end of file diff --git a/src/document/document_service.py b/src/document/document_service.py index 0ed32b6a5a8b7de7514d29bc8d15cf6029630432..e8f641e0b0d7b1071e0e58845a0a7a224cdeef7e 100644 --- a/src/document/document_service.py +++ b/src/document/document_service.py @@ -1,8 +1,9 @@ """Service for managing documents.""" from sqlalchemy.ext.asyncio import AsyncSession -from sqlalchemy import select, delete +from sqlalchemy import select, delete, text from src.db.postgres.models import Document +from src.db.postgres.connection import _pgvector_engine from src.storage.az_blob.az_blob import blob_storage from src.middlewares.logging import get_logger from typing import List, Optional @@ -77,6 +78,21 @@ class DocumentService: # Delete from blob storage await blob_storage.delete_file(document.blob_name) + # Delete vector embeddings from pgvector (scoped to user + collection to avoid cross-user over-delete) + async with _pgvector_engine.begin() as conn: + await conn.execute( + text(""" + DELETE FROM langchain_pg_embedding + WHERE cmetadata->>'user_id' = :user_id + AND cmetadata->>'source_type' = 'document' + AND cmetadata->'data'->>'document_id' = :doc_id + AND collection_id = ( + SELECT uuid FROM langchain_pg_collection WHERE name = 'document_embeddings' + ) + """), + {"user_id": document.user_id, "doc_id": document_id}, + ) + # Delete from database await db.execute( delete(Document).where(Document.id == document_id) diff --git a/src/knowledge/parquet_service.py b/src/knowledge/parquet_service.py new file mode 100644 index 0000000000000000000000000000000000000000..1a47cc903f94c70b0d95f0813620570dc36de08e --- /dev/null +++ b/src/knowledge/parquet_service.py @@ -0,0 +1,77 @@ +"""Parquet service — converts, uploads, downloads, and deletes Parquet files for CSV/XLSX. + +Parquet files are stored in Azure Blob alongside the original document using +a deterministic naming convention based on document_id: + + CSV: {user_id}/{document_id}.parquet + XLSX sheet: {user_id}/{document_id}__{safe_sheet_name}.parquet + +This allows tabular.py to construct the correct blob name at retrieval time +without needing to store it separately, and allows document_pipeline.py to +delete all Parquet files for a document using a prefix delete. +""" + +import io + +import pandas as pd + +from src.middlewares.logging import get_logger +from src.storage.az_blob.az_blob import blob_storage + +logger = get_logger("parquet_service") + + +def _safe_sheet_name(sheet_name: str) -> str: + return sheet_name.replace("/", "_").replace(" ", "_").replace("\\", "_") + + +def parquet_blob_name(user_id: str, document_id: str, sheet_name: str | None = None) -> str: + """Construct deterministic Parquet blob name.""" + if sheet_name: + return f"{user_id}/{document_id}__{_safe_sheet_name(sheet_name)}.parquet" + return f"{user_id}/{document_id}.parquet" + + +def _to_parquet_bytes(df: pd.DataFrame) -> bytes: + buf = io.BytesIO() + df.to_parquet(buf, index=False) + return buf.getvalue() + + +async def upload_parquet( + df: pd.DataFrame, + user_id: str, + document_id: str, + sheet_name: str | None = None, +) -> str: + """Convert DataFrame to Parquet and upload to Azure Blob. Returns blob_name.""" + blob_name = parquet_blob_name(user_id, document_id, sheet_name) + parquet_bytes = _to_parquet_bytes(df) + await blob_storage.upload_bytes(parquet_bytes, blob_name) + logger.info(f"Uploaded Parquet {blob_name} ({len(parquet_bytes)} bytes)") + return blob_name + + +async def download_parquet( + user_id: str, + document_id: str, + sheet_name: str | None = None, +) -> pd.DataFrame: + """Download Parquet from Azure Blob and return as DataFrame.""" + blob_name = parquet_blob_name(user_id, document_id, sheet_name) + content = await blob_storage.download_file(blob_name) + df = pd.read_parquet(io.BytesIO(content)) + logger.info(f"Downloaded Parquet {blob_name}: {len(df)} rows, {len(df.columns)} columns") + return df + + +async def delete_document_parquets(user_id: str, document_id: str) -> int: + """Delete all Parquet files for a document (CSV = 1 file, XLSX = one per sheet). + + Uses prefix delete: {user_id}/{document_id} matches all Parquet variants + for this document without touching the original blob (which uses a random UUID name). + """ + prefix = f"{user_id}/{document_id}" + deleted = await blob_storage.delete_blobs_with_prefix(prefix) + logger.info(f"Deleted {deleted} Parquet file(s) for document {document_id}") + return deleted diff --git a/src/knowledge/processing_service.py b/src/knowledge/processing_service.py index b9d7fbf2391078523129bbdb2493e3b0aa37a9f2..1293c1027e7a84e5c67a7735fe803f0c552d4ff0 100644 --- a/src/knowledge/processing_service.py +++ b/src/knowledge/processing_service.py @@ -5,16 +5,20 @@ from langchain_core.documents import Document as LangChainDocument from src.db.postgres.vector_store import get_vector_store from src.storage.az_blob.az_blob import blob_storage from src.db.postgres.models import Document as DBDocument -from src.config.settings import settings from sqlalchemy.ext.asyncio import AsyncSession from src.middlewares.logging import get_logger -from azure.ai.documentintelligence.aio import DocumentIntelligenceClient -from azure.core.credentials import AzureKeyCredential +from src.knowledge.parquet_service import upload_parquet from typing import List -import pypdf +from datetime import datetime, timezone, timedelta +import sys import docx +import pandas as pd +import pytesseract +from pdf2image import convert_from_bytes from io import BytesIO +_JAKARTA_TZ = timezone(timedelta(hours=7)) + logger = get_logger("knowledge_processing") @@ -40,6 +44,10 @@ class KnowledgeProcessingService: if db_doc.file_type == "pdf": documents = await self._build_pdf_documents(content, db_doc) + elif db_doc.file_type == "csv": + documents = await self._build_csv_documents(content, db_doc) + elif db_doc.file_type == "xlsx": + documents = await self._build_excel_documents(content, db_doc) else: text = self._extract_text(content, db_doc.file_type) if not text.strip(): @@ -49,10 +57,15 @@ class KnowledgeProcessingService: LangChainDocument( page_content=chunk, metadata={ - "document_id": db_doc.id, "user_id": db_doc.user_id, - "filename": db_doc.filename, - "chunk_index": i, + "source_type": "document", + "updated_at": datetime.now(_JAKARTA_TZ).isoformat(), + "data": { + "document_id": db_doc.id, + "filename": db_doc.filename, + "file_type": db_doc.file_type, + "chunk_index": i, + }, } ) for i, chunk in enumerate(chunks) @@ -74,62 +87,107 @@ class KnowledgeProcessingService: async def _build_pdf_documents( self, content: bytes, db_doc: DBDocument ) -> List[LangChainDocument]: - """Build LangChain documents from PDF with page_label metadata. - - Uses Azure Document Intelligence (per-page) when credentials are present, - falls back to pypdf (also per-page) otherwise. - """ + """Build LangChain documents from PDF with page_label metadata using Tesseract OCR.""" documents: List[LangChainDocument] = [] - if settings.azureai_docintel_endpoint and settings.azureai_docintel_key: - async with DocumentIntelligenceClient( - endpoint=settings.azureai_docintel_endpoint, - credential=AzureKeyCredential(settings.azureai_docintel_key), - ) as client: - poller = await client.begin_analyze_document( - model_id="prebuilt-read", - body=BytesIO(content), - content_type="application/pdf", - ) - result = await poller.result() - logger.info(f"Azure DI extracted {len(result.pages or [])} pages") - - for page in result.pages or []: - page_text = "\n".join( - line.content for line in (page.lines or []) - ) - if not page_text.strip(): - continue - for chunk in self.text_splitter.split_text(page_text): - documents.append(LangChainDocument( - page_content=chunk, - metadata={ - "document_id": db_doc.id, - "user_id": db_doc.user_id, - "filename": db_doc.filename, - "chunk_index": len(documents), - "page_label": page.page_number, - } - )) - else: - logger.warning("Azure DI not configured, using pypdf") - pdf_reader = pypdf.PdfReader(BytesIO(content)) - for page_num, page in enumerate(pdf_reader.pages, start=1): - page_text = page.extract_text() or "" - if not page_text.strip(): - continue - for chunk in self.text_splitter.split_text(page_text): - documents.append(LangChainDocument( - page_content=chunk, - metadata={ + poppler_path = None + if sys.platform == "win32": + pytesseract.pytesseract.tesseract_cmd = r"./software/Tesseract-OCR/tesseract.exe" + poppler_path = "./software/poppler-24.08.0/Library/bin" + + images = convert_from_bytes(content, poppler_path=poppler_path) + logger.info(f"Tesseract OCR: converting {len(images)} pages") + + for page_num, image in enumerate(images, start=1): + page_text = pytesseract.image_to_string(image) + if not page_text.strip(): + continue + for chunk in self.text_splitter.split_text(page_text): + documents.append(LangChainDocument( + page_content=chunk, + metadata={ + "user_id": db_doc.user_id, + "source_type": "document", + "updated_at": datetime.now(_JAKARTA_TZ).isoformat(), + "data": { "document_id": db_doc.id, - "user_id": db_doc.user_id, "filename": db_doc.filename, + "file_type": db_doc.file_type, "chunk_index": len(documents), "page_label": page_num, - } - )) + }, + } + )) + + return documents + + def _profile_dataframe( + self, df: pd.DataFrame, source_name: str, db_doc: DBDocument + ) -> List[LangChainDocument]: + """Profile each column of a dataframe → one chunk per column.""" + documents = [] + row_count = len(df) + + for col_name in df.columns: + col = df[col_name] + is_numeric = pd.api.types.is_numeric_dtype(col) + null_count = int(col.isnull().sum()) + distinct_count = int(col.nunique()) + distinct_ratio = distinct_count / row_count if row_count > 0 else 0 + + text = f"Source: {source_name} ({row_count} rows)\n" + text += f"Column: {col_name} ({col.dtype})\n" + text += f"Null count: {null_count}\n" + text += f"Distinct count: {distinct_count} ({distinct_ratio:.1%})\n" + + if is_numeric: + text += f"Min: {col.min()}, Max: {col.max()}\n" + text += f"Mean: {col.mean():.4f}, Median: {col.median():.4f}\n" + + if 0 < distinct_ratio <= 0.05: + top_values = col.value_counts().head(10) + top_str = ", ".join(f"{v} ({c})" for v, c in top_values.items()) + text += f"Top values: {top_str}\n" + + text += f"Sample values: {col.dropna().head(5).tolist()}" + + documents.append(LangChainDocument( + page_content=text, + metadata={ + "user_id": db_doc.user_id, + "source_type": "document", + "updated_at": datetime.now(_JAKARTA_TZ).isoformat(), + "data": { + "document_id": db_doc.id, + "filename": db_doc.filename, + "file_type": db_doc.file_type, + "source": source_name, + "column_name": col_name, + "column_type": str(col.dtype), + } + } + )) + return documents + async def _build_csv_documents(self, content: bytes, db_doc: DBDocument) -> List[LangChainDocument]: + """Profile each column of a CSV file and upload Parquet to Azure Blob.""" + df = pd.read_csv(BytesIO(content)) + await upload_parquet(df, db_doc.user_id, db_doc.id) + logger.info(f"Uploaded Parquet for CSV {db_doc.id}") + return self._profile_dataframe(df, db_doc.filename, db_doc) + + async def _build_excel_documents(self, content: bytes, db_doc: DBDocument) -> List[LangChainDocument]: + """Profile each column of every sheet in an Excel file and upload one Parquet per sheet.""" + sheets = pd.read_excel(BytesIO(content), sheet_name=None) + documents = [] + for sheet_name, df in sheets.items(): + source_name = f"{db_doc.filename} / sheet: {sheet_name}" + docs = self._profile_dataframe(df, source_name, db_doc) + for doc in docs: + doc.metadata["data"]["sheet_name"] = sheet_name + documents.extend(docs) + await upload_parquet(df, db_doc.user_id, db_doc.id, sheet_name) + logger.info(f"Uploaded Parquet for sheet '{sheet_name}' of {db_doc.id}") return documents def _extract_text(self, content: bytes, file_type: str) -> str: diff --git a/src/models/credentials.py b/src/models/credentials.py new file mode 100644 index 0000000000000000000000000000000000000000..01eb0f9ed3c717587cd92ce37104ca7dcd4b2084 --- /dev/null +++ b/src/models/credentials.py @@ -0,0 +1,164 @@ +"""Pydantic credential schemas for user-registered external databases. + +Imported by the `/database-clients` API router (`src/api/v1/db_client.py`) and, +via `DbType`, by the db pipeline connector (`src/pipeline/db_pipeline/connector.py`). + +Sensitive fields (`password`, `service_account_json`) are Fernet-encrypted by +the database_client service before being stored in the JSONB column; these +schemas describe the plaintext wire format, not the stored shape. +""" + +from typing import Literal, Optional, Union + +from pydantic import BaseModel, Field + +# --------------------------------------------------------------------------- +# Supported DB types +# --------------------------------------------------------------------------- + +DbType = Literal["postgres", "mysql", "sqlserver", "supabase", "bigquery", "snowflake"] + + +# --------------------------------------------------------------------------- +# Typed credential schemas per DB type +# --------------------------------------------------------------------------- + + +class PostgresCredentials(BaseModel): + """Connection credentials for PostgreSQL.""" + + host: str = Field(..., description="Hostname or IP address of the PostgreSQL server.", examples=["db.example.com"]) + port: int = Field(5432, description="Port number (default: 5432).", examples=[5432]) + database: str = Field(..., description="Name of the target database.", examples=["mydb"]) + username: str = Field(..., description="Database username.", examples=["admin"]) + password: str = Field(..., description="Database password. Will be encrypted at rest.", examples=["s3cr3t!"]) + ssl_mode: Literal["disable", "require", "verify-ca", "verify-full"] = Field( + "require", + description="SSL mode for the connection.", + examples=["require"], + ) + + +class MysqlCredentials(BaseModel): + """Connection credentials for MySQL.""" + + host: str = Field(..., description="Hostname or IP address of the MySQL server.", examples=["db.example.com"]) + port: int = Field(3306, description="Port number (default: 3306).", examples=[3306]) + database: str = Field(..., description="Name of the target database.", examples=["mydb"]) + username: str = Field(..., description="Database username.", examples=["admin"]) + password: str = Field(..., description="Database password. Will be encrypted at rest.", examples=["s3cr3t!"]) + ssl: bool = Field(True, description="Enable SSL for the connection.", examples=[True]) + + +class SqlServerCredentials(BaseModel): + """Connection credentials for Microsoft SQL Server.""" + + host: str = Field(..., description="Hostname or IP address of the SQL Server.", examples=["sqlserver.example.com"]) + port: int = Field(1433, description="Port number (default: 1433).", examples=[1433]) + database: str = Field(..., description="Name of the target database.", examples=["mydb"]) + username: str = Field(..., description="Database username.", examples=["sa"]) + password: str = Field(..., description="Database password. Will be encrypted at rest.", examples=["s3cr3t!"]) + driver: Optional[str] = Field( + None, + description="ODBC driver name. Leave empty to use the default driver.", + examples=["ODBC Driver 17 for SQL Server"], + ) + + +class SupabaseCredentials(BaseModel): + """Connection credentials for Supabase (PostgreSQL-based). + + Use the connection string details from your Supabase project dashboard + under Settings > Database. + """ + + host: str = Field( + ..., + description="Supabase database host (e.g. db..supabase.co, or the pooler host).", + examples=["db.xxxx.supabase.co"], + ) + port: int = Field( + 5432, + description="Port number. Use 5432 for direct connection, 6543 for the connection pooler.", + examples=[5432], + ) + database: str = Field("postgres", description="Database name (always 'postgres' for Supabase).", examples=["postgres"]) + username: str = Field( + ..., + description="Database user. Use 'postgres' for direct connection, or 'postgres.' for the pooler.", + examples=["postgres"], + ) + password: str = Field(..., description="Database password (set in Supabase dashboard). Will be encrypted at rest.", examples=["s3cr3t!"]) + ssl_mode: Literal["require", "verify-ca", "verify-full"] = Field( + "require", + description="SSL mode. Supabase always requires SSL.", + examples=["require"], + ) + + +class BigQueryCredentials(BaseModel): + """Connection credentials for Google BigQuery. + + Requires a GCP Service Account with at least BigQuery Data Viewer + and BigQuery Job User roles. + """ + + project_id: str = Field(..., description="GCP project ID where the BigQuery dataset resides.", examples=["my-gcp-project"]) + dataset_id: str = Field(..., description="BigQuery dataset name to connect to.", examples=["my_dataset"]) + location: Optional[str] = Field( + "US", + description="Dataset location/region (default: US).", + examples=["US", "EU", "asia-southeast1"], + ) + service_account_json: str = Field( + ..., + description=( + "Full content of the GCP Service Account key JSON file as a string. " + "Will be encrypted at rest." + ), + examples=['{"type":"service_account","project_id":"my-gcp-project","private_key_id":"..."}'], + ) + + +class SnowflakeCredentials(BaseModel): + """Connection credentials for Snowflake.""" + + account: str = Field( + ..., + description="Snowflake account identifier, including region if applicable (e.g. myaccount.us-east-1).", + examples=["myaccount.us-east-1"], + ) + warehouse: str = Field(..., description="Name of the virtual warehouse to use for queries.", examples=["COMPUTE_WH"]) + database: str = Field(..., description="Name of the target Snowflake database.", examples=["MY_DB"]) + db_schema: Optional[str] = Field("PUBLIC", alias="schema", description="Schema name (default: PUBLIC).", examples=["PUBLIC"]) + username: str = Field(..., description="Snowflake username.", examples=["admin"]) + password: str = Field(..., description="Snowflake password. Will be encrypted at rest.", examples=["s3cr3t!"]) + role: Optional[str] = Field(None, description="Snowflake role to assume for the session.", examples=["SYSADMIN"]) + + +# Union of all credential shapes — reserved for future typed validation on +# DatabaseClientCreate.credentials (currently Dict[str, Any]). Kept exported +# so downstream code can reference it without re-declaring. +CredentialsUnion = Union[ + PostgresCredentials, + MysqlCredentials, + SqlServerCredentials, + SupabaseCredentials, + BigQueryCredentials, + SnowflakeCredentials, +] + + +# Doc-only helper: surfaces per-type credential shapes in the Swagger "Schemas" +# panel so API consumers can discover the exact field set for each db_type. +# Not referenced by any endpoint — importing it in db_client.py is enough for +# FastAPI's OpenAPI generator to pick it up. +class CredentialSchemas(BaseModel): + """Reference schemas for `credentials` per `db_type` (Swagger-only, not used by endpoints).""" + + postgres: PostgresCredentials + mysql: MysqlCredentials + sqlserver: SqlServerCredentials + supabase: SupabaseCredentials + bigquery: BigQueryCredentials + snowflake: SnowflakeCredentials diff --git a/src/models/sql_query.py b/src/models/sql_query.py new file mode 100644 index 0000000000000000000000000000000000000000..d479875fbf44a5d0166d2471d710ad89f19f8db2 --- /dev/null +++ b/src/models/sql_query.py @@ -0,0 +1,8 @@ +"""Structured output model for LLM-generated SQL queries.""" + +from pydantic import BaseModel, Field + + +class SQLQuery(BaseModel): + sql: str = Field(description="A single SQL SELECT statement. No markdown, no explanation inline.") + reasoning: str = Field(description="One sentence: what this query answers.") diff --git a/src/models/structured_output.py b/src/models/structured_output.py index 31ba32ad7e72098cb4be452ca5d05cd9474ffc78..eaade243c4e451d76c0fcc0e963ae4f14ee155b1 100644 --- a/src/models/structured_output.py +++ b/src/models/structured_output.py @@ -19,3 +19,7 @@ class IntentClassification(BaseModel): default="", description="Direct response if no search needed (for greetings, etc.)" ) + source_hint: str = Field( + default="both", + description="Which sources to search: 'document' (PDF/DOCX/TXT), 'schema' (DB/CSV/XLSX), or 'both'" + ) diff --git a/src/pipeline/db_pipeline/__init__.py b/src/pipeline/db_pipeline/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..0ba26e75a2664a43b346a216599827176a5f354b --- /dev/null +++ b/src/pipeline/db_pipeline/__init__.py @@ -0,0 +1,3 @@ +from src.pipeline.db_pipeline.db_pipeline_service import DbPipelineService, db_pipeline_service + +__all__ = ["DbPipelineService", "db_pipeline_service"] diff --git a/src/pipeline/db_pipeline/db_pipeline_service.py b/src/pipeline/db_pipeline/db_pipeline_service.py new file mode 100644 index 0000000000000000000000000000000000000000..83bfefc5a69bcd86b1ed5520e2314466be5ff635 --- /dev/null +++ b/src/pipeline/db_pipeline/db_pipeline_service.py @@ -0,0 +1,232 @@ +"""Service for ingesting a user's external database into the vector store. + +End-to-end flow: connect -> introspect schema -> profile columns -> build text +-> embed + store in the shared PGVector collection (tagged with +`source_type="database"`, retrievable via the same retriever used for docs). + +Sync DB work (SQLAlchemy inspect, pandas read_sql) runs in a threadpool; +async vector writes stay on the event loop. +""" + +import asyncio +from contextlib import contextmanager +from datetime import datetime, timezone, timedelta +from typing import Any, Iterator, Optional + +from langchain_core.documents import Document as LangChainDocument +from sqlalchemy import URL, create_engine, text +from sqlalchemy.engine import Engine + +from src.db.postgres.connection import _pgvector_engine +from src.db.postgres.vector_store import get_vector_store +from src.middlewares.logging import get_logger +from src.models.credentials import DbType +from src.pipeline.db_pipeline.extractor import get_schema, profile_table + +logger = get_logger("db_pipeline") + + +class DbPipelineService: + """End-to-end DB ingestion: connect -> introspect -> profile -> embed -> store.""" + + def connect(self, db_type: DbType, credentials: dict[str, Any]) -> Engine: + """Build a SQLAlchemy engine for the user's database. + + `credentials` is the plaintext dict matching the per-type schema in + `src/models/credentials.py`. BigQuery/Snowflake auth models differ + from host/port/user/pass, so every shape flows through one dict. + + Optional driver imports (snowflake-sqlalchemy, json for BigQuery) are + done lazily so an env missing one driver doesn't break module import. + """ + logger.info("connecting to user db", db_type=db_type) + + if db_type in ("postgres", "supabase"): + query = ( + {"sslmode": credentials["ssl_mode"]} if credentials.get("ssl_mode") else {} + ) + url = URL.create( + drivername="postgresql+psycopg2", + username=credentials["username"], + password=credentials["password"], + host=credentials["host"], + port=credentials["port"], + database=credentials["database"], + query=query, + ) + return create_engine(url) + + if db_type == "mysql": + url = URL.create( + drivername="mysql+pymysql", + username=credentials["username"], + password=credentials["password"], + host=credentials["host"], + port=credentials["port"], + database=credentials["database"], + ) + # pymysql only activates TLS when the `ssl` dict is truthy + # (empty dict is falsy and silently disables TLS). Use system- + # default CAs via certifi + hostname verification — required by + # managed MySQL providers like TiDB Cloud / PlanetScale / Aiven. + if credentials.get("ssl", True): + import certifi + + connect_args = { + "ssl": { + "ca": certifi.where(), + "check_hostname": True, + } + } + else: + connect_args = {} + return create_engine(url, connect_args=connect_args) + + if db_type == "sqlserver": + # `driver` applies to pyodbc only; we ship pymssql. Accept-and-ignore + # keeps the credential schema stable. + if credentials.get("driver"): + logger.info( + "sqlserver driver hint ignored (using pymssql)", + driver=credentials["driver"], + ) + url = URL.create( + drivername="mssql+pymssql", + username=credentials["username"], + password=credentials["password"], + host=credentials["host"], + port=credentials["port"], + database=credentials["database"], + ) + return create_engine(url) + + if db_type == "bigquery": + import json + + sa_info = json.loads(credentials["service_account_json"]) + # sqlalchemy-bigquery URL shape: bigquery:/// + url = f"bigquery://{credentials['project_id']}/{credentials['dataset_id']}" + return create_engine( + url, + credentials_info=sa_info, + location=credentials.get("location", "US"), + ) + + if db_type == "snowflake": + from snowflake.sqlalchemy import URL as SnowflakeURL + + url = SnowflakeURL( + account=credentials["account"], + user=credentials["username"], + password=credentials["password"], + database=credentials["database"], + schema=( + credentials.get("db_schema") + or credentials.get("schema") + or "PUBLIC" + ), + warehouse=credentials["warehouse"], + role=credentials.get("role") or "", + ) + return create_engine(url) + + raise NotImplementedError(f"Unsupported db_type: {db_type}") + + @contextmanager + def engine_scope( + self, db_type: DbType, credentials: dict[str, Any] + ) -> Iterator[Engine]: + """Yield a connected Engine and dispose its pool on exit. + + API callers should prefer this over raw `connect(...)` so user DB + connection pools do not leak between pipeline runs. + """ + engine = self.connect(db_type, credentials) + try: + yield engine + finally: + engine.dispose() + + def _to_document( + self, user_id: str, client_id: str, table_name: str, entry: dict, updated_at: str + ) -> LangChainDocument: + col = entry["col"] + return LangChainDocument( + page_content=entry["text"], + metadata={ + "user_id": user_id, + "source_type": "database", + "database_client_id": client_id, + "updated_at": updated_at, + "data": { + "table_name": table_name, + "column_name": col["name"], + "column_type": col["type"], + "is_primary_key": col.get("is_primary_key", False), + "foreign_key": col.get("foreign_key"), + }, + }, + ) + + async def run( + self, + user_id: str, + client_id: str, + engine: Engine, + exclude_tables: Optional[frozenset[str]] = None, + ) -> int: + """Introspect the user's DB, profile columns, embed descriptions, store in PGVector. + + Returns: + Total number of chunks ingested. + """ + vector_store = get_vector_store() + logger.info("db pipeline start", user_id=user_id) + + # Profile first — if this fails, old embeddings are untouched + schema = await asyncio.to_thread(get_schema, engine, exclude_tables) + + updated_at = datetime.now(timezone(timedelta(hours=7))).isoformat() + all_docs: list = [] + for table_name, columns in schema.items(): + logger.info("profiling table", table=table_name, columns=len(columns)) + entries = await asyncio.to_thread(profile_table, engine, table_name, columns) + docs = [self._to_document(user_id, client_id, table_name, e, updated_at) for e in entries] + all_docs.extend(docs) + logger.info("profiled table", table=table_name, count=len(docs)) + + # Insert new chunks first; only delete stale chunks after the insert succeeds. + # Prevents data loss if aadd_documents fails — old embeddings stay queryable + # until they're proven replaceable. Stale rows are identified by an older + # updated_at than this run. + if not all_docs: + logger.warning( + "no docs produced from schema; skipping delete to preserve existing embeddings", + user_id=user_id, + client_id=client_id, + ) + return 0 + + await vector_store.aadd_documents(all_docs) + + async with _pgvector_engine.begin() as conn: + result = await conn.execute( + text( + "DELETE FROM langchain_pg_embedding " + "WHERE cmetadata->>'user_id' = :user_id " + " AND cmetadata->>'source_type' = 'database' " + " AND cmetadata->>'database_client_id' = :client_id " + " AND cmetadata->>'updated_at' < :updated_at " + " AND collection_id = (" + " SELECT uuid FROM langchain_pg_collection WHERE name = 'document_embeddings'" + " )" + ), + {"user_id": user_id, "client_id": client_id, "updated_at": updated_at}, + ) + logger.info("cleared stale db embeddings", user_id=user_id, deleted=result.rowcount) + + logger.info("db pipeline complete", user_id=user_id, total=len(all_docs)) + return len(all_docs) + + +db_pipeline_service = DbPipelineService() diff --git a/src/pipeline/db_pipeline/extractor.py b/src/pipeline/db_pipeline/extractor.py new file mode 100644 index 0000000000000000000000000000000000000000..82745a3c5474eb9531164959b7eaf77674f8ae31 --- /dev/null +++ b/src/pipeline/db_pipeline/extractor.py @@ -0,0 +1,213 @@ +"""Schema introspection and per-column profiling for a user's database. + +Identifiers (table/column names) are quoted via the engine's dialect preparer, +which handles reserved words, mixed case, and embedded quotes correctly across +dialects. Values used in SQL come from SQLAlchemy inspection of the DB itself, +not user input. +""" + +from typing import Optional + +import pandas as pd +from sqlalchemy import Float, Integer, Numeric, inspect +from sqlalchemy.engine import Engine + +from src.middlewares.logging import get_logger + +logger = get_logger("db_extractor") + +TOP_VALUES_THRESHOLD = 0.05 # show top values if distinct_ratio <= 5% + +# Dialects where PERCENTILE_CONT(...) WITHIN GROUP is supported as an aggregate. +# MySQL has no percentile aggregate; BigQuery has PERCENTILE_CONT only as an +# analytic (window) function — both drop median and keep min/max/mean. +_MEDIAN_DIALECTS = frozenset({"postgresql", "mssql", "snowflake"}) + + +def _supports_median(engine: Engine) -> bool: + return engine.dialect.name in _MEDIAN_DIALECTS + + +def _head_query( + engine: Engine, + select_clause: str, + from_clause: str, + n: int, + order_by: str = "", +) -> str: + """LIMIT/TOP-equivalent head query for the engine's dialect.""" + if engine.dialect.name == "mssql": + return f"SELECT TOP {n} {select_clause} FROM {from_clause} {order_by}".strip() + return f"SELECT {select_clause} FROM {from_clause} {order_by} LIMIT {n}".strip() + + +def _qi(engine: Engine, name: str) -> str: + """Dialect-correct identifier quoting (schema.table also handled if dotted).""" + preparer = engine.dialect.identifier_preparer + if "." in name: + schema, _, table = name.partition(".") + return f"{preparer.quote(schema)}.{preparer.quote(table)}" + return preparer.quote(name) + + +def get_schema( + engine: Engine, exclude_tables: Optional[frozenset[str]] = None +) -> dict[str, list[dict]]: + """Returns {table_name: [{name, type, is_numeric, is_primary_key, foreign_key}, ...]}.""" + exclude = exclude_tables or frozenset() + inspector = inspect(engine) + schema = {} + for table_name in inspector.get_table_names(): + if table_name in exclude: + continue + + pk = inspector.get_pk_constraint(table_name) + pk_cols = set(pk["constrained_columns"]) if pk else set() + + fk_map = {} + for fk in inspector.get_foreign_keys(table_name): + for col, ref_col in zip(fk["constrained_columns"], fk["referred_columns"]): + fk_map[col] = f"{fk['referred_table']}.{ref_col}" + + cols = inspector.get_columns(table_name) + schema[table_name] = [ + { + "name": c["name"], + "type": str(c["type"]), + "is_numeric": isinstance(c["type"], (Integer, Numeric, Float)), + "is_primary_key": c["name"] in pk_cols, + "foreign_key": fk_map.get(c["name"]), + } + for c in cols + ] + logger.info("extracted schema", table_count=len(schema)) + return schema + + +def get_row_count(engine: Engine, table_name: str) -> int: + return pd.read_sql(f"SELECT COUNT(*) FROM {_qi(engine, table_name)}", engine).iloc[0, 0] + + +def profile_column( + engine: Engine, + table_name: str, + col_name: str, + is_numeric: bool, + row_count: int, +) -> dict: + """Returns null_count, distinct_count, min/max, top values, and sample values.""" + if row_count == 0: + return { + "null_count": 0, + "distinct_count": 0, + "distinct_ratio": 0.0, + "sample_values": [], + } + + qt = _qi(engine, table_name) + qc = _qi(engine, col_name) + + # Combined stats query: null_count, distinct_count, and min/max (if numeric). + # One round-trip instead of two. + select_cols = [ + f"COUNT(*) - COUNT({qc}) AS nulls", + f"COUNT(DISTINCT {qc}) AS distincts", + ] + if is_numeric: + select_cols.append(f"MIN({qc}) AS min_val") + select_cols.append(f"MAX({qc}) AS max_val") + select_cols.append(f"AVG({qc}) AS mean_val") + if _supports_median(engine): + select_cols.append( + f"PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY {qc}) AS median_val" + ) + stats = pd.read_sql(f"SELECT {', '.join(select_cols)} FROM {qt}", engine) + + null_count = int(stats.iloc[0]["nulls"]) + distinct_count = int(stats.iloc[0]["distincts"]) + distinct_ratio = distinct_count / row_count if row_count > 0 else 0 + + profile = { + "null_count": null_count, + "distinct_count": distinct_count, + "distinct_ratio": round(distinct_ratio, 4), + } + + if is_numeric: + profile["min"] = stats.iloc[0]["min_val"] + profile["max"] = stats.iloc[0]["max_val"] + profile["mean"] = stats.iloc[0]["mean_val"] + if _supports_median(engine): + profile["median"] = stats.iloc[0]["median_val"] + + if 0 < distinct_ratio <= TOP_VALUES_THRESHOLD: + top_sql = _head_query( + engine, + select_clause=f"{qc}, COUNT(*) AS cnt", + from_clause=f"{qt} GROUP BY {qc}", + n=10, + order_by="ORDER BY cnt DESC", + ) + top = pd.read_sql(top_sql, engine) + profile["top_values"] = list(zip(top.iloc[:, 0].tolist(), top["cnt"].tolist())) + + sample = pd.read_sql(_head_query(engine, qc, qt, 5), engine) + profile["sample_values"] = sample.iloc[:, 0].tolist() + + return profile + + +def profile_table(engine: Engine, table_name: str, columns: list[dict]) -> list[dict]: + """Profile every column in a table. Returns [{col, profile, text}, ...]. + + Per-column errors are logged and skipped so one bad column doesn't abort + the whole table. + """ + row_count = get_row_count(engine, table_name) + if row_count == 0: + logger.info("skipping empty table", table=table_name) + return [] + + results = [] + for col in columns: + try: + profile = profile_column( + engine, table_name, col["name"], col.get("is_numeric", False), row_count + ) + text = build_text(table_name, row_count, col, profile) + results.append({"col": col, "profile": profile, "text": text}) + except Exception as e: + logger.error( + "column profiling failed", + table=table_name, + column=col["name"], + error=str(e), + ) + continue + return results + + +def build_text(table_name: str, row_count: int, col: dict, profile: dict) -> str: + col_name = col["name"] + col_type = col["type"] + + key_label = "" + if col.get("is_primary_key"): + key_label = " [PRIMARY KEY]" + elif col.get("foreign_key"): + key_label = f" [FK -> {col['foreign_key']}]" + + text = f"Table: {table_name} ({row_count} rows)\n" + text += f"Column: {col_name} ({col_type}){key_label}\n" + text += f"Null count: {profile['null_count']}\n" + text += f"Distinct count: {profile['distinct_count']} ({profile['distinct_ratio']:.1%})\n" + if "min" in profile: + text += f"Min: {profile['min']}, Max: {profile['max']}\n" + text += f"Mean: {profile['mean']}\n" + if profile.get("median") is not None: + text += f"Median: {profile['median']}\n" + if "top_values" in profile: + top_str = ", ".join(f"{v} ({c})" for v, c in profile["top_values"]) + text += f"Top values: {top_str}\n" + text += f"Sample values: {profile['sample_values']}" + return text diff --git a/src/pipeline/document_pipeline/__init__.py b/src/pipeline/document_pipeline/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/pipeline/document_pipeline/document_pipeline.py b/src/pipeline/document_pipeline/document_pipeline.py new file mode 100644 index 0000000000000000000000000000000000000000..3bce9e0eb26f392b5a10016820daba095b24a2a0 --- /dev/null +++ b/src/pipeline/document_pipeline/document_pipeline.py @@ -0,0 +1,92 @@ +"""Document upload and processing pipeline.""" + +from fastapi import HTTPException, UploadFile +from sqlalchemy.ext.asyncio import AsyncSession + +from src.document.document_service import document_service +from src.knowledge.processing_service import knowledge_processor +from src.knowledge.parquet_service import delete_document_parquets +from src.middlewares.logging import get_logger +from src.storage.az_blob.az_blob import blob_storage + +logger = get_logger("document_pipeline") + +# NOTE: Keep in sync with _DOC_TYPES in src/api/v1/document.py +SUPPORTED_FILE_TYPES = ["pdf", "docx", "txt", "csv", "xlsx"] +MAX_FILE_SIZE_BYTES = 10 * 1024 * 1024 # 10 MB + + +class DocumentPipeline: + """Orchestrates the full document upload, process, and delete flows.""" + + async def upload(self, file: UploadFile, user_id: str, db: AsyncSession) -> dict: + """Validate → upload to blob → save to DB.""" + content = await file.read() + file_type = file.filename.split(".")[-1].lower() if "." in file.filename else "txt" + + if len(content) > MAX_FILE_SIZE_BYTES: + raise HTTPException( + status_code=400, + detail="File size exceeds maximum allowed size of 10 MB.", + ) + + if file_type not in SUPPORTED_FILE_TYPES: + raise HTTPException( + status_code=400, + detail=f"Unsupported file type. Supported: {', '.join(SUPPORTED_FILE_TYPES)}", + ) + + blob_name = await blob_storage.upload_file(content, file.filename, user_id) + document = await document_service.create_document( + db=db, + user_id=user_id, + filename=file.filename, + blob_name=blob_name, + file_size=len(content), + file_type=file_type, + ) + + logger.info(f"Uploaded document {document.id} for user {user_id}") + return {"id": document.id, "filename": document.filename, "status": document.status} + + async def process(self, document_id: str, user_id: str, db: AsyncSession) -> dict: + """Validate ownership → extract text → chunk → ingest to vector store.""" + document = await document_service.get_document(db, document_id) + + if not document: + raise HTTPException(status_code=404, detail="Document not found") + if document.user_id != user_id: + raise HTTPException(status_code=403, detail="Access denied") + + try: + await document_service.update_document_status(db, document_id, "processing") + chunks_count = await knowledge_processor.process_document(document, db) + await document_service.update_document_status(db, document_id, "completed") + + logger.info(f"Processed document {document_id}: {chunks_count} chunks") + return {"document_id": document_id, "chunks_processed": chunks_count} + + except Exception as e: + logger.error(f"Processing failed for document {document_id}", error=str(e)) + await document_service.update_document_status(db, document_id, "failed", str(e)) + raise HTTPException(status_code=500, detail=f"Processing failed: {str(e)}") + + async def delete(self, document_id: str, user_id: str, db: AsyncSession) -> dict: + """Validate ownership → delete from blob and DB.""" + document = await document_service.get_document(db, document_id) + + if not document: + raise HTTPException(status_code=404, detail="Document not found") + if document.user_id != user_id: + raise HTTPException(status_code=403, detail="Access denied") + + await document_service.delete_document(db, document_id) + + if document.file_type in ("csv", "xlsx"): + await delete_document_parquets(user_id, document_id) + + logger.info(f"Deleted document {document_id} for user {user_id}") + return {"document_id": document_id} + + +document_pipeline = DocumentPipeline() diff --git a/src/query/__init__.py b/src/query/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/query/base.py b/src/query/base.py new file mode 100644 index 0000000000000000000000000000000000000000..223b90cbb63965c3b3f22f1caf4aa0e489b3a5fa --- /dev/null +++ b/src/query/base.py @@ -0,0 +1,32 @@ +"""Shared contract for query executors.""" + +from abc import ABC, abstractmethod +from dataclasses import dataclass, field + +from sqlalchemy.ext.asyncio import AsyncSession + +from src.rag.base import RetrievalResult + + +@dataclass +class QueryResult: + source_type: str # "database" or "document" + source_id: str # database_client_id or document_id + table_or_file: str + columns: list[str] + rows: list[dict] + row_count: int + metadata: dict = field(default_factory=dict) + # metadata should include "column_types": {"col_name": "dtype"} when available + + +class BaseExecutor(ABC): + @abstractmethod + async def execute( + self, + results: list[RetrievalResult], + user_id: str, + db: AsyncSession, + question: str, + limit: int = 100, + ) -> list[QueryResult]: ... diff --git a/src/query/executors/__init__.py b/src/query/executors/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/query/executors/db_executor.py b/src/query/executors/db_executor.py new file mode 100644 index 0000000000000000000000000000000000000000..fbca73cfbeaf1282996c876a608488e4483e6c7a --- /dev/null +++ b/src/query/executors/db_executor.py @@ -0,0 +1,409 @@ +"""Executor for registered database sources (source_type="database"). + +Flow per (client_id, question): + 1. Collect all relevant (table_name, column_name) pairs from retrieval results. + 2. Fetch the FULL schema for those tables from PGVector (not just top-k columns). + 3. Build a schema context string and send to LLM → structured SQLQuery output. + 4. Validate via sqlglot: SELECT-only, schema-grounded, LIMIT enforced. + 5. Execute on the user's DB via engine_scope + asyncio.to_thread. + 6. Return QueryResult per client_id (may span multiple tables via JOINs). + +Supported db_types: postgres, supabase, mysql. +Other types are skipped with a warning — they do not raise. +""" + +import asyncio +from collections import defaultdict +from typing import Any + +import sqlglot +import sqlglot.expressions as exp +import tiktoken +from langchain_core.prompts import ChatPromptTemplate +from langchain_openai import AzureChatOpenAI +from sqlalchemy import text +from sqlalchemy.ext.asyncio import AsyncSession + +from src.config.settings import settings +from src.database_client.database_client_service import database_client_service +from src.db.postgres.connection import _pgvector_engine +from src.middlewares.logging import get_logger +from src.models.sql_query import SQLQuery +from src.pipeline.db_pipeline import db_pipeline_service +from src.query.base import BaseExecutor, QueryResult +from src.rag.base import RetrievalResult +from src.utils.db_credential_encryption import decrypt_credentials_dict + +logger = get_logger("db_executor") + +_enc = tiktoken.get_encoding("cl100k_base") + +_SUPPORTED_DB_TYPES = {"postgres", "supabase", "mysql"} +_MAX_RETRIES = 3 +_MAX_LIMIT = 500 + +_SQL_SYSTEM_PROMPT = """\ +You are a SQL data analyst working with a user's database. +Generate a single SQL SELECT statement that answers the user's question. + +Database dialect: {dialect} + +Rules: +- ONLY reference tables and columns listed in the schema below. Do not invent names. +- Always include a LIMIT clause (max {limit}). +- Do not use DELETE, UPDATE, INSERT, DROP, TRUNCATE, ALTER, CREATE, or any DDL. +- Prefer explicit JOINs over subqueries when combining tables. +- For aggregations, always alias the result column (e.g. COUNT(*) AS order_count). +- For date filtering, use dialect-appropriate functions ({dialect} syntax). + +Schema: +{schema} + +{error_section}""" + + +class DbExecutor(BaseExecutor): + def __init__(self) -> None: + self._llm = AzureChatOpenAI( + azure_deployment=settings.azureai_deployment_name_4o, + openai_api_version=settings.azureai_api_version_4o, + azure_endpoint=settings.azureai_endpoint_url_4o, + api_key=settings.azureai_api_key_4o, + temperature=0, + ) + self._prompt = ChatPromptTemplate.from_messages([ + ("system", _SQL_SYSTEM_PROMPT), + ("human", "{question}"), + ]) + self._chain = self._prompt | self._llm.with_structured_output(SQLQuery) + + # ------------------------------------------------------------------ + # Public interface + # ------------------------------------------------------------------ + + async def execute( + self, + results: list[RetrievalResult], + user_id: str, + db: AsyncSession, + question: str, + limit: int = 100, + ) -> list[QueryResult]: + db_results = [r for r in results if r.source_type == "database"] + if not db_results: + return [] + + # Group by client_id — one SQL generation + execution pass per client + by_client: dict[str, list[RetrievalResult]] = defaultdict(list) + for r in db_results: + client_id = r.metadata.get("database_client_id", "") + if client_id: + by_client[client_id].append(r) + else: + logger.warning("db result missing database_client_id, skipping") + + query_results: list[QueryResult] = [] + for client_id, client_results in by_client.items(): + try: + qr = await self._execute_for_client(client_id, client_results, user_id, db, question, limit) + if qr: + query_results.append(qr) + except Exception as e: + logger.error("db executor failed for client", client_id=client_id, error=str(e)) + + return query_results + + # ------------------------------------------------------------------ + # Per-client execution + # ------------------------------------------------------------------ + + async def _execute_for_client( + self, + client_id: str, + results: list[RetrievalResult], + user_id: str, + db: AsyncSession, + question: str, + limit: int, + ) -> QueryResult | None: + client = await database_client_service.get(db, client_id) + if not client: + logger.warning("database client not found", client_id=client_id) + return None + if client.user_id != user_id: + logger.warning("client ownership mismatch", client_id=client_id) + return None + if client.db_type not in _SUPPORTED_DB_TYPES: + logger.warning("unsupported db_type for query execution", db_type=client.db_type) + return None + + # Distinct table names from retrieval results, expanded via FK relationships + table_names = list({ + r.metadata.get("data", {}).get("table_name") + for r in results + if r.metadata.get("data", {}).get("table_name") + }) + table_names = await self._expand_with_fk_tables(client_id, user_id, table_names) + + full_schema = await self._fetch_full_schema(client_id, table_names, user_id) + if not full_schema: + logger.warning("no schema found in vector store", client_id=client_id, tables=table_names) + return None + + schema_ctx = self._build_schema_context(full_schema) + capped_limit = min(limit, _MAX_LIMIT) + dialect = client.db_type + + # SQL generation with retry + validated_sql: str | None = None + prev_error: str = "" + prev_reasoning: str = "" + for attempt in range(_MAX_RETRIES): + if prev_error: + error_section = ( + f"Previous attempt reasoning: {prev_reasoning}\n" + f"Previous attempt failed: {prev_error}\n" + "Fix the issue above." + ) + else: + error_section = "" + try: + prompt_text = schema_ctx + error_section + question + input_tokens = len(_enc.encode(prompt_text)) + logger.info("sql generation input tokens", attempt=attempt + 1, tokens=input_tokens) + + result: SQLQuery = await self._chain.ainvoke({ + "schema": schema_ctx, + "dialect": dialect, + "limit": capped_limit, + "error_section": error_section, + "question": question, + }) + sql = result.sql.strip() + validation_error = self._validate(sql, full_schema, capped_limit) + if validation_error: + prev_error = validation_error + prev_reasoning = result.reasoning + logger.warning("sql validation failed", attempt=attempt + 1, error=validation_error) + continue + validated_sql = self._enforce_limit(sql, capped_limit) + output_tokens = len(_enc.encode(result.sql)) + len(_enc.encode(result.reasoning)) + logger.info( + "sql generated", + attempt=attempt + 1, + input_tokens=input_tokens, + output_tokens=output_tokens, + total_tokens=input_tokens + output_tokens, + reasoning=result.reasoning, + ) + break + except Exception as e: + prev_error = str(e) + logger.warning("sql generation error", attempt=attempt + 1, error=prev_error) + + if not validated_sql: + logger.error("sql generation failed after retries", client_id=client_id) + return None + + # Execute on user's DB + creds = decrypt_credentials_dict(client.credentials) + with db_pipeline_service.engine_scope(client.db_type, creds) as engine: + rows = await asyncio.to_thread(self._run_sql, engine, validated_sql) + + column_types = { + col["name"]: col["type"] + for cols in full_schema.values() + for col in cols + } + columns = list(rows[0].keys()) if rows else [] + + return QueryResult( + source_type="database", + source_id=client_id, + table_or_file=", ".join(table_names), + columns=columns, + rows=rows, + row_count=len(rows), + metadata={ + "db_type": client.db_type, + "client_name": client.name, + "sql": validated_sql, + "column_types": {c: column_types.get(c, "unknown") for c in columns}, + }, + ) + + # ------------------------------------------------------------------ + # Schema helpers + # ------------------------------------------------------------------ + + async def _expand_with_fk_tables( + self, + client_id: str, + user_id: str, + table_names: list[str], + ) -> list[str]: + """Expand table_names with any tables FK-referenced by the retrieved tables. + + Prevents SQL generation failures when a required table (e.g. orders) wasn't + returned by retrieval but is referenced via FK from a table that was + (e.g. order_items.order_id -> orders.id). + """ + if not table_names: + return table_names + + placeholders = ", ".join(f":t{i}" for i in range(len(table_names))) + sql = text(f""" + SELECT DISTINCT lpe.cmetadata->'data'->>'foreign_key' AS fk + FROM langchain_pg_embedding lpe + JOIN langchain_pg_collection lpc ON lpe.collection_id = lpc.uuid + WHERE lpc.name = 'document_embeddings' + AND lpe.cmetadata->>'user_id' = :user_id + AND lpe.cmetadata->>'source_type' = 'database' + AND lpe.cmetadata->>'database_client_id' = :client_id + AND lpe.cmetadata->'data'->>'table_name' IN ({placeholders}) + AND lpe.cmetadata->'data'->>'foreign_key' IS NOT NULL + """) + + params: dict[str, Any] = {"user_id": user_id, "client_id": client_id} + for i, name in enumerate(table_names): + params[f"t{i}"] = name + + async with _pgvector_engine.connect() as conn: + result = await conn.execute(sql, params) + rows = result.fetchall() + + expanded = set(table_names) + for row in rows: + fk = row.fk # format: "referred_table.referred_column" + if fk: + referred_table = fk.split(".")[0] + expanded.add(referred_table) + + if expanded != set(table_names): + logger.info( + "expanded tables via FK", + original=sorted(table_names), + expanded=sorted(expanded), + ) + + return list(expanded) + + async def _fetch_full_schema( + self, + client_id: str, + table_names: list[str], + user_id: str, + ) -> dict[str, list[dict[str, Any]]]: + """Fetch ALL column chunks for the given tables from PGVector. + + Returns {table_name: [{"name": ..., "type": ..., "is_primary_key": ..., + "foreign_key": ..., "content": ...}]} + """ + placeholders = ", ".join(f":t{i}" for i in range(len(table_names))) + sql = text(f""" + SELECT lpe.cmetadata, lpe.document + FROM langchain_pg_embedding lpe + JOIN langchain_pg_collection lpc ON lpe.collection_id = lpc.uuid + WHERE lpc.name = 'document_embeddings' + AND lpe.cmetadata->>'user_id' = :user_id + AND lpe.cmetadata->>'source_type' = 'database' + AND lpe.cmetadata->>'database_client_id' = :client_id + AND lpe.cmetadata->'data'->>'table_name' IN ({placeholders}) + ORDER BY lpe.cmetadata->'data'->>'table_name', lpe.cmetadata->'data'->>'column_name' + """) + + params: dict[str, Any] = {"user_id": user_id, "client_id": client_id} + for i, name in enumerate(table_names): + params[f"t{i}"] = name + + async with _pgvector_engine.connect() as conn: + result = await conn.execute(sql, params) + rows = result.fetchall() + + schema: dict[str, list[dict[str, Any]]] = defaultdict(list) + for row in rows: + data = row.cmetadata.get("data", {}) + table = data.get("table_name") + if table: + schema[table].append({ + "name": data.get("column_name", ""), + "type": data.get("column_type", ""), + "is_primary_key": data.get("is_primary_key", False), + "foreign_key": data.get("foreign_key"), + "content": row.document, # chunk text includes top values / samples + }) + return dict(schema) + + def _build_schema_context(self, schema: dict[str, list[dict[str, Any]]]) -> str: + lines: list[str] = [] + for table, columns in schema.items(): + lines.append(f"Table: {table}") + for col in columns: + flags = [] + if col["is_primary_key"]: + flags.append("PRIMARY KEY") + if col["foreign_key"]: + flags.append(f"FK -> {col['foreign_key']}") + flag_str = f" [{', '.join(flags)}]" if flags else "" + lines.append(f" - {col['name']} {col['type']}{flag_str}") + # Include sample/top-values line from chunk content if present + for line in col["content"].splitlines(): + if line.startswith(("Top values:", "Sample values:")): + lines.append(f" {line}") + break + lines.append("") + return "\n".join(lines).strip() + + # ------------------------------------------------------------------ + # Guardrails + # ------------------------------------------------------------------ + + def _validate(self, sql: str, schema: dict[str, list[dict]], limit: int) -> str: + """Return an error string if validation fails, empty string if OK.""" + # Layer 1: sqlglot parse + SELECT-only check + try: + parsed = sqlglot.parse_one(sql) + except sqlglot.errors.ParseError as e: + return f"SQL parse error: {e}" + + if not isinstance(parsed, exp.Select): + return f"Only SELECT statements are allowed. Got: {type(parsed).__name__}" + + # Check for DML anywhere in the AST (including writeable CTEs) + for node in parsed.find_all((exp.Insert, exp.Update, exp.Delete)): + return f"DML ({type(node).__name__}) is not allowed." + + # Layer 2: schema grounding — table names + known_tables = {t.lower() for t in schema} + for tbl in parsed.find_all(exp.Table): + name = tbl.name.lower() + if name and name not in known_tables: + return f"Unknown table '{tbl.name}'. Only use tables from the schema." + + # Layer 3: LIMIT enforcement (inject if missing — done before execution) + return "" + + # ------------------------------------------------------------------ + # SQL execution + # ------------------------------------------------------------------ + + def _enforce_limit(self, sql: str, limit: int) -> str: + """Inject or cap LIMIT using sqlglot AST manipulation.""" + parsed = sqlglot.parse_one(sql) + existing = parsed.find(exp.Limit) + if existing: + current = int(existing.expression.this) + if current > limit: + existing.expression.set("this", limit) + else: + parsed = parsed.limit(limit) + return parsed.sql() + + def _run_sql(self, engine: Any, sql: str) -> list[dict]: + # Ensure the user DB connection is a read-only credential — sqlglot validation alone is not sufficient. + with engine.connect() as conn: + result = conn.execute(text(sql)) + return [dict(row) for row in result.mappings()] + + +db_executor = DbExecutor() diff --git a/src/query/executors/tabular.py b/src/query/executors/tabular.py new file mode 100644 index 0000000000000000000000000000000000000000..dc1f7526d688b65acf1311a79a00248fe662e8f1 --- /dev/null +++ b/src/query/executors/tabular.py @@ -0,0 +1,39 @@ +"""Executor for tabular document sources (source_type="document", file_type csv/xlsx). + +Flow: + 1. Group RetrievalResult chunks by document_id. + 2. For each document: download bytes from Azure Blob -> read with pandas. + 3. Filter DataFrame to relevant columns identified by retrieval. + 4. Return QueryResult per document. +""" + +from sqlalchemy.ext.asyncio import AsyncSession + +from src.middlewares.logging import get_logger +from src.query.base import BaseExecutor, QueryResult +from src.rag.base import RetrievalResult + +logger = get_logger("tabular_executor") + +_TABULAR_FILE_TYPES = ("csv", "xlsx") + + +class TabularExecutor(BaseExecutor): + async def execute( + self, + results: list[RetrievalResult], + user_id: str, + db: AsyncSession, + limit: int = 100, + ) -> list[QueryResult]: + # TODO: implement + # 1. filter results where source_type == "document" and file_type in _TABULAR_FILE_TYPES + # 2. group by document_id -> list of column_names + # 3. per group: look up Document by document_id -> get blob_name + # 4. blob_storage.download_file(blob_name) -> pd.read_csv / pd.read_excel + # 5. df[relevant_columns].head(limit) -> rows as list[dict] + # 6. return QueryResult per document + raise NotImplementedError + + +tabular_executor = TabularExecutor() diff --git a/src/query/query_executor.py b/src/query/query_executor.py new file mode 100644 index 0000000000000000000000000000000000000000..0148e991f014924ffcb54e2df9f4a42e1a1b1ee9 --- /dev/null +++ b/src/query/query_executor.py @@ -0,0 +1,52 @@ +"""QueryExecutor — dispatches retrieval results to the appropriate executor by source_type.""" + +import asyncio + +from sqlalchemy.ext.asyncio import AsyncSession + +from src.middlewares.logging import get_logger +from src.query.base import QueryResult +from src.query.executors.db_executor import db_executor +from src.query.executors.tabular import tabular_executor +from src.rag.base import RetrievalResult + +logger = get_logger("query_executor") + + +class QueryExecutor: + async def execute( + self, + results: list[RetrievalResult], + user_id: str, + db: AsyncSession, + question: str, + limit: int = 100, + ) -> list[QueryResult]: + db_results = [r for r in results if r.source_type == "database"] + tabular_results = [ + r for r in results + if r.source_type == "document" + and r.metadata.get("data", {}).get("file_type") in ("csv", "xlsx") + ] + + async def _empty() -> list[QueryResult]: + return [] + + batches = await asyncio.gather( + db_executor.execute(db_results, user_id, db, question, limit) if db_results else _empty(), + tabular_executor.execute(tabular_results, user_id, db, question, limit) if tabular_results else _empty(), + return_exceptions=True, + ) + + query_results: list[QueryResult] = [] + for batch in batches: + if isinstance(batch, Exception): + logger.error("executor failed", error=str(batch)) + continue + query_results.extend(batch) + + logger.info("query execution complete", total=len(query_results)) + return query_results + + +query_executor = QueryExecutor() diff --git a/src/rag/base.py b/src/rag/base.py new file mode 100644 index 0000000000000000000000000000000000000000..a485af2ed8749af18ff66084ec95df6c61fda435 --- /dev/null +++ b/src/rag/base.py @@ -0,0 +1,20 @@ +"""Shared contract for all retriever implementations.""" + +from abc import ABC, abstractmethod +from dataclasses import dataclass +from typing import Any + + +@dataclass +class RetrievalResult: + content: str + metadata: dict[str, Any] + score: float + source_type: str # "document" | "database" + + +class BaseRetriever(ABC): + @abstractmethod + async def retrieve( + self, query: str, user_id: str, k: int = 5 + ) -> list[RetrievalResult]: ... diff --git a/src/rag/retriever.py b/src/rag/retriever.py index ab6ea46c25fd1c0bc8768ed0d4797c3ac0637914..226fea3b51f136ddeaea1da6a92f6cbaba5882dc 100644 --- a/src/rag/retriever.py +++ b/src/rag/retriever.py @@ -1,69 +1,43 @@ -"""Service for retrieving relevant documents from vector store.""" +"""Public retrieval API — thin wrapper around RetrievalRouter.""" + +from typing import Any -import hashlib -import json -from src.db.postgres.vector_store import get_vector_store -from src.db.redis.connection import get_redis from sqlalchemy.ext.asyncio import AsyncSession + from src.middlewares.logging import get_logger -from typing import List, Dict, Any +from src.rag.retrievers.document import document_retriever +from src.rag.retrievers.schema import schema_retriever +from src.rag.router import RetrievalRouter, SourceHint logger = get_logger("retriever") -_RETRIEVAL_CACHE_TTL = 3600 # 1 hour - class RetrieverService: - """Service for retrieving relevant documents.""" + """Public retrieval service used by chat.py and search tools. + + Delegates to RetrievalRouter which dispatches based on source_hint. + Returns List[Dict] to preserve backward compatibility with chat.py. + """ def __init__(self): - self.vector_store = get_vector_store() + self._router = RetrievalRouter( + schema_retriever=schema_retriever, + document_retriever=document_retriever, + ) async def retrieve( self, query: str, user_id: str, db: AsyncSession, - k: int = 5 - ) -> List[Dict[str, Any]]: - """Retrieve relevant chunks for a query, scoped to the user's documents. - - Returns: - List of dicts with keys: content, metadata - metadata includes: document_id, user_id, filename, chunk_index, page_label (if PDF) - """ + k: int = 5, + source_hint: SourceHint = "both", + ) -> list[dict[str, Any]]: try: - redis = await get_redis() - query_hash = hashlib.md5(query.encode()).hexdigest() - cache_key = f"retrieval:{user_id}:{query_hash}:{k}" - - cached = await redis.get(cache_key) - if cached: - logger.info("Returning cached retrieval results") - return json.loads(cached) - - logger.info(f"Retrieving for user {user_id}, query: {query[:50]}...") - - docs = await self.vector_store.asimilarity_search( - query=query, - k=k, - filter={"user_id": user_id} - ) - - results = [ - { - "content": doc.page_content, - "metadata": doc.metadata, - } - for doc in docs - ] - - logger.info(f"Retrieved {len(results)} chunks") - await redis.setex(cache_key, _RETRIEVAL_CACHE_TTL, json.dumps(results)) - return results - + results = await self._router.retrieve(query, user_id, source_hint, k) + return [{"content": r.content, "metadata": r.metadata} for r in results] except Exception as e: - logger.error("Retrieval failed", error=str(e)) + logger.error("retrieval failed", error=str(e)) return [] diff --git a/src/rag/retrievers/__init__.py b/src/rag/retrievers/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/rag/retrievers/baseline.py b/src/rag/retrievers/baseline.py new file mode 100644 index 0000000000000000000000000000000000000000..210215ff4fc05d2ea41f069f9c7c693efdeda765 --- /dev/null +++ b/src/rag/retrievers/baseline.py @@ -0,0 +1,70 @@ +"""Service for retrieving relevant documents from vector store.""" + +import hashlib +import json +from src.db.postgres.vector_store import get_vector_store +from src.db.redis.connection import get_redis +from sqlalchemy.ext.asyncio import AsyncSession +from src.middlewares.logging import get_logger +from typing import List, Dict, Any + +logger = get_logger("retriever") + +_RETRIEVAL_CACHE_TTL = 3600 # 1 hour + + +class RetrieverService: + """Service for retrieving relevant documents.""" + + def __init__(self): + self.vector_store = get_vector_store() + + async def retrieve( + self, + query: str, + user_id: str, + db: AsyncSession, + k: int = 5 + ) -> List[Dict[str, Any]]: + """Retrieve relevant chunks for a query, scoped to the user's documents. + + Returns: + List of dicts with keys: content, metadata + metadata includes: document_id, user_id, filename, chunk_index, page_label (if PDF) + """ + try: + redis = await get_redis() + query_hash = hashlib.md5(query.encode()).hexdigest() + cache_key = f"retrieval:{user_id}:{query_hash}:{k}" + + cached = await redis.get(cache_key) + if cached: + logger.info("Returning cached retrieval results") + return json.loads(cached) + + logger.info(f"Retrieving for user {user_id}, query: {query[:50]}...") + + docs = await self.vector_store.asimilarity_search( + query=query, + k=k, + filter={"user_id": user_id} + ) + + results = [ + { + "content": doc.page_content, + "metadata": doc.metadata, + } + for doc in docs + ] + + logger.info(f"Retrieved {len(results)} chunks") + await redis.setex(cache_key, _RETRIEVAL_CACHE_TTL, json.dumps(results)) + return results + + except Exception as e: + logger.error("Retrieval failed", error=str(e)) + return [] + + +retriever = RetrieverService() \ No newline at end of file diff --git a/src/rag/retrievers/document.py b/src/rag/retrievers/document.py new file mode 100644 index 0000000000000000000000000000000000000000..305bbca3be2a24ccc7abfbf460382476c6e7b1c0 --- /dev/null +++ b/src/rag/retrievers/document.py @@ -0,0 +1,32 @@ +"""Document retriever — handles PDF, DOCX, TXT chunks (source_type="document", non-tabular). + +TEAMMATE: implement retrieve() below. +Strategy: MMR (amax_marginal_relevance_search) + score threshold to avoid returning +near-identical chunks from the same PDF page. +Filter: source_type="document" AND data->>'file_type' NOT IN ('csv', 'xlsx') +""" + +from src.db.postgres.vector_store import get_vector_store +from src.middlewares.logging import get_logger +from src.rag.base import BaseRetriever, RetrievalResult + +logger = get_logger("document_retriever") + +_SCORE_THRESHOLD = 0.45 # discard chunks with cosine distance above this + + +class DocumentRetriever(BaseRetriever): + def __init__(self): + self.vector_store = get_vector_store() + + async def retrieve( + self, query: str, user_id: str, k: int = 5 + ) -> list[RetrievalResult]: + # TODO (teammate): implement MMR retrieval for prose documents + # Filter: {"user_id": user_id, "source_type": "document"} + # then post-filter to exclude file_type in ("csv", "xlsx") + logger.info("document retriever not yet implemented — returning empty") + return [] + + +document_retriever = DocumentRetriever() diff --git a/src/rag/retrievers/schema.py b/src/rag/retrievers/schema.py new file mode 100644 index 0000000000000000000000000000000000000000..6d64c54c45eef995c3a3919c2d3eb683f2e21dd6 --- /dev/null +++ b/src/rag/retrievers/schema.py @@ -0,0 +1,349 @@ +"""Schema retriever — handles DB schemas (source_type="database") and tabular file +columns stored as source_type="document" with file_type in ("csv","xlsx"). + +Multiple retrieval strategies are exposed for benchmarking. The active strategy +used by the router is `retrieve()`, which dispatches to ACTIVE_STRATEGY. +Change ACTIVE_STRATEGY at module level to switch without touching the router. + +All strategies embed the query exactly once, then fan out to parallel SQL legs. + +Vector distance strategies: + dense_no_threshold — cosine (<=>), no score floor, always returns k chunks + dense_dot — inner product (<#>), equivalent to cosine for normalized embeddings + dense_l2 — L2/euclidean (<->), monotonic with cosine on unit-sphere vectors + hybrid — RRF merge of dense + FTS (database + tabular) + hybrid_bm25 — RRF merge of dense + FTS (database only) +""" + +import asyncio +import time +from typing import Literal + +from sqlalchemy import text + +from src.db.postgres.connection import _pgvector_engine +from src.db.postgres.vector_store import get_vector_store +from src.middlewares.logging import get_logger +from src.rag.base import BaseRetriever, RetrievalResult + +logger = get_logger("schema_retriever") + +_TABULAR_FILE_TYPES = ("csv", "xlsx") + +Strategy = Literal["dense_no_threshold", "dense_dot", "dense_l2", "hybrid", "hybrid_bm25"] +ACTIVE_STRATEGY: Strategy = "hybrid_bm25" + + +class SchemaRetriever(BaseRetriever): + def __init__(self): + self.vector_store = get_vector_store() + + # ------------------------------------------------------------------ + # Internal helpers + # ------------------------------------------------------------------ + + async def _embed_query(self, query: str) -> list[float]: + return await asyncio.to_thread(self.vector_store.embeddings.embed_query, query) + + async def _search_db( + self, embedding: list[float], user_id: str, k: int, operator: str = "<=>" + ) -> list[RetrievalResult]: + """Vector search over database chunks. Accepts a pre-computed embedding.""" + emb_str = "[" + ",".join(str(x) for x in embedding) + "]" + + if operator == "<#>": + score_sql = f"(lpe.embedding <#> '{emb_str}'::vector) * -1" + elif operator == "<->": + score_sql = f"1.0 / (1.0 + (lpe.embedding <-> '{emb_str}'::vector))" + else: + score_sql = f"1.0 - (lpe.embedding <=> '{emb_str}'::vector)" + + sql = text(f""" + SELECT lpe.document, lpe.cmetadata, {score_sql} AS score + FROM langchain_pg_embedding lpe + JOIN langchain_pg_collection lpc ON lpe.collection_id = lpc.uuid + WHERE lpc.name = 'document_embeddings' + AND lpe.cmetadata->>'user_id' = :user_id + AND lpe.cmetadata->>'source_type' = 'database' + ORDER BY lpe.embedding {operator} '{emb_str}'::vector ASC + LIMIT :k + """) + + async with _pgvector_engine.connect() as conn: + result = await conn.execute(sql, {"user_id": user_id, "k": k * 4}) + rows = result.fetchall() + + return [ + RetrievalResult( + content=row.document, + metadata=row.cmetadata, + score=float(row.score), + source_type="database", + ) + for row in rows + ] + + async def _search_tabular( + self, embedding: list[float], user_id: str, k: int, operator: str = "<=>" + ) -> list[RetrievalResult]: + """Vector search over tabular document chunks. Accepts a pre-computed embedding.""" + emb_str = "[" + ",".join(str(x) for x in embedding) + "]" + + if operator == "<#>": + score_sql = f"(lpe.embedding <#> '{emb_str}'::vector) * -1" + elif operator == "<->": + score_sql = f"1.0 / (1.0 + (lpe.embedding <-> '{emb_str}'::vector))" + else: + score_sql = f"1.0 - (lpe.embedding <=> '{emb_str}'::vector)" + + sql = text(f""" + SELECT lpe.document, lpe.cmetadata, {score_sql} AS score + FROM langchain_pg_embedding lpe + JOIN langchain_pg_collection lpc ON lpe.collection_id = lpc.uuid + WHERE lpc.name = 'document_embeddings' + AND lpe.cmetadata->>'user_id' = :user_id + AND lpe.cmetadata->>'source_type' = 'document' + AND (lpe.cmetadata->'data'->>'file_type' = 'csv' + OR lpe.cmetadata->'data'->>'file_type' = 'xlsx') + ORDER BY lpe.embedding {operator} '{emb_str}'::vector ASC + LIMIT :k + """) + + async with _pgvector_engine.connect() as conn: + result = await conn.execute(sql, {"user_id": user_id, "k": k * 4}) + rows = result.fetchall() + + results = [] + for row in rows: + results.append( + RetrievalResult( + content=row.document, + metadata=row.cmetadata, + score=float(row.score), + source_type="document", + ) + ) + if len(results) >= k: + break + return results + + async def _search_fts_db(self, query: str, user_id: str, k: int) -> list[RetrievalResult]: + """Full-text search over DB schema chunks using PostgreSQL tsvector. + + Requires GIN index on langchain_pg_embedding.document (created by init_db.py). + """ + sql = text(""" + SELECT lpe.document, lpe.cmetadata, + ts_rank(to_tsvector('english', lpe.document), + plainto_tsquery('english', :query)) AS rank + FROM langchain_pg_embedding lpe + JOIN langchain_pg_collection lpc ON lpe.collection_id = lpc.uuid + WHERE lpc.name = 'document_embeddings' + AND lpe.cmetadata->>'user_id' = :user_id + AND lpe.cmetadata->>'source_type' = 'database' + AND to_tsvector('english', lpe.document) @@ plainto_tsquery('english', :query) + ORDER BY rank DESC + LIMIT :k + """) + + async with _pgvector_engine.connect() as conn: + result = await conn.execute(sql, {"query": query, "user_id": user_id, "k": k}) + rows = result.fetchall() + + return [ + RetrievalResult( + content=row.document, + metadata=row.cmetadata, + score=float(row.rank), + source_type="database", + ) + for row in rows + ] + + async def _search_fts_tabular(self, query: str, user_id: str, k: int) -> list[RetrievalResult]: + """Full-text search over tabular document chunks using PostgreSQL tsvector.""" + sql = text(""" + SELECT lpe.document, lpe.cmetadata, + ts_rank(to_tsvector('english', lpe.document), + plainto_tsquery('english', :query)) AS rank + FROM langchain_pg_embedding lpe + JOIN langchain_pg_collection lpc ON lpe.collection_id = lpc.uuid + WHERE lpc.name = 'document_embeddings' + AND lpe.cmetadata->>'user_id' = :user_id + AND lpe.cmetadata->>'source_type' = 'document' + AND (lpe.cmetadata->'data'->>'file_type' = 'csv' + OR lpe.cmetadata->'data'->>'file_type' = 'xlsx') + AND to_tsvector('english', lpe.document) @@ plainto_tsquery('english', :query) + ORDER BY rank DESC + LIMIT :k + """) + + async with _pgvector_engine.connect() as conn: + result = await conn.execute(sql, {"query": query, "user_id": user_id, "k": k}) + rows = result.fetchall() + + return [ + RetrievalResult( + content=row.document, + metadata=row.cmetadata, + score=float(row.rank), + source_type="document", + ) + for row in rows + ] + + def _rrf_merge( + self, + *ranked_lists: list[RetrievalResult], + k_rrf: int = 60, + top_k: int = 5, + ) -> list[RetrievalResult]: + """Reciprocal Rank Fusion — combines ranked lists using rank positions only.""" + scores: dict[tuple, float] = {} + index: dict[tuple, RetrievalResult] = {} + + for ranked in ranked_lists: + for rank, result in enumerate(ranked): + data = result.metadata.get("data", {}) + key = (data.get("table_name"), data.get("column_name") or data.get("filename")) + scores[key] = scores.get(key, 0.0) + 1.0 / (k_rrf + rank + 1) + if key not in index or result.score > index[key].score: + index[key] = result + + def _key(r: RetrievalResult) -> tuple: + d = r.metadata.get("data", {}) + return (d.get("table_name"), d.get("column_name") or d.get("filename")) + + merged = sorted(index.values(), key=lambda r: scores[_key(r)], reverse=True) + return merged[:top_k] + + def _dedup(self, results: list[RetrievalResult]) -> list[RetrievalResult]: + """Deduplicate by (table_name, column_name), keeping highest score per unique column.""" + seen: dict[tuple, RetrievalResult] = {} + for r in results: + data = r.metadata.get("data", {}) + key = (data.get("table_name"), data.get("column_name") or data.get("filename")) + if key not in seen or r.score > seen[key].score: + seen[key] = r + return sorted(seen.values(), key=lambda r: r.score, reverse=True) + + # ------------------------------------------------------------------ + # Named strategies — one embed call each, legs run in parallel + # ------------------------------------------------------------------ + + async def dense_no_threshold(self, query: str, user_id: str, k: int = 5) -> list[RetrievalResult]: + """Cosine similarity, no score cutoff — always returns k chunks.""" + embedding = await self._embed_query(query) + db_results, tabular_results = await asyncio.gather( + self._search_db(embedding, user_id, k), + self._search_tabular(embedding, user_id, k), + ) + return self._dedup(db_results + tabular_results)[:k] + + async def dense_dot(self, query: str, user_id: str, k: int = 5) -> list[RetrievalResult]: + """Inner product similarity (<#>). + + For L2-normalized embeddings (OpenAI), ranking is identical to cosine. + Score = raw inner product (not bounded to [0,1]). + """ + embedding = await self._embed_query(query) + db_results, tabular_results = await asyncio.gather( + self._search_db(embedding, user_id, k, "<#>"), + self._search_tabular(embedding, user_id, k, "<#>"), + ) + return self._dedup(db_results + tabular_results)[:k] + + async def dense_l2(self, query: str, user_id: str, k: int = 5) -> list[RetrievalResult]: + """L2 (Euclidean) distance similarity (<->). + + For L2-normalized embeddings (OpenAI), ranking order matches cosine. + Score = 1 / (1 + l2_distance), bounded to (0, 1]. + """ + embedding = await self._embed_query(query) + db_results, tabular_results = await asyncio.gather( + self._search_db(embedding, user_id, k, "<->"), + self._search_tabular(embedding, user_id, k, "<->"), + ) + return self._dedup(db_results + tabular_results)[:k] + + async def hybrid(self, query: str, user_id: str, k: int = 5) -> list[RetrievalResult]: + """RRF merge of dense + FTS over both database and tabular sources. + + Embeds once, then runs all four legs (dense db, dense tabular, fts db, + fts tabular) in a single asyncio.gather. + """ + embedding = await self._embed_query(query) + db_results, tabular_results, fts_db, fts_tabular = await asyncio.gather( + self._search_db(embedding, user_id, k), + self._search_tabular(embedding, user_id, k), + self._search_fts_db(query, user_id, k * 4), + self._search_fts_tabular(query, user_id, k * 4), + ) + dense = self._dedup(db_results + tabular_results)[:k] + fts_all = self._dedup(fts_db + fts_tabular) + return self._rrf_merge(dense, fts_all, top_k=k) + + async def hybrid_bm25(self, query: str, user_id: str, k: int = 5) -> list[RetrievalResult]: + """RRF merge of dense + FTS (database chunks only). + + Embeds once, then runs dense db, dense tabular, and fts db legs in parallel. + """ + embedding = await self._embed_query(query) + db_results, tabular_results, fts_results = await asyncio.gather( + self._search_db(embedding, user_id, k), + self._search_tabular(embedding, user_id, k), + self._search_fts_db(query, user_id, k * 4), + ) + dense = self._dedup(db_results + tabular_results)[:k] + return self._rrf_merge(dense, self._dedup(fts_results), top_k=k) + + # ------------------------------------------------------------------ + # Public interface — called by the router + # ------------------------------------------------------------------ + + async def retrieve(self, query: str, user_id: str, k: int = 5) -> list[RetrievalResult]: + strategy_fn = getattr(self, ACTIVE_STRATEGY) + results = await strategy_fn(query, user_id, k) + logger.info("schema retrieval", strategy=ACTIVE_STRATEGY, count=len(results)) + return results + + +# ------------------------------------------------------------------ +# Benchmark helper — import in test scripts +# ------------------------------------------------------------------ + +async def benchmark( + query: str, + user_id: str, + k: int = 5, + strategies: list[Strategy] | None = None, +) -> dict[str, dict]: + """Run multiple strategies against the same query and return timing + results.""" + retriever = SchemaRetriever() + targets: list[Strategy] = strategies or [ + "dense_no_threshold", + "dense_dot", + "dense_l2", + "hybrid", + "hybrid_bm25", + ] + report: dict[str, dict] = {} + + for name in targets: + fn = getattr(retriever, name) + t0 = time.perf_counter() + chunks = await fn(query, user_id, k) + elapsed_ms = round((time.perf_counter() - t0) * 1000) + + total_chars = sum(len(r.content) for r in chunks) + report[name] = { + "chunks": len(chunks), + "estimated_tokens": total_chars // 4, + "elapsed_ms": elapsed_ms, + "results": chunks, + } + + return report + + +schema_retriever = SchemaRetriever() diff --git a/src/rag/router.py b/src/rag/router.py new file mode 100644 index 0000000000000000000000000000000000000000..26222c5f60be88186132eea07acc1afa3bb2aaf6 --- /dev/null +++ b/src/rag/router.py @@ -0,0 +1,75 @@ +"""Routes retrieval requests to the appropriate retriever based on source_hint.""" + +import asyncio +import hashlib +import json +from typing import Literal + +from src.db.redis.connection import get_redis +from src.middlewares.logging import get_logger +from src.rag.base import BaseRetriever, RetrievalResult + +logger = get_logger("retrieval_router") + +_CACHE_TTL = 3600 # 1 hour +SourceHint = Literal["document", "schema", "both"] + + +class RetrievalRouter: + def __init__( + self, + schema_retriever: BaseRetriever, + document_retriever: BaseRetriever, + ): + self._retrievers: dict[str, BaseRetriever] = { + "schema": schema_retriever, + "document": document_retriever, + } + + def _route(self, source_hint: SourceHint) -> list[BaseRetriever]: + if source_hint == "schema": + return [self._retrievers["schema"]] + if source_hint == "document": + return [self._retrievers["document"]] + return list(self._retrievers.values()) + + async def retrieve( + self, + query: str, + user_id: str, + source_hint: SourceHint = "both", + k: int = 10, + ) -> list[RetrievalResult]: + redis = await get_redis() + query_hash = hashlib.md5(query.encode()).hexdigest() + cache_key = f"retrieval:{user_id}:{source_hint}:{query_hash}:{k}" + + cached = await redis.get(cache_key) + if cached: + logger.info("returning cached retrieval results", source_hint=source_hint) + raw = json.loads(cached) + return [RetrievalResult(**r) for r in raw] + + retrievers = self._route(source_hint) + batches = await asyncio.gather( + *[r.retrieve(query, user_id, k) for r in retrievers], + return_exceptions=True, + ) + + results: list[RetrievalResult] = [] + for batch in batches: + if isinstance(batch, Exception): + logger.error("retriever failed", error=str(batch)) + continue + results.extend(batch) + + results.sort(key=lambda r: r.score, reverse=True) + results = results[:k] + + logger.info("retrieved chunks", count=len(results), source_hint=source_hint) + await redis.setex( + cache_key, + _CACHE_TTL, + json.dumps([vars(r) for r in results]), + ) + return results diff --git a/src/storage/az_blob/az_blob.py b/src/storage/az_blob/az_blob.py index 011ed316fdb4156675b814428494fc66e0606b2f..e0b865f5d8a9864f9e6a47283bdeff19948dffb8 100644 --- a/src/storage/az_blob/az_blob.py +++ b/src/storage/az_blob/az_blob.py @@ -57,6 +57,22 @@ class AzureBlobStorage: logger.error(f"Failed to download blob {blob_name}", error=str(e)) raise + async def upload_bytes(self, content: bytes, blob_name: str) -> str: + """Upload bytes to Azure Blob Storage using a specific blob name. + + Unlike upload_file(), this does not generate a UUID name — caller controls the blob_name. + Used for Parquet files where the name must be deterministic (derived from document_id). + """ + try: + async with self._get_blob_client(blob_name) as blob_client: + logger.info(f"Uploading bytes to blob {blob_name}") + await blob_client.upload_blob(content, overwrite=True) + logger.info(f"Successfully uploaded {blob_name}") + return blob_name + except Exception as e: + logger.error(f"Failed to upload bytes to {blob_name}", error=str(e)) + raise + async def delete_file(self, blob_name: str) -> bool: """Delete file from Azure Blob Storage.""" try: @@ -71,6 +87,24 @@ class AzureBlobStorage: logger.error(f"Failed to delete blob {blob_name}", error=str(e)) return False + async def delete_blobs_with_prefix(self, prefix: str) -> int: + """Delete all blobs whose name starts with prefix. Returns count deleted. + + Used to delete all Parquet files for a document in one call. + """ + from azure.storage.blob.aio import ContainerClient + container_url = f"{self.account_url}/{self.container_name}?{self.sas_token}" + deleted = 0 + try: + async with ContainerClient.from_container_url(container_url) as container: + async for blob in container.list_blobs(name_starts_with=prefix): + await container.delete_blob(blob.name) + deleted += 1 + logger.info(f"Deleted {deleted} blobs with prefix {prefix}") + except Exception as e: + logger.error(f"Failed to delete blobs with prefix {prefix}", error=str(e)) + return deleted + # Singleton instance blob_storage = AzureBlobStorage() diff --git a/src/utils/db_credential_encryption.py b/src/utils/db_credential_encryption.py new file mode 100644 index 0000000000000000000000000000000000000000..04c1b98cd5babbc69ffcf200075b4dbb87c7eac0 --- /dev/null +++ b/src/utils/db_credential_encryption.py @@ -0,0 +1,70 @@ +"""Fernet encryption utilities for user-registered database credentials. + +Encryption key is sourced from `dataeyond__db__credential__key` env variable, +intentionally separate from the user-auth bcrypt salt (`emarcal__bcrypt__salt`). + +Usage: + from src.utils.db_credential_encryption import encrypt_credentials_dict, decrypt_credentials_dict + + # Before INSERT: + safe_creds = encrypt_credentials_dict(raw_credentials) + + # After SELECT: + plain_creds = decrypt_credentials_dict(row.credentials) +""" + +from cryptography.fernet import Fernet +from src.config.settings import settings + +# Sensitive credential field names that must be encrypted at rest. +# Covers all supported DB types: +# - password : postgres, mysql, sqlserver, supabase, snowflake +# - service_account_json : bigquery +SENSITIVE_FIELDS: frozenset[str] = frozenset({"password", "service_account_json"}) + + +def _get_cipher() -> Fernet: + key = settings.dataeyond_db_credential_key + if not key: + raise ValueError( + "dataeyond__db__credential__key is not set. " + "Generate one with: Fernet.generate_key().decode()" + ) + return Fernet(key.encode()) + + +def encrypt_credential(value: str) -> str: + """Encrypt a single credential string value.""" + return _get_cipher().encrypt(value.encode()).decode() + + +def decrypt_credential(value: str) -> str: + """Decrypt a single Fernet-encrypted credential string.""" + return _get_cipher().decrypt(value.encode()).decode() + + +def encrypt_credentials_dict(creds: dict) -> dict: + """Return a copy of the credentials dict with sensitive fields encrypted. + + Call this before inserting a new DatabaseClient record. + """ + cipher = _get_cipher() + result = dict(creds) + for field in SENSITIVE_FIELDS: + if result.get(field): + result[field] = cipher.encrypt(result[field].encode()).decode() + return result + + +def decrypt_credentials_dict(creds: dict) -> dict: + """Return a copy of the credentials dict with sensitive fields decrypted. + + Call this after fetching a DatabaseClient record from DB. + """ + cipher = _get_cipher() + result = dict(creds) + for field in SENSITIVE_FIELDS: + if result.get(field): + result[field] = cipher.decrypt(result[field].encode()).decode() + return result + \ No newline at end of file diff --git a/uv.lock b/uv.lock index 60ad7363ccd77db05cac154b504a0e6b6e1aeb35..c57a5d2840e899ff14434bc0b5602ec62779f7c2 100644 --- a/uv.lock +++ b/uv.lock @@ -1,5 +1,5 @@ version = 1 -revision = 2 +revision = 3 requires-python = "==3.12.*" resolution-markers = [ "python_full_version >= '3.12.4'", @@ -39,6 +39,7 @@ dependencies = [ { name = "orjson" }, { name = "pandas" }, { name = "passlib", extra = ["bcrypt"] }, + { name = "pdf2image" }, { name = "pgvector" }, { name = "plotly" }, { name = "presidio-analyzer" }, @@ -49,7 +50,11 @@ dependencies = [ { name = "pydantic" }, { name = "pydantic-settings" }, { name = "pymongo" }, + { name = "pymssql" }, + { name = "pymysql" }, { name = "pypdf" }, + { name = "pypdf2" }, + { name = "pytesseract" }, { name = "python-docx" }, { name = "python-dotenv" }, { name = "python-multipart" }, @@ -57,8 +62,11 @@ dependencies = [ { name = "redis" }, { name = "sentence-transformers" }, { name = "slowapi" }, + { name = "snowflake-sqlalchemy" }, { name = "spacy" }, { name = "sqlalchemy", extra = ["asyncio"] }, + { name = "sqlalchemy-bigquery" }, + { name = "sqlglot" }, { name = "sse-starlette" }, { name = "starlette" }, { name = "structlog" }, @@ -78,16 +86,6 @@ dev = [ { name = "ruff" }, ] -[package.dev-dependencies] -dev = [ - { name = "mypy" }, - { name = "pre-commit" }, - { name = "pytest" }, - { name = "pytest-asyncio" }, - { name = "pytest-cov" }, - { name = "ruff" }, -] - [package.metadata] requires-dist = [ { name = "alembic", specifier = "==1.14.0" }, @@ -120,6 +118,7 @@ requires-dist = [ { name = "orjson", specifier = "==3.10.12" }, { name = "pandas", specifier = "==2.2.3" }, { name = "passlib", extras = ["bcrypt"], specifier = "==1.7.4" }, + { name = "pdf2image", specifier = ">=1.17.0" }, { name = "pgvector", specifier = "==0.3.6" }, { name = "plotly", specifier = "==5.24.1" }, { name = "pre-commit", marker = "extra == 'dev'", specifier = "==4.0.1" }, @@ -131,7 +130,11 @@ requires-dist = [ { name = "pydantic", specifier = "==2.10.3" }, { name = "pydantic-settings", specifier = "==2.7.0" }, { name = "pymongo", specifier = ">=4.14.0" }, + { name = "pymssql", specifier = ">=2.3.0" }, + { name = "pymysql", specifier = ">=1.1.1" }, { name = "pypdf", specifier = "==5.1.0" }, + { name = "pypdf2", specifier = ">=3.0.1" }, + { name = "pytesseract", specifier = ">=0.3.13" }, { name = "pytest", marker = "extra == 'dev'", specifier = "==8.3.4" }, { name = "pytest-asyncio", marker = "extra == 'dev'", specifier = "==0.24.0" }, { name = "pytest-cov", marker = "extra == 'dev'", specifier = "==6.0.0" }, @@ -143,8 +146,11 @@ requires-dist = [ { name = "ruff", marker = "extra == 'dev'", specifier = "==0.8.4" }, { name = "sentence-transformers", specifier = "==3.3.1" }, { name = "slowapi", specifier = "==0.1.9" }, + { name = "snowflake-sqlalchemy", specifier = ">=1.7.0" }, { name = "spacy", specifier = "==3.8.3" }, { name = "sqlalchemy", extras = ["asyncio"], specifier = "==2.0.36" }, + { name = "sqlalchemy-bigquery", specifier = ">=1.11.0" }, + { name = "sqlglot", specifier = ">=25.0.0" }, { name = "sse-starlette", specifier = "==2.1.3" }, { name = "starlette", specifier = "==0.41.3" }, { name = "structlog", specifier = "==24.4.0" }, @@ -154,16 +160,6 @@ requires-dist = [ ] provides-extras = ["dev"] -[package.metadata.requires-dev] -dev = [ - { name = "mypy", specifier = "==1.13.0" }, - { name = "pre-commit", specifier = "==4.0.1" }, - { name = "pytest", specifier = "==8.3.4" }, - { name = "pytest-asyncio", specifier = "==0.24.0" }, - { name = "pytest-cov", specifier = "==6.0.0" }, - { name = "ruff", specifier = "==0.8.4" }, -] - [[package]] name = "aiohappyeyeballs" version = "2.6.1" @@ -280,6 +276,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/13/b5/7af0cb920a476dccd612fbc9a21a3745fb29b1fcd74636078db8f7ba294c/APScheduler-3.10.4-py3-none-any.whl", hash = "sha256:fb91e8a768632a4756a585f79ec834e0e27aad5860bac7eaa523d9ccefd87661", size = 59303, upload-time = "2023-08-19T16:44:56.814Z" }, ] +[[package]] +name = "asn1crypto" +version = "1.5.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/de/cf/d547feed25b5244fcb9392e288ff9fdc3280b10260362fc45d37a798a6ee/asn1crypto-1.5.1.tar.gz", hash = "sha256:13ae38502be632115abf8a24cbe5f4da52e3b5231990aff31123c805306ccb9c", size = 121080, upload-time = "2022-03-15T14:46:52.889Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c9/7f/09065fd9e27da0eda08b4d6897f1c13535066174cc023af248fc2a8d5e5a/asn1crypto-1.5.1-py2.py3-none-any.whl", hash = "sha256:db4e40728b728508912cbb3d44f19ce188f218e9eba635821bb4b68564f8fd67", size = 105045, upload-time = "2022-03-15T14:46:51.055Z" }, +] + [[package]] name = "asyncpg" version = "0.30.0" @@ -428,6 +433,34 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/20/07/fb43edc2ff0a6a367e4a94fc39eb3b85aa1e55e24cc857af2db145ce9f0d/blis-1.3.3-cp312-cp312-win_amd64.whl", hash = "sha256:f20f7ad69aaffd1ce14fe77de557b6df9b61e0c9e582f75a843715d836b5c8af", size = 6192759, upload-time = "2025-11-17T12:27:56.176Z" }, ] +[[package]] +name = "boto3" +version = "1.42.89" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "botocore" }, + { name = "jmespath" }, + { name = "s3transfer" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/bb/0c/f7bccb22b245cabf392816baba20f9e95f78ace7dbc580fd40136e80e732/boto3-1.42.89.tar.gz", hash = "sha256:3e43aacc0801bba9bcd23a8c271c089af297a69565f783fcdd357ae0e330bf1e", size = 113165, upload-time = "2026-04-13T19:36:17.516Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b9/33/55103ba5ef9975ea54b8d39e69b76eb6e9fded3beae5f01065e26951a3a1/boto3-1.42.89-py3-none-any.whl", hash = "sha256:6204b189f4d0c655535f43d7eaa57ff4e8d965b8463c97e45952291211162932", size = 140556, upload-time = "2026-04-13T19:36:13.894Z" }, +] + +[[package]] +name = "botocore" +version = "1.42.89" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jmespath" }, + { name = "python-dateutil" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0f/cc/e6be943efa9051bd15c2ee14077c2b10d6e27c9e9385fc43a03a5c4ed8b5/botocore-1.42.89.tar.gz", hash = "sha256:95ac52f472dad29942f3088b278ab493044516c16dbf9133c975af16527baa99", size = 15206290, upload-time = "2026-04-13T19:36:02.321Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/91/f1/90a7b8eda38b7c3a65ca7ee0075bdf310b6b471cb1b95fab6e8994323a50/botocore-1.42.89-py3-none-any.whl", hash = "sha256:d9b786c8d9db6473063b4cc5be0ba7e6a381082307bd6afb69d4216f9fa95f35", size = 14887287, upload-time = "2026-04-13T19:35:56.677Z" }, +] + [[package]] name = "cachetools" version = "5.5.0" @@ -941,6 +974,109 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/d5/1f/5f4a3cd9e4440e9d9bc78ad0a91a1c8d46b4d429d5239ebe6793c9fe5c41/fsspec-2026.3.0-py3-none-any.whl", hash = "sha256:d2ceafaad1b3457968ed14efa28798162f1638dbb5d2a6868a2db002a5ee39a4", size = 202595, upload-time = "2026-03-27T19:11:13.595Z" }, ] +[[package]] +name = "google-api-core" +version = "2.30.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "google-auth" }, + { name = "googleapis-common-protos" }, + { name = "proto-plus" }, + { name = "protobuf" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/16/ce/502a57fb0ec752026d24df1280b162294b22a0afb98a326084f9a979138b/google_api_core-2.30.3.tar.gz", hash = "sha256:e601a37f148585319b26db36e219df68c5d07b6382cff2d580e83404e44d641b", size = 177001, upload-time = "2026-04-10T00:41:28.035Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/03/15/e56f351cf6ef1cfea58e6ac226a7318ed1deb2218c4b3cc9bd9e4b786c5a/google_api_core-2.30.3-py3-none-any.whl", hash = "sha256:a85761ba72c444dad5d611c2220633480b2b6be2521eca69cca2dbb3ffd6bfe8", size = 173274, upload-time = "2026-04-09T22:57:16.198Z" }, +] + +[package.optional-dependencies] +grpc = [ + { name = "grpcio" }, + { name = "grpcio-status" }, +] + +[[package]] +name = "google-auth" +version = "2.49.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cryptography" }, + { name = "pyasn1-modules" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c6/fc/e925290a1ad95c975c459e2df070fac2b90954e13a0370ac505dff78cb99/google_auth-2.49.2.tar.gz", hash = "sha256:c1ae38500e73065dcae57355adb6278cf8b5c8e391994ae9cbadbcb9631ab409", size = 333958, upload-time = "2026-04-10T00:41:21.888Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/73/76/d241a5c927433420507215df6cac1b1fa4ac0ba7a794df42a84326c68da8/google_auth-2.49.2-py3-none-any.whl", hash = "sha256:c2720924dfc82dedb962c9f52cabb2ab16714fd0a6a707e40561d217574ed6d5", size = 240638, upload-time = "2026-04-10T00:41:14.501Z" }, +] + +[[package]] +name = "google-cloud-bigquery" +version = "3.41.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "google-api-core", extra = ["grpc"] }, + { name = "google-auth" }, + { name = "google-cloud-core" }, + { name = "google-resumable-media" }, + { name = "packaging" }, + { name = "python-dateutil" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ce/13/6515c7aab55a4a0cf708ffd309fb9af5bab54c13e32dc22c5acd6497193c/google_cloud_bigquery-3.41.0.tar.gz", hash = "sha256:2217e488b47ed576360c9b2cc07d59d883a54b83167c0ef37f915c26b01a06fe", size = 513434, upload-time = "2026-03-30T22:50:55.347Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/40/33/1d3902efadef9194566d499d61507e1f038454e0b55499d2d7f8ab2a4fee/google_cloud_bigquery-3.41.0-py3-none-any.whl", hash = "sha256:2a5b5a737b401cbd824a6e5eac7554100b878668d908e6548836b5d8aaa4dcaa", size = 262343, upload-time = "2026-03-30T22:48:45.444Z" }, +] + +[[package]] +name = "google-cloud-core" +version = "2.5.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "google-api-core" }, + { name = "google-auth" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/dc/24/6ca08b0a03c7b0c620427503ab00353a4ae806b848b93bcea18b6b76fde6/google_cloud_core-2.5.1.tar.gz", hash = "sha256:3dc94bdec9d05a31d9f355045ed0f369fbc0d8c665076c734f065d729800f811", size = 36078, upload-time = "2026-03-30T22:50:08.057Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/73/d9/5bb050cb32826466aa9b25f79e2ca2879fe66cb76782d4ed798dd7506151/google_cloud_core-2.5.1-py3-none-any.whl", hash = "sha256:ea62cdf502c20e3e14be8a32c05ed02113d7bef454e40ff3fab6fe1ec9f1f4e7", size = 29452, upload-time = "2026-03-30T22:48:31.567Z" }, +] + +[[package]] +name = "google-crc32c" +version = "1.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/03/41/4b9c02f99e4c5fb477122cd5437403b552873f014616ac1d19ac8221a58d/google_crc32c-1.8.0.tar.gz", hash = "sha256:a428e25fb7691024de47fecfbff7ff957214da51eddded0da0ae0e0f03a2cf79", size = 14192, upload-time = "2025-12-16T00:35:25.142Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e9/5f/7307325b1198b59324c0fa9807cafb551afb65e831699f2ce211ad5c8240/google_crc32c-1.8.0-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:4b8286b659c1335172e39563ab0a768b8015e88e08329fa5321f774275fc3113", size = 31300, upload-time = "2025-12-16T00:21:56.723Z" }, + { url = "https://files.pythonhosted.org/packages/21/8e/58c0d5d86e2220e6a37befe7e6a94dd2f6006044b1a33edf1ff6d9f7e319/google_crc32c-1.8.0-cp312-cp312-macosx_12_0_x86_64.whl", hash = "sha256:2a3dc3318507de089c5384cc74d54318401410f82aa65b2d9cdde9d297aca7cb", size = 30867, upload-time = "2025-12-16T00:38:31.302Z" }, + { url = "https://files.pythonhosted.org/packages/ce/a9/a780cc66f86335a6019f557a8aaca8fbb970728f0efd2430d15ff1beae0e/google_crc32c-1.8.0-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:14f87e04d613dfa218d6135e81b78272c3b904e2a7053b841481b38a7d901411", size = 33364, upload-time = "2025-12-16T00:40:22.96Z" }, + { url = "https://files.pythonhosted.org/packages/21/3f/3457ea803db0198c9aaca2dd373750972ce28a26f00544b6b85088811939/google_crc32c-1.8.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:cb5c869c2923d56cb0c8e6bcdd73c009c36ae39b652dbe46a05eb4ef0ad01454", size = 33740, upload-time = "2025-12-16T00:40:23.96Z" }, + { url = "https://files.pythonhosted.org/packages/df/c0/87c2073e0c72515bb8733d4eef7b21548e8d189f094b5dad20b0ecaf64f6/google_crc32c-1.8.0-cp312-cp312-win_amd64.whl", hash = "sha256:3cc0c8912038065eafa603b238abf252e204accab2a704c63b9e14837a854962", size = 34437, upload-time = "2025-12-16T00:35:21.395Z" }, +] + +[[package]] +name = "google-resumable-media" +version = "2.8.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "google-crc32c" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/3f/d1/b1ea14b93b6b78f57fc580125de44e9f593ab88dd2460f1a8a8d18f74754/google_resumable_media-2.8.2.tar.gz", hash = "sha256:f3354a182ebd193ae3f42e3ef95e6c9b10f128320de23ac7637236713b1acd70", size = 2164510, upload-time = "2026-03-30T23:34:25.369Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5e/f8/50bfaf4658431ff9de45c5c3935af7ab01157a4903c603cd0eee6e78e087/google_resumable_media-2.8.2-py3-none-any.whl", hash = "sha256:82b6d8ccd11765268cdd2a2123f417ec806b8eef3000a9a38dfe3033da5fb220", size = 81511, upload-time = "2026-03-30T23:34:09.671Z" }, +] + +[[package]] +name = "googleapis-common-protos" +version = "1.74.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "protobuf" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/20/18/a746c8344152d368a5aac738d4c857012f2c5d1fd2eac7e17b647a7861bd/googleapis_common_protos-1.74.0.tar.gz", hash = "sha256:57971e4eeeba6aad1163c1f0fc88543f965bb49129b8bb55b2b7b26ecab084f1", size = 151254, upload-time = "2026-04-02T21:23:26.679Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b6/b0/be5d3329badb9230b765de6eea66b73abd5944bdeb5afb3562ddcd80ae84/googleapis_common_protos-1.74.0-py3-none-any.whl", hash = "sha256:702216f78610bb510e3f12ac3cafd281b7ac45cc5d86e90ad87e4d301a3426b5", size = 300743, upload-time = "2026-04-02T21:22:49.108Z" }, +] + [[package]] name = "greenlet" version = "3.3.2" @@ -958,6 +1094,41 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/58/2e/fe7f36ff1982d6b10a60d5e0740c759259a7d6d2e1dc41da6d96de32fff6/greenlet-3.3.2-cp312-cp312-win_arm64.whl", hash = "sha256:d3a62fa76a32b462a97198e4c9e99afb9ab375115e74e9a83ce180e7a496f643", size = 230331, upload-time = "2026-02-20T20:17:23.34Z" }, ] +[[package]] +name = "grpcio" +version = "1.80.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b7/48/af6173dbca4454f4637a4678b67f52ca7e0c1ed7d5894d89d434fecede05/grpcio-1.80.0.tar.gz", hash = "sha256:29aca15edd0688c22ba01d7cc01cb000d72b2033f4a3c72a81a19b56fd143257", size = 12978905, upload-time = "2026-03-30T08:49:10.502Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5c/e8/a2b749265eb3415abc94f2e619bbd9e9707bebdda787e61c593004ec927a/grpcio-1.80.0-cp312-cp312-linux_armv7l.whl", hash = "sha256:c624cc9f1008361014378c9d776de7182b11fe8b2e5a81bc69f23a295f2a1ad0", size = 6015616, upload-time = "2026-03-30T08:47:13.428Z" }, + { url = "https://files.pythonhosted.org/packages/3e/97/b1282161a15d699d1e90c360df18d19165a045ce1c343c7f313f5e8a0b77/grpcio-1.80.0-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:f49eddcac43c3bf350c0385366a58f36bed8cc2c0ec35ef7b74b49e56552c0c2", size = 12014204, upload-time = "2026-03-30T08:47:15.873Z" }, + { url = "https://files.pythonhosted.org/packages/6e/5e/d319c6e997b50c155ac5a8cb12f5173d5b42677510e886d250d50264949d/grpcio-1.80.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d334591df610ab94714048e0d5b4f3dd5ad1bee74dfec11eee344220077a79de", size = 6563866, upload-time = "2026-03-30T08:47:18.588Z" }, + { url = "https://files.pythonhosted.org/packages/ae/f6/fdd975a2cb4d78eb67769a7b3b3830970bfa2e919f1decf724ae4445f42c/grpcio-1.80.0-cp312-cp312-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:0cb517eb1d0d0aaf1d87af7cc5b801d686557c1d88b2619f5e31fab3c2315921", size = 7273060, upload-time = "2026-03-30T08:47:21.113Z" }, + { url = "https://files.pythonhosted.org/packages/db/f0/a3deb5feba60d9538a962913e37bd2e69a195f1c3376a3dd44fe0427e996/grpcio-1.80.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:4e78c4ac0d97dc2e569b2f4bcbbb447491167cb358d1a389fc4af71ab6f70411", size = 6782121, upload-time = "2026-03-30T08:47:23.827Z" }, + { url = "https://files.pythonhosted.org/packages/ca/84/36c6dcfddc093e108141f757c407902a05085e0c328007cb090d56646cdf/grpcio-1.80.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2ed770b4c06984f3b47eb0517b1c69ad0b84ef3f40128f51448433be904634cd", size = 7383811, upload-time = "2026-03-30T08:47:26.517Z" }, + { url = "https://files.pythonhosted.org/packages/7c/ef/f3a77e3dc5b471a0ec86c564c98d6adfa3510d38f8ee99010410858d591e/grpcio-1.80.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:256507e2f524092f1473071a05e65a5b10d84b82e3ff24c5b571513cfaa61e2f", size = 8393860, upload-time = "2026-03-30T08:47:29.439Z" }, + { url = "https://files.pythonhosted.org/packages/9b/8d/9d4d27ed7f33d109c50d6b5ce578a9914aa68edab75d65869a17e630a8d1/grpcio-1.80.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:9a6284a5d907c37db53350645567c522be314bac859a64a7a5ca63b77bb7958f", size = 7830132, upload-time = "2026-03-30T08:47:33.254Z" }, + { url = "https://files.pythonhosted.org/packages/14/e4/9990b41c6d7a44e1e9dee8ac11d7a9802ba1378b40d77468a7761d1ad288/grpcio-1.80.0-cp312-cp312-win32.whl", hash = "sha256:c71309cfce2f22be26aa4a847357c502db6c621f1a49825ae98aa0907595b193", size = 4140904, upload-time = "2026-03-30T08:47:35.319Z" }, + { url = "https://files.pythonhosted.org/packages/2f/2c/296f6138caca1f4b92a31ace4ae1b87dab692fc16a7a3417af3bb3c805bf/grpcio-1.80.0-cp312-cp312-win_amd64.whl", hash = "sha256:9fe648599c0e37594c4809d81a9e77bd138cc82eb8baa71b6a86af65426723ff", size = 4880944, upload-time = "2026-03-30T08:47:37.831Z" }, +] + +[[package]] +name = "grpcio-status" +version = "1.80.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "googleapis-common-protos" }, + { name = "grpcio" }, + { name = "protobuf" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b1/ed/105f619bdd00cb47a49aa2feea6232ea2bbb04199d52a22cc6a7d603b5cb/grpcio_status-1.80.0.tar.gz", hash = "sha256:df73802a4c89a3ea88aa2aff971e886fccce162bc2e6511408b3d67a144381cd", size = 13901, upload-time = "2026-03-30T08:54:34.784Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/76/80/58cd2dfc19a07d022abe44bde7c365627f6c7cb6f692ada6c65ca437d09a/grpcio_status-1.80.0-py3-none-any.whl", hash = "sha256:4b56990363af50dbf2c2ebb80f1967185c07d87aa25aa2bea45ddb75fc181dbe", size = 14638, upload-time = "2026-03-30T08:54:01.569Z" }, +] + [[package]] name = "h11" version = "0.16.0" @@ -1127,6 +1298,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/67/8a/a342b2f0251f3dac4ca17618265d93bf244a2a4d089126e81e4c1056ac50/jiter-0.13.0-graalpy312-graalpy250_312_native-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7bb00b6d26db67a05fe3e12c76edc75f32077fb51deed13822dc648fa373bc19", size = 343768, upload-time = "2026-02-02T12:37:55.055Z" }, ] +[[package]] +name = "jmespath" +version = "1.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d3/59/322338183ecda247fb5d1763a6cbe46eff7222eaeebafd9fa65d4bf5cb11/jmespath-1.1.0.tar.gz", hash = "sha256:472c87d80f36026ae83c6ddd0f1d05d4e510134ed462851fd5f754c8c3cbb88d", size = 27377, upload-time = "2026-01-22T16:35:26.279Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/14/2f/967ba146e6d58cf6a652da73885f52fc68001525b4197effc174321d70b4/jmespath-1.1.0-py3-none-any.whl", hash = "sha256:a5663118de4908c91729bea0acadca56526eb2698e83de10cd116ae0f4e97c64", size = 20419, upload-time = "2026-01-22T16:35:24.919Z" }, +] + [[package]] name = "joblib" version = "1.5.3" @@ -1954,6 +2134,18 @@ bcrypt = [ { name = "bcrypt" }, ] +[[package]] +name = "pdf2image" +version = "1.17.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pillow" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/00/d8/b280f01045555dc257b8153c00dee3bc75830f91a744cd5f84ef3a0a64b1/pdf2image-1.17.0.tar.gz", hash = "sha256:eaa959bc116b420dd7ec415fcae49b98100dda3dd18cd2fdfa86d09f112f6d57", size = 12811, upload-time = "2024-01-07T20:33:01.965Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/62/33/61766ae033518957f877ab246f87ca30a85b778ebaad65b7f74fa7e52988/pdf2image-1.17.0-py3-none-any.whl", hash = "sha256:ecdd58d7afb810dffe21ef2b1bbc057ef434dabbac6c33778a38a3f7744a27e2", size = 11618, upload-time = "2024-01-07T20:32:59.957Z" }, +] + [[package]] name = "pgvector" version = "0.3.6" @@ -2121,6 +2313,33 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/5b/5a/bc7b4a4ef808fa59a816c17b20c4bef6884daebbdf627ff2a161da67da19/propcache-0.4.1-py3-none-any.whl", hash = "sha256:af2a6052aeb6cf17d3e46ee169099044fd8224cbaf75c76a2ef596e8163e2237", size = 13305, upload-time = "2025-10-08T19:49:00.792Z" }, ] +[[package]] +name = "proto-plus" +version = "1.27.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "protobuf" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/81/0d/94dfe80193e79d55258345901acd2917523d56e8381bc4dee7fd38e3868a/proto_plus-1.27.2.tar.gz", hash = "sha256:b2adde53adadf75737c44d3dcb0104fde65250dfc83ad59168b4aa3e574b6a24", size = 57204, upload-time = "2026-03-26T22:18:57.174Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/84/f3/1fba73eeffafc998a25d59703b63f8be4fe8a5cb12eaff7386a0ba0f7125/proto_plus-1.27.2-py3-none-any.whl", hash = "sha256:6432f75893d3b9e70b9c412f1d2f03f65b11fb164b793d14ae2ca01821d22718", size = 50450, upload-time = "2026-03-26T22:13:42.927Z" }, +] + +[[package]] +name = "protobuf" +version = "6.33.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/66/70/e908e9c5e52ef7c3a6c7902c9dfbb34c7e29c25d2f81ade3856445fd5c94/protobuf-6.33.6.tar.gz", hash = "sha256:a6768d25248312c297558af96a9f9c929e8c4cee0659cb07e780731095f38135", size = 444531, upload-time = "2026-03-18T19:05:00.988Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fc/9f/2f509339e89cfa6f6a4c4ff50438db9ca488dec341f7e454adad60150b00/protobuf-6.33.6-cp310-abi3-win32.whl", hash = "sha256:7d29d9b65f8afef196f8334e80d6bc1d5d4adedb449971fefd3723824e6e77d3", size = 425739, upload-time = "2026-03-18T19:04:48.373Z" }, + { url = "https://files.pythonhosted.org/packages/76/5d/683efcd4798e0030c1bab27374fd13a89f7c2515fb1f3123efdfaa5eab57/protobuf-6.33.6-cp310-abi3-win_amd64.whl", hash = "sha256:0cd27b587afca21b7cfa59a74dcbd48a50f0a6400cfb59391340ad729d91d326", size = 437089, upload-time = "2026-03-18T19:04:50.381Z" }, + { url = "https://files.pythonhosted.org/packages/5c/01/a3c3ed5cd186f39e7880f8303cc51385a198a81469d53d0fdecf1f64d929/protobuf-6.33.6-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:9720e6961b251bde64edfdab7d500725a2af5280f3f4c87e57c0208376aa8c3a", size = 427737, upload-time = "2026-03-18T19:04:51.866Z" }, + { url = "https://files.pythonhosted.org/packages/ee/90/b3c01fdec7d2f627b3a6884243ba328c1217ed2d978def5c12dc50d328a3/protobuf-6.33.6-cp39-abi3-manylinux2014_aarch64.whl", hash = "sha256:e2afbae9b8e1825e3529f88d514754e094278bb95eadc0e199751cdd9a2e82a2", size = 324610, upload-time = "2026-03-18T19:04:53.096Z" }, + { url = "https://files.pythonhosted.org/packages/9b/ca/25afc144934014700c52e05103c2421997482d561f3101ff352e1292fb81/protobuf-6.33.6-cp39-abi3-manylinux2014_s390x.whl", hash = "sha256:c96c37eec15086b79762ed265d59ab204dabc53056e3443e702d2681f4b39ce3", size = 339381, upload-time = "2026-03-18T19:04:54.616Z" }, + { url = "https://files.pythonhosted.org/packages/16/92/d1e32e3e0d894fe00b15ce28ad4944ab692713f2e7f0a99787405e43533a/protobuf-6.33.6-cp39-abi3-manylinux2014_x86_64.whl", hash = "sha256:e9db7e292e0ab79dd108d7f1a94fe31601ce1ee3f7b79e0692043423020b0593", size = 323436, upload-time = "2026-03-18T19:04:55.768Z" }, + { url = "https://files.pythonhosted.org/packages/c4/72/02445137af02769918a93807b2b7890047c32bfb9f90371cbc12688819eb/protobuf-6.33.6-py3-none-any.whl", hash = "sha256:77179e006c476e69bf8e8ce866640091ec42e1beb80b213c3900006ecfba6901", size = 170656, upload-time = "2026-03-18T19:04:59.826Z" }, +] + [[package]] name = "psycopg" version = "3.2.3" @@ -2181,6 +2400,27 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b5/bf/635fbe5dd10ed200afbbfbe98f8602829252ca1cce81cc48fb25ed8dadc0/psycopg2-2.9.11-cp312-cp312-win_amd64.whl", hash = "sha256:e03e4a6dbe87ff81540b434f2e5dc2bddad10296db5eea7bdc995bf5f4162938", size = 2713969, upload-time = "2025-10-10T11:10:15.946Z" }, ] +[[package]] +name = "pyasn1" +version = "0.6.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/5c/5f/6583902b6f79b399c9c40674ac384fd9cd77805f9e6205075f828ef11fb2/pyasn1-0.6.3.tar.gz", hash = "sha256:697a8ecd6d98891189184ca1fa05d1bb00e2f84b5977c481452050549c8a72cf", size = 148685, upload-time = "2026-03-17T01:06:53.382Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5d/a0/7d793dce3fa811fe047d6ae2431c672364b462850c6235ae306c0efd025f/pyasn1-0.6.3-py3-none-any.whl", hash = "sha256:a80184d120f0864a52a073acc6fc642847d0be408e7c7252f31390c0f4eadcde", size = 83997, upload-time = "2026-03-17T01:06:52.036Z" }, +] + +[[package]] +name = "pyasn1-modules" +version = "0.4.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pyasn1" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e9/e6/78ebbb10a8c8e4b61a59249394a4a594c1a7af95593dc933a349c8d00964/pyasn1_modules-0.4.2.tar.gz", hash = "sha256:677091de870a80aae844b1ca6134f54652fa2c8c5a52aa396440ac3106e941e6", size = 307892, upload-time = "2025-03-28T02:41:22.17Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/47/8d/d529b5d697919ba8c11ad626e835d4039be708a35b0d22de83a269a6682c/pyasn1_modules-0.4.2-py3-none-any.whl", hash = "sha256:29253a9207ce32b64c3ac6600edc75368f98473906e8fd1043bd6b5b1de2c14a", size = 181259, upload-time = "2025-03-28T02:41:19.028Z" }, +] + [[package]] name = "pycparser" version = "3.0" @@ -2310,6 +2550,43 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/60/4c/33f75713d50d5247f2258405142c0318ff32c6f8976171c4fcae87a9dbdf/pymongo-4.16.0-cp312-cp312-win_arm64.whl", hash = "sha256:dfc320f08ea9a7ec5b2403dc4e8150636f0d6150f4b9792faaae539c88e7db3b", size = 892971, upload-time = "2026-01-07T18:04:35.594Z" }, ] +[[package]] +name = "pymssql" +version = "2.3.13" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/7a/cc/843c044b7f71ee329436b7327c578383e2f2499313899f88ad267cdf1f33/pymssql-2.3.13.tar.gz", hash = "sha256:2137e904b1a65546be4ccb96730a391fcd5a85aab8a0632721feb5d7e39cfbce", size = 203153, upload-time = "2026-02-14T05:00:36.865Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ba/60/a2e8a8a38f7be21d54402e2b3365cd56f1761ce9f2706c97f864e8aa8300/pymssql-2.3.13-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:cf4f32b4a05b66f02cb7d55a0f3bcb0574a6f8cf0bee4bea6f7b104038364733", size = 3158689, upload-time = "2026-02-14T04:59:46.982Z" }, + { url = "https://files.pythonhosted.org/packages/43/9e/0cf0ffb9e2f73238baf766d8e31d7237b5bee3cc1bb29a376b404610994a/pymssql-2.3.13-cp312-cp312-macosx_15_0_x86_64.whl", hash = "sha256:2b056eb175955f7fb715b60dc1c0c624969f4d24dbdcf804b41ab1e640a2b131", size = 2960018, upload-time = "2026-02-14T04:59:48.668Z" }, + { url = "https://files.pythonhosted.org/packages/93/ea/bc27354feaca717faa4626911f6b19bb62985c87dda28957c63de4de5895/pymssql-2.3.13-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:319810b89aa64b99d9c5c01518752c813938df230496fa2c4c6dda0603f04c4c", size = 3065719, upload-time = "2026-02-14T04:59:50.369Z" }, + { url = "https://files.pythonhosted.org/packages/1e/7a/8028681c96241fb5fc850b87c8959402c353e4b83c6e049a99ffa67ded54/pymssql-2.3.13-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c0ea72641cb0f8bce7ad8565dbdbda4a7437aa58bce045f2a3a788d71af2e4be", size = 3190567, upload-time = "2026-02-14T04:59:52.202Z" }, + { url = "https://files.pythonhosted.org/packages/aa/f1/ab5b76adbbd6db9ce746d448db34b044683522e7e7b95053f9dd0165297b/pymssql-2.3.13-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1493f63d213607f708a5722aa230776ada726ccdb94097fab090a1717a2534e0", size = 3710481, upload-time = "2026-02-14T04:59:54.01Z" }, + { url = "https://files.pythonhosted.org/packages/59/aa/2fa0951475cd0a1829e0b8bfbe334d04ece4bce11546a556b005c4100689/pymssql-2.3.13-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:eb3275985c23479e952d6462ae6c8b2b6993ab6b99a92805a9c17942cf3d5b3d", size = 3453789, upload-time = "2026-02-14T04:59:56.841Z" }, + { url = "https://files.pythonhosted.org/packages/78/08/8cd2af9003f9fc03912b658a64f5a4919dcd68f0dd3bbc822b49a3d14fd9/pymssql-2.3.13-cp312-cp312-win_amd64.whl", hash = "sha256:a930adda87bdd8351a5637cf73d6491936f34e525a5e513068a6eac742f69cdb", size = 1994709, upload-time = "2026-02-14T04:59:58.972Z" }, +] + +[[package]] +name = "pymysql" +version = "1.1.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f5/ae/1fe3fcd9f959efa0ebe200b8de88b5a5ce3e767e38c7ac32fb179f16a388/pymysql-1.1.2.tar.gz", hash = "sha256:4961d3e165614ae65014e361811a724e2044ad3ea3739de9903ae7c21f539f03", size = 48258, upload-time = "2025-08-24T12:55:55.146Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7c/4c/ad33b92b9864cbde84f259d5df035a6447f91891f5be77788e2a3892bce3/pymysql-1.1.2-py3-none-any.whl", hash = "sha256:e6b1d89711dd51f8f74b1631fe08f039e7d76cf67a42a323d3178f0f25762ed9", size = 45300, upload-time = "2025-08-24T12:55:53.394Z" }, +] + +[[package]] +name = "pyopenssl" +version = "25.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cryptography" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/04/8c/cd89ad05804f8e3c17dea8f178c3f40eeab5694c30e0c9f5bcd49f576fc3/pyopenssl-25.1.0.tar.gz", hash = "sha256:8d031884482e0c67ee92bf9a4d8cceb08d92aba7136432ffb0703c5280fc205b", size = 179937, upload-time = "2025-05-17T16:28:31.31Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/80/28/2659c02301b9500751f8d42f9a6632e1508aa5120de5e43042b8b30f8d5d/pyopenssl-25.1.0-py3-none-any.whl", hash = "sha256:2b11f239acc47ac2e5aca04fd7fa829800aeee22a2eb30d744572a157bd8a1ab", size = 56771, upload-time = "2025-05-17T16:28:29.197Z" }, +] + [[package]] name = "pyparsing" version = "3.3.2" @@ -2328,6 +2605,28 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/04/fc/6f52588ac1cb4400a7804ef88d0d4e00cfe57a7ac6793ec3b00de5a8758b/pypdf-5.1.0-py3-none-any.whl", hash = "sha256:3bd4f503f4ebc58bae40d81e81a9176c400cbbac2ba2d877367595fb524dfdfc", size = 297976, upload-time = "2024-10-27T19:46:44.439Z" }, ] +[[package]] +name = "pypdf2" +version = "3.0.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/9f/bb/18dc3062d37db6c491392007dfd1a7f524bb95886eb956569ac38a23a784/PyPDF2-3.0.1.tar.gz", hash = "sha256:a74408f69ba6271f71b9352ef4ed03dc53a31aa404d29b5d31f53bfecfee1440", size = 227419, upload-time = "2022-12-31T10:36:13.13Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8e/5e/c86a5643653825d3c913719e788e41386bee415c2b87b4f955432f2de6b2/pypdf2-3.0.1-py3-none-any.whl", hash = "sha256:d16e4205cfee272fbdc0568b68d82be796540b1537508cef59388f839c191928", size = 232572, upload-time = "2022-12-31T10:36:10.327Z" }, +] + +[[package]] +name = "pytesseract" +version = "0.3.13" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "packaging" }, + { name = "pillow" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/9f/a6/7d679b83c285974a7cb94d739b461fa7e7a9b17a3abfd7bf6cbc5c2394b0/pytesseract-0.3.13.tar.gz", hash = "sha256:4bf5f880c99406f52a3cfc2633e42d9dc67615e69d8a509d74867d3baddb5db9", size = 17689, upload-time = "2024-08-16T02:33:56.762Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7a/33/8312d7ce74670c9d39a532b2c246a853861120486be9443eebf048043637/pytesseract-0.3.13-py3-none-any.whl", hash = "sha256:7a99c6c2ac598360693d83a416e36e0b33a67638bb9d77fdcac094a3589d4b34", size = 14705, upload-time = "2024-08-16T02:36:10.09Z" }, +] + [[package]] name = "pytest" version = "8.3.4" @@ -2610,6 +2909,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/13/9f/026e18ca7d7766783d779dae5e9c656746c6ede36ef73c6d934aaf4a6dec/ruff-0.8.4-py3-none-win_arm64.whl", hash = "sha256:9183dd615d8df50defa8b1d9a074053891ba39025cf5ae88e8bcb52edcc4bf08", size = 9074500, upload-time = "2024-12-19T13:36:23.92Z" }, ] +[[package]] +name = "s3transfer" +version = "0.16.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "botocore" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/05/04/74127fc843314818edfa81b5540e26dd537353b123a4edc563109d8f17dd/s3transfer-0.16.0.tar.gz", hash = "sha256:8e990f13268025792229cd52fa10cb7163744bf56e719e0b9cb925ab79abf920", size = 153827, upload-time = "2025-12-01T02:30:59.114Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fc/51/727abb13f44c1fcf6d145979e1535a35794db0f6e450a0cb46aa24732fe2/s3transfer-0.16.0-py3-none-any.whl", hash = "sha256:18e25d66fed509e3868dc1572b3f427ff947dd2c56f844a5bf09481ad3f3b2fe", size = 86830, upload-time = "2025-12-01T02:30:57.729Z" }, +] + [[package]] name = "safetensors" version = "0.7.0" @@ -2764,6 +3075,60 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2", size = 10235, upload-time = "2024-02-25T23:20:01.196Z" }, ] +[[package]] +name = "snowflake-connector-python" +version = "4.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "asn1crypto" }, + { name = "boto3" }, + { name = "botocore" }, + { name = "certifi" }, + { name = "charset-normalizer" }, + { name = "cryptography" }, + { name = "filelock" }, + { name = "idna" }, + { name = "packaging" }, + { name = "platformdirs" }, + { name = "pyjwt" }, + { name = "pyopenssl" }, + { name = "pytz" }, + { name = "requests" }, + { name = "sortedcontainers" }, + { name = "tomlkit" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/1d/f1/4aff125021a9c5e0183f2f55dd7d04b7256a0e1e10db50d537a7415d9c55/snowflake_connector_python-4.0.0.tar.gz", hash = "sha256:4b10a865c4a5e1fa60c365c7fe41e0433605e6e5edc824e8730a9038f330b3a6", size = 813937, upload-time = "2025-10-09T10:11:34.631Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ea/b0/462c0deee35d6d03d3d729b3f923615bae665beb7f9a94673a23a52080fe/snowflake_connector_python-4.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:bfd3b8523d7adc830f99c5c4c635689ceca61700a05368d5bbb34c6811f2ec54", size = 1029568, upload-time = "2025-10-09T10:11:42.125Z" }, + { url = "https://files.pythonhosted.org/packages/ff/4b/bb3ae3f07e7927c8f16c4c0f1283d3c721978d16e8bf4193fc8e41025c1e/snowflake_connector_python-4.0.0-cp312-cp312-macosx_11_0_x86_64.whl", hash = "sha256:835161dd46ef8f5fc9d2f135ca654c2f3fbdf57b035d3e1980506aa8eac671dc", size = 1041337, upload-time = "2025-10-09T10:11:43.692Z" }, + { url = "https://files.pythonhosted.org/packages/9c/75/4bfac89f10c6dbb75e97adf1e217737fc599ebf964031c9298b6cbd807d0/snowflake_connector_python-4.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:65e4e36dd1b0c7235d84cddef8a3c97c5ea0dc8fea85e31e45fc485000b77a83", size = 2699730, upload-time = "2025-10-09T10:11:25.295Z" }, + { url = "https://files.pythonhosted.org/packages/cd/78/0e916416c50909dbae511fe38b1e671a9efa62decdce51b174a0396804e4/snowflake_connector_python-4.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e6132986d6965e4005b0167270612fbc7fa4bc4ef42726a40b85a8f57475a78d", size = 2731336, upload-time = "2025-10-09T10:11:27.028Z" }, + { url = "https://files.pythonhosted.org/packages/83/f0/3db8a2f3f5ee724d309c661af739a70d0643070b9b4597728151ef900f9b/snowflake_connector_python-4.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:a790f06808e4481c23cfed1396d2c9a786060ddd62408b1fda1a63e1e6bc4b07", size = 1176292, upload-time = "2025-10-09T10:11:54.956Z" }, +] + +[[package]] +name = "snowflake-sqlalchemy" +version = "1.9.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "snowflake-connector-python" }, + { name = "sqlalchemy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ff/6a/fcc5c00c3a253029a7b7b293a3958ba07d5e97623b643de47be0cc9e5530/snowflake_sqlalchemy-1.9.0.tar.gz", hash = "sha256:fb32baf559f7f933ae8fde2ec535bcea5381bb15188777cd8c006b3226efa3b1", size = 141707, upload-time = "2026-03-04T13:48:17.905Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/88/28/b7ae8df80847e8157b74669ad7e1b0180e82ac0e3daf950612effd232fea/snowflake_sqlalchemy-1.9.0-py3-none-any.whl", hash = "sha256:f0b1528173e93c8c80bd9ca510985054667e0e514dd90b890271ac1cfae261c1", size = 78953, upload-time = "2026-03-04T13:48:16.393Z" }, +] + +[[package]] +name = "sortedcontainers" +version = "2.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e8/c4/ba2f8066cceb6f23394729afe52f3bf7adec04bf9ed2c820b39e19299111/sortedcontainers-2.4.0.tar.gz", hash = "sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88", size = 30594, upload-time = "2021-05-16T22:03:42.897Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/32/46/9cb0e58b2deb7f82b84065f37f3bffeb12413f947f9388e4cac22c4621ce/sortedcontainers-2.4.0-py2.py3-none-any.whl", hash = "sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0", size = 29575, upload-time = "2021-05-16T22:03:41.177Z" }, +] + [[package]] name = "spacy" version = "3.8.3" @@ -2842,6 +3207,31 @@ asyncio = [ { name = "greenlet" }, ] +[[package]] +name = "sqlalchemy-bigquery" +version = "1.16.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "google-api-core" }, + { name = "google-auth" }, + { name = "google-cloud-bigquery" }, + { name = "packaging" }, + { name = "sqlalchemy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/7e/6a/c49932b3d9c44cab9202b1866c5b36b7f0d0455d4653fbc0af4466aeaa76/sqlalchemy_bigquery-1.16.0.tar.gz", hash = "sha256:fe937a0d1f4cf7219fcf5d4995c6718805b38d4df43e29398dec5dc7b6d1987e", size = 119632, upload-time = "2025-11-06T01:35:40.373Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c0/87/11e6de00ef7949bb8ea06b55304a1a4911c329fdf0d9882b464db240c2c5/sqlalchemy_bigquery-1.16.0-py3-none-any.whl", hash = "sha256:0fe7634cd954f3e74f5e2db6d159f9e5ee87a47fbe8d52eac3cd3bb3dadb3a77", size = 40615, upload-time = "2025-11-06T01:35:39.358Z" }, +] + +[[package]] +name = "sqlglot" +version = "30.6.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/3c/66/6ece15f197874e56c76e1d0269cebf284ba992a80dfadca9d1972fdf7edf/sqlglot-30.6.0.tar.gz", hash = "sha256:246d34d39927422a50a3fa155f37b2f6346fba85f1a755b13c941eb32ef93361", size = 5835307, upload-time = "2026-04-20T20:11:08.164Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/dc/e7/64fe971cbca33a0446b06f4a5ff8e3fa4a1dbd0a039ceabcc3e6cf4087a9/sqlglot-30.6.0-py3-none-any.whl", hash = "sha256:e005fc2f47994f90d7d8df341f1cbe937518497b0b7b1507d4c03c4c9dfd2778", size = 673920, upload-time = "2026-04-20T20:11:05.758Z" }, +] + [[package]] name = "srsly" version = "2.5.3" @@ -3015,6 +3405,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/72/f4/0de46cfa12cdcbcd464cc59fde36912af405696f687e53a091fb432f694c/tokenizers-0.22.2-cp39-abi3-win_arm64.whl", hash = "sha256:9ce725d22864a1e965217204946f830c37876eee3b2ba6fc6255e8e903d5fcbc", size = 2612133, upload-time = "2026-01-05T10:45:17.232Z" }, ] +[[package]] +name = "tomlkit" +version = "0.14.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/c3/af/14b24e41977adb296d6bd1fb59402cf7d60ce364f90c890bd2ec65c43b5a/tomlkit-0.14.0.tar.gz", hash = "sha256:cf00efca415dbd57575befb1f6634c4f42d2d87dbba376128adb42c121b87064", size = 187167, upload-time = "2026-01-13T01:14:53.304Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b5/11/87d6d29fb5d237229d67973a6c9e06e048f01cf4994dee194ab0ea841814/tomlkit-0.14.0-py3-none-any.whl", hash = "sha256:592064ed85b40fa213469f81ac584f67a4f2992509a7c3ea2d632208623a3680", size = 39310, upload-time = "2026-01-13T01:14:51.965Z" }, +] + [[package]] name = "torch" version = "2.11.0"