diff --git a/enrollments-events/Makefile b/enrollments-events/Makefile
new file mode 100644
index 0000000..dc7246f
--- /dev/null
+++ b/enrollments-events/Makefile
@@ -0,0 +1,5 @@
+build:
+ sam build --use-container
+
+deploy: build
+ sam deploy --debug
diff --git a/enrollments-events/app/boto3clients.py b/enrollments-events/app/boto3clients.py
new file mode 100644
index 0000000..05de43d
--- /dev/null
+++ b/enrollments-events/app/boto3clients.py
@@ -0,0 +1,13 @@
+import os
+
+import boto3
+
+
+def get_dynamodb_client():
+ if os.getenv('AWS_LAMBDA_FUNCTION_NAME'):
+ return boto3.client('dynamodb')
+
+ return boto3.client('dynamodb', endpoint_url='http://127.0.0.1:8000')
+
+
+dynamodb_client = get_dynamodb_client()
diff --git a/enrollments-events/app/certs/fonts/SF-Pro.ttf b/enrollments-events/app/certs/fonts/SF-Pro.ttf
new file mode 100755
index 0000000..1e8aa63
Binary files /dev/null and b/enrollments-events/app/certs/fonts/SF-Pro.ttf differ
diff --git a/enrollments-events/app/certs/hello.py b/enrollments-events/app/certs/hello.py
new file mode 100644
index 0000000..5aa4204
--- /dev/null
+++ b/enrollments-events/app/certs/hello.py
@@ -0,0 +1,53 @@
+import base64
+import io
+import locale
+from datetime import date
+from uuid import uuid4
+
+import qrcode
+from jinja2 import Template
+from PIL import Image
+from weasyprint import HTML
+
+locale.setlocale(locale.LC_TIME, 'pt_BR')
+today = date.today()
+
+with open('nr10_complementar_sep.html', encoding='utf-8') as f:
+ html = f.read()
+
+
+def cpf_fmt(s: str) -> str:
+ """Returns a string as a Brazilian CPF number."""
+ return '{}.{}.{}-{}'.format(s[:3], s[3:6], s[6:9], s[9:])
+
+
+qr = qrcode.QRCode(
+ version=1,
+ error_correction=qrcode.constants.ERROR_CORRECT_H,
+ box_size=10,
+ border=3,
+)
+qr.add_data('https://eduseg.com.br')
+qr.make(fit=True)
+img = qr.make_image(fill_color='black', back_color='white')
+img = img.resize((120, 120), Image.NEAREST)
+buffer = io.BytesIO()
+img.save(buffer, format='PNG')
+img_str = base64.b64encode(buffer.getvalue()).decode('utf-8')
+qrcode_base64 = f'data:image/png;base64,{img_str}'
+
+
+template = Template(html)
+html_rendered = template.render(
+ id=uuid4(),
+ name='Sérgio Rafael de Siqueira',
+ cpf=cpf_fmt('07879819908'),
+ progress=91.99,
+ course='NR-10 Complementar (SEP)',
+ today=today.strftime('%-d de %B de %Y'),
+ started_date=today.strftime('%d/%m/%Y'),
+ finished_date=today.strftime('%d/%m/%Y'),
+ qrcode=qrcode_base64,
+)
+
+HTML(string=html_rendered, base_url='').write_pdf('cert.pdf')
diff --git a/enrollments-events/app/certs/pyproject.toml b/enrollments-events/app/certs/pyproject.toml
new file mode 100644
index 0000000..0bdf59f
--- /dev/null
+++ b/enrollments-events/app/certs/pyproject.toml
@@ -0,0 +1,28 @@
+[project]
+name = "certs"
+version = "0.1.0"
+description = "Add your description here"
+readme = "README.md"
+requires-python = ">=3.13"
+dependencies = [
+ "jinja2>=3.1.6",
+ "layercake",
+ "qrcode>=8.2",
+]
+
+[tool.uv.sources]
+layercake = { path = "../layercake" }
+
+[tool.ruff]
+target-version = "py311"
+src = ["app"]
+
+[tool.ruff.format]
+quote-style = "single"
+
+[tool.ruff.lint]
+select = ["E", "F", "I"]
+[dependency-groups]
+dev = [
+ "ruff>=0.11.9",
+]
diff --git a/enrollments-events/app/certs/sample.html b/enrollments-events/app/certs/sample.html
new file mode 100644
index 0000000..65d1ef3
--- /dev/null
+++ b/enrollments-events/app/certs/sample.html
@@ -0,0 +1,251 @@
+
+
+
+
+ NR-10 Complementar (SEP)
+
+
+
+
+
+
+
+
+ Certificamos que
+ {{ name }}
+
+ Portador(a) do CPF {{ cpf }} , concluiu o curso
+ de NR-10 Complementar (SEP) com aproveitamento
+ de
+ {{ progress }}%
+
+ Realizado entre {{ started_date }} e {{ finished_date }}
+ Florianópolis, SC, {{ today }}
+
+
+
+
+
Tiago Maciel do Santos
+
CEO/Diretor
+
+
+
+
+

+
+
+
+
+
+
Conteúdo programático ministrado
+
+ - Organização do sistema elétrico de potência
+ - Organização do trabalho
+ - Aspectos comportamentais
+ - Condições impeditivas para serviços
+ - Riscos típicos no SEP e sua prevenção
+ - Técnicas de análise de riscos no SEP
+ - Procedimentos de trabalho (análise e discussão)
+ - Técnicas de análise de riscos no SEP
+ - Equipamentos e ferramentas de trabalho
+ - Sistemas de proteção coletiva
+ - Equipamentos de proteção individual
+ - Posturas e vestuários de trabalhos
+ -
+ Segurança com veículos e transporte de pessoas,
+ materiais e equipamentos
+
+ - Sinalização e isolamento de áreas de trabalho
+ -
+ Liberação de instalação para serviço, operação e uso
+
+ -
+ Treinamento em técnicas de remoção, atendimento e
+ transporte de acidentados
+
+ - Acidentes típicos
+ - Responsabilidades
+
+
+
+
+
+ Carga horária
+ 40 horas
+
+
+
+ Instrutor e responsável técnico
+
+
Francis Ricardo Baretta
+
CPF 039.539.409-02
+
Eng. de Segurança no Trabalho Eng. Eletricista
+
CREA/SC 126693-0
+
+
+
+
+
+
diff --git a/enrollments-events/app/certs/uv.lock b/enrollments-events/app/certs/uv.lock
new file mode 100644
index 0000000..c5c5307
--- /dev/null
+++ b/enrollments-events/app/certs/uv.lock
@@ -0,0 +1,1006 @@
+version = 1
+revision = 2
+requires-python = ">=3.13"
+
+[[package]]
+name = "annotated-types"
+version = "0.7.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89", size = 16081, upload-time = "2024-05-20T21:33:25.928Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" },
+]
+
+[[package]]
+name = "arnparse"
+version = "0.0.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/bd/42/949284e998282b167e273872fa9c39b06d41a6055163c30aa2daaeee76a0/arnparse-0.0.2.tar.gz", hash = "sha256:cb87f17200d07121108a9085d4a09cc69a55582647776b9a917b0b1f279db8f8", size = 2677, upload-time = "2019-03-12T21:17:04.586Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/57/6f/630bedeb32964e99661990811a66389201b62c047b35c17e332dad9be2a3/arnparse-0.0.2-py2.py3-none-any.whl", hash = "sha256:b0906734e4b8f19e39b1e32944c6cd6274b6da90c066a83882ac7a11d27553e0", size = 2904, upload-time = "2019-03-12T21:17:03.039Z" },
+]
+
+[[package]]
+name = "attrs"
+version = "25.3.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/5a/b0/1367933a8532ee6ff8d63537de4f1177af4bff9f3e829baf7331f595bb24/attrs-25.3.0.tar.gz", hash = "sha256:75d7cefc7fb576747b2c81b4442d4d4a1ce0900973527c011d1030fd3bf4af1b", size = 812032, upload-time = "2025-03-13T11:10:22.779Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl", hash = "sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3", size = 63815, upload-time = "2025-03-13T11:10:21.14Z" },
+]
+
+[[package]]
+name = "aws-encryption-sdk"
+version = "4.0.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "attrs" },
+ { name = "boto3" },
+ { name = "cryptography" },
+ { name = "wrapt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/45/ff/fefbcc1cee829f3ab188dbcb5069862f61b64ed82a6205314f1ab7bb90e6/aws-encryption-sdk-4.0.1.tar.gz", hash = "sha256:7320dc4cf8d8d5a9b4c88a343be93835da18756e05308d3536554be0ca2889a5", size = 260219, upload-time = "2025-03-27T17:24:54.669Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/66/a5/82956e2111b169c644633212da2a5f84dd9d953b9dd146ccfccfb8a46290/aws_encryption_sdk-4.0.1-py2.py3-none-any.whl", hash = "sha256:5c2ca9a207e1732542a1370ac7efd630ab6e04d05f98e68badf20927eb95ed1d", size = 99127, upload-time = "2025-03-27T17:24:50.903Z" },
+]
+
+[[package]]
+name = "aws-lambda-powertools"
+version = "3.12.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "jmespath" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/bb/90/7cc2e76ca959ce5985fcfff73a3885bbd5e3d85d5acd8c4ba1149b5ccaec/aws_lambda_powertools-3.12.0.tar.gz", hash = "sha256:b13146bbacf7bc029539b18c2a9b07b333cecca482d9ec4fba81dff5fb8523ea", size = 671775, upload-time = "2025-05-06T07:48:35.023Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/63/86/c73f4fc738df6a937a1d542c8e4eaf0a96a242b4fcb80db2d22fe78b39bb/aws_lambda_powertools-3.12.0-py3-none-any.whl", hash = "sha256:094d5b404a8025b09ca1425099aa417ddaff537f915b250007dcd43217c61dc5", size = 801386, upload-time = "2025-05-06T07:48:32.864Z" },
+]
+
+[package.optional-dependencies]
+all = [
+ { name = "aws-encryption-sdk" },
+ { name = "aws-xray-sdk" },
+ { name = "fastjsonschema" },
+ { name = "jsonpath-ng" },
+ { name = "pydantic" },
+ { name = "pydantic-settings" },
+]
+
+[[package]]
+name = "aws-xray-sdk"
+version = "2.14.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore" },
+ { name = "wrapt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/e0/6c/8e7fb2a45f20afc5c19d52807b560793fb48b0feca1de7de116b62a7893e/aws_xray_sdk-2.14.0.tar.gz", hash = "sha256:aab843c331af9ab9ba5cefb3a303832a19db186140894a523edafc024cc0493c", size = 93976, upload-time = "2024-06-04T22:11:38.124Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/41/69/b417833a8926fa5491e5346d7c233bf7d8a9b12ba1f4ef41ccea2494000c/aws_xray_sdk-2.14.0-py2.py3-none-any.whl", hash = "sha256:cfbe6feea3d26613a2a869d14c9246a844285c97087ad8f296f901633554ad94", size = 101922, upload-time = "2024-06-04T22:12:25.729Z" },
+]
+
+[[package]]
+name = "boltons"
+version = "25.0.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/63/54/71a94d8e02da9a865587fb3fff100cb0fc7aa9f4d5ed9ed3a591216ddcc7/boltons-25.0.0.tar.gz", hash = "sha256:e110fbdc30b7b9868cb604e3f71d4722dd8f4dcb4a5ddd06028ba8f1ab0b5ace", size = 246294, upload-time = "2025-02-03T05:57:59.129Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/45/7f/0e961cf3908bc4c1c3e027de2794f867c6c89fb4916fc7dba295a0e80a2d/boltons-25.0.0-py3-none-any.whl", hash = "sha256:dc9fb38bf28985715497d1b54d00b62ea866eca3938938ea9043e254a3a6ca62", size = 194210, upload-time = "2025-02-03T05:57:56.705Z" },
+]
+
+[[package]]
+name = "boto3"
+version = "1.38.13"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore" },
+ { name = "jmespath" },
+ { name = "s3transfer" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/c7/89/a47f62b3f81a2e3484d2a2b8dd4906c5b6e57da0af0bd59d36f99ba20baf/boto3-1.38.13.tar.gz", hash = "sha256:6633bce2b73284acce1453ca85834c7c5a59e0dbcce1170be461cc079bdcdfcf", size = 111812, upload-time = "2025-05-09T19:33:02.962Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/72/25/79e219648f10d060d152542fcf3be0093120471774b99c1a7f41ceaeca9b/boto3-1.38.13-py3-none-any.whl", hash = "sha256:668400d13889d2d2fcd66ce785cc0b0fc040681f58a9c7f67daa9149a52b6c63", size = 139934, upload-time = "2025-05-09T19:33:00.855Z" },
+]
+
+[[package]]
+name = "botocore"
+version = "1.38.13"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "jmespath" },
+ { name = "python-dateutil" },
+ { name = "urllib3" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/de/36/5b0faba074684744244e1e030e73fd5612bc2c38f557eec0a7f1a3d7ddd2/botocore-1.38.13.tar.gz", hash = "sha256:22feee15753cd3f9f7179d041604078a1024701497d27b22be7c6707e8d13ccb", size = 13882010, upload-time = "2025-05-09T19:32:51.172Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/94/df/a7a8097471d5a3bc7d408850222292d874ffc190aef7e1cacf9af770339e/botocore-1.38.13-py3-none-any.whl", hash = "sha256:de29fee43a1f02787fb5b3756ec09917d5661ed95b2b2d64797ab04196f69e14", size = 13544507, upload-time = "2025-05-09T19:32:37.727Z" },
+]
+
+[[package]]
+name = "brotli"
+version = "1.1.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/2f/c2/f9e977608bdf958650638c3f1e28f85a1b075f075ebbe77db8555463787b/Brotli-1.1.0.tar.gz", hash = "sha256:81de08ac11bcb85841e440c13611c00b67d3bf82698314928d0b676362546724", size = 7372270, upload-time = "2023-09-07T14:05:41.643Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/0a/9f/fb37bb8ffc52a8da37b1c03c459a8cd55df7a57bdccd8831d500e994a0ca/Brotli-1.1.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8bf32b98b75c13ec7cf774164172683d6e7891088f6316e54425fde1efc276d5", size = 815681, upload-time = "2024-10-18T12:32:34.942Z" },
+ { url = "https://files.pythonhosted.org/packages/06/b3/dbd332a988586fefb0aa49c779f59f47cae76855c2d00f450364bb574cac/Brotli-1.1.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7bc37c4d6b87fb1017ea28c9508b36bbcb0c3d18b4260fcdf08b200c74a6aee8", size = 422475, upload-time = "2024-10-18T12:32:36.485Z" },
+ { url = "https://files.pythonhosted.org/packages/bb/80/6aaddc2f63dbcf2d93c2d204e49c11a9ec93a8c7c63261e2b4bd35198283/Brotli-1.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c0ef38c7a7014ffac184db9e04debe495d317cc9c6fb10071f7fefd93100a4f", size = 2906173, upload-time = "2024-10-18T12:32:37.978Z" },
+ { url = "https://files.pythonhosted.org/packages/ea/1d/e6ca79c96ff5b641df6097d299347507d39a9604bde8915e76bf026d6c77/Brotli-1.1.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91d7cc2a76b5567591d12c01f019dd7afce6ba8cba6571187e21e2fc418ae648", size = 2943803, upload-time = "2024-10-18T12:32:39.606Z" },
+ { url = "https://files.pythonhosted.org/packages/ac/a3/d98d2472e0130b7dd3acdbb7f390d478123dbf62b7d32bda5c830a96116d/Brotli-1.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a93dde851926f4f2678e704fadeb39e16c35d8baebd5252c9fd94ce8ce68c4a0", size = 2918946, upload-time = "2024-10-18T12:32:41.679Z" },
+ { url = "https://files.pythonhosted.org/packages/c4/a5/c69e6d272aee3e1423ed005d8915a7eaa0384c7de503da987f2d224d0721/Brotli-1.1.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f0db75f47be8b8abc8d9e31bc7aad0547ca26f24a54e6fd10231d623f183d089", size = 2845707, upload-time = "2024-10-18T12:32:43.478Z" },
+ { url = "https://files.pythonhosted.org/packages/58/9f/4149d38b52725afa39067350696c09526de0125ebfbaab5acc5af28b42ea/Brotli-1.1.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:6967ced6730aed543b8673008b5a391c3b1076d834ca438bbd70635c73775368", size = 2936231, upload-time = "2024-10-18T12:32:45.224Z" },
+ { url = "https://files.pythonhosted.org/packages/5a/5a/145de884285611838a16bebfdb060c231c52b8f84dfbe52b852a15780386/Brotli-1.1.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:7eedaa5d036d9336c95915035fb57422054014ebdeb6f3b42eac809928e40d0c", size = 2848157, upload-time = "2024-10-18T12:32:46.894Z" },
+ { url = "https://files.pythonhosted.org/packages/50/ae/408b6bfb8525dadebd3b3dd5b19d631da4f7d46420321db44cd99dcf2f2c/Brotli-1.1.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:d487f5432bf35b60ed625d7e1b448e2dc855422e87469e3f450aa5552b0eb284", size = 3035122, upload-time = "2024-10-18T12:32:48.844Z" },
+ { url = "https://files.pythonhosted.org/packages/af/85/a94e5cfaa0ca449d8f91c3d6f78313ebf919a0dbd55a100c711c6e9655bc/Brotli-1.1.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:832436e59afb93e1836081a20f324cb185836c617659b07b129141a8426973c7", size = 2930206, upload-time = "2024-10-18T12:32:51.198Z" },
+ { url = "https://files.pythonhosted.org/packages/c2/f0/a61d9262cd01351df22e57ad7c34f66794709acab13f34be2675f45bf89d/Brotli-1.1.0-cp313-cp313-win32.whl", hash = "sha256:43395e90523f9c23a3d5bdf004733246fba087f2948f87ab28015f12359ca6a0", size = 333804, upload-time = "2024-10-18T12:32:52.661Z" },
+ { url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b", size = 358517, upload-time = "2024-10-18T12:32:54.066Z" },
+]
+
+[[package]]
+name = "brotlicffi"
+version = "1.1.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "cffi" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/95/9d/70caa61192f570fcf0352766331b735afa931b4c6bc9a348a0925cc13288/brotlicffi-1.1.0.0.tar.gz", hash = "sha256:b77827a689905143f87915310b93b273ab17888fd43ef350d4832c4a71083c13", size = 465192, upload-time = "2023-09-14T14:22:40.707Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/a2/11/7b96009d3dcc2c931e828ce1e157f03824a69fb728d06bfd7b2fc6f93718/brotlicffi-1.1.0.0-cp37-abi3-macosx_10_9_x86_64.whl", hash = "sha256:9b7ae6bd1a3f0df532b6d67ff674099a96d22bc0948955cb338488c31bfb8851", size = 453786, upload-time = "2023-09-14T14:21:57.72Z" },
+ { url = "https://files.pythonhosted.org/packages/d6/e6/a8f46f4a4ee7856fbd6ac0c6fb0dc65ed181ba46cd77875b8d9bbe494d9e/brotlicffi-1.1.0.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:19ffc919fa4fc6ace69286e0a23b3789b4219058313cf9b45625016bf7ff996b", size = 2911165, upload-time = "2023-09-14T14:21:59.613Z" },
+ { url = "https://files.pythonhosted.org/packages/be/20/201559dff14e83ba345a5ec03335607e47467b6633c210607e693aefac40/brotlicffi-1.1.0.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9feb210d932ffe7798ee62e6145d3a757eb6233aa9a4e7db78dd3690d7755814", size = 2927895, upload-time = "2023-09-14T14:22:01.22Z" },
+ { url = "https://files.pythonhosted.org/packages/cd/15/695b1409264143be3c933f708a3f81d53c4a1e1ebbc06f46331decbf6563/brotlicffi-1.1.0.0-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84763dbdef5dd5c24b75597a77e1b30c66604725707565188ba54bab4f114820", size = 2851834, upload-time = "2023-09-14T14:22:03.571Z" },
+ { url = "https://files.pythonhosted.org/packages/b4/40/b961a702463b6005baf952794c2e9e0099bde657d0d7e007f923883b907f/brotlicffi-1.1.0.0-cp37-abi3-win32.whl", hash = "sha256:1b12b50e07c3911e1efa3a8971543e7648100713d4e0971b13631cce22c587eb", size = 341731, upload-time = "2023-09-14T14:22:05.74Z" },
+ { url = "https://files.pythonhosted.org/packages/1c/fa/5408a03c041114ceab628ce21766a4ea882aa6f6f0a800e04ee3a30ec6b9/brotlicffi-1.1.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:994a4f0681bb6c6c3b0925530a1926b7a189d878e6e5e38fae8efa47c5d9c613", size = 366783, upload-time = "2023-09-14T14:22:07.096Z" },
+]
+
+[[package]]
+name = "camel-converter"
+version = "4.0.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/ee/3d/dd783586dc0c4aee5b6b88489666fdb2c0c344ea0aa8a5c10746cc423707/camel_converter-4.0.1.tar.gz", hash = "sha256:401414549ae4ac4073e38cdc4aa6d464dc534fc40aa06ff787bf0960b0c86535", size = 38915, upload-time = "2024-10-08T16:55:39.427Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/32/e5/806359514cc8305f047bd6d39d63890298c0596f7328b534059724bd1a9e/camel_converter-4.0.1-py3-none-any.whl", hash = "sha256:0cba7ca1354a29ca2191983deecc9dcf28889f606c28d6ed18ac7d4586b163ac", size = 6243, upload-time = "2024-10-08T16:55:37.769Z" },
+]
+
+[package.optional-dependencies]
+pydantic = [
+ { name = "pydantic" },
+]
+
+[[package]]
+name = "certifi"
+version = "2025.4.26"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e8/9e/c05b3920a3b7d20d3d3310465f50348e5b3694f4f88c6daf736eef3024c4/certifi-2025.4.26.tar.gz", hash = "sha256:0a816057ea3cdefcef70270d2c515e4506bbc954f417fa5ade2021213bb8f0c6", size = 160705, upload-time = "2025-04-26T02:12:29.51Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl", hash = "sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3", size = 159618, upload-time = "2025-04-26T02:12:27.662Z" },
+]
+
+[[package]]
+name = "certs"
+version = "0.1.0"
+source = { virtual = "." }
+dependencies = [
+ { name = "jinja2" },
+ { name = "layercake" },
+ { name = "qrcode" },
+]
+
+[package.dev-dependencies]
+dev = [
+ { name = "ruff" },
+]
+
+[package.metadata]
+requires-dist = [
+ { name = "jinja2", specifier = ">=3.1.6" },
+ { name = "layercake", directory = "../layercake" },
+ { name = "qrcode", specifier = ">=8.2" },
+]
+
+[package.metadata.requires-dev]
+dev = [{ name = "ruff", specifier = ">=0.11.9" }]
+
+[[package]]
+name = "cffi"
+version = "1.17.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "pycparser" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fc/97/c783634659c2920c3fc70419e3af40972dbaf758daa229a7d6ea6135c90d/cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824", size = 516621, upload-time = "2024-09-04T20:45:21.852Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/8d/f8/dd6c246b148639254dad4d6803eb6a54e8c85c6e11ec9df2cffa87571dbe/cffi-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e", size = 182989, upload-time = "2024-09-04T20:44:28.956Z" },
+ { url = "https://files.pythonhosted.org/packages/8b/f1/672d303ddf17c24fc83afd712316fda78dc6fce1cd53011b839483e1ecc8/cffi-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2", size = 178802, upload-time = "2024-09-04T20:44:30.289Z" },
+ { url = "https://files.pythonhosted.org/packages/0e/2d/eab2e858a91fdff70533cab61dcff4a1f55ec60425832ddfdc9cd36bc8af/cffi-1.17.1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3", size = 454792, upload-time = "2024-09-04T20:44:32.01Z" },
+ { url = "https://files.pythonhosted.org/packages/75/b2/fbaec7c4455c604e29388d55599b99ebcc250a60050610fadde58932b7ee/cffi-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683", size = 478893, upload-time = "2024-09-04T20:44:33.606Z" },
+ { url = "https://files.pythonhosted.org/packages/4f/b7/6e4a2162178bf1935c336d4da8a9352cccab4d3a5d7914065490f08c0690/cffi-1.17.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5", size = 485810, upload-time = "2024-09-04T20:44:35.191Z" },
+ { url = "https://files.pythonhosted.org/packages/c7/8a/1d0e4a9c26e54746dc08c2c6c037889124d4f59dffd853a659fa545f1b40/cffi-1.17.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4", size = 471200, upload-time = "2024-09-04T20:44:36.743Z" },
+ { url = "https://files.pythonhosted.org/packages/26/9f/1aab65a6c0db35f43c4d1b4f580e8df53914310afc10ae0397d29d697af4/cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd", size = 479447, upload-time = "2024-09-04T20:44:38.492Z" },
+ { url = "https://files.pythonhosted.org/packages/5f/e4/fb8b3dd8dc0e98edf1135ff067ae070bb32ef9d509d6cb0f538cd6f7483f/cffi-1.17.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed", size = 484358, upload-time = "2024-09-04T20:44:40.046Z" },
+ { url = "https://files.pythonhosted.org/packages/f1/47/d7145bf2dc04684935d57d67dff9d6d795b2ba2796806bb109864be3a151/cffi-1.17.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9", size = 488469, upload-time = "2024-09-04T20:44:41.616Z" },
+ { url = "https://files.pythonhosted.org/packages/bf/ee/f94057fa6426481d663b88637a9a10e859e492c73d0384514a17d78ee205/cffi-1.17.1-cp313-cp313-win32.whl", hash = "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d", size = 172475, upload-time = "2024-09-04T20:44:43.733Z" },
+ { url = "https://files.pythonhosted.org/packages/7c/fc/6a8cb64e5f0324877d503c854da15d76c1e50eb722e320b15345c4d0c6de/cffi-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a", size = 182009, upload-time = "2024-09-04T20:44:45.309Z" },
+]
+
+[[package]]
+name = "charset-normalizer"
+version = "3.4.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e4/33/89c2ced2b67d1c2a61c19c6751aa8902d46ce3dacb23600a283619f5a12d/charset_normalizer-3.4.2.tar.gz", hash = "sha256:5baececa9ecba31eff645232d59845c07aa030f0c81ee70184a90d35099a0e63", size = 126367, upload-time = "2025-05-02T08:34:42.01Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ea/12/a93df3366ed32db1d907d7593a94f1fe6293903e3e92967bebd6950ed12c/charset_normalizer-3.4.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:926ca93accd5d36ccdabd803392ddc3e03e6d4cd1cf17deff3b989ab8e9dbcf0", size = 199622, upload-time = "2025-05-02T08:32:56.363Z" },
+ { url = "https://files.pythonhosted.org/packages/04/93/bf204e6f344c39d9937d3c13c8cd5bbfc266472e51fc8c07cb7f64fcd2de/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eba9904b0f38a143592d9fc0e19e2df0fa2e41c3c3745554761c5f6447eedabf", size = 143435, upload-time = "2025-05-02T08:32:58.551Z" },
+ { url = "https://files.pythonhosted.org/packages/22/2a/ea8a2095b0bafa6c5b5a55ffdc2f924455233ee7b91c69b7edfcc9e02284/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3fddb7e2c84ac87ac3a947cb4e66d143ca5863ef48e4a5ecb83bd48619e4634e", size = 153653, upload-time = "2025-05-02T08:33:00.342Z" },
+ { url = "https://files.pythonhosted.org/packages/b6/57/1b090ff183d13cef485dfbe272e2fe57622a76694061353c59da52c9a659/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98f862da73774290f251b9df8d11161b6cf25b599a66baf087c1ffe340e9bfd1", size = 146231, upload-time = "2025-05-02T08:33:02.081Z" },
+ { url = "https://files.pythonhosted.org/packages/e2/28/ffc026b26f441fc67bd21ab7f03b313ab3fe46714a14b516f931abe1a2d8/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c9379d65defcab82d07b2a9dfbfc2e95bc8fe0ebb1b176a3190230a3ef0e07c", size = 148243, upload-time = "2025-05-02T08:33:04.063Z" },
+ { url = "https://files.pythonhosted.org/packages/c0/0f/9abe9bd191629c33e69e47c6ef45ef99773320e9ad8e9cb08b8ab4a8d4cb/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e635b87f01ebc977342e2697d05b56632f5f879a4f15955dfe8cef2448b51691", size = 150442, upload-time = "2025-05-02T08:33:06.418Z" },
+ { url = "https://files.pythonhosted.org/packages/67/7c/a123bbcedca91d5916c056407f89a7f5e8fdfce12ba825d7d6b9954a1a3c/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:1c95a1e2902a8b722868587c0e1184ad5c55631de5afc0eb96bc4b0d738092c0", size = 145147, upload-time = "2025-05-02T08:33:08.183Z" },
+ { url = "https://files.pythonhosted.org/packages/ec/fe/1ac556fa4899d967b83e9893788e86b6af4d83e4726511eaaad035e36595/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ef8de666d6179b009dce7bcb2ad4c4a779f113f12caf8dc77f0162c29d20490b", size = 153057, upload-time = "2025-05-02T08:33:09.986Z" },
+ { url = "https://files.pythonhosted.org/packages/2b/ff/acfc0b0a70b19e3e54febdd5301a98b72fa07635e56f24f60502e954c461/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:32fc0341d72e0f73f80acb0a2c94216bd704f4f0bce10aedea38f30502b271ff", size = 156454, upload-time = "2025-05-02T08:33:11.814Z" },
+ { url = "https://files.pythonhosted.org/packages/92/08/95b458ce9c740d0645feb0e96cea1f5ec946ea9c580a94adfe0b617f3573/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:289200a18fa698949d2b39c671c2cc7a24d44096784e76614899a7ccf2574b7b", size = 154174, upload-time = "2025-05-02T08:33:13.707Z" },
+ { url = "https://files.pythonhosted.org/packages/78/be/8392efc43487ac051eee6c36d5fbd63032d78f7728cb37aebcc98191f1ff/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4a476b06fbcf359ad25d34a057b7219281286ae2477cc5ff5e3f70a246971148", size = 149166, upload-time = "2025-05-02T08:33:15.458Z" },
+ { url = "https://files.pythonhosted.org/packages/44/96/392abd49b094d30b91d9fbda6a69519e95802250b777841cf3bda8fe136c/charset_normalizer-3.4.2-cp313-cp313-win32.whl", hash = "sha256:aaeeb6a479c7667fbe1099af9617c83aaca22182d6cf8c53966491a0f1b7ffb7", size = 98064, upload-time = "2025-05-02T08:33:17.06Z" },
+ { url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl", hash = "sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980", size = 105641, upload-time = "2025-05-02T08:33:18.753Z" },
+ { url = "https://files.pythonhosted.org/packages/20/94/c5790835a017658cbfabd07f3bfb549140c3ac458cfc196323996b10095a/charset_normalizer-3.4.2-py3-none-any.whl", hash = "sha256:7f56930ab0abd1c45cd15be65cc741c28b1c9a34876ce8c17a2fa107810c0af0", size = 52626, upload-time = "2025-05-02T08:34:40.053Z" },
+]
+
+[[package]]
+name = "colorama"
+version = "0.4.6"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" },
+]
+
+[[package]]
+name = "cryptography"
+version = "44.0.3"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "cffi", marker = "platform_python_implementation != 'PyPy'" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/53/d6/1411ab4d6108ab167d06254c5be517681f1e331f90edf1379895bcb87020/cryptography-44.0.3.tar.gz", hash = "sha256:fe19d8bc5536a91a24a8133328880a41831b6c5df54599a8417b62fe015d3053", size = 711096, upload-time = "2025-05-02T19:36:04.667Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/08/53/c776d80e9d26441bb3868457909b4e74dd9ccabd182e10b2b0ae7a07e265/cryptography-44.0.3-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:962bc30480a08d133e631e8dfd4783ab71cc9e33d5d7c1e192f0b7c06397bb88", size = 6670281, upload-time = "2025-05-02T19:34:50.665Z" },
+ { url = "https://files.pythonhosted.org/packages/6a/06/af2cf8d56ef87c77319e9086601bef621bedf40f6f59069e1b6d1ec498c5/cryptography-44.0.3-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ffc61e8f3bf5b60346d89cd3d37231019c17a081208dfbbd6e1605ba03fa137", size = 3959305, upload-time = "2025-05-02T19:34:53.042Z" },
+ { url = "https://files.pythonhosted.org/packages/ae/01/80de3bec64627207d030f47bf3536889efee8913cd363e78ca9a09b13c8e/cryptography-44.0.3-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:58968d331425a6f9eedcee087f77fd3c927c88f55368f43ff7e0a19891f2642c", size = 4171040, upload-time = "2025-05-02T19:34:54.675Z" },
+ { url = "https://files.pythonhosted.org/packages/bd/48/bb16b7541d207a19d9ae8b541c70037a05e473ddc72ccb1386524d4f023c/cryptography-44.0.3-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:e28d62e59a4dbd1d22e747f57d4f00c459af22181f0b2f787ea83f5a876d7c76", size = 3963411, upload-time = "2025-05-02T19:34:56.61Z" },
+ { url = "https://files.pythonhosted.org/packages/42/b2/7d31f2af5591d217d71d37d044ef5412945a8a8e98d5a2a8ae4fd9cd4489/cryptography-44.0.3-cp37-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:af653022a0c25ef2e3ffb2c673a50e5a0d02fecc41608f4954176f1933b12359", size = 3689263, upload-time = "2025-05-02T19:34:58.591Z" },
+ { url = "https://files.pythonhosted.org/packages/25/50/c0dfb9d87ae88ccc01aad8eb93e23cfbcea6a6a106a9b63a7b14c1f93c75/cryptography-44.0.3-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:157f1f3b8d941c2bd8f3ffee0af9b049c9665c39d3da9db2dc338feca5e98a43", size = 4196198, upload-time = "2025-05-02T19:35:00.988Z" },
+ { url = "https://files.pythonhosted.org/packages/66/c9/55c6b8794a74da652690c898cb43906310a3e4e4f6ee0b5f8b3b3e70c441/cryptography-44.0.3-cp37-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:c6cd67722619e4d55fdb42ead64ed8843d64638e9c07f4011163e46bc512cf01", size = 3966502, upload-time = "2025-05-02T19:35:03.091Z" },
+ { url = "https://files.pythonhosted.org/packages/b6/f7/7cb5488c682ca59a02a32ec5f975074084db4c983f849d47b7b67cc8697a/cryptography-44.0.3-cp37-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:b424563394c369a804ecbee9b06dfb34997f19d00b3518e39f83a5642618397d", size = 4196173, upload-time = "2025-05-02T19:35:05.018Z" },
+ { url = "https://files.pythonhosted.org/packages/d2/0b/2f789a8403ae089b0b121f8f54f4a3e5228df756e2146efdf4a09a3d5083/cryptography-44.0.3-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:c91fc8e8fd78af553f98bc7f2a1d8db977334e4eea302a4bfd75b9461c2d8904", size = 4087713, upload-time = "2025-05-02T19:35:07.187Z" },
+ { url = "https://files.pythonhosted.org/packages/1d/aa/330c13655f1af398fc154089295cf259252f0ba5df93b4bc9d9c7d7f843e/cryptography-44.0.3-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:25cd194c39fa5a0aa4169125ee27d1172097857b27109a45fadc59653ec06f44", size = 4299064, upload-time = "2025-05-02T19:35:08.879Z" },
+ { url = "https://files.pythonhosted.org/packages/10/a8/8c540a421b44fd267a7d58a1fd5f072a552d72204a3f08194f98889de76d/cryptography-44.0.3-cp37-abi3-win32.whl", hash = "sha256:3be3f649d91cb182c3a6bd336de8b61a0a71965bd13d1a04a0e15b39c3d5809d", size = 2773887, upload-time = "2025-05-02T19:35:10.41Z" },
+ { url = "https://files.pythonhosted.org/packages/b9/0d/c4b1657c39ead18d76bbd122da86bd95bdc4095413460d09544000a17d56/cryptography-44.0.3-cp37-abi3-win_amd64.whl", hash = "sha256:3883076d5c4cc56dbef0b898a74eb6992fdac29a7b9013870b34efe4ddb39a0d", size = 3209737, upload-time = "2025-05-02T19:35:12.12Z" },
+ { url = "https://files.pythonhosted.org/packages/34/a3/ad08e0bcc34ad436013458d7528e83ac29910943cea42ad7dd4141a27bbb/cryptography-44.0.3-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:5639c2b16764c6f76eedf722dbad9a0914960d3489c0cc38694ddf9464f1bb2f", size = 6673501, upload-time = "2025-05-02T19:35:13.775Z" },
+ { url = "https://files.pythonhosted.org/packages/b1/f0/7491d44bba8d28b464a5bc8cc709f25a51e3eac54c0a4444cf2473a57c37/cryptography-44.0.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f3ffef566ac88f75967d7abd852ed5f182da252d23fac11b4766da3957766759", size = 3960307, upload-time = "2025-05-02T19:35:15.917Z" },
+ { url = "https://files.pythonhosted.org/packages/f7/c8/e5c5d0e1364d3346a5747cdcd7ecbb23ca87e6dea4f942a44e88be349f06/cryptography-44.0.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:192ed30fac1728f7587c6f4613c29c584abdc565d7417c13904708db10206645", size = 4170876, upload-time = "2025-05-02T19:35:18.138Z" },
+ { url = "https://files.pythonhosted.org/packages/73/96/025cb26fc351d8c7d3a1c44e20cf9a01e9f7cf740353c9c7a17072e4b264/cryptography-44.0.3-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:7d5fe7195c27c32a64955740b949070f21cba664604291c298518d2e255931d2", size = 3964127, upload-time = "2025-05-02T19:35:19.864Z" },
+ { url = "https://files.pythonhosted.org/packages/01/44/eb6522db7d9f84e8833ba3bf63313f8e257729cf3a8917379473fcfd6601/cryptography-44.0.3-cp39-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:3f07943aa4d7dad689e3bb1638ddc4944cc5e0921e3c227486daae0e31a05e54", size = 3689164, upload-time = "2025-05-02T19:35:21.449Z" },
+ { url = "https://files.pythonhosted.org/packages/68/fb/d61a4defd0d6cee20b1b8a1ea8f5e25007e26aeb413ca53835f0cae2bcd1/cryptography-44.0.3-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:cb90f60e03d563ca2445099edf605c16ed1d5b15182d21831f58460c48bffb93", size = 4198081, upload-time = "2025-05-02T19:35:23.187Z" },
+ { url = "https://files.pythonhosted.org/packages/1b/50/457f6911d36432a8811c3ab8bd5a6090e8d18ce655c22820994913dd06ea/cryptography-44.0.3-cp39-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:ab0b005721cc0039e885ac3503825661bd9810b15d4f374e473f8c89b7d5460c", size = 3967716, upload-time = "2025-05-02T19:35:25.426Z" },
+ { url = "https://files.pythonhosted.org/packages/35/6e/dca39d553075980ccb631955c47b93d87d27f3596da8d48b1ae81463d915/cryptography-44.0.3-cp39-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:3bb0847e6363c037df8f6ede57d88eaf3410ca2267fb12275370a76f85786a6f", size = 4197398, upload-time = "2025-05-02T19:35:27.678Z" },
+ { url = "https://files.pythonhosted.org/packages/9b/9d/d1f2fe681eabc682067c66a74addd46c887ebacf39038ba01f8860338d3d/cryptography-44.0.3-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:b0cc66c74c797e1db750aaa842ad5b8b78e14805a9b5d1348dc603612d3e3ff5", size = 4087900, upload-time = "2025-05-02T19:35:29.312Z" },
+ { url = "https://files.pythonhosted.org/packages/c4/f5/3599e48c5464580b73b236aafb20973b953cd2e7b44c7c2533de1d888446/cryptography-44.0.3-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:6866df152b581f9429020320e5eb9794c8780e90f7ccb021940d7f50ee00ae0b", size = 4301067, upload-time = "2025-05-02T19:35:31.547Z" },
+ { url = "https://files.pythonhosted.org/packages/a7/6c/d2c48c8137eb39d0c193274db5c04a75dab20d2f7c3f81a7dcc3a8897701/cryptography-44.0.3-cp39-abi3-win32.whl", hash = "sha256:c138abae3a12a94c75c10499f1cbae81294a6f983b3af066390adee73f433028", size = 2775467, upload-time = "2025-05-02T19:35:33.805Z" },
+ { url = "https://files.pythonhosted.org/packages/c9/ad/51f212198681ea7b0deaaf8846ee10af99fba4e894f67b353524eab2bbe5/cryptography-44.0.3-cp39-abi3-win_amd64.whl", hash = "sha256:5d186f32e52e66994dce4f766884bcb9c68b8da62d61d9d215bfe5fb56d21334", size = 3210375, upload-time = "2025-05-02T19:35:35.369Z" },
+]
+
+[[package]]
+name = "cssselect2"
+version = "0.8.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "tinycss2" },
+ { name = "webencodings" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/9f/86/fd7f58fc498b3166f3a7e8e0cddb6e620fe1da35b02248b1bd59e95dbaaa/cssselect2-0.8.0.tar.gz", hash = "sha256:7674ffb954a3b46162392aee2a3a0aedb2e14ecf99fcc28644900f4e6e3e9d3a", size = 35716, upload-time = "2025-03-05T14:46:07.988Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/0f/e7/aa315e6a749d9b96c2504a1ba0ba031ba2d0517e972ce22682e3fccecb09/cssselect2-0.8.0-py3-none-any.whl", hash = "sha256:46fc70ebc41ced7a32cd42d58b1884d72ade23d21e5a4eaaf022401c13f0e76e", size = 15454, upload-time = "2025-03-05T14:46:06.463Z" },
+]
+
+[[package]]
+name = "dnspython"
+version = "2.7.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/b5/4a/263763cb2ba3816dd94b08ad3a33d5fdae34ecb856678773cc40a3605829/dnspython-2.7.0.tar.gz", hash = "sha256:ce9c432eda0dc91cf618a5cedf1a4e142651196bbcd2c80e89ed5a907e5cfaf1", size = 345197, upload-time = "2024-10-05T20:14:59.362Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl", hash = "sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86", size = 313632, upload-time = "2024-10-05T20:14:57.687Z" },
+]
+
+[[package]]
+name = "elastic-transport"
+version = "8.17.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "certifi" },
+ { name = "urllib3" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/6a/54/d498a766ac8fa475f931da85a154666cc81a70f8eb4a780bc8e4e934e9ac/elastic_transport-8.17.1.tar.gz", hash = "sha256:5edef32ac864dca8e2f0a613ef63491ee8d6b8cfb52881fa7313ba9290cac6d2", size = 73425, upload-time = "2025-03-13T07:28:30.776Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/cf/cd/b71d5bc74cde7fc6fd9b2ff9389890f45d9762cbbbf81dc5e51fd7588c4a/elastic_transport-8.17.1-py3-none-any.whl", hash = "sha256:192718f498f1d10c5e9aa8b9cf32aed405e469a7f0e9d6a8923431dbb2c59fb8", size = 64969, upload-time = "2025-03-13T07:28:29.031Z" },
+]
+
+[[package]]
+name = "elasticsearch"
+version = "8.18.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "elastic-transport" },
+ { name = "python-dateutil" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/2a/e4/40fc0e8d9a646889ac3f865cd35e41835f3cf888c716c7aae82248e022f0/elasticsearch-8.18.1.tar.gz", hash = "sha256:998035f17a8c1fba7ae26b183dca797dcf95db86da6a7ecba56d31afc40f07c7", size = 750746, upload-time = "2025-04-29T09:32:16.361Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/33/62/f62e8a5c7c6f7b27481c9ffc248fb32078ad88878aa4f3731a83a14cc797/elasticsearch-8.18.1-py3-none-any.whl", hash = "sha256:1a8c8b5ec3ce5be88f96d2f898375671648e96272978bce0dee3137d9326aabb", size = 906320, upload-time = "2025-04-29T09:32:12.527Z" },
+]
+
+[[package]]
+name = "elasticsearch-dsl"
+version = "8.18.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "elastic-transport" },
+ { name = "elasticsearch" },
+ { name = "python-dateutil" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/72/6d/00cbeee412a2dc825f0df18c98463a2e0b423b86800fba6c50ea2c627962/elasticsearch_dsl-8.18.0.tar.gz", hash = "sha256:763465dba9eae166add10567e924c65730aa122819b08bfe9a077e91b13b30d1", size = 31886, upload-time = "2025-04-16T11:54:14.412Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/77/a9/b200790a22585aeb023d88bd8b9fb222820e2976ce4239d401670116ae3c/elasticsearch_dsl-8.18.0-py3-none-any.whl", hash = "sha256:0522c5bb20c7abae69855109e650bf1166d486cbf706b5e1b29c28936a9102a3", size = 10406, upload-time = "2025-04-16T11:54:12.677Z" },
+]
+
+[[package]]
+name = "email-validator"
+version = "2.2.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "dnspython" },
+ { name = "idna" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/48/ce/13508a1ec3f8bb981ae4ca79ea40384becc868bfae97fd1c942bb3a001b1/email_validator-2.2.0.tar.gz", hash = "sha256:cb690f344c617a714f22e66ae771445a1ceb46821152df8e165c5f9a364582b7", size = 48967, upload-time = "2024-06-20T11:30:30.034Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/d7/ee/bf0adb559ad3c786f12bcbc9296b3f5675f529199bef03e2df281fa1fadb/email_validator-2.2.0-py3-none-any.whl", hash = "sha256:561977c2d73ce3611850a06fa56b414621e0c8faa9d66f2611407d87465da631", size = 33521, upload-time = "2024-06-20T11:30:28.248Z" },
+]
+
+[[package]]
+name = "face"
+version = "24.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "boltons" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/ac/79/2484075a8549cd64beae697a8f664dee69a5ccf3a7439ee40c8f93c1978a/face-24.0.0.tar.gz", hash = "sha256:611e29a01ac5970f0077f9c577e746d48c082588b411b33a0dd55c4d872949f6", size = 62732, upload-time = "2024-11-02T05:24:26.095Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e9/47/21867c2e5fd006c8d36a560df9e32cb4f1f566b20c5dd41f5f8a2124f7de/face-24.0.0-py3-none-any.whl", hash = "sha256:0e2c17b426fa4639a4e77d1de9580f74a98f4869ba4c7c8c175b810611622cd3", size = 54742, upload-time = "2024-11-02T05:24:24.939Z" },
+]
+
+[[package]]
+name = "fastjsonschema"
+version = "2.21.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/8b/50/4b769ce1ac4071a1ef6d86b1a3fb56cdc3a37615e8c5519e1af96cdac366/fastjsonschema-2.21.1.tar.gz", hash = "sha256:794d4f0a58f848961ba16af7b9c85a3e88cd360df008c59aac6fc5ae9323b5d4", size = 373939, upload-time = "2024-12-02T10:55:15.133Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl", hash = "sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667", size = 23924, upload-time = "2024-12-02T10:55:07.599Z" },
+]
+
+[[package]]
+name = "fonttools"
+version = "4.58.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/9a/cf/4d037663e2a1fe30fddb655d755d76e18624be44ad467c07412c2319ab97/fonttools-4.58.0.tar.gz", hash = "sha256:27423d0606a2c7b336913254bf0b1193ebd471d5f725d665e875c5e88a011a43", size = 3514522, upload-time = "2025-05-10T17:36:35.886Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/0c/d7/d77cae11c445916d767cace93ba8283b3f360197d95d7470b90a9e984e10/fonttools-4.58.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:4809790f2371d8a08e59e1ce2b734c954cf09742e75642d7f4c46cfdac488fdd", size = 2728320, upload-time = "2025-05-10T17:35:56.455Z" },
+ { url = "https://files.pythonhosted.org/packages/77/48/7d8b3c519ef4b48081d40310262224a38785e39a8610ccb92a229a6f085d/fonttools-4.58.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:b00f240280f204ce4546b05ff3515bf8ff47a9cae914c718490025ea2bb9b324", size = 2302570, upload-time = "2025-05-10T17:35:58.794Z" },
+ { url = "https://files.pythonhosted.org/packages/2c/48/156b83eb8fb7261056e448bfda1b495b90e761b28ec23cee10e3e19f1967/fonttools-4.58.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5a62015ad463e1925544e9159dd6eefe33ebfb80938d5ab15d8b1c4b354ff47b", size = 4790066, upload-time = "2025-05-10T17:36:01.174Z" },
+ { url = "https://files.pythonhosted.org/packages/60/49/aaecb1b3cea2b9b9c7cea6240d6bc8090feb5489a6fbf93cb68003be979b/fonttools-4.58.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ceef6f6ab58061a811967e3e32e630747fcb823dcc33a9a2c80e2d0d17cb292", size = 4861076, upload-time = "2025-05-10T17:36:03.663Z" },
+ { url = "https://files.pythonhosted.org/packages/dc/c8/97cbb41bee81ea9daf6109e0f3f70a274a3c69418e5ac6b0193f5dacf506/fonttools-4.58.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c7be21ac52370b515cdbdd0f400803fd29432a4fa4ddb4244ac8b322e54f36c0", size = 4858394, upload-time = "2025-05-10T17:36:06.087Z" },
+ { url = "https://files.pythonhosted.org/packages/4d/23/c2c231457361f869a7d7374a557208e303b469d48a4a697c0fb249733ea1/fonttools-4.58.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:85836be4c3c4aacf6fcb7a6f263896d0e9ce431da9fa6fe9213d70f221f131c9", size = 5002160, upload-time = "2025-05-10T17:36:08.178Z" },
+ { url = "https://files.pythonhosted.org/packages/a9/e0/c2262f941a43b810c5c192db94b5d1ce8eda91bec2757f7e2416398f4072/fonttools-4.58.0-cp313-cp313-win32.whl", hash = "sha256:2b32b7130277bd742cb8c4379a6a303963597d22adea77a940343f3eadbcaa4c", size = 2171919, upload-time = "2025-05-10T17:36:10.644Z" },
+ { url = "https://files.pythonhosted.org/packages/8f/ee/e4aa7bb4ce510ad57a808d321df1bbed1eeb6e1dfb20aaee1a5d9c076849/fonttools-4.58.0-cp313-cp313-win_amd64.whl", hash = "sha256:75e68ee2ec9aaa173cf5e33f243da1d51d653d5e25090f2722bc644a78db0f1a", size = 2222972, upload-time = "2025-05-10T17:36:12.495Z" },
+ { url = "https://files.pythonhosted.org/packages/9b/1f/4417c26e26a1feab85a27e927f7a73d8aabc84544be8ba108ce4aa90eb1e/fonttools-4.58.0-py3-none-any.whl", hash = "sha256:c96c36880be2268be409df7b08c5b5dacac1827083461a6bc2cb07b8cbcec1d7", size = 1111440, upload-time = "2025-05-10T17:36:33.607Z" },
+]
+
+[package.optional-dependencies]
+woff = [
+ { name = "brotli", marker = "platform_python_implementation == 'CPython'" },
+ { name = "brotlicffi", marker = "platform_python_implementation != 'CPython'" },
+ { name = "zopfli" },
+]
+
+[[package]]
+name = "ftfy"
+version = "6.3.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "wcwidth" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/a5/d3/8650919bc3c7c6e90ee3fa7fd618bf373cbbe55dff043bd67353dbb20cd8/ftfy-6.3.1.tar.gz", hash = "sha256:9b3c3d90f84fb267fe64d375a07b7f8912d817cf86009ae134aa03e1819506ec", size = 308927, upload-time = "2024-10-26T00:50:35.149Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ab/6e/81d47999aebc1b155f81eca4477a616a70f238a2549848c38983f3c22a82/ftfy-6.3.1-py3-none-any.whl", hash = "sha256:7c70eb532015cd2f9adb53f101fb6c7945988d023a085d127d1573dc49dd0083", size = 44821, upload-time = "2024-10-26T00:50:33.425Z" },
+]
+
+[[package]]
+name = "glom"
+version = "24.11.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "attrs" },
+ { name = "boltons" },
+ { name = "face" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/05/89/b57cfbc448189426f2e01b244fbe9226b059ef5423a9d49c1d335a1f1026/glom-24.11.0.tar.gz", hash = "sha256:4325f96759a912044af7b6c6bd0dba44ad8c1eb6038aab057329661d2021bb27", size = 195120, upload-time = "2024-11-02T23:17:50.405Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/9c/a2/75fd80784ec33da8d39cf885e8811a4fbc045a90db5e336b8e345e66dbb2/glom-24.11.0-py3-none-any.whl", hash = "sha256:991db7fcb4bfa9687010aa519b7b541bbe21111e70e58fdd2d7e34bbaa2c1fbd", size = 102690, upload-time = "2024-11-02T23:17:46.468Z" },
+]
+
+[[package]]
+name = "idna"
+version = "3.10"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f1/70/7703c29685631f5a7590aa73f1f1d3fa9a380e654b86af429e0934a32f7d/idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9", size = 190490, upload-time = "2024-09-15T18:07:39.745Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3", size = 70442, upload-time = "2024-09-15T18:07:37.964Z" },
+]
+
+[[package]]
+name = "jinja2"
+version = "3.1.6"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "markupsafe" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/df/bf/f7da0350254c0ed7c72f3e33cef02e048281fec7ecec5f032d4aac52226b/jinja2-3.1.6.tar.gz", hash = "sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d", size = 245115, upload-time = "2025-03-05T20:05:02.478Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67", size = 134899, upload-time = "2025-03-05T20:05:00.369Z" },
+]
+
+[[package]]
+name = "jmespath"
+version = "1.0.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/00/2a/e867e8531cf3e36b41201936b7fa7ba7b5702dbef42922193f05c8976cd6/jmespath-1.0.1.tar.gz", hash = "sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe", size = 25843, upload-time = "2022-06-17T18:00:12.224Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/31/b4/b9b800c45527aadd64d5b442f9b932b00648617eb5d63d2c7a6587b7cafc/jmespath-1.0.1-py3-none-any.whl", hash = "sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980", size = 20256, upload-time = "2022-06-17T18:00:10.251Z" },
+]
+
+[[package]]
+name = "jsonpath-ng"
+version = "1.7.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "ply" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/6d/86/08646239a313f895186ff0a4573452038eed8c86f54380b3ebac34d32fb2/jsonpath-ng-1.7.0.tar.gz", hash = "sha256:f6f5f7fd4e5ff79c785f1573b394043b39849fb2bb47bcead935d12b00beab3c", size = 37838, upload-time = "2024-10-11T15:41:42.404Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/35/5a/73ecb3d82f8615f32ccdadeb9356726d6cae3a4bbc840b437ceb95708063/jsonpath_ng-1.7.0-py3-none-any.whl", hash = "sha256:f3d7f9e848cba1b6da28c55b1c26ff915dc9e0b1ba7e752a53d6da8d5cbd00b6", size = 30105, upload-time = "2024-11-20T17:58:30.418Z" },
+]
+
+[[package]]
+name = "layercake"
+version = "0.6.5"
+source = { directory = "../layercake" }
+dependencies = [
+ { name = "arnparse" },
+ { name = "aws-lambda-powertools", extra = ["all"] },
+ { name = "elasticsearch" },
+ { name = "elasticsearch-dsl" },
+ { name = "ftfy" },
+ { name = "glom" },
+ { name = "meilisearch" },
+ { name = "orjson" },
+ { name = "pycpfcnpj" },
+ { name = "pydantic", extra = ["email"] },
+ { name = "pydantic-extra-types" },
+ { name = "pytz" },
+ { name = "requests" },
+ { name = "smart-open", extra = ["s3"] },
+ { name = "weasyprint" },
+]
+
+[package.metadata]
+requires-dist = [
+ { name = "arnparse", specifier = ">=0.0.2" },
+ { name = "aws-lambda-powertools", extras = ["all"], specifier = ">=3.8.0" },
+ { name = "elasticsearch", specifier = ">=8.17.2" },
+ { name = "elasticsearch-dsl", specifier = ">=8.17.1" },
+ { name = "ftfy", specifier = ">=6.3.1" },
+ { name = "glom", specifier = ">=24.11.0" },
+ { name = "meilisearch", specifier = ">=0.34.0" },
+ { name = "orjson", specifier = ">=3.10.15" },
+ { name = "pycpfcnpj", specifier = ">=1.8" },
+ { name = "pydantic", extras = ["email"], specifier = ">=2.10.6" },
+ { name = "pydantic-extra-types", specifier = ">=2.10.3" },
+ { name = "pytz", specifier = ">=2025.1" },
+ { name = "requests", specifier = ">=2.32.3" },
+ { name = "smart-open", extras = ["s3"], specifier = ">=7.1.0" },
+ { name = "weasyprint", specifier = ">=65.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "boto3", specifier = ">=1.37.16" },
+ { name = "boto3-stubs", extras = ["essential"], specifier = ">=1.37.33" },
+ { name = "jsonlines", specifier = ">=4.0.0" },
+ { name = "pytest", specifier = ">=8.3.5" },
+ { name = "pytest-cov", specifier = ">=6.0.0" },
+ { name = "ruff", specifier = ">=0.11.1" },
+]
+
+[[package]]
+name = "markupsafe"
+version = "3.0.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/b2/97/5d42485e71dfc078108a86d6de8fa46db44a1a9295e89c5d6d4a06e23a62/markupsafe-3.0.2.tar.gz", hash = "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0", size = 20537, upload-time = "2024-10-18T15:21:54.129Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/83/0e/67eb10a7ecc77a0c2bbe2b0235765b98d164d81600746914bebada795e97/MarkupSafe-3.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd", size = 14274, upload-time = "2024-10-18T15:21:24.577Z" },
+ { url = "https://files.pythonhosted.org/packages/2b/6d/9409f3684d3335375d04e5f05744dfe7e9f120062c9857df4ab490a1031a/MarkupSafe-3.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430", size = 12352, upload-time = "2024-10-18T15:21:25.382Z" },
+ { url = "https://files.pythonhosted.org/packages/d2/f5/6eadfcd3885ea85fe2a7c128315cc1bb7241e1987443d78c8fe712d03091/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094", size = 24122, upload-time = "2024-10-18T15:21:26.199Z" },
+ { url = "https://files.pythonhosted.org/packages/0c/91/96cf928db8236f1bfab6ce15ad070dfdd02ed88261c2afafd4b43575e9e9/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396", size = 23085, upload-time = "2024-10-18T15:21:27.029Z" },
+ { url = "https://files.pythonhosted.org/packages/c2/cf/c9d56af24d56ea04daae7ac0940232d31d5a8354f2b457c6d856b2057d69/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79", size = 22978, upload-time = "2024-10-18T15:21:27.846Z" },
+ { url = "https://files.pythonhosted.org/packages/2a/9f/8619835cd6a711d6272d62abb78c033bda638fdc54c4e7f4272cf1c0962b/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a", size = 24208, upload-time = "2024-10-18T15:21:28.744Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/bf/176950a1792b2cd2102b8ffeb5133e1ed984547b75db47c25a67d3359f77/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca", size = 23357, upload-time = "2024-10-18T15:21:29.545Z" },
+ { url = "https://files.pythonhosted.org/packages/ce/4f/9a02c1d335caabe5c4efb90e1b6e8ee944aa245c1aaaab8e8a618987d816/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c", size = 23344, upload-time = "2024-10-18T15:21:30.366Z" },
+ { url = "https://files.pythonhosted.org/packages/ee/55/c271b57db36f748f0e04a759ace9f8f759ccf22b4960c270c78a394f58be/MarkupSafe-3.0.2-cp313-cp313-win32.whl", hash = "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1", size = 15101, upload-time = "2024-10-18T15:21:31.207Z" },
+ { url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f", size = 15603, upload-time = "2024-10-18T15:21:32.032Z" },
+ { url = "https://files.pythonhosted.org/packages/62/6a/8b89d24db2d32d433dffcd6a8779159da109842434f1dd2f6e71f32f738c/MarkupSafe-3.0.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c", size = 14510, upload-time = "2024-10-18T15:21:33.625Z" },
+ { url = "https://files.pythonhosted.org/packages/7a/06/a10f955f70a2e5a9bf78d11a161029d278eeacbd35ef806c3fd17b13060d/MarkupSafe-3.0.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb", size = 12486, upload-time = "2024-10-18T15:21:34.611Z" },
+ { url = "https://files.pythonhosted.org/packages/34/cf/65d4a571869a1a9078198ca28f39fba5fbb910f952f9dbc5220afff9f5e6/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c", size = 25480, upload-time = "2024-10-18T15:21:35.398Z" },
+ { url = "https://files.pythonhosted.org/packages/0c/e3/90e9651924c430b885468b56b3d597cabf6d72be4b24a0acd1fa0e12af67/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d", size = 23914, upload-time = "2024-10-18T15:21:36.231Z" },
+ { url = "https://files.pythonhosted.org/packages/66/8c/6c7cf61f95d63bb866db39085150df1f2a5bd3335298f14a66b48e92659c/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe", size = 23796, upload-time = "2024-10-18T15:21:37.073Z" },
+ { url = "https://files.pythonhosted.org/packages/bb/35/cbe9238ec3f47ac9a7c8b3df7a808e7cb50fe149dc7039f5f454b3fba218/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5", size = 25473, upload-time = "2024-10-18T15:21:37.932Z" },
+ { url = "https://files.pythonhosted.org/packages/e6/32/7621a4382488aa283cc05e8984a9c219abad3bca087be9ec77e89939ded9/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a", size = 24114, upload-time = "2024-10-18T15:21:39.799Z" },
+ { url = "https://files.pythonhosted.org/packages/0d/80/0985960e4b89922cb5a0bac0ed39c5b96cbc1a536a99f30e8c220a996ed9/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9", size = 24098, upload-time = "2024-10-18T15:21:40.813Z" },
+ { url = "https://files.pythonhosted.org/packages/82/78/fedb03c7d5380df2427038ec8d973587e90561b2d90cd472ce9254cf348b/MarkupSafe-3.0.2-cp313-cp313t-win32.whl", hash = "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6", size = 15208, upload-time = "2024-10-18T15:21:41.814Z" },
+ { url = "https://files.pythonhosted.org/packages/4f/65/6079a46068dfceaeabb5dcad6d674f5f5c61a6fa5673746f42a9f4c233b3/MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f", size = 15739, upload-time = "2024-10-18T15:21:42.784Z" },
+]
+
+[[package]]
+name = "meilisearch"
+version = "0.34.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "camel-converter", extra = ["pydantic"] },
+ { name = "requests" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/11/d2/63b34effea260f2551685cdc38783d36e05a1734c1f14f8bd8dd059fe699/meilisearch-0.34.1.tar.gz", hash = "sha256:99a8d8f548cc1905668ffb2bbf641b5e3ec9231f3413cce4189c5d7b16e52afa", size = 24221, upload-time = "2025-04-04T13:45:07.868Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/bf/3e/a3ec8d44b35e495444cac8ce3573b33adf19a9b6d70f2a51e4a971f17c81/meilisearch-0.34.1-py3-none-any.whl", hash = "sha256:43efa4521ce7dc3b065d404267ad5b3acb825602e6219b8b5356650306686cd4", size = 24918, upload-time = "2025-04-04T13:45:06.869Z" },
+]
+
+[[package]]
+name = "orjson"
+version = "3.10.18"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/81/0b/fea456a3ffe74e70ba30e01ec183a9b26bec4d497f61dcfce1b601059c60/orjson-3.10.18.tar.gz", hash = "sha256:e8da3947d92123eda795b68228cafe2724815621fe35e8e320a9e9593a4bcd53", size = 5422810, upload-time = "2025-04-29T23:30:08.423Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/04/f0/8aedb6574b68096f3be8f74c0b56d36fd94bcf47e6c7ed47a7bd1474aaa8/orjson-3.10.18-cp313-cp313-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:69c34b9441b863175cc6a01f2935de994025e773f814412030f269da4f7be147", size = 249087, upload-time = "2025-04-29T23:29:19.083Z" },
+ { url = "https://files.pythonhosted.org/packages/bc/f7/7118f965541aeac6844fcb18d6988e111ac0d349c9b80cda53583e758908/orjson-3.10.18-cp313-cp313-macosx_15_0_arm64.whl", hash = "sha256:1ebeda919725f9dbdb269f59bc94f861afbe2a27dce5608cdba2d92772364d1c", size = 133273, upload-time = "2025-04-29T23:29:20.602Z" },
+ { url = "https://files.pythonhosted.org/packages/fb/d9/839637cc06eaf528dd8127b36004247bf56e064501f68df9ee6fd56a88ee/orjson-3.10.18-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5adf5f4eed520a4959d29ea80192fa626ab9a20b2ea13f8f6dc58644f6927103", size = 136779, upload-time = "2025-04-29T23:29:22.062Z" },
+ { url = "https://files.pythonhosted.org/packages/2b/6d/f226ecfef31a1f0e7d6bf9a31a0bbaf384c7cbe3fce49cc9c2acc51f902a/orjson-3.10.18-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7592bb48a214e18cd670974f289520f12b7aed1fa0b2e2616b8ed9e069e08595", size = 132811, upload-time = "2025-04-29T23:29:23.602Z" },
+ { url = "https://files.pythonhosted.org/packages/73/2d/371513d04143c85b681cf8f3bce743656eb5b640cb1f461dad750ac4b4d4/orjson-3.10.18-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f872bef9f042734110642b7a11937440797ace8c87527de25e0c53558b579ccc", size = 137018, upload-time = "2025-04-29T23:29:25.094Z" },
+ { url = "https://files.pythonhosted.org/packages/69/cb/a4d37a30507b7a59bdc484e4a3253c8141bf756d4e13fcc1da760a0b00cb/orjson-3.10.18-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0315317601149c244cb3ecef246ef5861a64824ccbcb8018d32c66a60a84ffbc", size = 138368, upload-time = "2025-04-29T23:29:26.609Z" },
+ { url = "https://files.pythonhosted.org/packages/1e/ae/cd10883c48d912d216d541eb3db8b2433415fde67f620afe6f311f5cd2ca/orjson-3.10.18-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e0da26957e77e9e55a6c2ce2e7182a36a6f6b180ab7189315cb0995ec362e049", size = 142840, upload-time = "2025-04-29T23:29:28.153Z" },
+ { url = "https://files.pythonhosted.org/packages/6d/4c/2bda09855c6b5f2c055034c9eda1529967b042ff8d81a05005115c4e6772/orjson-3.10.18-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bb70d489bc79b7519e5803e2cc4c72343c9dc1154258adf2f8925d0b60da7c58", size = 133135, upload-time = "2025-04-29T23:29:29.726Z" },
+ { url = "https://files.pythonhosted.org/packages/13/4a/35971fd809a8896731930a80dfff0b8ff48eeb5d8b57bb4d0d525160017f/orjson-3.10.18-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e9e86a6af31b92299b00736c89caf63816f70a4001e750bda179e15564d7a034", size = 134810, upload-time = "2025-04-29T23:29:31.269Z" },
+ { url = "https://files.pythonhosted.org/packages/99/70/0fa9e6310cda98365629182486ff37a1c6578e34c33992df271a476ea1cd/orjson-3.10.18-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:c382a5c0b5931a5fc5405053d36c1ce3fd561694738626c77ae0b1dfc0242ca1", size = 413491, upload-time = "2025-04-29T23:29:33.315Z" },
+ { url = "https://files.pythonhosted.org/packages/32/cb/990a0e88498babddb74fb97855ae4fbd22a82960e9b06eab5775cac435da/orjson-3.10.18-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:8e4b2ae732431127171b875cb2668f883e1234711d3c147ffd69fe5be51a8012", size = 153277, upload-time = "2025-04-29T23:29:34.946Z" },
+ { url = "https://files.pythonhosted.org/packages/92/44/473248c3305bf782a384ed50dd8bc2d3cde1543d107138fd99b707480ca1/orjson-3.10.18-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2d808e34ddb24fc29a4d4041dcfafbae13e129c93509b847b14432717d94b44f", size = 137367, upload-time = "2025-04-29T23:29:36.52Z" },
+ { url = "https://files.pythonhosted.org/packages/ad/fd/7f1d3edd4ffcd944a6a40e9f88af2197b619c931ac4d3cfba4798d4d3815/orjson-3.10.18-cp313-cp313-win32.whl", hash = "sha256:ad8eacbb5d904d5591f27dee4031e2c1db43d559edb8f91778efd642d70e6bea", size = 142687, upload-time = "2025-04-29T23:29:38.292Z" },
+ { url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl", hash = "sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52", size = 134794, upload-time = "2025-04-29T23:29:40.349Z" },
+ { url = "https://files.pythonhosted.org/packages/c2/28/f53038a5a72cc4fd0b56c1eafb4ef64aec9685460d5ac34de98ca78b6e29/orjson-3.10.18-cp313-cp313-win_arm64.whl", hash = "sha256:f54c1385a0e6aba2f15a40d703b858bedad36ded0491e55d35d905b2c34a4cc3", size = 131186, upload-time = "2025-04-29T23:29:41.922Z" },
+]
+
+[[package]]
+name = "pillow"
+version = "11.2.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/af/cb/bb5c01fcd2a69335b86c22142b2bccfc3464087efb7fd382eee5ffc7fdf7/pillow-11.2.1.tar.gz", hash = "sha256:a64dd61998416367b7ef979b73d3a85853ba9bec4c2925f74e588879a58716b6", size = 47026707, upload-time = "2025-04-12T17:50:03.289Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/36/9c/447528ee3776e7ab8897fe33697a7ff3f0475bb490c5ac1456a03dc57956/pillow-11.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:fdec757fea0b793056419bca3e9932eb2b0ceec90ef4813ea4c1e072c389eb28", size = 3190098, upload-time = "2025-04-12T17:48:23.915Z" },
+ { url = "https://files.pythonhosted.org/packages/b5/09/29d5cd052f7566a63e5b506fac9c60526e9ecc553825551333e1e18a4858/pillow-11.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b0e130705d568e2f43a17bcbe74d90958e8a16263868a12c3e0d9c8162690830", size = 3030166, upload-time = "2025-04-12T17:48:25.738Z" },
+ { url = "https://files.pythonhosted.org/packages/71/5d/446ee132ad35e7600652133f9c2840b4799bbd8e4adba881284860da0a36/pillow-11.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7bdb5e09068332578214cadd9c05e3d64d99e0e87591be22a324bdbc18925be0", size = 4408674, upload-time = "2025-04-12T17:48:27.908Z" },
+ { url = "https://files.pythonhosted.org/packages/69/5f/cbe509c0ddf91cc3a03bbacf40e5c2339c4912d16458fcb797bb47bcb269/pillow-11.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d189ba1bebfbc0c0e529159631ec72bb9e9bc041f01ec6d3233d6d82eb823bc1", size = 4496005, upload-time = "2025-04-12T17:48:29.888Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/b3/dd4338d8fb8a5f312021f2977fb8198a1184893f9b00b02b75d565c33b51/pillow-11.2.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:191955c55d8a712fab8934a42bfefbf99dd0b5875078240943f913bb66d46d9f", size = 4518707, upload-time = "2025-04-12T17:48:31.874Z" },
+ { url = "https://files.pythonhosted.org/packages/13/eb/2552ecebc0b887f539111c2cd241f538b8ff5891b8903dfe672e997529be/pillow-11.2.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:ad275964d52e2243430472fc5d2c2334b4fc3ff9c16cb0a19254e25efa03a155", size = 4610008, upload-time = "2025-04-12T17:48:34.422Z" },
+ { url = "https://files.pythonhosted.org/packages/72/d1/924ce51bea494cb6e7959522d69d7b1c7e74f6821d84c63c3dc430cbbf3b/pillow-11.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:750f96efe0597382660d8b53e90dd1dd44568a8edb51cb7f9d5d918b80d4de14", size = 4585420, upload-time = "2025-04-12T17:48:37.641Z" },
+ { url = "https://files.pythonhosted.org/packages/43/ab/8f81312d255d713b99ca37479a4cb4b0f48195e530cdc1611990eb8fd04b/pillow-11.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fe15238d3798788d00716637b3d4e7bb6bde18b26e5d08335a96e88564a36b6b", size = 4667655, upload-time = "2025-04-12T17:48:39.652Z" },
+ { url = "https://files.pythonhosted.org/packages/94/86/8f2e9d2dc3d308dfd137a07fe1cc478df0a23d42a6c4093b087e738e4827/pillow-11.2.1-cp313-cp313-win32.whl", hash = "sha256:3fe735ced9a607fee4f481423a9c36701a39719252a9bb251679635f99d0f7d2", size = 2332329, upload-time = "2025-04-12T17:48:41.765Z" },
+ { url = "https://files.pythonhosted.org/packages/6d/ec/1179083b8d6067a613e4d595359b5fdea65d0a3b7ad623fee906e1b3c4d2/pillow-11.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:74ee3d7ecb3f3c05459ba95eed5efa28d6092d751ce9bf20e3e253a4e497e691", size = 2676388, upload-time = "2025-04-12T17:48:43.625Z" },
+ { url = "https://files.pythonhosted.org/packages/23/f1/2fc1e1e294de897df39fa8622d829b8828ddad938b0eaea256d65b84dd72/pillow-11.2.1-cp313-cp313-win_arm64.whl", hash = "sha256:5119225c622403afb4b44bad4c1ca6c1f98eed79db8d3bc6e4e160fc6339d66c", size = 2414950, upload-time = "2025-04-12T17:48:45.475Z" },
+ { url = "https://files.pythonhosted.org/packages/c4/3e/c328c48b3f0ead7bab765a84b4977acb29f101d10e4ef57a5e3400447c03/pillow-11.2.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:8ce2e8411c7aaef53e6bb29fe98f28cd4fbd9a1d9be2eeea434331aac0536b22", size = 3192759, upload-time = "2025-04-12T17:48:47.866Z" },
+ { url = "https://files.pythonhosted.org/packages/18/0e/1c68532d833fc8b9f404d3a642991441d9058eccd5606eab31617f29b6d4/pillow-11.2.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:9ee66787e095127116d91dea2143db65c7bb1e232f617aa5957c0d9d2a3f23a7", size = 3033284, upload-time = "2025-04-12T17:48:50.189Z" },
+ { url = "https://files.pythonhosted.org/packages/b7/cb/6faf3fb1e7705fd2db74e070f3bf6f88693601b0ed8e81049a8266de4754/pillow-11.2.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9622e3b6c1d8b551b6e6f21873bdcc55762b4b2126633014cea1803368a9aa16", size = 4445826, upload-time = "2025-04-12T17:48:52.346Z" },
+ { url = "https://files.pythonhosted.org/packages/07/94/8be03d50b70ca47fb434a358919d6a8d6580f282bbb7af7e4aa40103461d/pillow-11.2.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:63b5dff3a68f371ea06025a1a6966c9a1e1ee452fc8020c2cd0ea41b83e9037b", size = 4527329, upload-time = "2025-04-12T17:48:54.403Z" },
+ { url = "https://files.pythonhosted.org/packages/fd/a4/bfe78777076dc405e3bd2080bc32da5ab3945b5a25dc5d8acaa9de64a162/pillow-11.2.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:31df6e2d3d8fc99f993fd253e97fae451a8db2e7207acf97859732273e108406", size = 4549049, upload-time = "2025-04-12T17:48:56.383Z" },
+ { url = "https://files.pythonhosted.org/packages/65/4d/eaf9068dc687c24979e977ce5677e253624bd8b616b286f543f0c1b91662/pillow-11.2.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:062b7a42d672c45a70fa1f8b43d1d38ff76b63421cbbe7f88146b39e8a558d91", size = 4635408, upload-time = "2025-04-12T17:48:58.782Z" },
+ { url = "https://files.pythonhosted.org/packages/1d/26/0fd443365d9c63bc79feb219f97d935cd4b93af28353cba78d8e77b61719/pillow-11.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4eb92eca2711ef8be42fd3f67533765d9fd043b8c80db204f16c8ea62ee1a751", size = 4614863, upload-time = "2025-04-12T17:49:00.709Z" },
+ { url = "https://files.pythonhosted.org/packages/49/65/dca4d2506be482c2c6641cacdba5c602bc76d8ceb618fd37de855653a419/pillow-11.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f91ebf30830a48c825590aede79376cb40f110b387c17ee9bd59932c961044f9", size = 4692938, upload-time = "2025-04-12T17:49:02.946Z" },
+ { url = "https://files.pythonhosted.org/packages/b3/92/1ca0c3f09233bd7decf8f7105a1c4e3162fb9142128c74adad0fb361b7eb/pillow-11.2.1-cp313-cp313t-win32.whl", hash = "sha256:e0b55f27f584ed623221cfe995c912c61606be8513bfa0e07d2c674b4516d9dd", size = 2335774, upload-time = "2025-04-12T17:49:04.889Z" },
+ { url = "https://files.pythonhosted.org/packages/a5/ac/77525347cb43b83ae905ffe257bbe2cc6fd23acb9796639a1f56aa59d191/pillow-11.2.1-cp313-cp313t-win_amd64.whl", hash = "sha256:36d6b82164c39ce5482f649b437382c0fb2395eabc1e2b1702a6deb8ad647d6e", size = 2681895, upload-time = "2025-04-12T17:49:06.635Z" },
+ { url = "https://files.pythonhosted.org/packages/67/32/32dc030cfa91ca0fc52baebbba2e009bb001122a1daa8b6a79ad830b38d3/pillow-11.2.1-cp313-cp313t-win_arm64.whl", hash = "sha256:225c832a13326e34f212d2072982bb1adb210e0cc0b153e688743018c94a2681", size = 2417234, upload-time = "2025-04-12T17:49:08.399Z" },
+]
+
+[[package]]
+name = "ply"
+version = "3.11"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e5/69/882ee5c9d017149285cab114ebeab373308ef0f874fcdac9beb90e0ac4da/ply-3.11.tar.gz", hash = "sha256:00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3", size = 159130, upload-time = "2018-02-15T19:01:31.097Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl", hash = "sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce", size = 49567, upload-time = "2018-02-15T19:01:27.172Z" },
+]
+
+[[package]]
+name = "pycparser"
+version = "2.22"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/1d/b2/31537cf4b1ca988837256c910a668b553fceb8f069bedc4b1c826024b52c/pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6", size = 172736, upload-time = "2024-03-30T13:22:22.564Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc", size = 117552, upload-time = "2024-03-30T13:22:20.476Z" },
+]
+
+[[package]]
+name = "pycpfcnpj"
+version = "1.8"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/d5/de/3439a4d7838410294f47aa02ae359f16ff81f154ea9b1526b18123d8d47e/pycpfcnpj-1.8.tar.gz", hash = "sha256:c9e95d2790d582aa7a7deb4b87da252364c670bd1d78f69f3d8f8f82479ed969", size = 5127, upload-time = "2024-01-17T00:02:46.406Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/3e/d9/5182d830ac9dc5ab20cfa11bf68520ca79809a67c5288d89178d63682669/pycpfcnpj-1.8-py3-none-any.whl", hash = "sha256:771d2ff00511f70453f2df8a20f529bad8deb8e35315a15ba0350d3b5360ef91", size = 6928, upload-time = "2024-01-17T00:02:45.338Z" },
+]
+
+[[package]]
+name = "pydantic"
+version = "2.11.4"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "annotated-types" },
+ { name = "pydantic-core" },
+ { name = "typing-extensions" },
+ { name = "typing-inspection" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/77/ab/5250d56ad03884ab5efd07f734203943c8a8ab40d551e208af81d0257bf2/pydantic-2.11.4.tar.gz", hash = "sha256:32738d19d63a226a52eed76645a98ee07c1f410ee41d93b4afbfa85ed8111c2d", size = 786540, upload-time = "2025-04-29T20:38:55.02Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e7/12/46b65f3534d099349e38ef6ec98b1a5a81f42536d17e0ba382c28c67ba67/pydantic-2.11.4-py3-none-any.whl", hash = "sha256:d9615eaa9ac5a063471da949c8fc16376a84afb5024688b3ff885693506764eb", size = 443900, upload-time = "2025-04-29T20:38:52.724Z" },
+]
+
+[package.optional-dependencies]
+email = [
+ { name = "email-validator" },
+]
+
+[[package]]
+name = "pydantic-core"
+version = "2.33.2"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/ad/88/5f2260bdfae97aabf98f1778d43f69574390ad787afb646292a638c923d4/pydantic_core-2.33.2.tar.gz", hash = "sha256:7cb8bc3605c29176e1b105350d2e6474142d7c1bd1d9327c4a9bdb46bf827acc", size = 435195, upload-time = "2025-04-23T18:33:52.104Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/46/8c/99040727b41f56616573a28771b1bfa08a3d3fe74d3d513f01251f79f172/pydantic_core-2.33.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:1082dd3e2d7109ad8b7da48e1d4710c8d06c253cbc4a27c1cff4fbcaa97a9e3f", size = 2015688, upload-time = "2025-04-23T18:31:53.175Z" },
+ { url = "https://files.pythonhosted.org/packages/3a/cc/5999d1eb705a6cefc31f0b4a90e9f7fc400539b1a1030529700cc1b51838/pydantic_core-2.33.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f517ca031dfc037a9c07e748cefd8d96235088b83b4f4ba8939105d20fa1dcd6", size = 1844808, upload-time = "2025-04-23T18:31:54.79Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/5e/a0a7b8885c98889a18b6e376f344da1ef323d270b44edf8174d6bce4d622/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a9f2c9dd19656823cb8250b0724ee9c60a82f3cdf68a080979d13092a3b0fef", size = 1885580, upload-time = "2025-04-23T18:31:57.393Z" },
+ { url = "https://files.pythonhosted.org/packages/3b/2a/953581f343c7d11a304581156618c3f592435523dd9d79865903272c256a/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2b0a451c263b01acebe51895bfb0e1cc842a5c666efe06cdf13846c7418caa9a", size = 1973859, upload-time = "2025-04-23T18:31:59.065Z" },
+ { url = "https://files.pythonhosted.org/packages/e6/55/f1a813904771c03a3f97f676c62cca0c0a4138654107c1b61f19c644868b/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ea40a64d23faa25e62a70ad163571c0b342b8bf66d5fa612ac0dec4f069d916", size = 2120810, upload-time = "2025-04-23T18:32:00.78Z" },
+ { url = "https://files.pythonhosted.org/packages/aa/c3/053389835a996e18853ba107a63caae0b9deb4a276c6b472931ea9ae6e48/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0fb2d542b4d66f9470e8065c5469ec676978d625a8b7a363f07d9a501a9cb36a", size = 2676498, upload-time = "2025-04-23T18:32:02.418Z" },
+ { url = "https://files.pythonhosted.org/packages/eb/3c/f4abd740877a35abade05e437245b192f9d0ffb48bbbbd708df33d3cda37/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fdac5d6ffa1b5a83bca06ffe7583f5576555e6c8b3a91fbd25ea7780f825f7d", size = 2000611, upload-time = "2025-04-23T18:32:04.152Z" },
+ { url = "https://files.pythonhosted.org/packages/59/a7/63ef2fed1837d1121a894d0ce88439fe3e3b3e48c7543b2a4479eb99c2bd/pydantic_core-2.33.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:04a1a413977ab517154eebb2d326da71638271477d6ad87a769102f7c2488c56", size = 2107924, upload-time = "2025-04-23T18:32:06.129Z" },
+ { url = "https://files.pythonhosted.org/packages/04/8f/2551964ef045669801675f1cfc3b0d74147f4901c3ffa42be2ddb1f0efc4/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:c8e7af2f4e0194c22b5b37205bfb293d166a7344a5b0d0eaccebc376546d77d5", size = 2063196, upload-time = "2025-04-23T18:32:08.178Z" },
+ { url = "https://files.pythonhosted.org/packages/26/bd/d9602777e77fc6dbb0c7db9ad356e9a985825547dce5ad1d30ee04903918/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:5c92edd15cd58b3c2d34873597a1e20f13094f59cf88068adb18947df5455b4e", size = 2236389, upload-time = "2025-04-23T18:32:10.242Z" },
+ { url = "https://files.pythonhosted.org/packages/42/db/0e950daa7e2230423ab342ae918a794964b053bec24ba8af013fc7c94846/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:65132b7b4a1c0beded5e057324b7e16e10910c106d43675d9bd87d4f38dde162", size = 2239223, upload-time = "2025-04-23T18:32:12.382Z" },
+ { url = "https://files.pythonhosted.org/packages/58/4d/4f937099c545a8a17eb52cb67fe0447fd9a373b348ccfa9a87f141eeb00f/pydantic_core-2.33.2-cp313-cp313-win32.whl", hash = "sha256:52fb90784e0a242bb96ec53f42196a17278855b0f31ac7c3cc6f5c1ec4811849", size = 1900473, upload-time = "2025-04-23T18:32:14.034Z" },
+ { url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl", hash = "sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9", size = 1955269, upload-time = "2025-04-23T18:32:15.783Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/86/1beda0576969592f1497b4ce8e7bc8cbdf614c352426271b1b10d5f0aa64/pydantic_core-2.33.2-cp313-cp313-win_arm64.whl", hash = "sha256:e80b087132752f6b3d714f041ccf74403799d3b23a72722ea2e6ba2e892555b9", size = 1893921, upload-time = "2025-04-23T18:32:18.473Z" },
+ { url = "https://files.pythonhosted.org/packages/a4/7d/e09391c2eebeab681df2b74bfe6c43422fffede8dc74187b2b0bf6fd7571/pydantic_core-2.33.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:61c18fba8e5e9db3ab908620af374db0ac1baa69f0f32df4f61ae23f15e586ac", size = 1806162, upload-time = "2025-04-23T18:32:20.188Z" },
+ { url = "https://files.pythonhosted.org/packages/f1/3d/847b6b1fed9f8ed3bb95a9ad04fbd0b212e832d4f0f50ff4d9ee5a9f15cf/pydantic_core-2.33.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95237e53bb015f67b63c91af7518a62a8660376a6a0db19b89acc77a4d6199f5", size = 1981560, upload-time = "2025-04-23T18:32:22.354Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/9a/e73262f6c6656262b5fdd723ad90f518f579b7bc8622e43a942eec53c938/pydantic_core-2.33.2-cp313-cp313t-win_amd64.whl", hash = "sha256:c2fc0a768ef76c15ab9238afa6da7f69895bb5d1ee83aeea2e3509af4472d0b9", size = 1935777, upload-time = "2025-04-23T18:32:25.088Z" },
+]
+
+[[package]]
+name = "pydantic-extra-types"
+version = "2.10.4"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "pydantic" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/d9/33/0cde418479949cd6aa1ac669deffcd1c37d8d9cead99ddb48f344e75f2e3/pydantic_extra_types-2.10.4.tar.gz", hash = "sha256:bf8236a63d061eb3ecb1b2afa78ba0f97e3f67aa11dbbff56ec90491e8772edc", size = 95269, upload-time = "2025-04-28T08:18:34.869Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/df/ac/bee195ee49256385fad460ce420aeb42703a648dba487c20b6fd107e42ea/pydantic_extra_types-2.10.4-py3-none-any.whl", hash = "sha256:ce064595af3cab05e39ae062752432dcd0362ff80f7e695b61a3493a4d842db7", size = 37276, upload-time = "2025-04-28T08:18:31.617Z" },
+]
+
+[[package]]
+name = "pydantic-settings"
+version = "2.9.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "pydantic" },
+ { name = "python-dotenv" },
+ { name = "typing-inspection" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/67/1d/42628a2c33e93f8e9acbde0d5d735fa0850f3e6a2f8cb1eb6c40b9a732ac/pydantic_settings-2.9.1.tar.gz", hash = "sha256:c509bf79d27563add44e8446233359004ed85066cd096d8b510f715e6ef5d268", size = 163234, upload-time = "2025-04-18T16:44:48.265Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/b6/5f/d6d641b490fd3ec2c4c13b4244d68deea3a1b970a97be64f34fb5504ff72/pydantic_settings-2.9.1-py3-none-any.whl", hash = "sha256:59b4f431b1defb26fe620c71a7d3968a710d719f5f4cdbbdb7926edeb770f6ef", size = 44356, upload-time = "2025-04-18T16:44:46.617Z" },
+]
+
+[[package]]
+name = "pydyf"
+version = "0.11.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/2e/c2/97fc6ce4ce0045080dc99446def812081b57750ed8aa67bfdfafa4561fe5/pydyf-0.11.0.tar.gz", hash = "sha256:394dddf619cca9d0c55715e3c55ea121a9bf9cbc780cdc1201a2427917b86b64", size = 17769, upload-time = "2024-07-12T12:26:51.95Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/c9/ac/d5db977deaf28c6ecbc61bbca269eb3e8f0b3a1f55c8549e5333e606e005/pydyf-0.11.0-py3-none-any.whl", hash = "sha256:0aaf9e2ebbe786ec7a78ec3fbffa4cdcecde53fd6f563221d53c6bc1328848a3", size = 8104, upload-time = "2024-07-12T12:26:49.896Z" },
+]
+
+[[package]]
+name = "pyphen"
+version = "0.17.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/69/56/e4d7e1bd70d997713649c5ce530b2d15a5fc2245a74ca820fc2d51d89d4d/pyphen-0.17.2.tar.gz", hash = "sha256:f60647a9c9b30ec6c59910097af82bc5dd2d36576b918e44148d8b07ef3b4aa3", size = 2079470, upload-time = "2025-01-20T13:18:36.296Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/7b/1f/c2142d2edf833a90728e5cdeb10bdbdc094dde8dbac078cee0cf33f5e11b/pyphen-0.17.2-py3-none-any.whl", hash = "sha256:3a07fb017cb2341e1d9ff31b8634efb1ae4dc4b130468c7c39dd3d32e7c3affd", size = 2079358, upload-time = "2025-01-20T13:18:29.629Z" },
+]
+
+[[package]]
+name = "python-dateutil"
+version = "2.9.0.post0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "six" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", size = 342432, upload-time = "2024-03-01T18:36:20.211Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892, upload-time = "2024-03-01T18:36:18.57Z" },
+]
+
+[[package]]
+name = "python-dotenv"
+version = "1.1.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/88/2c/7bb1416c5620485aa793f2de31d3df393d3686aa8a8506d11e10e13c5baf/python_dotenv-1.1.0.tar.gz", hash = "sha256:41f90bc6f5f177fb41f53e87666db362025010eb28f60a01c9143bfa33a2b2d5", size = 39920, upload-time = "2025-03-25T10:14:56.835Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl", hash = "sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d", size = 20256, upload-time = "2025-03-25T10:14:55.034Z" },
+]
+
+[[package]]
+name = "pytz"
+version = "2025.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f8/bf/abbd3cdfb8fbc7fb3d4d38d320f2441b1e7cbe29be4f23797b4a2b5d8aac/pytz-2025.2.tar.gz", hash = "sha256:360b9e3dbb49a209c21ad61809c7fb453643e048b38924c765813546746e81c3", size = 320884, upload-time = "2025-03-25T02:25:00.538Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl", hash = "sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00", size = 509225, upload-time = "2025-03-25T02:24:58.468Z" },
+]
+
+[[package]]
+name = "qrcode"
+version = "8.2"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "colorama", marker = "sys_platform == 'win32'" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/8f/b2/7fc2931bfae0af02d5f53b174e9cf701adbb35f39d69c2af63d4a39f81a9/qrcode-8.2.tar.gz", hash = "sha256:35c3f2a4172b33136ab9f6b3ef1c00260dd2f66f858f24d88418a015f446506c", size = 43317, upload-time = "2025-05-01T15:44:24.726Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl", hash = "sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f", size = 45986, upload-time = "2025-05-01T15:44:22.781Z" },
+]
+
+[[package]]
+name = "requests"
+version = "2.32.3"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "certifi" },
+ { name = "charset-normalizer" },
+ { name = "idna" },
+ { name = "urllib3" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/63/70/2bf7780ad2d390a8d301ad0b550f1581eadbd9a20f896afe06353c2a2913/requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760", size = 131218, upload-time = "2024-05-29T15:37:49.536Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6", size = 64928, upload-time = "2024-05-29T15:37:47.027Z" },
+]
+
+[[package]]
+name = "ruff"
+version = "0.11.9"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f5/e7/e55dda1c92cdcf34b677ebef17486669800de01e887b7831a1b8fdf5cb08/ruff-0.11.9.tar.gz", hash = "sha256:ebd58d4f67a00afb3a30bf7d383e52d0e036e6195143c6db7019604a05335517", size = 4132134, upload-time = "2025-05-09T16:19:41.511Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/fb/71/75dfb7194fe6502708e547941d41162574d1f579c4676a8eb645bf1a6842/ruff-0.11.9-py3-none-linux_armv6l.whl", hash = "sha256:a31a1d143a5e6f499d1fb480f8e1e780b4dfdd580f86e05e87b835d22c5c6f8c", size = 10335453, upload-time = "2025-05-09T16:18:58.2Z" },
+ { url = "https://files.pythonhosted.org/packages/74/fc/ad80c869b1732f53c4232bbf341f33c5075b2c0fb3e488983eb55964076a/ruff-0.11.9-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:66bc18ca783b97186a1f3100e91e492615767ae0a3be584e1266aa9051990722", size = 11072566, upload-time = "2025-05-09T16:19:01.432Z" },
+ { url = "https://files.pythonhosted.org/packages/87/0d/0ccececef8a0671dae155cbf7a1f90ea2dd1dba61405da60228bbe731d35/ruff-0.11.9-py3-none-macosx_11_0_arm64.whl", hash = "sha256:bd576cd06962825de8aece49f28707662ada6a1ff2db848d1348e12c580acbf1", size = 10435020, upload-time = "2025-05-09T16:19:03.897Z" },
+ { url = "https://files.pythonhosted.org/packages/52/01/e249e1da6ad722278094e183cbf22379a9bbe5f21a3e46cef24ccab76e22/ruff-0.11.9-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5b1d18b4be8182cc6fddf859ce432cc9631556e9f371ada52f3eaefc10d878de", size = 10593935, upload-time = "2025-05-09T16:19:06.455Z" },
+ { url = "https://files.pythonhosted.org/packages/ed/9a/40cf91f61e3003fe7bd43f1761882740e954506c5a0f9097b1cff861f04c/ruff-0.11.9-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0f3f46f759ac623e94824b1e5a687a0df5cd7f5b00718ff9c24f0a894a683be7", size = 10172971, upload-time = "2025-05-09T16:19:10.261Z" },
+ { url = "https://files.pythonhosted.org/packages/61/12/d395203de1e8717d7a2071b5a340422726d4736f44daf2290aad1085075f/ruff-0.11.9-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f34847eea11932d97b521450cf3e1d17863cfa5a94f21a056b93fb86f3f3dba2", size = 11748631, upload-time = "2025-05-09T16:19:12.307Z" },
+ { url = "https://files.pythonhosted.org/packages/66/d6/ef4d5eba77677eab511644c37c55a3bb8dcac1cdeb331123fe342c9a16c9/ruff-0.11.9-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:f33b15e00435773df97cddcd263578aa83af996b913721d86f47f4e0ee0ff271", size = 12409236, upload-time = "2025-05-09T16:19:15.006Z" },
+ { url = "https://files.pythonhosted.org/packages/c5/8f/5a2c5fc6124dd925a5faf90e1089ee9036462118b619068e5b65f8ea03df/ruff-0.11.9-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7b27613a683b086f2aca8996f63cb3dd7bc49e6eccf590563221f7b43ded3f65", size = 11881436, upload-time = "2025-05-09T16:19:17.063Z" },
+ { url = "https://files.pythonhosted.org/packages/39/d1/9683f469ae0b99b95ef99a56cfe8c8373c14eba26bd5c622150959ce9f64/ruff-0.11.9-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9e0d88756e63e8302e630cee3ce2ffb77859797cc84a830a24473939e6da3ca6", size = 13982759, upload-time = "2025-05-09T16:19:19.693Z" },
+ { url = "https://files.pythonhosted.org/packages/4e/0b/c53a664f06e0faab596397867c6320c3816df479e888fe3af63bc3f89699/ruff-0.11.9-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:537c82c9829d7811e3aa680205f94c81a2958a122ac391c0eb60336ace741a70", size = 11541985, upload-time = "2025-05-09T16:19:21.831Z" },
+ { url = "https://files.pythonhosted.org/packages/23/a0/156c4d7e685f6526a636a60986ee4a3c09c8c4e2a49b9a08c9913f46c139/ruff-0.11.9-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:440ac6a7029f3dee7d46ab7de6f54b19e34c2b090bb4f2480d0a2d635228f381", size = 10465775, upload-time = "2025-05-09T16:19:24.401Z" },
+ { url = "https://files.pythonhosted.org/packages/43/d5/88b9a6534d9d4952c355e38eabc343df812f168a2c811dbce7d681aeb404/ruff-0.11.9-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:71c539bac63d0788a30227ed4d43b81353c89437d355fdc52e0cda4ce5651787", size = 10170957, upload-time = "2025-05-09T16:19:27.08Z" },
+ { url = "https://files.pythonhosted.org/packages/f0/b8/2bd533bdaf469dc84b45815ab806784d561fab104d993a54e1852596d581/ruff-0.11.9-py3-none-musllinux_1_2_i686.whl", hash = "sha256:c67117bc82457e4501473c5f5217d49d9222a360794bfb63968e09e70f340abd", size = 11143307, upload-time = "2025-05-09T16:19:29.462Z" },
+ { url = "https://files.pythonhosted.org/packages/2f/d9/43cfba291788459b9bfd4e09a0479aa94d05ab5021d381a502d61a807ec1/ruff-0.11.9-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:e4b78454f97aa454586e8a5557facb40d683e74246c97372af3c2d76901d697b", size = 11603026, upload-time = "2025-05-09T16:19:31.569Z" },
+ { url = "https://files.pythonhosted.org/packages/22/e6/7ed70048e89b01d728ccc950557a17ecf8df4127b08a56944b9d0bae61bc/ruff-0.11.9-py3-none-win32.whl", hash = "sha256:7fe1bc950e7d7b42caaee2a8a3bc27410547cc032c9558ee2e0f6d3b209e845a", size = 10548627, upload-time = "2025-05-09T16:19:33.657Z" },
+ { url = "https://files.pythonhosted.org/packages/90/36/1da5d566271682ed10f436f732e5f75f926c17255c9c75cefb77d4bf8f10/ruff-0.11.9-py3-none-win_amd64.whl", hash = "sha256:52edaa4a6d70f8180343a5b7f030c7edd36ad180c9f4d224959c2d689962d964", size = 11634340, upload-time = "2025-05-09T16:19:35.815Z" },
+ { url = "https://files.pythonhosted.org/packages/40/f7/70aad26e5877c8f7ee5b161c4c9fa0100e63fc4c944dc6d97b9c7e871417/ruff-0.11.9-py3-none-win_arm64.whl", hash = "sha256:bcf42689c22f2e240f496d0c183ef2c6f7b35e809f12c1db58f75d9aa8d630ca", size = 10741080, upload-time = "2025-05-09T16:19:39.605Z" },
+]
+
+[[package]]
+name = "s3transfer"
+version = "0.12.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fc/9e/73b14aed38ee1f62cd30ab93cd0072dec7fb01f3033d116875ae3e7b8b44/s3transfer-0.12.0.tar.gz", hash = "sha256:8ac58bc1989a3fdb7c7f3ee0918a66b160d038a147c7b5db1500930a607e9a1c", size = 149178, upload-time = "2025-04-22T21:08:09.787Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/89/64/d2b49620039b82688aeebd510bd62ff4cdcdb86cbf650cc72ae42c5254a3/s3transfer-0.12.0-py3-none-any.whl", hash = "sha256:35b314d7d82865756edab59f7baebc6b477189e6ab4c53050e28c1de4d9cce18", size = 84773, upload-time = "2025-04-22T21:08:08.265Z" },
+]
+
+[[package]]
+name = "six"
+version = "1.17.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81", size = 34031, upload-time = "2024-12-04T17:35:28.174Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 11050, upload-time = "2024-12-04T17:35:26.475Z" },
+]
+
+[[package]]
+name = "smart-open"
+version = "7.1.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "wrapt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/21/30/1f41c3d3b8cec82024b4b277bfd4e5b18b765ae7279eb9871fa25c503778/smart_open-7.1.0.tar.gz", hash = "sha256:a4f09f84f0f6d3637c6543aca7b5487438877a21360e7368ccf1f704789752ba", size = 72044, upload-time = "2024-12-17T13:19:17.71Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/7a/18/9a8d9f01957aa1f8bbc5676d54c2e33102d247e146c1a3679d3bd5cc2e3a/smart_open-7.1.0-py3-none-any.whl", hash = "sha256:4b8489bb6058196258bafe901730c7db0dcf4f083f316e97269c66f45502055b", size = 61746, upload-time = "2024-12-17T13:19:21.076Z" },
+]
+
+[package.optional-dependencies]
+s3 = [
+ { name = "boto3" },
+]
+
+[[package]]
+name = "tinycss2"
+version = "1.4.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "webencodings" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/7a/fd/7a5ee21fd08ff70d3d33a5781c255cbe779659bd03278feb98b19ee550f4/tinycss2-1.4.0.tar.gz", hash = "sha256:10c0972f6fc0fbee87c3edb76549357415e94548c1ae10ebccdea16fb404a9b7", size = 87085, upload-time = "2024-10-24T14:58:29.895Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl", hash = "sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289", size = 26610, upload-time = "2024-10-24T14:58:28.029Z" },
+]
+
+[[package]]
+name = "tinyhtml5"
+version = "2.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "webencodings" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fd/03/6111ed99e9bf7dfa1c30baeef0e0fb7e0bd387bd07f8e5b270776fe1de3f/tinyhtml5-2.0.0.tar.gz", hash = "sha256:086f998833da24c300c414d9fe81d9b368fd04cb9d2596a008421cbc705fcfcc", size = 179507, upload-time = "2024-10-29T15:37:14.078Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/5c/de/27c57899297163a4a84104d5cec0af3b1ac5faf62f44667e506373c6b8ce/tinyhtml5-2.0.0-py3-none-any.whl", hash = "sha256:13683277c5b176d070f82d099d977194b7a1e26815b016114f581a74bbfbf47e", size = 39793, upload-time = "2024-10-29T15:37:11.743Z" },
+]
+
+[[package]]
+name = "typing-extensions"
+version = "4.13.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f6/37/23083fcd6e35492953e8d2aaaa68b860eb422b34627b13f2ce3eb6106061/typing_extensions-4.13.2.tar.gz", hash = "sha256:e6c81219bd689f51865d9e372991c540bda33a0379d5573cddb9a3a23f7caaef", size = 106967, upload-time = "2025-04-10T14:19:05.416Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl", hash = "sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c", size = 45806, upload-time = "2025-04-10T14:19:03.967Z" },
+]
+
+[[package]]
+name = "typing-inspection"
+version = "0.4.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/82/5c/e6082df02e215b846b4b8c0b887a64d7d08ffaba30605502639d44c06b82/typing_inspection-0.4.0.tar.gz", hash = "sha256:9765c87de36671694a67904bf2c96e395be9c6439bb6c87b5142569dcdd65122", size = 76222, upload-time = "2025-02-25T17:27:59.638Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl", hash = "sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f", size = 14125, upload-time = "2025-02-25T17:27:57.754Z" },
+]
+
+[[package]]
+name = "urllib3"
+version = "2.4.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/8a/78/16493d9c386d8e60e442a35feac5e00f0913c0f4b7c217c11e8ec2ff53e0/urllib3-2.4.0.tar.gz", hash = "sha256:414bc6535b787febd7567804cc015fee39daab8ad86268f1310a9250697de466", size = 390672, upload-time = "2025-04-10T15:23:39.232Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl", hash = "sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813", size = 128680, upload-time = "2025-04-10T15:23:37.377Z" },
+]
+
+[[package]]
+name = "wcwidth"
+version = "0.2.13"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/6c/63/53559446a878410fc5a5974feb13d31d78d752eb18aeba59c7fef1af7598/wcwidth-0.2.13.tar.gz", hash = "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5", size = 101301, upload-time = "2024-01-06T02:10:57.829Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859", size = 34166, upload-time = "2024-01-06T02:10:55.763Z" },
+]
+
+[[package]]
+name = "weasyprint"
+version = "65.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "cffi" },
+ { name = "cssselect2" },
+ { name = "fonttools", extra = ["woff"] },
+ { name = "pillow" },
+ { name = "pydyf" },
+ { name = "pyphen" },
+ { name = "tinycss2" },
+ { name = "tinyhtml5" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/38/76/7f865f0019120be20276813097b5729b8487b93dd4aff339aa77ed8c7ad2/weasyprint-65.1.tar.gz", hash = "sha256:120281bdbd42ffaa7d7e5cedbe3182a2cef36ea5ad97fe9f357e43be6a1e58ea", size = 499028, upload-time = "2025-04-14T12:15:02.654Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/fe/9a/14f4e5fd4bba988d3684602b72f04c0b299c0f368d26c11a79ceab97aa68/weasyprint-65.1-py3-none-any.whl", hash = "sha256:9baa54282dc86929f6b877034d06b0416e2a7cacb1af3f73d80960592fd0af89", size = 298040, upload-time = "2025-04-14T12:15:00.695Z" },
+]
+
+[[package]]
+name = "webencodings"
+version = "0.5.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/0b/02/ae6ceac1baeda530866a85075641cec12989bd8d31af6d5ab4a3e8c92f47/webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923", size = 9721, upload-time = "2017-04-05T20:21:34.189Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78", size = 11774, upload-time = "2017-04-05T20:21:32.581Z" },
+]
+
+[[package]]
+name = "wrapt"
+version = "1.17.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/c3/fc/e91cc220803d7bc4db93fb02facd8461c37364151b8494762cc88b0fbcef/wrapt-1.17.2.tar.gz", hash = "sha256:41388e9d4d1522446fe79d3213196bd9e3b301a336965b9e27ca2788ebd122f3", size = 55531, upload-time = "2025-01-14T10:35:45.465Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ce/b9/0ffd557a92f3b11d4c5d5e0c5e4ad057bd9eb8586615cdaf901409920b14/wrapt-1.17.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:6ed6ffac43aecfe6d86ec5b74b06a5be33d5bb9243d055141e8cabb12aa08125", size = 53800, upload-time = "2025-01-14T10:34:21.571Z" },
+ { url = "https://files.pythonhosted.org/packages/c0/ef/8be90a0b7e73c32e550c73cfb2fa09db62234227ece47b0e80a05073b375/wrapt-1.17.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:35621ae4c00e056adb0009f8e86e28eb4a41a4bfa8f9bfa9fca7d343fe94f998", size = 38824, upload-time = "2025-01-14T10:34:22.999Z" },
+ { url = "https://files.pythonhosted.org/packages/36/89/0aae34c10fe524cce30fe5fc433210376bce94cf74d05b0d68344c8ba46e/wrapt-1.17.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a604bf7a053f8362d27eb9fefd2097f82600b856d5abe996d623babd067b1ab5", size = 38920, upload-time = "2025-01-14T10:34:25.386Z" },
+ { url = "https://files.pythonhosted.org/packages/3b/24/11c4510de906d77e0cfb5197f1b1445d4fec42c9a39ea853d482698ac681/wrapt-1.17.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5cbabee4f083b6b4cd282f5b817a867cf0b1028c54d445b7ec7cfe6505057cf8", size = 88690, upload-time = "2025-01-14T10:34:28.058Z" },
+ { url = "https://files.pythonhosted.org/packages/71/d7/cfcf842291267bf455b3e266c0c29dcb675b5540ee8b50ba1699abf3af45/wrapt-1.17.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:49703ce2ddc220df165bd2962f8e03b84c89fee2d65e1c24a7defff6f988f4d6", size = 80861, upload-time = "2025-01-14T10:34:29.167Z" },
+ { url = "https://files.pythonhosted.org/packages/d5/66/5d973e9f3e7370fd686fb47a9af3319418ed925c27d72ce16b791231576d/wrapt-1.17.2-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8112e52c5822fc4253f3901b676c55ddf288614dc7011634e2719718eaa187dc", size = 89174, upload-time = "2025-01-14T10:34:31.702Z" },
+ { url = "https://files.pythonhosted.org/packages/a7/d3/8e17bb70f6ae25dabc1aaf990f86824e4fd98ee9cadf197054e068500d27/wrapt-1.17.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:9fee687dce376205d9a494e9c121e27183b2a3df18037f89d69bd7b35bcf59e2", size = 86721, upload-time = "2025-01-14T10:34:32.91Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/54/f170dfb278fe1c30d0ff864513cff526d624ab8de3254b20abb9cffedc24/wrapt-1.17.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:18983c537e04d11cf027fbb60a1e8dfd5190e2b60cc27bc0808e653e7b218d1b", size = 79763, upload-time = "2025-01-14T10:34:34.903Z" },
+ { url = "https://files.pythonhosted.org/packages/4a/98/de07243751f1c4a9b15c76019250210dd3486ce098c3d80d5f729cba029c/wrapt-1.17.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:703919b1633412ab54bcf920ab388735832fdcb9f9a00ae49387f0fe67dad504", size = 87585, upload-time = "2025-01-14T10:34:36.13Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/f0/13925f4bd6548013038cdeb11ee2cbd4e37c30f8bfd5db9e5a2a370d6e20/wrapt-1.17.2-cp313-cp313-win32.whl", hash = "sha256:abbb9e76177c35d4e8568e58650aa6926040d6a9f6f03435b7a522bf1c487f9a", size = 36676, upload-time = "2025-01-14T10:34:37.962Z" },
+ { url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl", hash = "sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845", size = 38871, upload-time = "2025-01-14T10:34:39.13Z" },
+ { url = "https://files.pythonhosted.org/packages/3d/bc/30f903f891a82d402ffb5fda27ec1d621cc97cb74c16fea0b6141f1d4e87/wrapt-1.17.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:4a721d3c943dae44f8e243b380cb645a709ba5bd35d3ad27bc2ed947e9c68192", size = 56312, upload-time = "2025-01-14T10:34:40.604Z" },
+ { url = "https://files.pythonhosted.org/packages/8a/04/c97273eb491b5f1c918857cd26f314b74fc9b29224521f5b83f872253725/wrapt-1.17.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:766d8bbefcb9e00c3ac3b000d9acc51f1b399513f44d77dfe0eb026ad7c9a19b", size = 40062, upload-time = "2025-01-14T10:34:45.011Z" },
+ { url = "https://files.pythonhosted.org/packages/4e/ca/3b7afa1eae3a9e7fefe499db9b96813f41828b9fdb016ee836c4c379dadb/wrapt-1.17.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e496a8ce2c256da1eb98bd15803a79bee00fc351f5dfb9ea82594a3f058309e0", size = 40155, upload-time = "2025-01-14T10:34:47.25Z" },
+ { url = "https://files.pythonhosted.org/packages/89/be/7c1baed43290775cb9030c774bc53c860db140397047cc49aedaf0a15477/wrapt-1.17.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40d615e4fe22f4ad3528448c193b218e077656ca9ccb22ce2cb20db730f8d306", size = 113471, upload-time = "2025-01-14T10:34:50.934Z" },
+ { url = "https://files.pythonhosted.org/packages/32/98/4ed894cf012b6d6aae5f5cc974006bdeb92f0241775addad3f8cd6ab71c8/wrapt-1.17.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a5aaeff38654462bc4b09023918b7f21790efb807f54c000a39d41d69cf552cb", size = 101208, upload-time = "2025-01-14T10:34:52.297Z" },
+ { url = "https://files.pythonhosted.org/packages/ea/fd/0c30f2301ca94e655e5e057012e83284ce8c545df7661a78d8bfca2fac7a/wrapt-1.17.2-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9a7d15bbd2bc99e92e39f49a04653062ee6085c0e18b3b7512a4f2fe91f2d681", size = 109339, upload-time = "2025-01-14T10:34:53.489Z" },
+ { url = "https://files.pythonhosted.org/packages/75/56/05d000de894c4cfcb84bcd6b1df6214297b8089a7bd324c21a4765e49b14/wrapt-1.17.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:e3890b508a23299083e065f435a492b5435eba6e304a7114d2f919d400888cc6", size = 110232, upload-time = "2025-01-14T10:34:55.327Z" },
+ { url = "https://files.pythonhosted.org/packages/53/f8/c3f6b2cf9b9277fb0813418e1503e68414cd036b3b099c823379c9575e6d/wrapt-1.17.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:8c8b293cd65ad716d13d8dd3624e42e5a19cc2a2f1acc74b30c2c13f15cb61a6", size = 100476, upload-time = "2025-01-14T10:34:58.055Z" },
+ { url = "https://files.pythonhosted.org/packages/a7/b1/0bb11e29aa5139d90b770ebbfa167267b1fc548d2302c30c8f7572851738/wrapt-1.17.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4c82b8785d98cdd9fed4cac84d765d234ed3251bd6afe34cb7ac523cb93e8b4f", size = 106377, upload-time = "2025-01-14T10:34:59.3Z" },
+ { url = "https://files.pythonhosted.org/packages/6a/e1/0122853035b40b3f333bbb25f1939fc1045e21dd518f7f0922b60c156f7c/wrapt-1.17.2-cp313-cp313t-win32.whl", hash = "sha256:13e6afb7fe71fe7485a4550a8844cc9ffbe263c0f1a1eea569bc7091d4898555", size = 37986, upload-time = "2025-01-14T10:35:00.498Z" },
+ { url = "https://files.pythonhosted.org/packages/09/5e/1655cf481e079c1f22d0cabdd4e51733679932718dc23bf2db175f329b76/wrapt-1.17.2-cp313-cp313t-win_amd64.whl", hash = "sha256:eaf675418ed6b3b31c7a989fd007fa7c3be66ce14e5c3b27336383604c9da85c", size = 40750, upload-time = "2025-01-14T10:35:03.378Z" },
+ { url = "https://files.pythonhosted.org/packages/2d/82/f56956041adef78f849db6b289b282e72b55ab8045a75abad81898c28d19/wrapt-1.17.2-py3-none-any.whl", hash = "sha256:b18f2d1533a71f069c7f82d524a52599053d4c7166e9dd374ae2136b7f40f7c8", size = 23594, upload-time = "2025-01-14T10:35:44.018Z" },
+]
+
+[[package]]
+name = "zopfli"
+version = "0.2.3.post1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/5e/7c/a8f6696e694709e2abcbccd27d05ef761e9b6efae217e11d977471555b62/zopfli-0.2.3.post1.tar.gz", hash = "sha256:96484dc0f48be1c5d7ae9f38ed1ce41e3675fd506b27c11a6607f14b49101e99", size = 175629, upload-time = "2024-10-18T15:42:05.946Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/2b/24/0e552e2efce9a20625b56e9609d1e33c2966be33fc008681121ec267daec/zopfli-0.2.3.post1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ecb7572df5372abce8073df078207d9d1749f20b8b136089916a4a0868d56051", size = 295485, upload-time = "2024-10-18T15:41:12.57Z" },
+ { url = "https://files.pythonhosted.org/packages/08/83/b2564369fb98797a617fe2796097b1d719a4937234375757ad2a3febc04b/zopfli-0.2.3.post1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a1cf720896d2ce998bc8e051d4b4ce0d8bec007aab6243102e8e1d22a0b2fb3f", size = 163000, upload-time = "2024-10-18T15:41:13.743Z" },
+ { url = "https://files.pythonhosted.org/packages/3c/55/81d419739c2aab35e19b58bce5498dcb58e6446e5eb69f2d3c748b1c9151/zopfli-0.2.3.post1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5aad740b4d4fcbaaae4887823925166ffd062db3b248b3f432198fc287381d1a", size = 823699, upload-time = "2024-10-18T15:41:14.874Z" },
+ { url = "https://files.pythonhosted.org/packages/9e/91/89f07c8ea3c9bc64099b3461627b07a8384302235ee0f357eaa86f98f509/zopfli-0.2.3.post1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6617fb10f9e4393b331941861d73afb119cd847e88e4974bdbe8068ceef3f73f", size = 826612, upload-time = "2024-10-18T15:41:16.069Z" },
+ { url = "https://files.pythonhosted.org/packages/41/31/46670fc0c7805d42bc89702440fa9b73491d68abbc39e28d687180755178/zopfli-0.2.3.post1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a53b18797cdef27e019db595d66c4b077325afe2fd62145953275f53d84ce40c", size = 851148, upload-time = "2024-10-18T15:41:17.403Z" },
+ { url = "https://files.pythonhosted.org/packages/22/00/71ad39277bbb88f9fd20fb786bd3ff2ea4025c53b31652a0da796fb546cd/zopfli-0.2.3.post1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b78008a69300d929ca2efeffec951b64a312e9a811e265ea4a907ab546d79fa6", size = 1754215, upload-time = "2024-10-18T15:41:18.661Z" },
+ { url = "https://files.pythonhosted.org/packages/d0/4e/e542c508d20c3dfbef1b90fcf726f824f505e725747f777b0b7b7d1deb95/zopfli-0.2.3.post1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:0aa5f90d6298bda02a95bc8dc8c3c19004d5a4e44bda00b67ca7431d857b4b54", size = 1905988, upload-time = "2024-10-18T15:41:19.933Z" },
+ { url = "https://files.pythonhosted.org/packages/ba/a5/817ac1ecc888723e91dc172e8c6eeab9f48a1e52285803b965084e11bbd5/zopfli-0.2.3.post1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2768c877f76c8a0e7519b1c86c93757f3c01492ddde55751e9988afb7eff64e1", size = 1835907, upload-time = "2024-10-18T15:41:21.582Z" },
+ { url = "https://files.pythonhosted.org/packages/cd/35/2525f90c972d8aafc39784a8c00244eeee8e8221b26cbc576748ee9dc1cd/zopfli-0.2.3.post1-cp313-cp313-win32.whl", hash = "sha256:71390dbd3fbf6ebea9a5d85ffed8c26ee1453ee09248e9b88486e30e0397b775", size = 82742, upload-time = "2024-10-18T15:41:23.362Z" },
+ { url = "https://files.pythonhosted.org/packages/2f/c6/49b27570923956d52d37363e8f5df3a31a61bd7719bb8718527a9df3ae5f/zopfli-0.2.3.post1-cp313-cp313-win_amd64.whl", hash = "sha256:a86eb88e06bd87e1fff31dac878965c26b0c26db59ddcf78bb0379a954b120de", size = 99408, upload-time = "2024-10-18T15:41:24.377Z" },
+]
diff --git a/enrollments-events/app/config.py b/enrollments-events/app/config.py
new file mode 100644
index 0000000..9aff6e7
--- /dev/null
+++ b/enrollments-events/app/config.py
@@ -0,0 +1,16 @@
+import os
+
+USER_TABLE: str = os.getenv('USER_TABLE') # type: ignore
+ORDER_TABLE: str = os.getenv('ORDER_TABLE') # type: ignore
+ENROLLMENT_TABLE: str = os.getenv('ENROLLMENT_TABLE') # type: ignore
+COURSE_TABLE: str = os.getenv('COURSE_TABLE') # type: ignore
+
+
+# Post-migration: remove the lines below
+if os.getenv('AWS_LAMBDA_FUNCTION_NAME'):
+ SQLITE_DATABASE = 'courses_export_2025-06-18_110214.db'
+else:
+ SQLITE_DATABASE = 'app/courses_export_2025-06-18_110214.db'
+
+SQLITE_TABLE = 'courses'
+OLD_ENROLLMENT_TABLE: str = os.getenv('OLD_ENROLLMENT_TABLE') # type: ignore
diff --git a/enrollments-events/app/courses_export_2025-06-18_110214.db b/enrollments-events/app/courses_export_2025-06-18_110214.db
new file mode 100644
index 0000000..97681f0
Binary files /dev/null and b/enrollments-events/app/courses_export_2025-06-18_110214.db differ
diff --git a/enrollments-events/app/events/__init__.py b/enrollments-events/app/events/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/enrollments-events/app/events/issue_cert.py b/enrollments-events/app/events/issue_cert.py
new file mode 100644
index 0000000..0ad0a73
--- /dev/null
+++ b/enrollments-events/app/events/issue_cert.py
@@ -0,0 +1,25 @@
+from aws_lambda_powertools import Logger
+from aws_lambda_powertools.utilities.data_classes import (
+ EventBridgeEvent,
+ event_source,
+)
+from aws_lambda_powertools.utilities.typing import LambdaContext
+from layercake.dynamodb import DynamoDBPersistenceLayer
+
+from boto3clients import dynamodb_client
+from config import (
+ COURSE_TABLE,
+ ENROLLMENT_TABLE,
+)
+
+logger = Logger(__name__)
+enrollment_layer = DynamoDBPersistenceLayer(ENROLLMENT_TABLE, dynamodb_client)
+course_layer = DynamoDBPersistenceLayer(COURSE_TABLE, dynamodb_client)
+
+
+@event_source(data_class=EventBridgeEvent)
+@logger.inject_lambda_context
+def lambda_handler(event: EventBridgeEvent, context: LambdaContext) -> bool:
+ new_image = event.detail['new_image']
+
+ return True
diff --git a/enrollments-events/app/events/stopgap/__init__.py b/enrollments-events/app/events/stopgap/__init__.py
new file mode 100644
index 0000000..5a77fb0
--- /dev/null
+++ b/enrollments-events/app/events/stopgap/__init__.py
@@ -0,0 +1,4 @@
+"""
+Stopgap events. Everything here is a quick fix and should be replaced with
+proper solutions.
+"""
diff --git a/enrollments-events/app/events/stopgap/enroll.py b/enrollments-events/app/events/stopgap/enroll.py
new file mode 100644
index 0000000..e53e0eb
--- /dev/null
+++ b/enrollments-events/app/events/stopgap/enroll.py
@@ -0,0 +1,59 @@
+import json
+import sqlite3
+
+from aws_lambda_powertools import Logger
+from aws_lambda_powertools.utilities.data_classes import (
+ EventBridgeEvent,
+ event_source,
+)
+from aws_lambda_powertools.utilities.typing import LambdaContext
+from layercake.dynamodb import DynamoDBPersistenceLayer
+from sqlite_utils import Database
+
+from boto3clients import dynamodb_client
+from config import (
+ COURSE_TABLE,
+ ENROLLMENT_TABLE,
+ SQLITE_DATABASE,
+ SQLITE_TABLE,
+)
+
+sqlite3.register_converter('json', json.loads)
+
+logger = Logger(__name__)
+enrollment_layer = DynamoDBPersistenceLayer(ENROLLMENT_TABLE, dynamodb_client)
+course_layer = DynamoDBPersistenceLayer(COURSE_TABLE, dynamodb_client)
+deduplication_window = {'offset_days': 90}
+
+
+class DeduplicationConflictError(Exception):
+ def __init__(self, *args):
+ super().__init__('Enrollment already exists')
+
+
+@event_source(data_class=EventBridgeEvent)
+@logger.inject_lambda_context
+def lambda_handler(event: EventBridgeEvent, context: LambdaContext) -> bool:
+ new_image = event.detail['new_image']
+
+ return True
+
+
+class CourseNotFoundError(Exception):
+ def __init__(self, *args):
+ super().__init__('Course not found')
+
+
+def _get_course(course_id: str) -> dict:
+ with sqlite3.connect(
+ database=SQLITE_DATABASE, detect_types=sqlite3.PARSE_DECLTYPES
+ ) as conn:
+ db = Database(conn)
+ rows = db[SQLITE_TABLE].rows_where(
+ "json->>'$.metadata__betaeducacao_id' = ?", [course_id]
+ )
+
+ for row in rows:
+ return row['json']
+
+ raise CourseNotFoundError
diff --git a/enrollments-events/app/fonts/SF-Pro.ttf b/enrollments-events/app/fonts/SF-Pro.ttf
new file mode 100755
index 0000000..1e8aa63
Binary files /dev/null and b/enrollments-events/app/fonts/SF-Pro.ttf differ
diff --git a/enrollments-events/pyproject.toml b/enrollments-events/pyproject.toml
new file mode 100644
index 0000000..4265714
--- /dev/null
+++ b/enrollments-events/pyproject.toml
@@ -0,0 +1,33 @@
+[project]
+name = "enrollments-events"
+version = "0.1.0"
+description = ""
+readme = ""
+requires-python = ">=3.13"
+dependencies = ["layercake"]
+
+[dependency-groups]
+dev = [
+ "jsonlines>=4.0.0",
+ "pytest>=8.3.4",
+ "pytest-cov>=6.0.0",
+ "ruff>=0.9.1",
+]
+
+[tool.pytest.ini_options]
+pythonpath = ["app/"]
+addopts = "--cov --cov-report html -v"
+
+[tool.ruff]
+target-version = "py311"
+src = ["app"]
+
+[tool.ruff.format]
+quote-style = "single"
+
+[tool.ruff.lint]
+select = ["E", "F", "I"]
+
+
+[tool.uv.sources]
+layercake = { path = "../layercake" }
diff --git a/enrollments-events/pyrightconfig.json b/enrollments-events/pyrightconfig.json
new file mode 100644
index 0000000..78cdf4e
--- /dev/null
+++ b/enrollments-events/pyrightconfig.json
@@ -0,0 +1,3 @@
+{
+ "extraPaths": ["app/"]
+}
diff --git a/enrollments-events/samconfig.toml b/enrollments-events/samconfig.toml
new file mode 100644
index 0000000..d502ac0
--- /dev/null
+++ b/enrollments-events/samconfig.toml
@@ -0,0 +1,9 @@
+version = 0.1
+[default.deploy.parameters]
+stack_name = "saladeaula-enrollments-events"
+resolve_s3 = true
+s3_prefix = "enrollments-events"
+region = "sa-east-1"
+confirm_changeset = false
+capabilities = "CAPABILITY_IAM"
+image_repositories = []
diff --git a/enrollments-events/template.yaml b/enrollments-events/template.yaml
new file mode 100644
index 0000000..4c98188
--- /dev/null
+++ b/enrollments-events/template.yaml
@@ -0,0 +1,82 @@
+AWSTemplateFormatVersion: 2010-09-09
+Transform: AWS::Serverless-2016-10-31
+
+Parameters:
+ UserTable:
+ Type: String
+ Default: betaeducacao-prod-users_d2o3r5gmm4it7j
+ EnrollmentTable:
+ Type: String
+ Default: betaeducacao-prod-enrollments
+ CourseTable:
+ Type: String
+ Default: saladeaula_courses
+ OrderTable:
+ Type: String
+ Default: betaeducacao-prod-orders
+
+Globals:
+ Function:
+ CodeUri: app/
+ Runtime: python3.13
+ Tracing: Active
+ Architectures:
+ - x86_64
+ Layers:
+ - !Sub arn:aws:lambda:sa-east-1:336641857101:layer:layercake:79
+ Environment:
+ Variables:
+ TZ: America/Sao_Paulo
+ LOG_LEVEL: DEBUG
+ DYNAMODB_PARTITION_KEY: id
+ POWERTOOLS_LOGGER_SAMPLE_RATE: 0.1
+ POWERTOOLS_LOGGER_LOG_EVENT: true
+ USER_TABLE: !Ref UserTable
+ ENROLLMENT_TABLE: !Ref EnrollmentTable
+ ORDER_TABLE: !Ref OrderTable
+ COURSE_TABLE: !Ref CourseTable
+
+Resources:
+ EventLog:
+ Type: AWS::Logs::LogGroup
+ Properties:
+ RetentionInDays: 90
+
+ EventEnrollFunction:
+ Type: AWS::Serverless::Function
+ Properties:
+ Handler: events.stopgap.enroll.lambda_handler
+ LoggingConfig:
+ LogGroup: !Ref EventLog
+ Policies:
+ - DynamoDBCrudPolicy:
+ TableName: !Ref EnrollmentTable
+ Events:
+ DynamoDBEvent:
+ Type: EventBridgeRule
+ Properties:
+ Pattern:
+ resources: [!Ref EnrollmentTable]
+ detail-type: [INSERT]
+ detail:
+ new_image:
+ sk: ["0"]
+
+ EventIssueCertFunction:
+ Type: AWS::Serverless::Function
+ Properties:
+ Handler: events.issue_cert.lambda_handler
+ LoggingConfig:
+ LogGroup: !Ref EventLog
+ Events:
+ DynamoDBEvent:
+ Type: EventBridgeRule
+ Properties:
+ Pattern:
+ resources: [!Ref EnrollmentTable]
+ detail:
+ new_image:
+ sk: ["0"]
+ status: [COMPLETED]
+ old_image:
+ status: [PENDING]
diff --git a/enrollments-events/tests/__init__.py b/enrollments-events/tests/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/enrollments-events/tests/conftest.py b/enrollments-events/tests/conftest.py
new file mode 100644
index 0000000..9bd2934
--- /dev/null
+++ b/enrollments-events/tests/conftest.py
@@ -0,0 +1,74 @@
+import os
+from dataclasses import dataclass
+
+import jsonlines
+import pytest
+
+PYTEST_TABLE_NAME = 'pytest'
+PK = 'id'
+SK = 'sk'
+
+
+# https://docs.pytest.org/en/7.1.x/reference/reference.html#pytest.hookspec.pytest_configure
+def pytest_configure():
+ os.environ['TZ'] = 'America/Sao_Paulo'
+ os.environ['DYNAMODB_PARTITION_KEY'] = PK
+ os.environ['DYNAMODB_SORT_KEY'] = SK
+ os.environ['USER_TABLE'] = PYTEST_TABLE_NAME
+ os.environ['COURSE_TABLE'] = PYTEST_TABLE_NAME
+ os.environ['ORDER_TABLE'] = PYTEST_TABLE_NAME
+ os.environ['ENROLLMENT_TABLE'] = PYTEST_TABLE_NAME
+ # Post-migration: remove it
+ os.environ['OLD_ENROLLMENT_TABLE'] = PYTEST_TABLE_NAME
+
+
+@dataclass
+class LambdaContext:
+ function_name: str = 'test'
+ memory_limit_in_mb: int = 128
+ invoked_function_arn: str = 'arn:aws:lambda:eu-west-1:809313241:function:test'
+ aws_request_id: str = '52fdfc07-2182-154f-163f-5f0f9a621d72'
+
+
+@pytest.fixture
+def lambda_context() -> LambdaContext:
+ return LambdaContext()
+
+
+@pytest.fixture
+def dynamodb_client():
+ from boto3clients import dynamodb_client as client
+
+ client.create_table(
+ AttributeDefinitions=[
+ {'AttributeName': PK, 'AttributeType': 'S'},
+ {'AttributeName': SK, 'AttributeType': 'S'},
+ ],
+ TableName=PYTEST_TABLE_NAME,
+ KeySchema=[
+ {'AttributeName': PK, 'KeyType': 'HASH'},
+ {'AttributeName': SK, 'KeyType': 'RANGE'},
+ ],
+ ProvisionedThroughput={
+ 'ReadCapacityUnits': 123,
+ 'WriteCapacityUnits': 123,
+ },
+ )
+
+ yield client
+
+ client.delete_table(TableName=PYTEST_TABLE_NAME)
+
+
+@pytest.fixture()
+def dynamodb_persistence_layer(dynamodb_client):
+ from layercake.dynamodb import DynamoDBPersistenceLayer
+
+ return DynamoDBPersistenceLayer(PYTEST_TABLE_NAME, dynamodb_client)
+
+
+@pytest.fixture()
+def dynamodb_seeds(dynamodb_client):
+ with jsonlines.open('tests/seeds.jsonl') as lines:
+ for line in lines:
+ dynamodb_client.put_item(TableName=PYTEST_TABLE_NAME, Item=line)
diff --git a/enrollments-events/tests/events/__init__.py b/enrollments-events/tests/events/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/enrollments-events/tests/events/stopgap/__init__.py b/enrollments-events/tests/events/stopgap/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/enrollments-events/tests/events/stopgap/test_enroll.py b/enrollments-events/tests/events/stopgap/test_enroll.py
new file mode 100644
index 0000000..a85fda3
--- /dev/null
+++ b/enrollments-events/tests/events/stopgap/test_enroll.py
@@ -0,0 +1,39 @@
+import pprint
+
+import app.events.stopgap.enroll as app
+from aws_lambda_powertools.utilities.typing import LambdaContext
+from layercake.dynamodb import (
+ DynamoDBPersistenceLayer,
+ SortKey,
+ TransactKey,
+)
+
+
+def test_enroll(
+ dynamodb_seeds,
+ dynamodb_client,
+ dynamodb_persistence_layer: DynamoDBPersistenceLayer,
+ lambda_context: LambdaContext,
+):
+ event = {
+ 'detail': {
+ 'new_image': {
+ 'id': '47ZxxcVBjvhDS5TE98tpfQ',
+ 'sk': '0',
+ }
+ }
+ }
+ assert app.lambda_handler(event, lambda_context) # type: ignore
+
+ result = dynamodb_persistence_layer.collection.get_items(
+ TransactKey('47ZxxcVBjvhDS5TE98tpfQ')
+ + SortKey('0')
+ + SortKey('metadata#tenant')
+ + SortKey('metadata#author')
+ + SortKey('metadata#konviva')
+ + SortKey('metadata#lock')
+ + SortKey('metadata#deduplication_window')
+ + SortKey('metadata#cert')
+ )
+
+ pprint.pprint(result)
diff --git a/enrollments-events/tests/sample.html b/enrollments-events/tests/sample.html
new file mode 100644
index 0000000..fbb90d7
--- /dev/null
+++ b/enrollments-events/tests/sample.html
@@ -0,0 +1,251 @@
+
+
+
+
+ NR-10 Complementar (SEP)
+
+
+
+
+
+
+
+
+ Certificamos que
+ {{ name }}
+
+ Portador(a) do CPF {{ cpf }} , concluiu o curso
+ de NR-10 Complementar (SEP) com aproveitamento
+ de
+ {{ progress }}%
+
+ Realizado entre {{ started_date }} e {{ finished_date }}
+ Florianópolis, SC, {{ today }}
+
+
+
+
+
Tiago Maciel do Santos
+
CEO/Diretor
+
+
+
+
+

+
+
+
+
+
+
Conteúdo programático ministrado
+
+ - Organização do sistema elétrico de potência
+ - Organização do trabalho
+ - Aspectos comportamentais
+ - Condições impeditivas para serviços
+ - Riscos típicos no SEP e sua prevenção
+ - Técnicas de análise de riscos no SEP
+ - Procedimentos de trabalho (análise e discussão)
+ - Técnicas de análise de riscos no SEP
+ - Equipamentos e ferramentas de trabalho
+ - Sistemas de proteção coletiva
+ - Equipamentos de proteção individual
+ - Posturas e vestuários de trabalhos
+ -
+ Segurança com veículos e transporte de pessoas,
+ materiais e equipamentos
+
+ - Sinalização e isolamento de áreas de trabalho
+ -
+ Liberação de instalação para serviço, operação e uso
+
+ -
+ Treinamento em técnicas de remoção, atendimento e
+ transporte de acidentados
+
+ - Acidentes típicos
+ - Responsabilidades
+
+
+
+
+
+ Carga horária
+ 40 horas
+
+
+
+ Instrutor e responsável técnico
+
+
Francis Ricardo Baretta
+
CPF 039.539.409-02
+
Eng. de Segurança no Trabalho Eng. Eletricista
+
CREA/SC 126693-0
+
+
+
+
+
+
diff --git a/enrollments-events/tests/seeds.jsonl b/enrollments-events/tests/seeds.jsonl
new file mode 100644
index 0000000..59f636b
--- /dev/null
+++ b/enrollments-events/tests/seeds.jsonl
@@ -0,0 +1,3 @@
+{"id": {"S": "47ZxxcVBjvhDS5TE98tpfQ"}, "sk": {"S": "0"}, "course": {"M": {"id": {"S": "42"}, "name": {"S": "NR-35 Segurança nos Trabalhos em Altura (Teórico)"},"time_in_days": {"N": "720"}}},"create_date": {"S": "2025-04-10T11:58:33.303347-03:00"},"konviva:id": {"N": "238662"},"progress": {"N": "16.67"},"score": {"NULL": true},"status": {"S": "IN_PROGRESS"}, "update_date": {"S": "2025-04-10T15:44:03.023054-03:00"}, "user": {"M": {"id": {"S": "5OxmMjL-ujoR5IMGegQz"}, "cpf": {"S": "07879819908"}, "email": {"S": "sergio@somosbeta.com.br"}, "name": {"S": "Sérgio Rafael Siqueira"}}}}
+{"id": {"S": "47ZxxcVBjvhDS5TE98tpfQ"}, "sk": {"S": "konviva"}, "create_date": {"S": "2025-04-10T11:58:35.035729-03:00"}, "konviva_id": {"N": "238662"}}
+{"id": {"S": "47ZxxcVBjvhDS5TE98tpfQ"}, "sk": {"S": "tenant"}, "create_date": {"S": "2025-04-10T11:58:33.303347-03:00"}, "name": {"S": "Beta Educação"},"org_id": {"S": "cJtK9SsnJhKPyxESe7g3DG"}}
\ No newline at end of file
diff --git a/enrollments-events/uv.lock b/enrollments-events/uv.lock
new file mode 100644
index 0000000..96dba15
--- /dev/null
+++ b/enrollments-events/uv.lock
@@ -0,0 +1,1113 @@
+version = 1
+revision = 2
+requires-python = ">=3.13"
+
+[[package]]
+name = "annotated-types"
+version = "0.7.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89", size = 16081, upload-time = "2024-05-20T21:33:25.928Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" },
+]
+
+[[package]]
+name = "arnparse"
+version = "0.0.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/bd/42/949284e998282b167e273872fa9c39b06d41a6055163c30aa2daaeee76a0/arnparse-0.0.2.tar.gz", hash = "sha256:cb87f17200d07121108a9085d4a09cc69a55582647776b9a917b0b1f279db8f8", size = 2677, upload-time = "2019-03-12T21:17:04.586Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/57/6f/630bedeb32964e99661990811a66389201b62c047b35c17e332dad9be2a3/arnparse-0.0.2-py2.py3-none-any.whl", hash = "sha256:b0906734e4b8f19e39b1e32944c6cd6274b6da90c066a83882ac7a11d27553e0", size = 2904, upload-time = "2019-03-12T21:17:03.039Z" },
+]
+
+[[package]]
+name = "attrs"
+version = "25.3.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/5a/b0/1367933a8532ee6ff8d63537de4f1177af4bff9f3e829baf7331f595bb24/attrs-25.3.0.tar.gz", hash = "sha256:75d7cefc7fb576747b2c81b4442d4d4a1ce0900973527c011d1030fd3bf4af1b", size = 812032, upload-time = "2025-03-13T11:10:22.779Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl", hash = "sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3", size = 63815, upload-time = "2025-03-13T11:10:21.14Z" },
+]
+
+[[package]]
+name = "aws-encryption-sdk"
+version = "4.0.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "attrs" },
+ { name = "boto3" },
+ { name = "cryptography" },
+ { name = "wrapt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/45/ff/fefbcc1cee829f3ab188dbcb5069862f61b64ed82a6205314f1ab7bb90e6/aws-encryption-sdk-4.0.1.tar.gz", hash = "sha256:7320dc4cf8d8d5a9b4c88a343be93835da18756e05308d3536554be0ca2889a5", size = 260219, upload-time = "2025-03-27T17:24:54.669Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/66/a5/82956e2111b169c644633212da2a5f84dd9d953b9dd146ccfccfb8a46290/aws_encryption_sdk-4.0.1-py2.py3-none-any.whl", hash = "sha256:5c2ca9a207e1732542a1370ac7efd630ab6e04d05f98e68badf20927eb95ed1d", size = 99127, upload-time = "2025-03-27T17:24:50.903Z" },
+]
+
+[[package]]
+name = "aws-lambda-powertools"
+version = "3.13.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "jmespath" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fd/2b/068efd467c0866e2272c5de7525ddb02ff4e694f71245c8d2a83d4948f23/aws_lambda_powertools-3.13.0.tar.gz", hash = "sha256:99dc11ac6eb81564f599fdd85ba79069f7740ae3481c99bca2cee8abb7c95543", size = 672664, upload-time = "2025-05-20T07:35:30.254Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/98/cd/2241ff877528c66ee11ea636684c4242ceeadb6459a33b08507a40151414/aws_lambda_powertools-3.13.0-py3-none-any.whl", hash = "sha256:9df045f4c3ff944176655813dbff8c1160e056babf5e6d71d4e18c0003818f2e", size = 802546, upload-time = "2025-05-20T07:35:27.767Z" },
+]
+
+[package.optional-dependencies]
+all = [
+ { name = "aws-encryption-sdk" },
+ { name = "aws-xray-sdk" },
+ { name = "fastjsonschema" },
+ { name = "jsonpath-ng" },
+ { name = "pydantic" },
+ { name = "pydantic-settings" },
+]
+
+[[package]]
+name = "aws-xray-sdk"
+version = "2.14.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore" },
+ { name = "wrapt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/e0/6c/8e7fb2a45f20afc5c19d52807b560793fb48b0feca1de7de116b62a7893e/aws_xray_sdk-2.14.0.tar.gz", hash = "sha256:aab843c331af9ab9ba5cefb3a303832a19db186140894a523edafc024cc0493c", size = 93976, upload-time = "2024-06-04T22:11:38.124Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/41/69/b417833a8926fa5491e5346d7c233bf7d8a9b12ba1f4ef41ccea2494000c/aws_xray_sdk-2.14.0-py2.py3-none-any.whl", hash = "sha256:cfbe6feea3d26613a2a869d14c9246a844285c97087ad8f296f901633554ad94", size = 101922, upload-time = "2024-06-04T22:12:25.729Z" },
+]
+
+[[package]]
+name = "boltons"
+version = "25.0.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/63/54/71a94d8e02da9a865587fb3fff100cb0fc7aa9f4d5ed9ed3a591216ddcc7/boltons-25.0.0.tar.gz", hash = "sha256:e110fbdc30b7b9868cb604e3f71d4722dd8f4dcb4a5ddd06028ba8f1ab0b5ace", size = 246294, upload-time = "2025-02-03T05:57:59.129Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/45/7f/0e961cf3908bc4c1c3e027de2794f867c6c89fb4916fc7dba295a0e80a2d/boltons-25.0.0-py3-none-any.whl", hash = "sha256:dc9fb38bf28985715497d1b54d00b62ea866eca3938938ea9043e254a3a6ca62", size = 194210, upload-time = "2025-02-03T05:57:56.705Z" },
+]
+
+[[package]]
+name = "boto3"
+version = "1.38.20"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore" },
+ { name = "jmespath" },
+ { name = "s3transfer" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/b8/38/27f7e3944daa6c8f4422e412ebf7073cbe9e59e14e7f3219a89b6c752837/boto3-1.38.20.tar.gz", hash = "sha256:aa1424213678a249fe828fb9345deac5e33f9a2266fd1b23ec72e02857b018a2", size = 111871, upload-time = "2025-05-20T23:13:01.56Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e8/d9/d676f22160055bf29b28ace2e0e6853c10c338c1fbaaf3d6234f85c2857c/boto3-1.38.20-py3-none-any.whl", hash = "sha256:0494bafa771561c02ae5926143ce69b6ee4017f11ced22d0293a8372acb7472a", size = 139936, upload-time = "2025-05-20T23:12:56.529Z" },
+]
+
+[[package]]
+name = "botocore"
+version = "1.38.20"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "jmespath" },
+ { name = "python-dateutil" },
+ { name = "urllib3" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/87/c6/61fa4699aa7f6230cf018d110849388904493b4e179050b6f0fc20a0f353/botocore-1.38.20.tar.gz", hash = "sha256:03a5027a207fc66cd0bf8cd1abb98db41fd4d23e6bd5f43f68586af9736240fc", size = 13899574, upload-time = "2025-05-20T23:12:44.883Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e2/be/f0eb1d687ca841f9a8cf6077340123ade5069984121b67e0709b3a368851/botocore-1.38.20-py3-none-any.whl", hash = "sha256:70feba9b3f73946a9739d0c16703190d79379f065cf6e29883b5d7f791b247b8", size = 13558776, upload-time = "2025-05-20T23:12:39.685Z" },
+]
+
+[[package]]
+name = "brotli"
+version = "1.1.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/2f/c2/f9e977608bdf958650638c3f1e28f85a1b075f075ebbe77db8555463787b/Brotli-1.1.0.tar.gz", hash = "sha256:81de08ac11bcb85841e440c13611c00b67d3bf82698314928d0b676362546724", size = 7372270, upload-time = "2023-09-07T14:05:41.643Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/0a/9f/fb37bb8ffc52a8da37b1c03c459a8cd55df7a57bdccd8831d500e994a0ca/Brotli-1.1.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8bf32b98b75c13ec7cf774164172683d6e7891088f6316e54425fde1efc276d5", size = 815681, upload-time = "2024-10-18T12:32:34.942Z" },
+ { url = "https://files.pythonhosted.org/packages/06/b3/dbd332a988586fefb0aa49c779f59f47cae76855c2d00f450364bb574cac/Brotli-1.1.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7bc37c4d6b87fb1017ea28c9508b36bbcb0c3d18b4260fcdf08b200c74a6aee8", size = 422475, upload-time = "2024-10-18T12:32:36.485Z" },
+ { url = "https://files.pythonhosted.org/packages/bb/80/6aaddc2f63dbcf2d93c2d204e49c11a9ec93a8c7c63261e2b4bd35198283/Brotli-1.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c0ef38c7a7014ffac184db9e04debe495d317cc9c6fb10071f7fefd93100a4f", size = 2906173, upload-time = "2024-10-18T12:32:37.978Z" },
+ { url = "https://files.pythonhosted.org/packages/ea/1d/e6ca79c96ff5b641df6097d299347507d39a9604bde8915e76bf026d6c77/Brotli-1.1.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91d7cc2a76b5567591d12c01f019dd7afce6ba8cba6571187e21e2fc418ae648", size = 2943803, upload-time = "2024-10-18T12:32:39.606Z" },
+ { url = "https://files.pythonhosted.org/packages/ac/a3/d98d2472e0130b7dd3acdbb7f390d478123dbf62b7d32bda5c830a96116d/Brotli-1.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a93dde851926f4f2678e704fadeb39e16c35d8baebd5252c9fd94ce8ce68c4a0", size = 2918946, upload-time = "2024-10-18T12:32:41.679Z" },
+ { url = "https://files.pythonhosted.org/packages/c4/a5/c69e6d272aee3e1423ed005d8915a7eaa0384c7de503da987f2d224d0721/Brotli-1.1.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f0db75f47be8b8abc8d9e31bc7aad0547ca26f24a54e6fd10231d623f183d089", size = 2845707, upload-time = "2024-10-18T12:32:43.478Z" },
+ { url = "https://files.pythonhosted.org/packages/58/9f/4149d38b52725afa39067350696c09526de0125ebfbaab5acc5af28b42ea/Brotli-1.1.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:6967ced6730aed543b8673008b5a391c3b1076d834ca438bbd70635c73775368", size = 2936231, upload-time = "2024-10-18T12:32:45.224Z" },
+ { url = "https://files.pythonhosted.org/packages/5a/5a/145de884285611838a16bebfdb060c231c52b8f84dfbe52b852a15780386/Brotli-1.1.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:7eedaa5d036d9336c95915035fb57422054014ebdeb6f3b42eac809928e40d0c", size = 2848157, upload-time = "2024-10-18T12:32:46.894Z" },
+ { url = "https://files.pythonhosted.org/packages/50/ae/408b6bfb8525dadebd3b3dd5b19d631da4f7d46420321db44cd99dcf2f2c/Brotli-1.1.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:d487f5432bf35b60ed625d7e1b448e2dc855422e87469e3f450aa5552b0eb284", size = 3035122, upload-time = "2024-10-18T12:32:48.844Z" },
+ { url = "https://files.pythonhosted.org/packages/af/85/a94e5cfaa0ca449d8f91c3d6f78313ebf919a0dbd55a100c711c6e9655bc/Brotli-1.1.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:832436e59afb93e1836081a20f324cb185836c617659b07b129141a8426973c7", size = 2930206, upload-time = "2024-10-18T12:32:51.198Z" },
+ { url = "https://files.pythonhosted.org/packages/c2/f0/a61d9262cd01351df22e57ad7c34f66794709acab13f34be2675f45bf89d/Brotli-1.1.0-cp313-cp313-win32.whl", hash = "sha256:43395e90523f9c23a3d5bdf004733246fba087f2948f87ab28015f12359ca6a0", size = 333804, upload-time = "2024-10-18T12:32:52.661Z" },
+ { url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b", size = 358517, upload-time = "2024-10-18T12:32:54.066Z" },
+]
+
+[[package]]
+name = "brotlicffi"
+version = "1.1.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "cffi" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/95/9d/70caa61192f570fcf0352766331b735afa931b4c6bc9a348a0925cc13288/brotlicffi-1.1.0.0.tar.gz", hash = "sha256:b77827a689905143f87915310b93b273ab17888fd43ef350d4832c4a71083c13", size = 465192, upload-time = "2023-09-14T14:22:40.707Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/a2/11/7b96009d3dcc2c931e828ce1e157f03824a69fb728d06bfd7b2fc6f93718/brotlicffi-1.1.0.0-cp37-abi3-macosx_10_9_x86_64.whl", hash = "sha256:9b7ae6bd1a3f0df532b6d67ff674099a96d22bc0948955cb338488c31bfb8851", size = 453786, upload-time = "2023-09-14T14:21:57.72Z" },
+ { url = "https://files.pythonhosted.org/packages/d6/e6/a8f46f4a4ee7856fbd6ac0c6fb0dc65ed181ba46cd77875b8d9bbe494d9e/brotlicffi-1.1.0.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:19ffc919fa4fc6ace69286e0a23b3789b4219058313cf9b45625016bf7ff996b", size = 2911165, upload-time = "2023-09-14T14:21:59.613Z" },
+ { url = "https://files.pythonhosted.org/packages/be/20/201559dff14e83ba345a5ec03335607e47467b6633c210607e693aefac40/brotlicffi-1.1.0.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9feb210d932ffe7798ee62e6145d3a757eb6233aa9a4e7db78dd3690d7755814", size = 2927895, upload-time = "2023-09-14T14:22:01.22Z" },
+ { url = "https://files.pythonhosted.org/packages/cd/15/695b1409264143be3c933f708a3f81d53c4a1e1ebbc06f46331decbf6563/brotlicffi-1.1.0.0-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84763dbdef5dd5c24b75597a77e1b30c66604725707565188ba54bab4f114820", size = 2851834, upload-time = "2023-09-14T14:22:03.571Z" },
+ { url = "https://files.pythonhosted.org/packages/b4/40/b961a702463b6005baf952794c2e9e0099bde657d0d7e007f923883b907f/brotlicffi-1.1.0.0-cp37-abi3-win32.whl", hash = "sha256:1b12b50e07c3911e1efa3a8971543e7648100713d4e0971b13631cce22c587eb", size = 341731, upload-time = "2023-09-14T14:22:05.74Z" },
+ { url = "https://files.pythonhosted.org/packages/1c/fa/5408a03c041114ceab628ce21766a4ea882aa6f6f0a800e04ee3a30ec6b9/brotlicffi-1.1.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:994a4f0681bb6c6c3b0925530a1926b7a189d878e6e5e38fae8efa47c5d9c613", size = 366783, upload-time = "2023-09-14T14:22:07.096Z" },
+]
+
+[[package]]
+name = "camel-converter"
+version = "4.0.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/ee/3d/dd783586dc0c4aee5b6b88489666fdb2c0c344ea0aa8a5c10746cc423707/camel_converter-4.0.1.tar.gz", hash = "sha256:401414549ae4ac4073e38cdc4aa6d464dc534fc40aa06ff787bf0960b0c86535", size = 38915, upload-time = "2024-10-08T16:55:39.427Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/32/e5/806359514cc8305f047bd6d39d63890298c0596f7328b534059724bd1a9e/camel_converter-4.0.1-py3-none-any.whl", hash = "sha256:0cba7ca1354a29ca2191983deecc9dcf28889f606c28d6ed18ac7d4586b163ac", size = 6243, upload-time = "2024-10-08T16:55:37.769Z" },
+]
+
+[package.optional-dependencies]
+pydantic = [
+ { name = "pydantic" },
+]
+
+[[package]]
+name = "certifi"
+version = "2025.4.26"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e8/9e/c05b3920a3b7d20d3d3310465f50348e5b3694f4f88c6daf736eef3024c4/certifi-2025.4.26.tar.gz", hash = "sha256:0a816057ea3cdefcef70270d2c515e4506bbc954f417fa5ade2021213bb8f0c6", size = 160705, upload-time = "2025-04-26T02:12:29.51Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl", hash = "sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3", size = 159618, upload-time = "2025-04-26T02:12:27.662Z" },
+]
+
+[[package]]
+name = "cffi"
+version = "1.17.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "pycparser" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fc/97/c783634659c2920c3fc70419e3af40972dbaf758daa229a7d6ea6135c90d/cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824", size = 516621, upload-time = "2024-09-04T20:45:21.852Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/8d/f8/dd6c246b148639254dad4d6803eb6a54e8c85c6e11ec9df2cffa87571dbe/cffi-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e", size = 182989, upload-time = "2024-09-04T20:44:28.956Z" },
+ { url = "https://files.pythonhosted.org/packages/8b/f1/672d303ddf17c24fc83afd712316fda78dc6fce1cd53011b839483e1ecc8/cffi-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2", size = 178802, upload-time = "2024-09-04T20:44:30.289Z" },
+ { url = "https://files.pythonhosted.org/packages/0e/2d/eab2e858a91fdff70533cab61dcff4a1f55ec60425832ddfdc9cd36bc8af/cffi-1.17.1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3", size = 454792, upload-time = "2024-09-04T20:44:32.01Z" },
+ { url = "https://files.pythonhosted.org/packages/75/b2/fbaec7c4455c604e29388d55599b99ebcc250a60050610fadde58932b7ee/cffi-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683", size = 478893, upload-time = "2024-09-04T20:44:33.606Z" },
+ { url = "https://files.pythonhosted.org/packages/4f/b7/6e4a2162178bf1935c336d4da8a9352cccab4d3a5d7914065490f08c0690/cffi-1.17.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5", size = 485810, upload-time = "2024-09-04T20:44:35.191Z" },
+ { url = "https://files.pythonhosted.org/packages/c7/8a/1d0e4a9c26e54746dc08c2c6c037889124d4f59dffd853a659fa545f1b40/cffi-1.17.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4", size = 471200, upload-time = "2024-09-04T20:44:36.743Z" },
+ { url = "https://files.pythonhosted.org/packages/26/9f/1aab65a6c0db35f43c4d1b4f580e8df53914310afc10ae0397d29d697af4/cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd", size = 479447, upload-time = "2024-09-04T20:44:38.492Z" },
+ { url = "https://files.pythonhosted.org/packages/5f/e4/fb8b3dd8dc0e98edf1135ff067ae070bb32ef9d509d6cb0f538cd6f7483f/cffi-1.17.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed", size = 484358, upload-time = "2024-09-04T20:44:40.046Z" },
+ { url = "https://files.pythonhosted.org/packages/f1/47/d7145bf2dc04684935d57d67dff9d6d795b2ba2796806bb109864be3a151/cffi-1.17.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9", size = 488469, upload-time = "2024-09-04T20:44:41.616Z" },
+ { url = "https://files.pythonhosted.org/packages/bf/ee/f94057fa6426481d663b88637a9a10e859e492c73d0384514a17d78ee205/cffi-1.17.1-cp313-cp313-win32.whl", hash = "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d", size = 172475, upload-time = "2024-09-04T20:44:43.733Z" },
+ { url = "https://files.pythonhosted.org/packages/7c/fc/6a8cb64e5f0324877d503c854da15d76c1e50eb722e320b15345c4d0c6de/cffi-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a", size = 182009, upload-time = "2024-09-04T20:44:45.309Z" },
+]
+
+[[package]]
+name = "charset-normalizer"
+version = "3.4.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e4/33/89c2ced2b67d1c2a61c19c6751aa8902d46ce3dacb23600a283619f5a12d/charset_normalizer-3.4.2.tar.gz", hash = "sha256:5baececa9ecba31eff645232d59845c07aa030f0c81ee70184a90d35099a0e63", size = 126367, upload-time = "2025-05-02T08:34:42.01Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ea/12/a93df3366ed32db1d907d7593a94f1fe6293903e3e92967bebd6950ed12c/charset_normalizer-3.4.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:926ca93accd5d36ccdabd803392ddc3e03e6d4cd1cf17deff3b989ab8e9dbcf0", size = 199622, upload-time = "2025-05-02T08:32:56.363Z" },
+ { url = "https://files.pythonhosted.org/packages/04/93/bf204e6f344c39d9937d3c13c8cd5bbfc266472e51fc8c07cb7f64fcd2de/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eba9904b0f38a143592d9fc0e19e2df0fa2e41c3c3745554761c5f6447eedabf", size = 143435, upload-time = "2025-05-02T08:32:58.551Z" },
+ { url = "https://files.pythonhosted.org/packages/22/2a/ea8a2095b0bafa6c5b5a55ffdc2f924455233ee7b91c69b7edfcc9e02284/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3fddb7e2c84ac87ac3a947cb4e66d143ca5863ef48e4a5ecb83bd48619e4634e", size = 153653, upload-time = "2025-05-02T08:33:00.342Z" },
+ { url = "https://files.pythonhosted.org/packages/b6/57/1b090ff183d13cef485dfbe272e2fe57622a76694061353c59da52c9a659/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98f862da73774290f251b9df8d11161b6cf25b599a66baf087c1ffe340e9bfd1", size = 146231, upload-time = "2025-05-02T08:33:02.081Z" },
+ { url = "https://files.pythonhosted.org/packages/e2/28/ffc026b26f441fc67bd21ab7f03b313ab3fe46714a14b516f931abe1a2d8/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c9379d65defcab82d07b2a9dfbfc2e95bc8fe0ebb1b176a3190230a3ef0e07c", size = 148243, upload-time = "2025-05-02T08:33:04.063Z" },
+ { url = "https://files.pythonhosted.org/packages/c0/0f/9abe9bd191629c33e69e47c6ef45ef99773320e9ad8e9cb08b8ab4a8d4cb/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e635b87f01ebc977342e2697d05b56632f5f879a4f15955dfe8cef2448b51691", size = 150442, upload-time = "2025-05-02T08:33:06.418Z" },
+ { url = "https://files.pythonhosted.org/packages/67/7c/a123bbcedca91d5916c056407f89a7f5e8fdfce12ba825d7d6b9954a1a3c/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:1c95a1e2902a8b722868587c0e1184ad5c55631de5afc0eb96bc4b0d738092c0", size = 145147, upload-time = "2025-05-02T08:33:08.183Z" },
+ { url = "https://files.pythonhosted.org/packages/ec/fe/1ac556fa4899d967b83e9893788e86b6af4d83e4726511eaaad035e36595/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ef8de666d6179b009dce7bcb2ad4c4a779f113f12caf8dc77f0162c29d20490b", size = 153057, upload-time = "2025-05-02T08:33:09.986Z" },
+ { url = "https://files.pythonhosted.org/packages/2b/ff/acfc0b0a70b19e3e54febdd5301a98b72fa07635e56f24f60502e954c461/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:32fc0341d72e0f73f80acb0a2c94216bd704f4f0bce10aedea38f30502b271ff", size = 156454, upload-time = "2025-05-02T08:33:11.814Z" },
+ { url = "https://files.pythonhosted.org/packages/92/08/95b458ce9c740d0645feb0e96cea1f5ec946ea9c580a94adfe0b617f3573/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:289200a18fa698949d2b39c671c2cc7a24d44096784e76614899a7ccf2574b7b", size = 154174, upload-time = "2025-05-02T08:33:13.707Z" },
+ { url = "https://files.pythonhosted.org/packages/78/be/8392efc43487ac051eee6c36d5fbd63032d78f7728cb37aebcc98191f1ff/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4a476b06fbcf359ad25d34a057b7219281286ae2477cc5ff5e3f70a246971148", size = 149166, upload-time = "2025-05-02T08:33:15.458Z" },
+ { url = "https://files.pythonhosted.org/packages/44/96/392abd49b094d30b91d9fbda6a69519e95802250b777841cf3bda8fe136c/charset_normalizer-3.4.2-cp313-cp313-win32.whl", hash = "sha256:aaeeb6a479c7667fbe1099af9617c83aaca22182d6cf8c53966491a0f1b7ffb7", size = 98064, upload-time = "2025-05-02T08:33:17.06Z" },
+ { url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl", hash = "sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980", size = 105641, upload-time = "2025-05-02T08:33:18.753Z" },
+ { url = "https://files.pythonhosted.org/packages/20/94/c5790835a017658cbfabd07f3bfb549140c3ac458cfc196323996b10095a/charset_normalizer-3.4.2-py3-none-any.whl", hash = "sha256:7f56930ab0abd1c45cd15be65cc741c28b1c9a34876ce8c17a2fa107810c0af0", size = 52626, upload-time = "2025-05-02T08:34:40.053Z" },
+]
+
+[[package]]
+name = "click"
+version = "8.2.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "colorama", marker = "sys_platform == 'win32'" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/60/6c/8ca2efa64cf75a977a0d7fac081354553ebe483345c734fb6b6515d96bbc/click-8.2.1.tar.gz", hash = "sha256:27c491cc05d968d271d5a1db13e3b5a184636d9d930f148c50b038f0d0646202", size = 286342, upload-time = "2025-05-20T23:19:49.832Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/85/32/10bb5764d90a8eee674e9dc6f4db6a0ab47c8c4d0d83c27f7c39ac415a4d/click-8.2.1-py3-none-any.whl", hash = "sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b", size = 102215, upload-time = "2025-05-20T23:19:47.796Z" },
+]
+
+[[package]]
+name = "click-default-group"
+version = "1.2.4"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "click" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/1d/ce/edb087fb53de63dad3b36408ca30368f438738098e668b78c87f93cd41df/click_default_group-1.2.4.tar.gz", hash = "sha256:eb3f3c99ec0d456ca6cd2a7f08f7d4e91771bef51b01bdd9580cc6450fe1251e", size = 3505, upload-time = "2023-08-04T07:54:58.425Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl", hash = "sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f", size = 4123, upload-time = "2023-08-04T07:54:56.875Z" },
+]
+
+[[package]]
+name = "colorama"
+version = "0.4.6"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" },
+]
+
+[[package]]
+name = "coverage"
+version = "7.8.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/27/b4/a707d96c2c1ce9402ce1ce7124c53b9e4e1f3e617652a5ed2fbba4c9b4be/coverage-7.8.1.tar.gz", hash = "sha256:d41d4da5f2871b1782c6b74948d2d37aac3a5b39b43a6ba31d736b97a02ae1f1", size = 812193, upload-time = "2025-05-21T12:39:46.1Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ed/0a/696a8d6c245a72f61589e2015a633fab5aacd8c916802df41d23e387b442/coverage-7.8.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:dd5c305faa2e69334a53061b3168987847dadc2449bab95735242a9bde92fde8", size = 211902, upload-time = "2025-05-21T12:38:44.54Z" },
+ { url = "https://files.pythonhosted.org/packages/3b/2f/0c065dfaf497586cf1693dee2a94e7489a4be840a5bbe765a7a78735268b/coverage-7.8.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:af6b8cdf0857fd4e6460dd6639c37c3f82163127f6112c1942b5e6a52a477676", size = 212175, upload-time = "2025-05-21T12:38:46.143Z" },
+ { url = "https://files.pythonhosted.org/packages/ff/a1/a8a40658f67311c96c3d9073293fefee8a9485906ed531546dffe35fdd4b/coverage-7.8.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e233a56bbf99e4cb134c4f8e63b16c77714e3987daf2c5aa10c3ba8c4232d730", size = 245564, upload-time = "2025-05-21T12:38:47.843Z" },
+ { url = "https://files.pythonhosted.org/packages/6e/94/dc36e2256ce484f482ed5b2a103a261009c301cdad237fdefe2a9b6ddeab/coverage-7.8.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9dabc70012fd7b58a8040a7bc1b5f71fd0e62e2138aefdd8367d3d24bf82c349", size = 242719, upload-time = "2025-05-21T12:38:49.517Z" },
+ { url = "https://files.pythonhosted.org/packages/73/d7/d096859c59f02d4550e6bc9180bd06c88313c32977d7458e0d4ed06ed057/coverage-7.8.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e1f8e96455907496b3e4ea16f63bb578da31e17d2805278b193525e7714f17f2", size = 244634, upload-time = "2025-05-21T12:38:51.18Z" },
+ { url = "https://files.pythonhosted.org/packages/be/a0/6f4db84d1d3334ca37c2dae02a54761a1a3918aec56faec26f1590077181/coverage-7.8.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0034ceec8e91fdaf77350901cc48f47efd00f23c220a3f9fc1187774ddf307cb", size = 244824, upload-time = "2025-05-21T12:38:52.789Z" },
+ { url = "https://files.pythonhosted.org/packages/96/46/1e74016ba7d9f4242170f9d814454e6483a640332a67c0e139dab7d85762/coverage-7.8.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:82db9344a07dd9106796b9fe8805425633146a7ea7fed5ed07c65a64d0bb79e1", size = 242872, upload-time = "2025-05-21T12:38:54.493Z" },
+ { url = "https://files.pythonhosted.org/packages/22/41/51df77f279b49e7dd05ee9dfe746cf8698c873ffdf7fbe57aaee9522ec67/coverage-7.8.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9772c9e266b2ca4999180c12b90c8efb4c5c9ad3e55f301d78bc579af6467ad9", size = 244179, upload-time = "2025-05-21T12:38:56.762Z" },
+ { url = "https://files.pythonhosted.org/packages/b8/83/6207522f3afb64592c47353bc79b0e3e6c3f48fde5e5221ab2b80a12e93d/coverage-7.8.1-cp313-cp313-win32.whl", hash = "sha256:6f24a1e2c373a77afae21bc512466a91e31251685c271c5309ee3e557f6e3e03", size = 214395, upload-time = "2025-05-21T12:38:58.631Z" },
+ { url = "https://files.pythonhosted.org/packages/43/b8/cd40a8fff1633112ac40edde9006aceaa55b32a84976394a42c33547ef95/coverage-7.8.1-cp313-cp313-win_amd64.whl", hash = "sha256:76a4e1d62505a21971968be61ae17cbdc5e0c483265a37f7ddbbc050f9c0b8ec", size = 215195, upload-time = "2025-05-21T12:39:00.614Z" },
+ { url = "https://files.pythonhosted.org/packages/7e/f0/8fea9beb378cdce803ba838293314b21527f4edab58dcbe2e6a5553e7dc8/coverage-7.8.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:35dd5d405a1d378c39f3f30f628a25b0b99f1b8e5bdd78275df2e7b0404892d7", size = 212738, upload-time = "2025-05-21T12:39:02.808Z" },
+ { url = "https://files.pythonhosted.org/packages/0c/90/f28953cd1246ad7839874ef97e181f153d4274cc6db21857fbca18b89c97/coverage-7.8.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:87b86a87f8de2e1bd0bcd45faf1b1edf54f988c8857157300e0336efcfb8ede6", size = 212958, upload-time = "2025-05-21T12:39:04.536Z" },
+ { url = "https://files.pythonhosted.org/packages/fb/70/3f3d34ef68534afa73aee75537d1daf1e91029738cbf052ef828313aa960/coverage-7.8.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce4553a573edb363d5db12be1c044826878bec039159d6d4eafe826ef773396d", size = 257024, upload-time = "2025-05-21T12:39:06.703Z" },
+ { url = "https://files.pythonhosted.org/packages/cf/66/96ab415609b777adfcfa00f29d75d2278da139c0958de7a50dd0023811e6/coverage-7.8.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:db181a1896e0bad75b3bf4916c49fd3cf6751f9cc203fe0e0ecbee1fc43590fa", size = 252867, upload-time = "2025-05-21T12:39:08.818Z" },
+ { url = "https://files.pythonhosted.org/packages/52/4f/3d48704c62fa5f72447005b8a77cc9cce5e164c2df357433442d17f2ac0a/coverage-7.8.1-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6ce2606a171f9cf7c15a77ca61f979ffc0e0d92cd2fb18767cead58c1d19f58e", size = 255096, upload-time = "2025-05-21T12:39:10.516Z" },
+ { url = "https://files.pythonhosted.org/packages/64/1d/e8d4ac647c1967dd3dbc250fb4595b838b7067ad32602a7339ac467d9c5a/coverage-7.8.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4fc4f7cff2495d6d112353c33a439230a6de0b7cd0c2578f1e8d75326f63d783", size = 256276, upload-time = "2025-05-21T12:39:12.177Z" },
+ { url = "https://files.pythonhosted.org/packages/9c/e4/62e2f9521f3758dea07bcefc2c9c0dd34fa67d7035b0443c7c3072e6308b/coverage-7.8.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:ff619c58322d9d6df0a859dc76c3532d7bdbc125cb040f7cd642141446b4f654", size = 254478, upload-time = "2025-05-21T12:39:14.325Z" },
+ { url = "https://files.pythonhosted.org/packages/49/41/7af246f5e68272f97a31a122da5878747e941fef019430485534d1f6a44a/coverage-7.8.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:c0d6290a466a6f3fadf6add2dd4ec11deba4e1a6e3db2dd284edd497aadf802f", size = 255255, upload-time = "2025-05-21T12:39:16.059Z" },
+ { url = "https://files.pythonhosted.org/packages/05/5d/5dacd7915972f82d909f36974c6415667dae08a32478d87dfdbac6788e22/coverage-7.8.1-cp313-cp313t-win32.whl", hash = "sha256:e4e893c7f7fb12271a667d5c1876710fae06d7580343afdb5f3fc4488b73209e", size = 215112, upload-time = "2025-05-21T12:39:18.263Z" },
+ { url = "https://files.pythonhosted.org/packages/8b/89/48e77e71e81e5b79fd6471083d087cd69517e5f585b548d87c92d5ae873c/coverage-7.8.1-cp313-cp313t-win_amd64.whl", hash = "sha256:41d142eefbc0bb3be160a77b2c0fbec76f345387676265052e224eb6c67b7af3", size = 216270, upload-time = "2025-05-21T12:39:20.461Z" },
+ { url = "https://files.pythonhosted.org/packages/1b/a1/4d968d4605f3a87a809f0c8f495eed81656c93cf6c00818334498ad6ad45/coverage-7.8.1-py3-none-any.whl", hash = "sha256:e54b80885b0e61d346accc5709daf8762471a452345521cc9281604a907162c2", size = 203623, upload-time = "2025-05-21T12:39:43.473Z" },
+]
+
+[[package]]
+name = "cryptography"
+version = "45.0.2"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "cffi", marker = "platform_python_implementation != 'PyPy'" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/f6/47/92a8914716f2405f33f1814b97353e3cfa223cd94a77104075d42de3099e/cryptography-45.0.2.tar.gz", hash = "sha256:d784d57b958ffd07e9e226d17272f9af0c41572557604ca7554214def32c26bf", size = 743865, upload-time = "2025-05-18T02:46:34.986Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/3d/2f/46b9e715157643ad16f039ec3c3c47d174da6f825bf5034b1c5f692ab9e2/cryptography-45.0.2-cp311-abi3-macosx_10_9_universal2.whl", hash = "sha256:61a8b1bbddd9332917485b2453d1de49f142e6334ce1d97b7916d5a85d179c84", size = 7043448, upload-time = "2025-05-18T02:45:12.495Z" },
+ { url = "https://files.pythonhosted.org/packages/90/52/49e6c86278e1b5ec226e96b62322538ccc466306517bf9aad8854116a088/cryptography-45.0.2-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4cc31c66411e14dd70e2f384a9204a859dc25b05e1f303df0f5326691061b839", size = 4201098, upload-time = "2025-05-18T02:45:15.178Z" },
+ { url = "https://files.pythonhosted.org/packages/7b/3a/201272539ac5b66b4cb1af89021e423fc0bfacb73498950280c51695fb78/cryptography-45.0.2-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:463096533acd5097f8751115bc600b0b64620c4aafcac10c6d0041e6e68f88fe", size = 4429839, upload-time = "2025-05-18T02:45:17.614Z" },
+ { url = "https://files.pythonhosted.org/packages/99/89/fa1a84832b8f8f3917875cb15324bba98def5a70175a889df7d21a45dc75/cryptography-45.0.2-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:cdafb86eb673c3211accffbffdb3cdffa3aaafacd14819e0898d23696d18e4d3", size = 4205154, upload-time = "2025-05-18T02:45:19.874Z" },
+ { url = "https://files.pythonhosted.org/packages/1c/c5/5225d5230d538ab461725711cf5220560a813d1eb68bafcfb00131b8f631/cryptography-45.0.2-cp311-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:05c2385b1f5c89a17df19900cfb1345115a77168f5ed44bdf6fd3de1ce5cc65b", size = 3897145, upload-time = "2025-05-18T02:45:22.209Z" },
+ { url = "https://files.pythonhosted.org/packages/fe/24/f19aae32526cc55ae17d473bc4588b1234af2979483d99cbfc57e55ffea6/cryptography-45.0.2-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:e9e4bdcd70216b08801e267c0b563316b787f957a46e215249921f99288456f9", size = 4462192, upload-time = "2025-05-18T02:45:24.773Z" },
+ { url = "https://files.pythonhosted.org/packages/19/18/4a69ac95b0b3f03355970baa6c3f9502bbfc54e7df81fdb179654a00f48e/cryptography-45.0.2-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:b2de529027579e43b6dc1f805f467b102fb7d13c1e54c334f1403ee2b37d0059", size = 4208093, upload-time = "2025-05-18T02:45:27.028Z" },
+ { url = "https://files.pythonhosted.org/packages/7c/54/2dea55ccc9558b8fa14f67156250b6ee231e31765601524e4757d0b5db6b/cryptography-45.0.2-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:10d68763892a7b19c22508ab57799c4423c7c8cd61d7eee4c5a6a55a46511949", size = 4461819, upload-time = "2025-05-18T02:45:29.39Z" },
+ { url = "https://files.pythonhosted.org/packages/37/f1/1b220fcd5ef4b1f0ff3e59e733b61597505e47f945606cc877adab2c1a17/cryptography-45.0.2-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:d2a90ce2f0f5b695e4785ac07c19a58244092f3c85d57db6d8eb1a2b26d2aad6", size = 4329202, upload-time = "2025-05-18T02:45:31.925Z" },
+ { url = "https://files.pythonhosted.org/packages/6d/e0/51d1dc4f96f819a56db70f0b4039b4185055bbb8616135884c3c3acc4c6d/cryptography-45.0.2-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:59c0c8f043dd376bbd9d4f636223836aed50431af4c5a467ed9bf61520294627", size = 4570412, upload-time = "2025-05-18T02:45:34.348Z" },
+ { url = "https://files.pythonhosted.org/packages/dc/44/88efb40a3600d15277a77cdc69eeeab45a98532078d2a36cffd9325d3b3f/cryptography-45.0.2-cp311-abi3-win32.whl", hash = "sha256:80303ee6a02ef38c4253160446cbeb5c400c07e01d4ddbd4ff722a89b736d95a", size = 2933584, upload-time = "2025-05-18T02:45:36.198Z" },
+ { url = "https://files.pythonhosted.org/packages/d9/a1/bc9f82ba08760442cc8346d1b4e7b769b86d197193c45b42b3595d231e84/cryptography-45.0.2-cp311-abi3-win_amd64.whl", hash = "sha256:7429936146063bd1b2cfc54f0e04016b90ee9b1c908a7bed0800049cbace70eb", size = 3408537, upload-time = "2025-05-18T02:45:38.184Z" },
+ { url = "https://files.pythonhosted.org/packages/59/bc/1b6acb1dca366f9c0b3880888ecd7fcfb68023930d57df854847c6da1d10/cryptography-45.0.2-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:e86c8d54cd19a13e9081898b3c24351683fd39d726ecf8e774aaa9d8d96f5f3a", size = 7025581, upload-time = "2025-05-18T02:45:40.632Z" },
+ { url = "https://files.pythonhosted.org/packages/31/a3/a3e4a298d3db4a04085728f5ae6c8cda157e49c5bb784886d463b9fbff70/cryptography-45.0.2-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e328357b6bbf79928363dbf13f4635b7aac0306afb7e5ad24d21d0c5761c3253", size = 4189148, upload-time = "2025-05-18T02:45:42.538Z" },
+ { url = "https://files.pythonhosted.org/packages/53/90/100dfadd4663b389cb56972541ec1103490a19ebad0132af284114ba0868/cryptography-45.0.2-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:49af56491473231159c98c2c26f1a8f3799a60e5cf0e872d00745b858ddac9d2", size = 4424113, upload-time = "2025-05-18T02:45:44.316Z" },
+ { url = "https://files.pythonhosted.org/packages/0d/40/e2b9177dbed6f3fcbbf1942e1acea2fd15b17007204b79d675540dd053af/cryptography-45.0.2-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:f169469d04a23282de9d0be349499cb6683b6ff1b68901210faacac9b0c24b7d", size = 4189696, upload-time = "2025-05-18T02:45:46.622Z" },
+ { url = "https://files.pythonhosted.org/packages/70/ae/ec29c79f481e1767c2ff916424ba36f3cf7774de93bbd60428a3c52d1357/cryptography-45.0.2-cp37-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:9cfd1399064b13043082c660ddd97a0358e41c8b0dc7b77c1243e013d305c344", size = 3881498, upload-time = "2025-05-18T02:45:48.884Z" },
+ { url = "https://files.pythonhosted.org/packages/5f/4a/72937090e5637a232b2f73801c9361cd08404a2d4e620ca4ec58c7ea4b70/cryptography-45.0.2-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:18f8084b7ca3ce1b8d38bdfe33c48116edf9a08b4d056ef4a96dceaa36d8d965", size = 4451678, upload-time = "2025-05-18T02:45:50.706Z" },
+ { url = "https://files.pythonhosted.org/packages/d3/fa/1377fced81fd67a4a27514248261bb0d45c3c1e02169411fe231583088c8/cryptography-45.0.2-cp37-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:2cb03a944a1a412724d15a7c051d50e63a868031f26b6a312f2016965b661942", size = 4192296, upload-time = "2025-05-18T02:45:52.422Z" },
+ { url = "https://files.pythonhosted.org/packages/d1/cf/b6fe837c83a08b9df81e63299d75fc5b3c6d82cf24b3e1e0e331050e9e5c/cryptography-45.0.2-cp37-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:a9727a21957d3327cf6b7eb5ffc9e4b663909a25fea158e3fcbc49d4cdd7881b", size = 4451749, upload-time = "2025-05-18T02:45:55.025Z" },
+ { url = "https://files.pythonhosted.org/packages/af/d8/5a655675cc635c7190bfc8cffb84bcdc44fc62ce945ad1d844adaa884252/cryptography-45.0.2-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:ddb8d01aa900b741d6b7cc585a97aff787175f160ab975e21f880e89d810781a", size = 4317601, upload-time = "2025-05-18T02:45:56.911Z" },
+ { url = "https://files.pythonhosted.org/packages/b9/d4/75d2375a20d80aa262a8adee77bf56950e9292929e394b9fae2481803f11/cryptography-45.0.2-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:c0c000c1a09f069632d8a9eb3b610ac029fcc682f1d69b758e625d6ee713f4ed", size = 4560535, upload-time = "2025-05-18T02:45:59.33Z" },
+ { url = "https://files.pythonhosted.org/packages/aa/18/c3a94474987ebcfb88692036b2ec44880d243fefa73794bdcbf748679a6e/cryptography-45.0.2-cp37-abi3-win32.whl", hash = "sha256:08281de408e7eb71ba3cd5098709a356bfdf65eebd7ee7633c3610f0aa80d79b", size = 2922045, upload-time = "2025-05-18T02:46:01.012Z" },
+ { url = "https://files.pythonhosted.org/packages/63/63/fb28b30c144182fd44ce93d13ab859791adbf923e43bdfb610024bfecda1/cryptography-45.0.2-cp37-abi3-win_amd64.whl", hash = "sha256:48caa55c528617fa6db1a9c3bf2e37ccb31b73e098ac2b71408d1f2db551dde4", size = 3393321, upload-time = "2025-05-18T02:46:03.441Z" },
+]
+
+[[package]]
+name = "cssselect2"
+version = "0.8.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "tinycss2" },
+ { name = "webencodings" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/9f/86/fd7f58fc498b3166f3a7e8e0cddb6e620fe1da35b02248b1bd59e95dbaaa/cssselect2-0.8.0.tar.gz", hash = "sha256:7674ffb954a3b46162392aee2a3a0aedb2e14ecf99fcc28644900f4e6e3e9d3a", size = 35716, upload-time = "2025-03-05T14:46:07.988Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/0f/e7/aa315e6a749d9b96c2504a1ba0ba031ba2d0517e972ce22682e3fccecb09/cssselect2-0.8.0-py3-none-any.whl", hash = "sha256:46fc70ebc41ced7a32cd42d58b1884d72ade23d21e5a4eaaf022401c13f0e76e", size = 15454, upload-time = "2025-03-05T14:46:06.463Z" },
+]
+
+[[package]]
+name = "dnspython"
+version = "2.7.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/b5/4a/263763cb2ba3816dd94b08ad3a33d5fdae34ecb856678773cc40a3605829/dnspython-2.7.0.tar.gz", hash = "sha256:ce9c432eda0dc91cf618a5cedf1a4e142651196bbcd2c80e89ed5a907e5cfaf1", size = 345197, upload-time = "2024-10-05T20:14:59.362Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl", hash = "sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86", size = 313632, upload-time = "2024-10-05T20:14:57.687Z" },
+]
+
+[[package]]
+name = "elastic-transport"
+version = "8.17.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "certifi" },
+ { name = "urllib3" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/6a/54/d498a766ac8fa475f931da85a154666cc81a70f8eb4a780bc8e4e934e9ac/elastic_transport-8.17.1.tar.gz", hash = "sha256:5edef32ac864dca8e2f0a613ef63491ee8d6b8cfb52881fa7313ba9290cac6d2", size = 73425, upload-time = "2025-03-13T07:28:30.776Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/cf/cd/b71d5bc74cde7fc6fd9b2ff9389890f45d9762cbbbf81dc5e51fd7588c4a/elastic_transport-8.17.1-py3-none-any.whl", hash = "sha256:192718f498f1d10c5e9aa8b9cf32aed405e469a7f0e9d6a8923431dbb2c59fb8", size = 64969, upload-time = "2025-03-13T07:28:29.031Z" },
+]
+
+[[package]]
+name = "elasticsearch"
+version = "8.18.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "elastic-transport" },
+ { name = "python-dateutil" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/2a/e4/40fc0e8d9a646889ac3f865cd35e41835f3cf888c716c7aae82248e022f0/elasticsearch-8.18.1.tar.gz", hash = "sha256:998035f17a8c1fba7ae26b183dca797dcf95db86da6a7ecba56d31afc40f07c7", size = 750746, upload-time = "2025-04-29T09:32:16.361Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/33/62/f62e8a5c7c6f7b27481c9ffc248fb32078ad88878aa4f3731a83a14cc797/elasticsearch-8.18.1-py3-none-any.whl", hash = "sha256:1a8c8b5ec3ce5be88f96d2f898375671648e96272978bce0dee3137d9326aabb", size = 906320, upload-time = "2025-04-29T09:32:12.527Z" },
+]
+
+[[package]]
+name = "elasticsearch-dsl"
+version = "8.18.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "elastic-transport" },
+ { name = "elasticsearch" },
+ { name = "python-dateutil" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/72/6d/00cbeee412a2dc825f0df18c98463a2e0b423b86800fba6c50ea2c627962/elasticsearch_dsl-8.18.0.tar.gz", hash = "sha256:763465dba9eae166add10567e924c65730aa122819b08bfe9a077e91b13b30d1", size = 31886, upload-time = "2025-04-16T11:54:14.412Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/77/a9/b200790a22585aeb023d88bd8b9fb222820e2976ce4239d401670116ae3c/elasticsearch_dsl-8.18.0-py3-none-any.whl", hash = "sha256:0522c5bb20c7abae69855109e650bf1166d486cbf706b5e1b29c28936a9102a3", size = 10406, upload-time = "2025-04-16T11:54:12.677Z" },
+]
+
+[[package]]
+name = "email-validator"
+version = "2.2.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "dnspython" },
+ { name = "idna" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/48/ce/13508a1ec3f8bb981ae4ca79ea40384becc868bfae97fd1c942bb3a001b1/email_validator-2.2.0.tar.gz", hash = "sha256:cb690f344c617a714f22e66ae771445a1ceb46821152df8e165c5f9a364582b7", size = 48967, upload-time = "2024-06-20T11:30:30.034Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/d7/ee/bf0adb559ad3c786f12bcbc9296b3f5675f529199bef03e2df281fa1fadb/email_validator-2.2.0-py3-none-any.whl", hash = "sha256:561977c2d73ce3611850a06fa56b414621e0c8faa9d66f2611407d87465da631", size = 33521, upload-time = "2024-06-20T11:30:28.248Z" },
+]
+
+[[package]]
+name = "enrollment-management"
+version = "0.1.0"
+source = { virtual = "." }
+dependencies = [
+ { name = "layercake" },
+]
+
+[package.dev-dependencies]
+dev = [
+ { name = "jsonlines" },
+ { name = "pytest" },
+ { name = "pytest-cov" },
+ { name = "ruff" },
+]
+
+[package.metadata]
+requires-dist = [{ name = "layercake", directory = "../layercake" }]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "jsonlines", specifier = ">=4.0.0" },
+ { name = "pytest", specifier = ">=8.3.4" },
+ { name = "pytest-cov", specifier = ">=6.0.0" },
+ { name = "ruff", specifier = ">=0.9.1" },
+]
+
+[[package]]
+name = "face"
+version = "24.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "boltons" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/ac/79/2484075a8549cd64beae697a8f664dee69a5ccf3a7439ee40c8f93c1978a/face-24.0.0.tar.gz", hash = "sha256:611e29a01ac5970f0077f9c577e746d48c082588b411b33a0dd55c4d872949f6", size = 62732, upload-time = "2024-11-02T05:24:26.095Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e9/47/21867c2e5fd006c8d36a560df9e32cb4f1f566b20c5dd41f5f8a2124f7de/face-24.0.0-py3-none-any.whl", hash = "sha256:0e2c17b426fa4639a4e77d1de9580f74a98f4869ba4c7c8c175b810611622cd3", size = 54742, upload-time = "2024-11-02T05:24:24.939Z" },
+]
+
+[[package]]
+name = "fastjsonschema"
+version = "2.21.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/8b/50/4b769ce1ac4071a1ef6d86b1a3fb56cdc3a37615e8c5519e1af96cdac366/fastjsonschema-2.21.1.tar.gz", hash = "sha256:794d4f0a58f848961ba16af7b9c85a3e88cd360df008c59aac6fc5ae9323b5d4", size = 373939, upload-time = "2024-12-02T10:55:15.133Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl", hash = "sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667", size = 23924, upload-time = "2024-12-02T10:55:07.599Z" },
+]
+
+[[package]]
+name = "fonttools"
+version = "4.58.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/9a/cf/4d037663e2a1fe30fddb655d755d76e18624be44ad467c07412c2319ab97/fonttools-4.58.0.tar.gz", hash = "sha256:27423d0606a2c7b336913254bf0b1193ebd471d5f725d665e875c5e88a011a43", size = 3514522, upload-time = "2025-05-10T17:36:35.886Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/0c/d7/d77cae11c445916d767cace93ba8283b3f360197d95d7470b90a9e984e10/fonttools-4.58.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:4809790f2371d8a08e59e1ce2b734c954cf09742e75642d7f4c46cfdac488fdd", size = 2728320, upload-time = "2025-05-10T17:35:56.455Z" },
+ { url = "https://files.pythonhosted.org/packages/77/48/7d8b3c519ef4b48081d40310262224a38785e39a8610ccb92a229a6f085d/fonttools-4.58.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:b00f240280f204ce4546b05ff3515bf8ff47a9cae914c718490025ea2bb9b324", size = 2302570, upload-time = "2025-05-10T17:35:58.794Z" },
+ { url = "https://files.pythonhosted.org/packages/2c/48/156b83eb8fb7261056e448bfda1b495b90e761b28ec23cee10e3e19f1967/fonttools-4.58.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5a62015ad463e1925544e9159dd6eefe33ebfb80938d5ab15d8b1c4b354ff47b", size = 4790066, upload-time = "2025-05-10T17:36:01.174Z" },
+ { url = "https://files.pythonhosted.org/packages/60/49/aaecb1b3cea2b9b9c7cea6240d6bc8090feb5489a6fbf93cb68003be979b/fonttools-4.58.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ceef6f6ab58061a811967e3e32e630747fcb823dcc33a9a2c80e2d0d17cb292", size = 4861076, upload-time = "2025-05-10T17:36:03.663Z" },
+ { url = "https://files.pythonhosted.org/packages/dc/c8/97cbb41bee81ea9daf6109e0f3f70a274a3c69418e5ac6b0193f5dacf506/fonttools-4.58.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c7be21ac52370b515cdbdd0f400803fd29432a4fa4ddb4244ac8b322e54f36c0", size = 4858394, upload-time = "2025-05-10T17:36:06.087Z" },
+ { url = "https://files.pythonhosted.org/packages/4d/23/c2c231457361f869a7d7374a557208e303b469d48a4a697c0fb249733ea1/fonttools-4.58.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:85836be4c3c4aacf6fcb7a6f263896d0e9ce431da9fa6fe9213d70f221f131c9", size = 5002160, upload-time = "2025-05-10T17:36:08.178Z" },
+ { url = "https://files.pythonhosted.org/packages/a9/e0/c2262f941a43b810c5c192db94b5d1ce8eda91bec2757f7e2416398f4072/fonttools-4.58.0-cp313-cp313-win32.whl", hash = "sha256:2b32b7130277bd742cb8c4379a6a303963597d22adea77a940343f3eadbcaa4c", size = 2171919, upload-time = "2025-05-10T17:36:10.644Z" },
+ { url = "https://files.pythonhosted.org/packages/8f/ee/e4aa7bb4ce510ad57a808d321df1bbed1eeb6e1dfb20aaee1a5d9c076849/fonttools-4.58.0-cp313-cp313-win_amd64.whl", hash = "sha256:75e68ee2ec9aaa173cf5e33f243da1d51d653d5e25090f2722bc644a78db0f1a", size = 2222972, upload-time = "2025-05-10T17:36:12.495Z" },
+ { url = "https://files.pythonhosted.org/packages/9b/1f/4417c26e26a1feab85a27e927f7a73d8aabc84544be8ba108ce4aa90eb1e/fonttools-4.58.0-py3-none-any.whl", hash = "sha256:c96c36880be2268be409df7b08c5b5dacac1827083461a6bc2cb07b8cbcec1d7", size = 1111440, upload-time = "2025-05-10T17:36:33.607Z" },
+]
+
+[package.optional-dependencies]
+woff = [
+ { name = "brotli", marker = "platform_python_implementation == 'CPython'" },
+ { name = "brotlicffi", marker = "platform_python_implementation != 'CPython'" },
+ { name = "zopfli" },
+]
+
+[[package]]
+name = "ftfy"
+version = "6.3.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "wcwidth" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/a5/d3/8650919bc3c7c6e90ee3fa7fd618bf373cbbe55dff043bd67353dbb20cd8/ftfy-6.3.1.tar.gz", hash = "sha256:9b3c3d90f84fb267fe64d375a07b7f8912d817cf86009ae134aa03e1819506ec", size = 308927, upload-time = "2024-10-26T00:50:35.149Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ab/6e/81d47999aebc1b155f81eca4477a616a70f238a2549848c38983f3c22a82/ftfy-6.3.1-py3-none-any.whl", hash = "sha256:7c70eb532015cd2f9adb53f101fb6c7945988d023a085d127d1573dc49dd0083", size = 44821, upload-time = "2024-10-26T00:50:33.425Z" },
+]
+
+[[package]]
+name = "glom"
+version = "24.11.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "attrs" },
+ { name = "boltons" },
+ { name = "face" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/05/89/b57cfbc448189426f2e01b244fbe9226b059ef5423a9d49c1d335a1f1026/glom-24.11.0.tar.gz", hash = "sha256:4325f96759a912044af7b6c6bd0dba44ad8c1eb6038aab057329661d2021bb27", size = 195120, upload-time = "2024-11-02T23:17:50.405Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/9c/a2/75fd80784ec33da8d39cf885e8811a4fbc045a90db5e336b8e345e66dbb2/glom-24.11.0-py3-none-any.whl", hash = "sha256:991db7fcb4bfa9687010aa519b7b541bbe21111e70e58fdd2d7e34bbaa2c1fbd", size = 102690, upload-time = "2024-11-02T23:17:46.468Z" },
+]
+
+[[package]]
+name = "idna"
+version = "3.10"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f1/70/7703c29685631f5a7590aa73f1f1d3fa9a380e654b86af429e0934a32f7d/idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9", size = 190490, upload-time = "2024-09-15T18:07:39.745Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3", size = 70442, upload-time = "2024-09-15T18:07:37.964Z" },
+]
+
+[[package]]
+name = "iniconfig"
+version = "2.1.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f2/97/ebf4da567aa6827c909642694d71c9fcf53e5b504f2d96afea02718862f3/iniconfig-2.1.0.tar.gz", hash = "sha256:3abbd2e30b36733fee78f9c7f7308f2d0050e88f0087fd25c2645f63c773e1c7", size = 4793, upload-time = "2025-03-19T20:09:59.721Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl", hash = "sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760", size = 6050, upload-time = "2025-03-19T20:10:01.071Z" },
+]
+
+[[package]]
+name = "jmespath"
+version = "1.0.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/00/2a/e867e8531cf3e36b41201936b7fa7ba7b5702dbef42922193f05c8976cd6/jmespath-1.0.1.tar.gz", hash = "sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe", size = 25843, upload-time = "2022-06-17T18:00:12.224Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/31/b4/b9b800c45527aadd64d5b442f9b932b00648617eb5d63d2c7a6587b7cafc/jmespath-1.0.1-py3-none-any.whl", hash = "sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980", size = 20256, upload-time = "2022-06-17T18:00:10.251Z" },
+]
+
+[[package]]
+name = "jsonlines"
+version = "4.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "attrs" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/35/87/bcda8e46c88d0e34cad2f09ee2d0c7f5957bccdb9791b0b934ec84d84be4/jsonlines-4.0.0.tar.gz", hash = "sha256:0c6d2c09117550c089995247f605ae4cf77dd1533041d366351f6f298822ea74", size = 11359, upload-time = "2023-09-01T12:34:44.187Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/f8/62/d9ba6323b9202dd2fe166beab8a86d29465c41a0288cbe229fac60c1ab8d/jsonlines-4.0.0-py3-none-any.whl", hash = "sha256:185b334ff2ca5a91362993f42e83588a360cf95ce4b71a73548502bda52a7c55", size = 8701, upload-time = "2023-09-01T12:34:42.563Z" },
+]
+
+[[package]]
+name = "jsonpath-ng"
+version = "1.7.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "ply" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/6d/86/08646239a313f895186ff0a4573452038eed8c86f54380b3ebac34d32fb2/jsonpath-ng-1.7.0.tar.gz", hash = "sha256:f6f5f7fd4e5ff79c785f1573b394043b39849fb2bb47bcead935d12b00beab3c", size = 37838, upload-time = "2024-10-11T15:41:42.404Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/35/5a/73ecb3d82f8615f32ccdadeb9356726d6cae3a4bbc840b437ceb95708063/jsonpath_ng-1.7.0-py3-none-any.whl", hash = "sha256:f3d7f9e848cba1b6da28c55b1c26ff915dc9e0b1ba7e752a53d6da8d5cbd00b6", size = 30105, upload-time = "2024-11-20T17:58:30.418Z" },
+]
+
+[[package]]
+name = "layercake"
+version = "0.6.9"
+source = { directory = "../layercake" }
+dependencies = [
+ { name = "arnparse" },
+ { name = "aws-lambda-powertools", extra = ["all"] },
+ { name = "elasticsearch" },
+ { name = "elasticsearch-dsl" },
+ { name = "ftfy" },
+ { name = "glom" },
+ { name = "meilisearch" },
+ { name = "orjson" },
+ { name = "pycpfcnpj" },
+ { name = "pydantic", extra = ["email"] },
+ { name = "pydantic-extra-types" },
+ { name = "pytz" },
+ { name = "requests" },
+ { name = "smart-open", extra = ["s3"] },
+ { name = "sqlite-utils" },
+ { name = "weasyprint" },
+]
+
+[package.metadata]
+requires-dist = [
+ { name = "arnparse", specifier = ">=0.0.2" },
+ { name = "aws-lambda-powertools", extras = ["all"], specifier = ">=3.8.0" },
+ { name = "elasticsearch", specifier = ">=8.17.2" },
+ { name = "elasticsearch-dsl", specifier = ">=8.17.1" },
+ { name = "ftfy", specifier = ">=6.3.1" },
+ { name = "glom", specifier = ">=24.11.0" },
+ { name = "meilisearch", specifier = ">=0.34.0" },
+ { name = "orjson", specifier = ">=3.10.15" },
+ { name = "pycpfcnpj", specifier = ">=1.8" },
+ { name = "pydantic", extras = ["email"], specifier = ">=2.10.6" },
+ { name = "pydantic-extra-types", specifier = ">=2.10.3" },
+ { name = "pytz", specifier = ">=2025.1" },
+ { name = "requests", specifier = ">=2.32.3" },
+ { name = "smart-open", extras = ["s3"], specifier = ">=7.1.0" },
+ { name = "sqlite-utils", specifier = ">=3.38" },
+ { name = "weasyprint", specifier = ">=65.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "boto3", specifier = ">=1.37.16" },
+ { name = "boto3-stubs", extras = ["essential"], specifier = ">=1.37.33" },
+ { name = "jsonlines", specifier = ">=4.0.0" },
+ { name = "pytest", specifier = ">=8.3.5" },
+ { name = "pytest-cov", specifier = ">=6.0.0" },
+ { name = "ruff", specifier = ">=0.11.1" },
+]
+
+[[package]]
+name = "meilisearch"
+version = "0.34.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "camel-converter", extra = ["pydantic"] },
+ { name = "requests" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/11/d2/63b34effea260f2551685cdc38783d36e05a1734c1f14f8bd8dd059fe699/meilisearch-0.34.1.tar.gz", hash = "sha256:99a8d8f548cc1905668ffb2bbf641b5e3ec9231f3413cce4189c5d7b16e52afa", size = 24221, upload-time = "2025-04-04T13:45:07.868Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/bf/3e/a3ec8d44b35e495444cac8ce3573b33adf19a9b6d70f2a51e4a971f17c81/meilisearch-0.34.1-py3-none-any.whl", hash = "sha256:43efa4521ce7dc3b065d404267ad5b3acb825602e6219b8b5356650306686cd4", size = 24918, upload-time = "2025-04-04T13:45:06.869Z" },
+]
+
+[[package]]
+name = "orjson"
+version = "3.10.18"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/81/0b/fea456a3ffe74e70ba30e01ec183a9b26bec4d497f61dcfce1b601059c60/orjson-3.10.18.tar.gz", hash = "sha256:e8da3947d92123eda795b68228cafe2724815621fe35e8e320a9e9593a4bcd53", size = 5422810, upload-time = "2025-04-29T23:30:08.423Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/04/f0/8aedb6574b68096f3be8f74c0b56d36fd94bcf47e6c7ed47a7bd1474aaa8/orjson-3.10.18-cp313-cp313-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:69c34b9441b863175cc6a01f2935de994025e773f814412030f269da4f7be147", size = 249087, upload-time = "2025-04-29T23:29:19.083Z" },
+ { url = "https://files.pythonhosted.org/packages/bc/f7/7118f965541aeac6844fcb18d6988e111ac0d349c9b80cda53583e758908/orjson-3.10.18-cp313-cp313-macosx_15_0_arm64.whl", hash = "sha256:1ebeda919725f9dbdb269f59bc94f861afbe2a27dce5608cdba2d92772364d1c", size = 133273, upload-time = "2025-04-29T23:29:20.602Z" },
+ { url = "https://files.pythonhosted.org/packages/fb/d9/839637cc06eaf528dd8127b36004247bf56e064501f68df9ee6fd56a88ee/orjson-3.10.18-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5adf5f4eed520a4959d29ea80192fa626ab9a20b2ea13f8f6dc58644f6927103", size = 136779, upload-time = "2025-04-29T23:29:22.062Z" },
+ { url = "https://files.pythonhosted.org/packages/2b/6d/f226ecfef31a1f0e7d6bf9a31a0bbaf384c7cbe3fce49cc9c2acc51f902a/orjson-3.10.18-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7592bb48a214e18cd670974f289520f12b7aed1fa0b2e2616b8ed9e069e08595", size = 132811, upload-time = "2025-04-29T23:29:23.602Z" },
+ { url = "https://files.pythonhosted.org/packages/73/2d/371513d04143c85b681cf8f3bce743656eb5b640cb1f461dad750ac4b4d4/orjson-3.10.18-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f872bef9f042734110642b7a11937440797ace8c87527de25e0c53558b579ccc", size = 137018, upload-time = "2025-04-29T23:29:25.094Z" },
+ { url = "https://files.pythonhosted.org/packages/69/cb/a4d37a30507b7a59bdc484e4a3253c8141bf756d4e13fcc1da760a0b00cb/orjson-3.10.18-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0315317601149c244cb3ecef246ef5861a64824ccbcb8018d32c66a60a84ffbc", size = 138368, upload-time = "2025-04-29T23:29:26.609Z" },
+ { url = "https://files.pythonhosted.org/packages/1e/ae/cd10883c48d912d216d541eb3db8b2433415fde67f620afe6f311f5cd2ca/orjson-3.10.18-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e0da26957e77e9e55a6c2ce2e7182a36a6f6b180ab7189315cb0995ec362e049", size = 142840, upload-time = "2025-04-29T23:29:28.153Z" },
+ { url = "https://files.pythonhosted.org/packages/6d/4c/2bda09855c6b5f2c055034c9eda1529967b042ff8d81a05005115c4e6772/orjson-3.10.18-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bb70d489bc79b7519e5803e2cc4c72343c9dc1154258adf2f8925d0b60da7c58", size = 133135, upload-time = "2025-04-29T23:29:29.726Z" },
+ { url = "https://files.pythonhosted.org/packages/13/4a/35971fd809a8896731930a80dfff0b8ff48eeb5d8b57bb4d0d525160017f/orjson-3.10.18-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e9e86a6af31b92299b00736c89caf63816f70a4001e750bda179e15564d7a034", size = 134810, upload-time = "2025-04-29T23:29:31.269Z" },
+ { url = "https://files.pythonhosted.org/packages/99/70/0fa9e6310cda98365629182486ff37a1c6578e34c33992df271a476ea1cd/orjson-3.10.18-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:c382a5c0b5931a5fc5405053d36c1ce3fd561694738626c77ae0b1dfc0242ca1", size = 413491, upload-time = "2025-04-29T23:29:33.315Z" },
+ { url = "https://files.pythonhosted.org/packages/32/cb/990a0e88498babddb74fb97855ae4fbd22a82960e9b06eab5775cac435da/orjson-3.10.18-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:8e4b2ae732431127171b875cb2668f883e1234711d3c147ffd69fe5be51a8012", size = 153277, upload-time = "2025-04-29T23:29:34.946Z" },
+ { url = "https://files.pythonhosted.org/packages/92/44/473248c3305bf782a384ed50dd8bc2d3cde1543d107138fd99b707480ca1/orjson-3.10.18-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2d808e34ddb24fc29a4d4041dcfafbae13e129c93509b847b14432717d94b44f", size = 137367, upload-time = "2025-04-29T23:29:36.52Z" },
+ { url = "https://files.pythonhosted.org/packages/ad/fd/7f1d3edd4ffcd944a6a40e9f88af2197b619c931ac4d3cfba4798d4d3815/orjson-3.10.18-cp313-cp313-win32.whl", hash = "sha256:ad8eacbb5d904d5591f27dee4031e2c1db43d559edb8f91778efd642d70e6bea", size = 142687, upload-time = "2025-04-29T23:29:38.292Z" },
+ { url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl", hash = "sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52", size = 134794, upload-time = "2025-04-29T23:29:40.349Z" },
+ { url = "https://files.pythonhosted.org/packages/c2/28/f53038a5a72cc4fd0b56c1eafb4ef64aec9685460d5ac34de98ca78b6e29/orjson-3.10.18-cp313-cp313-win_arm64.whl", hash = "sha256:f54c1385a0e6aba2f15a40d703b858bedad36ded0491e55d35d905b2c34a4cc3", size = 131186, upload-time = "2025-04-29T23:29:41.922Z" },
+]
+
+[[package]]
+name = "packaging"
+version = "25.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/a1/d4/1fc4078c65507b51b96ca8f8c3ba19e6a61c8253c72794544580a7b6c24d/packaging-25.0.tar.gz", hash = "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f", size = 165727, upload-time = "2025-04-19T11:48:59.673Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484", size = 66469, upload-time = "2025-04-19T11:48:57.875Z" },
+]
+
+[[package]]
+name = "pillow"
+version = "11.2.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/af/cb/bb5c01fcd2a69335b86c22142b2bccfc3464087efb7fd382eee5ffc7fdf7/pillow-11.2.1.tar.gz", hash = "sha256:a64dd61998416367b7ef979b73d3a85853ba9bec4c2925f74e588879a58716b6", size = 47026707, upload-time = "2025-04-12T17:50:03.289Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/36/9c/447528ee3776e7ab8897fe33697a7ff3f0475bb490c5ac1456a03dc57956/pillow-11.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:fdec757fea0b793056419bca3e9932eb2b0ceec90ef4813ea4c1e072c389eb28", size = 3190098, upload-time = "2025-04-12T17:48:23.915Z" },
+ { url = "https://files.pythonhosted.org/packages/b5/09/29d5cd052f7566a63e5b506fac9c60526e9ecc553825551333e1e18a4858/pillow-11.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b0e130705d568e2f43a17bcbe74d90958e8a16263868a12c3e0d9c8162690830", size = 3030166, upload-time = "2025-04-12T17:48:25.738Z" },
+ { url = "https://files.pythonhosted.org/packages/71/5d/446ee132ad35e7600652133f9c2840b4799bbd8e4adba881284860da0a36/pillow-11.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7bdb5e09068332578214cadd9c05e3d64d99e0e87591be22a324bdbc18925be0", size = 4408674, upload-time = "2025-04-12T17:48:27.908Z" },
+ { url = "https://files.pythonhosted.org/packages/69/5f/cbe509c0ddf91cc3a03bbacf40e5c2339c4912d16458fcb797bb47bcb269/pillow-11.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d189ba1bebfbc0c0e529159631ec72bb9e9bc041f01ec6d3233d6d82eb823bc1", size = 4496005, upload-time = "2025-04-12T17:48:29.888Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/b3/dd4338d8fb8a5f312021f2977fb8198a1184893f9b00b02b75d565c33b51/pillow-11.2.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:191955c55d8a712fab8934a42bfefbf99dd0b5875078240943f913bb66d46d9f", size = 4518707, upload-time = "2025-04-12T17:48:31.874Z" },
+ { url = "https://files.pythonhosted.org/packages/13/eb/2552ecebc0b887f539111c2cd241f538b8ff5891b8903dfe672e997529be/pillow-11.2.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:ad275964d52e2243430472fc5d2c2334b4fc3ff9c16cb0a19254e25efa03a155", size = 4610008, upload-time = "2025-04-12T17:48:34.422Z" },
+ { url = "https://files.pythonhosted.org/packages/72/d1/924ce51bea494cb6e7959522d69d7b1c7e74f6821d84c63c3dc430cbbf3b/pillow-11.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:750f96efe0597382660d8b53e90dd1dd44568a8edb51cb7f9d5d918b80d4de14", size = 4585420, upload-time = "2025-04-12T17:48:37.641Z" },
+ { url = "https://files.pythonhosted.org/packages/43/ab/8f81312d255d713b99ca37479a4cb4b0f48195e530cdc1611990eb8fd04b/pillow-11.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fe15238d3798788d00716637b3d4e7bb6bde18b26e5d08335a96e88564a36b6b", size = 4667655, upload-time = "2025-04-12T17:48:39.652Z" },
+ { url = "https://files.pythonhosted.org/packages/94/86/8f2e9d2dc3d308dfd137a07fe1cc478df0a23d42a6c4093b087e738e4827/pillow-11.2.1-cp313-cp313-win32.whl", hash = "sha256:3fe735ced9a607fee4f481423a9c36701a39719252a9bb251679635f99d0f7d2", size = 2332329, upload-time = "2025-04-12T17:48:41.765Z" },
+ { url = "https://files.pythonhosted.org/packages/6d/ec/1179083b8d6067a613e4d595359b5fdea65d0a3b7ad623fee906e1b3c4d2/pillow-11.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:74ee3d7ecb3f3c05459ba95eed5efa28d6092d751ce9bf20e3e253a4e497e691", size = 2676388, upload-time = "2025-04-12T17:48:43.625Z" },
+ { url = "https://files.pythonhosted.org/packages/23/f1/2fc1e1e294de897df39fa8622d829b8828ddad938b0eaea256d65b84dd72/pillow-11.2.1-cp313-cp313-win_arm64.whl", hash = "sha256:5119225c622403afb4b44bad4c1ca6c1f98eed79db8d3bc6e4e160fc6339d66c", size = 2414950, upload-time = "2025-04-12T17:48:45.475Z" },
+ { url = "https://files.pythonhosted.org/packages/c4/3e/c328c48b3f0ead7bab765a84b4977acb29f101d10e4ef57a5e3400447c03/pillow-11.2.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:8ce2e8411c7aaef53e6bb29fe98f28cd4fbd9a1d9be2eeea434331aac0536b22", size = 3192759, upload-time = "2025-04-12T17:48:47.866Z" },
+ { url = "https://files.pythonhosted.org/packages/18/0e/1c68532d833fc8b9f404d3a642991441d9058eccd5606eab31617f29b6d4/pillow-11.2.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:9ee66787e095127116d91dea2143db65c7bb1e232f617aa5957c0d9d2a3f23a7", size = 3033284, upload-time = "2025-04-12T17:48:50.189Z" },
+ { url = "https://files.pythonhosted.org/packages/b7/cb/6faf3fb1e7705fd2db74e070f3bf6f88693601b0ed8e81049a8266de4754/pillow-11.2.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9622e3b6c1d8b551b6e6f21873bdcc55762b4b2126633014cea1803368a9aa16", size = 4445826, upload-time = "2025-04-12T17:48:52.346Z" },
+ { url = "https://files.pythonhosted.org/packages/07/94/8be03d50b70ca47fb434a358919d6a8d6580f282bbb7af7e4aa40103461d/pillow-11.2.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:63b5dff3a68f371ea06025a1a6966c9a1e1ee452fc8020c2cd0ea41b83e9037b", size = 4527329, upload-time = "2025-04-12T17:48:54.403Z" },
+ { url = "https://files.pythonhosted.org/packages/fd/a4/bfe78777076dc405e3bd2080bc32da5ab3945b5a25dc5d8acaa9de64a162/pillow-11.2.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:31df6e2d3d8fc99f993fd253e97fae451a8db2e7207acf97859732273e108406", size = 4549049, upload-time = "2025-04-12T17:48:56.383Z" },
+ { url = "https://files.pythonhosted.org/packages/65/4d/eaf9068dc687c24979e977ce5677e253624bd8b616b286f543f0c1b91662/pillow-11.2.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:062b7a42d672c45a70fa1f8b43d1d38ff76b63421cbbe7f88146b39e8a558d91", size = 4635408, upload-time = "2025-04-12T17:48:58.782Z" },
+ { url = "https://files.pythonhosted.org/packages/1d/26/0fd443365d9c63bc79feb219f97d935cd4b93af28353cba78d8e77b61719/pillow-11.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4eb92eca2711ef8be42fd3f67533765d9fd043b8c80db204f16c8ea62ee1a751", size = 4614863, upload-time = "2025-04-12T17:49:00.709Z" },
+ { url = "https://files.pythonhosted.org/packages/49/65/dca4d2506be482c2c6641cacdba5c602bc76d8ceb618fd37de855653a419/pillow-11.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f91ebf30830a48c825590aede79376cb40f110b387c17ee9bd59932c961044f9", size = 4692938, upload-time = "2025-04-12T17:49:02.946Z" },
+ { url = "https://files.pythonhosted.org/packages/b3/92/1ca0c3f09233bd7decf8f7105a1c4e3162fb9142128c74adad0fb361b7eb/pillow-11.2.1-cp313-cp313t-win32.whl", hash = "sha256:e0b55f27f584ed623221cfe995c912c61606be8513bfa0e07d2c674b4516d9dd", size = 2335774, upload-time = "2025-04-12T17:49:04.889Z" },
+ { url = "https://files.pythonhosted.org/packages/a5/ac/77525347cb43b83ae905ffe257bbe2cc6fd23acb9796639a1f56aa59d191/pillow-11.2.1-cp313-cp313t-win_amd64.whl", hash = "sha256:36d6b82164c39ce5482f649b437382c0fb2395eabc1e2b1702a6deb8ad647d6e", size = 2681895, upload-time = "2025-04-12T17:49:06.635Z" },
+ { url = "https://files.pythonhosted.org/packages/67/32/32dc030cfa91ca0fc52baebbba2e009bb001122a1daa8b6a79ad830b38d3/pillow-11.2.1-cp313-cp313t-win_arm64.whl", hash = "sha256:225c832a13326e34f212d2072982bb1adb210e0cc0b153e688743018c94a2681", size = 2417234, upload-time = "2025-04-12T17:49:08.399Z" },
+]
+
+[[package]]
+name = "pluggy"
+version = "1.6.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f9/e2/3e91f31a7d2b083fe6ef3fa267035b518369d9511ffab804f839851d2779/pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3", size = 69412, upload-time = "2025-05-15T12:30:07.975Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746", size = 20538, upload-time = "2025-05-15T12:30:06.134Z" },
+]
+
+[[package]]
+name = "ply"
+version = "3.11"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e5/69/882ee5c9d017149285cab114ebeab373308ef0f874fcdac9beb90e0ac4da/ply-3.11.tar.gz", hash = "sha256:00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3", size = 159130, upload-time = "2018-02-15T19:01:31.097Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl", hash = "sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce", size = 49567, upload-time = "2018-02-15T19:01:27.172Z" },
+]
+
+[[package]]
+name = "pycparser"
+version = "2.22"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/1d/b2/31537cf4b1ca988837256c910a668b553fceb8f069bedc4b1c826024b52c/pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6", size = 172736, upload-time = "2024-03-30T13:22:22.564Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc", size = 117552, upload-time = "2024-03-30T13:22:20.476Z" },
+]
+
+[[package]]
+name = "pycpfcnpj"
+version = "1.8"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/d5/de/3439a4d7838410294f47aa02ae359f16ff81f154ea9b1526b18123d8d47e/pycpfcnpj-1.8.tar.gz", hash = "sha256:c9e95d2790d582aa7a7deb4b87da252364c670bd1d78f69f3d8f8f82479ed969", size = 5127, upload-time = "2024-01-17T00:02:46.406Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/3e/d9/5182d830ac9dc5ab20cfa11bf68520ca79809a67c5288d89178d63682669/pycpfcnpj-1.8-py3-none-any.whl", hash = "sha256:771d2ff00511f70453f2df8a20f529bad8deb8e35315a15ba0350d3b5360ef91", size = 6928, upload-time = "2024-01-17T00:02:45.338Z" },
+]
+
+[[package]]
+name = "pydantic"
+version = "2.11.4"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "annotated-types" },
+ { name = "pydantic-core" },
+ { name = "typing-extensions" },
+ { name = "typing-inspection" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/77/ab/5250d56ad03884ab5efd07f734203943c8a8ab40d551e208af81d0257bf2/pydantic-2.11.4.tar.gz", hash = "sha256:32738d19d63a226a52eed76645a98ee07c1f410ee41d93b4afbfa85ed8111c2d", size = 786540, upload-time = "2025-04-29T20:38:55.02Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e7/12/46b65f3534d099349e38ef6ec98b1a5a81f42536d17e0ba382c28c67ba67/pydantic-2.11.4-py3-none-any.whl", hash = "sha256:d9615eaa9ac5a063471da949c8fc16376a84afb5024688b3ff885693506764eb", size = 443900, upload-time = "2025-04-29T20:38:52.724Z" },
+]
+
+[package.optional-dependencies]
+email = [
+ { name = "email-validator" },
+]
+
+[[package]]
+name = "pydantic-core"
+version = "2.33.2"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/ad/88/5f2260bdfae97aabf98f1778d43f69574390ad787afb646292a638c923d4/pydantic_core-2.33.2.tar.gz", hash = "sha256:7cb8bc3605c29176e1b105350d2e6474142d7c1bd1d9327c4a9bdb46bf827acc", size = 435195, upload-time = "2025-04-23T18:33:52.104Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/46/8c/99040727b41f56616573a28771b1bfa08a3d3fe74d3d513f01251f79f172/pydantic_core-2.33.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:1082dd3e2d7109ad8b7da48e1d4710c8d06c253cbc4a27c1cff4fbcaa97a9e3f", size = 2015688, upload-time = "2025-04-23T18:31:53.175Z" },
+ { url = "https://files.pythonhosted.org/packages/3a/cc/5999d1eb705a6cefc31f0b4a90e9f7fc400539b1a1030529700cc1b51838/pydantic_core-2.33.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f517ca031dfc037a9c07e748cefd8d96235088b83b4f4ba8939105d20fa1dcd6", size = 1844808, upload-time = "2025-04-23T18:31:54.79Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/5e/a0a7b8885c98889a18b6e376f344da1ef323d270b44edf8174d6bce4d622/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a9f2c9dd19656823cb8250b0724ee9c60a82f3cdf68a080979d13092a3b0fef", size = 1885580, upload-time = "2025-04-23T18:31:57.393Z" },
+ { url = "https://files.pythonhosted.org/packages/3b/2a/953581f343c7d11a304581156618c3f592435523dd9d79865903272c256a/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2b0a451c263b01acebe51895bfb0e1cc842a5c666efe06cdf13846c7418caa9a", size = 1973859, upload-time = "2025-04-23T18:31:59.065Z" },
+ { url = "https://files.pythonhosted.org/packages/e6/55/f1a813904771c03a3f97f676c62cca0c0a4138654107c1b61f19c644868b/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ea40a64d23faa25e62a70ad163571c0b342b8bf66d5fa612ac0dec4f069d916", size = 2120810, upload-time = "2025-04-23T18:32:00.78Z" },
+ { url = "https://files.pythonhosted.org/packages/aa/c3/053389835a996e18853ba107a63caae0b9deb4a276c6b472931ea9ae6e48/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0fb2d542b4d66f9470e8065c5469ec676978d625a8b7a363f07d9a501a9cb36a", size = 2676498, upload-time = "2025-04-23T18:32:02.418Z" },
+ { url = "https://files.pythonhosted.org/packages/eb/3c/f4abd740877a35abade05e437245b192f9d0ffb48bbbbd708df33d3cda37/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fdac5d6ffa1b5a83bca06ffe7583f5576555e6c8b3a91fbd25ea7780f825f7d", size = 2000611, upload-time = "2025-04-23T18:32:04.152Z" },
+ { url = "https://files.pythonhosted.org/packages/59/a7/63ef2fed1837d1121a894d0ce88439fe3e3b3e48c7543b2a4479eb99c2bd/pydantic_core-2.33.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:04a1a413977ab517154eebb2d326da71638271477d6ad87a769102f7c2488c56", size = 2107924, upload-time = "2025-04-23T18:32:06.129Z" },
+ { url = "https://files.pythonhosted.org/packages/04/8f/2551964ef045669801675f1cfc3b0d74147f4901c3ffa42be2ddb1f0efc4/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:c8e7af2f4e0194c22b5b37205bfb293d166a7344a5b0d0eaccebc376546d77d5", size = 2063196, upload-time = "2025-04-23T18:32:08.178Z" },
+ { url = "https://files.pythonhosted.org/packages/26/bd/d9602777e77fc6dbb0c7db9ad356e9a985825547dce5ad1d30ee04903918/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:5c92edd15cd58b3c2d34873597a1e20f13094f59cf88068adb18947df5455b4e", size = 2236389, upload-time = "2025-04-23T18:32:10.242Z" },
+ { url = "https://files.pythonhosted.org/packages/42/db/0e950daa7e2230423ab342ae918a794964b053bec24ba8af013fc7c94846/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:65132b7b4a1c0beded5e057324b7e16e10910c106d43675d9bd87d4f38dde162", size = 2239223, upload-time = "2025-04-23T18:32:12.382Z" },
+ { url = "https://files.pythonhosted.org/packages/58/4d/4f937099c545a8a17eb52cb67fe0447fd9a373b348ccfa9a87f141eeb00f/pydantic_core-2.33.2-cp313-cp313-win32.whl", hash = "sha256:52fb90784e0a242bb96ec53f42196a17278855b0f31ac7c3cc6f5c1ec4811849", size = 1900473, upload-time = "2025-04-23T18:32:14.034Z" },
+ { url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl", hash = "sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9", size = 1955269, upload-time = "2025-04-23T18:32:15.783Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/86/1beda0576969592f1497b4ce8e7bc8cbdf614c352426271b1b10d5f0aa64/pydantic_core-2.33.2-cp313-cp313-win_arm64.whl", hash = "sha256:e80b087132752f6b3d714f041ccf74403799d3b23a72722ea2e6ba2e892555b9", size = 1893921, upload-time = "2025-04-23T18:32:18.473Z" },
+ { url = "https://files.pythonhosted.org/packages/a4/7d/e09391c2eebeab681df2b74bfe6c43422fffede8dc74187b2b0bf6fd7571/pydantic_core-2.33.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:61c18fba8e5e9db3ab908620af374db0ac1baa69f0f32df4f61ae23f15e586ac", size = 1806162, upload-time = "2025-04-23T18:32:20.188Z" },
+ { url = "https://files.pythonhosted.org/packages/f1/3d/847b6b1fed9f8ed3bb95a9ad04fbd0b212e832d4f0f50ff4d9ee5a9f15cf/pydantic_core-2.33.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95237e53bb015f67b63c91af7518a62a8660376a6a0db19b89acc77a4d6199f5", size = 1981560, upload-time = "2025-04-23T18:32:22.354Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/9a/e73262f6c6656262b5fdd723ad90f518f579b7bc8622e43a942eec53c938/pydantic_core-2.33.2-cp313-cp313t-win_amd64.whl", hash = "sha256:c2fc0a768ef76c15ab9238afa6da7f69895bb5d1ee83aeea2e3509af4472d0b9", size = 1935777, upload-time = "2025-04-23T18:32:25.088Z" },
+]
+
+[[package]]
+name = "pydantic-extra-types"
+version = "2.10.4"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "pydantic" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/d9/33/0cde418479949cd6aa1ac669deffcd1c37d8d9cead99ddb48f344e75f2e3/pydantic_extra_types-2.10.4.tar.gz", hash = "sha256:bf8236a63d061eb3ecb1b2afa78ba0f97e3f67aa11dbbff56ec90491e8772edc", size = 95269, upload-time = "2025-04-28T08:18:34.869Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/df/ac/bee195ee49256385fad460ce420aeb42703a648dba487c20b6fd107e42ea/pydantic_extra_types-2.10.4-py3-none-any.whl", hash = "sha256:ce064595af3cab05e39ae062752432dcd0362ff80f7e695b61a3493a4d842db7", size = 37276, upload-time = "2025-04-28T08:18:31.617Z" },
+]
+
+[[package]]
+name = "pydantic-settings"
+version = "2.9.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "pydantic" },
+ { name = "python-dotenv" },
+ { name = "typing-inspection" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/67/1d/42628a2c33e93f8e9acbde0d5d735fa0850f3e6a2f8cb1eb6c40b9a732ac/pydantic_settings-2.9.1.tar.gz", hash = "sha256:c509bf79d27563add44e8446233359004ed85066cd096d8b510f715e6ef5d268", size = 163234, upload-time = "2025-04-18T16:44:48.265Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/b6/5f/d6d641b490fd3ec2c4c13b4244d68deea3a1b970a97be64f34fb5504ff72/pydantic_settings-2.9.1-py3-none-any.whl", hash = "sha256:59b4f431b1defb26fe620c71a7d3968a710d719f5f4cdbbdb7926edeb770f6ef", size = 44356, upload-time = "2025-04-18T16:44:46.617Z" },
+]
+
+[[package]]
+name = "pydyf"
+version = "0.11.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/2e/c2/97fc6ce4ce0045080dc99446def812081b57750ed8aa67bfdfafa4561fe5/pydyf-0.11.0.tar.gz", hash = "sha256:394dddf619cca9d0c55715e3c55ea121a9bf9cbc780cdc1201a2427917b86b64", size = 17769, upload-time = "2024-07-12T12:26:51.95Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/c9/ac/d5db977deaf28c6ecbc61bbca269eb3e8f0b3a1f55c8549e5333e606e005/pydyf-0.11.0-py3-none-any.whl", hash = "sha256:0aaf9e2ebbe786ec7a78ec3fbffa4cdcecde53fd6f563221d53c6bc1328848a3", size = 8104, upload-time = "2024-07-12T12:26:49.896Z" },
+]
+
+[[package]]
+name = "pyphen"
+version = "0.17.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/69/56/e4d7e1bd70d997713649c5ce530b2d15a5fc2245a74ca820fc2d51d89d4d/pyphen-0.17.2.tar.gz", hash = "sha256:f60647a9c9b30ec6c59910097af82bc5dd2d36576b918e44148d8b07ef3b4aa3", size = 2079470, upload-time = "2025-01-20T13:18:36.296Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/7b/1f/c2142d2edf833a90728e5cdeb10bdbdc094dde8dbac078cee0cf33f5e11b/pyphen-0.17.2-py3-none-any.whl", hash = "sha256:3a07fb017cb2341e1d9ff31b8634efb1ae4dc4b130468c7c39dd3d32e7c3affd", size = 2079358, upload-time = "2025-01-20T13:18:29.629Z" },
+]
+
+[[package]]
+name = "pytest"
+version = "8.3.5"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "colorama", marker = "sys_platform == 'win32'" },
+ { name = "iniconfig" },
+ { name = "packaging" },
+ { name = "pluggy" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/ae/3c/c9d525a414d506893f0cd8a8d0de7706446213181570cdbd766691164e40/pytest-8.3.5.tar.gz", hash = "sha256:f4efe70cc14e511565ac476b57c279e12a855b11f48f212af1080ef2263d3845", size = 1450891, upload-time = "2025-03-02T12:54:54.503Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/30/3d/64ad57c803f1fa1e963a7946b6e0fea4a70df53c1a7fed304586539c2bac/pytest-8.3.5-py3-none-any.whl", hash = "sha256:c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820", size = 343634, upload-time = "2025-03-02T12:54:52.069Z" },
+]
+
+[[package]]
+name = "pytest-cov"
+version = "6.1.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "coverage" },
+ { name = "pytest" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/25/69/5f1e57f6c5a39f81411b550027bf72842c4567ff5fd572bed1edc9e4b5d9/pytest_cov-6.1.1.tar.gz", hash = "sha256:46935f7aaefba760e716c2ebfbe1c216240b9592966e7da99ea8292d4d3e2a0a", size = 66857, upload-time = "2025-04-05T14:07:51.592Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/28/d0/def53b4a790cfb21483016430ed828f64830dd981ebe1089971cd10cab25/pytest_cov-6.1.1-py3-none-any.whl", hash = "sha256:bddf29ed2d0ab6f4df17b4c55b0a657287db8684af9c42ea546b21b1041b3dde", size = 23841, upload-time = "2025-04-05T14:07:49.641Z" },
+]
+
+[[package]]
+name = "python-dateutil"
+version = "2.9.0.post0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "six" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", size = 342432, upload-time = "2024-03-01T18:36:20.211Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892, upload-time = "2024-03-01T18:36:18.57Z" },
+]
+
+[[package]]
+name = "python-dotenv"
+version = "1.1.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/88/2c/7bb1416c5620485aa793f2de31d3df393d3686aa8a8506d11e10e13c5baf/python_dotenv-1.1.0.tar.gz", hash = "sha256:41f90bc6f5f177fb41f53e87666db362025010eb28f60a01c9143bfa33a2b2d5", size = 39920, upload-time = "2025-03-25T10:14:56.835Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl", hash = "sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d", size = 20256, upload-time = "2025-03-25T10:14:55.034Z" },
+]
+
+[[package]]
+name = "pytz"
+version = "2025.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f8/bf/abbd3cdfb8fbc7fb3d4d38d320f2441b1e7cbe29be4f23797b4a2b5d8aac/pytz-2025.2.tar.gz", hash = "sha256:360b9e3dbb49a209c21ad61809c7fb453643e048b38924c765813546746e81c3", size = 320884, upload-time = "2025-03-25T02:25:00.538Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl", hash = "sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00", size = 509225, upload-time = "2025-03-25T02:24:58.468Z" },
+]
+
+[[package]]
+name = "requests"
+version = "2.32.3"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "certifi" },
+ { name = "charset-normalizer" },
+ { name = "idna" },
+ { name = "urllib3" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/63/70/2bf7780ad2d390a8d301ad0b550f1581eadbd9a20f896afe06353c2a2913/requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760", size = 131218, upload-time = "2024-05-29T15:37:49.536Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6", size = 64928, upload-time = "2024-05-29T15:37:47.027Z" },
+]
+
+[[package]]
+name = "ruff"
+version = "0.11.10"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e8/4c/4a3c5a97faaae6b428b336dcca81d03ad04779f8072c267ad2bd860126bf/ruff-0.11.10.tar.gz", hash = "sha256:d522fb204b4959909ecac47da02830daec102eeb100fb50ea9554818d47a5fa6", size = 4165632, upload-time = "2025-05-15T14:08:56.76Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/2f/9f/596c628f8824a2ce4cd12b0f0b4c0629a62dfffc5d0f742c19a1d71be108/ruff-0.11.10-py3-none-linux_armv6l.whl", hash = "sha256:859a7bfa7bc8888abbea31ef8a2b411714e6a80f0d173c2a82f9041ed6b50f58", size = 10316243, upload-time = "2025-05-15T14:08:12.884Z" },
+ { url = "https://files.pythonhosted.org/packages/3c/38/c1e0b77ab58b426f8c332c1d1d3432d9fc9a9ea622806e208220cb133c9e/ruff-0.11.10-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:968220a57e09ea5e4fd48ed1c646419961a0570727c7e069842edd018ee8afed", size = 11083636, upload-time = "2025-05-15T14:08:16.551Z" },
+ { url = "https://files.pythonhosted.org/packages/23/41/b75e15961d6047d7fe1b13886e56e8413be8467a4e1be0a07f3b303cd65a/ruff-0.11.10-py3-none-macosx_11_0_arm64.whl", hash = "sha256:1067245bad978e7aa7b22f67113ecc6eb241dca0d9b696144256c3a879663bca", size = 10441624, upload-time = "2025-05-15T14:08:19.032Z" },
+ { url = "https://files.pythonhosted.org/packages/b6/2c/e396b6703f131406db1811ea3d746f29d91b41bbd43ad572fea30da1435d/ruff-0.11.10-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f4854fd09c7aed5b1590e996a81aeff0c9ff51378b084eb5a0b9cd9518e6cff2", size = 10624358, upload-time = "2025-05-15T14:08:21.542Z" },
+ { url = "https://files.pythonhosted.org/packages/bd/8c/ee6cca8bdaf0f9a3704796022851a33cd37d1340bceaf4f6e991eb164e2e/ruff-0.11.10-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8b4564e9f99168c0f9195a0fd5fa5928004b33b377137f978055e40008a082c5", size = 10176850, upload-time = "2025-05-15T14:08:23.682Z" },
+ { url = "https://files.pythonhosted.org/packages/e9/ce/4e27e131a434321b3b7c66512c3ee7505b446eb1c8a80777c023f7e876e6/ruff-0.11.10-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5b6a9cc5b62c03cc1fea0044ed8576379dbaf751d5503d718c973d5418483641", size = 11759787, upload-time = "2025-05-15T14:08:25.733Z" },
+ { url = "https://files.pythonhosted.org/packages/58/de/1e2e77fc72adc7cf5b5123fd04a59ed329651d3eab9825674a9e640b100b/ruff-0.11.10-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:607ecbb6f03e44c9e0a93aedacb17b4eb4f3563d00e8b474298a201622677947", size = 12430479, upload-time = "2025-05-15T14:08:28.013Z" },
+ { url = "https://files.pythonhosted.org/packages/07/ed/af0f2340f33b70d50121628ef175523cc4c37619e98d98748c85764c8d88/ruff-0.11.10-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7b3a522fa389402cd2137df9ddefe848f727250535c70dafa840badffb56b7a4", size = 11919760, upload-time = "2025-05-15T14:08:30.956Z" },
+ { url = "https://files.pythonhosted.org/packages/24/09/d7b3d3226d535cb89234390f418d10e00a157b6c4a06dfbe723e9322cb7d/ruff-0.11.10-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2f071b0deed7e9245d5820dac235cbdd4ef99d7b12ff04c330a241ad3534319f", size = 14041747, upload-time = "2025-05-15T14:08:33.297Z" },
+ { url = "https://files.pythonhosted.org/packages/62/b3/a63b4e91850e3f47f78795e6630ee9266cb6963de8f0191600289c2bb8f4/ruff-0.11.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4a60e3a0a617eafba1f2e4186d827759d65348fa53708ca547e384db28406a0b", size = 11550657, upload-time = "2025-05-15T14:08:35.639Z" },
+ { url = "https://files.pythonhosted.org/packages/46/63/a4f95c241d79402ccdbdb1d823d156c89fbb36ebfc4289dce092e6c0aa8f/ruff-0.11.10-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:da8ec977eaa4b7bf75470fb575bea2cb41a0e07c7ea9d5a0a97d13dbca697bf2", size = 10489671, upload-time = "2025-05-15T14:08:38.437Z" },
+ { url = "https://files.pythonhosted.org/packages/6a/9b/c2238bfebf1e473495659c523d50b1685258b6345d5ab0b418ca3f010cd7/ruff-0.11.10-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:ddf8967e08227d1bd95cc0851ef80d2ad9c7c0c5aab1eba31db49cf0a7b99523", size = 10160135, upload-time = "2025-05-15T14:08:41.247Z" },
+ { url = "https://files.pythonhosted.org/packages/ba/ef/ba7251dd15206688dbfba7d413c0312e94df3b31b08f5d695580b755a899/ruff-0.11.10-py3-none-musllinux_1_2_i686.whl", hash = "sha256:5a94acf798a82db188f6f36575d80609072b032105d114b0f98661e1679c9125", size = 11170179, upload-time = "2025-05-15T14:08:43.762Z" },
+ { url = "https://files.pythonhosted.org/packages/73/9f/5c336717293203ba275dbfa2ea16e49b29a9fd9a0ea8b6febfc17e133577/ruff-0.11.10-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:3afead355f1d16d95630df28d4ba17fb2cb9c8dfac8d21ced14984121f639bad", size = 11626021, upload-time = "2025-05-15T14:08:46.451Z" },
+ { url = "https://files.pythonhosted.org/packages/d9/2b/162fa86d2639076667c9aa59196c020dc6d7023ac8f342416c2f5ec4bda0/ruff-0.11.10-py3-none-win32.whl", hash = "sha256:dc061a98d32a97211af7e7f3fa1d4ca2fcf919fb96c28f39551f35fc55bdbc19", size = 10494958, upload-time = "2025-05-15T14:08:49.601Z" },
+ { url = "https://files.pythonhosted.org/packages/24/f3/66643d8f32f50a4b0d09a4832b7d919145ee2b944d43e604fbd7c144d175/ruff-0.11.10-py3-none-win_amd64.whl", hash = "sha256:5cc725fbb4d25b0f185cb42df07ab6b76c4489b4bfb740a175f3a59c70e8a224", size = 11650285, upload-time = "2025-05-15T14:08:52.392Z" },
+ { url = "https://files.pythonhosted.org/packages/95/3a/2e8704d19f376c799748ff9cb041225c1d59f3e7711bc5596c8cfdc24925/ruff-0.11.10-py3-none-win_arm64.whl", hash = "sha256:ef69637b35fb8b210743926778d0e45e1bffa850a7c61e428c6b971549b5f5d1", size = 10765278, upload-time = "2025-05-15T14:08:54.56Z" },
+]
+
+[[package]]
+name = "s3transfer"
+version = "0.12.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fc/9e/73b14aed38ee1f62cd30ab93cd0072dec7fb01f3033d116875ae3e7b8b44/s3transfer-0.12.0.tar.gz", hash = "sha256:8ac58bc1989a3fdb7c7f3ee0918a66b160d038a147c7b5db1500930a607e9a1c", size = 149178, upload-time = "2025-04-22T21:08:09.787Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/89/64/d2b49620039b82688aeebd510bd62ff4cdcdb86cbf650cc72ae42c5254a3/s3transfer-0.12.0-py3-none-any.whl", hash = "sha256:35b314d7d82865756edab59f7baebc6b477189e6ab4c53050e28c1de4d9cce18", size = 84773, upload-time = "2025-04-22T21:08:08.265Z" },
+]
+
+[[package]]
+name = "six"
+version = "1.17.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81", size = 34031, upload-time = "2024-12-04T17:35:28.174Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 11050, upload-time = "2024-12-04T17:35:26.475Z" },
+]
+
+[[package]]
+name = "smart-open"
+version = "7.1.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "wrapt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/21/30/1f41c3d3b8cec82024b4b277bfd4e5b18b765ae7279eb9871fa25c503778/smart_open-7.1.0.tar.gz", hash = "sha256:a4f09f84f0f6d3637c6543aca7b5487438877a21360e7368ccf1f704789752ba", size = 72044, upload-time = "2024-12-17T13:19:17.71Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/7a/18/9a8d9f01957aa1f8bbc5676d54c2e33102d247e146c1a3679d3bd5cc2e3a/smart_open-7.1.0-py3-none-any.whl", hash = "sha256:4b8489bb6058196258bafe901730c7db0dcf4f083f316e97269c66f45502055b", size = 61746, upload-time = "2024-12-17T13:19:21.076Z" },
+]
+
+[package.optional-dependencies]
+s3 = [
+ { name = "boto3" },
+]
+
+[[package]]
+name = "sqlite-fts4"
+version = "1.0.3"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/c2/6d/9dad6c3b433ab8912ace969c66abd595f8e0a2ccccdb73602b1291dbda29/sqlite-fts4-1.0.3.tar.gz", hash = "sha256:78b05eeaf6680e9dbed8986bde011e9c086a06cb0c931b3cf7da94c214e8930c", size = 9718, upload-time = "2022-07-30T01:14:26.943Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl", hash = "sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f", size = 9972, upload-time = "2022-07-30T01:14:24.942Z" },
+]
+
+[[package]]
+name = "sqlite-utils"
+version = "3.38"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "click" },
+ { name = "click-default-group" },
+ { name = "pluggy" },
+ { name = "python-dateutil" },
+ { name = "sqlite-fts4" },
+ { name = "tabulate" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/51/43/ce9183a21911e0b73248c8fb83f8b8038515cb80053912c2a009e9765564/sqlite_utils-3.38.tar.gz", hash = "sha256:1ae77b931384052205a15478d429464f6c67a3ac3b4eafd3c674ac900f623aab", size = 214449, upload-time = "2024-11-23T22:49:40.308Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl", hash = "sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9", size = 68183, upload-time = "2024-11-23T22:49:38.289Z" },
+]
+
+[[package]]
+name = "tabulate"
+version = "0.9.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/ec/fe/802052aecb21e3797b8f7902564ab6ea0d60ff8ca23952079064155d1ae1/tabulate-0.9.0.tar.gz", hash = "sha256:0095b12bf5966de529c0feb1fa08671671b3368eec77d7ef7ab114be2c068b3c", size = 81090, upload-time = "2022-10-06T17:21:48.54Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl", hash = "sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f", size = 35252, upload-time = "2022-10-06T17:21:44.262Z" },
+]
+
+[[package]]
+name = "tinycss2"
+version = "1.4.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "webencodings" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/7a/fd/7a5ee21fd08ff70d3d33a5781c255cbe779659bd03278feb98b19ee550f4/tinycss2-1.4.0.tar.gz", hash = "sha256:10c0972f6fc0fbee87c3edb76549357415e94548c1ae10ebccdea16fb404a9b7", size = 87085, upload-time = "2024-10-24T14:58:29.895Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl", hash = "sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289", size = 26610, upload-time = "2024-10-24T14:58:28.029Z" },
+]
+
+[[package]]
+name = "tinyhtml5"
+version = "2.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "webencodings" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fd/03/6111ed99e9bf7dfa1c30baeef0e0fb7e0bd387bd07f8e5b270776fe1de3f/tinyhtml5-2.0.0.tar.gz", hash = "sha256:086f998833da24c300c414d9fe81d9b368fd04cb9d2596a008421cbc705fcfcc", size = 179507, upload-time = "2024-10-29T15:37:14.078Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/5c/de/27c57899297163a4a84104d5cec0af3b1ac5faf62f44667e506373c6b8ce/tinyhtml5-2.0.0-py3-none-any.whl", hash = "sha256:13683277c5b176d070f82d099d977194b7a1e26815b016114f581a74bbfbf47e", size = 39793, upload-time = "2024-10-29T15:37:11.743Z" },
+]
+
+[[package]]
+name = "typing-extensions"
+version = "4.13.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f6/37/23083fcd6e35492953e8d2aaaa68b860eb422b34627b13f2ce3eb6106061/typing_extensions-4.13.2.tar.gz", hash = "sha256:e6c81219bd689f51865d9e372991c540bda33a0379d5573cddb9a3a23f7caaef", size = 106967, upload-time = "2025-04-10T14:19:05.416Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl", hash = "sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c", size = 45806, upload-time = "2025-04-10T14:19:03.967Z" },
+]
+
+[[package]]
+name = "typing-inspection"
+version = "0.4.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/82/5c/e6082df02e215b846b4b8c0b887a64d7d08ffaba30605502639d44c06b82/typing_inspection-0.4.0.tar.gz", hash = "sha256:9765c87de36671694a67904bf2c96e395be9c6439bb6c87b5142569dcdd65122", size = 76222, upload-time = "2025-02-25T17:27:59.638Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl", hash = "sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f", size = 14125, upload-time = "2025-02-25T17:27:57.754Z" },
+]
+
+[[package]]
+name = "urllib3"
+version = "2.4.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/8a/78/16493d9c386d8e60e442a35feac5e00f0913c0f4b7c217c11e8ec2ff53e0/urllib3-2.4.0.tar.gz", hash = "sha256:414bc6535b787febd7567804cc015fee39daab8ad86268f1310a9250697de466", size = 390672, upload-time = "2025-04-10T15:23:39.232Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl", hash = "sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813", size = 128680, upload-time = "2025-04-10T15:23:37.377Z" },
+]
+
+[[package]]
+name = "wcwidth"
+version = "0.2.13"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/6c/63/53559446a878410fc5a5974feb13d31d78d752eb18aeba59c7fef1af7598/wcwidth-0.2.13.tar.gz", hash = "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5", size = 101301, upload-time = "2024-01-06T02:10:57.829Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859", size = 34166, upload-time = "2024-01-06T02:10:55.763Z" },
+]
+
+[[package]]
+name = "weasyprint"
+version = "65.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "cffi" },
+ { name = "cssselect2" },
+ { name = "fonttools", extra = ["woff"] },
+ { name = "pillow" },
+ { name = "pydyf" },
+ { name = "pyphen" },
+ { name = "tinycss2" },
+ { name = "tinyhtml5" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/38/76/7f865f0019120be20276813097b5729b8487b93dd4aff339aa77ed8c7ad2/weasyprint-65.1.tar.gz", hash = "sha256:120281bdbd42ffaa7d7e5cedbe3182a2cef36ea5ad97fe9f357e43be6a1e58ea", size = 499028, upload-time = "2025-04-14T12:15:02.654Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/fe/9a/14f4e5fd4bba988d3684602b72f04c0b299c0f368d26c11a79ceab97aa68/weasyprint-65.1-py3-none-any.whl", hash = "sha256:9baa54282dc86929f6b877034d06b0416e2a7cacb1af3f73d80960592fd0af89", size = 298040, upload-time = "2025-04-14T12:15:00.695Z" },
+]
+
+[[package]]
+name = "webencodings"
+version = "0.5.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/0b/02/ae6ceac1baeda530866a85075641cec12989bd8d31af6d5ab4a3e8c92f47/webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923", size = 9721, upload-time = "2017-04-05T20:21:34.189Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78", size = 11774, upload-time = "2017-04-05T20:21:32.581Z" },
+]
+
+[[package]]
+name = "wrapt"
+version = "1.17.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/c3/fc/e91cc220803d7bc4db93fb02facd8461c37364151b8494762cc88b0fbcef/wrapt-1.17.2.tar.gz", hash = "sha256:41388e9d4d1522446fe79d3213196bd9e3b301a336965b9e27ca2788ebd122f3", size = 55531, upload-time = "2025-01-14T10:35:45.465Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ce/b9/0ffd557a92f3b11d4c5d5e0c5e4ad057bd9eb8586615cdaf901409920b14/wrapt-1.17.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:6ed6ffac43aecfe6d86ec5b74b06a5be33d5bb9243d055141e8cabb12aa08125", size = 53800, upload-time = "2025-01-14T10:34:21.571Z" },
+ { url = "https://files.pythonhosted.org/packages/c0/ef/8be90a0b7e73c32e550c73cfb2fa09db62234227ece47b0e80a05073b375/wrapt-1.17.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:35621ae4c00e056adb0009f8e86e28eb4a41a4bfa8f9bfa9fca7d343fe94f998", size = 38824, upload-time = "2025-01-14T10:34:22.999Z" },
+ { url = "https://files.pythonhosted.org/packages/36/89/0aae34c10fe524cce30fe5fc433210376bce94cf74d05b0d68344c8ba46e/wrapt-1.17.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a604bf7a053f8362d27eb9fefd2097f82600b856d5abe996d623babd067b1ab5", size = 38920, upload-time = "2025-01-14T10:34:25.386Z" },
+ { url = "https://files.pythonhosted.org/packages/3b/24/11c4510de906d77e0cfb5197f1b1445d4fec42c9a39ea853d482698ac681/wrapt-1.17.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5cbabee4f083b6b4cd282f5b817a867cf0b1028c54d445b7ec7cfe6505057cf8", size = 88690, upload-time = "2025-01-14T10:34:28.058Z" },
+ { url = "https://files.pythonhosted.org/packages/71/d7/cfcf842291267bf455b3e266c0c29dcb675b5540ee8b50ba1699abf3af45/wrapt-1.17.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:49703ce2ddc220df165bd2962f8e03b84c89fee2d65e1c24a7defff6f988f4d6", size = 80861, upload-time = "2025-01-14T10:34:29.167Z" },
+ { url = "https://files.pythonhosted.org/packages/d5/66/5d973e9f3e7370fd686fb47a9af3319418ed925c27d72ce16b791231576d/wrapt-1.17.2-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8112e52c5822fc4253f3901b676c55ddf288614dc7011634e2719718eaa187dc", size = 89174, upload-time = "2025-01-14T10:34:31.702Z" },
+ { url = "https://files.pythonhosted.org/packages/a7/d3/8e17bb70f6ae25dabc1aaf990f86824e4fd98ee9cadf197054e068500d27/wrapt-1.17.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:9fee687dce376205d9a494e9c121e27183b2a3df18037f89d69bd7b35bcf59e2", size = 86721, upload-time = "2025-01-14T10:34:32.91Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/54/f170dfb278fe1c30d0ff864513cff526d624ab8de3254b20abb9cffedc24/wrapt-1.17.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:18983c537e04d11cf027fbb60a1e8dfd5190e2b60cc27bc0808e653e7b218d1b", size = 79763, upload-time = "2025-01-14T10:34:34.903Z" },
+ { url = "https://files.pythonhosted.org/packages/4a/98/de07243751f1c4a9b15c76019250210dd3486ce098c3d80d5f729cba029c/wrapt-1.17.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:703919b1633412ab54bcf920ab388735832fdcb9f9a00ae49387f0fe67dad504", size = 87585, upload-time = "2025-01-14T10:34:36.13Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/f0/13925f4bd6548013038cdeb11ee2cbd4e37c30f8bfd5db9e5a2a370d6e20/wrapt-1.17.2-cp313-cp313-win32.whl", hash = "sha256:abbb9e76177c35d4e8568e58650aa6926040d6a9f6f03435b7a522bf1c487f9a", size = 36676, upload-time = "2025-01-14T10:34:37.962Z" },
+ { url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl", hash = "sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845", size = 38871, upload-time = "2025-01-14T10:34:39.13Z" },
+ { url = "https://files.pythonhosted.org/packages/3d/bc/30f903f891a82d402ffb5fda27ec1d621cc97cb74c16fea0b6141f1d4e87/wrapt-1.17.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:4a721d3c943dae44f8e243b380cb645a709ba5bd35d3ad27bc2ed947e9c68192", size = 56312, upload-time = "2025-01-14T10:34:40.604Z" },
+ { url = "https://files.pythonhosted.org/packages/8a/04/c97273eb491b5f1c918857cd26f314b74fc9b29224521f5b83f872253725/wrapt-1.17.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:766d8bbefcb9e00c3ac3b000d9acc51f1b399513f44d77dfe0eb026ad7c9a19b", size = 40062, upload-time = "2025-01-14T10:34:45.011Z" },
+ { url = "https://files.pythonhosted.org/packages/4e/ca/3b7afa1eae3a9e7fefe499db9b96813f41828b9fdb016ee836c4c379dadb/wrapt-1.17.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e496a8ce2c256da1eb98bd15803a79bee00fc351f5dfb9ea82594a3f058309e0", size = 40155, upload-time = "2025-01-14T10:34:47.25Z" },
+ { url = "https://files.pythonhosted.org/packages/89/be/7c1baed43290775cb9030c774bc53c860db140397047cc49aedaf0a15477/wrapt-1.17.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40d615e4fe22f4ad3528448c193b218e077656ca9ccb22ce2cb20db730f8d306", size = 113471, upload-time = "2025-01-14T10:34:50.934Z" },
+ { url = "https://files.pythonhosted.org/packages/32/98/4ed894cf012b6d6aae5f5cc974006bdeb92f0241775addad3f8cd6ab71c8/wrapt-1.17.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a5aaeff38654462bc4b09023918b7f21790efb807f54c000a39d41d69cf552cb", size = 101208, upload-time = "2025-01-14T10:34:52.297Z" },
+ { url = "https://files.pythonhosted.org/packages/ea/fd/0c30f2301ca94e655e5e057012e83284ce8c545df7661a78d8bfca2fac7a/wrapt-1.17.2-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9a7d15bbd2bc99e92e39f49a04653062ee6085c0e18b3b7512a4f2fe91f2d681", size = 109339, upload-time = "2025-01-14T10:34:53.489Z" },
+ { url = "https://files.pythonhosted.org/packages/75/56/05d000de894c4cfcb84bcd6b1df6214297b8089a7bd324c21a4765e49b14/wrapt-1.17.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:e3890b508a23299083e065f435a492b5435eba6e304a7114d2f919d400888cc6", size = 110232, upload-time = "2025-01-14T10:34:55.327Z" },
+ { url = "https://files.pythonhosted.org/packages/53/f8/c3f6b2cf9b9277fb0813418e1503e68414cd036b3b099c823379c9575e6d/wrapt-1.17.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:8c8b293cd65ad716d13d8dd3624e42e5a19cc2a2f1acc74b30c2c13f15cb61a6", size = 100476, upload-time = "2025-01-14T10:34:58.055Z" },
+ { url = "https://files.pythonhosted.org/packages/a7/b1/0bb11e29aa5139d90b770ebbfa167267b1fc548d2302c30c8f7572851738/wrapt-1.17.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4c82b8785d98cdd9fed4cac84d765d234ed3251bd6afe34cb7ac523cb93e8b4f", size = 106377, upload-time = "2025-01-14T10:34:59.3Z" },
+ { url = "https://files.pythonhosted.org/packages/6a/e1/0122853035b40b3f333bbb25f1939fc1045e21dd518f7f0922b60c156f7c/wrapt-1.17.2-cp313-cp313t-win32.whl", hash = "sha256:13e6afb7fe71fe7485a4550a8844cc9ffbe263c0f1a1eea569bc7091d4898555", size = 37986, upload-time = "2025-01-14T10:35:00.498Z" },
+ { url = "https://files.pythonhosted.org/packages/09/5e/1655cf481e079c1f22d0cabdd4e51733679932718dc23bf2db175f329b76/wrapt-1.17.2-cp313-cp313t-win_amd64.whl", hash = "sha256:eaf675418ed6b3b31c7a989fd007fa7c3be66ce14e5c3b27336383604c9da85c", size = 40750, upload-time = "2025-01-14T10:35:03.378Z" },
+ { url = "https://files.pythonhosted.org/packages/2d/82/f56956041adef78f849db6b289b282e72b55ab8045a75abad81898c28d19/wrapt-1.17.2-py3-none-any.whl", hash = "sha256:b18f2d1533a71f069c7f82d524a52599053d4c7166e9dd374ae2136b7f40f7c8", size = 23594, upload-time = "2025-01-14T10:35:44.018Z" },
+]
+
+[[package]]
+name = "zopfli"
+version = "0.2.3.post1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/5e/7c/a8f6696e694709e2abcbccd27d05ef761e9b6efae217e11d977471555b62/zopfli-0.2.3.post1.tar.gz", hash = "sha256:96484dc0f48be1c5d7ae9f38ed1ce41e3675fd506b27c11a6607f14b49101e99", size = 175629, upload-time = "2024-10-18T15:42:05.946Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/2b/24/0e552e2efce9a20625b56e9609d1e33c2966be33fc008681121ec267daec/zopfli-0.2.3.post1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ecb7572df5372abce8073df078207d9d1749f20b8b136089916a4a0868d56051", size = 295485, upload-time = "2024-10-18T15:41:12.57Z" },
+ { url = "https://files.pythonhosted.org/packages/08/83/b2564369fb98797a617fe2796097b1d719a4937234375757ad2a3febc04b/zopfli-0.2.3.post1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a1cf720896d2ce998bc8e051d4b4ce0d8bec007aab6243102e8e1d22a0b2fb3f", size = 163000, upload-time = "2024-10-18T15:41:13.743Z" },
+ { url = "https://files.pythonhosted.org/packages/3c/55/81d419739c2aab35e19b58bce5498dcb58e6446e5eb69f2d3c748b1c9151/zopfli-0.2.3.post1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5aad740b4d4fcbaaae4887823925166ffd062db3b248b3f432198fc287381d1a", size = 823699, upload-time = "2024-10-18T15:41:14.874Z" },
+ { url = "https://files.pythonhosted.org/packages/9e/91/89f07c8ea3c9bc64099b3461627b07a8384302235ee0f357eaa86f98f509/zopfli-0.2.3.post1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6617fb10f9e4393b331941861d73afb119cd847e88e4974bdbe8068ceef3f73f", size = 826612, upload-time = "2024-10-18T15:41:16.069Z" },
+ { url = "https://files.pythonhosted.org/packages/41/31/46670fc0c7805d42bc89702440fa9b73491d68abbc39e28d687180755178/zopfli-0.2.3.post1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a53b18797cdef27e019db595d66c4b077325afe2fd62145953275f53d84ce40c", size = 851148, upload-time = "2024-10-18T15:41:17.403Z" },
+ { url = "https://files.pythonhosted.org/packages/22/00/71ad39277bbb88f9fd20fb786bd3ff2ea4025c53b31652a0da796fb546cd/zopfli-0.2.3.post1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b78008a69300d929ca2efeffec951b64a312e9a811e265ea4a907ab546d79fa6", size = 1754215, upload-time = "2024-10-18T15:41:18.661Z" },
+ { url = "https://files.pythonhosted.org/packages/d0/4e/e542c508d20c3dfbef1b90fcf726f824f505e725747f777b0b7b7d1deb95/zopfli-0.2.3.post1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:0aa5f90d6298bda02a95bc8dc8c3c19004d5a4e44bda00b67ca7431d857b4b54", size = 1905988, upload-time = "2024-10-18T15:41:19.933Z" },
+ { url = "https://files.pythonhosted.org/packages/ba/a5/817ac1ecc888723e91dc172e8c6eeab9f48a1e52285803b965084e11bbd5/zopfli-0.2.3.post1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2768c877f76c8a0e7519b1c86c93757f3c01492ddde55751e9988afb7eff64e1", size = 1835907, upload-time = "2024-10-18T15:41:21.582Z" },
+ { url = "https://files.pythonhosted.org/packages/cd/35/2525f90c972d8aafc39784a8c00244eeee8e8221b26cbc576748ee9dc1cd/zopfli-0.2.3.post1-cp313-cp313-win32.whl", hash = "sha256:71390dbd3fbf6ebea9a5d85ffed8c26ee1453ee09248e9b88486e30e0397b775", size = 82742, upload-time = "2024-10-18T15:41:23.362Z" },
+ { url = "https://files.pythonhosted.org/packages/2f/c6/49b27570923956d52d37363e8f5df3a31a61bd7719bb8718527a9df3ae5f/zopfli-0.2.3.post1-cp313-cp313-win_amd64.whl", hash = "sha256:a86eb88e06bd87e1fff31dac878965c26b0c26db59ddcf78bb0379a954b120de", size = 99408, upload-time = "2024-10-18T15:41:24.377Z" },
+]
diff --git a/konviva-events/app/events/__init__.py b/konviva-events/app/events/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/konviva-events/app/events/enroll.py b/konviva-events/app/events/enroll.py
new file mode 100644
index 0000000..e69de29
diff --git a/order-events/Makefile b/order-events/Makefile
new file mode 100644
index 0000000..dc7246f
--- /dev/null
+++ b/order-events/Makefile
@@ -0,0 +1,5 @@
+build:
+ sam build --use-container
+
+deploy: build
+ sam deploy --debug
diff --git a/order-events/app/boto3clients.py b/order-events/app/boto3clients.py
new file mode 100644
index 0000000..3be85c6
--- /dev/null
+++ b/order-events/app/boto3clients.py
@@ -0,0 +1,13 @@
+import os
+
+import boto3
+
+
+def get_dynamodb_client():
+ if os.getenv('AWS_LAMBDA_FUNCTION_NAME'):
+ return boto3.client('dynamodb')
+
+ return boto3.client('dynamodb', endpoint_url='http://localhost:8000')
+
+
+dynamodb_client = get_dynamodb_client()
diff --git a/order-events/app/config.py b/order-events/app/config.py
new file mode 100644
index 0000000..ad958ca
--- /dev/null
+++ b/order-events/app/config.py
@@ -0,0 +1,5 @@
+import os
+
+USER_TABLE: str = os.getenv('USER_TABLE') # type: ignore
+ORDER_TABLE: str = os.getenv('ORDER_TABLE') # type: ignore
+ENROLLMENT_TABLE: str = os.getenv('ENROLLMENT_TABLE') # type: ignore
diff --git a/order-events/app/events/__init__.py b/order-events/app/events/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/order-events/app/events/assign_tenant_cnpj.py b/order-events/app/events/assign_tenant_cnpj.py
new file mode 100644
index 0000000..d3fbe44
--- /dev/null
+++ b/order-events/app/events/assign_tenant_cnpj.py
@@ -0,0 +1,78 @@
+from aws_lambda_powertools import Logger
+from aws_lambda_powertools.utilities.data_classes import (
+ EventBridgeEvent,
+ event_source,
+)
+from aws_lambda_powertools.utilities.typing import LambdaContext
+from layercake.dateutils import now
+from layercake.dynamodb import (
+ DynamoDBPersistenceLayer,
+ KeyPair,
+ SortKey,
+)
+
+from boto3clients import dynamodb_client
+from config import ORDER_TABLE, USER_TABLE
+
+logger = Logger(__name__)
+user_layer = DynamoDBPersistenceLayer(USER_TABLE, dynamodb_client)
+order_layer = DynamoDBPersistenceLayer(ORDER_TABLE, dynamodb_client)
+
+
+@event_source(data_class=EventBridgeEvent)
+@logger.inject_lambda_context
+def lambda_handler(event: EventBridgeEvent, context: LambdaContext) -> bool:
+ new_image = event.detail['new_image']
+ now_ = now()
+ ids = user_layer.collection.get_items(
+ KeyPair(
+ pk='cnpj',
+ sk=SortKey(new_image['cnpj'], path_spec='user_id'),
+ rename_key='org_id',
+ )
+ + KeyPair(
+ pk='email',
+ sk=SortKey(new_image['email'], path_spec='user_id'),
+ rename_key='user_id',
+ ),
+ flatten_top=False,
+ )
+
+ # Sometimes the function executes before the user insertion completes,
+ # so an exception is raised to trigger a retry.
+ if len(ids) < 2:
+ raise ValueError('IDs not found.')
+
+ with order_layer.transact_writer() as transact:
+ transact.update(
+ key=KeyPair(new_image['id'], '0'),
+ update_expr='SET metadata__tenant_id = :tenant_id, \
+ metadata__related_ids = :related_ids, \
+ update_date = :update_date',
+ expr_attr_values={
+ ':tenant_id': ids['org_id'],
+ ':related_ids': set(ids.values()),
+ ':update_date': now_,
+ },
+ )
+ transact.put(
+ item={
+ 'id': new_image['id'],
+ 'sk': 'metadata#tenant',
+ 'tenant_id': f'ORG#{ids["org_id"]}',
+ 'create_date': now_,
+ }
+ )
+
+ for k, v in ids.items():
+ kind = k.removesuffix('_id')
+ transact.put(
+ item={
+ 'id': new_image['id'],
+ 'sk': f'related_ids#{kind}', # e.g. related_ids#user
+ 'create_date': now_,
+ k: v,
+ }
+ )
+
+ return True
diff --git a/order-events/app/events/remove_slots_on_canceled.py b/order-events/app/events/remove_slots_on_canceled.py
new file mode 100644
index 0000000..cedd453
--- /dev/null
+++ b/order-events/app/events/remove_slots_on_canceled.py
@@ -0,0 +1,57 @@
+from aws_lambda_powertools import Logger
+from aws_lambda_powertools.utilities.data_classes import (
+ EventBridgeEvent,
+ event_source,
+)
+from aws_lambda_powertools.utilities.typing import LambdaContext
+from layercake.dynamodb import (
+ ComposeKey,
+ DynamoDBPersistenceLayer,
+ KeyPair,
+ SortKey,
+)
+
+from boto3clients import dynamodb_client
+from config import ENROLLMENT_TABLE, ORDER_TABLE
+
+logger = Logger(__name__)
+enrollment_layer = DynamoDBPersistenceLayer(ENROLLMENT_TABLE, dynamodb_client)
+order_layer = DynamoDBPersistenceLayer(ORDER_TABLE, dynamodb_client)
+
+
+class TenantDoesNotExistError(Exception):
+ def __init__(self, *args):
+ super().__init__('Tenant does not exist')
+
+
+@event_source(data_class=EventBridgeEvent)
+@logger.inject_lambda_context
+def lambda_handler(event: EventBridgeEvent, context: LambdaContext) -> bool:
+ new_image = event.detail['new_image']
+ order_id = new_image['id']
+ tenant_id = order_layer.collection.get_item(
+ KeyPair(
+ order_id,
+ SortKey('metadata#tenant', path_spec='tenant_id'),
+ ),
+ exc_cls=TenantDoesNotExistError,
+ )
+
+ result = enrollment_layer.collection.query(
+ KeyPair(
+ # Post-migration: rename `vacancies` to `slots`
+ ComposeKey(tenant_id, prefix='vacancies'),
+ order_id,
+ )
+ )
+ with enrollment_layer.batch_writer() as batch:
+ for pair in result['items']:
+ batch.delete_item(
+ Key={
+ # Post-migration: rename `vacancies` to `slots`
+ 'id': {'S': ComposeKey(pair['id'], prefix='vacancies')},
+ 'sk': {'S': pair['sk']},
+ }
+ )
+
+ return True
diff --git a/order-events/app/events/stopgap/__init__.py b/order-events/app/events/stopgap/__init__.py
new file mode 100644
index 0000000..5a77fb0
--- /dev/null
+++ b/order-events/app/events/stopgap/__init__.py
@@ -0,0 +1,4 @@
+"""
+Stopgap events. Everything here is a quick fix and should be replaced with
+proper solutions.
+"""
diff --git a/order-events/app/events/stopgap/remove_slots.py b/order-events/app/events/stopgap/remove_slots.py
new file mode 100644
index 0000000..b1e2c70
--- /dev/null
+++ b/order-events/app/events/stopgap/remove_slots.py
@@ -0,0 +1,71 @@
+from aws_lambda_powertools import Logger
+from aws_lambda_powertools.utilities.data_classes import (
+ EventBridgeEvent,
+ event_source,
+)
+from aws_lambda_powertools.utilities.typing import LambdaContext
+from layercake.dynamodb import (
+ ComposeKey,
+ DynamoDBPersistenceLayer,
+ KeyPair,
+ SortKey,
+ TransactKey,
+)
+
+from boto3clients import dynamodb_client
+from config import ENROLLMENT_TABLE, ORDER_TABLE, USER_TABLE
+
+logger = Logger(__name__)
+user_layer = DynamoDBPersistenceLayer(USER_TABLE, dynamodb_client)
+order_layer = DynamoDBPersistenceLayer(ORDER_TABLE, dynamodb_client)
+enrollment_layer = DynamoDBPersistenceLayer(ENROLLMENT_TABLE, dynamodb_client)
+
+
+@event_source(data_class=EventBridgeEvent)
+@logger.inject_lambda_context
+def lambda_handler(event: EventBridgeEvent, context: LambdaContext) -> bool:
+ """Remove slots if the Tenant has a `metadata#billing_policy` and
+ the order is positive."""
+ new_image = event.detail['new_image']
+ order_id = new_image['id']
+ data = order_layer.collection.get_items(
+ TransactKey(order_id)
+ + SortKey('0')
+ + KeyPair(
+ pk=order_id,
+ sk=SortKey(
+ sk='metadata#tenant',
+ path_spec='tenant_id',
+ remove_prefix='metadata#',
+ ),
+ rename_key='tenant_id',
+ )
+ )
+ tenant_id = data['tenant_id'].removeprefix('ORG#')
+
+ policy = user_layer.collection.get_item(
+ KeyPair(pk=tenant_id, sk='metadata#billing_policy'),
+ raise_on_error=False,
+ default=False,
+ )
+
+ # Skip if missing billing policy or order is zero/negative
+ if not policy or data['total'] <= 0:
+ return False
+
+ result = enrollment_layer.collection.query(
+ KeyPair(
+ ComposeKey(tenant_id, prefix='vacancies'),
+ order_id,
+ )
+ )
+ with enrollment_layer.batch_writer() as batch:
+ for pair in result['items']:
+ batch.delete_item(
+ Key={
+ 'id': {'S': ComposeKey(pair['id'], prefix='vacancies')},
+ 'sk': {'S': pair['sk']},
+ }
+ )
+
+ return True
diff --git a/order-events/app/events/stopgap/set_as_paid.py b/order-events/app/events/stopgap/set_as_paid.py
new file mode 100644
index 0000000..1edb1c2
--- /dev/null
+++ b/order-events/app/events/stopgap/set_as_paid.py
@@ -0,0 +1,46 @@
+from aws_lambda_powertools import Logger
+from aws_lambda_powertools.utilities.data_classes import (
+ EventBridgeEvent,
+ event_source,
+)
+from aws_lambda_powertools.utilities.typing import LambdaContext
+from layercake.dateutils import now
+from layercake.dynamodb import (
+ DynamoDBPersistenceLayer,
+ KeyPair,
+)
+
+from boto3clients import dynamodb_client
+from config import ORDER_TABLE
+
+logger = Logger(__name__)
+order_layer = DynamoDBPersistenceLayer(ORDER_TABLE, dynamodb_client)
+
+
+@event_source(data_class=EventBridgeEvent)
+@logger.inject_lambda_context
+def lambda_handler(event: EventBridgeEvent, context: LambdaContext) -> bool:
+ new_image = event.detail['new_image']
+ now_ = now()
+
+ with order_layer.transact_writer() as transact:
+ transact.update(
+ key=KeyPair(new_image['id'], '0'),
+ update_expr='SET #status = :status, update_date = :update_date',
+ expr_attr_names={
+ '#status': 'status',
+ },
+ expr_attr_values={
+ ':status': 'PAID',
+ ':update_date': now_,
+ },
+ )
+ transact.put(
+ item={
+ 'id': new_image['id'],
+ 'sk': 'paid_date',
+ 'create_date': now_,
+ }
+ )
+
+ return True
diff --git a/order-events/pyproject.toml b/order-events/pyproject.toml
new file mode 100644
index 0000000..80b3c2d
--- /dev/null
+++ b/order-events/pyproject.toml
@@ -0,0 +1,33 @@
+[project]
+name = "orders-events"
+version = "0.1.0"
+description = ""
+readme = ""
+requires-python = ">=3.13"
+dependencies = ["layercake"]
+
+[dependency-groups]
+dev = [
+ "jsonlines>=4.0.0",
+ "pytest>=8.3.4",
+ "pytest-cov>=6.0.0",
+ "ruff>=0.9.1",
+]
+
+[tool.pytest.ini_options]
+pythonpath = ["app/"]
+addopts = "--cov --cov-report html -v"
+
+[tool.ruff]
+target-version = "py311"
+src = ["app"]
+
+[tool.ruff.format]
+quote-style = "single"
+
+[tool.ruff.lint]
+select = ["E", "F", "I"]
+
+
+[tool.uv.sources]
+layercake = { path = "../layercake" }
diff --git a/order-events/pyrightconfig.json b/order-events/pyrightconfig.json
new file mode 100644
index 0000000..78cdf4e
--- /dev/null
+++ b/order-events/pyrightconfig.json
@@ -0,0 +1,3 @@
+{
+ "extraPaths": ["app/"]
+}
diff --git a/order-events/samconfig.toml b/order-events/samconfig.toml
new file mode 100644
index 0000000..e52c284
--- /dev/null
+++ b/order-events/samconfig.toml
@@ -0,0 +1,9 @@
+version = 0.1
+[default.deploy.parameters]
+stack_name = "saladeaula-orders-events"
+resolve_s3 = true
+s3_prefix = "orders-events"
+region = "sa-east-1"
+confirm_changeset = false
+capabilities = "CAPABILITY_IAM"
+image_repositories = []
\ No newline at end of file
diff --git a/order-events/template.yaml b/order-events/template.yaml
new file mode 100644
index 0000000..dad47bb
--- /dev/null
+++ b/order-events/template.yaml
@@ -0,0 +1,139 @@
+AWSTemplateFormatVersion: 2010-09-09
+Transform: AWS::Serverless-2016-10-31
+
+Parameters:
+ UserTable:
+ Type: String
+ Default: betaeducacao-prod-users_d2o3r5gmm4it7j
+ EnrollmentTable:
+ Type: String
+ Default: betaeducacao-prod-enrollments
+ OrderTable:
+ Type: String
+ Default: betaeducacao-prod-orders
+
+Globals:
+ Function:
+ CodeUri: app/
+ Runtime: python3.13
+ Tracing: Active
+ Architectures:
+ - x86_64
+ Layers:
+ - !Sub arn:aws:lambda:sa-east-1:336641857101:layer:layercake:79
+ Environment:
+ Variables:
+ TZ: America/Sao_Paulo
+ LOG_LEVEL: DEBUG
+ DYNAMODB_PARTITION_KEY: id
+ POWERTOOLS_LOGGER_SAMPLE_RATE: 0.1
+ POWERTOOLS_LOGGER_LOG_EVENT: true
+ USER_TABLE: !Ref UserTable
+ ORDER_TABLE: !Ref OrderTable
+ ENROLLMENT_TABLE: !Ref EnrollmentTable
+
+Resources:
+ EventLog:
+ Type: AWS::Logs::LogGroup
+ Properties:
+ RetentionInDays: 90
+
+ EventAssignTenantCnpjFunction:
+ Type: AWS::Serverless::Function
+ Properties:
+ Handler: events.assign_tenant_cnpj.lambda_handler
+ LoggingConfig:
+ LogGroup: !Ref EventLog
+ Policies:
+ - DynamoDBCrudPolicy:
+ TableName: !Ref UserTable
+ - DynamoDBCrudPolicy:
+ TableName: !Ref OrderTable
+ Events:
+ Event:
+ Type: EventBridgeRule
+ Properties:
+ Pattern:
+ resources: [!Ref OrderTable]
+ detail-type: [INSERT]
+ detail:
+ new_image:
+ sk: ["0"]
+ cnpj:
+ - exists: true
+ metadata__tenant_id:
+ - exists: false
+
+ EventRemoveSlotsOnCanceledFunction:
+ Type: AWS::Serverless::Function
+ Properties:
+ Handler: events.delete_slots_on_canceled.lambda_handler
+ LoggingConfig:
+ LogGroup: !Ref EventLog
+ Policies:
+ - DynamoDBWritePolicy:
+ TableName: !Ref OrderTable
+ - DynamoDBWritePolicy:
+ TableName: !Ref EnrollmentTable
+ Events:
+ Event:
+ Type: EventBridgeRule
+ Properties:
+ Pattern:
+ resources: [!Ref OrderTable]
+ detail-type: [MODIFY]
+ detail:
+ new_image:
+ sk: ["0"]
+ cnpj:
+ - exists: true
+ status: [CANCELED, EXPIRED]
+
+ EventSetAsPaidFunction:
+ Type: AWS::Serverless::Function
+ Properties:
+ Handler: events.stopgap.set_as_paid.lambda_handler
+ LoggingConfig:
+ LogGroup: !Ref EventLog
+ Policies:
+ - DynamoDBWritePolicy:
+ TableName: !Ref OrderTable
+ Events:
+ Event:
+ Type: EventBridgeRule
+ Properties:
+ Pattern:
+ resources: [!Ref OrderTable]
+ detail-type: [INSERT]
+ detail:
+ new_image:
+ sk: ["0"]
+ cnpj:
+ - exists: true
+ total: [0]
+ status: [CREATING, PENDING]
+ payment_method: [MANUAL]
+
+ EventRemoveSlotsFunction:
+ Type: AWS::Serverless::Function
+ Properties:
+ Handler: events.stopgap.remove_slots.lambda_handler
+ LoggingConfig:
+ LogGroup: !Ref EventLog
+ Policies:
+ - DynamoDBReadPolicy:
+ TableName: !Ref UserTable
+ - DynamoDBReadPolicy:
+ TableName: !Ref OrderTable
+ - DynamoDBCrudPolicy:
+ TableName: !Ref EnrollmentTable
+ Events:
+ DynamoDBEvent:
+ Type: EventBridgeRule
+ Properties:
+ Pattern:
+ resources: [!Ref OrderTable]
+ detail:
+ new_image:
+ sk: [generated_items]
+ status: [SUCCESS]
diff --git a/order-events/tests/__init__.py b/order-events/tests/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/order-events/tests/conftest.py b/order-events/tests/conftest.py
new file mode 100644
index 0000000..0a35607
--- /dev/null
+++ b/order-events/tests/conftest.py
@@ -0,0 +1,72 @@
+import os
+from dataclasses import dataclass
+
+import jsonlines
+import pytest
+
+PYTEST_TABLE_NAME = 'pytest'
+PK = 'id'
+SK = 'sk'
+
+
+# https://docs.pytest.org/en/7.1.x/reference/reference.html#pytest.hookspec.pytest_configure
+def pytest_configure():
+ os.environ['TZ'] = 'America/Sao_Paulo'
+ os.environ['DYNAMODB_PARTITION_KEY'] = PK
+ os.environ['DYNAMODB_SORT_KEY'] = SK
+ os.environ['USER_TABLE'] = PYTEST_TABLE_NAME
+ os.environ['COURSE_TABLE'] = PYTEST_TABLE_NAME
+ os.environ['ENROLLMENT_TABLE'] = PYTEST_TABLE_NAME
+ os.environ['ORDER_TABLE'] = PYTEST_TABLE_NAME
+
+
+@dataclass
+class LambdaContext:
+ function_name: str = 'test'
+ memory_limit_in_mb: int = 128
+ invoked_function_arn: str = 'arn:aws:lambda:eu-west-1:809313241:function:test'
+ aws_request_id: str = '52fdfc07-2182-154f-163f-5f0f9a621d72'
+
+
+@pytest.fixture
+def lambda_context() -> LambdaContext:
+ return LambdaContext()
+
+
+@pytest.fixture
+def dynamodb_client():
+ from boto3clients import dynamodb_client as client
+
+ client.create_table(
+ AttributeDefinitions=[
+ {'AttributeName': PK, 'AttributeType': 'S'},
+ {'AttributeName': SK, 'AttributeType': 'S'},
+ ],
+ TableName=PYTEST_TABLE_NAME,
+ KeySchema=[
+ {'AttributeName': PK, 'KeyType': 'HASH'},
+ {'AttributeName': SK, 'KeyType': 'RANGE'},
+ ],
+ ProvisionedThroughput={
+ 'ReadCapacityUnits': 123,
+ 'WriteCapacityUnits': 123,
+ },
+ )
+
+ yield client
+
+ client.delete_table(TableName=PYTEST_TABLE_NAME)
+
+
+@pytest.fixture()
+def dynamodb_persistence_layer(dynamodb_client):
+ from layercake.dynamodb import DynamoDBPersistenceLayer
+
+ return DynamoDBPersistenceLayer(PYTEST_TABLE_NAME, dynamodb_client)
+
+
+@pytest.fixture()
+def dynamodb_seeds(dynamodb_client):
+ with jsonlines.open('tests/seeds.jsonl') as lines:
+ for line in lines:
+ dynamodb_client.put_item(TableName=PYTEST_TABLE_NAME, Item=line)
diff --git a/order-events/tests/events/__init__.py b/order-events/tests/events/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/order-events/tests/events/stopgap/__init__.py b/order-events/tests/events/stopgap/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/order-events/tests/events/stopgap/test_remove_slots.py b/order-events/tests/events/stopgap/test_remove_slots.py
new file mode 100644
index 0000000..28b18d2
--- /dev/null
+++ b/order-events/tests/events/stopgap/test_remove_slots.py
@@ -0,0 +1,30 @@
+from layercake.dynamodb import PartitionKey
+
+import events.stopgap.remove_slots as app
+
+from ...conftest import LambdaContext
+
+
+def test_remove_slots(
+ dynamodb_seeds,
+ dynamodb_persistence_layer,
+ lambda_context: LambdaContext,
+):
+ event = {
+ 'detail': {
+ 'new_image': {
+ 'id': '9omWNKymwU5U4aeun6mWzZ',
+ 'sk': 'generated_items',
+ 'create_date': '2024-07-23T20:43:37.303418-03:00',
+ 'status': 'SUCCESS',
+ 'scope': 'MILTI_USER',
+ }
+ },
+ }
+ assert app.lambda_handler(event, lambda_context) # type: ignore
+
+ result = dynamodb_persistence_layer.collection.query(
+ PartitionKey('vacancies#cJtK9SsnJhKPyxESe7g3DG')
+ )
+
+ assert len(result['items']) == 0
diff --git a/order-events/tests/events/stopgap/test_set_as_paid.py b/order-events/tests/events/stopgap/test_set_as_paid.py
new file mode 100644
index 0000000..db8eaee
--- /dev/null
+++ b/order-events/tests/events/stopgap/test_set_as_paid.py
@@ -0,0 +1,24 @@
+from aws_lambda_powertools.utilities.typing import LambdaContext
+from layercake.dynamodb import DynamoDBPersistenceLayer, KeyPair
+
+import events.stopgap.set_as_paid as app
+
+
+def test_set_as_paid(
+ dynamodb_seeds,
+ dynamodb_persistence_layer: DynamoDBPersistenceLayer,
+ lambda_context: LambdaContext,
+):
+ event = {
+ 'detail': {
+ 'new_image': {
+ 'id': '9omWNKymwU5U4aeun6mWzZ',
+ }
+ }
+ }
+ assert app.lambda_handler(event, lambda_context) # type: ignore
+
+ doc = dynamodb_persistence_layer.get_item(
+ key=KeyPair('9omWNKymwU5U4aeun6mWzZ', '0'),
+ )
+ assert doc['status'] == 'PAID'
diff --git a/order-events/tests/events/test_assign_tenant.py b/order-events/tests/events/test_assign_tenant.py
new file mode 100644
index 0000000..ccb36cb
--- /dev/null
+++ b/order-events/tests/events/test_assign_tenant.py
@@ -0,0 +1,28 @@
+from aws_lambda_powertools.utilities.typing import LambdaContext
+from layercake.dynamodb import DynamoDBPersistenceLayer, PartitionKey
+
+import events.assign_tenant_cnpj as app
+
+
+def test_assign_tenant_cnpj(
+ dynamodb_seeds,
+ dynamodb_persistence_layer: DynamoDBPersistenceLayer,
+ lambda_context: LambdaContext,
+):
+ event = {
+ 'detail': {
+ 'new_image': {
+ 'id': '9omWNKymwU5U4aeun6mWzZ',
+ 'cnpj': '15608435000190',
+ 'email': 'sergio@somosbeta.com.br',
+ }
+ }
+ }
+
+ assert app.lambda_handler(event, lambda_context) # type: ignore
+
+ result = dynamodb_persistence_layer.collection.query(
+ PartitionKey('9omWNKymwU5U4aeun6mWzZ')
+ )
+
+ assert 4 == len(result['items'])
diff --git a/order-events/tests/events/test_assign_tenant_cnpj.py b/order-events/tests/events/test_assign_tenant_cnpj.py
new file mode 100644
index 0000000..bdbb2c9
--- /dev/null
+++ b/order-events/tests/events/test_assign_tenant_cnpj.py
@@ -0,0 +1,29 @@
+from aws_lambda_powertools.utilities.typing import LambdaContext
+from layercake.dynamodb import DynamoDBPersistenceLayer, PartitionKey
+
+import events.assign_tenant_cnpj as app
+
+
+def test_assign_tenant_cnpj(
+ dynamodb_seeds,
+ dynamodb_persistence_layer: DynamoDBPersistenceLayer,
+ lambda_context: LambdaContext,
+):
+ event = {
+ 'detail': {
+ 'new_image': {
+ 'id': '9omWNKymwU5U4aeun6mWzZ',
+ 'cnpj': '15608435000190',
+ 'email': 'sergio@somosbeta.com.br',
+ }
+ }
+ }
+
+ assert app.lambda_handler(event, lambda_context) # type: ignore
+
+ result = dynamodb_persistence_layer.collection.query(
+ PartitionKey('9omWNKymwU5U4aeun6mWzZ')
+ )
+
+ assert 4 == len(result['items'])
+ print(result['items'])
diff --git a/order-events/tests/events/test_remove_slots_on_canceled.py b/order-events/tests/events/test_remove_slots_on_canceled.py
new file mode 100644
index 0000000..ff921fe
--- /dev/null
+++ b/order-events/tests/events/test_remove_slots_on_canceled.py
@@ -0,0 +1,27 @@
+from aws_lambda_powertools.utilities.typing import LambdaContext
+from layercake.dynamodb import DynamoDBPersistenceLayer, PartitionKey
+
+import events.remove_slots_on_canceled as app
+
+
+def test_delete_slots_on_canceled(
+ dynamodb_seeds,
+ dynamodb_persistence_layer: DynamoDBPersistenceLayer,
+ lambda_context: LambdaContext,
+):
+ event = {
+ 'detail': {
+ 'new_image': {
+ 'id': '9omWNKymwU5U4aeun6mWzZ',
+ 'status': 'CANCELED',
+ }
+ }
+ }
+
+ assert app.lambda_handler(event, lambda_context) # type: ignore
+
+ result = dynamodb_persistence_layer.collection.query(
+ PartitionKey('vacancies#cJtK9SsnJhKPyxESe7g3DG')
+ )
+
+ assert len(result['items']) == 0
diff --git a/order-events/tests/seeds.jsonl b/order-events/tests/seeds.jsonl
new file mode 100644
index 0000000..2f87c24
--- /dev/null
+++ b/order-events/tests/seeds.jsonl
@@ -0,0 +1,10 @@
+{"id": {"S": "cJtK9SsnJhKPyxESe7g3DG"}, "sk": {"S": "metadata#payment_policy"}, "due_days": {"N": "90"}}
+{"id": {"S": "cJtK9SsnJhKPyxESe7g3DG"}, "sk": {"S": "metadata#billing_policy"}, "billing_day": {"N": "1"}, "payment_method": {"S": "PIX"}}
+{"id": {"S": "9omWNKymwU5U4aeun6mWzZ"}, "sk": {"S": "0"}, "total": {"N": "398"}, "status": {"S": "PENDING"}}
+{"id": {"S": "9omWNKymwU5U4aeun6mWzZ"}, "sk": {"S": "metadata#tenant"}, "tenant_id": {"S": "cJtK9SsnJhKPyxESe7g3DG"}}
+{"id": {"S": "cnpj"}, "sk": {"S": "15608435000190"}, "user_id": {"S": "cJtK9SsnJhKPyxESe7g3DG"}}
+{"id": {"S": "email"}, "sk": {"S": "sergio@somosbeta.com.br"}, "user_id": {"S": "5OxmMjL-ujoR5IMGegQz"}}
+{"id": {"S": "5OxmMjL-ujoR5IMGegQz"}, "sk": {"S": "0"}, "name": {"S": "Sérgio R Siqueira"}}
+{"id": {"S": "vacancies#cJtK9SsnJhKPyxESe7g3DG"}, "sk": {"S": "9omWNKymwU5U4aeun6mWzZ#1"}}
+{"id": {"S": "vacancies#cJtK9SsnJhKPyxESe7g3DG"}, "sk": {"S": "9omWNKymwU5U4aeun6mWzZ#2"}}
+{"id": {"S": "vacancies#cJtK9SsnJhKPyxESe7g3DG"}, "sk": {"S": "9omWNKymwU5U4aeun6mWzZ#3"}}
\ No newline at end of file
diff --git a/order-events/uv.lock b/order-events/uv.lock
new file mode 100644
index 0000000..e5424f7
--- /dev/null
+++ b/order-events/uv.lock
@@ -0,0 +1,1113 @@
+version = 1
+revision = 2
+requires-python = ">=3.13"
+
+[[package]]
+name = "annotated-types"
+version = "0.7.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89", size = 16081, upload-time = "2024-05-20T21:33:25.928Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" },
+]
+
+[[package]]
+name = "arnparse"
+version = "0.0.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/bd/42/949284e998282b167e273872fa9c39b06d41a6055163c30aa2daaeee76a0/arnparse-0.0.2.tar.gz", hash = "sha256:cb87f17200d07121108a9085d4a09cc69a55582647776b9a917b0b1f279db8f8", size = 2677, upload-time = "2019-03-12T21:17:04.586Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/57/6f/630bedeb32964e99661990811a66389201b62c047b35c17e332dad9be2a3/arnparse-0.0.2-py2.py3-none-any.whl", hash = "sha256:b0906734e4b8f19e39b1e32944c6cd6274b6da90c066a83882ac7a11d27553e0", size = 2904, upload-time = "2019-03-12T21:17:03.039Z" },
+]
+
+[[package]]
+name = "attrs"
+version = "25.3.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/5a/b0/1367933a8532ee6ff8d63537de4f1177af4bff9f3e829baf7331f595bb24/attrs-25.3.0.tar.gz", hash = "sha256:75d7cefc7fb576747b2c81b4442d4d4a1ce0900973527c011d1030fd3bf4af1b", size = 812032, upload-time = "2025-03-13T11:10:22.779Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl", hash = "sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3", size = 63815, upload-time = "2025-03-13T11:10:21.14Z" },
+]
+
+[[package]]
+name = "aws-encryption-sdk"
+version = "4.0.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "attrs" },
+ { name = "boto3" },
+ { name = "cryptography" },
+ { name = "wrapt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/45/ff/fefbcc1cee829f3ab188dbcb5069862f61b64ed82a6205314f1ab7bb90e6/aws-encryption-sdk-4.0.1.tar.gz", hash = "sha256:7320dc4cf8d8d5a9b4c88a343be93835da18756e05308d3536554be0ca2889a5", size = 260219, upload-time = "2025-03-27T17:24:54.669Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/66/a5/82956e2111b169c644633212da2a5f84dd9d953b9dd146ccfccfb8a46290/aws_encryption_sdk-4.0.1-py2.py3-none-any.whl", hash = "sha256:5c2ca9a207e1732542a1370ac7efd630ab6e04d05f98e68badf20927eb95ed1d", size = 99127, upload-time = "2025-03-27T17:24:50.903Z" },
+]
+
+[[package]]
+name = "aws-lambda-powertools"
+version = "3.13.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "jmespath" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fd/2b/068efd467c0866e2272c5de7525ddb02ff4e694f71245c8d2a83d4948f23/aws_lambda_powertools-3.13.0.tar.gz", hash = "sha256:99dc11ac6eb81564f599fdd85ba79069f7740ae3481c99bca2cee8abb7c95543", size = 672664, upload-time = "2025-05-20T07:35:30.254Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/98/cd/2241ff877528c66ee11ea636684c4242ceeadb6459a33b08507a40151414/aws_lambda_powertools-3.13.0-py3-none-any.whl", hash = "sha256:9df045f4c3ff944176655813dbff8c1160e056babf5e6d71d4e18c0003818f2e", size = 802546, upload-time = "2025-05-20T07:35:27.767Z" },
+]
+
+[package.optional-dependencies]
+all = [
+ { name = "aws-encryption-sdk" },
+ { name = "aws-xray-sdk" },
+ { name = "fastjsonschema" },
+ { name = "jsonpath-ng" },
+ { name = "pydantic" },
+ { name = "pydantic-settings" },
+]
+
+[[package]]
+name = "aws-xray-sdk"
+version = "2.14.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore" },
+ { name = "wrapt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/e0/6c/8e7fb2a45f20afc5c19d52807b560793fb48b0feca1de7de116b62a7893e/aws_xray_sdk-2.14.0.tar.gz", hash = "sha256:aab843c331af9ab9ba5cefb3a303832a19db186140894a523edafc024cc0493c", size = 93976, upload-time = "2024-06-04T22:11:38.124Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/41/69/b417833a8926fa5491e5346d7c233bf7d8a9b12ba1f4ef41ccea2494000c/aws_xray_sdk-2.14.0-py2.py3-none-any.whl", hash = "sha256:cfbe6feea3d26613a2a869d14c9246a844285c97087ad8f296f901633554ad94", size = 101922, upload-time = "2024-06-04T22:12:25.729Z" },
+]
+
+[[package]]
+name = "boltons"
+version = "25.0.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/63/54/71a94d8e02da9a865587fb3fff100cb0fc7aa9f4d5ed9ed3a591216ddcc7/boltons-25.0.0.tar.gz", hash = "sha256:e110fbdc30b7b9868cb604e3f71d4722dd8f4dcb4a5ddd06028ba8f1ab0b5ace", size = 246294, upload-time = "2025-02-03T05:57:59.129Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/45/7f/0e961cf3908bc4c1c3e027de2794f867c6c89fb4916fc7dba295a0e80a2d/boltons-25.0.0-py3-none-any.whl", hash = "sha256:dc9fb38bf28985715497d1b54d00b62ea866eca3938938ea9043e254a3a6ca62", size = 194210, upload-time = "2025-02-03T05:57:56.705Z" },
+]
+
+[[package]]
+name = "boto3"
+version = "1.38.22"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore" },
+ { name = "jmespath" },
+ { name = "s3transfer" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/d0/e5/4623171284e125ebfef850a21c2af22b0515b08f5cd05e77a79a1085f663/boto3-1.38.22.tar.gz", hash = "sha256:008f6a7c2f9f306984f9bd00c331d70341124aaa7dfebcb0466ecbda6619884a", size = 111818, upload-time = "2025-05-22T19:25:04.625Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/43/08/1bafc1871a758169c4ec528ab04ae820731e03573cb315f3f944207390c2/boto3-1.38.22-py3-none-any.whl", hash = "sha256:760c85ab6dd78f12aa669269ca917d313fe02378722dc3b8ab41a8dc13b2a999", size = 139939, upload-time = "2025-05-22T19:25:00.385Z" },
+]
+
+[[package]]
+name = "botocore"
+version = "1.38.22"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "jmespath" },
+ { name = "python-dateutil" },
+ { name = "urllib3" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/02/ed/b75b99f64c8ce365213abc2e3124e7712ab7c691170718d1c3086c44aaea/botocore-1.38.22.tar.gz", hash = "sha256:3b464984674f97367ca1dfa29bdbce499327571208aaec2f9743f66e54d9ba05", size = 13908621, upload-time = "2025-05-22T19:24:45.588Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/eb/ef/ebf61c9a83858b0e30c69caf49d762c40d3f54aeae731e569e2c968e1bb7/botocore-1.38.22-py3-none-any.whl", hash = "sha256:0e524cc763eced7c87ab256338ebd247ce10d1eb11d5cc4f71a3bd82611739e8", size = 13567201, upload-time = "2025-05-22T19:24:40.397Z" },
+]
+
+[[package]]
+name = "brotli"
+version = "1.1.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/2f/c2/f9e977608bdf958650638c3f1e28f85a1b075f075ebbe77db8555463787b/Brotli-1.1.0.tar.gz", hash = "sha256:81de08ac11bcb85841e440c13611c00b67d3bf82698314928d0b676362546724", size = 7372270, upload-time = "2023-09-07T14:05:41.643Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/0a/9f/fb37bb8ffc52a8da37b1c03c459a8cd55df7a57bdccd8831d500e994a0ca/Brotli-1.1.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8bf32b98b75c13ec7cf774164172683d6e7891088f6316e54425fde1efc276d5", size = 815681, upload-time = "2024-10-18T12:32:34.942Z" },
+ { url = "https://files.pythonhosted.org/packages/06/b3/dbd332a988586fefb0aa49c779f59f47cae76855c2d00f450364bb574cac/Brotli-1.1.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7bc37c4d6b87fb1017ea28c9508b36bbcb0c3d18b4260fcdf08b200c74a6aee8", size = 422475, upload-time = "2024-10-18T12:32:36.485Z" },
+ { url = "https://files.pythonhosted.org/packages/bb/80/6aaddc2f63dbcf2d93c2d204e49c11a9ec93a8c7c63261e2b4bd35198283/Brotli-1.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c0ef38c7a7014ffac184db9e04debe495d317cc9c6fb10071f7fefd93100a4f", size = 2906173, upload-time = "2024-10-18T12:32:37.978Z" },
+ { url = "https://files.pythonhosted.org/packages/ea/1d/e6ca79c96ff5b641df6097d299347507d39a9604bde8915e76bf026d6c77/Brotli-1.1.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91d7cc2a76b5567591d12c01f019dd7afce6ba8cba6571187e21e2fc418ae648", size = 2943803, upload-time = "2024-10-18T12:32:39.606Z" },
+ { url = "https://files.pythonhosted.org/packages/ac/a3/d98d2472e0130b7dd3acdbb7f390d478123dbf62b7d32bda5c830a96116d/Brotli-1.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a93dde851926f4f2678e704fadeb39e16c35d8baebd5252c9fd94ce8ce68c4a0", size = 2918946, upload-time = "2024-10-18T12:32:41.679Z" },
+ { url = "https://files.pythonhosted.org/packages/c4/a5/c69e6d272aee3e1423ed005d8915a7eaa0384c7de503da987f2d224d0721/Brotli-1.1.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f0db75f47be8b8abc8d9e31bc7aad0547ca26f24a54e6fd10231d623f183d089", size = 2845707, upload-time = "2024-10-18T12:32:43.478Z" },
+ { url = "https://files.pythonhosted.org/packages/58/9f/4149d38b52725afa39067350696c09526de0125ebfbaab5acc5af28b42ea/Brotli-1.1.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:6967ced6730aed543b8673008b5a391c3b1076d834ca438bbd70635c73775368", size = 2936231, upload-time = "2024-10-18T12:32:45.224Z" },
+ { url = "https://files.pythonhosted.org/packages/5a/5a/145de884285611838a16bebfdb060c231c52b8f84dfbe52b852a15780386/Brotli-1.1.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:7eedaa5d036d9336c95915035fb57422054014ebdeb6f3b42eac809928e40d0c", size = 2848157, upload-time = "2024-10-18T12:32:46.894Z" },
+ { url = "https://files.pythonhosted.org/packages/50/ae/408b6bfb8525dadebd3b3dd5b19d631da4f7d46420321db44cd99dcf2f2c/Brotli-1.1.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:d487f5432bf35b60ed625d7e1b448e2dc855422e87469e3f450aa5552b0eb284", size = 3035122, upload-time = "2024-10-18T12:32:48.844Z" },
+ { url = "https://files.pythonhosted.org/packages/af/85/a94e5cfaa0ca449d8f91c3d6f78313ebf919a0dbd55a100c711c6e9655bc/Brotli-1.1.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:832436e59afb93e1836081a20f324cb185836c617659b07b129141a8426973c7", size = 2930206, upload-time = "2024-10-18T12:32:51.198Z" },
+ { url = "https://files.pythonhosted.org/packages/c2/f0/a61d9262cd01351df22e57ad7c34f66794709acab13f34be2675f45bf89d/Brotli-1.1.0-cp313-cp313-win32.whl", hash = "sha256:43395e90523f9c23a3d5bdf004733246fba087f2948f87ab28015f12359ca6a0", size = 333804, upload-time = "2024-10-18T12:32:52.661Z" },
+ { url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b", size = 358517, upload-time = "2024-10-18T12:32:54.066Z" },
+]
+
+[[package]]
+name = "brotlicffi"
+version = "1.1.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "cffi" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/95/9d/70caa61192f570fcf0352766331b735afa931b4c6bc9a348a0925cc13288/brotlicffi-1.1.0.0.tar.gz", hash = "sha256:b77827a689905143f87915310b93b273ab17888fd43ef350d4832c4a71083c13", size = 465192, upload-time = "2023-09-14T14:22:40.707Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/a2/11/7b96009d3dcc2c931e828ce1e157f03824a69fb728d06bfd7b2fc6f93718/brotlicffi-1.1.0.0-cp37-abi3-macosx_10_9_x86_64.whl", hash = "sha256:9b7ae6bd1a3f0df532b6d67ff674099a96d22bc0948955cb338488c31bfb8851", size = 453786, upload-time = "2023-09-14T14:21:57.72Z" },
+ { url = "https://files.pythonhosted.org/packages/d6/e6/a8f46f4a4ee7856fbd6ac0c6fb0dc65ed181ba46cd77875b8d9bbe494d9e/brotlicffi-1.1.0.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:19ffc919fa4fc6ace69286e0a23b3789b4219058313cf9b45625016bf7ff996b", size = 2911165, upload-time = "2023-09-14T14:21:59.613Z" },
+ { url = "https://files.pythonhosted.org/packages/be/20/201559dff14e83ba345a5ec03335607e47467b6633c210607e693aefac40/brotlicffi-1.1.0.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9feb210d932ffe7798ee62e6145d3a757eb6233aa9a4e7db78dd3690d7755814", size = 2927895, upload-time = "2023-09-14T14:22:01.22Z" },
+ { url = "https://files.pythonhosted.org/packages/cd/15/695b1409264143be3c933f708a3f81d53c4a1e1ebbc06f46331decbf6563/brotlicffi-1.1.0.0-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84763dbdef5dd5c24b75597a77e1b30c66604725707565188ba54bab4f114820", size = 2851834, upload-time = "2023-09-14T14:22:03.571Z" },
+ { url = "https://files.pythonhosted.org/packages/b4/40/b961a702463b6005baf952794c2e9e0099bde657d0d7e007f923883b907f/brotlicffi-1.1.0.0-cp37-abi3-win32.whl", hash = "sha256:1b12b50e07c3911e1efa3a8971543e7648100713d4e0971b13631cce22c587eb", size = 341731, upload-time = "2023-09-14T14:22:05.74Z" },
+ { url = "https://files.pythonhosted.org/packages/1c/fa/5408a03c041114ceab628ce21766a4ea882aa6f6f0a800e04ee3a30ec6b9/brotlicffi-1.1.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:994a4f0681bb6c6c3b0925530a1926b7a189d878e6e5e38fae8efa47c5d9c613", size = 366783, upload-time = "2023-09-14T14:22:07.096Z" },
+]
+
+[[package]]
+name = "camel-converter"
+version = "4.0.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/ee/3d/dd783586dc0c4aee5b6b88489666fdb2c0c344ea0aa8a5c10746cc423707/camel_converter-4.0.1.tar.gz", hash = "sha256:401414549ae4ac4073e38cdc4aa6d464dc534fc40aa06ff787bf0960b0c86535", size = 38915, upload-time = "2024-10-08T16:55:39.427Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/32/e5/806359514cc8305f047bd6d39d63890298c0596f7328b534059724bd1a9e/camel_converter-4.0.1-py3-none-any.whl", hash = "sha256:0cba7ca1354a29ca2191983deecc9dcf28889f606c28d6ed18ac7d4586b163ac", size = 6243, upload-time = "2024-10-08T16:55:37.769Z" },
+]
+
+[package.optional-dependencies]
+pydantic = [
+ { name = "pydantic" },
+]
+
+[[package]]
+name = "certifi"
+version = "2025.4.26"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e8/9e/c05b3920a3b7d20d3d3310465f50348e5b3694f4f88c6daf736eef3024c4/certifi-2025.4.26.tar.gz", hash = "sha256:0a816057ea3cdefcef70270d2c515e4506bbc954f417fa5ade2021213bb8f0c6", size = 160705, upload-time = "2025-04-26T02:12:29.51Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl", hash = "sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3", size = 159618, upload-time = "2025-04-26T02:12:27.662Z" },
+]
+
+[[package]]
+name = "cffi"
+version = "1.17.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "pycparser" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fc/97/c783634659c2920c3fc70419e3af40972dbaf758daa229a7d6ea6135c90d/cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824", size = 516621, upload-time = "2024-09-04T20:45:21.852Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/8d/f8/dd6c246b148639254dad4d6803eb6a54e8c85c6e11ec9df2cffa87571dbe/cffi-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e", size = 182989, upload-time = "2024-09-04T20:44:28.956Z" },
+ { url = "https://files.pythonhosted.org/packages/8b/f1/672d303ddf17c24fc83afd712316fda78dc6fce1cd53011b839483e1ecc8/cffi-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2", size = 178802, upload-time = "2024-09-04T20:44:30.289Z" },
+ { url = "https://files.pythonhosted.org/packages/0e/2d/eab2e858a91fdff70533cab61dcff4a1f55ec60425832ddfdc9cd36bc8af/cffi-1.17.1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3", size = 454792, upload-time = "2024-09-04T20:44:32.01Z" },
+ { url = "https://files.pythonhosted.org/packages/75/b2/fbaec7c4455c604e29388d55599b99ebcc250a60050610fadde58932b7ee/cffi-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683", size = 478893, upload-time = "2024-09-04T20:44:33.606Z" },
+ { url = "https://files.pythonhosted.org/packages/4f/b7/6e4a2162178bf1935c336d4da8a9352cccab4d3a5d7914065490f08c0690/cffi-1.17.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5", size = 485810, upload-time = "2024-09-04T20:44:35.191Z" },
+ { url = "https://files.pythonhosted.org/packages/c7/8a/1d0e4a9c26e54746dc08c2c6c037889124d4f59dffd853a659fa545f1b40/cffi-1.17.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4", size = 471200, upload-time = "2024-09-04T20:44:36.743Z" },
+ { url = "https://files.pythonhosted.org/packages/26/9f/1aab65a6c0db35f43c4d1b4f580e8df53914310afc10ae0397d29d697af4/cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd", size = 479447, upload-time = "2024-09-04T20:44:38.492Z" },
+ { url = "https://files.pythonhosted.org/packages/5f/e4/fb8b3dd8dc0e98edf1135ff067ae070bb32ef9d509d6cb0f538cd6f7483f/cffi-1.17.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed", size = 484358, upload-time = "2024-09-04T20:44:40.046Z" },
+ { url = "https://files.pythonhosted.org/packages/f1/47/d7145bf2dc04684935d57d67dff9d6d795b2ba2796806bb109864be3a151/cffi-1.17.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9", size = 488469, upload-time = "2024-09-04T20:44:41.616Z" },
+ { url = "https://files.pythonhosted.org/packages/bf/ee/f94057fa6426481d663b88637a9a10e859e492c73d0384514a17d78ee205/cffi-1.17.1-cp313-cp313-win32.whl", hash = "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d", size = 172475, upload-time = "2024-09-04T20:44:43.733Z" },
+ { url = "https://files.pythonhosted.org/packages/7c/fc/6a8cb64e5f0324877d503c854da15d76c1e50eb722e320b15345c4d0c6de/cffi-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a", size = 182009, upload-time = "2024-09-04T20:44:45.309Z" },
+]
+
+[[package]]
+name = "charset-normalizer"
+version = "3.4.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e4/33/89c2ced2b67d1c2a61c19c6751aa8902d46ce3dacb23600a283619f5a12d/charset_normalizer-3.4.2.tar.gz", hash = "sha256:5baececa9ecba31eff645232d59845c07aa030f0c81ee70184a90d35099a0e63", size = 126367, upload-time = "2025-05-02T08:34:42.01Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ea/12/a93df3366ed32db1d907d7593a94f1fe6293903e3e92967bebd6950ed12c/charset_normalizer-3.4.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:926ca93accd5d36ccdabd803392ddc3e03e6d4cd1cf17deff3b989ab8e9dbcf0", size = 199622, upload-time = "2025-05-02T08:32:56.363Z" },
+ { url = "https://files.pythonhosted.org/packages/04/93/bf204e6f344c39d9937d3c13c8cd5bbfc266472e51fc8c07cb7f64fcd2de/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eba9904b0f38a143592d9fc0e19e2df0fa2e41c3c3745554761c5f6447eedabf", size = 143435, upload-time = "2025-05-02T08:32:58.551Z" },
+ { url = "https://files.pythonhosted.org/packages/22/2a/ea8a2095b0bafa6c5b5a55ffdc2f924455233ee7b91c69b7edfcc9e02284/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3fddb7e2c84ac87ac3a947cb4e66d143ca5863ef48e4a5ecb83bd48619e4634e", size = 153653, upload-time = "2025-05-02T08:33:00.342Z" },
+ { url = "https://files.pythonhosted.org/packages/b6/57/1b090ff183d13cef485dfbe272e2fe57622a76694061353c59da52c9a659/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98f862da73774290f251b9df8d11161b6cf25b599a66baf087c1ffe340e9bfd1", size = 146231, upload-time = "2025-05-02T08:33:02.081Z" },
+ { url = "https://files.pythonhosted.org/packages/e2/28/ffc026b26f441fc67bd21ab7f03b313ab3fe46714a14b516f931abe1a2d8/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c9379d65defcab82d07b2a9dfbfc2e95bc8fe0ebb1b176a3190230a3ef0e07c", size = 148243, upload-time = "2025-05-02T08:33:04.063Z" },
+ { url = "https://files.pythonhosted.org/packages/c0/0f/9abe9bd191629c33e69e47c6ef45ef99773320e9ad8e9cb08b8ab4a8d4cb/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e635b87f01ebc977342e2697d05b56632f5f879a4f15955dfe8cef2448b51691", size = 150442, upload-time = "2025-05-02T08:33:06.418Z" },
+ { url = "https://files.pythonhosted.org/packages/67/7c/a123bbcedca91d5916c056407f89a7f5e8fdfce12ba825d7d6b9954a1a3c/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:1c95a1e2902a8b722868587c0e1184ad5c55631de5afc0eb96bc4b0d738092c0", size = 145147, upload-time = "2025-05-02T08:33:08.183Z" },
+ { url = "https://files.pythonhosted.org/packages/ec/fe/1ac556fa4899d967b83e9893788e86b6af4d83e4726511eaaad035e36595/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ef8de666d6179b009dce7bcb2ad4c4a779f113f12caf8dc77f0162c29d20490b", size = 153057, upload-time = "2025-05-02T08:33:09.986Z" },
+ { url = "https://files.pythonhosted.org/packages/2b/ff/acfc0b0a70b19e3e54febdd5301a98b72fa07635e56f24f60502e954c461/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:32fc0341d72e0f73f80acb0a2c94216bd704f4f0bce10aedea38f30502b271ff", size = 156454, upload-time = "2025-05-02T08:33:11.814Z" },
+ { url = "https://files.pythonhosted.org/packages/92/08/95b458ce9c740d0645feb0e96cea1f5ec946ea9c580a94adfe0b617f3573/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:289200a18fa698949d2b39c671c2cc7a24d44096784e76614899a7ccf2574b7b", size = 154174, upload-time = "2025-05-02T08:33:13.707Z" },
+ { url = "https://files.pythonhosted.org/packages/78/be/8392efc43487ac051eee6c36d5fbd63032d78f7728cb37aebcc98191f1ff/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4a476b06fbcf359ad25d34a057b7219281286ae2477cc5ff5e3f70a246971148", size = 149166, upload-time = "2025-05-02T08:33:15.458Z" },
+ { url = "https://files.pythonhosted.org/packages/44/96/392abd49b094d30b91d9fbda6a69519e95802250b777841cf3bda8fe136c/charset_normalizer-3.4.2-cp313-cp313-win32.whl", hash = "sha256:aaeeb6a479c7667fbe1099af9617c83aaca22182d6cf8c53966491a0f1b7ffb7", size = 98064, upload-time = "2025-05-02T08:33:17.06Z" },
+ { url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl", hash = "sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980", size = 105641, upload-time = "2025-05-02T08:33:18.753Z" },
+ { url = "https://files.pythonhosted.org/packages/20/94/c5790835a017658cbfabd07f3bfb549140c3ac458cfc196323996b10095a/charset_normalizer-3.4.2-py3-none-any.whl", hash = "sha256:7f56930ab0abd1c45cd15be65cc741c28b1c9a34876ce8c17a2fa107810c0af0", size = 52626, upload-time = "2025-05-02T08:34:40.053Z" },
+]
+
+[[package]]
+name = "click"
+version = "8.2.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "colorama", marker = "sys_platform == 'win32'" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/60/6c/8ca2efa64cf75a977a0d7fac081354553ebe483345c734fb6b6515d96bbc/click-8.2.1.tar.gz", hash = "sha256:27c491cc05d968d271d5a1db13e3b5a184636d9d930f148c50b038f0d0646202", size = 286342, upload-time = "2025-05-20T23:19:49.832Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/85/32/10bb5764d90a8eee674e9dc6f4db6a0ab47c8c4d0d83c27f7c39ac415a4d/click-8.2.1-py3-none-any.whl", hash = "sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b", size = 102215, upload-time = "2025-05-20T23:19:47.796Z" },
+]
+
+[[package]]
+name = "click-default-group"
+version = "1.2.4"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "click" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/1d/ce/edb087fb53de63dad3b36408ca30368f438738098e668b78c87f93cd41df/click_default_group-1.2.4.tar.gz", hash = "sha256:eb3f3c99ec0d456ca6cd2a7f08f7d4e91771bef51b01bdd9580cc6450fe1251e", size = 3505, upload-time = "2023-08-04T07:54:58.425Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/2c/1a/aff8bb287a4b1400f69e09a53bd65de96aa5cee5691925b38731c67fc695/click_default_group-1.2.4-py2.py3-none-any.whl", hash = "sha256:9b60486923720e7fc61731bdb32b617039aba820e22e1c88766b1125592eaa5f", size = 4123, upload-time = "2023-08-04T07:54:56.875Z" },
+]
+
+[[package]]
+name = "colorama"
+version = "0.4.6"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" },
+]
+
+[[package]]
+name = "coverage"
+version = "7.8.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/27/b4/a707d96c2c1ce9402ce1ce7124c53b9e4e1f3e617652a5ed2fbba4c9b4be/coverage-7.8.1.tar.gz", hash = "sha256:d41d4da5f2871b1782c6b74948d2d37aac3a5b39b43a6ba31d736b97a02ae1f1", size = 812193, upload-time = "2025-05-21T12:39:46.1Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ed/0a/696a8d6c245a72f61589e2015a633fab5aacd8c916802df41d23e387b442/coverage-7.8.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:dd5c305faa2e69334a53061b3168987847dadc2449bab95735242a9bde92fde8", size = 211902, upload-time = "2025-05-21T12:38:44.54Z" },
+ { url = "https://files.pythonhosted.org/packages/3b/2f/0c065dfaf497586cf1693dee2a94e7489a4be840a5bbe765a7a78735268b/coverage-7.8.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:af6b8cdf0857fd4e6460dd6639c37c3f82163127f6112c1942b5e6a52a477676", size = 212175, upload-time = "2025-05-21T12:38:46.143Z" },
+ { url = "https://files.pythonhosted.org/packages/ff/a1/a8a40658f67311c96c3d9073293fefee8a9485906ed531546dffe35fdd4b/coverage-7.8.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e233a56bbf99e4cb134c4f8e63b16c77714e3987daf2c5aa10c3ba8c4232d730", size = 245564, upload-time = "2025-05-21T12:38:47.843Z" },
+ { url = "https://files.pythonhosted.org/packages/6e/94/dc36e2256ce484f482ed5b2a103a261009c301cdad237fdefe2a9b6ddeab/coverage-7.8.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9dabc70012fd7b58a8040a7bc1b5f71fd0e62e2138aefdd8367d3d24bf82c349", size = 242719, upload-time = "2025-05-21T12:38:49.517Z" },
+ { url = "https://files.pythonhosted.org/packages/73/d7/d096859c59f02d4550e6bc9180bd06c88313c32977d7458e0d4ed06ed057/coverage-7.8.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e1f8e96455907496b3e4ea16f63bb578da31e17d2805278b193525e7714f17f2", size = 244634, upload-time = "2025-05-21T12:38:51.18Z" },
+ { url = "https://files.pythonhosted.org/packages/be/a0/6f4db84d1d3334ca37c2dae02a54761a1a3918aec56faec26f1590077181/coverage-7.8.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0034ceec8e91fdaf77350901cc48f47efd00f23c220a3f9fc1187774ddf307cb", size = 244824, upload-time = "2025-05-21T12:38:52.789Z" },
+ { url = "https://files.pythonhosted.org/packages/96/46/1e74016ba7d9f4242170f9d814454e6483a640332a67c0e139dab7d85762/coverage-7.8.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:82db9344a07dd9106796b9fe8805425633146a7ea7fed5ed07c65a64d0bb79e1", size = 242872, upload-time = "2025-05-21T12:38:54.493Z" },
+ { url = "https://files.pythonhosted.org/packages/22/41/51df77f279b49e7dd05ee9dfe746cf8698c873ffdf7fbe57aaee9522ec67/coverage-7.8.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9772c9e266b2ca4999180c12b90c8efb4c5c9ad3e55f301d78bc579af6467ad9", size = 244179, upload-time = "2025-05-21T12:38:56.762Z" },
+ { url = "https://files.pythonhosted.org/packages/b8/83/6207522f3afb64592c47353bc79b0e3e6c3f48fde5e5221ab2b80a12e93d/coverage-7.8.1-cp313-cp313-win32.whl", hash = "sha256:6f24a1e2c373a77afae21bc512466a91e31251685c271c5309ee3e557f6e3e03", size = 214395, upload-time = "2025-05-21T12:38:58.631Z" },
+ { url = "https://files.pythonhosted.org/packages/43/b8/cd40a8fff1633112ac40edde9006aceaa55b32a84976394a42c33547ef95/coverage-7.8.1-cp313-cp313-win_amd64.whl", hash = "sha256:76a4e1d62505a21971968be61ae17cbdc5e0c483265a37f7ddbbc050f9c0b8ec", size = 215195, upload-time = "2025-05-21T12:39:00.614Z" },
+ { url = "https://files.pythonhosted.org/packages/7e/f0/8fea9beb378cdce803ba838293314b21527f4edab58dcbe2e6a5553e7dc8/coverage-7.8.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:35dd5d405a1d378c39f3f30f628a25b0b99f1b8e5bdd78275df2e7b0404892d7", size = 212738, upload-time = "2025-05-21T12:39:02.808Z" },
+ { url = "https://files.pythonhosted.org/packages/0c/90/f28953cd1246ad7839874ef97e181f153d4274cc6db21857fbca18b89c97/coverage-7.8.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:87b86a87f8de2e1bd0bcd45faf1b1edf54f988c8857157300e0336efcfb8ede6", size = 212958, upload-time = "2025-05-21T12:39:04.536Z" },
+ { url = "https://files.pythonhosted.org/packages/fb/70/3f3d34ef68534afa73aee75537d1daf1e91029738cbf052ef828313aa960/coverage-7.8.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce4553a573edb363d5db12be1c044826878bec039159d6d4eafe826ef773396d", size = 257024, upload-time = "2025-05-21T12:39:06.703Z" },
+ { url = "https://files.pythonhosted.org/packages/cf/66/96ab415609b777adfcfa00f29d75d2278da139c0958de7a50dd0023811e6/coverage-7.8.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:db181a1896e0bad75b3bf4916c49fd3cf6751f9cc203fe0e0ecbee1fc43590fa", size = 252867, upload-time = "2025-05-21T12:39:08.818Z" },
+ { url = "https://files.pythonhosted.org/packages/52/4f/3d48704c62fa5f72447005b8a77cc9cce5e164c2df357433442d17f2ac0a/coverage-7.8.1-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6ce2606a171f9cf7c15a77ca61f979ffc0e0d92cd2fb18767cead58c1d19f58e", size = 255096, upload-time = "2025-05-21T12:39:10.516Z" },
+ { url = "https://files.pythonhosted.org/packages/64/1d/e8d4ac647c1967dd3dbc250fb4595b838b7067ad32602a7339ac467d9c5a/coverage-7.8.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4fc4f7cff2495d6d112353c33a439230a6de0b7cd0c2578f1e8d75326f63d783", size = 256276, upload-time = "2025-05-21T12:39:12.177Z" },
+ { url = "https://files.pythonhosted.org/packages/9c/e4/62e2f9521f3758dea07bcefc2c9c0dd34fa67d7035b0443c7c3072e6308b/coverage-7.8.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:ff619c58322d9d6df0a859dc76c3532d7bdbc125cb040f7cd642141446b4f654", size = 254478, upload-time = "2025-05-21T12:39:14.325Z" },
+ { url = "https://files.pythonhosted.org/packages/49/41/7af246f5e68272f97a31a122da5878747e941fef019430485534d1f6a44a/coverage-7.8.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:c0d6290a466a6f3fadf6add2dd4ec11deba4e1a6e3db2dd284edd497aadf802f", size = 255255, upload-time = "2025-05-21T12:39:16.059Z" },
+ { url = "https://files.pythonhosted.org/packages/05/5d/5dacd7915972f82d909f36974c6415667dae08a32478d87dfdbac6788e22/coverage-7.8.1-cp313-cp313t-win32.whl", hash = "sha256:e4e893c7f7fb12271a667d5c1876710fae06d7580343afdb5f3fc4488b73209e", size = 215112, upload-time = "2025-05-21T12:39:18.263Z" },
+ { url = "https://files.pythonhosted.org/packages/8b/89/48e77e71e81e5b79fd6471083d087cd69517e5f585b548d87c92d5ae873c/coverage-7.8.1-cp313-cp313t-win_amd64.whl", hash = "sha256:41d142eefbc0bb3be160a77b2c0fbec76f345387676265052e224eb6c67b7af3", size = 216270, upload-time = "2025-05-21T12:39:20.461Z" },
+ { url = "https://files.pythonhosted.org/packages/1b/a1/4d968d4605f3a87a809f0c8f495eed81656c93cf6c00818334498ad6ad45/coverage-7.8.1-py3-none-any.whl", hash = "sha256:e54b80885b0e61d346accc5709daf8762471a452345521cc9281604a907162c2", size = 203623, upload-time = "2025-05-21T12:39:43.473Z" },
+]
+
+[[package]]
+name = "cryptography"
+version = "45.0.2"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "cffi", marker = "platform_python_implementation != 'PyPy'" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/f6/47/92a8914716f2405f33f1814b97353e3cfa223cd94a77104075d42de3099e/cryptography-45.0.2.tar.gz", hash = "sha256:d784d57b958ffd07e9e226d17272f9af0c41572557604ca7554214def32c26bf", size = 743865, upload-time = "2025-05-18T02:46:34.986Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/3d/2f/46b9e715157643ad16f039ec3c3c47d174da6f825bf5034b1c5f692ab9e2/cryptography-45.0.2-cp311-abi3-macosx_10_9_universal2.whl", hash = "sha256:61a8b1bbddd9332917485b2453d1de49f142e6334ce1d97b7916d5a85d179c84", size = 7043448, upload-time = "2025-05-18T02:45:12.495Z" },
+ { url = "https://files.pythonhosted.org/packages/90/52/49e6c86278e1b5ec226e96b62322538ccc466306517bf9aad8854116a088/cryptography-45.0.2-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4cc31c66411e14dd70e2f384a9204a859dc25b05e1f303df0f5326691061b839", size = 4201098, upload-time = "2025-05-18T02:45:15.178Z" },
+ { url = "https://files.pythonhosted.org/packages/7b/3a/201272539ac5b66b4cb1af89021e423fc0bfacb73498950280c51695fb78/cryptography-45.0.2-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:463096533acd5097f8751115bc600b0b64620c4aafcac10c6d0041e6e68f88fe", size = 4429839, upload-time = "2025-05-18T02:45:17.614Z" },
+ { url = "https://files.pythonhosted.org/packages/99/89/fa1a84832b8f8f3917875cb15324bba98def5a70175a889df7d21a45dc75/cryptography-45.0.2-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:cdafb86eb673c3211accffbffdb3cdffa3aaafacd14819e0898d23696d18e4d3", size = 4205154, upload-time = "2025-05-18T02:45:19.874Z" },
+ { url = "https://files.pythonhosted.org/packages/1c/c5/5225d5230d538ab461725711cf5220560a813d1eb68bafcfb00131b8f631/cryptography-45.0.2-cp311-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:05c2385b1f5c89a17df19900cfb1345115a77168f5ed44bdf6fd3de1ce5cc65b", size = 3897145, upload-time = "2025-05-18T02:45:22.209Z" },
+ { url = "https://files.pythonhosted.org/packages/fe/24/f19aae32526cc55ae17d473bc4588b1234af2979483d99cbfc57e55ffea6/cryptography-45.0.2-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:e9e4bdcd70216b08801e267c0b563316b787f957a46e215249921f99288456f9", size = 4462192, upload-time = "2025-05-18T02:45:24.773Z" },
+ { url = "https://files.pythonhosted.org/packages/19/18/4a69ac95b0b3f03355970baa6c3f9502bbfc54e7df81fdb179654a00f48e/cryptography-45.0.2-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:b2de529027579e43b6dc1f805f467b102fb7d13c1e54c334f1403ee2b37d0059", size = 4208093, upload-time = "2025-05-18T02:45:27.028Z" },
+ { url = "https://files.pythonhosted.org/packages/7c/54/2dea55ccc9558b8fa14f67156250b6ee231e31765601524e4757d0b5db6b/cryptography-45.0.2-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:10d68763892a7b19c22508ab57799c4423c7c8cd61d7eee4c5a6a55a46511949", size = 4461819, upload-time = "2025-05-18T02:45:29.39Z" },
+ { url = "https://files.pythonhosted.org/packages/37/f1/1b220fcd5ef4b1f0ff3e59e733b61597505e47f945606cc877adab2c1a17/cryptography-45.0.2-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:d2a90ce2f0f5b695e4785ac07c19a58244092f3c85d57db6d8eb1a2b26d2aad6", size = 4329202, upload-time = "2025-05-18T02:45:31.925Z" },
+ { url = "https://files.pythonhosted.org/packages/6d/e0/51d1dc4f96f819a56db70f0b4039b4185055bbb8616135884c3c3acc4c6d/cryptography-45.0.2-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:59c0c8f043dd376bbd9d4f636223836aed50431af4c5a467ed9bf61520294627", size = 4570412, upload-time = "2025-05-18T02:45:34.348Z" },
+ { url = "https://files.pythonhosted.org/packages/dc/44/88efb40a3600d15277a77cdc69eeeab45a98532078d2a36cffd9325d3b3f/cryptography-45.0.2-cp311-abi3-win32.whl", hash = "sha256:80303ee6a02ef38c4253160446cbeb5c400c07e01d4ddbd4ff722a89b736d95a", size = 2933584, upload-time = "2025-05-18T02:45:36.198Z" },
+ { url = "https://files.pythonhosted.org/packages/d9/a1/bc9f82ba08760442cc8346d1b4e7b769b86d197193c45b42b3595d231e84/cryptography-45.0.2-cp311-abi3-win_amd64.whl", hash = "sha256:7429936146063bd1b2cfc54f0e04016b90ee9b1c908a7bed0800049cbace70eb", size = 3408537, upload-time = "2025-05-18T02:45:38.184Z" },
+ { url = "https://files.pythonhosted.org/packages/59/bc/1b6acb1dca366f9c0b3880888ecd7fcfb68023930d57df854847c6da1d10/cryptography-45.0.2-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:e86c8d54cd19a13e9081898b3c24351683fd39d726ecf8e774aaa9d8d96f5f3a", size = 7025581, upload-time = "2025-05-18T02:45:40.632Z" },
+ { url = "https://files.pythonhosted.org/packages/31/a3/a3e4a298d3db4a04085728f5ae6c8cda157e49c5bb784886d463b9fbff70/cryptography-45.0.2-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e328357b6bbf79928363dbf13f4635b7aac0306afb7e5ad24d21d0c5761c3253", size = 4189148, upload-time = "2025-05-18T02:45:42.538Z" },
+ { url = "https://files.pythonhosted.org/packages/53/90/100dfadd4663b389cb56972541ec1103490a19ebad0132af284114ba0868/cryptography-45.0.2-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:49af56491473231159c98c2c26f1a8f3799a60e5cf0e872d00745b858ddac9d2", size = 4424113, upload-time = "2025-05-18T02:45:44.316Z" },
+ { url = "https://files.pythonhosted.org/packages/0d/40/e2b9177dbed6f3fcbbf1942e1acea2fd15b17007204b79d675540dd053af/cryptography-45.0.2-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:f169469d04a23282de9d0be349499cb6683b6ff1b68901210faacac9b0c24b7d", size = 4189696, upload-time = "2025-05-18T02:45:46.622Z" },
+ { url = "https://files.pythonhosted.org/packages/70/ae/ec29c79f481e1767c2ff916424ba36f3cf7774de93bbd60428a3c52d1357/cryptography-45.0.2-cp37-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:9cfd1399064b13043082c660ddd97a0358e41c8b0dc7b77c1243e013d305c344", size = 3881498, upload-time = "2025-05-18T02:45:48.884Z" },
+ { url = "https://files.pythonhosted.org/packages/5f/4a/72937090e5637a232b2f73801c9361cd08404a2d4e620ca4ec58c7ea4b70/cryptography-45.0.2-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:18f8084b7ca3ce1b8d38bdfe33c48116edf9a08b4d056ef4a96dceaa36d8d965", size = 4451678, upload-time = "2025-05-18T02:45:50.706Z" },
+ { url = "https://files.pythonhosted.org/packages/d3/fa/1377fced81fd67a4a27514248261bb0d45c3c1e02169411fe231583088c8/cryptography-45.0.2-cp37-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:2cb03a944a1a412724d15a7c051d50e63a868031f26b6a312f2016965b661942", size = 4192296, upload-time = "2025-05-18T02:45:52.422Z" },
+ { url = "https://files.pythonhosted.org/packages/d1/cf/b6fe837c83a08b9df81e63299d75fc5b3c6d82cf24b3e1e0e331050e9e5c/cryptography-45.0.2-cp37-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:a9727a21957d3327cf6b7eb5ffc9e4b663909a25fea158e3fcbc49d4cdd7881b", size = 4451749, upload-time = "2025-05-18T02:45:55.025Z" },
+ { url = "https://files.pythonhosted.org/packages/af/d8/5a655675cc635c7190bfc8cffb84bcdc44fc62ce945ad1d844adaa884252/cryptography-45.0.2-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:ddb8d01aa900b741d6b7cc585a97aff787175f160ab975e21f880e89d810781a", size = 4317601, upload-time = "2025-05-18T02:45:56.911Z" },
+ { url = "https://files.pythonhosted.org/packages/b9/d4/75d2375a20d80aa262a8adee77bf56950e9292929e394b9fae2481803f11/cryptography-45.0.2-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:c0c000c1a09f069632d8a9eb3b610ac029fcc682f1d69b758e625d6ee713f4ed", size = 4560535, upload-time = "2025-05-18T02:45:59.33Z" },
+ { url = "https://files.pythonhosted.org/packages/aa/18/c3a94474987ebcfb88692036b2ec44880d243fefa73794bdcbf748679a6e/cryptography-45.0.2-cp37-abi3-win32.whl", hash = "sha256:08281de408e7eb71ba3cd5098709a356bfdf65eebd7ee7633c3610f0aa80d79b", size = 2922045, upload-time = "2025-05-18T02:46:01.012Z" },
+ { url = "https://files.pythonhosted.org/packages/63/63/fb28b30c144182fd44ce93d13ab859791adbf923e43bdfb610024bfecda1/cryptography-45.0.2-cp37-abi3-win_amd64.whl", hash = "sha256:48caa55c528617fa6db1a9c3bf2e37ccb31b73e098ac2b71408d1f2db551dde4", size = 3393321, upload-time = "2025-05-18T02:46:03.441Z" },
+]
+
+[[package]]
+name = "cssselect2"
+version = "0.8.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "tinycss2" },
+ { name = "webencodings" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/9f/86/fd7f58fc498b3166f3a7e8e0cddb6e620fe1da35b02248b1bd59e95dbaaa/cssselect2-0.8.0.tar.gz", hash = "sha256:7674ffb954a3b46162392aee2a3a0aedb2e14ecf99fcc28644900f4e6e3e9d3a", size = 35716, upload-time = "2025-03-05T14:46:07.988Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/0f/e7/aa315e6a749d9b96c2504a1ba0ba031ba2d0517e972ce22682e3fccecb09/cssselect2-0.8.0-py3-none-any.whl", hash = "sha256:46fc70ebc41ced7a32cd42d58b1884d72ade23d21e5a4eaaf022401c13f0e76e", size = 15454, upload-time = "2025-03-05T14:46:06.463Z" },
+]
+
+[[package]]
+name = "dnspython"
+version = "2.7.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/b5/4a/263763cb2ba3816dd94b08ad3a33d5fdae34ecb856678773cc40a3605829/dnspython-2.7.0.tar.gz", hash = "sha256:ce9c432eda0dc91cf618a5cedf1a4e142651196bbcd2c80e89ed5a907e5cfaf1", size = 345197, upload-time = "2024-10-05T20:14:59.362Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl", hash = "sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86", size = 313632, upload-time = "2024-10-05T20:14:57.687Z" },
+]
+
+[[package]]
+name = "elastic-transport"
+version = "8.17.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "certifi" },
+ { name = "urllib3" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/6a/54/d498a766ac8fa475f931da85a154666cc81a70f8eb4a780bc8e4e934e9ac/elastic_transport-8.17.1.tar.gz", hash = "sha256:5edef32ac864dca8e2f0a613ef63491ee8d6b8cfb52881fa7313ba9290cac6d2", size = 73425, upload-time = "2025-03-13T07:28:30.776Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/cf/cd/b71d5bc74cde7fc6fd9b2ff9389890f45d9762cbbbf81dc5e51fd7588c4a/elastic_transport-8.17.1-py3-none-any.whl", hash = "sha256:192718f498f1d10c5e9aa8b9cf32aed405e469a7f0e9d6a8923431dbb2c59fb8", size = 64969, upload-time = "2025-03-13T07:28:29.031Z" },
+]
+
+[[package]]
+name = "elasticsearch"
+version = "8.18.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "elastic-transport" },
+ { name = "python-dateutil" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/2a/e4/40fc0e8d9a646889ac3f865cd35e41835f3cf888c716c7aae82248e022f0/elasticsearch-8.18.1.tar.gz", hash = "sha256:998035f17a8c1fba7ae26b183dca797dcf95db86da6a7ecba56d31afc40f07c7", size = 750746, upload-time = "2025-04-29T09:32:16.361Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/33/62/f62e8a5c7c6f7b27481c9ffc248fb32078ad88878aa4f3731a83a14cc797/elasticsearch-8.18.1-py3-none-any.whl", hash = "sha256:1a8c8b5ec3ce5be88f96d2f898375671648e96272978bce0dee3137d9326aabb", size = 906320, upload-time = "2025-04-29T09:32:12.527Z" },
+]
+
+[[package]]
+name = "elasticsearch-dsl"
+version = "8.18.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "elastic-transport" },
+ { name = "elasticsearch" },
+ { name = "python-dateutil" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/72/6d/00cbeee412a2dc825f0df18c98463a2e0b423b86800fba6c50ea2c627962/elasticsearch_dsl-8.18.0.tar.gz", hash = "sha256:763465dba9eae166add10567e924c65730aa122819b08bfe9a077e91b13b30d1", size = 31886, upload-time = "2025-04-16T11:54:14.412Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/77/a9/b200790a22585aeb023d88bd8b9fb222820e2976ce4239d401670116ae3c/elasticsearch_dsl-8.18.0-py3-none-any.whl", hash = "sha256:0522c5bb20c7abae69855109e650bf1166d486cbf706b5e1b29c28936a9102a3", size = 10406, upload-time = "2025-04-16T11:54:12.677Z" },
+]
+
+[[package]]
+name = "email-validator"
+version = "2.2.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "dnspython" },
+ { name = "idna" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/48/ce/13508a1ec3f8bb981ae4ca79ea40384becc868bfae97fd1c942bb3a001b1/email_validator-2.2.0.tar.gz", hash = "sha256:cb690f344c617a714f22e66ae771445a1ceb46821152df8e165c5f9a364582b7", size = 48967, upload-time = "2024-06-20T11:30:30.034Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/d7/ee/bf0adb559ad3c786f12bcbc9296b3f5675f529199bef03e2df281fa1fadb/email_validator-2.2.0-py3-none-any.whl", hash = "sha256:561977c2d73ce3611850a06fa56b414621e0c8faa9d66f2611407d87465da631", size = 33521, upload-time = "2024-06-20T11:30:28.248Z" },
+]
+
+[[package]]
+name = "face"
+version = "24.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "boltons" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/ac/79/2484075a8549cd64beae697a8f664dee69a5ccf3a7439ee40c8f93c1978a/face-24.0.0.tar.gz", hash = "sha256:611e29a01ac5970f0077f9c577e746d48c082588b411b33a0dd55c4d872949f6", size = 62732, upload-time = "2024-11-02T05:24:26.095Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e9/47/21867c2e5fd006c8d36a560df9e32cb4f1f566b20c5dd41f5f8a2124f7de/face-24.0.0-py3-none-any.whl", hash = "sha256:0e2c17b426fa4639a4e77d1de9580f74a98f4869ba4c7c8c175b810611622cd3", size = 54742, upload-time = "2024-11-02T05:24:24.939Z" },
+]
+
+[[package]]
+name = "fastjsonschema"
+version = "2.21.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/8b/50/4b769ce1ac4071a1ef6d86b1a3fb56cdc3a37615e8c5519e1af96cdac366/fastjsonschema-2.21.1.tar.gz", hash = "sha256:794d4f0a58f848961ba16af7b9c85a3e88cd360df008c59aac6fc5ae9323b5d4", size = 373939, upload-time = "2024-12-02T10:55:15.133Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl", hash = "sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667", size = 23924, upload-time = "2024-12-02T10:55:07.599Z" },
+]
+
+[[package]]
+name = "fonttools"
+version = "4.58.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/9a/cf/4d037663e2a1fe30fddb655d755d76e18624be44ad467c07412c2319ab97/fonttools-4.58.0.tar.gz", hash = "sha256:27423d0606a2c7b336913254bf0b1193ebd471d5f725d665e875c5e88a011a43", size = 3514522, upload-time = "2025-05-10T17:36:35.886Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/0c/d7/d77cae11c445916d767cace93ba8283b3f360197d95d7470b90a9e984e10/fonttools-4.58.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:4809790f2371d8a08e59e1ce2b734c954cf09742e75642d7f4c46cfdac488fdd", size = 2728320, upload-time = "2025-05-10T17:35:56.455Z" },
+ { url = "https://files.pythonhosted.org/packages/77/48/7d8b3c519ef4b48081d40310262224a38785e39a8610ccb92a229a6f085d/fonttools-4.58.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:b00f240280f204ce4546b05ff3515bf8ff47a9cae914c718490025ea2bb9b324", size = 2302570, upload-time = "2025-05-10T17:35:58.794Z" },
+ { url = "https://files.pythonhosted.org/packages/2c/48/156b83eb8fb7261056e448bfda1b495b90e761b28ec23cee10e3e19f1967/fonttools-4.58.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5a62015ad463e1925544e9159dd6eefe33ebfb80938d5ab15d8b1c4b354ff47b", size = 4790066, upload-time = "2025-05-10T17:36:01.174Z" },
+ { url = "https://files.pythonhosted.org/packages/60/49/aaecb1b3cea2b9b9c7cea6240d6bc8090feb5489a6fbf93cb68003be979b/fonttools-4.58.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ceef6f6ab58061a811967e3e32e630747fcb823dcc33a9a2c80e2d0d17cb292", size = 4861076, upload-time = "2025-05-10T17:36:03.663Z" },
+ { url = "https://files.pythonhosted.org/packages/dc/c8/97cbb41bee81ea9daf6109e0f3f70a274a3c69418e5ac6b0193f5dacf506/fonttools-4.58.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c7be21ac52370b515cdbdd0f400803fd29432a4fa4ddb4244ac8b322e54f36c0", size = 4858394, upload-time = "2025-05-10T17:36:06.087Z" },
+ { url = "https://files.pythonhosted.org/packages/4d/23/c2c231457361f869a7d7374a557208e303b469d48a4a697c0fb249733ea1/fonttools-4.58.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:85836be4c3c4aacf6fcb7a6f263896d0e9ce431da9fa6fe9213d70f221f131c9", size = 5002160, upload-time = "2025-05-10T17:36:08.178Z" },
+ { url = "https://files.pythonhosted.org/packages/a9/e0/c2262f941a43b810c5c192db94b5d1ce8eda91bec2757f7e2416398f4072/fonttools-4.58.0-cp313-cp313-win32.whl", hash = "sha256:2b32b7130277bd742cb8c4379a6a303963597d22adea77a940343f3eadbcaa4c", size = 2171919, upload-time = "2025-05-10T17:36:10.644Z" },
+ { url = "https://files.pythonhosted.org/packages/8f/ee/e4aa7bb4ce510ad57a808d321df1bbed1eeb6e1dfb20aaee1a5d9c076849/fonttools-4.58.0-cp313-cp313-win_amd64.whl", hash = "sha256:75e68ee2ec9aaa173cf5e33f243da1d51d653d5e25090f2722bc644a78db0f1a", size = 2222972, upload-time = "2025-05-10T17:36:12.495Z" },
+ { url = "https://files.pythonhosted.org/packages/9b/1f/4417c26e26a1feab85a27e927f7a73d8aabc84544be8ba108ce4aa90eb1e/fonttools-4.58.0-py3-none-any.whl", hash = "sha256:c96c36880be2268be409df7b08c5b5dacac1827083461a6bc2cb07b8cbcec1d7", size = 1111440, upload-time = "2025-05-10T17:36:33.607Z" },
+]
+
+[package.optional-dependencies]
+woff = [
+ { name = "brotli", marker = "platform_python_implementation == 'CPython'" },
+ { name = "brotlicffi", marker = "platform_python_implementation != 'CPython'" },
+ { name = "zopfli" },
+]
+
+[[package]]
+name = "ftfy"
+version = "6.3.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "wcwidth" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/a5/d3/8650919bc3c7c6e90ee3fa7fd618bf373cbbe55dff043bd67353dbb20cd8/ftfy-6.3.1.tar.gz", hash = "sha256:9b3c3d90f84fb267fe64d375a07b7f8912d817cf86009ae134aa03e1819506ec", size = 308927, upload-time = "2024-10-26T00:50:35.149Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ab/6e/81d47999aebc1b155f81eca4477a616a70f238a2549848c38983f3c22a82/ftfy-6.3.1-py3-none-any.whl", hash = "sha256:7c70eb532015cd2f9adb53f101fb6c7945988d023a085d127d1573dc49dd0083", size = 44821, upload-time = "2024-10-26T00:50:33.425Z" },
+]
+
+[[package]]
+name = "glom"
+version = "24.11.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "attrs" },
+ { name = "boltons" },
+ { name = "face" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/05/89/b57cfbc448189426f2e01b244fbe9226b059ef5423a9d49c1d335a1f1026/glom-24.11.0.tar.gz", hash = "sha256:4325f96759a912044af7b6c6bd0dba44ad8c1eb6038aab057329661d2021bb27", size = 195120, upload-time = "2024-11-02T23:17:50.405Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/9c/a2/75fd80784ec33da8d39cf885e8811a4fbc045a90db5e336b8e345e66dbb2/glom-24.11.0-py3-none-any.whl", hash = "sha256:991db7fcb4bfa9687010aa519b7b541bbe21111e70e58fdd2d7e34bbaa2c1fbd", size = 102690, upload-time = "2024-11-02T23:17:46.468Z" },
+]
+
+[[package]]
+name = "idna"
+version = "3.10"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f1/70/7703c29685631f5a7590aa73f1f1d3fa9a380e654b86af429e0934a32f7d/idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9", size = 190490, upload-time = "2024-09-15T18:07:39.745Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3", size = 70442, upload-time = "2024-09-15T18:07:37.964Z" },
+]
+
+[[package]]
+name = "iniconfig"
+version = "2.1.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f2/97/ebf4da567aa6827c909642694d71c9fcf53e5b504f2d96afea02718862f3/iniconfig-2.1.0.tar.gz", hash = "sha256:3abbd2e30b36733fee78f9c7f7308f2d0050e88f0087fd25c2645f63c773e1c7", size = 4793, upload-time = "2025-03-19T20:09:59.721Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl", hash = "sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760", size = 6050, upload-time = "2025-03-19T20:10:01.071Z" },
+]
+
+[[package]]
+name = "jmespath"
+version = "1.0.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/00/2a/e867e8531cf3e36b41201936b7fa7ba7b5702dbef42922193f05c8976cd6/jmespath-1.0.1.tar.gz", hash = "sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe", size = 25843, upload-time = "2022-06-17T18:00:12.224Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/31/b4/b9b800c45527aadd64d5b442f9b932b00648617eb5d63d2c7a6587b7cafc/jmespath-1.0.1-py3-none-any.whl", hash = "sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980", size = 20256, upload-time = "2022-06-17T18:00:10.251Z" },
+]
+
+[[package]]
+name = "jsonlines"
+version = "4.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "attrs" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/35/87/bcda8e46c88d0e34cad2f09ee2d0c7f5957bccdb9791b0b934ec84d84be4/jsonlines-4.0.0.tar.gz", hash = "sha256:0c6d2c09117550c089995247f605ae4cf77dd1533041d366351f6f298822ea74", size = 11359, upload-time = "2023-09-01T12:34:44.187Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/f8/62/d9ba6323b9202dd2fe166beab8a86d29465c41a0288cbe229fac60c1ab8d/jsonlines-4.0.0-py3-none-any.whl", hash = "sha256:185b334ff2ca5a91362993f42e83588a360cf95ce4b71a73548502bda52a7c55", size = 8701, upload-time = "2023-09-01T12:34:42.563Z" },
+]
+
+[[package]]
+name = "jsonpath-ng"
+version = "1.7.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "ply" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/6d/86/08646239a313f895186ff0a4573452038eed8c86f54380b3ebac34d32fb2/jsonpath-ng-1.7.0.tar.gz", hash = "sha256:f6f5f7fd4e5ff79c785f1573b394043b39849fb2bb47bcead935d12b00beab3c", size = 37838, upload-time = "2024-10-11T15:41:42.404Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/35/5a/73ecb3d82f8615f32ccdadeb9356726d6cae3a4bbc840b437ceb95708063/jsonpath_ng-1.7.0-py3-none-any.whl", hash = "sha256:f3d7f9e848cba1b6da28c55b1c26ff915dc9e0b1ba7e752a53d6da8d5cbd00b6", size = 30105, upload-time = "2024-11-20T17:58:30.418Z" },
+]
+
+[[package]]
+name = "layercake"
+version = "0.6.11"
+source = { directory = "../layercake" }
+dependencies = [
+ { name = "arnparse" },
+ { name = "aws-lambda-powertools", extra = ["all"] },
+ { name = "elasticsearch" },
+ { name = "elasticsearch-dsl" },
+ { name = "ftfy" },
+ { name = "glom" },
+ { name = "meilisearch" },
+ { name = "orjson" },
+ { name = "pycpfcnpj" },
+ { name = "pydantic", extra = ["email"] },
+ { name = "pydantic-extra-types" },
+ { name = "pytz" },
+ { name = "requests" },
+ { name = "smart-open", extra = ["s3"] },
+ { name = "sqlite-utils" },
+ { name = "weasyprint" },
+]
+
+[package.metadata]
+requires-dist = [
+ { name = "arnparse", specifier = ">=0.0.2" },
+ { name = "aws-lambda-powertools", extras = ["all"], specifier = ">=3.8.0" },
+ { name = "elasticsearch", specifier = ">=8.17.2" },
+ { name = "elasticsearch-dsl", specifier = ">=8.17.1" },
+ { name = "ftfy", specifier = ">=6.3.1" },
+ { name = "glom", specifier = ">=24.11.0" },
+ { name = "meilisearch", specifier = ">=0.34.0" },
+ { name = "orjson", specifier = ">=3.10.15" },
+ { name = "pycpfcnpj", specifier = ">=1.8" },
+ { name = "pydantic", extras = ["email"], specifier = ">=2.10.6" },
+ { name = "pydantic-extra-types", specifier = ">=2.10.3" },
+ { name = "pytz", specifier = ">=2025.1" },
+ { name = "requests", specifier = ">=2.32.3" },
+ { name = "smart-open", extras = ["s3"], specifier = ">=7.1.0" },
+ { name = "sqlite-utils", specifier = ">=3.38" },
+ { name = "weasyprint", specifier = ">=65.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "boto3", specifier = ">=1.37.16" },
+ { name = "boto3-stubs", extras = ["essential"], specifier = ">=1.37.33" },
+ { name = "jsonlines", specifier = ">=4.0.0" },
+ { name = "pytest", specifier = ">=8.3.5" },
+ { name = "pytest-cov", specifier = ">=6.0.0" },
+ { name = "ruff", specifier = ">=0.11.1" },
+]
+
+[[package]]
+name = "meilisearch"
+version = "0.34.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "camel-converter", extra = ["pydantic"] },
+ { name = "requests" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/11/d2/63b34effea260f2551685cdc38783d36e05a1734c1f14f8bd8dd059fe699/meilisearch-0.34.1.tar.gz", hash = "sha256:99a8d8f548cc1905668ffb2bbf641b5e3ec9231f3413cce4189c5d7b16e52afa", size = 24221, upload-time = "2025-04-04T13:45:07.868Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/bf/3e/a3ec8d44b35e495444cac8ce3573b33adf19a9b6d70f2a51e4a971f17c81/meilisearch-0.34.1-py3-none-any.whl", hash = "sha256:43efa4521ce7dc3b065d404267ad5b3acb825602e6219b8b5356650306686cd4", size = 24918, upload-time = "2025-04-04T13:45:06.869Z" },
+]
+
+[[package]]
+name = "order-management"
+version = "0.1.0"
+source = { virtual = "." }
+dependencies = [
+ { name = "layercake" },
+]
+
+[package.dev-dependencies]
+dev = [
+ { name = "jsonlines" },
+ { name = "pytest" },
+ { name = "pytest-cov" },
+ { name = "ruff" },
+]
+
+[package.metadata]
+requires-dist = [{ name = "layercake", directory = "../layercake" }]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "jsonlines", specifier = ">=4.0.0" },
+ { name = "pytest", specifier = ">=8.3.4" },
+ { name = "pytest-cov", specifier = ">=6.0.0" },
+ { name = "ruff", specifier = ">=0.9.1" },
+]
+
+[[package]]
+name = "orjson"
+version = "3.10.18"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/81/0b/fea456a3ffe74e70ba30e01ec183a9b26bec4d497f61dcfce1b601059c60/orjson-3.10.18.tar.gz", hash = "sha256:e8da3947d92123eda795b68228cafe2724815621fe35e8e320a9e9593a4bcd53", size = 5422810, upload-time = "2025-04-29T23:30:08.423Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/04/f0/8aedb6574b68096f3be8f74c0b56d36fd94bcf47e6c7ed47a7bd1474aaa8/orjson-3.10.18-cp313-cp313-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:69c34b9441b863175cc6a01f2935de994025e773f814412030f269da4f7be147", size = 249087, upload-time = "2025-04-29T23:29:19.083Z" },
+ { url = "https://files.pythonhosted.org/packages/bc/f7/7118f965541aeac6844fcb18d6988e111ac0d349c9b80cda53583e758908/orjson-3.10.18-cp313-cp313-macosx_15_0_arm64.whl", hash = "sha256:1ebeda919725f9dbdb269f59bc94f861afbe2a27dce5608cdba2d92772364d1c", size = 133273, upload-time = "2025-04-29T23:29:20.602Z" },
+ { url = "https://files.pythonhosted.org/packages/fb/d9/839637cc06eaf528dd8127b36004247bf56e064501f68df9ee6fd56a88ee/orjson-3.10.18-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5adf5f4eed520a4959d29ea80192fa626ab9a20b2ea13f8f6dc58644f6927103", size = 136779, upload-time = "2025-04-29T23:29:22.062Z" },
+ { url = "https://files.pythonhosted.org/packages/2b/6d/f226ecfef31a1f0e7d6bf9a31a0bbaf384c7cbe3fce49cc9c2acc51f902a/orjson-3.10.18-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7592bb48a214e18cd670974f289520f12b7aed1fa0b2e2616b8ed9e069e08595", size = 132811, upload-time = "2025-04-29T23:29:23.602Z" },
+ { url = "https://files.pythonhosted.org/packages/73/2d/371513d04143c85b681cf8f3bce743656eb5b640cb1f461dad750ac4b4d4/orjson-3.10.18-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f872bef9f042734110642b7a11937440797ace8c87527de25e0c53558b579ccc", size = 137018, upload-time = "2025-04-29T23:29:25.094Z" },
+ { url = "https://files.pythonhosted.org/packages/69/cb/a4d37a30507b7a59bdc484e4a3253c8141bf756d4e13fcc1da760a0b00cb/orjson-3.10.18-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0315317601149c244cb3ecef246ef5861a64824ccbcb8018d32c66a60a84ffbc", size = 138368, upload-time = "2025-04-29T23:29:26.609Z" },
+ { url = "https://files.pythonhosted.org/packages/1e/ae/cd10883c48d912d216d541eb3db8b2433415fde67f620afe6f311f5cd2ca/orjson-3.10.18-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e0da26957e77e9e55a6c2ce2e7182a36a6f6b180ab7189315cb0995ec362e049", size = 142840, upload-time = "2025-04-29T23:29:28.153Z" },
+ { url = "https://files.pythonhosted.org/packages/6d/4c/2bda09855c6b5f2c055034c9eda1529967b042ff8d81a05005115c4e6772/orjson-3.10.18-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bb70d489bc79b7519e5803e2cc4c72343c9dc1154258adf2f8925d0b60da7c58", size = 133135, upload-time = "2025-04-29T23:29:29.726Z" },
+ { url = "https://files.pythonhosted.org/packages/13/4a/35971fd809a8896731930a80dfff0b8ff48eeb5d8b57bb4d0d525160017f/orjson-3.10.18-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e9e86a6af31b92299b00736c89caf63816f70a4001e750bda179e15564d7a034", size = 134810, upload-time = "2025-04-29T23:29:31.269Z" },
+ { url = "https://files.pythonhosted.org/packages/99/70/0fa9e6310cda98365629182486ff37a1c6578e34c33992df271a476ea1cd/orjson-3.10.18-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:c382a5c0b5931a5fc5405053d36c1ce3fd561694738626c77ae0b1dfc0242ca1", size = 413491, upload-time = "2025-04-29T23:29:33.315Z" },
+ { url = "https://files.pythonhosted.org/packages/32/cb/990a0e88498babddb74fb97855ae4fbd22a82960e9b06eab5775cac435da/orjson-3.10.18-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:8e4b2ae732431127171b875cb2668f883e1234711d3c147ffd69fe5be51a8012", size = 153277, upload-time = "2025-04-29T23:29:34.946Z" },
+ { url = "https://files.pythonhosted.org/packages/92/44/473248c3305bf782a384ed50dd8bc2d3cde1543d107138fd99b707480ca1/orjson-3.10.18-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2d808e34ddb24fc29a4d4041dcfafbae13e129c93509b847b14432717d94b44f", size = 137367, upload-time = "2025-04-29T23:29:36.52Z" },
+ { url = "https://files.pythonhosted.org/packages/ad/fd/7f1d3edd4ffcd944a6a40e9f88af2197b619c931ac4d3cfba4798d4d3815/orjson-3.10.18-cp313-cp313-win32.whl", hash = "sha256:ad8eacbb5d904d5591f27dee4031e2c1db43d559edb8f91778efd642d70e6bea", size = 142687, upload-time = "2025-04-29T23:29:38.292Z" },
+ { url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl", hash = "sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52", size = 134794, upload-time = "2025-04-29T23:29:40.349Z" },
+ { url = "https://files.pythonhosted.org/packages/c2/28/f53038a5a72cc4fd0b56c1eafb4ef64aec9685460d5ac34de98ca78b6e29/orjson-3.10.18-cp313-cp313-win_arm64.whl", hash = "sha256:f54c1385a0e6aba2f15a40d703b858bedad36ded0491e55d35d905b2c34a4cc3", size = 131186, upload-time = "2025-04-29T23:29:41.922Z" },
+]
+
+[[package]]
+name = "packaging"
+version = "25.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/a1/d4/1fc4078c65507b51b96ca8f8c3ba19e6a61c8253c72794544580a7b6c24d/packaging-25.0.tar.gz", hash = "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f", size = 165727, upload-time = "2025-04-19T11:48:59.673Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484", size = 66469, upload-time = "2025-04-19T11:48:57.875Z" },
+]
+
+[[package]]
+name = "pillow"
+version = "11.2.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/af/cb/bb5c01fcd2a69335b86c22142b2bccfc3464087efb7fd382eee5ffc7fdf7/pillow-11.2.1.tar.gz", hash = "sha256:a64dd61998416367b7ef979b73d3a85853ba9bec4c2925f74e588879a58716b6", size = 47026707, upload-time = "2025-04-12T17:50:03.289Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/36/9c/447528ee3776e7ab8897fe33697a7ff3f0475bb490c5ac1456a03dc57956/pillow-11.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:fdec757fea0b793056419bca3e9932eb2b0ceec90ef4813ea4c1e072c389eb28", size = 3190098, upload-time = "2025-04-12T17:48:23.915Z" },
+ { url = "https://files.pythonhosted.org/packages/b5/09/29d5cd052f7566a63e5b506fac9c60526e9ecc553825551333e1e18a4858/pillow-11.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b0e130705d568e2f43a17bcbe74d90958e8a16263868a12c3e0d9c8162690830", size = 3030166, upload-time = "2025-04-12T17:48:25.738Z" },
+ { url = "https://files.pythonhosted.org/packages/71/5d/446ee132ad35e7600652133f9c2840b4799bbd8e4adba881284860da0a36/pillow-11.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7bdb5e09068332578214cadd9c05e3d64d99e0e87591be22a324bdbc18925be0", size = 4408674, upload-time = "2025-04-12T17:48:27.908Z" },
+ { url = "https://files.pythonhosted.org/packages/69/5f/cbe509c0ddf91cc3a03bbacf40e5c2339c4912d16458fcb797bb47bcb269/pillow-11.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d189ba1bebfbc0c0e529159631ec72bb9e9bc041f01ec6d3233d6d82eb823bc1", size = 4496005, upload-time = "2025-04-12T17:48:29.888Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/b3/dd4338d8fb8a5f312021f2977fb8198a1184893f9b00b02b75d565c33b51/pillow-11.2.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:191955c55d8a712fab8934a42bfefbf99dd0b5875078240943f913bb66d46d9f", size = 4518707, upload-time = "2025-04-12T17:48:31.874Z" },
+ { url = "https://files.pythonhosted.org/packages/13/eb/2552ecebc0b887f539111c2cd241f538b8ff5891b8903dfe672e997529be/pillow-11.2.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:ad275964d52e2243430472fc5d2c2334b4fc3ff9c16cb0a19254e25efa03a155", size = 4610008, upload-time = "2025-04-12T17:48:34.422Z" },
+ { url = "https://files.pythonhosted.org/packages/72/d1/924ce51bea494cb6e7959522d69d7b1c7e74f6821d84c63c3dc430cbbf3b/pillow-11.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:750f96efe0597382660d8b53e90dd1dd44568a8edb51cb7f9d5d918b80d4de14", size = 4585420, upload-time = "2025-04-12T17:48:37.641Z" },
+ { url = "https://files.pythonhosted.org/packages/43/ab/8f81312d255d713b99ca37479a4cb4b0f48195e530cdc1611990eb8fd04b/pillow-11.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fe15238d3798788d00716637b3d4e7bb6bde18b26e5d08335a96e88564a36b6b", size = 4667655, upload-time = "2025-04-12T17:48:39.652Z" },
+ { url = "https://files.pythonhosted.org/packages/94/86/8f2e9d2dc3d308dfd137a07fe1cc478df0a23d42a6c4093b087e738e4827/pillow-11.2.1-cp313-cp313-win32.whl", hash = "sha256:3fe735ced9a607fee4f481423a9c36701a39719252a9bb251679635f99d0f7d2", size = 2332329, upload-time = "2025-04-12T17:48:41.765Z" },
+ { url = "https://files.pythonhosted.org/packages/6d/ec/1179083b8d6067a613e4d595359b5fdea65d0a3b7ad623fee906e1b3c4d2/pillow-11.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:74ee3d7ecb3f3c05459ba95eed5efa28d6092d751ce9bf20e3e253a4e497e691", size = 2676388, upload-time = "2025-04-12T17:48:43.625Z" },
+ { url = "https://files.pythonhosted.org/packages/23/f1/2fc1e1e294de897df39fa8622d829b8828ddad938b0eaea256d65b84dd72/pillow-11.2.1-cp313-cp313-win_arm64.whl", hash = "sha256:5119225c622403afb4b44bad4c1ca6c1f98eed79db8d3bc6e4e160fc6339d66c", size = 2414950, upload-time = "2025-04-12T17:48:45.475Z" },
+ { url = "https://files.pythonhosted.org/packages/c4/3e/c328c48b3f0ead7bab765a84b4977acb29f101d10e4ef57a5e3400447c03/pillow-11.2.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:8ce2e8411c7aaef53e6bb29fe98f28cd4fbd9a1d9be2eeea434331aac0536b22", size = 3192759, upload-time = "2025-04-12T17:48:47.866Z" },
+ { url = "https://files.pythonhosted.org/packages/18/0e/1c68532d833fc8b9f404d3a642991441d9058eccd5606eab31617f29b6d4/pillow-11.2.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:9ee66787e095127116d91dea2143db65c7bb1e232f617aa5957c0d9d2a3f23a7", size = 3033284, upload-time = "2025-04-12T17:48:50.189Z" },
+ { url = "https://files.pythonhosted.org/packages/b7/cb/6faf3fb1e7705fd2db74e070f3bf6f88693601b0ed8e81049a8266de4754/pillow-11.2.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9622e3b6c1d8b551b6e6f21873bdcc55762b4b2126633014cea1803368a9aa16", size = 4445826, upload-time = "2025-04-12T17:48:52.346Z" },
+ { url = "https://files.pythonhosted.org/packages/07/94/8be03d50b70ca47fb434a358919d6a8d6580f282bbb7af7e4aa40103461d/pillow-11.2.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:63b5dff3a68f371ea06025a1a6966c9a1e1ee452fc8020c2cd0ea41b83e9037b", size = 4527329, upload-time = "2025-04-12T17:48:54.403Z" },
+ { url = "https://files.pythonhosted.org/packages/fd/a4/bfe78777076dc405e3bd2080bc32da5ab3945b5a25dc5d8acaa9de64a162/pillow-11.2.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:31df6e2d3d8fc99f993fd253e97fae451a8db2e7207acf97859732273e108406", size = 4549049, upload-time = "2025-04-12T17:48:56.383Z" },
+ { url = "https://files.pythonhosted.org/packages/65/4d/eaf9068dc687c24979e977ce5677e253624bd8b616b286f543f0c1b91662/pillow-11.2.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:062b7a42d672c45a70fa1f8b43d1d38ff76b63421cbbe7f88146b39e8a558d91", size = 4635408, upload-time = "2025-04-12T17:48:58.782Z" },
+ { url = "https://files.pythonhosted.org/packages/1d/26/0fd443365d9c63bc79feb219f97d935cd4b93af28353cba78d8e77b61719/pillow-11.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4eb92eca2711ef8be42fd3f67533765d9fd043b8c80db204f16c8ea62ee1a751", size = 4614863, upload-time = "2025-04-12T17:49:00.709Z" },
+ { url = "https://files.pythonhosted.org/packages/49/65/dca4d2506be482c2c6641cacdba5c602bc76d8ceb618fd37de855653a419/pillow-11.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f91ebf30830a48c825590aede79376cb40f110b387c17ee9bd59932c961044f9", size = 4692938, upload-time = "2025-04-12T17:49:02.946Z" },
+ { url = "https://files.pythonhosted.org/packages/b3/92/1ca0c3f09233bd7decf8f7105a1c4e3162fb9142128c74adad0fb361b7eb/pillow-11.2.1-cp313-cp313t-win32.whl", hash = "sha256:e0b55f27f584ed623221cfe995c912c61606be8513bfa0e07d2c674b4516d9dd", size = 2335774, upload-time = "2025-04-12T17:49:04.889Z" },
+ { url = "https://files.pythonhosted.org/packages/a5/ac/77525347cb43b83ae905ffe257bbe2cc6fd23acb9796639a1f56aa59d191/pillow-11.2.1-cp313-cp313t-win_amd64.whl", hash = "sha256:36d6b82164c39ce5482f649b437382c0fb2395eabc1e2b1702a6deb8ad647d6e", size = 2681895, upload-time = "2025-04-12T17:49:06.635Z" },
+ { url = "https://files.pythonhosted.org/packages/67/32/32dc030cfa91ca0fc52baebbba2e009bb001122a1daa8b6a79ad830b38d3/pillow-11.2.1-cp313-cp313t-win_arm64.whl", hash = "sha256:225c832a13326e34f212d2072982bb1adb210e0cc0b153e688743018c94a2681", size = 2417234, upload-time = "2025-04-12T17:49:08.399Z" },
+]
+
+[[package]]
+name = "pluggy"
+version = "1.6.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f9/e2/3e91f31a7d2b083fe6ef3fa267035b518369d9511ffab804f839851d2779/pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3", size = 69412, upload-time = "2025-05-15T12:30:07.975Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746", size = 20538, upload-time = "2025-05-15T12:30:06.134Z" },
+]
+
+[[package]]
+name = "ply"
+version = "3.11"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e5/69/882ee5c9d017149285cab114ebeab373308ef0f874fcdac9beb90e0ac4da/ply-3.11.tar.gz", hash = "sha256:00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3", size = 159130, upload-time = "2018-02-15T19:01:31.097Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl", hash = "sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce", size = 49567, upload-time = "2018-02-15T19:01:27.172Z" },
+]
+
+[[package]]
+name = "pycparser"
+version = "2.22"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/1d/b2/31537cf4b1ca988837256c910a668b553fceb8f069bedc4b1c826024b52c/pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6", size = 172736, upload-time = "2024-03-30T13:22:22.564Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc", size = 117552, upload-time = "2024-03-30T13:22:20.476Z" },
+]
+
+[[package]]
+name = "pycpfcnpj"
+version = "1.8"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/d5/de/3439a4d7838410294f47aa02ae359f16ff81f154ea9b1526b18123d8d47e/pycpfcnpj-1.8.tar.gz", hash = "sha256:c9e95d2790d582aa7a7deb4b87da252364c670bd1d78f69f3d8f8f82479ed969", size = 5127, upload-time = "2024-01-17T00:02:46.406Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/3e/d9/5182d830ac9dc5ab20cfa11bf68520ca79809a67c5288d89178d63682669/pycpfcnpj-1.8-py3-none-any.whl", hash = "sha256:771d2ff00511f70453f2df8a20f529bad8deb8e35315a15ba0350d3b5360ef91", size = 6928, upload-time = "2024-01-17T00:02:45.338Z" },
+]
+
+[[package]]
+name = "pydantic"
+version = "2.11.4"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "annotated-types" },
+ { name = "pydantic-core" },
+ { name = "typing-extensions" },
+ { name = "typing-inspection" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/77/ab/5250d56ad03884ab5efd07f734203943c8a8ab40d551e208af81d0257bf2/pydantic-2.11.4.tar.gz", hash = "sha256:32738d19d63a226a52eed76645a98ee07c1f410ee41d93b4afbfa85ed8111c2d", size = 786540, upload-time = "2025-04-29T20:38:55.02Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e7/12/46b65f3534d099349e38ef6ec98b1a5a81f42536d17e0ba382c28c67ba67/pydantic-2.11.4-py3-none-any.whl", hash = "sha256:d9615eaa9ac5a063471da949c8fc16376a84afb5024688b3ff885693506764eb", size = 443900, upload-time = "2025-04-29T20:38:52.724Z" },
+]
+
+[package.optional-dependencies]
+email = [
+ { name = "email-validator" },
+]
+
+[[package]]
+name = "pydantic-core"
+version = "2.33.2"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/ad/88/5f2260bdfae97aabf98f1778d43f69574390ad787afb646292a638c923d4/pydantic_core-2.33.2.tar.gz", hash = "sha256:7cb8bc3605c29176e1b105350d2e6474142d7c1bd1d9327c4a9bdb46bf827acc", size = 435195, upload-time = "2025-04-23T18:33:52.104Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/46/8c/99040727b41f56616573a28771b1bfa08a3d3fe74d3d513f01251f79f172/pydantic_core-2.33.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:1082dd3e2d7109ad8b7da48e1d4710c8d06c253cbc4a27c1cff4fbcaa97a9e3f", size = 2015688, upload-time = "2025-04-23T18:31:53.175Z" },
+ { url = "https://files.pythonhosted.org/packages/3a/cc/5999d1eb705a6cefc31f0b4a90e9f7fc400539b1a1030529700cc1b51838/pydantic_core-2.33.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f517ca031dfc037a9c07e748cefd8d96235088b83b4f4ba8939105d20fa1dcd6", size = 1844808, upload-time = "2025-04-23T18:31:54.79Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/5e/a0a7b8885c98889a18b6e376f344da1ef323d270b44edf8174d6bce4d622/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a9f2c9dd19656823cb8250b0724ee9c60a82f3cdf68a080979d13092a3b0fef", size = 1885580, upload-time = "2025-04-23T18:31:57.393Z" },
+ { url = "https://files.pythonhosted.org/packages/3b/2a/953581f343c7d11a304581156618c3f592435523dd9d79865903272c256a/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2b0a451c263b01acebe51895bfb0e1cc842a5c666efe06cdf13846c7418caa9a", size = 1973859, upload-time = "2025-04-23T18:31:59.065Z" },
+ { url = "https://files.pythonhosted.org/packages/e6/55/f1a813904771c03a3f97f676c62cca0c0a4138654107c1b61f19c644868b/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ea40a64d23faa25e62a70ad163571c0b342b8bf66d5fa612ac0dec4f069d916", size = 2120810, upload-time = "2025-04-23T18:32:00.78Z" },
+ { url = "https://files.pythonhosted.org/packages/aa/c3/053389835a996e18853ba107a63caae0b9deb4a276c6b472931ea9ae6e48/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0fb2d542b4d66f9470e8065c5469ec676978d625a8b7a363f07d9a501a9cb36a", size = 2676498, upload-time = "2025-04-23T18:32:02.418Z" },
+ { url = "https://files.pythonhosted.org/packages/eb/3c/f4abd740877a35abade05e437245b192f9d0ffb48bbbbd708df33d3cda37/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fdac5d6ffa1b5a83bca06ffe7583f5576555e6c8b3a91fbd25ea7780f825f7d", size = 2000611, upload-time = "2025-04-23T18:32:04.152Z" },
+ { url = "https://files.pythonhosted.org/packages/59/a7/63ef2fed1837d1121a894d0ce88439fe3e3b3e48c7543b2a4479eb99c2bd/pydantic_core-2.33.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:04a1a413977ab517154eebb2d326da71638271477d6ad87a769102f7c2488c56", size = 2107924, upload-time = "2025-04-23T18:32:06.129Z" },
+ { url = "https://files.pythonhosted.org/packages/04/8f/2551964ef045669801675f1cfc3b0d74147f4901c3ffa42be2ddb1f0efc4/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:c8e7af2f4e0194c22b5b37205bfb293d166a7344a5b0d0eaccebc376546d77d5", size = 2063196, upload-time = "2025-04-23T18:32:08.178Z" },
+ { url = "https://files.pythonhosted.org/packages/26/bd/d9602777e77fc6dbb0c7db9ad356e9a985825547dce5ad1d30ee04903918/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:5c92edd15cd58b3c2d34873597a1e20f13094f59cf88068adb18947df5455b4e", size = 2236389, upload-time = "2025-04-23T18:32:10.242Z" },
+ { url = "https://files.pythonhosted.org/packages/42/db/0e950daa7e2230423ab342ae918a794964b053bec24ba8af013fc7c94846/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:65132b7b4a1c0beded5e057324b7e16e10910c106d43675d9bd87d4f38dde162", size = 2239223, upload-time = "2025-04-23T18:32:12.382Z" },
+ { url = "https://files.pythonhosted.org/packages/58/4d/4f937099c545a8a17eb52cb67fe0447fd9a373b348ccfa9a87f141eeb00f/pydantic_core-2.33.2-cp313-cp313-win32.whl", hash = "sha256:52fb90784e0a242bb96ec53f42196a17278855b0f31ac7c3cc6f5c1ec4811849", size = 1900473, upload-time = "2025-04-23T18:32:14.034Z" },
+ { url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl", hash = "sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9", size = 1955269, upload-time = "2025-04-23T18:32:15.783Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/86/1beda0576969592f1497b4ce8e7bc8cbdf614c352426271b1b10d5f0aa64/pydantic_core-2.33.2-cp313-cp313-win_arm64.whl", hash = "sha256:e80b087132752f6b3d714f041ccf74403799d3b23a72722ea2e6ba2e892555b9", size = 1893921, upload-time = "2025-04-23T18:32:18.473Z" },
+ { url = "https://files.pythonhosted.org/packages/a4/7d/e09391c2eebeab681df2b74bfe6c43422fffede8dc74187b2b0bf6fd7571/pydantic_core-2.33.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:61c18fba8e5e9db3ab908620af374db0ac1baa69f0f32df4f61ae23f15e586ac", size = 1806162, upload-time = "2025-04-23T18:32:20.188Z" },
+ { url = "https://files.pythonhosted.org/packages/f1/3d/847b6b1fed9f8ed3bb95a9ad04fbd0b212e832d4f0f50ff4d9ee5a9f15cf/pydantic_core-2.33.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95237e53bb015f67b63c91af7518a62a8660376a6a0db19b89acc77a4d6199f5", size = 1981560, upload-time = "2025-04-23T18:32:22.354Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/9a/e73262f6c6656262b5fdd723ad90f518f579b7bc8622e43a942eec53c938/pydantic_core-2.33.2-cp313-cp313t-win_amd64.whl", hash = "sha256:c2fc0a768ef76c15ab9238afa6da7f69895bb5d1ee83aeea2e3509af4472d0b9", size = 1935777, upload-time = "2025-04-23T18:32:25.088Z" },
+]
+
+[[package]]
+name = "pydantic-extra-types"
+version = "2.10.4"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "pydantic" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/d9/33/0cde418479949cd6aa1ac669deffcd1c37d8d9cead99ddb48f344e75f2e3/pydantic_extra_types-2.10.4.tar.gz", hash = "sha256:bf8236a63d061eb3ecb1b2afa78ba0f97e3f67aa11dbbff56ec90491e8772edc", size = 95269, upload-time = "2025-04-28T08:18:34.869Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/df/ac/bee195ee49256385fad460ce420aeb42703a648dba487c20b6fd107e42ea/pydantic_extra_types-2.10.4-py3-none-any.whl", hash = "sha256:ce064595af3cab05e39ae062752432dcd0362ff80f7e695b61a3493a4d842db7", size = 37276, upload-time = "2025-04-28T08:18:31.617Z" },
+]
+
+[[package]]
+name = "pydantic-settings"
+version = "2.9.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "pydantic" },
+ { name = "python-dotenv" },
+ { name = "typing-inspection" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/67/1d/42628a2c33e93f8e9acbde0d5d735fa0850f3e6a2f8cb1eb6c40b9a732ac/pydantic_settings-2.9.1.tar.gz", hash = "sha256:c509bf79d27563add44e8446233359004ed85066cd096d8b510f715e6ef5d268", size = 163234, upload-time = "2025-04-18T16:44:48.265Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/b6/5f/d6d641b490fd3ec2c4c13b4244d68deea3a1b970a97be64f34fb5504ff72/pydantic_settings-2.9.1-py3-none-any.whl", hash = "sha256:59b4f431b1defb26fe620c71a7d3968a710d719f5f4cdbbdb7926edeb770f6ef", size = 44356, upload-time = "2025-04-18T16:44:46.617Z" },
+]
+
+[[package]]
+name = "pydyf"
+version = "0.11.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/2e/c2/97fc6ce4ce0045080dc99446def812081b57750ed8aa67bfdfafa4561fe5/pydyf-0.11.0.tar.gz", hash = "sha256:394dddf619cca9d0c55715e3c55ea121a9bf9cbc780cdc1201a2427917b86b64", size = 17769, upload-time = "2024-07-12T12:26:51.95Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/c9/ac/d5db977deaf28c6ecbc61bbca269eb3e8f0b3a1f55c8549e5333e606e005/pydyf-0.11.0-py3-none-any.whl", hash = "sha256:0aaf9e2ebbe786ec7a78ec3fbffa4cdcecde53fd6f563221d53c6bc1328848a3", size = 8104, upload-time = "2024-07-12T12:26:49.896Z" },
+]
+
+[[package]]
+name = "pyphen"
+version = "0.17.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/69/56/e4d7e1bd70d997713649c5ce530b2d15a5fc2245a74ca820fc2d51d89d4d/pyphen-0.17.2.tar.gz", hash = "sha256:f60647a9c9b30ec6c59910097af82bc5dd2d36576b918e44148d8b07ef3b4aa3", size = 2079470, upload-time = "2025-01-20T13:18:36.296Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/7b/1f/c2142d2edf833a90728e5cdeb10bdbdc094dde8dbac078cee0cf33f5e11b/pyphen-0.17.2-py3-none-any.whl", hash = "sha256:3a07fb017cb2341e1d9ff31b8634efb1ae4dc4b130468c7c39dd3d32e7c3affd", size = 2079358, upload-time = "2025-01-20T13:18:29.629Z" },
+]
+
+[[package]]
+name = "pytest"
+version = "8.3.5"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "colorama", marker = "sys_platform == 'win32'" },
+ { name = "iniconfig" },
+ { name = "packaging" },
+ { name = "pluggy" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/ae/3c/c9d525a414d506893f0cd8a8d0de7706446213181570cdbd766691164e40/pytest-8.3.5.tar.gz", hash = "sha256:f4efe70cc14e511565ac476b57c279e12a855b11f48f212af1080ef2263d3845", size = 1450891, upload-time = "2025-03-02T12:54:54.503Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/30/3d/64ad57c803f1fa1e963a7946b6e0fea4a70df53c1a7fed304586539c2bac/pytest-8.3.5-py3-none-any.whl", hash = "sha256:c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820", size = 343634, upload-time = "2025-03-02T12:54:52.069Z" },
+]
+
+[[package]]
+name = "pytest-cov"
+version = "6.1.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "coverage" },
+ { name = "pytest" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/25/69/5f1e57f6c5a39f81411b550027bf72842c4567ff5fd572bed1edc9e4b5d9/pytest_cov-6.1.1.tar.gz", hash = "sha256:46935f7aaefba760e716c2ebfbe1c216240b9592966e7da99ea8292d4d3e2a0a", size = 66857, upload-time = "2025-04-05T14:07:51.592Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/28/d0/def53b4a790cfb21483016430ed828f64830dd981ebe1089971cd10cab25/pytest_cov-6.1.1-py3-none-any.whl", hash = "sha256:bddf29ed2d0ab6f4df17b4c55b0a657287db8684af9c42ea546b21b1041b3dde", size = 23841, upload-time = "2025-04-05T14:07:49.641Z" },
+]
+
+[[package]]
+name = "python-dateutil"
+version = "2.9.0.post0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "six" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", size = 342432, upload-time = "2024-03-01T18:36:20.211Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892, upload-time = "2024-03-01T18:36:18.57Z" },
+]
+
+[[package]]
+name = "python-dotenv"
+version = "1.1.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/88/2c/7bb1416c5620485aa793f2de31d3df393d3686aa8a8506d11e10e13c5baf/python_dotenv-1.1.0.tar.gz", hash = "sha256:41f90bc6f5f177fb41f53e87666db362025010eb28f60a01c9143bfa33a2b2d5", size = 39920, upload-time = "2025-03-25T10:14:56.835Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl", hash = "sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d", size = 20256, upload-time = "2025-03-25T10:14:55.034Z" },
+]
+
+[[package]]
+name = "pytz"
+version = "2025.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f8/bf/abbd3cdfb8fbc7fb3d4d38d320f2441b1e7cbe29be4f23797b4a2b5d8aac/pytz-2025.2.tar.gz", hash = "sha256:360b9e3dbb49a209c21ad61809c7fb453643e048b38924c765813546746e81c3", size = 320884, upload-time = "2025-03-25T02:25:00.538Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl", hash = "sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00", size = 509225, upload-time = "2025-03-25T02:24:58.468Z" },
+]
+
+[[package]]
+name = "requests"
+version = "2.32.3"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "certifi" },
+ { name = "charset-normalizer" },
+ { name = "idna" },
+ { name = "urllib3" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/63/70/2bf7780ad2d390a8d301ad0b550f1581eadbd9a20f896afe06353c2a2913/requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760", size = 131218, upload-time = "2024-05-29T15:37:49.536Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6", size = 64928, upload-time = "2024-05-29T15:37:47.027Z" },
+]
+
+[[package]]
+name = "ruff"
+version = "0.11.11"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/b2/53/ae4857030d59286924a8bdb30d213d6ff22d8f0957e738d0289990091dd8/ruff-0.11.11.tar.gz", hash = "sha256:7774173cc7c1980e6bf67569ebb7085989a78a103922fb83ef3dfe230cd0687d", size = 4186707, upload-time = "2025-05-22T19:19:34.363Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/b1/14/f2326676197bab099e2a24473158c21656fbf6a207c65f596ae15acb32b9/ruff-0.11.11-py3-none-linux_armv6l.whl", hash = "sha256:9924e5ae54125ed8958a4f7de320dab7380f6e9fa3195e3dc3b137c6842a0092", size = 10229049, upload-time = "2025-05-22T19:18:45.516Z" },
+ { url = "https://files.pythonhosted.org/packages/9a/f3/bff7c92dd66c959e711688b2e0768e486bbca46b2f35ac319bb6cce04447/ruff-0.11.11-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:c8a93276393d91e952f790148eb226658dd275cddfde96c6ca304873f11d2ae4", size = 11053601, upload-time = "2025-05-22T19:18:49.269Z" },
+ { url = "https://files.pythonhosted.org/packages/e2/38/8e1a3efd0ef9d8259346f986b77de0f62c7a5ff4a76563b6b39b68f793b9/ruff-0.11.11-py3-none-macosx_11_0_arm64.whl", hash = "sha256:d6e333dbe2e6ae84cdedefa943dfd6434753ad321764fd937eef9d6b62022bcd", size = 10367421, upload-time = "2025-05-22T19:18:51.754Z" },
+ { url = "https://files.pythonhosted.org/packages/b4/50/557ad9dd4fb9d0bf524ec83a090a3932d284d1a8b48b5906b13b72800e5f/ruff-0.11.11-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7885d9a5e4c77b24e8c88aba8c80be9255fa22ab326019dac2356cff42089fc6", size = 10581980, upload-time = "2025-05-22T19:18:54.011Z" },
+ { url = "https://files.pythonhosted.org/packages/c4/b2/e2ed82d6e2739ece94f1bdbbd1d81b712d3cdaf69f0a1d1f1a116b33f9ad/ruff-0.11.11-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:1b5ab797fcc09121ed82e9b12b6f27e34859e4227080a42d090881be888755d4", size = 10089241, upload-time = "2025-05-22T19:18:56.041Z" },
+ { url = "https://files.pythonhosted.org/packages/3d/9f/b4539f037a5302c450d7c695c82f80e98e48d0d667ecc250e6bdeb49b5c3/ruff-0.11.11-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e231ff3132c1119ece836487a02785f099a43992b95c2f62847d29bace3c75ac", size = 11699398, upload-time = "2025-05-22T19:18:58.248Z" },
+ { url = "https://files.pythonhosted.org/packages/61/fb/32e029d2c0b17df65e6eaa5ce7aea5fbeaed22dddd9fcfbbf5fe37c6e44e/ruff-0.11.11-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:a97c9babe1d4081037a90289986925726b802d180cca784ac8da2bbbc335f709", size = 12427955, upload-time = "2025-05-22T19:19:00.981Z" },
+ { url = "https://files.pythonhosted.org/packages/6e/e3/160488dbb11f18c8121cfd588e38095ba779ae208292765972f7732bfd95/ruff-0.11.11-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d8c4ddcbe8a19f59f57fd814b8b117d4fcea9bee7c0492e6cf5fdc22cfa563c8", size = 12069803, upload-time = "2025-05-22T19:19:03.258Z" },
+ { url = "https://files.pythonhosted.org/packages/ff/16/3b006a875f84b3d0bff24bef26b8b3591454903f6f754b3f0a318589dcc3/ruff-0.11.11-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6224076c344a7694c6fbbb70d4f2a7b730f6d47d2a9dc1e7f9d9bb583faf390b", size = 11242630, upload-time = "2025-05-22T19:19:05.871Z" },
+ { url = "https://files.pythonhosted.org/packages/65/0d/0338bb8ac0b97175c2d533e9c8cdc127166de7eb16d028a43c5ab9e75abd/ruff-0.11.11-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:882821fcdf7ae8db7a951df1903d9cb032bbe838852e5fc3c2b6c3ab54e39875", size = 11507310, upload-time = "2025-05-22T19:19:08.584Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/bf/d7130eb26174ce9b02348b9f86d5874eafbf9f68e5152e15e8e0a392e4a3/ruff-0.11.11-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:dcec2d50756463d9df075a26a85a6affbc1b0148873da3997286caf1ce03cae1", size = 10441144, upload-time = "2025-05-22T19:19:13.621Z" },
+ { url = "https://files.pythonhosted.org/packages/b3/f3/4be2453b258c092ff7b1761987cf0749e70ca1340cd1bfb4def08a70e8d8/ruff-0.11.11-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:99c28505ecbaeb6594701a74e395b187ee083ee26478c1a795d35084d53ebd81", size = 10081987, upload-time = "2025-05-22T19:19:15.821Z" },
+ { url = "https://files.pythonhosted.org/packages/6c/6e/dfa4d2030c5b5c13db158219f2ec67bf333e8a7748dccf34cfa2a6ab9ebc/ruff-0.11.11-py3-none-musllinux_1_2_i686.whl", hash = "sha256:9263f9e5aa4ff1dec765e99810f1cc53f0c868c5329b69f13845f699fe74f639", size = 11073922, upload-time = "2025-05-22T19:19:18.104Z" },
+ { url = "https://files.pythonhosted.org/packages/ff/f4/f7b0b0c3d32b593a20ed8010fa2c1a01f2ce91e79dda6119fcc51d26c67b/ruff-0.11.11-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:64ac6f885e3ecb2fdbb71de2701d4e34526651f1e8503af8fb30d4915a3fe345", size = 11568537, upload-time = "2025-05-22T19:19:20.889Z" },
+ { url = "https://files.pythonhosted.org/packages/d2/46/0e892064d0adc18bcc81deed9aaa9942a27fd2cd9b1b7791111ce468c25f/ruff-0.11.11-py3-none-win32.whl", hash = "sha256:1adcb9a18802268aaa891ffb67b1c94cd70578f126637118e8099b8e4adcf112", size = 10536492, upload-time = "2025-05-22T19:19:23.642Z" },
+ { url = "https://files.pythonhosted.org/packages/1b/d9/232e79459850b9f327e9f1dc9c047a2a38a6f9689e1ec30024841fc4416c/ruff-0.11.11-py3-none-win_amd64.whl", hash = "sha256:748b4bb245f11e91a04a4ff0f96e386711df0a30412b9fe0c74d5bdc0e4a531f", size = 11612562, upload-time = "2025-05-22T19:19:27.013Z" },
+ { url = "https://files.pythonhosted.org/packages/ce/eb/09c132cff3cc30b2e7244191dcce69437352d6d6709c0adf374f3e6f476e/ruff-0.11.11-py3-none-win_arm64.whl", hash = "sha256:6c51f136c0364ab1b774767aa8b86331bd8e9d414e2d107db7a2189f35ea1f7b", size = 10735951, upload-time = "2025-05-22T19:19:30.043Z" },
+]
+
+[[package]]
+name = "s3transfer"
+version = "0.13.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/ed/5d/9dcc100abc6711e8247af5aa561fc07c4a046f72f659c3adea9a449e191a/s3transfer-0.13.0.tar.gz", hash = "sha256:f5e6db74eb7776a37208001113ea7aa97695368242b364d73e91c981ac522177", size = 150232, upload-time = "2025-05-22T19:24:50.245Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/18/17/22bf8155aa0ea2305eefa3a6402e040df7ebe512d1310165eda1e233c3f8/s3transfer-0.13.0-py3-none-any.whl", hash = "sha256:0148ef34d6dd964d0d8cf4311b2b21c474693e57c2e069ec708ce043d2b527be", size = 85152, upload-time = "2025-05-22T19:24:48.703Z" },
+]
+
+[[package]]
+name = "six"
+version = "1.17.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81", size = 34031, upload-time = "2024-12-04T17:35:28.174Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 11050, upload-time = "2024-12-04T17:35:26.475Z" },
+]
+
+[[package]]
+name = "smart-open"
+version = "7.1.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "wrapt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/21/30/1f41c3d3b8cec82024b4b277bfd4e5b18b765ae7279eb9871fa25c503778/smart_open-7.1.0.tar.gz", hash = "sha256:a4f09f84f0f6d3637c6543aca7b5487438877a21360e7368ccf1f704789752ba", size = 72044, upload-time = "2024-12-17T13:19:17.71Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/7a/18/9a8d9f01957aa1f8bbc5676d54c2e33102d247e146c1a3679d3bd5cc2e3a/smart_open-7.1.0-py3-none-any.whl", hash = "sha256:4b8489bb6058196258bafe901730c7db0dcf4f083f316e97269c66f45502055b", size = 61746, upload-time = "2024-12-17T13:19:21.076Z" },
+]
+
+[package.optional-dependencies]
+s3 = [
+ { name = "boto3" },
+]
+
+[[package]]
+name = "sqlite-fts4"
+version = "1.0.3"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/c2/6d/9dad6c3b433ab8912ace969c66abd595f8e0a2ccccdb73602b1291dbda29/sqlite-fts4-1.0.3.tar.gz", hash = "sha256:78b05eeaf6680e9dbed8986bde011e9c086a06cb0c931b3cf7da94c214e8930c", size = 9718, upload-time = "2022-07-30T01:14:26.943Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/51/29/0096e8b1811aaa78cfb296996f621f41120c21c2f5cd448ae1d54979d9fc/sqlite_fts4-1.0.3-py3-none-any.whl", hash = "sha256:0359edd8dea6fd73c848989e1e2b1f31a50fe5f9d7272299ff0e8dbaa62d035f", size = 9972, upload-time = "2022-07-30T01:14:24.942Z" },
+]
+
+[[package]]
+name = "sqlite-utils"
+version = "3.38"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "click" },
+ { name = "click-default-group" },
+ { name = "pluggy" },
+ { name = "python-dateutil" },
+ { name = "sqlite-fts4" },
+ { name = "tabulate" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/51/43/ce9183a21911e0b73248c8fb83f8b8038515cb80053912c2a009e9765564/sqlite_utils-3.38.tar.gz", hash = "sha256:1ae77b931384052205a15478d429464f6c67a3ac3b4eafd3c674ac900f623aab", size = 214449, upload-time = "2024-11-23T22:49:40.308Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/4d/eb/f8e8e827805f810838efff3311cccd2601238c5fa3fc35c1f878709e161b/sqlite_utils-3.38-py3-none-any.whl", hash = "sha256:8a27441015c3b2ef475f555861f7a2592f73bc60d247af9803a11b65fc605bf9", size = 68183, upload-time = "2024-11-23T22:49:38.289Z" },
+]
+
+[[package]]
+name = "tabulate"
+version = "0.9.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/ec/fe/802052aecb21e3797b8f7902564ab6ea0d60ff8ca23952079064155d1ae1/tabulate-0.9.0.tar.gz", hash = "sha256:0095b12bf5966de529c0feb1fa08671671b3368eec77d7ef7ab114be2c068b3c", size = 81090, upload-time = "2022-10-06T17:21:48.54Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl", hash = "sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f", size = 35252, upload-time = "2022-10-06T17:21:44.262Z" },
+]
+
+[[package]]
+name = "tinycss2"
+version = "1.4.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "webencodings" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/7a/fd/7a5ee21fd08ff70d3d33a5781c255cbe779659bd03278feb98b19ee550f4/tinycss2-1.4.0.tar.gz", hash = "sha256:10c0972f6fc0fbee87c3edb76549357415e94548c1ae10ebccdea16fb404a9b7", size = 87085, upload-time = "2024-10-24T14:58:29.895Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl", hash = "sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289", size = 26610, upload-time = "2024-10-24T14:58:28.029Z" },
+]
+
+[[package]]
+name = "tinyhtml5"
+version = "2.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "webencodings" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fd/03/6111ed99e9bf7dfa1c30baeef0e0fb7e0bd387bd07f8e5b270776fe1de3f/tinyhtml5-2.0.0.tar.gz", hash = "sha256:086f998833da24c300c414d9fe81d9b368fd04cb9d2596a008421cbc705fcfcc", size = 179507, upload-time = "2024-10-29T15:37:14.078Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/5c/de/27c57899297163a4a84104d5cec0af3b1ac5faf62f44667e506373c6b8ce/tinyhtml5-2.0.0-py3-none-any.whl", hash = "sha256:13683277c5b176d070f82d099d977194b7a1e26815b016114f581a74bbfbf47e", size = 39793, upload-time = "2024-10-29T15:37:11.743Z" },
+]
+
+[[package]]
+name = "typing-extensions"
+version = "4.13.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f6/37/23083fcd6e35492953e8d2aaaa68b860eb422b34627b13f2ce3eb6106061/typing_extensions-4.13.2.tar.gz", hash = "sha256:e6c81219bd689f51865d9e372991c540bda33a0379d5573cddb9a3a23f7caaef", size = 106967, upload-time = "2025-04-10T14:19:05.416Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl", hash = "sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c", size = 45806, upload-time = "2025-04-10T14:19:03.967Z" },
+]
+
+[[package]]
+name = "typing-inspection"
+version = "0.4.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/f8/b1/0c11f5058406b3af7609f121aaa6b609744687f1d158b3c3a5bf4cc94238/typing_inspection-0.4.1.tar.gz", hash = "sha256:6ae134cc0203c33377d43188d4064e9b357dba58cff3185f22924610e70a9d28", size = 75726, upload-time = "2025-05-21T18:55:23.885Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/17/69/cd203477f944c353c31bade965f880aa1061fd6bf05ded0726ca845b6ff7/typing_inspection-0.4.1-py3-none-any.whl", hash = "sha256:389055682238f53b04f7badcb49b989835495a96700ced5dab2d8feae4b26f51", size = 14552, upload-time = "2025-05-21T18:55:22.152Z" },
+]
+
+[[package]]
+name = "urllib3"
+version = "2.4.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/8a/78/16493d9c386d8e60e442a35feac5e00f0913c0f4b7c217c11e8ec2ff53e0/urllib3-2.4.0.tar.gz", hash = "sha256:414bc6535b787febd7567804cc015fee39daab8ad86268f1310a9250697de466", size = 390672, upload-time = "2025-04-10T15:23:39.232Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl", hash = "sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813", size = 128680, upload-time = "2025-04-10T15:23:37.377Z" },
+]
+
+[[package]]
+name = "wcwidth"
+version = "0.2.13"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/6c/63/53559446a878410fc5a5974feb13d31d78d752eb18aeba59c7fef1af7598/wcwidth-0.2.13.tar.gz", hash = "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5", size = 101301, upload-time = "2024-01-06T02:10:57.829Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859", size = 34166, upload-time = "2024-01-06T02:10:55.763Z" },
+]
+
+[[package]]
+name = "weasyprint"
+version = "65.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "cffi" },
+ { name = "cssselect2" },
+ { name = "fonttools", extra = ["woff"] },
+ { name = "pillow" },
+ { name = "pydyf" },
+ { name = "pyphen" },
+ { name = "tinycss2" },
+ { name = "tinyhtml5" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/38/76/7f865f0019120be20276813097b5729b8487b93dd4aff339aa77ed8c7ad2/weasyprint-65.1.tar.gz", hash = "sha256:120281bdbd42ffaa7d7e5cedbe3182a2cef36ea5ad97fe9f357e43be6a1e58ea", size = 499028, upload-time = "2025-04-14T12:15:02.654Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/fe/9a/14f4e5fd4bba988d3684602b72f04c0b299c0f368d26c11a79ceab97aa68/weasyprint-65.1-py3-none-any.whl", hash = "sha256:9baa54282dc86929f6b877034d06b0416e2a7cacb1af3f73d80960592fd0af89", size = 298040, upload-time = "2025-04-14T12:15:00.695Z" },
+]
+
+[[package]]
+name = "webencodings"
+version = "0.5.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/0b/02/ae6ceac1baeda530866a85075641cec12989bd8d31af6d5ab4a3e8c92f47/webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923", size = 9721, upload-time = "2017-04-05T20:21:34.189Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78", size = 11774, upload-time = "2017-04-05T20:21:32.581Z" },
+]
+
+[[package]]
+name = "wrapt"
+version = "1.17.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/c3/fc/e91cc220803d7bc4db93fb02facd8461c37364151b8494762cc88b0fbcef/wrapt-1.17.2.tar.gz", hash = "sha256:41388e9d4d1522446fe79d3213196bd9e3b301a336965b9e27ca2788ebd122f3", size = 55531, upload-time = "2025-01-14T10:35:45.465Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ce/b9/0ffd557a92f3b11d4c5d5e0c5e4ad057bd9eb8586615cdaf901409920b14/wrapt-1.17.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:6ed6ffac43aecfe6d86ec5b74b06a5be33d5bb9243d055141e8cabb12aa08125", size = 53800, upload-time = "2025-01-14T10:34:21.571Z" },
+ { url = "https://files.pythonhosted.org/packages/c0/ef/8be90a0b7e73c32e550c73cfb2fa09db62234227ece47b0e80a05073b375/wrapt-1.17.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:35621ae4c00e056adb0009f8e86e28eb4a41a4bfa8f9bfa9fca7d343fe94f998", size = 38824, upload-time = "2025-01-14T10:34:22.999Z" },
+ { url = "https://files.pythonhosted.org/packages/36/89/0aae34c10fe524cce30fe5fc433210376bce94cf74d05b0d68344c8ba46e/wrapt-1.17.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a604bf7a053f8362d27eb9fefd2097f82600b856d5abe996d623babd067b1ab5", size = 38920, upload-time = "2025-01-14T10:34:25.386Z" },
+ { url = "https://files.pythonhosted.org/packages/3b/24/11c4510de906d77e0cfb5197f1b1445d4fec42c9a39ea853d482698ac681/wrapt-1.17.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5cbabee4f083b6b4cd282f5b817a867cf0b1028c54d445b7ec7cfe6505057cf8", size = 88690, upload-time = "2025-01-14T10:34:28.058Z" },
+ { url = "https://files.pythonhosted.org/packages/71/d7/cfcf842291267bf455b3e266c0c29dcb675b5540ee8b50ba1699abf3af45/wrapt-1.17.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:49703ce2ddc220df165bd2962f8e03b84c89fee2d65e1c24a7defff6f988f4d6", size = 80861, upload-time = "2025-01-14T10:34:29.167Z" },
+ { url = "https://files.pythonhosted.org/packages/d5/66/5d973e9f3e7370fd686fb47a9af3319418ed925c27d72ce16b791231576d/wrapt-1.17.2-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8112e52c5822fc4253f3901b676c55ddf288614dc7011634e2719718eaa187dc", size = 89174, upload-time = "2025-01-14T10:34:31.702Z" },
+ { url = "https://files.pythonhosted.org/packages/a7/d3/8e17bb70f6ae25dabc1aaf990f86824e4fd98ee9cadf197054e068500d27/wrapt-1.17.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:9fee687dce376205d9a494e9c121e27183b2a3df18037f89d69bd7b35bcf59e2", size = 86721, upload-time = "2025-01-14T10:34:32.91Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/54/f170dfb278fe1c30d0ff864513cff526d624ab8de3254b20abb9cffedc24/wrapt-1.17.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:18983c537e04d11cf027fbb60a1e8dfd5190e2b60cc27bc0808e653e7b218d1b", size = 79763, upload-time = "2025-01-14T10:34:34.903Z" },
+ { url = "https://files.pythonhosted.org/packages/4a/98/de07243751f1c4a9b15c76019250210dd3486ce098c3d80d5f729cba029c/wrapt-1.17.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:703919b1633412ab54bcf920ab388735832fdcb9f9a00ae49387f0fe67dad504", size = 87585, upload-time = "2025-01-14T10:34:36.13Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/f0/13925f4bd6548013038cdeb11ee2cbd4e37c30f8bfd5db9e5a2a370d6e20/wrapt-1.17.2-cp313-cp313-win32.whl", hash = "sha256:abbb9e76177c35d4e8568e58650aa6926040d6a9f6f03435b7a522bf1c487f9a", size = 36676, upload-time = "2025-01-14T10:34:37.962Z" },
+ { url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl", hash = "sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845", size = 38871, upload-time = "2025-01-14T10:34:39.13Z" },
+ { url = "https://files.pythonhosted.org/packages/3d/bc/30f903f891a82d402ffb5fda27ec1d621cc97cb74c16fea0b6141f1d4e87/wrapt-1.17.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:4a721d3c943dae44f8e243b380cb645a709ba5bd35d3ad27bc2ed947e9c68192", size = 56312, upload-time = "2025-01-14T10:34:40.604Z" },
+ { url = "https://files.pythonhosted.org/packages/8a/04/c97273eb491b5f1c918857cd26f314b74fc9b29224521f5b83f872253725/wrapt-1.17.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:766d8bbefcb9e00c3ac3b000d9acc51f1b399513f44d77dfe0eb026ad7c9a19b", size = 40062, upload-time = "2025-01-14T10:34:45.011Z" },
+ { url = "https://files.pythonhosted.org/packages/4e/ca/3b7afa1eae3a9e7fefe499db9b96813f41828b9fdb016ee836c4c379dadb/wrapt-1.17.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e496a8ce2c256da1eb98bd15803a79bee00fc351f5dfb9ea82594a3f058309e0", size = 40155, upload-time = "2025-01-14T10:34:47.25Z" },
+ { url = "https://files.pythonhosted.org/packages/89/be/7c1baed43290775cb9030c774bc53c860db140397047cc49aedaf0a15477/wrapt-1.17.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40d615e4fe22f4ad3528448c193b218e077656ca9ccb22ce2cb20db730f8d306", size = 113471, upload-time = "2025-01-14T10:34:50.934Z" },
+ { url = "https://files.pythonhosted.org/packages/32/98/4ed894cf012b6d6aae5f5cc974006bdeb92f0241775addad3f8cd6ab71c8/wrapt-1.17.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a5aaeff38654462bc4b09023918b7f21790efb807f54c000a39d41d69cf552cb", size = 101208, upload-time = "2025-01-14T10:34:52.297Z" },
+ { url = "https://files.pythonhosted.org/packages/ea/fd/0c30f2301ca94e655e5e057012e83284ce8c545df7661a78d8bfca2fac7a/wrapt-1.17.2-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9a7d15bbd2bc99e92e39f49a04653062ee6085c0e18b3b7512a4f2fe91f2d681", size = 109339, upload-time = "2025-01-14T10:34:53.489Z" },
+ { url = "https://files.pythonhosted.org/packages/75/56/05d000de894c4cfcb84bcd6b1df6214297b8089a7bd324c21a4765e49b14/wrapt-1.17.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:e3890b508a23299083e065f435a492b5435eba6e304a7114d2f919d400888cc6", size = 110232, upload-time = "2025-01-14T10:34:55.327Z" },
+ { url = "https://files.pythonhosted.org/packages/53/f8/c3f6b2cf9b9277fb0813418e1503e68414cd036b3b099c823379c9575e6d/wrapt-1.17.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:8c8b293cd65ad716d13d8dd3624e42e5a19cc2a2f1acc74b30c2c13f15cb61a6", size = 100476, upload-time = "2025-01-14T10:34:58.055Z" },
+ { url = "https://files.pythonhosted.org/packages/a7/b1/0bb11e29aa5139d90b770ebbfa167267b1fc548d2302c30c8f7572851738/wrapt-1.17.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4c82b8785d98cdd9fed4cac84d765d234ed3251bd6afe34cb7ac523cb93e8b4f", size = 106377, upload-time = "2025-01-14T10:34:59.3Z" },
+ { url = "https://files.pythonhosted.org/packages/6a/e1/0122853035b40b3f333bbb25f1939fc1045e21dd518f7f0922b60c156f7c/wrapt-1.17.2-cp313-cp313t-win32.whl", hash = "sha256:13e6afb7fe71fe7485a4550a8844cc9ffbe263c0f1a1eea569bc7091d4898555", size = 37986, upload-time = "2025-01-14T10:35:00.498Z" },
+ { url = "https://files.pythonhosted.org/packages/09/5e/1655cf481e079c1f22d0cabdd4e51733679932718dc23bf2db175f329b76/wrapt-1.17.2-cp313-cp313t-win_amd64.whl", hash = "sha256:eaf675418ed6b3b31c7a989fd007fa7c3be66ce14e5c3b27336383604c9da85c", size = 40750, upload-time = "2025-01-14T10:35:03.378Z" },
+ { url = "https://files.pythonhosted.org/packages/2d/82/f56956041adef78f849db6b289b282e72b55ab8045a75abad81898c28d19/wrapt-1.17.2-py3-none-any.whl", hash = "sha256:b18f2d1533a71f069c7f82d524a52599053d4c7166e9dd374ae2136b7f40f7c8", size = 23594, upload-time = "2025-01-14T10:35:44.018Z" },
+]
+
+[[package]]
+name = "zopfli"
+version = "0.2.3.post1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/5e/7c/a8f6696e694709e2abcbccd27d05ef761e9b6efae217e11d977471555b62/zopfli-0.2.3.post1.tar.gz", hash = "sha256:96484dc0f48be1c5d7ae9f38ed1ce41e3675fd506b27c11a6607f14b49101e99", size = 175629, upload-time = "2024-10-18T15:42:05.946Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/2b/24/0e552e2efce9a20625b56e9609d1e33c2966be33fc008681121ec267daec/zopfli-0.2.3.post1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ecb7572df5372abce8073df078207d9d1749f20b8b136089916a4a0868d56051", size = 295485, upload-time = "2024-10-18T15:41:12.57Z" },
+ { url = "https://files.pythonhosted.org/packages/08/83/b2564369fb98797a617fe2796097b1d719a4937234375757ad2a3febc04b/zopfli-0.2.3.post1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a1cf720896d2ce998bc8e051d4b4ce0d8bec007aab6243102e8e1d22a0b2fb3f", size = 163000, upload-time = "2024-10-18T15:41:13.743Z" },
+ { url = "https://files.pythonhosted.org/packages/3c/55/81d419739c2aab35e19b58bce5498dcb58e6446e5eb69f2d3c748b1c9151/zopfli-0.2.3.post1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5aad740b4d4fcbaaae4887823925166ffd062db3b248b3f432198fc287381d1a", size = 823699, upload-time = "2024-10-18T15:41:14.874Z" },
+ { url = "https://files.pythonhosted.org/packages/9e/91/89f07c8ea3c9bc64099b3461627b07a8384302235ee0f357eaa86f98f509/zopfli-0.2.3.post1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6617fb10f9e4393b331941861d73afb119cd847e88e4974bdbe8068ceef3f73f", size = 826612, upload-time = "2024-10-18T15:41:16.069Z" },
+ { url = "https://files.pythonhosted.org/packages/41/31/46670fc0c7805d42bc89702440fa9b73491d68abbc39e28d687180755178/zopfli-0.2.3.post1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a53b18797cdef27e019db595d66c4b077325afe2fd62145953275f53d84ce40c", size = 851148, upload-time = "2024-10-18T15:41:17.403Z" },
+ { url = "https://files.pythonhosted.org/packages/22/00/71ad39277bbb88f9fd20fb786bd3ff2ea4025c53b31652a0da796fb546cd/zopfli-0.2.3.post1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b78008a69300d929ca2efeffec951b64a312e9a811e265ea4a907ab546d79fa6", size = 1754215, upload-time = "2024-10-18T15:41:18.661Z" },
+ { url = "https://files.pythonhosted.org/packages/d0/4e/e542c508d20c3dfbef1b90fcf726f824f505e725747f777b0b7b7d1deb95/zopfli-0.2.3.post1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:0aa5f90d6298bda02a95bc8dc8c3c19004d5a4e44bda00b67ca7431d857b4b54", size = 1905988, upload-time = "2024-10-18T15:41:19.933Z" },
+ { url = "https://files.pythonhosted.org/packages/ba/a5/817ac1ecc888723e91dc172e8c6eeab9f48a1e52285803b965084e11bbd5/zopfli-0.2.3.post1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2768c877f76c8a0e7519b1c86c93757f3c01492ddde55751e9988afb7eff64e1", size = 1835907, upload-time = "2024-10-18T15:41:21.582Z" },
+ { url = "https://files.pythonhosted.org/packages/cd/35/2525f90c972d8aafc39784a8c00244eeee8e8221b26cbc576748ee9dc1cd/zopfli-0.2.3.post1-cp313-cp313-win32.whl", hash = "sha256:71390dbd3fbf6ebea9a5d85ffed8c26ee1453ee09248e9b88486e30e0397b775", size = 82742, upload-time = "2024-10-18T15:41:23.362Z" },
+ { url = "https://files.pythonhosted.org/packages/2f/c6/49b27570923956d52d37363e8f5df3a31a61bd7719bb8718527a9df3ae5f/zopfli-0.2.3.post1-cp313-cp313-win_amd64.whl", hash = "sha256:a86eb88e06bd87e1fff31dac878965c26b0c26db59ddcf78bb0379a954b120de", size = 99408, upload-time = "2024-10-18T15:41:24.377Z" },
+]
diff --git a/users-events/Makefile b/users-events/Makefile
new file mode 100644
index 0000000..b2a2b85
--- /dev/null
+++ b/users-events/Makefile
@@ -0,0 +1,5 @@
+build:
+ sam build --use-container
+
+deploy: build
+ sam deploy --debug
\ No newline at end of file
diff --git a/users-events/app/boto3clients.py b/users-events/app/boto3clients.py
new file mode 100644
index 0000000..f23734d
--- /dev/null
+++ b/users-events/app/boto3clients.py
@@ -0,0 +1,14 @@
+import os
+
+import boto3
+
+
+def get_dynamodb_client():
+ if os.getenv('AWS_LAMBDA_FUNCTION_NAME'):
+ return boto3.client('dynamodb')
+
+ return boto3.client('dynamodb', endpoint_url='http://127.0.0.1:8000')
+
+
+dynamodb_client = get_dynamodb_client()
+s3_client = boto3.client('s3')
diff --git a/users-events/app/config.py b/users-events/app/config.py
new file mode 100644
index 0000000..f988eaa
--- /dev/null
+++ b/users-events/app/config.py
@@ -0,0 +1,4 @@
+import os
+
+USER_TABLE: str = os.getenv('USER_TABLE') # type: ignore
+CHUNK_SIZE = 50
diff --git a/users-events/app/csv_utils.py b/users-events/app/csv_utils.py
new file mode 100644
index 0000000..2caf51f
--- /dev/null
+++ b/users-events/app/csv_utils.py
@@ -0,0 +1,83 @@
+import csv
+from typing import TextIO
+
+from smart_open import open
+
+
+def byte_ranges(
+ csvfile: str,
+ chunk_size: int = 100,
+ **kwargs,
+) -> list[tuple[int, int]]:
+ """Compute byte ranges for reading a CSV file in fixed-size line chunks.
+
+ Returns pairs (start_byte, end_byte) for each fixed-size group of lines.
+
+ Parameters
+ ----------
+ csvfile : str
+ Path to the CSV file, opened in binary mode internally.
+ chunk_size : int, optional
+ Number of lines per chunk. Default is 100.
+ **kwargs :
+ Extra options passed to `open()`, e.g., buffering.
+
+ Returns
+ -------
+ list of tuple[int, int]
+ Byte ranges covering each chunk of lines.
+
+ Example
+ -------
+ >>> byte_ranges("users.csv", chunk_size=500)
+ [(0, 3125), (3126, 6150), (6151, 9124)]
+ """
+ line_offsets = [0]
+
+ with open(csvfile, 'rb', **kwargs) as fp:
+ while True:
+ if not fp.readline():
+ break
+ line_offsets.append(fp.tell())
+
+ total_lines = len(line_offsets) - 1
+ byte_ranges = []
+
+ for start_line in range(1, total_lines + 1, chunk_size):
+ # Calculate the end line index, bounded by total lines
+ end_line = min(start_line + chunk_size - 1, total_lines)
+ # Get byte range for this chunk
+ start_byte = line_offsets[start_line - 1]
+ end_byte = line_offsets[end_line] - 1
+
+ byte_ranges.append((start_byte, end_byte))
+
+ return byte_ranges
+
+
+def detect_delimiter(sample: TextIO) -> str:
+ """Detect the delimiter character used in a CSV file.
+
+ Parameters
+ ----------
+ sample : TextIO
+ A file-like object opened in text mode (e.g., from `open('file.csv')`).
+ Must be readable and at position 0.
+
+ Returns
+ -------
+ str
+ The detected delimiter character (e.g., ',', ';', '\\t').
+
+ Raises
+ ------
+ csv.Error
+ If the file cannot be parsed as CSV or delimiter detection fails.
+ ValueError
+ If the file is empty or contains no detectable delimiter.
+ """
+ sniffer = csv.Sniffer()
+ dialect = sniffer.sniff(sample.read())
+ sample.seek(0)
+
+ return dialect.delimiter
diff --git a/users-events/app/events/__init__.py b/users-events/app/events/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/users-events/app/events/batch/__init__.py b/users-events/app/events/batch/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/users-events/app/events/batch/csv_into_chunks.py b/users-events/app/events/batch/csv_into_chunks.py
new file mode 100644
index 0000000..7238378
--- /dev/null
+++ b/users-events/app/events/batch/csv_into_chunks.py
@@ -0,0 +1,20 @@
+from aws_lambda_powertools.utilities.data_classes import (
+ EventBridgeEvent,
+ event_source,
+)
+from aws_lambda_powertools.utilities.typing import LambdaContext
+
+from boto3clients import s3_client
+from config import CHUNK_SIZE
+from csv_utils import byte_ranges
+
+transport_params = {'client': s3_client}
+
+
+@event_source(data_class=EventBridgeEvent)
+def lambda_handler(event: EventBridgeEvent, context: LambdaContext) -> bool:
+ new_image = event.detail['new_image']
+ csvfile = new_image['s3uri']
+ pairs = byte_ranges(csvfile, CHUNK_SIZE, transport_params=transport_params)
+
+ return True
diff --git a/users-events/app/events/batch/excel_to_csv.py b/users-events/app/events/batch/excel_to_csv.py
new file mode 100644
index 0000000..3fb9fb4
--- /dev/null
+++ b/users-events/app/events/batch/excel_to_csv.py
@@ -0,0 +1,14 @@
+from aws_lambda_powertools.utilities.data_classes import (
+ EventBridgeEvent,
+ event_source,
+)
+from aws_lambda_powertools.utilities.typing import LambdaContext
+
+from boto3clients import s3_client
+
+transport_params = {'client': s3_client}
+
+
+@event_source(data_class=EventBridgeEvent)
+def lambda_handler(event: EventBridgeEvent, context: LambdaContext) -> bool:
+ return True
diff --git a/users-events/app/events/batch/read_csv_chunk.py b/users-events/app/events/batch/read_csv_chunk.py
new file mode 100644
index 0000000..d7657f1
--- /dev/null
+++ b/users-events/app/events/batch/read_csv_chunk.py
@@ -0,0 +1,55 @@
+import csv
+from io import StringIO
+from typing import TYPE_CHECKING
+
+from aws_lambda_powertools.utilities.data_classes import (
+ EventBridgeEvent,
+ event_source,
+)
+from aws_lambda_powertools.utilities.typing import LambdaContext
+
+from boto3clients import s3_client
+
+if TYPE_CHECKING:
+ from mypy_boto3_s3.client import S3Client
+else:
+ S3Client = object
+
+transport_params = {'client': s3_client}
+
+
+@event_source(data_class=EventBridgeEvent)
+def lambda_handler(event: EventBridgeEvent, context: LambdaContext) -> bool:
+ new_image = event.detail['new_image']
+ csvfile = new_image['s3_uri']
+
+ data = _get_s3_object_range(
+ csvfile,
+ start_byte=new_image['start_byte'],
+ end_byte=new_image['end_byte'],
+ s3_client=s3_client,
+ )
+ reader = csv.reader(data)
+
+ for x in reader:
+ print(x)
+
+ return True
+
+
+def _get_s3_object_range(
+ s3_uri: str,
+ *,
+ start_byte: int,
+ end_byte: int,
+ s3_client: S3Client,
+) -> StringIO:
+ bucket, key = s3_uri.replace('s3://', '').split('/', 1)
+
+ response = s3_client.get_object(
+ Bucket=bucket,
+ Key=key,
+ Range=f'bytes={start_byte}-{end_byte}',
+ )
+
+ return StringIO(response['Body'].read().decode('utf-8'))
diff --git a/users-events/app/events/email_receiving.py b/users-events/app/events/email_receiving.py
new file mode 100644
index 0000000..ea6ebaf
--- /dev/null
+++ b/users-events/app/events/email_receiving.py
@@ -0,0 +1,40 @@
+import urllib.parse as urllib_parse
+from email.utils import parseaddr
+
+from aws_lambda_powertools import Logger
+from aws_lambda_powertools.utilities.data_classes import SESEvent, event_source
+from aws_lambda_powertools.utilities.typing import LambdaContext
+from layercake.dynamodb import DynamoDBPersistenceLayer, KeyPair, SortKey
+
+from boto3clients import dynamodb_client
+from config import USER_TABLE
+from ses_utils import get_header_value
+
+logger = Logger(__name__)
+user_layer = DynamoDBPersistenceLayer(USER_TABLE, dynamodb_client)
+
+
+@logger.inject_lambda_context
+@event_source(data_class=SESEvent)
+def lambda_handler(event: SESEvent, context: LambdaContext) -> dict:
+ ses = event.record.ses
+ to = urllib_parse.unquote(ses.receipt.recipients[0]).lower()
+ name, email_from = parseaddr(get_header_value(ses.mail.headers, 'from'))
+
+ org_id = user_layer.collection.get_item(
+ KeyPair('email', SortKey(to, path_spec='user_id')),
+ raise_on_error=False,
+ default={},
+ )
+
+ if not org_id:
+ return {'disposition': 'STOP_RULE_SET'}
+
+ print(
+ {
+ 'id': f'mailbox#{org_id}',
+ 'sk': ses.mail.message_id,
+ }
+ )
+
+ return {'disposition': 'CONTINUE'}
diff --git a/users-events/app/ses_utils.py b/users-events/app/ses_utils.py
new file mode 100644
index 0000000..04a6580
--- /dev/null
+++ b/users-events/app/ses_utils.py
@@ -0,0 +1,20 @@
+from typing import Any, Iterator
+
+from aws_lambda_powertools.utilities.data_classes.ses_event import SESMailHeader
+
+
+def get_header_value(
+ headers: Iterator[SESMailHeader],
+ header_name: str,
+ *,
+ default: Any = None,
+ raise_on_missing: bool = True,
+) -> str:
+ for header in headers:
+ if header.name.lower() == header_name:
+ return header.value
+
+ if raise_on_missing:
+ raise ValueError(f'{header_name} not found.')
+
+ return default
diff --git a/users-events/cf.py b/users-events/cf.py
new file mode 100644
index 0000000..d2d8e64
--- /dev/null
+++ b/users-events/cf.py
@@ -0,0 +1,62 @@
+# /// script
+# dependencies = [
+# "cloudflare"
+# ]
+# ///
+
+from cloudflare import Cloudflare
+
+CLOUDFLARE_ACCOUNT_ID = '5436b62470020c04b434ad31c3e4cf4e'
+CLOUDFLARE_API_TOKEN = 'gFndkBJCzH4pRX7mKXokdWfw1xhm8-9FHfvLfhwa'
+
+
+client = Cloudflare(api_token=CLOUDFLARE_API_TOKEN)
+
+assistant = """
+You are a data analysis assistant specialized in identifying Brazilian
+personal data from CSV files.
+
+These CSV files may or may not include headers.
+
+Your task is to analyze the content and identify only three possible
+data types: 'name', 'cpf', and 'email'.
+
+Ignore all other fields.
+"""
+
+csv_content = """
+,RICARDO GALLES BONET,ricardo.bonet@fanucamerica.com,424.430.528-93,NR-10 (RECICLAGEM)
+,RULIO SIEFERT SERA,rulio.sera@fanucamerica.com,063.916.859-08,NR-10 (RECICLAGEM)
+,MACIEL FERREIRA BOMFIM,maciel.bomfim@fanucamerica.com,334.547.088-85,NR-10 (RECICLAGEM)
+,JAIME EDUARDO GALVEZ AVILES,jaime.galvez@fanucamerica.com,280.238.818-50,NR-12
+,JAIME EDUARDO GALVEZ AVILES,jaime.galvez@fanucamerica.com,280.238.818-50,NR-35 (RECICLAGEM)
+,HIGOR MACHADO SILVA,higor.silva@fanucamerica.com,419.879.878-88,NR-12
+,LÁZARO SOUZA DIAS,lazaro.dias@fanucamerica.com,067.179.825-19,NR-12
+,JOÃO PEDRO AGUIAR GALASSO,joao.pedro@fanucamerica.com,570.403.588-40,NR-12
+"""
+
+prompt = f"""
+Here is a CSV sample:
+
+{csv_content}
+
+Your task is to:
+- Detect which columns most likely contain "name", "cpf", or "email".
+- Skip any category that is not present in the data.
+- Return ONLY a valid Python list of tuples, like:
+[('name', index), ('cpf', index), ('email', index)]
+- Use the column index that most likely matches each data type,
+based on frequency and data format.
+- Don't include explanations, code, or any additional text.
+"""
+
+r = client.ai.run(
+ model_name='@cf/meta/llama-3-8b-instruct',
+ account_id=CLOUDFLARE_ACCOUNT_ID,
+ messages=[
+ {'role': 'system', 'content': assistant},
+ {'role': 'user', 'content': prompt},
+ ],
+)
+
+print(r)
diff --git a/users-events/pyproject.toml b/users-events/pyproject.toml
new file mode 100644
index 0000000..a1c976a
--- /dev/null
+++ b/users-events/pyproject.toml
@@ -0,0 +1,33 @@
+[project]
+name = "users-events"
+version = "0.1.0"
+description = ""
+readme = ""
+requires-python = ">=3.13"
+dependencies = ["layercake"]
+
+[dependency-groups]
+dev = [
+ "boto3-stubs[essential]>=1.38.26",
+ "jsonlines>=4.0.0",
+ "pytest>=8.3.4",
+ "pytest-cov>=6.0.0",
+ "ruff>=0.9.1",
+]
+
+[tool.pytest.ini_options]
+pythonpath = ["app/"]
+addopts = "--cov --cov-report html -v"
+
+[tool.ruff]
+target-version = "py311"
+src = ["app"]
+
+[tool.ruff.format]
+quote-style = "single"
+
+[tool.ruff.lint]
+select = ["E", "F", "I"]
+
+[tool.uv.sources]
+layercake = { path = "../layercake" }
diff --git a/users-events/pyrightconfig.json b/users-events/pyrightconfig.json
new file mode 100644
index 0000000..78cdf4e
--- /dev/null
+++ b/users-events/pyrightconfig.json
@@ -0,0 +1,3 @@
+{
+ "extraPaths": ["app/"]
+}
diff --git a/users-events/samconfig.toml b/users-events/samconfig.toml
new file mode 100644
index 0000000..c1a37e9
--- /dev/null
+++ b/users-events/samconfig.toml
@@ -0,0 +1,9 @@
+version = 0.1
+[default.deploy.parameters]
+stack_name = "saladeaula-users-events"
+resolve_s3 = true
+s3_prefix = "users-events"
+region = "sa-east-1"
+confirm_changeset = false
+capabilities = "CAPABILITY_IAM"
+image_repositories = []
\ No newline at end of file
diff --git a/users-events/template.yaml b/users-events/template.yaml
new file mode 100644
index 0000000..ab654fb
--- /dev/null
+++ b/users-events/template.yaml
@@ -0,0 +1,114 @@
+AWSTemplateFormatVersion: 2010-09-09
+Transform: AWS::Serverless-2016-10-31
+
+Parameters:
+ BucketName:
+ Type: String
+ Default: saladeaula.digital
+ UserTable:
+ Type: String
+ Default: betaeducacao-prod-users_d2o3r5gmm4it7j
+
+Globals:
+ Function:
+ CodeUri: app/
+ Runtime: python3.13
+ Tracing: Active
+ Architectures:
+ - x86_64
+ Layers:
+ - !Sub arn:aws:lambda:sa-east-1:336641857101:layer:layercake:78
+ Environment:
+ Variables:
+ TZ: America/Sao_Paulo
+ LOG_LEVEL: DEBUG
+ DYNAMODB_PARTITION_KEY: id
+ POWERTOOLS_LOGGER_SAMPLE_RATE: 0.1
+ POWERTOOLS_LOGGER_LOG_EVENT: true
+ USER_TABLE: !Ref UserTable
+
+Resources:
+ EventLog:
+ Type: AWS::Logs::LogGroup
+ Properties:
+ RetentionInDays: 90
+
+ EventCsvChunksFunction:
+ Type: AWS::Serverless::Function
+ Properties:
+ Handler: events.batch.csv_chunks.lambda_handler
+ LoggingConfig:
+ LogGroup: !Ref EventLog
+ Policies:
+ - S3CrudPolicy:
+ BucketName: !Ref BucketName
+ Events:
+ DynamoDBEvent:
+ Type: EventBridgeRule
+ Properties:
+ Pattern:
+ resources: [betaeducacao-prod-users_d2o3r5gmm4it7j]
+ detail:
+ new_image:
+ sk:
+ - prefix: batch_jobs#
+
+ EventEmailReceivingFunction:
+ Type: AWS::Serverless::Function
+ Properties:
+ Handler: events.email_receiving.lambda_handler
+ LoggingConfig:
+ LogGroup: !Ref EventLog
+ Policies:
+ - DynamoDBCrudPolicy:
+ TableName: !Ref UserTable
+
+ LambdaInvokePermission:
+ Type: AWS::Lambda::Permission
+ Properties:
+ FunctionName: !GetAtt EventEmailReceivingFunction.Arn
+ Action: lambda:InvokeFunction
+ Principal: ses.amazonaws.com
+ SourceArn: !Sub arn:aws:ses:${AWS::Region}:${AWS::AccountId}:receipt-rule-set/*
+
+ BucketPolicy:
+ Type: AWS::S3::BucketPolicy
+ Properties:
+ Bucket: !Ref BucketName
+ PolicyDocument:
+ Version: 2012-10-17
+ Statement:
+ - Effect: Allow
+ Principal:
+ Service: ses.amazonaws.com
+ Action: s3:PutObject
+ Resource: !Sub arn:aws:s3:::${BucketName}/*
+ Condition:
+ StringEquals:
+ aws:SourceAccount: !Ref AWS::AccountId
+ StringLike:
+ aws:SourceArn: !Sub arn:aws:ses:${AWS::Region}:${AWS::AccountId}:receipt-rule-set/*
+
+ EmailReceiptRuleSet:
+ Type: AWS::SES::ReceiptRuleSet
+ Properties:
+ RuleSetName: users.noreply.saladeaula.digital
+
+ EmailReceiptRule:
+ Type: AWS::SES::ReceiptRule
+ DependsOn:
+ - LambdaInvokePermission
+ - BucketPolicy
+ Properties:
+ RuleSetName: !Ref EmailReceiptRuleSet
+ Rule:
+ Name: lambda
+ Enabled: true
+ Actions:
+ - LambdaAction:
+ FunctionArn: !GetAtt EventEmailReceivingFunction.Arn
+ InvocationType: RequestResponse
+ - S3Action:
+ BucketName: !Ref BucketName
+ ObjectKeyPrefix: "mailbox"
+ ScanEnabled: true
diff --git a/users-events/tests/__init__.py b/users-events/tests/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/users-events/tests/conftest.py b/users-events/tests/conftest.py
new file mode 100644
index 0000000..f02c5b5
--- /dev/null
+++ b/users-events/tests/conftest.py
@@ -0,0 +1,69 @@
+import os
+from dataclasses import dataclass
+
+import jsonlines
+import pytest
+
+PYTEST_TABLE_NAME = 'pytest'
+PK = 'id'
+SK = 'sk'
+
+
+# https://docs.pytest.org/en/7.1.x/reference/reference.html#pytest.hookspec.pytest_configure
+def pytest_configure():
+ os.environ['TZ'] = 'America/Sao_Paulo'
+ os.environ['DYNAMODB_PARTITION_KEY'] = PK
+ os.environ['DYNAMODB_SORT_KEY'] = SK
+ os.environ['USER_TABLE'] = PYTEST_TABLE_NAME
+
+
+@dataclass
+class LambdaContext:
+ function_name: str = 'test'
+ memory_limit_in_mb: int = 128
+ invoked_function_arn: str = 'arn:aws:lambda:eu-west-1:809313241:function:test'
+ aws_request_id: str = '52fdfc07-2182-154f-163f-5f0f9a621d72'
+
+
+@pytest.fixture
+def lambda_context() -> LambdaContext:
+ return LambdaContext()
+
+
+@pytest.fixture
+def dynamodb_client():
+ from boto3clients import dynamodb_client as client
+
+ client.create_table(
+ AttributeDefinitions=[
+ {'AttributeName': PK, 'AttributeType': 'S'},
+ {'AttributeName': SK, 'AttributeType': 'S'},
+ ],
+ TableName=PYTEST_TABLE_NAME,
+ KeySchema=[
+ {'AttributeName': PK, 'KeyType': 'HASH'},
+ {'AttributeName': SK, 'KeyType': 'RANGE'},
+ ],
+ ProvisionedThroughput={
+ 'ReadCapacityUnits': 123,
+ 'WriteCapacityUnits': 123,
+ },
+ )
+
+ yield client
+
+ client.delete_table(TableName=PYTEST_TABLE_NAME)
+
+
+@pytest.fixture()
+def dynamodb_persistence_layer(dynamodb_client):
+ from layercake.dynamodb import DynamoDBPersistenceLayer
+
+ return DynamoDBPersistenceLayer(PYTEST_TABLE_NAME, dynamodb_client)
+
+
+@pytest.fixture()
+def dynamodb_seeds(dynamodb_client):
+ with jsonlines.open('tests/seeds.jsonl') as lines:
+ for line in lines:
+ dynamodb_client.put_item(TableName=PYTEST_TABLE_NAME, Item=line)
diff --git a/users-events/tests/events/__init__.py b/users-events/tests/events/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/users-events/tests/events/batch/test_csv_into_chunks.py b/users-events/tests/events/batch/test_csv_into_chunks.py
new file mode 100644
index 0000000..b90f4ff
--- /dev/null
+++ b/users-events/tests/events/batch/test_csv_into_chunks.py
@@ -0,0 +1,13 @@
+import events.batch.csv_into_chunks as app
+
+
+def test_chunk_csv(lambda_context):
+ event = {
+ 'detail': {
+ 'new_image': {
+ 's3uri': 's3://saladeaula.digital/samples/large_users.csv',
+ },
+ },
+ }
+
+ app.lambda_handler(event, lambda_context) # type: ignore
diff --git a/users-events/tests/events/test_email_receiving.py b/users-events/tests/events/test_email_receiving.py
new file mode 100644
index 0000000..2b45b0e
--- /dev/null
+++ b/users-events/tests/events/test_email_receiving.py
@@ -0,0 +1,136 @@
+from aws_lambda_powertools.utilities.typing import LambdaContext
+
+import events.email_receiving as app
+
+event = {
+ 'Records': [
+ {
+ 'eventSource': 'aws:ses',
+ 'eventVersion': '1.0',
+ 'ses': {
+ 'mail': {
+ 'timestamp': '2025-05-29T15:50:41.604Z',
+ 'source': 'sergio@somosbeta.com.br',
+ 'messageId': '2994higq3tr7efijr3lj65etntffapgg1q7hea81',
+ 'destination': [
+ 'org+15608435000190@users.noreply.saladeaula.digital'
+ ],
+ 'headersTruncated': False,
+ 'headers': [
+ {'name': 'Return-Path', 'value': ''},
+ {
+ 'name': 'Received',
+ 'value': 'from mail-lf1-f54.google.com (mail-lf1-f54.google.com [209.85.167.54]) by inbound-smtp.sa-east-1.amazonaws.com with SMTP id 2994higq3tr7efijr3lj65etntffapgg1q7hea81 for org+35980592000130@users.noreply.saladeaula.digital; Thu, 29 May 2025 15:50:41 +0000 (UTC)',
+ },
+ {'name': 'X-SES-Spam-Verdict', 'value': 'PASS'},
+ {'name': 'X-SES-Virus-Verdict', 'value': 'PASS'},
+ {
+ 'name': 'Received-SPF',
+ 'value': 'pass (spfCheck: domain of somosbeta.com.br designates 209.85.167.54 as permitted sender) client-ip=209.85.167.54; envelope-from=sergio@somosbeta.com.br; helo=mail-lf1-f54.google.com;',
+ },
+ {
+ 'name': 'Authentication-Results',
+ 'value': 'amazonses.com; spf=pass (spfCheck: domain of somosbeta.com.br designates 209.85.167.54 as permitted sender) client-ip=209.85.167.54; envelope-from=sergio@somosbeta.com.br; helo=mail-lf1-f54.google.com; dkim=pass header.i=@somosbeta.com.br; dmarc=none header.from=somosbeta.com.br;',
+ },
+ {
+ 'name': 'X-SES-RECEIPT',
+ 'value': 'AEFBQUFBQUFBQUFHVWpuODdPY2tGUlordE5YWkVEUlZNWWZFYkpDMU5MUURyaHNVSldnTGhEVWhCQzd5UGpzWHI4LzJoS1VaN0lOU0FkMzJFU0h6MjVuUzk2c09KUXlzbUJQdHd6T0d0Y2ptZXhRVk1KY3RkOXpRamZMb3hwSGJIVlFla2tBcmZvRmYwQS9WU3hBVlBqcUpDYm00eTdiRnRqNW45ek9ld0ZyTGJKV3k2TXRpc0J6aGhBdmFvZDFDQ000Zm9QTng3VHljNXArM0hjT2ZsYkhtM3RCZnpRV1NOczU2RDdmL0RKclJOcDNvY2ZxV1hmajNYMkczVHpsWEZCMm40Z2pQM29udkMyb01vN3JwU0p2TUI1WGorN2JPd2RPYW5lUDN3T3RMRlhsdEpGbGNCa3c9PQ==',
+ },
+ {
+ 'name': 'X-SES-DKIM-SIGNATURE',
+ 'value': 'a=rsa-sha256; q=dns/txt; b=KPtFiBwsOTBl1YVLRTSfaZ+X6h7uSSOu/i1Cw6Pd+wvMBHRWy9EYcWUjyDjsLG/uYHShLW4+LHsSg9HiqrAP2jVJSAawrIwZr1wPQo7ovQvWuZfHQN/StgXIgBU+L7Bp6GSR26LRufxjj7q9YBmEeirjJ3d0G8E/rF2QqeITlpo=; c=relaxed/simple; s=bm3ypaoivbtdzmy3b6w37fzb5voa2uru; d=amazonses.com; t=1748533842; v=1; bh=kTUCV1DQAazu4FsUi1MrelD2QvSfHGArZ/c6A79t3/E=; h=From:To:Cc:Bcc:Subject:Date:Message-ID:MIME-Version:Content-Type:X-SES-RECEIPT;',
+ },
+ {
+ 'name': 'Received',
+ 'value': 'by mail-lf1-f54.google.com with SMTP id 2adb3069b0e04-54b0d638e86so1570269e87.1 for ; Thu, 29 May 2025 08:50:40 -0700 (PDT)',
+ },
+ {
+ 'name': 'DKIM-Signature',
+ 'value': 'v=1; a=rsa-sha256; c=relaxed/relaxed; d=somosbeta.com.br; s=google; t=1748533838; x=1749138638; darn=users.noreply.saladeaula.digital; h=to:subject:message-id:date:from:in-reply-to:references:mime-version:from:to:cc:subject:date:message-id:reply-to; bh=kTUCV1DQAazu4FsUi1MrelD2QvSfHGArZ/c6A79t3/E=; b=Qi8gk/kTpwXCLDM7FPS7ULTy+9gO/4WsGL9zY1xEDw0Rp38f4rVR8L95hIhwK2daA27mq3pv9TdrK3XKQQIuSvRVvaM0b/evkZD8QhaT9tCmL0eKEBB4czGB0OSS3Q4qP34GFWMmXIaxoKIo1td76JnXbto9ZQvjUTBr3GGlF3Lm/MPTaAHs1b3dalv2diTvyj1tzoeb4wGePKsqLh5LKGOxbbWsxPeHEJ8sLM4LyJjxoqSOO0wgKdH5S/ZNpHWcJtXBntjiDUZNeQ5ucEn8ZLbADCObZZV/gH9i/cB1BmlSvJP3D07uJTAEBqyepd+W9fIW2mox/+fmOb3OEHRthQ==',
+ },
+ {
+ 'name': 'X-Google-DKIM-Signature',
+ 'value': 'v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748533838; x=1749138638; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=kTUCV1DQAazu4FsUi1MrelD2QvSfHGArZ/c6A79t3/E=; b=UnL/uRXRahnH5uStZ276LH4kqpHigngw4iql9GHKmFaIKxJ8hLGn/wu7ie4ljnw8m/ I4CvhDKH4TVtIWPS81fm06PMgeqQYRX3jLhHvIltROCNVX6ZFzbAXgiAlk0NS1npvDYJ evVgSaPPco4D/8pMWZX4fUjU+8me32ChKxHsklEAts/LiD+MvTuHCHZovSEj1aXAz91b yGZe1bx2+phuqzUZyIOeheKjl4TNjEBx83omOzf9HtClKhjzCwHjfZ8uk2lhJ10ogKZ0 GNQ5OlnPkgdAg0/+HsifvGR6xfkFsiunIDyinBWoOhMU1o0+DiicxOIjY8QEayF3MLUt REoA==',
+ },
+ {
+ 'name': 'X-Gm-Message-State',
+ 'value': 'AOJu0Yxw0icQkFV090vn5hx/hKp0ePH78Wr0iqi4V3x4mpVXrRX8te2o 30aBYeZRPwn8SRSrq/kbn4bLcs5mPDB+iRP9IGFxS7KLSQi+KG4PQeDHyW3R/AgOPHACUUXUUyz Vcwny029WGY5PVhxlikAYdDfhNdO8GM2DKMV1+Oxy/a+qmt5LZeuy',
+ },
+ {
+ 'name': 'X-Gm-Gg',
+ 'value': 'ASbGncslCMPPU/pax0+RNy/cQR/Y/wUroSJMvI2DCCMq6Qld+Ih1jG4+HnhQPqn3nTK EEW6/99tqazq+SKy+31AB77ajVczvJQTElRSW/+bhd42l7by2hicTKElcR3GWivlrqd1TywUZOB DkB9J/vupSV0PDCJfZVi+7Tb9Pb61nnxaU+SQ=',
+ },
+ {
+ 'name': 'X-Google-Smtp-Source',
+ 'value': 'AGHT+IFYi41KmJjGcfQmUvWJDdTAzGIv2JlL9XAwBpAb53mMOOm3tttzkhbvfuiKh/DI9NjITHuO3xuEPqnPI9lpum8=',
+ },
+ {
+ 'name': 'X-Received',
+ 'value': 'by 2002:a05:6512:1392:b0:553:2f61:58f1 with SMTP id 2adb3069b0e04-5532f615a8dmr2268707e87.53.1748533837647; Thu, 29 May 2025 08:50:37 -0700 (PDT)',
+ },
+ {'name': 'MIME-Version', 'value': '1.0'},
+ {
+ 'name': 'References',
+ 'value': '',
+ },
+ {
+ 'name': 'In-Reply-To',
+ 'value': '',
+ },
+ {
+ 'name': 'From',
+ 'value': 'Sérgio Rafael Siqueira ',
+ },
+ {'name': 'Date', 'value': 'Thu, 29 May 2025 12:50:26 -0300'},
+ {
+ 'name': 'X-Gm-Features',
+ 'value': 'AX0GCFvofROqzf21KTgiIJq_AULCNljEuNFUJBk2xQGwVKmPjim_4slYIOP0WRw',
+ },
+ {
+ 'name': 'Message-ID',
+ 'value': '',
+ },
+ {'name': 'Subject', 'value': 'Re: test'},
+ {
+ 'name': 'To',
+ 'value': 'org+15608435000190@users.noreply.saladeaula.digital',
+ },
+ {
+ 'name': 'Content-Type',
+ 'value': 'multipart/alternative; boundary="00000000000045b8c206364842b3"',
+ },
+ ],
+ 'commonHeaders': {
+ 'returnPath': 'sergio@somosbeta.com.br',
+ 'from': ['"Sérgio Rafael Siqueira" '],
+ 'date': 'Thu, 29 May 2025 12:50:26 -0300',
+ 'to': ['org+15608435000190@users.noreply.saladeaula.digital'],
+ 'messageId': '',
+ 'subject': 'Re: test',
+ },
+ },
+ 'receipt': {
+ 'timestamp': '2025-05-29T15:50:41.604Z',
+ 'processingTimeMillis': 1105,
+ 'recipients': [
+ 'org+15608435000190@users.noreply.saladeaula.digital'
+ ],
+ 'spamVerdict': {'status': 'PASS'},
+ 'virusVerdict': {'status': 'PASS'},
+ 'spfVerdict': {'status': 'PASS'},
+ 'dkimVerdict': {'status': 'PASS'},
+ 'dmarcVerdict': {'status': 'GRAY'},
+ 'action': {
+ 'type': 'Lambda',
+ 'functionArn': 'arn:aws:lambda:sa-east-1:336641857101:function:saladeaula-user-managemen-EventEmailReceivingFunct-LmnnEfi9tL2O',
+ 'invocationType': 'Event',
+ },
+ },
+ },
+ }
+ ]
+}
+
+
+def test_email_receiving(dynamodb_seeds, lambda_context: LambdaContext):
+ assert app.lambda_handler(event, lambda_context) == {'disposition': 'CONTINUE'}
diff --git a/users-events/tests/samples/large_users.csv b/users-events/tests/samples/large_users.csv
new file mode 100644
index 0000000..57fbc4e
--- /dev/null
+++ b/users-events/tests/samples/large_users.csv
@@ -0,0 +1,3286 @@
+Fernanda Lopes,freitasstella@uol.com.br,Beta Educação Principal,1
+Poliana Oliveira,poliana@aes.com.br,AeS Sistemas de Controles Especiais de Veículos e Pessoas Ltda,1
+Diane Sordi,engenharia.seguranca@languiru.com.br,Cooperativa Languiru,1
+Maria Gabriela,letssave@letssave.com.br,Let's Save,0
+Paulo Cesar,pcsbarbosa@hotmail.com,Paulo César Soares Barbosa,1
+Eter Transportes E Serviços Ltda,contato@eterr.com.br,Eter Transportes e serviços Ltda.,1
+Gabriel Geraldo Dosval,ggd.transportes@gmail.com,GGD TRANSPORTES,1
+Jose Ricardo Ferreira Jr.,ricardo@speedservicos.com.br,Speed Servicos Industriais Ltda,1
+Joao Carlos De Souza Ribeiro,joaocarlosribeiro2@gmail.com,JOAO CARLOS DE SOUZA RIBEIRO,1
+Elvis Tony,elvistonydepadua@hotmail.com,Pádua ltda,1
+Angela Andreatta,rh@sosmerces.com.br,Andreatta e Filho Ltda,1
+Sandro Fernandes,emporiorac@gmail.com,Empório da Eletriciade,1
+Ebson Da Silva Santos,ebson@projeville.com.br,PROJEVILLE SERVICOS LTDA EPP,1
+Juliana Carvalho Cunha,kade.juju@hotmail.com,Orsine e Souza Telecomunicações Ltda ME,1
+Hailton Silva,contato@thdgroup.com.br,THD GROUP,1
+Juliano Costa Nobre,contato@costanobreengenharia.com.br,Costanobre Engenharia Ltda,1
+Edinor Koch,edinorkoch@terra.com.br,MAZP Energias Renovaveis LTDA,1
+Rebeca Candemil Haack,contato@conceptsom.com.br,Concept Som,0
+Aparecido Reis Barbosa,aparereis.ar@gmail.com,Reclimantec - Refrigeração Climatização e ManutençãO Técnica,1
+Edson Utpadel,edsonsni@gmail.com,SESMT ASSESSORIA & CONSULTORIA DO TRABALHO,1
+Deyrilucy Ferreira,deyrisattva@yahoo.com.br,Sattva Medical Center,1
+Adriana Pedroso,dricapedroso5@hotmail.com.br,MABDRICA,1
+Leandro Suhett,marcusvinisc@gmail.com,lli serralheria,1
+Renan Luiz Martins Teodoro,renanluiz@lumar-ar.com.br,Lumar Ar Condicionado,1
+Denis Budag - Pf,denis@solucao.digital,Solucão Digital,1
+Junio Cesar Ferreira Anezio,masegconsultoria@gmail.com,MASEG CONSULTORIA,1
+Vinicius Ferreira Tiago,tstvinicius.tiago@gmail.com,SPM RESENDE INDUSTRIA E COMERCIO EIRELI - EPP,1
+Wellington Ferreira Dos Santos,wellington.santos@motrisa.com.br,Moinho de Trigo Indígena S.A,1
+Simone Das Neves Faria Montevechio De Paiva,simonyfaria28@hotmail.com,POSTO MONTEVECHIO LTDA EPP,1
+Rodrigo Bertoncello,aircello@aircello.com.br,aircello Comercio e Serviços em Climatização Ltda,0
+Nivaldo Freitas Borges,cimaqfinanceiro@hotmail.com,vilela e vilela parafusos,1
+Paulo Amaral,styleglass.adm@gmail.com,Style Glass,1
+Carla Priscila G.,carla@dbug.com.br,Hoinaski & Sklasky Ltda - ME,1
+Jaqueline Elias Jaques De Souza,jaqueline.e.souza@fiesc.com.br,SENAI/SC Tubarão,1
+Patricia Laurenti,patricia_laurenti@br.ajinomoto.com,Ajinomoto,1
+Sidivan Piva,contato@sipagro.com.br,Rachel Gris,1
+"Domingos Fatobene Jr,",falecom@visualpoint.com.br,Fatto's Sign Comunicação Visual Ltdas ME,1
+Ana Kelly Da Silva,kelly.silva@inovaenergy.com.br,Inova Energy Engenharia Ltda,1
+Marcelo Vanni,marcelovanni68@gmail.com,m.a vanni serviços gerais me,1
+Juliana Andretta,juliana@xproject.com.br,X-PROJECT SOLUÇÕES EM TECNOLOGIA LTDA,1
+Claudia Garrutti Teruel Da Silva Dias,claudia.dias@imagenscuiaba.com.br,Imagens Medicina Diagnóstica,1
+Vinicius Ferreira Tiago,vinicius.ferreira@spmresende.com.br,PCB SOLDAGENS AUTOMOTIVAS LTDA.,1
+Adilson Pinheiro Pinto,adilson.pinheiro@wortex.com.br,WORTEX MAQUINAS E EQUIPAMENTOS,1
+Emerson Fernando da Silva Antonio,emerson.antonio@basf.com,BASF SA - Guaratinguetá,1
+Autopetro Petroleo E Gas Ltda,lucianacavalcanti27@gmail.com,AutoPetro Petroleo e Gas LTDA,1
+Talita Ponce Leiras,talita.leiras@parmais.com.br,PAR ADMINISTRAÇÃO DE VALORES IMOBILIÁRIOS - ME,1
+Carmelita Forbici,kira-f1@hotmail.com,carmelita forbici,1
+Eduardo Barbosa,kolbebarbosa@gmail.com,Kolbe Barbosa Patrimonial Ltda,1
+Euclides Neto Viana Da Silva,kvarengenharia@hotmail.com,kVAr Automattic,1
+Cleto Carioni,financeiro@radiotec-sc.com.br,CLETO CARIONI ME,1
+José Carlos Martins,smartinstec@gmail.com,SMARTINS & PIRES COMÉRCIO E REPRESENTAÇÃO LTDA.,1
+Fabrício K. Dornelles,fabricio.dornelles@cotica.com.br,Cótica Engenharia e Construções Ltda,1
+Vanessa Nascimento,dat.rj1@ecomed.com.br,Ecomed Comércio de Produtos Médicos Ltda,1
+Socorro Gomes,mg.cabral@bol.com.br,Om & cia eireli - epp,1
+Fernando Ribeiro Da Silva,multitecfernando@yahoo.com.br,MULTITEC TELEINFORMÁTICA,1
+Marcelo Bertacini,rh@amchidraulica.com.br,HIDRAUSERV COMÉRCIO DE EQUIPAMENTOS INDUSTRIAIS LTDA,1
+CAROLLYNA SANTOS WENZEL DE PAULA CASIMIRO,carollyna.paula@omegaenergia.com.br,Omega Energia DEFINITIVO,1
+Ramon Silton Silva Oliveira,ramon.oliveira@omegaenergia.com.br,Omega Energia DEFINITIVO,1
+G&P,gestao@omegaenergia.com.br,Omega Energia DEFINITIVO,1
+Ana Araújo,karina.araujo@omegaenergia.com.br,Omega Energia DEFINITIVO,1
+Márcio Henrique Ferreira de Macedo,marcio.macedo@omegaenergia.com.br,Omega Energia DEFINITIVO,1
+Vanessa Fernandes,vanessa@cmvvalvulas.com,CMVI Comercio e Manutenção de Válvulas e Instrumentos Industriais Ltda,1
+Ivan Antonio,postokretzer@hotmail.com,AUTO POSTO KRETZER LTDA,1
+Eduardo De Carvalho Crenn,eduardo.crenn@pocagua.com.br,POCAGUA POCOS ARTESIANOS LTDA,1
+Paulo Camargo,operacional@laborebr.com.br,LABORE,1
+Vivian Lemes Viaro,vivian.lemes@alatur.com,Alatur JTB Viagens e Turismo SA,0
+Wilson Roberto Fernandes,beto.fernandes@w3serigrafica.com.br,W. Fernandes Silk Screen Ltda.,1
+Crisonélia De Sousa Alves,cris.costa@atostelecom.com,ATHOS SERVIÇOS ELETRICOS E TELECOMUNICAÇÕES LTDA,1
+Carlos Alberto Lima Da Silva,c.albrtolima72@gmail.com,ELETRICAR SERVIÇOS ELETRICOS,1
+Micael Salvador Bortolozo,micael.bortolozo@telasul.com.br,Telasul Indústria de Móveis Ltda,1
+Marcella Molliny Lasalvia Da Silva,comercial@ebussola.com.br,Bussola Comercio e Serviços LTDA,1
+Jaqueline Alves Da Silva,jaquelinea_2010@hotmail.com,c.c.c. de morais e cia ltda,1
+Shirley Tardivel,stardivel@grupopetropolis.com.br,Grupo Petrópolis,1
+Juliana Noronha,juliananoronha@kofre.com.br,Kofre Telecomunicações,1
+Rafaela Duarte,rafaeladuarte@kofre.com.br,Kofre Telecomunicações,1
+Leandro Barbosa Dorea,leandrodorea@kofre.com.br,Kofre Telecomunicações,1
+REJANE ARAUJO DA SILVA,rejanesilva@kofre.com.br,Kofre Telecomunicações,1
+LEANDRO BARBOSA DOREA,caiosilva@kofre.com.br,Kofre Telecomunicações,1
+Patricia Vitelles Da Silva,vendas1@supertoolsresende.com.br,SUPERTOOLS COMERCIO DE FERRAMENTAS E ACESSORIOS EIRELI ME,0
+Desenvolvimento Humano,dh@cordeiroguindastes.com.br,Cordeiro Guindastes,1
+Sidney Pereira Reis,tecnoeletroautomacao@gmail.com,Tecnoeletro Automação Ltda.,1
+Danilo Silva Lopes,compras@advanta.com.br,Advanta Sistemas de Telecom. e Serviço de Informática Ltda.,1
+André Dias De Oliveira,engepro-construcoes@outlook.com,SANDRA MARIA DE SOUZA DIAS - ME,1
+Sandro Silva,sandro@fqlsolution.com,FQL,1
+Marcelo De Almeida Nobile,marcelo@sisejufe.org.br,Empresa: Sindicato dos Servidores das Justiças Federais no Estado do Rio de Janeiro - SISEJUFE,1
+Frederico De Oliveira Assunção,frederico.assuncao@findingti.com.br,Finding Tecnologias Inteligentes,1
+Claudiana Rodrigues,claudianar1@grpcom.com.br,TV Oeste do Paraná Ltda.,1
+Bruno Rodrigo De Lima,blima@argosgps.com,Argos Global Partner Services,1
+Clayton Luiz Pegorari,energy.power@outlook.com,Energy Power Elétrica e Automação,1
+Délcio Daniel,mariopinho.20@hotmail.com,Montarinox,1
+Vivian Ferreira,vferreira1@cvh.com.br,Cooperrativa Veiling Holambra,1
+Viviane Taiz Passold Mereles,viviane@alaseguros.com.br,Ala Serviços Administrativos Ltda,1
+Tarsis Costa Lima,tarsislim@gmail.com,TAR & CEL - O BOTICÁRIO,1
+Erivan Nonato Dos Santos,gmavalvulas.servicos@bol.com.br,GMA COMERCIO E SERVIÇOS,1
+Camila Silva Rocha,crsilva@alliedbrasil.com.br,Allied,1
+Veronica Pereira De Oliveira,veronica.oliveira@cetrel.com.br,CETREL S.A,1
+Barbara Stella Lima Gomes,barbara@cetrel.com.br,CETREL S.A,1
+ABDON LIMA GOES NETO,abdon.neto@cetrel.com.br,CETREL S.A,1
+Andresa Maciel Oliveira,andresaoliveira@grupoparc.com.br,CETREL S.A,1
+Ana Rita da Hora Reis,anareis@cetrel.com.br,CETREL S.A,1
+ROSELY CARVALHO DOS SANTOS,roselysantos@cetrel.com.br,CETREL S.A,1
+Rafael Pereira da Silva,rafaelpsilva@cetrel.com.br,CETREL S.A,1
+Treinamentos CETREL,treinamentosqssma@cetrel.com.br,CETREL S.A,1
+Apoio CETREL,apoioadministrativo@cetrel.com.br,CETREL S.A,1
+Sheila Rodrigues,asst@asst.com.br,ASST,1
+Walde Ferreira Sobrinho,contato@lagosservicos.com.br,Lagos Serviços de Telecomunicações,1
+Felipe Ferreira,prjcomercio@gmail.com,Projeta,1
+Fabrivcio Carneiro Nunes,fas_manutec@hotmail.com.br,F.A.S. Manutec,1
+Maria Nascimento,maria.nascimento@stemac.com.br,Stemac,1
+Carlos Magno Da Silva,carlos.magno@ferreiraesilvamontagens.com,Ferreira & Silva Montagens,0
+Fatima Ganzer,centrofaza@hotmail.com.br,FAZA CENTRO INTEGRADO DE SAÚDE,1
+Ricardo Arcari,socioambiental@socioambiental.com.br,Socioambiental Consultores Associados Ltda.,1
+Luana Velho,compras@presticominstalacao.com.br,Presticom Presticom Prestações e Serviços e Comércio,1
+Lauro Enaldo Silva Santos,lls.manutencao@hotmail.com,LLSANTOS,1
+Rosemeire Silva,scaff@scaff-andaimes.com.br,Locap Andaimes,1
+Robson Verissimo De Souza,fiscal@accept.com.br,ACC BRASIL INDUSTRIA E COMERCIO DE COMPUTADORES LTDA,1
+Pedro Ribeiro Tavares De Lira Junior,digicontrol@hotmail.com,Digicontrol,1
+Nerci Jose Dos Santos,nerci.santos@fortpar.com.br,FORTPAR PROJETOS E SERVICOS DE ENGENHARIA LTDA - ME,1
+ROSELY CARVALHO DOS SANTOS,roselysantos@cetrel.com.br,GRÊMIO RECREATIVO DOS EMPREGADOS DA CETREL GRECE,1
+Leonardo Moreira Dos Santos,leo.moreirasantos26@gmail.com,Leonardo Moreira dos Santos,1
+Wellington Costa Rodrigues,contato@tannerengenharia.com,TANNER ENGENHARIA,1
+Yanna Claudia Lopes Cândido,ylopes@centroflora.com.br,Anidro do Brasil Extrações S.A,1
+Monica Pereira,alessandra.remafra@gmail.com,COMERCIAL REMAFRA LTDA,1
+Raphael Augusto Pereira,phelipe.pereira@fruitsul.com.br,RPJ FABICACAO E DISTRIBUICAO DE PRODUTOS CONGELADOS,1
+Rejane Bizotto,rejane@khomp.com,Khomp Industria e comercio ltda,1
+Phelipe Da Silva Pereira,pereirarepresentacoesme@yahoo.com.br,RPJ FABICACAO E DISTRIBUICAO DE PRODUTOS CONGELADOS,1
+Alfredo Curado Bochnia,insec@brturbo.com.br,Insec Tecnologia Aplicada ME LTDA,1
+Fernando Luis Pedrotti,fernando@oitotecnologia.com.br,Oito Consultoria Tecnologia e Informática LTda,1
+Edson Luiz De Paula,assistenciatecnica@flexaseal.com.br,FLEX-A-SEAL,1
+Vanessa Fernandes,vanessa.fernandes@converteam.com,GE,0
+Marcelo Estrela Moscovits,lifesaudeambiental@gmail.com,MARCELO ESTRELA MOSCOVITS-ME,1
+Carlos Tadeu Arantes Maia,carlos@fckcontroletecnologico.com.br,FCK CONTROLE TECNOLOGICO,1
+Angela Frisoli Vieira,angelafrisoli@hotmail.com,panificadora gustapao,1
+Beatriz de Fátima Silva,beatriz.fatima@manserv.com.br,MANSERV - BEATRIZ,1
+Victor Felipe da Silva,victor.felipe@manserv.com.br,MANSERV - BEATRIZ,1
+Rafael Leopoldo Batista,rafael.leopoldo@manserv.com.br,MANSERV - BEATRIZ,1
+Marcos Rogério Dos Santos Couto,marcosr@scpsservicos.com.br,Proxxi Tecnologia,1
+Marcus Kress,cdi-digital@oogtk.com,OOGTK,1
+Antonio Carlos Alves,prevencaoconsultoriasst@gmail.com,PREVENÇÃO CONSULTORIA E TREINAMENTOS,1
+Jerrisson Santos Pereira,jsp_tecnologia@hotmail.com,JERRISSON SANTOS PEREIRA ME,1
+Cristiane Alves,cristiane@grupovivence.com.br,VIVENCE FACILITIES,0
+Leonardo Assis De Brito,leo.assis_180@hotmail.com,rondave ltda,1
+Leandro Lopes De Lima,vendas@multiplantas.com.br,LEANDRO LOPES DE LIMA ME,1
+Diogo Fernandes Antonio,diogo.fernandes@amdm.com.br,AM&DM Industria Comércio e Importação Ltda - ME,1
+Desativado Desativado,desativadoo@bbosch.com.br,Bbosch Galvanização do Brasil Ltda,1
+Valquiriacosta Sousa Borges,hmval@hotmail.com,HVM SEGURANÇA,1
+Breno Yuri Barros Alves,brenoyuri22@gmail.com,H & C VULCANIZAÇÃO SERVIÇOS E MANUTENÇÃO INDUSTRIAL LTDA,1
+José Auresto Marques Pedreira,jamp@gbi.com.br,JAMP MINERAÇÃO LTDA EPP,1
+Vinicius Da Costa Nunes,vnunes01@hotmail.com,ELEKTRON - Manutenção de Sistemas Elétricos,1
+William Alves,informatica@familiaunida.com.br,LICITOP,1
+Kamila,kamila_karlla@hotmail.com,panelas de barro,1
+Emerson Kim,emerson_kim@me.com,black sheep sushi bar,1
+Eduardo De Oliveira Rego,eduardo.oliveira@engpolo.com.br,Engpolo Projeto e Instalações Elétrica LTDA,1
+Paula Machado De Queiroz Nogueira,paula@mrtech.med.br,MR TECH SERVIÇO TECNICO DE MANUTENCAO EM APARELHOS ELETROMEDICOS LTDA,1
+Jefferson José Da Silva,sac@infortudo.com.br,Descomplicador Forros e Divisórias,1
+Nelson De Matos,serafim.ndm@gmail.com,NDM,1
+Duane Karla Dos Santos Silva,dkss@lmwindpower.com,LM Wind power,1
+Pedro Moscon,pedro.moscon@wcngroup.com.br,WCN INFORMATICA,1
+Manoel Simão Rosa De Souza,rcustodio_@hotmail.com,RC Custódio-me,1
+Erlem Henrique,erlenhenrique@gmail.com,Visão Cursos,1
+Nilton Santos,nilton.santos@consultorianc.com.br,NC Consultoria em Segurança do Trabalho e Enfermagem do Trabalho,1
+Shirley Musa Cabral,ecosystem.sga@gmail.com,ECOSYSTEM TRANSPORTES ESPECIALIZADOS LTDA,1
+Wanderson Rodrigo Lopes,villetreinamento@gmail.com,Lopes consultoria Ltda,1
+LUCIA HELENA DE OLIVEIRA SIECZKOWSKI,lucia@squadraconsultoria.com.br,Integra Serviço e Comércio Ltda,0
+Sind dos Trab nas Inds Met Mec e de Mat Elet da Grande Porto Alegre,gabriel.maciel@integra-engenharia.com,Integra Serviço e Comércio Ltda,1
+Waldirene Maria Dos Anjos Do Prado,contato@nevaronline.com.br,Mario Julio dos Anjos Ar Condicionado EPP,1
+Luciano Ferrão Mendes,lfmendes@eletrosul.gov.br,Eletrosul Centrais Elétricas S.A.,1
+Elisama Rodrigues Oliveira,financeiro@oficinox.com.br,Oficina do Inox Ind e Com Ltda,1
+Álison José Ferreira Cunha,alison@libernet.con.br,AJNS PROVEDOR DE INTERNET LTDA,0
+Paulo Da Rosa Bonel,supervisaohotel@uol.com.br,HOTEL BONEL EIRELI,1
+Walter Vaccari,walter@nirax.com.br,Nirax Tecnologia da Informação Ltda EPP,1
+Adriana Batistella,mabdrica@gmail.com,ADRIANA TESTE,1
+Daniel Cipriano Do Nascimento,financeirossa@petroeng.com.br,PETROENG,1
+Maira Zanotti,vidracariareflex.maira@gmail.com,Vidraçaria Reflex,1
+Fabricia Cristine Dos Santos,fabricia.santos@bmw.com.br,BMW do Brasil Ltda,1
+Marcos Fischer Da Silva,marcos@tsrv.com.br,Traders Service Com. Equipamentos de Informática Ltda,1
+Marcel Bocchese Soares,marcel@cyberfly.com.br,MA Soluções em Tecnologia,1
+Marcelo Augusto Piassa,refrimar_refri@hotmail.com,refrimar refrigeração,1
+Alessandra Amaral Onofre,alessandra.amaral@saudeocupacionalunimed.com.br,SOU Saúde Ocupacional Unimed Ltda.,1
+Daniela Zanolo,daniela.dzambiseg@gmail.com,DZ ENGENHARIA E GESTÃO,1
+Lorena Sales Santos,lorena@mondesengenharia.com.br,Mondes Engenharia,0
+Jose Carlos Rodrigues,rodrigues.jose@metropolitano.com.br,AMICO SAUDE,1
+Alexandre Gorni Felicio,alexandre.gorni@tecaut.com.br,Tecaut Automação Industrial,1
+Eliane Molon,rh@commcenter-rs.com.br,Cellular House Telecomunicações Ltda,1
+Anderson Roberto Monteiro,smipreditiva@smipreditiva.com.br,SMI Manutenção Preventiva Ltda,1
+Murilo Rocha,contato@smipreditiva.com.br,SMI Manutenção Preventiva Ltda,1
+Mirella Felix,adm@k3m.com.br,K3M SOLUCOES EM CABEAMENTO LTDA,1
+Manuel Borges Da Silva Filho,manuelborges@volareengenharia.com.br,3TECH Manutenção,1
+João De Oliveira Rocha,vendascegonha@gmail.com,Cegonha Industria de Alimentos EIRELI,1
+Marcos A. B. Martins,marcos.martins@aecho.com.br,AECHO AMBIENTAL LTDA,1
+Luciane Oliveira Motta,luciane.motta@esab.com.br,CONDOR EQUIPAMENTOS,1
+Kaíza Oliva Donadia,rh5@spassu.com.br,Spassu Tecnologia e Serviços S/A,1
+Gabrielly Santiago Assis,gabrielly.assis@ceslog.com.br,CESLOG CESARI LOGISTICA,1
+Ubirajara Da Rosa Crizel Junior,junior@crizel.com.br,CRIZEL ELETROMECANICA LTDA,1
+Celso Martineli,celso.martineli@ask-chemicals.com,ASK PRODUTOS QUÍMICOS DO BRASIL LTDA,1
+Andreza De Albuquerque Gomes De Santana,andrezaaags@gmail.com,CINDACTA III,1
+Jéssica M. Uluim,administrativo@agroforte.ind.br,AGROFORTE,0
+ANDRE LUIZ DE FARIA,pacrefrigeracao@gmail.com,Pac Service Refrigeração e Ar Condicionado LTDA Me,1
+Priscila Penha,pris.weng@terra.com.br,Construtora Weng Ltda EPP,1
+Cesar Eduardo Rodrigues Ferreira De Almeida,ca.engenharia.cesar@gmail.com,CA Engenharia Solar,1
+Priscila Borges,rh@autogeradora.com,Autogeradora Com. e Locação de Geradores e Maq. Eireli,1
+Laura Castro Carriello Rosa,laura@aem.ms.gov.br,Agência Estadual de Metrologia,1
+Valdeli Ferreira,valdeli@cmocmandos.com.br,CM Comandos Lineares Ltda,0
+Francine Elisete Pereira,francine@garnise.com.br,ELISETE CLARICE PEREIRA,1
+Fernando De Andrade Paladino,diretoria@portobellotijuca.com,ARTESHOP REVESTIMENTOS CERAMICOS E SERVICOS,0
+Leandro Do Couto Nascimento,nascimentoleandro8499@yahoo.com,Emidio Prestação de Serviço,1
+Douglas De Andrade Azevedo,douglas.azevedo@ciahering.com.br,CIA HERING,1
+Alessandre Mota Lima,comercial@mixgrafica.com,mix grafica e comunicação visual ltda,1
+Henrique Moura Da Silva,henrique.silva@avato.com.br,ÁVATO TECNOLOGIA LTDA,1
+Cristiano Delavechia Rumpel,cristianorumpel@avato.com.br,ÁVATO TECNOLOGIA LTDA,1
+Carolina Maria Salviano Brandt,climatizacao@flexclean.com.br,Flex Clean Climatização Ltda,1
+Christiano Alves Da Silva,sio@suporteinfoonline.com.br,Silva e Santos Suporte em Informática Ltda,1
+Gestão De Planejamento E Convênios,convenios@funsat.campogrande.ms.gov.br,Fundação SOcial do Trabalho de Campo Grande-MS,1
+Paula Freire Leite,paula.oliveira@samaritano.com.br,SOCIEDADE HOSPITAL SAMARITANO,1
+Ariela Félix da Silva,ariela.silva@samaritano.com.br,SOCIEDADE HOSPITAL SAMARITANO,1
+Kamila Vargas Medeiros,kamila.medeiros.indra@enel.com,Enel CIEN SA,1
+Belplast Industria De Plasticos Ltda.,faturamento@belplast.com.br,BELPLAST INDUSTRIA DE PLASTICOS LTDA.,1
+Bruno Jose De Moraes Lima,eng.brlima@gmail.com,Planos construções,1
+Hércules Damasceno,hercules@oficinadascapas.com.br,Amagh Ind. Com Ltda M.E.,1
+Gilson Rezende Filho,gilson.rezende@servier.com,LABORATÓRIOS SERVIER DO BRASIL LTDA,1
+Tarciana Borgonovo,arenas.games@hotmail.com,Tarciana Borgonovo ME,1
+Rosane Cardoso,rosane.cardoso@biosev.com,Biosev S.A,1
+Ricardo Soares Simões,ricardo.simoes@senairs.org.br,serviço nacional de aprendizagem industrial,1
+Ajurimar Cravo,contatostrongpizza@gmail.com,Strong Pizza,1
+Eliezio Fernandes,elieziobarataobts@gmail.com,PEG E PAG BARATÃO,1
+Paulo Eduardo Da Silva Anunciação,comercial@fastsolucoesti.com.br,PESA SERVIÇOS WEB,0
+Bruno Vassallo,info@eeg-geofisica.com,Consultoria Geofisica EEG Ltda,0
+Gustavo Fontes,gustavo@crieaki.com,CrieAki Comunicação Visual,1
+Joceli Ana Pontarolo,financeiro@bexpoi.com.br,Bexpoi Engenharia de Manutenção de Obras Ind Pred Ltda,0
+Leocir Goncalves Correa,leocircorrea@gmail.com,weg,1
+Josias Araujo,veloxgas@outlook.com,souza e araujo dist. de gases ltda,1
+Jamyle Reis,relacionamentos@ctatreinamentos.com.br,"CTA TREINAMENTO, ASSESSORIA E SERVIÇOS CORPORATIVOS LTDA - ME",1
+Luciane Vera,servilit@servilit.com.br,SERVILIT ADMINISTRAÇÃO E MÃO DE OBRA,1
+Marcelo Goivinho Leal,mgl.instalacoesemanutencao@gmail.com,MG LEAL INSTALAÇÕES E MANUTENÇÃO ME,1
+Lenon Patrick Domingues De Almeida,fsitech@mail.com,FSI Tecnologia e Automação,1
+Eduardo Duda Da Silva,esilva2@grpcom.com.br,TV Oeste do Paraná Ltda. - Filial,1
+Simone Scorissa,dp@aciincendio.com.br,ACI COMERCIO SERVIÇOS E ASSESSORIA DE SEGURANÇA CONTRA INCENDIO LTDA,1
+Rinaldo Dantas E Castro Marques,rcmarques1@anglogoldashanti.com.br,Anglogold Ashanti,1
+Lily Maciene Diniz Silva,lily@pbgas.com.br,Companhia Paraibana de Gás,1
+Margareth Galvão,lider.rh@cipax.com.br,CIPAX Medicina Diagnostica Ltda,1
+Paulo Renato Lima,paulorenatolima@gmail.com,ALTARF ENGENHARIA E CONSULTORIA,1
+Marcia Cristina,marcia.almeida@cgg.com,CGG,1
+Andre Santos,financeiro@solussondagens.com.br,SOLOTERRA COMERCIO E SERVIÇOS LTDA,0
+Felipe Paulo Pacheco Cardoso,felipe.cardoso@gruposeres.com.br,SERES SERVICOS DE RECRUTAMENTO E SELECAO DE PESSOAL LTDA.,1
+Thais Siqueira,thais.siqueira@gruposeres.com.br,SERES SERVICOS DE RECRUTAMENTO E SELECAO DE PESSOAL LTDA.,1
+Marcelo Paiva,marcelo.paiva@enel.com,ENEL,1
+Cledija Soares Dos Prazeres Silva,admcw02@gmail.com,cw empreiteira de mao de 0bra ltda epp,1
+Kleber dos Santos,confianca@confianca.eng.br,Confiança,1
+Willian Kazuhissa Koh,willian_koh@bradycorp.com,W.H.B. DO BRASIL LTDA,1
+Alberto Andre Baroni Oliveira,baroni.bbcinfo@gmail.com,B&Z Negócios e Serviços em Informatica Ltda,1
+Victor Hugo Pilastri,contato@agilesi.ind.br,CLP SOLUÇÕES INDUSTRIAIS LTDA ME,1
+Marcio Silva Ferreira,joaoguilhermmmaufc@gmail.com,CYBERNET LAN HOUSE,1
+Hudson Muniz De Oliveira Junior,hudson@estrelavidros.com.br,KLAIER SA INDUSTRIA E COMERCIO,1
+Joselho F Da Silva,joselhofernandes0611@gmail.com,JFS.tecdesegdotrabalho,1
+Guilherme Augusto Gama Da Silva,guilhermegama0311@gmail.com,Piscina Fácil,1
+Amadeu Baldellas,amadeubaldellas@hotmail.com,AMADEU BALDELLAS ME,1
+Paula Barbosa,paula.barbosa@sakata.com.br,Sakata Seed Sudamerica Ltda,1
+Valter Silva,valtersilva76.vs@gmail.com,VSJ Engenharia,1
+Cristiano Rangel Tauffer,tauffersolutions@gmail.com,TaufferSolutions Informática LTDA ME,1
+Eliane Lopes Dos Santos,compraspedranorte@gmail.com,J.G.INDUSTRIA E COMERCIO DE PEDRAS LTDA,1
+Fagner Soares,fsoares@recordtvi.com.br,RÁDIO JORNAL FLUMINENSE DE CAMPOS LTDA,1
+Zelito Correia Dos Santos,zelitocorreia@gmail.com,zelito correia dos santos 28216075553,1
+Nivaldo Luiz Kuhn,nivaldokuhn@hotmail.com,Auto Posto Proeste Ltda.,1
+Andreia Amaral Zanatta,andreia.amaral@br.atlascopco.com,Atlas Copco Brasil,1
+Geraldo Pessoa Soares Filho,geraldojerumenha@hotmail.com,FOPROTECC,1
+Heraldo Macedo Da Silva Junior,heraldomacedo@joiadovale.com,POSTO JOIA DO VALE,1
+Rafael Jacintho Da Silva,rafaeljacintho@tmg.agr.br,TMG Tropical Melhoramento e Genetica S.A,1
+Reinaldo Borges Garibaldi,reinaldogaribaldi@gmail.com,Agetur,1
+Darieling Machado Ramos,rh@sbarao.com.br,COMERCIAL DAKAT LTDA,0
+Tiago Dos Santos Geraldo,tsantos@soin.com.br,Soluções Inteligentes Operadores Portuarios,1
+Jefter Silva De Moraes,jefter.moraes@betterbeef.com.br,better beef,1
+Camila Nasi,dracamilanasi@clinicavelleda.com.br,MTO EIRELI,0
+Arlene Gomes Dos Santos,arlene@aliancaconsultores.com,Aliança Consultoria em Gestão Empresarial,1
+Ivan Barbosa Da Silva,ivanb2@gazetadopovo.com.br,Rádio Cultura de Marialva Ltda,1
+Valdirene Machado,valdirene.brito@wmfsolutions.com.br,"WMF SOLUTIONS ENGENHARIA E EQUIPAMENTOS, LTDA.",1
+Ronaldo Sousa Vale,cenmar.rn@outlook.com,CENMAR - Centro de Ensino Marítimo,1
+Claudiana Rodrigues,claudianar3@grpcom.com.br,Sociedade Rádio Emissora Paranaense S.A. - Filial,1
+Ana Carolina Silva,anasilva@grpcom.com.br,Sociedade Rádio Emissora Paranaense S.A. - Filial,1
+Amanda Cristina Camargo,amandacamargo@grpcom.com.br,Sociedade Rádio Emissora Paranaense S.A. - Filial,1
+Anderson Guedes,circulodofrio@gmail.com,CIRCULO DO FRIO REFRIGERACAO EIRELI ME,1
+Marina Cassinelli Marques,marina@tecnoperfilaluminio.com.br,Tecnoperfil Aluminio LTDA,1
+Felipe Gabriel Sabatini,sesmt@tecnoperfilaluminio.com.br,Tecnoperfil Aluminio LTDA,1
+Luciano Leal,eusouleal@gmail.com,Grupo Solus,1
+Fabio Maciel Nune,fabio@se77e.com.br,SE77E TELECOM EIRELI ME,1
+Regiane Gerth,regiane@holec.com.br,Holec Indústrias Elétricas Ltda,1
+Robson Renan Da Silva Martini,robsonrenan232@gmail.com,Laides Crema Da Silva,1
+Vinicius Rafael Franze,vinicius@multierri.com.br,MULTIERRI COMÉRCIO E SERVIÇOS LTDA,1
+Fernando Augusto Silva Girard Carneiro,ggcarneiro@gmail.com,Carneiro & Carneiro Ltda,1
+Renan Racanicchi Tura,rrtst@rrtst.com.br,RRT Serviços Tecnologicos,1
+Judite Maria Fernandes,francielly_vh@hotmail.com,PITGEL PINTURAS E REFORMAS LTDA,1
+Marisa Borth,instalapoa@gmail.com,Paulo e Bergmann & Cia Ltda - ME,1
+Matheus Quinzen Fernandes Dos Santos,matheusfernandesantos8881@gmail.com,Paulo e Bergmann & Cia Ltda - ME,1
+João Marcílio,marcilio@hubgreen.com.br,HubGreen Energia e Sustentabilidade,1
+Maysara Michalak,maysara@zanotti.com.br,ZANOTTI S.A.,1
+Fellipe Ozarias,suporte@socse.com,Socse Brasil Soluções em Máquinas Automatizadas LTDA,1
+Lina Lara Da Fonseca Santos,lina.lara@yahoo.com.br,Studio de pilates Bem Estar,1
+Pollyanna De Sousa Gomes,expoente@expoenteengenharia.com.br,Expoente Engenharia,1
+Wilson Oliveira,wilson311087@gmail.com,Programa Imagem ltda,1
+Cristiane Lemos,cristiane.lemos@senairs.org.br,SERVIÇO NACIONAL DE APRENDIZAGEM INDUSTRIAL,1
+Sérgio Alves Marciel Junior,sergiomarciel1507@gmail.com,Showdesign,1
+Desativadomatheus Quinzen Fernandes Dos Santos,desativadomatheusfernandesantos888@gmail.com,Paulo E. Bergmann Cia Ltda,1
+Marisa Borth,instalapoa@gmail.com,Paulo E. Bergmann Cia Ltda,1
+Talita Figueiredo De Oliveira,talita.oliveira@zte.com.cn,"ZTE DO BRASIL, COMERCIO, SERVICOS, IMPORTACAO E EXPORTACAO LTDA.",1
+Alexsandre Oliveira Dias,criarttoldos@yahoo.com.br,Criart Toldos,1
+Wanderson Garrido De Almeida,wangalmeida@hotmail.com,SÃO FRANCISCO COMERCIO DE COMBUSTIVEIS E LUBRIFICANTES LTDA,1
+Paul Willian Failde,paul.failde@thermofisher.com,LIFE TECHNOLOGIES BRASIL COMÉRCIO E INDUSTRIA DE PRODUTOS PARA BIOTECNOLOGIA LTDA,1
+Angelica Denadai,administrativo@transgordo.com.br,Terrafat Locação de Máquinas Ltda,1
+Claudio Roberto Cerqueira,claudio@adn.com.br,NET4TIC CONSULTORIA EM GESTAO LTDA,1
+Guilherme Raposo,guilherme@foxtelecomrj.com.br,FOXTELECOM SERVIÇOS DE INSTALAÇOES,1
+Nilvan Moreira Costa,arq_engprojetos@outlook.com,"N, M. ENGENHARIA COMÉRCIO E SERVIÇOS LTDA",1
+Tiago Abeijon Gadret,tiago.gadret@fundacoesufpel.com.br,FUNDAÇÃO DELFIM MENDES SILVEIRA,1
+Alysson Vinicius Moreira Branco,avmtreinamentosrac@hotmail.com,Alysson Vinicius Moreira Branco - ME,1
+Douglas Zichtl Campos Mariani Pichetti,dpiketi@gmail.com,PICHETTI SERVIÇOS DE ENGENHARIA EIRELI,1
+Jheniffer Guimarães Dos Santos,jheniffer.santos@dunloppneus.com.br,Sumitomo Rubber do Brasil,1
+José Tiago Moraes Drum,financeiro@sauerautomacao.com.br,SGM Automação,1
+Eliana Alves,elianaacessoremoto@gmail.com,ACESSO REMOTO E EQUIPAMENTOS DE SEGURANÇA ELETRÔNICA LTDA,1
+Confiança Soluções E Segurança Ocupacional,confiancasse@gmail.com,Confiança,1
+Moisés Nunes Magalhães Neto,moises.magal@hotmail.com,MOISÉS NUNES MAGALHÃES NETO 147378174-49,1
+José Aparecido Reis Silva,jose.yago.aparecido@gmail.com,José Aparecido Reis Silva,1
+Rodrigo Fagundes Ferreira,rodrigo@montengers.com.br,Montenge Engenharia Ltda.,1
+Cássio Lucena Mendes Da Silva,vcsempremaispb@gmail.com,MARIA ERIL ANIA DE FREITAS LIMA-ME,1
+Zenaldo Onofre De Souza,matheus@granloc.com.br,gran loc locaçao e manutenção ltda,1
+Valdinei Aparecido Castanha,valdinei-castanha@outlook.com,V.a.c.seg segurança do trabalho,1
+Guilherme Araujo Amado,rh@dannenge.com,Dannenge Serviços e Comércio Eireli - ME,1
+Rodrigo Santiago,rodrigo.santiago@mayekawa.com.br,MAYEKAWA DO BRASIL EQUIPAMENTOS INDUSTRIAIS LTDA,1
+Eligiani Alves Ribeiro,eligianialves@outlook.com,Organizações Junqueira Agropecuaria Ltda,1
+Felipe Sd Teste,felipe.4726@gmail.com,Solução Digital,1
+Diego Trizotte,gcn.valtec@gmail.com,GCN Consultoria e instalações,1
+Mirlaine Eva Da Silva,faturamento@davirezende.com,CLINICA RADIOLÓGICA DR DAVI REZENDE,1
+Brunno Willians Burich,brunno.burich@fiesc.com.br,INSTITUTO EUVALDO LODI DE SANTA CATARINA,1
+Karoline Carvalho,karoline.carvalho@agenciaioio.com,AJ ORGANIZACAO DE EVENTOS LTDA,1
+Thayane Maciel,thayane.maciel@agenciaioio.com,AJ ORGANIZACAO DE EVENTOS LTDA,1
+Arnaldo Soares Dos Santos,informatica@tecborr.com.br,TECBORR TECNOLOGIA EM ELASTÔMEROS E PLÁSTICOS INDUSTRIAIS LTDA.,1
+Roberto Zugaib Abdalla,roberto@rzaengenharia.com,RZA Engenharia,1
+Tânia Sgari Dos Santos,tania@mc.inf.br,MCNET - SERVICOS DE COMUNICACOES LTDA - ME,1
+Arivaldo Wierzynski De Oliveira,contato@olmsolucoes.com.br,OLM Soluções,1
+Marcelle Rosas,marcelle.rosas@nissan.com.br,Nissan do Brasil Automóveis,1
+Larissa Azevedo,larissa.azevedo-external@nissan.com.br,Nissan do Brasil Automóveis,1
+Raynara Silva Barbosa dos Santos,raynara.santos@nissan.com.br,Nissan do Brasil Automóveis,1
+Jose Antonio Nunes Ferreira Ferreira,capimmovel@gmail.com,JOSE ANTONIO NUNES FERREIRA FERREIRA,1
+Adilson Rafael Do Nascimento,adilson.segtrabalho@hotmail.com,Facil Prev Segurança e Medicina do Trabalho,1
+Edilan Mendes De Souza,edilan@angularsi.com,angular manutenção industrial ltda,0
+Teste Da Silva,gisa_azul2009@hotmail.com.br,teste,1
+Tiago Santa Rosa,tiago@xpert.com.br,XPert,1
+Roberto Silva Dragão,roberto.dragao@faroenergy.com,Faro Energy Gestão Comércio e Locação de Projetos LTDA,1
+Ana Alice Francisco,aalice@lbv.org.br,LEGIAO DA BOA VONTADE,1
+André Elsner Stimamiglio,andre.stimamiglio@canoasfood.com.br,Canoas Food Comercio de Alimentos LTDA,0
+Meireane Bacarin,financeiro@htbautomacao.com.br,HOME TECH BRASIL AUTOMACAO LTDA,1
+Victor Silva,master.pinturas@hotmail.com,VICTO TUME DA SILVA,1
+Claudiana Rodrigues,claudianar2@grpcom.com.br,Rádio Continental de Curitiba Ltda,1
+Marcos Bragança,marcos.csp@uol.com.br,IRMÃOS MARCONI & CIA LTDA,1
+Mauricio Luis Lopes De Barros,rh@ownline.com.br,MLLB Engenharia e Consultoria Eireli EPP,1
+Nelson Junior Marques Da Silva,nelsornadioterra@gmail.com,Jalla Telecom,1
+Larissa Pereira Dias Costa,dp@penatec.com.br,PENATEC COMERCIO DE MAQUINAS DE PADARIA EIRELI EPP,1
+Eberson Cordeiro De Almeida,contato@infinittreinamentos.com.br,RICARDO RAMOS CONSTRUTORA LTDA,1
+Diter Rodrigues Dos Santos,cafefranquia@gmail.com,CHUCRI ZAIDAN CAFÉ EIRELI ME,1
+Diter Rodrigues Dos Santos,diter.santos@gmail.com,CHUCRI ZAIDAN CAFÉ EIRELI ME,1
+Thiago Ferreira Borges Silva,thiago@postomix.com.br,Postomix Representações e Serviços Ltda.,1
+Alessandro Diniz Pereira,alessandro@previnenet.com.br,Previne Serviços Gerais e Locação de Bens Móveis Ltda,1
+Wilker Lourenco Souza De Paula,ipereira@aralco.com.br,Figueira Industria e comercio,1
+Thais Taniguchi,administrativo@gigadata.com.br,Gigadata Soluçoes de Tecnologia LTDA ME,1
+Alex José Jacob,contato@jjarcondicionado.com.br,JJ Ar condicionado e comercio LTDA ME,1
+Márcio Macedo,marcio.macedo@kemin.com,Kemin do Brasil,1
+Bianca Marinho,bianca.marinho@kemin.com,Kemin do Brasil,1
+Morgana Ferretti,morgana.ferretti@agenciaioio.com,AJ ORGANIZAÇÃO DE EVENTOS LTDA,1
+Luana Janaina Franco Gonçalves,luana.fgoncalves@gmail.com,B F WIFI TELECOM LTDA ME,1
+Karina Ramos,kramos@turbpetropolis.com.br,TURB Petrópolis,0
+Luiz Rodrigues De Souza,wallison.machado@condormet.com.br,Condor Equipamentos Industriais Ltda,0
+Afrânio Ornelas Ruas Vilela,afranio_ruas@hotmail.com,BIOMINAS ENGENHARIA DE ENERGIAS,1
+Andressa Santana,andressa@primeclean.com.br,PRIME CLEAN CONS SER TER LTDA,1
+Thiago Alves Xavier,eletrixautomacao@gmail.com,THIAGO ALVES XAVIER ME,1
+Bruna Abreu,bruna.abreu@tri.com.br,TRI TELECOM LTDA.,1
+Jaqueline Gomes De Souza,financeiro03@ligo.net.br,LIGO TELECOMUNICAÇÕES LTDA-ME,1
+Gilberto Matiano,gmarianus@hotmail.com,Construtora Luxor ltda,1
+Robelito Rodrigues,robelito@vector.com.br,VECTOR SISTEMAS DE AUTOMAÇÃO LTDA,1
+Francisco De Assis Santos,mazuttisantos@hotmail.com,mazutti santos & Cia Ltda-Me,1
+Paulo Sergio Do Lago,paulo.lago@lebrut.com.br,Le Brut Ind. e Com. de Roupas Ltda.,1
+Wilmar Platero,aguerotagara@hotmail.com,LARISSA MACIEL RITTER ME,1
+João Carlos Pierri,joaoviasat@hotmail.com,Jpierri comércio e serviço Ltda me,1
+Cristiane Alves Rodrigues De Sousa,contato@grupovivence.com.br,Vivence,0
+Ja Equipamentos,rh@jaequipamentos.com.br,JA INDUSTRIA E COMERCIO DE MAQUINAS LTDA,1
+Adão Luís Lourenço,homiservi@gmail.com,HomiServi Assistência Técnica em Mãáquinas CNC Ltda - ME,1
+Gilberto Mariano,luaninhamariano@yahoo.com.br,Construtora Luxor ltda,1
+Eduardo Araujo,eduardofcaraujo@gmail.com,FA COMERCIO,1
+Cristina Pacanaro,cristina.pacanaro@grupoarion.com.br,Arion Serviços de Telecomunicações Ltda,1
+Cristiane De Fátima Pereira,cristiane.pereira@esab.com.br,ESAB,1
+Priscilla Pereira De Almeida,priscilla@officeehome.com.br,I.H.D. DE ALMEIDA ME,1
+Gabriel Moraes Henrique,gerencia.ab@ecotradeltda.com.br,Ecotrade Ambiental Água Branca CIA LTDA,0
+Paula Baliu Carnevale,contato@m2pengenharia.com,M2P Engenharia ltda,1
+Danielle Da Costa Pereira,dcpereira@anglogoldashanti.com.br,Mineração Serra Grande S/A,1
+Priscila Cruz Correia Gomes,pcgomes@anglogoldashanti.com.br,Mineração Serra Grande S/A,1
+Luciano Martins Santana,luciano@ambientepublico.com.br,AMBIENTE PÚBLICO CONSULTORIA E SERVIÇOS LTDA,0
+Renata Caetano Canto,condominiovialight@globomail.com,Condominio Edif Via Light Metropolitan,1
+Gracilea Rodrigues,administrativo@innovareeng.com.br,Innovare Engenharia,0
+Edemar Marcelo Ratkiewicz,reparolarflorianopolis@gmail.com,Reparo Lar,1
+Carla Mirelle Santos,mirelle.santos1@basf.com,BASF S/A,1
+Fernando Pereira Quinto,fernando.quinto@basf.com,BASF S/A,1
+Rafael Jose Almeida,rafael.almeida@basf.com,BASF S/A,1
+Alex Souza Vieira,alex.vieira@basf.com,BASF S/A,1
+Andrios Liviera Geleinski,construcoesrgp@gmail.com,RGP CONSTRUÇÕES E FUNILARIA LTDA. ME,1
+Jefferson Moreira Pires Batista,jeff.batista01@gmail.com,Sisteletro Elétrica e Automação,1
+Wilton Moura Valente,wmvservicos@gmail.com,WM VALENTE SERVIÇOS MANUTENÇÃO DE EQUIPAMENTOS MECANICOS EPP,1
+Rogerio Delfino,rogerio@gruponetsolution.com.br,R A DELFINO PROVEDORES DE ACESSO EIRELI ME,1
+Aline Andreozzi Macena Marinho,energy.aline@gmail.com,ENERGY COMERCIO E MONTAGENS ELÉTRICAS EIRELI EPP,1
+João Carlos Detoffol De Souza,jc@manutecmanutencao.com,MANUTEC MANUTENÇÃO EM EQUIPAMENTOS LTDA ME,1
+Elton Franco Oliveira,efoliveiraposto@hotmail.com,Comércio de Combustíveis Vieira LTDA,1
+Denise Oliveira,gestao@amchidraulica.com.br,amc hidraulica,1
+Jailton Bispo Lopes,bispomstec@hotmail.com,Ise Passos dos Santos Lopes,1
+Isaac Dos Santos Silva,isaac@goiasverde.com.br,GOIAS VERDE ALIMENTOS,1
+Vagner Batista,vania_pozzebom@hotmail.com,ELETRO ELETRONICA BEIRA RIO LTDA,1
+Victor Hugo Da Silva,tecsafe@outlook.com.br,VHSINFO,1
+Klebson Mateus,sindico@condominiocaminhodopark.com,Condominio Caminho do Park,1
+Wilton Ribeiro Silva,wilton.tecti@hotmail.com,Teste,1
+Danilo De Campos Araújo,danilocampos@live.com,Domine,1
+Walquiria Araujo Leite Frade,arteemmarmorebh@bol.com.br,ARTE EM MARMORE,1
+Thiago Merhy Valente,thiago@primeiralinhamoveis.com.br,Primeira Linha Móveis,1
+Rodrigo Paiato,rodrigo.paiato@ekmengenharia.eng.br,EKM ENGENHARIAL LTDA,0
+Michelle Miguel Fernandes,adm.equipeclassea@outlook.com,CLÍNICA MÉDICA PREVENÇÃO SOCIEDADE EMPRESÁRIA LTDA,1
+Shirlei Gadioli,postoehotelb.riacho@terra.com.br,Posto e Hotel Barra do Riacho,1
+Lourival Lobo,lourivallobo32@hotmail.com,CTS TELECOMUNICAÇÕES,1
+Thiago Merhy Valente,administrativo@primeiralinhamoveis.com.br,Primeira Linha Móveis,1
+Paulo Muller,costa@idealsms.com.br,Ideal Engenharia LTDA,0
+Juliana Ferretti Batista,dho@redeunifique.com.br,UNIFIQUE TELECOMUNICAÇÕES,1
+Lyane Silva,lyane.silva@somosnsc.com.br,NC ADMINISTRACAO E COBRANCAS LTDA - 72.271.471/0001-45,1
+Cyntia Dias,cyntia.dias@edwardsvacuum.com,Edwards Vácuo Ltda,1
+Luciano Dallago,segsolucoessst@gmail.com,SEG SOLUÇÕES SST,1
+Edson Jacob,edsonjacoob07@gmail.com,Padrão serviços autorizados,1
+Ivete Smiderle Bremm,ivete.bremm@senairs.org.br,SENAI,1
+Anderson Bonatto,gauchoserralheria@gmail.com,Anderson bonatto me,1
+Elvio Paladino,diretoria@portobellocopa.com.br,Tropofino Revestimentos Ceramicos Comércio e Serviços,0
+Darlene Renata De Souza,dinacomg@dinacoferroeaco.com.br,DINACO INDUSTRIA E COMERCIO DE FERRO E AÇO LTDA,1
+Simoni De Lourdes Silva,ssilva@diana-petfood.com,Diana PetFood,1
+Tadeu Henrique Schaion,tadeu.schaion@momentive.com,Momentive,1
+Anderson Peixoto Medeiros,apmedeiros@liquigas.com.br,Liquigás Distribuidora SA,1
+Danilo Sulino S. Pinto,danilo@rydengenharia.com.br,RYD Engenharia,0
+Gustavo De Freitas Iorio,gustavo@enbrageo.com.br,Enbrageo Engenharia Ltda,1
+Taciano Vicente De Melo,taciano@tdmengenharia.com.br,TDM ENGENHARIA LTDA,1
+Carlos Otávio De Oliveira Cortez Junior,carloscortezjr1981@gmail.com,BOM DE JOGO MÓVEIS E JOGOS DE GUAPIMIRIM LTDA ME,1
+Irene Giovaninette Orellana Mariani,irene.mariani@cummins.com,Cummins Brasil LTDA,1
+Dione Furtado,contato@projectumdecoracao.com.br,Justs smiler,1
+Adriana Pereira Soares Targa,farmaceutico@dmaximus.com,DISTRIBUIDORA DE MEDICAMENTOS MAXIMUS,1
+Marlon Fachinelli,contato@fachinellitransportes.com.br,GILMAR L FACHINELLI EPP,1
+Jessica Appelt,administrativo@h2jsolucoes.com.br,H2J SOLUCOES CORPORATIVAS EM GESTAO E TI LTDA EPP,1
+API SERVICOS ESPECIALIZADOS LTDA,apidutos@apidutos.com.br,API Dutos Engenharia,1
+Douglas Do Nascimento,douglas.dn@hotmail.com,DN Pinturas,1
+Janine Thomé Pacheco,janine.thome@pmi.com,Philip Morris Brasil,1
+Amanda Rickes Crochemore,amanda@agrobella.com,AgroBella Alimentos LTDA,1
+Cláudia Martendal Costa,operacional@centrosul.net,CONSORCIO MAGNO MARTINS,1
+Juracy Pereira,vendastsl@terra.com.br,TSL TECNOLOGIA E SISTEMAS LTDA.,1
+Gabriel Frasson,gabriel@mitsidi.com,Mitsidi Serviços e Projetos LTDA EPP,1
+Manoel Pessoa Maciel Junior,secretaria@larsaojoaodedeus.org.br,LAR SÃO JOÃO DE DEUS,1
+Emmanuel Vital De Oliveira Policarpo,contatoprintexpress@gmail.com,Print Express comunicacao visual,1
+Mcruz Engenharia,mcruz@mcruz.eng.br,MCRUZ MANUNENÇÃO E MONTAGENS ELÉTRICAS EIRELI-ME,1
+Tania Cristina Mariani De Paula,tania@setup.com.br,Setup Automação e Controle de Processos Ltda EPP,1
+Jandir Santana Gomes,segurancadotrabalho@totallfex.ind.br,total flex,0
+Ravelli Franco Bernardo,contato@nucleoautomacao.com,Núcleo Automação,1
+Patricia Macedo,patricia@jmacedocia.com.br,23837917000140,1
+Renata Hart,iwtservices@iwtservices.com.br,IWT,1
+Andréia De Azevedo Lopes,andreia.lopes@aeromot.com.br,AEROMOT AERONAVES E MOTORES S/A,1
+Marco Antonio De Castro,trad_marilia@hotmail.com,TRADIÇÃO PRODUTOS AGROPECUÁRIOS,1
+Marcelo Dias,contato@pontoclean.com,Ponto Clean Soluções Sustentáveis de limpeza ltda,0
+Paulo Souza,paulo@isopaineis.com.br,kit,0
+Miriam Aparecida França,contato@inovarreformasesolucoes.com.br,INOVAR REFORMAS E SOLUÇÕES LTDA-ME,1
+Rafael Douglas Coelho Nunes,assistencia@engecomcompressores.com.br,Karla Christiane Coelho EPP,1
+Alexsandro De Souza Da Silva,alex@actecrs.com.br,AC TEC ELÉTRICA,1
+Helton José Da Luz Pimentel,atendimento@hlpbalancas.com.br,hlp-comércio e serviços,1
+Isaac Virginio Dos Santos De Godoi,isaac_godoi@steris.com,Sercon Industria e Comércio de Aparelhos Médicos e Hospitalares Ltda,1
+Elis Bernardes,elis.bernardes@applusk2.com,k2 do brasil serviços,1
+Ana Lídia De Oliveira Ribeiro Firmino,engenharia@segmedcampos.com,SEGMED SERVIÇOS MÉDICOS LTDA,1
+Licio Venancius Oliveira Da Silva,licio@agualimpaenergia.com,ÁGUA LIMPA ENERGIA SA,1
+Evandro Lisboa,eletrobrali@gmail.com,Eletrobrali,1
+Daniela Santuches,contato@andradesinstalacoes.com,Andrades Instalações,1
+Raul Luiz Arend Da Silva Junior,at@balancascriciuma.com.br,Balanças Criciúma,1
+Lorenna Escobar,lorenna.escobar@saoexpedito.com.br,TRANSPORTES SÃO EXPEDITO,1
+Heryka Lima,heryka-costa@bol.com.br,R & H CONSULTORIA LTDA,1
+Filiph Barbosa,lifecool.cg@gmail.com,Life Cool Refrigeração e Climatização,1
+Daniel De Abreu Maciel,danielabreu88@ymail.com,Maciel Manutenção,1
+Grécia Nunes Fiuza,grecia.ssma@ws-service.com.br,WS Soluções Corporativas,1
+Fernando Sergio Miranda,fernandomiranda@tanktest.com.br,TANKTEST TECNOLOGIA AMBIENTAL LTDA,1
+Cristo Nzinga Nsimba,nsimbachri@gmail.com,kwanda limitada angola-soyo,1
+Neuriedes Da Silva Junior,neurieletricista@hotmail.com,Neuriedes da silva junior eletricista me,1
+Sirlene Dias de Souza,contato@vikacontrols.com.br,Vika Controls Com. de Inst. e Sist. Ltda,1
+Claudia Beatriz Antunes De Souza Cunha,claudiabeatrizsouza03@gmail.com,GERANCE GERENCIAMENTO E CONSULTORIA LTDA,1
+Raquel M Meneghini,meneghini_raquel@pesa.com.br,Paraná Equipamentos S/A,1
+Maria Aparecida Do Nascimento,cida@qgog.com.br,QUEIROZ GALVAO OLEO E GAS S.A.,1
+Guterres Projetos Ltda,marciatvale@guterres-br.com,GUTERRES PROJETOS LTDA,1
+Juliana Sá,financeiro@tecnoriosul.com.br,Tecno Rio Sul Comércio e Serviços Ltda,1
+Brasil Espresso,priscila.tolentino@brasilespresso.com.br,Brasil Espresso Comércio Atacadista Ltda,1
+Andre Gilberto Barth,andrebarth@certelnet.com.br,Ivania Bernadete Barth e Cia Ltda,1
+Marcio Henrique Rosa,marcio@msdsinfo.com.br,MSDS INFORMATICA E AUDIOVISUAIS LTDA ME,1
+Alef Vieira Cabreira,lefcabreira@gmail.com,EVO EQUIPAMENTOS EIRELI,1
+Luzane Silva,dp@mha.com.br,MHA Engenharia Ltda.,1
+André Luiz Resende,andre@reritec.com.br,ANDRE LUIZ RESENDE 042.823.176-47,0
+Marco Cerulli,marco@tavolaeng.com,Tavola Engenharia e Comercio de Equipamnetos Ltda,1
+Lucas Alves Pires,lucas.pires@rbdimagem.com.br,REDE BRASILEIRA DE DIAGNÓSTICO,1
+Marlise Potrick Stefani,marlise@nutritecnica.com.br,NUTRITÉCNICA LTDA,1
+Ana Carolina Melo De Sousa,karol-melo23@hotmail.com,Lima e Melo Combustíveis,1
+Eider Da Silva Silveira,comercial@essengenharia.com.br,ESS Engenharia,1
+Dayse Liz Das Gracas Conceicao,dayse.conceicao@hermespardini.com.br,instituto hermes pardini s/a,1
+Bruno Rodrigues Lopes,bruno.lopes@cmigroupe.com,CMI Serviços Brasil,1
+Mário Sérgio Da Silva,mario@gaucha.com,Fiação e Tecelagem Gaúcha LTDA,1
+Érico Rezuski,rezuskimeat@gmail.com,RezuzkiMeat o mundo das carnes,1
+Neuza Hening,dragagemmcrondon@gmail.com,dragagem mcrondon ltda,1
+José Edimar Da Silva,gia@edcontrolmacae.com.br,Edcontrol Serviços de Petroleo e manutenção de Equipamentos Ltda,1
+Jose Claudionor Pereira Da Silva,tempostar@outlook.com.br,tempostar ar condicionado,1
+Lilian Aparecida Rosa Magalhães De Arruda,lilian@msgas.com.br,COMPANHIA DE GÁS DO ESTADO DE MATO GROSSO DO SUL - MSGÁS,1
+Laraue Pommerening,laraue@msgas.com.br,COMPANHIA DE GÁS DO ESTADO DE MATO GROSSO DO SUL - MSGÁS,1
+Eduardo Ribeiro,j.p.construcoes96@gmail.com,JPconstruções e reformas,1
+Jose Faria Freire Junior,junior@construtoraarco.com.br,CONSTRUTORA ARCO LTDA,1
+Ana Paula Lopes,contato@prevensolucoes.com.br,Preven Soluções,1
+Luis Fernanado Linares,artefinal@serigrafsjb.com.br,LUIS FERNANDO LINARES ME,1
+Fabiane,fabiane.marin@ou.com.br,MARTIPLAST INDUSTRIA E COMERCIO DE PLÁSTICOS,1
+Daniele Martins,administrativo@eletronic.srv.br,NOW SERVIÇOS TECNICOS ESPECIALIZADOS,1
+Luis Miguel Meneguel,luis.miguel@construcasa.mat.br,CONSTRUFORT ENGENHARIA,0
+Stephânia Mayara Machado Marques,stephaniamarques@tca.eng.br,TCA MEIO AMBIENTE LTDA,1
+Jose Erivan Da Silva,ritelspssp@live.com,jose erivan da silva telefones EPP,1
+Guyllermo Bueno,onicron@onicron.com.br,OINCRON TRANSPORTES LTDA,1
+Arnaldo De Figueiredo,afigueiredo@centroflora.com.br,ANIDRO DO BRASIL EXTRAÇÕES S.A.,1
+Osvaldo Rodrigues Junior,osvaldo.treinamentos@hotmail.com,OSVALDO RODRIGUES JUNIOR,1
+Cleberson Rodrigues Chaves,nfe@polpacanaa.com.br,AGROINDUSTRIAL FRUTNAA LTDA,1
+Nathalia Almeida,nathalia.almeida@arborbrasil.com.br,Arbor Brasil Industria de Bebidas LTDA,1
+Leandro Dos Santos Ayala,leandrosayala11@gmail.com,L.E.S TEC,1
+Wergneaud Machado,cismed@hotmail.com,CISMED,1
+Ricardi Meneghini,ricardi@matrixenergetica.com.br,MATRIX Energética LTDA,1
+Ray Soares,best-sp@bestconstrucoes.com.br,BEST TRANSPORTES E CONSTRUÇÕES LTDA,1
+Fernando Rosa Silva,fernando.silva@primient.com,TATE & LYLE BRASIL S.A (DEFINITIVA),1
+Antonio Donzieti Da Silva,antonio.silva@primient.com,TATE & LYLE BRASIL S.A (DEFINITIVA),1
+Fernando Rosa Silva,fernando.silva@primient.com,Tate & Lyle Brasil S.A.,1
+Desativado Desativado,amanda.santosdesativado@tatyandlyle.com,Tate & Lyle Brasil S.A.,0
+Maira Sidrim,ha0g6-gm@accor.com,ATRIO HOTEIS S.A,1
+Fernanda Batista,fernanda@jomaga.com.br,JOMAGA PARTICIPAÇÕES LTDA,1
+Juliana Konflanz Da Silva,jsilva@internationalmealcompany.com,Pimenta Verde alimentos,1
+Jailton Costa Carqueija,jccarqueija@gmail.com,Gomes Geradores,1
+Tatiana Cristina Quilici De Oliveira Santos,tatianaconsultoraiso@gmail.com,T.C.Q. de O. Santos Gestão Empresarial,1
+Leonardo Afonso Alves,financeiro@relotec.com.br,Relotec Comercio Ltda,1
+Ronaldo Bonato,teresopolis@ecocontrol.com.br,R A Bonato Serviços de Dedetização,1
+Emanuelle Cristina Duarte De Figueiredo,emanuelle.duartefigueiredo@clissof.com.br,Figueiredo & Barbosa Serviços de Saúde Ltda,1
+Oscar Bessa De Campos,oscar@genaltec.com.br,Genaltec,1
+Luiz Carlo Gomes,idelagasbc@gmail.com,ideal gas,1
+Camilla Adams,rh_matriz@tecnoparksolucoes.com.br,TECNOSIN SINALIZAÇÕES EIRELI,1
+Jobson Pontes De Carvalho,uniclimaltda@terra.com.br,UNICLIMA LTDA,1
+Claudia Figueiredo,n-nely-fontan@bol.com.br,JBR PNEUS COMÉRCIOS E SERVIÇOS LTDA,1
+Fabio Toledo Campos,fabio@mcend.com.br,MC END Prestação de Serviços Ltda ME,1
+José Maria Moura Da Silva,moura_jmms@hotmail.com,Instalações elétricas Moura Ltda,1
+Evamauro Oliveira,mauro@cemtradf.com.br,Clinica Cemtra,1
+Wanderley Celestino Da Rocha,suporte@biocontrolbahia.com.br,BIO CONTROL DESINSETIZADORA,1
+Leonardo C Moreira,tecnosulconstru@hotmail.com,Tecnosul Construções Ltda.,1
+Carina Raquel Ratti,flashinfo@flashinfo.com.br,Flashinfo - Equipamentos e Serv. de Informatica LTDA - ME,1
+José Milton Anastácio Alves Júnior,grupoglobalgrafica@yahoo.com.br,GLOBAL BRINDES PERSONALIZADOS LTDA,1
+Eder Wenzel,eder@gwequipamentos.com.br,GW Equipamentos de Controle Ambiental LTDA,1
+Brenno Santos Dornela,preservlimpeza@hotmail.com,Preserv limpeza Controle de pragas Ireli,1
+João Rafael Candido de Souza,joaorcsouza@gmail.com,Preserv limpeza Controle de pragas Ireli,1
+Claudio Ferreira Madureira,eletricacfm@gmail.com,C.fmadureira prestação de serviços de eletricidade,1
+Ricardo Johnes Da Silva,johnesvitor@gmail.com,Toniolo busnello s.a,1
+Guilherme José Batista,financeiro@igtech.ind.br,igtech-engenharia e planejamento,0
+Jose Maria,comercialjjr@gmail.com,J. JUNIOR COMERCIO E REFORMAS,1
+Jorge De Castro,jorge.castro@alertbrasil.com.br,Alert Brasil,1
+Aldo Delfini Junior,aldodelfini@gmail.com,Toledo & Delfini Ltda,1
+Cesar Ramos Ferreira,ramos-ferreira2010@bol.com.br,CCF,1
+Gabriela Dal Bó Heinzen Cascaes,gabiheinzen@yahoo.com.br,Heinzen Cascaes Diagnóstico por imagem,1
+Paulo Sergio Gonçalves Aderaldo,psga2014@gmail.com,P S G ADERALDO ME,1
+Camila Fernandes,camila.fernandes@uniplastic.com.br,Uniplastic Indústria e Comércio Ltda,1
+Ivana Sayuri Kodama,ivana.kodama@fmc.com,FMC Química do Brasil LTDA,1
+Nelson Marques De Queiroz Monteiro Junior,atendimento@ethernetwork.com.br,Ethernetwork Soluções e Treinamentos,1
+Jair Monteiro De Lima Júnior,jairmlj@hotmail.com,ENSINO FUNDAMENTAL SILVA LTDA ME,1
+Adilson Araujo Leite,adilson.leite@sollarservicos.com.br,SOLLAR SERVICOS DE ENGENHARIA EIRELI - ME,0
+Marcelo Knust Sant'Anna Filho,contato@knustengenharia.com.br,Knust Engenharia,0
+Tiago Brandão Da Silveira,tiago.silveira@htengenharia.eng.br,HT Soluções em Engenharia Ltda,1
+Jaderson Thiago Lima Viana,jaderson.viana@sotreq.com.br,Sotreq S/A,1
+José Adriano Dos Santos Oliveira,adrianomontagem@hotmail.com.br,ADR MONTAGEM,1
+Artezor Toniolo Junior,artezor.toniolojunior@marfrig.com.br,Marfrig,1
+Marcio António Ribeiro Mello,suacasaemboasmaos@hotmail.com,Sua casa em boas mãos,1
+Jonatas Felippe Damotta,tjeletricistas@hotmail.com,tjeletricista,1
+Robério Perigolo De Abreu,systemsatmeltda@hotmail.com,Aquece Mais Aquecedor Solar,1
+Rodnei Rodrigues Junior,jsktt7@gmail.com,Instituto Mauá de Tecnologia,1
+Richard Silveira Maciel,atendimento@provedoraplateia.com.br,Rafael Badra Caloca,0
+Marcello Gouveia,marcello@netres.com.br,NETRES COMERCIO E PRESTAÇÃO DE SERVIÇOS LTDA -ME,1
+Hélio Pinto Rodrigues,helio@elevarconsultoria.com,Elevar Consultoria Ltda,0
+Tadeu Leite Veloso,tlveloso@hotmail.com,Posto Campeão,1
+Natali Corrêa,administracao@projeletro.com,PROJELETRO PROJETOS E MONTAGENS INDUSTRIAL,0
+Sonia Guerreiro Fistarol,sguefis@gmail.com,Hotel Lumar Ltda,1
+Rose De Souza,contato@aliancaconsultores.com,ALIANÇA CONSULTORIA EM GESTÃO EMPRESARIAL LTDA,1
+Neidi Marques,ctex@executar.com.br,GADENZ MANUTENÇÃO INDUSTRIAL LTDA,1
+Rodrigo Reis Krauchenco,rodrigo@printspace.com.br,PRINT SPACE COMUNICAÇÃO VISUAL LTDA,1
+Marcelo Piaz Vianna,comercial@4u.com.br,4u Network,1
+M E P Da Costa,costac764@gmail.com,mepdacosta,1
+Isabela Vieira,contato@emolduras.com.br,EVERALDO MOLDURAS,1
+Ricardo Delvechio Da Silva,compras@oerlikon.com,OERLIKON BALZERS REVESTIMENTOS METÁLICOS LTDA,1
+Carla Vanessa Bouchet,katiucia.barbosa@ldcom.com,LOUIS DREYFUS COMMODITIES BRASIL S.A.,1
+Rafael Rossignolo Franciscato,rafael.franciscato@terra.com.br,MS AMBIENTAL CENTRAL DE ESTERELIZAÇÃO LTDA - EPP,1
+Italo Brasileiro Guimaraes,italobrasileiro@gmail.com,tomazelli comercio e servicos ltda,1
+Adeni Da Lapa Cargnin Junior,junior@tifloripa.com.br,TEC SERVICE SERVIÇOS EM EQUIPAMENTOS ELETRÔNICOS EIRELI ME,1
+Marinda Lima,marinda.lima1@kemin.com,Kemin do Brasil Ltda,1
+Rosália Maria Raiol De Andrade,rosalia.raiol80@gmail.com,HIDROVIAS DO BRASIL - VILA DO CONDE S/A,1
+Marcia Suelí Ferreira Alves,cardealrh@ig.com.br,CARDEAL GESTAO EMPRESARIAL E SERVIÇOS LTDA,1
+Junior Morais,sincon-construtora@hotmail.com,SINCON CONSTRUTORA EIRELI - EPP,1
+Leonardo Conrat Pedro,perfectqualitysound@hotmail.com,L de carvalho gouvea conrat sons me,1
+Vanessa Dos Santos Sena,vanessa.sena@eldoradobrasil.com.br,ELDORADO BRASIL,1
+Andre Fornitani,biomedic.aph@gmail.com,BIO MEDIC ASSESSORIA E TREINAMENTOS,1
+Diego De Souza Lima,tr3bahia@gmail.com,D DE SOUZA LIMA ME,1
+Luiz Gustavo Affonso,engenharia@affonsoconstrutora.com,Affonso Construtora,0
+Jorge Bastos Vilela,jorge.bastos@abengoa.com,Omega Operação e Manuteção de Linha de Transmissão,1
+G&P,gestao@omegaenergia.com.br,Omega Operação e Manuteção de Linha de Transmissão,1
+James Goldenberg,eurobraz@novanet.com.br,Eurobraz Móveis,1
+Joel Pires Machado,piresmach@gmail.com,MDCAD PROJETOS EIRELI - ME,1
+Fernando Costa Oliveira,fernando@trafodobrasil.com.br,Trafo do Brasil Transformadores e Equip. Eireli,1
+Endrigo Dalla Riva,endrigo@amitelservices.com.br,AMITEL SERVICES LTDA,0
+Tadeu Mauricio Lohn Santos,atus_suporte@hotmail.com,ATUS SERVIÇOS E COMERCIO DE PRODUTOS DE INFORMATICA LTDA,1
+Rodrigo Castilho Da Cruz,inove@inoveqsms.com,INOVE QSMS,1
+Vinícius Aguiar De Mello,ssvendas4@gmail.com,S.S. COMÉRCIO DE EPI´S,1
+Leandro Lanzillo,contato@smart-electric.com.br,Smart Electric Engenharia e Sistemas LTDA,1
+Klezio Portes Reis,engenharia@isegconsultoria.com.br,ISEG CONSULTORIA,0
+Valéria Bezerra,cpem@secrel.com.br,CPE Consultoria e Projetos Elétricos Ltda,1
+Antônio Carlos Lapa,esacengenharia@gmail.com,Esac Engenharia Ltda,1
+Gisella De Oliveira,adm@integrasul.net.br,INTEGRASUL SISTEMAS DE SOFTWARE LTDA,1
+Lucas Davila,lucas@ieducativa.com.br,iEducativa,1
+Augusto Cesar Georgino Honório,augustoh@ipiranga.com.br,IPIRANGA PRODUTOS DE PETROLEO,1
+Bruno Garcia Cazzolato,bcazzolato@betterbeef.com.br,FRIGORIFICO BETTER BEEF LTDA,1
+Deise Tariga,deise@pertencer.com.br,Pertencer,1
+Marcelo Ribeiro Garajau,mrg.adesivos@yahoo.com.br,Mrg adesivos e prestação de serviços,1
+José Ademir Bezerra,prevencaoecombateaincendios@gmail.com,ONG DE PREVENÇÃO E COMBATE A INCÊNDIOS,1
+Marcos Da Silva,msntma222@gmail.com,Boi Corte LTDA EPP,1
+Vanessa Lima Pires,administrativo@mekatronik.com.br,MEKATRONIK IND. E COM. DE AUTOMAÇÃO LTDA,1
+Danilo Sabino,adm3@mekatronik.com.br,MEKATRONIK IND. E COM. DE AUTOMAÇÃO LTDA,1
+Auto Posto Cirimbelli,adm@cirimbelli.com,auto posto cirimbelli,1
+Luciano Campos,compras@prevenironline.com.br,PREVENIR SOLUÇÕES LTDA,1
+Thadeu Santos Bomfim,cont.colchoesecia@gmail.com,COLCHOES E CIA LTDA,1
+Victor Rodrigues,agencia.vrmarketing@gmail.com,Agencia VRMarketing,1
+Valdines De Cassia Chagas Da Silva,valdinescssia2006@yahoo.com.br,valdines de cassia chagas da silva,1
+Agem Tecnologia E Com. Ltda,afra.distribuidora@gmail.com,AGEM TECNOLOGIA,1
+Diogo Fernandes Antonio,diogo.fernandes2016@outlook.com,AM&DM INDUSTRIA COMÉRCIO E IMPORTAÇÃO LTDA,1
+Orlando Wahl,wahlwab@gmail.com,wab empreiteira de mao de obras-me,1
+Henrique Omena,henrique@sinteligente.com.br,H A DE SOUZA OMENA INTALACOES ME,0
+Jacqueline Da Silva Soares,segurancadotrabalho@vidroboxdistribuidora.com.br,Vidrobox Temper de Montes Claros,1
+Carlos Magno Da Costa,tecmagnocosta@gmail.com,TBG,1
+Ailton Bocanera,ailton@agautomacao.com,A&G Automação Industrial Ltda ME,1
+Mariana Schaedler,mariana.schaedler@ecometano.com.br,Ecometano,1
+Nathan Liyodi Nariai,financeiro@plataoenergia.com.br,PLATÃO ENERGIA LTDA - EPP,1
+Isabelle Ribeiro Rodrigues,administrativo@vdhcorreias.com.br,VAN DER HULST IND. IM. E EXP. LTDA,1
+Daltro Aécio Herbert,dah_led@live.com,Daltro Aécio Herbert,1
+Oli Telecomunicações,carlos@ngtelecom.com.br,OLI Telecomunicações,1
+Winter Correia,winter.correia@falcaobauer.com.br,Grupo Falcão Bauer,1
+Jassaiana Ribeiro Adler,jassaiana.adler@falcaobauer.com.br,Grupo Falcão Bauer,1
+Maximo Caldas Simões,maximo_caldas@hotmail.com,Maximo Caldas Simões,1
+Paulo Roberto Marcelino,pr-marcelino@ig.com.br,PAULO ROBERTO MARCELINO& CIA LTDA,1
+Fabiano Bergozza,autolab@terra.com.br,Laboratório Autolab Ltda,1
+Erika Koch,erika@longen.com.br,Longen Engenharia,1
+Athayde José Da Silva Junior,comercial@thd.com.br,ALLCONNECT,1
+Cezar Araujo Moreno,ca.eletrica.seg.eletronica@outlook.com,Cezar Araujo Elétrica e Segurança Eletrônica,1
+Henrique Teixeira Rocha,sassmaq.apoio@transac.com.br,Transac,1
+Goncalo Augusto Ribeiro Leite,gleite@stcp.com.br,STCP,1
+José Cargnin,cargnin@alca.eng.br,alca,0
+Airton De Oliveira,adancristian@outlook.com,Airton De Oliveira Restaurante,1
+Sandra Neto,admin@calcario-imap.com.br,CALCARIO IMAP,1
+Fernando Cesar Costa,fernando.costa@estre.com.br,CGR Itaborai,1
+Glaucia Andrade De Souza,financeiro@srsconnect.com.br,SRS CONNECT,1
+Alcir Jose Cordeiro,k.a.empreiteiraemaodeobra@hotmail.com,k.a.empreiteiraemaodeobra,1
+Antonio Carlos Aparecido Filho,antonio.fenix.agricola@gmail.com,Fênix Agricola,1
+Wagner Francisco De Paula,wdepaulam@ig.com.br,W&M Segurança do Trabalho e Meio Ambiente,1
+Maria Izabel Cassiano,anaclaracm25@hotmail.com,ASSADOS & CIA,1
+Debora Andrade Costa,debora.costa@sandech.com.br,SANDECH - Consultoria em Engenharia e Gestão Ltda.,1
+Emilio Cristiano Olsen Notário,emiliofrigocal@hotmail.com,FRIGOCAL,1
+Jean,jean.ferreira@phlaengenharia.com.br,PHLA,1
+Joelcio Martins Da Silva Lopes,axxo.industrial@live.com,AXXO MANUTENÇÃO INDUSTRIAL,1
+Marili Azevedo,mazevedo@igtecbrasil.com.br,IGTEC BRASIL,1
+Luciano Góes,lgcinstalacoes@hotmail.com,LGC-Instalações,1
+Adriano Eulálio,adrianoeulalio@hotmail.com,CHAMBARIL FEIJOADA DO JOÃO,1
+André Ferreira Luna,comercial@techprintinformatica.com.br,TECHPRINT SOLUÇÕES EM TI E SEGURANÇA ELETRÔNICA,1
+Isnarde Constantino Miguel Filho,isnarde@clinicachronos.com.br,Clinica Chronos - Gestão em Saúde e Segurança do Trabalho,1
+Sônia Silvestri De Araujo,restaurantebongosto@hotmail.com,RESTAURANTE BONGOSTO,1
+Franciel Alves Da Silva,franciel.fpolis@gmail.com,PADRAO REVESTIMENTOS ESPECIAIS,1
+Marcos Roberto Paulo,marcosr.paulo@hotmail.com,Eletrotecnica M&W ltda,1
+Daiane,famanutencaoadm@gmail.com,FA Manutenção,1
+Hélio,postoccolombo@redenortesul.net,Posto cristovão colombo,1
+Cíntia Aparecida Rocha Serpa,cintiarochaserpa@gmail.com,Brasil Instalações e Serviços Ltda,1
+Valmiro Quéfren Gameleira Nunes,valmiroquefren@hotmail.com,GAMELEIRA ENGENHARIA,1
+Diego Silva Seabra,diego@ecobuild.eco.br,Ecobuild - Reservatórios Metálicos,0
+Evando Vilas Boas,aircooling@oi.com.br,AIR COOLING,1
+Euricério Filho,euricerio.filho@kerneos.com,Kerneos,1
+Edson Catalan Larratea,larratea@larratea.com.br,LARRATEA COMBUSTIVEIS,1
+Leandro Souza Dos Anjos,leandro.anjos@walmart.com,Postos WalMart,1
+Paulo Rullan,paulo@innvolt.com.br,INNVOLT INSTALAÇÕES E PROJETOS,1
+Camoí Gomes De Aguiar,camoi@btnsolucoes.com.br,BTN Soluções,1
+Gerson Camargo,gerson.camargo@ppengenharia.com,PP Engenharia Ltda.,1
+Larissa Querino,larissa.querino@supermix.com.br,Supermix Concreto,1
+José Fernandes,jose.pereira@tapme.com.br,TAP M&E,1
+Rogelio Silva De Oliveira,comercial@acslab.com.br,ACS LABORATORIOS,1
+Gilmar Vitorino De Borba,wgusinagem@gmail.com,WG usinagem,1
+Elaine Maciel Da Silva,tocadasalada@gmail.com,Toca da Salada,1
+Luís Gustavo Barbosa Da Silva,luisgustavo.sp@hotmail.com,ENGSEG,1
+Mateus Rusch,financeiro@livenetwork.com.br,LIVE NETWORK,1
+Paulo Renato Lima,contato@altarf.com.br,ALTARF Engenharia e Consultoria,1
+Bruna Estefani,st11.criciuma@maxipas.com.br,Maxipas,1
+Robinson Paim,robinsonpain@gmail.com,Roogans Ambiental,1
+Maria Aparecia Neponunceno De Carvalho,marianeponunceno01@hotmail.com,AUTO POSTO TENENTE,1
+Eri Santana,eri@pontodanet.com.br,PDN TELECOM,1
+Vanise,mfsilva47@hotmail.com,HGC HOSPITAL GERAL DE CAMAÇARI,1
+Gleydson Wendell Carmo De Jesus,gleydsonwendeldocarmo@gmail.com,Do Carmo construções e reformas,1
+Juliana,seguranca@elofar.com.br,Elofar,1
+Paulo Roberto Bauer,bauer@beel.com.br,beel equipamentos eletromecanicos ltda,1
+Darling,darlingl1407@gmail.com,Bright Service,1
+Domicio Leopoldo De Andrade Neto,dlaconsultoria@globo.com,DLA CONSULTORIA,1
+Fabio Ferreira Lima,fabiosegurancastc@hotmail.com,STC,1
+Mauricio Daniel Vogel Da Silva,mauricio.vogel@ul.com,UL Testtech Laboratórios,1
+Marcelo Franco Naves,uberlandiacentro@doutorresolve.com.br,Doutor Resolve,1
+Sonia Lieko Sano Okubo,sonia.lieko@hc.fm.usp.br,Hospital Auxiliar de Suzano,1
+Leandro Oliveira,suporte@brsuper.com.br,BRSUPER,1
+Fernando Fernandes,anjorefrigeracao@gmail.com,Fernando Fernandes,1
+Darilson M. Barbosa,darilsonmb@hotmail.com,R & D Engenharia e Informatica,1
+Aloisio Angelo Marchezan,aloisio@auxile.com.br,Escola de Educação Profissional Auxile,1
+Renato Gomes Corazza,renato@corazza.eng.br,CORAZZA INCORPORADORA,1
+Guto,trattoriadoguto@hotmail.com,Trattoria do Guto,1
+Jhonatan Alberto Aguiar,brunapaula.unitec@gmail.com,UNITEC,1
+Artur Danilo S. Teixeira,artur.danilo@gmail.com,EAS Projetos,1
+Carolina,carol.bastt@gmail.com,prime soluções elétricas,1
+Rui Ambrósio Junior,ruambros@gmail.com,R & G Projetos,1
+Jaci Machado Reys,jacimachadoreys@gmail.com,Dona Jaça,1
+Maurilio Nardo,maurilio_nardo@hotmail.com,malupetro transportes ltda,1
+Maria Teresinha Da Silva,teresinha@petrobras.com.br,Unidade de Operações Refinaria Alberto Pasqualini,1
+Milena Barboza Giardiello,milena.giardiello@unimed.coop.br,UNIMED - Unidade UNIDAS 2021,1
+Vanusa Felix,vse.contato@gmail.com,Vse-Verissimo Serviços Especializados,1
+Carlos Roberto Consorte Pasoto,pasoto@yahoo.com.br,AAP,1
+Franciete C. Moraes Batista,franciete.moraes@waterloo.com,Waterloo,1
+Suellen Gonçalves,suellen@dragagembrasil.com.br,Dragagem Brasil,1
+Frederico De Andrade Pereira,frederico@constroiengenharia.com.br,Constroi Arquitetura e Engenharia Ltda,1
+Fabio Valerio Rodrigues Louzado,treinamento@bethaespaco.com.br,OMEGA IMÓVEIS E SERVIÇOS LTDA,1
+G&P,gestao@omegaenergia.com.br,OMEGA IMÓVEIS E SERVIÇOS LTDA,1
+Lucas Couto Verreschi,lucascouto@velloznet.com.br,VELLOZNET DIGITAL NETWORK,1
+Roseane Albuquerque,seguranca@jatobeton.com.br,Jatobeton Engenharia,1
+Jorge Antonio Mendes De Oliveira,beirariosom@hotmail.com,AUTO SOM BEIRA RIO,1
+Janiely Parron,rh@consultoriointeligente.com.br,EASY,1
+Cristiano Siqueira Da Silveira,pontofrioam@ig.com.br,PONTO FRIO,1
+Marcelo Tavares Chaves,marcello.enzo@gmail.com,Body Full Nutrição Esportiva,1
+Cristiane Pereira Torres,ecocenter@ecocenter.med.br,Ecocenter Serviços Hospitalares e Diagnosticos Ltda,1
+Márcia Meneses,marcia.meneses@globalcob.com.br,Marcia,1
+Silmara Oliveira,silmara.oliveira@guiandotelecom.com.br,Guiando Sistemas de Telecomunicações,1
+Darlene Pires,darlene@mcruz.eng.br,MCRUZ ENGENHARIA LTDA,1
+Antonio Marcos Patricio Ferreira,ddtaraujo@gmail.com,Dedetizadora Araujo,1
+Daniel Luiz Aoki,danielluiz.aoki@gmail.com,PontoCom Informática,1
+Cristiane Ribeiro,criskajc@hotmail.com,Jc telgados,1
+Jose Ademir Bezerra,prevencaosegurancasmc@gmail.com,ONG DE PREVENÇÃO E COMBATE A INCÊNDIOS,1
+Luciana Cardoso Cerruti,luciana_traszi@hotmail.com,Restaurante El Gato,1
+Larissa Amaral,larissa.deus.123@hotmail.com,Estojos Baldi,1
+Valmir Pedroso Da Silva,taemcasarest@hotmail.com,RESTAURANTE TA EM CASA,1
+Carina Honório Tiago,carina.honorio@belagricola.com.br,Belagrícola,1
+Janaina Correa,financeiro@tecnofortecamaras.com.br,TECNOFORTE,1
+Roger Pinto E Silva,roger@tera.net.br,Tera informática,1
+Marcia Pivato,marciapivato@msky.com.br,Msky,0
+Thais,thais@petrelengenharia.com.br,Petrel Engenharia LTDA,1
+Maria Ap. Gonzaga,eletromagui@hotmail.com,Mag Gerenciamento,1
+Fernando Carvalho Benevides,sonhodeminas@gmail.com,fernando carvalho benevides 83870342153,1
+Marcelina Moreira Da Silva,aat.marcelina@gmail.com,AAT-MEDICINA E SEGURANÇA DO TRABALHO,1
+Paulo Ricardo,empreiteirapra@gmail.com,EMPREITEIRA P.R.A CONSTRUÇOES E SERVIÇOS,1
+Marco Antonio Dal Pai,marco01469108@gmail.com,Dal Pai Contabilidade Ltda,1
+Cassio Schneider,cassio@up3drs.com.br,UP3D Soluções em Treinamentos,0
+Marcos Rogerio Dos Santos,cm2refrigeracao@globomail.com,cm2 refrigeracão ltda,1
+Maria Aparecida Diniz,hotelcolorado@uol.com.br,HOTEL COLORADO,1
+Marcelo R Theodoro,marcelobichim@redebichim.com.br,BICHIM TRANSPORTE,1
+Rafael Da Silva Tomita,rental.tokyo@gmail.com,TOKYO RENTAL - LOCACAO DE MAQUINAS E EQUIPAMENTOS LTDA - ME,1
+Arthur Bossardi Borges,administrativo@longhiautomacao.com.br,Eletec Equipamentos para Automação,1
+Airton,airton@valpasa.com.br,Valpasa Papel e Embalagens,1
+Janaina Dias Concenza,janaina.dias@solarisbrasil.com.br,Solaris Equipamentos e Serviços S.A. / MILLS,1
+Rachel de Figueiredo da Silva Ataide,rfsataide@mills.com.br,Solaris Equipamentos e Serviços S.A. / MILLS,1
+Ana Caroline Domingos Ferreira,acdferreira@mills.com.br,Solaris Equipamentos e Serviços S.A. / MILLS,1
+Isabela Serralha de Lima Teixeira,isteixeira@mills.com.br,Solaris Equipamentos e Serviços S.A. / MILLS,1
+MARINA PATRICIA MENCONCA DA SILVA,marina.mendonca@mills.com.br,Solaris Equipamentos e Serviços S.A. / MILLS,1
+Matheus Homem dos Santos,matheus.homem@mills.com.br,Solaris Equipamentos e Serviços S.A. / MILLS,1
+MARIANA RUFINO NOVAIS,mariana.novais@mills.com.br,Solaris Equipamentos e Serviços S.A. / MILLS,1
+Allan Caputto Macedo,allan.macedo@mills.com.br,Solaris Equipamentos e Serviços S.A. / MILLS,1
+Paula,rospezani@ig.com.br,Rospezani Engenharia em Instalação Elétrica,1
+Leonardo Roque Alves,contato@serae.com.br,SERAE - Cursos Profissionalizantes,1
+Paulo Falco,phfo@uol.com.br,Paulo,1
+Rodrigo Vermoehlen,rodrigo.automacao@paranatex.com.br,Paranatex,1
+Paloma Hirakawa,paloma@etkz.com.br,Etkz,1
+Franciele Rocha,smivaipora@ig.com.br,mercado total,1
+Jaqueline Dos Santos,telredes@telredes.com.br,Telredes Cursos,1
+Cari Roberto Rosa,cariroberto@gmail.com,Caseg,1
+Jair Luiz De Matos Filho,suna_cm@hotmail.com,jls,1
+Mauricio Rubo,mauricio.rubo@trf1.jus.br,TRF 1ª Região,1
+Claudia Lucia Azevedo,azevedonoleto-ac@hotmail.com,bom paladar,1
+Vanessa Cristina Cardoso De Oliveira,ceicasteloencantado@hotmail.com,CASTELO ENCANTADO,1
+Adilson Martins Da Rosa,adilsonkr@hotmail.com,Nex Control,1
+Nataly Caroline Solano Rodrigues,mercadolagoa.floripa@gmail.com,lagoa Generos Alimenticios,1
+Leandro,leandro@promontime.com.br,Promon Time,0
+Juliana,sinttro@sinttro.com.br,SINTTRO,1
+Heraclito Charão Palmeira,charao@correios.com.br,CORREIOS,1
+Pamela Chiminacio,pamelac@grpcom.com,RPCTV-Londrina,1
+Camila Castelli Nunes,mhrconstrutora@gmail.com,MHR,1
+José Stembrino Paz Escobar,jspeassessoria@hotmail.com,J S PAZ ESCOBAR - ME,1
+Gerson Lapchenski,gerson1@energiso.com.br,Energiso,0
+Adriana,rh@syscodeconsultoria.com.br,Syscode Consultoria,1
+Norman,fnrefrigeracao@ig.com.br,FN REFRIGERAÇÃO,1
+Gabrielle Rocha,comercial@naturezaviva.com.br,Natureza Viva,1
+Adriano Alves Ribeiro,aa.alvesribeiro@hotmail.com,adriano alves construçoes,1
+Flavio Menossi Furlan,flavio@gruporasssicom.br,MASTER JARDINÓPOLIS EMPREENDIMENTOS E CONSTRUÇÕES LTDA,0
+Giovani Lima,giovanilima27@gmail.com,G Lima consultoria,1
+Cristiano Listoni,cristianoprojesul@hotmail.com,Projesul,1
+Tiago Maciel,personal.valmor@gmail.com,artigos de praia bc,1
+Luiz Antonio Alves De Oliveira,stbtreinamentos@gmail.com,STB CURSOS E TREINAMENTOS,1
+Leri Farias Gonçalves,leryfarias@gmail.com,Meu camarim,1
+Bruno Tonini,contato@pilar-aracruz.com.br,Pilar,1
+Nestor Terra Dias,nestor.dias@urbano.com.br,Arroz Urbano,1
+Márcia Alvares,contato@alvaresarcondicionado.com.br,Alvares Ar Condicionado,1
+Annibal Vianna Sampaio Neto,geradm@icb.com.br,Yacht Clube da Bahia,1
+Luciana,lrsfranca@faj.br,FAJ,1
+Sonia Maria Da Silva Santos,sonia-ramalho@hotmail.com,restaurante tia sonia ltda,1
+Marcos Roberto Righi,marcosrighi@avato.com.br,Avato,1
+RALFE TEIXEIRA REAL,ralfereal@avato.com.br,Avato,1
+Nísia F. Dellapino,nisiadellapino@cremesp.org.br,CREMESP,1
+Margareth,margareth.rodrigues@rminfraestrutura.com.br,RM INFRAESTRUTURA,1
+Marconi Muilaert Junior,marconi.markone@gmail.com,Mark One,1
+Gabriele,gabriele.figueiredo@supremocimento.com.br,Supremo Cimento,1
+Antonio Mariano Gomes,antonio.gomes@trifil.com.br,Scalina,1
+Vanessa Bilotti Laidens,rh@refratek.com.br,REFRATEK IND,1
+Viviane Duarte,amanda.sequeira@covidien.com,POLYSUTURE,1
+Creso Macedo,creso.macedo@cw-opr.com.br,CUSHMAN WAKEFIELD,0
+Daniela,daniela@wetzel.com.br,WETZEL,1
+Ismael Lourenço,recrutamento2@verdesmares.com.br,TV VERDES MARES,1
+Pablo Pinheiro,pablo@rdoisitservices.com.br,RDOIS IT SERVICES,1
+Fernanda Caroline Borges,rh@metaindustrial.com.br,Meta Engenharia.,1
+Cristiane Cordeiro,financeiro@solucoesprime.com,PREMIER SOLUÇÕES TECNOLOGICAS,1
+Josemir Manoel Da Silva,cursos1@energeticaserranopolis.com.br,energetica serranopolis,1
+Edney Monte,edney.monte@ig.com.br,CATELECOM,1
+Anderson Andrade,anderson.andrade@tdwilliamson.com,T.D. Williamson,1
+Rosely Marin Zito,contato@ahmiluminacao.com.br,AHM Iluminação,0
+César Francisco Nascimento,cmibnu@terra.com.br,CMI,1
+Willian,wst.engenharia@gmail.com.br,WST Engenharia,0
+Gabriela Henrique Zambaldi,gabriela@giga.inf.br,LUVI COMERCIAL LTDA,1
+Mislene Aparecida Lima Ferreira,mislenelima1@hotmail.com,ligue china delivery,1
+Marco Antonio,agroarms@hotmail.com,agro-ar,1
+Locaban Banheiros Químicos,socorrolages@gmail.com,Locaban,1
+Raul Soares,empsoares@yahoo.com.br,RS Empreiteira Constr. Ltda,1
+Gabriel Santiago Gastardelli,gabriel@grisanti.com.br,Grisanti,1
+Carla,santanacarlinha@hotmail.com,gringos lanches,1
+Hans,hans.kedor@engecorps.com.br,Engecorps,1
+Flavio De Luca,flavio.luca@sulnorte.com.br,Sulnorte,1
+Lilian Cristina Barbosa Ribeiro,lbribeiro.sbgl@infraero.gov.br,INFRAERO,1
+Geraldo Carlos De Araujo,carlos.policlinicabritanica@hotmail.com,POLICLINICA BRITANICA,1
+André Júnio Gonçalves,andrejgonsalves@yahoo.com.br,Barbosa & Andrade,1
+Ananias Herculano Dos Santos,setral@setralconsultoria.com.br,SETRAL CONSULTORIA,1
+Roberto Ludwig,betogueta@bol.com.br,Ludwig instalações elétricas,1
+Lucas Moura,lucas@marmoriamoura.com.br,marmoraria moura,0
+Renan Grano,h4construcao@gmail.com,H4 construcao civil e fundacoes,1
+Jean Xavier,maxseg.sms@gmail.com,JEAN CARLOS DE SOUSA XAVIER,1
+Wendell Almeida Santos,wendell.mwservice@gmail.com,MW Service,1
+Alecsandro Lopes,nadia.sn@hotmail.com,conseg,1
+Alecsandro Lopes,alex.jlopes@hotmail.com,conseg,1
+Tiago Janke,tiago@colegioestillo.com.br,Grupo Educacional Walesko EIRELE - ME,1
+Cleonice Rodrigues Das Chagas,cleonicer528@gmail.com,VOU Hotelariaeireli,1
+Jeferson Vaz De Freitas,jefersonengenharia@live.com,Jvf engenharia,1
+Andrea Vieira Lopes Cunha,marketing@vnet.com.br,ICTUS INFORMATICA E TELECOMUNICAÇÕES LTDA,1
+Leandro Borges,leandro@lifttechnology.com.br,LIFT TECHNOLOGY LTDA - ME,0
+Bahia Ferro Fsa Ltda,cintia@bahiaferro.com.br,BAHIA FERRO FSA LTDA,1
+Paulo Fernando Lovato,pflovato@uol.com.br,COMERCIAL DE COMBUSTIVEIS LOVATO LTDA,1
+Natanael Costa Da Silva,sevemhome@gmail.com,SEVEM HOME,1
+Carolina Pucci,carolpuccci@exactaderme.com.br,EXACTADERME,1
+Ana Carolina De Salles Godo,financeiro@eficel.com.br,Eficel Eficiencia Elétrica,1
+João Francisco Da Silva Filho,lucascarvalho@icamentosmartins.com.br,Içamentos Martins,1
+Johnson Hamada,johnsonhamada@hotmail.com,Hamada Agencia de Empregos,1
+Thiago Cesar Souza Lopes,coordenacao@amundialoleoegas.com.br,AMUNDIAL ÓLEO E GÁS LTDA ME,0
+Fernanda Feiten,fernanda@jaequipamentos.com.br,JA INDUSTRIA E COMERCIO DE MAQUINAS LTDA,1
+Luiz Antonio Alves De Oliveira,stbtreinamentos@terra.com.br,STB CURSOSE TREINAMENTOS,1
+Thiago Freitas,itaocapc@terra.com.br,Itaoca Projetos e Construções Ltda.,1
+Ronaldo De Oliveira E Silva,ronaldo.oliveira@rhonna.com.br,RHonna Human Solutions,1
+Beltran Rurick Guedes Lira,beltran_itachi@hotmail.com,ELETRONORTE,1
+Valério Santos De Souza,souza.valerio@ymail.com,VALERIO SANTOS DE SOUZA,1
+Hamilton Passos,gerenciaoperacao@sfrancisco.net,SAO FRANCISCO COMERCIO DE COMBUSTIVEIS E LUBRIFICANTES,1
+Rafael Alonso,administracao@sfrancisco.net,SAO FRANCISCO COMERCIO DE COMBUSTIVEIS E LUBRIFICANTES,1
+Ana Lucia De Lima Bezerra,ana.bezerra@uol.com.br,Terminal Químico de Aratu S/A - Tequimar,1
+Fabio Souza,fabio.souza@sfrancisco.net,SAO FRANCISCO COMERCIO DE COMBUSTIVEIS E LUBRIFICANTES,1
+Jackson Da Silva,estudioaraca@gmail.com,jackson da silva studio me,1
+Edson Pires Guimaraes,edson@projeletro.com,PROJELETRO PROJETOS E MONTAGENS INDUSTRIAL,0
+William Guedes,ajms.comercial@gmail.com,AJMS engenharia ltda.,1
+Joanis Ambrosio Poubel Oliveira,joanispoubel@gmail.com,CLODOALDO CESAR DE PAULA - ME,1
+Pedro Caduda,orcamentos.campinas@gmail.com,Ar condicionado campinas,1
+Marcia Baltazar,rh@marambaia.com.br,Marambaia Hotel S.A.,1
+Ivan Da Silva,sesmt@jacarei.sp.gov.br,Prefeitura de Jacareí,1
+José Vieira Dos Santos,vieira@visteon.com.br,Vistecon contabilidade SS _ EPP,0
+Nilton Jose De Oliveira,njsistemas@njsistemas.com.br,NJ SISTEMAS,0
+Andrea Martin Da Silva,andrea.martin@bourbon-online.com,BOURBON OFFSHORE MARITIMA SA,1
+Rodrigo Porto,rodrigo@ufpmaquinas.com.br,U.F.P MÁQUINAS E EQUIPAMENTOS LTDA-ME,1
+Henrique Dos Santos Scarabelli,henrique.santos@energec.com.br,Energec,1
+Murillo Tampelini,murillo.tampelini-external@bluestarsilicones.com,MURILLO,1
+Alencar José Do Carmo Veiga,alencarveiga@yahoo.com.br,Alencar José do Carmo Veiga,1
+Emidio Galvão,emidio@shw.com.br,SHW Automação Industrial,1
+Norival Brazilino Rocha Junior,norivalrc@gmail.com,NBR TELECOMUNICAÇÕES E CONSTRUÇÕES,1
+Vinicius Luis Alexandre,nfe@forjascaxiense.ind.br,Forjas Caxiense LTDA,1
+Luiz Henrique Da Silva,l.henrique26@hotmail.com,ZEITOUN & ZEITOUN,1
+Clenisse Faccioli Anunciação,segurancadotrabalho@sccereais.com.br,sc cereais,1
+Eliane Teles Ferreira,liotelesferreira@gmail.com,T & F Construções e Empreendimentos Ltda,1
+Sabrina Duenki,financeiro.bnupragas@terra.com.br,Blumenau Controle de Pragas,1
+Rangel Das Chagas Cambuim,rangel.cambuim@venergia.com.br,Votorantim Energia,1
+Camila Miranda Da Silva,camila.silva.cs1@vcimentos.com,Votorantim Energia,1
+Romeu Frusciante,cpqiguatemi@terra.com.br,ORS CAFE LTDA,1
+Jallinne Acruche,gerencia@segmedcampos.com.br,segmed serviços medicos,1
+Adm Silva,adm1@wssistec.com.br,WS SISTEC,1
+Wagner Francisco De Paula,wmsegurancadotrabalho@gmail.com,W&M Segurança do Trabalho e Meio Ambiente,1
+Kleber Bertalha Teodoro,kleber.bertalha@pssengenharia.com.br,KLEBER BERTALHA TEODORO ME,1
+Carlos Egmar De Oliveira Brito,carlinhosurso@hotmail.com,C7 CONSTRUÇÕES,1
+Amanda Silva De Almeida Lima,st@ipapeis.com.br,INDUSTRIA DE PAPEIS PARA EMBALAGENS IRMÃOS SIQUEIRA LTDA,1
+Hyatan Hyury Fagundes,wa.som@hotmail.com,hyatan hyury fagundes me,1
+Desativado Desativado,sonia@tecebem.com.brdesativado,Tecebem Beneficiamento Têxtil Ltda,0
+Ailton Bocanera,cursos@agautomacao.com,AG AUTOMAÇÃO INDUSTRIAL,1
+Miguel Topanotti,eskimosorvetespf@gmail.com,M.M. COMÉRCIO E DISTRIBUIÇÃO DE SORVETES,1
+Josue Miranda Da Silva,josue@jncombustao.com,josue miranda da silva 40131652877,1
+Lucas Borges Guimarães,guimaraesearantes.eng@gmail.com,GUIMARÃES E ARANTES LTDA,1
+Edson Nascimento,edson.nascimento@marcaambiental.com.br,MARCA CONSTRUTORA,1
+Marcelo J Gasparini,gasparini-assessoriaeconsultoria@hotmail.com,gasparini assessoria consultoria representação e venda,1
+Fernando Acosta,fernando@redetell.com.br,PRORIM,1
+ROSENILDE SCHULZ,segtrab@prorim.org.br,PRORIM,1
+Fabiano Alves Maciel,fabianoalvesmaciel@gmail.com,Faseg Assessoria e Consultoria em Segurança do Trabalho,1
+Bo Chang,bo.chang@esstech.com.br,ESSTECH SOLUCOES EM TECNOLOGIA LTDA - EPP,1
+Lazaro Destefani,jkinstalacoes@bol.com.br,joão a kanheski me,1
+Rodrigo Antunes Da Silva,guigoa_silva@live.com,RAS Prestação de Serviços,1
+Luiz Claudio Machado Da Silva,lcsms.adm@gmail.com,LC SMS SOLUÇOES EM GESTÃO INTEGRADA,1
+Edinéia De Fatima Eugênia Dos Prazeres,cieloengenharia@gmail.com,Cielo Engenharia LTDA ME,1
+Douglas Batista Silva,contato@geraldorefrigeracao.com,Silva Refrigeração Limitada - ME,0
+Raquel Vitorino,raquel.harpia@hotmail.com,HARPIA TRANSPORTE LTDA,1
+Maria Aparecida Nobre,maria.goncalves@st.unisal.br,UNISAL,1
+Icaro Ricardo Castro Piana,icaro@emeque.com.br,EMEQUE EMPRESA MINEIRA DE EQUIPAMENTOS LTDA,1
+Rivael Alves De Araújo,riva.eletricista@hotmail.com,Riva serviços elétricos,1
+Durval Simões Junior,durval@nr4.com.br,NRQuatro Segurança do Trabalho e Meio Ambiente Ltda,1
+Carolina Sampaio De Brito Duarte,marceloinho963@hotmail.com,RIO REAL DERIVADOS PETROLEO,1
+Jose Cicero,tecs.alagoas@gmail.com,tecs - seguranca do trabalho,1
+Andre Luiz Araujo,andre@intertechrio.com.br,IntertechRio,1
+Eletrotec Soluções Elétricas,eletrotecbg@gmail.com,DDP SOLUÇÕES ELÉTRICAS LTDA,1
+Cláudia Leite,comercial.cpassecon@gmail.com,CP ASSECON – Saúde e Segurança do Trabalho Eireli EPP,1
+Melina Kubo Batista,melina@catime.com.br,TRANSPORTADORA E ENTREGADORA SAO TOME LTDA,1
+Joice Martins Teixeira,joiceteixeira@factorhumano.com.br,Factor Humano,1
+Délcio Chicora,delcio@paranacidade.org.br,PARANACIDADE,1
+Diego Alexandre Rezende Marcondes,diegoarezende@gmail.com,SESMT ASSESSORIA EM SEGURANÇA DO TRABALHO E SAÚDE OCUPACIONAL,1
+Fernando Marafoc,intertelasplasticos@gmail.com,intertelas plasticos eireli me,1
+Roberto Carlos De Azevedo,robertocarlos.robertocarlosadv@gmail.com,Roberto Carlos de Azevedo Sociedade Individual de Advogados,1
+Gabriel Aparecido Damasceno Souza,comercial.gmcsolar@gmail.com,Prisma Energy Solar,1
+Alexandre Amarilho,alexandre@triaviation.com.br,Tri Aviation,1
+Adalberto Correia Dos Santos Junior,adalberto.santos@coopsp.coop.br,Coop - Cooperativa de Consumo,1
+Gcomm Teleinformatica Ltda,contato@gcomm.com.br,GCOMM TELEINFORMATICA LTDA - ME,1
+Sandra Vasconcelos,multi.solucoes@gmail.com,MULTI SOLUÇÕES EQUIPAMENTOS DE PROTEÇÃO INDIVIDUAL LTDA EPP,1
+Abmidia Comunicação,administrativo@abmidiabh.com.br,ABmidia Soluções Digitais e Editoração Ltda,1
+Lilyane Nunes De Oliveira,lilyanenunes@gmail.com,Staefa Control System Ltda,1
+Silvio Nei De Jesus Dos Santo S,silvionjsantos@hotmail.com,freelance santos,1
+Carla Virginia Arantes,arantescarla@ig.com.br,ESCOLA ARANTES LTDA,1
+Rennand Melo,saopaulo@impactoeng.com,Impacto São Paulo,1
+Clovis Hoffmann,thevesom@gmail.com,TVSOM COMERCIO DE ELETRO ELETRONICOS EIRELI - ME,1
+Thenile Coleta Arrruda,thenile.arruda@agroamazonia.com.br,AGRO AMAZÔNIA PRODUTOS AGROPECUÁRIOS S/A,1
+Iara Lurdes Pereira,geane.souza.geane@hotmail.com,Frangos Morgana Abate de aves Ltda,1
+Sandra Mendes,mendes.sandra@towerinternational.com,TOWER AUTOMOTIVE DO BRASIL LTDA,1
+Luiz Henrique Da Silva Veras,veras_skt@yahoo.com.br,Gigabyte Telecomunicações,1
+Alessandro Ferreira Dos Santos.,alessanfs.19@gmail.com,Tryoutoos,1
+Aguinaldo Ataide De Sousa,aguinaldo.ataide@yahoo.com.br,Instituto de ensino Técnico Ataide,1
+Fábio Dos S. Sousa,paulocesarpd@hotmail.com,Hidro Posto Dendezeiros,1
+Gregor Goedert De Oliveira,gregor@santopedaco.com,Santo Pedaço Pizzas Ltda,0
+Lourival Alves Antunes,refricoolmiacltda@hotmail.com,Refricool MIAC Ltda,1
+Nivea Nely De Amorim Fontan,niveanely@gmail.com,JBR PNEUS COMÉRCIOS E SERVIÇOS LTDA,1
+Edson Dos Santos Ferreira,pontualmedicao@hotmail.com,PONTUAL MEDIÇÕES E SERVIÇOS LTDA ME,1
+Jose Amilton Alves,vendas@mserradourada.com.br,metalurgica serra dourada,1
+Genilson Mendes Amaral,niu_14@hhotmail.com,VG AMARAL INSTALAÇÕES LTDA- ME,1
+Everaldo Borges,promorarprojetos@gmail.com,promorar,1
+Elizeu Marcos Izaias,elizeu.m.i.1971@gmail.com,AUTO POSTO SKINÃO DE GARÇA LTDA,1
+Joana Darc Pereira Dantas,joanadantas@hotmail.com,KIMMAI INDÚSTRIA E COMÉRCIO DE PRODUTOS DE LIMPEZA LTDA,1
+Nelson Teixeira Filho,nelson.filho@ibrep.com.br,IBREP/PR,1
+Alison Da Rosa,contato@larestrelaguia.com.br,Estrela Guia,1
+Laura Torres Oliveira Peixoto,laura@gptopografia.com.br,GP Engenharia e Topografia LTDA,1
+Luiz Carlos Mesquita,luiz.mesquita@falgoes-solutions.com.br,Falgoes-solutions Serviços industriais,0
+Jean Carlos Pereira,jean@avivalog.com.br,Aviva Serviços,1
+Fabrício Mendes,futuroinformaticacj@hotail.com,Alfa Informática,1
+São Francisco Combustíveis,paa.campinagrande@sfrancisco.net,SÃO FRANCISCO COMERCIO DE COMBUSTÍVEIS E LUB. LTDA,1
+Marco Aurélio Sugino Toba,marcotoba1@hotmail.com,Centro de Estudos Superiores de Santo Antonio de Jesus,1
+Josiane Fernandes,jfernandes@centroflora.com.br,Anidro do Brasil Extrações SA,1
+Bruno Ferreira Lemos,bruno.lemos@clnorte.com.br,CLN,1
+Thiago Sautchuk,thiago.s@eloforte.com,Eloforte Equipamentos Florestais,1
+Ana Leide Mendonca,ana.mendonca@gertec.com.br,gertec brasil ltda,1
+Levi Ferreira De Oliveira,levi.kznet@hotmail.com,KzNet Telecom,1
+Tatiana Marchese Barbosa,tatii_mar.barbosa@hotmail.com,dedetização barbosa,1
+Moizes Costa,moizes_costa@yahoo.com.br,Empreiteira Josamar LTDA,1
+José Luiz Moreira Dos Santos,joseluizmoreiradossantos@gmail.com,Futuro Solar Ltda,1
+Josiane Lopes,rh1@hmsresiduos.com.br,HMS TRANSPORTES,1
+Shirley Sousa,souzacoelhokaren@gmail.com,Supermix Concreto,1
+Washington Luis Cruz Gouveia De Asevedo Machado,washington@wmconectividade.com.br,W L C G DE A MACHADO CONECTIVIDADE E ELÉTRICA ME,1
+Massaru Nassu,massaru@biocamp.com.br,BIOCAMP LABORATÓRIOS LTDA,1
+Sergio Albuquerque Frederes,sergio.frederes@coloproctocanoas.com.br,Coloprocto - Clínica do aparelho Digestivo,1
+Vitor Waiand,vitor.waiand@brasil-agro.com,jaborandi Agricola ltda,1
+Ana Dalmar Barros Das Neves Gomes,andbng@hotmail.com,AMG ASSISTÊNCIA MÉDICA GLOBAL,1
+Sergio Aparecido Alvarenga,sap_alvarenga@hotmail.com,SERGIO APARECIDO ALVARENGA-95866752891,1
+Janaína Oiiveira Annunciato,financeiro@atriaengenharia.com.br,ATRIA CONSTRUÇÕES LTDA EPP,1
+Marcos Agner,marcosagtst@hotmail.com,moto serviços especializados,1
+Vanessa Fernandes,vanessa.fernandes@netwest.com.br,NETWEST PROVEDOR BANDA LARGA,1
+Roberto Soares,vsrionegro@hotmail.com,METAL VIDRO CONSTRUÇÃO LTDA-EPP,1
+Hermann Rainer De Britto,hermann.britto@live.com,Weir do Brasil,1
+Marcelo Borges Martins,contato@heliumsolar.com.br,CONSET,1
+Alza Gama,alza@colegioplante.com.br,Colégio PLANTE,1
+Marli Kasper Rex,marlirex@yahoo.com.br,MECANICA REX,1
+Annias Herculano Dos Santos,ananias.herculano@setralconsultoria.com.br,SETRAL CONSULTORIA,1
+Jose Claudio Mirandola,cmirandola@ashland.com,ISP Ind e Com de Ingred e Esp para Alimentos Ltda,1
+Douglas Dos Santos Rodrigues,douglas@dsrsolucoes.com.br,DSR SOLUÇÕES EM ELETRÔNICA LTDA.,1
+Ballagro Agro Tecnologia Ltda,ednaldo@ballagro.com.br,Ballagro Agro Tecnologia Ltda,1
+Jarbas Carneiro,cafecoite@gmail.com,E A RAMOS CARNEIRO,1
+Carlos Rollim,cd45ilumina@gmail.com,CD 45 Montagens Ltda ME,1
+Andre Luiz Ramos Da Silva,andretst@live.com,NACONSULT,1
+Fransimar Aparecido Da Silva,fransireformax2010@hotmail.com,FRANSI REFORMAX PINTURA HIDRÁULICA E ELÉTRICA LTDA,1
+Daniel Gomes Silva,metodoinspecoes@hotmail.com,método inspecões,1
+Matheus Borges De Oliveira,l.aservicosdeancoragem@gmail.com,L A ANCORAGEM PREDIA,1
+Giane Rodrigues Da Costa Souza,gianercs@hotmail.com,FG Confecções,1
+Clemar Marciano Di Rado,junior@vanguardsecurity.com.br,Vanguard Security,1
+Mauricio Ferreira Pinto,financeiro@csaambiental.com.br,CSA GESTÃO DE SERVIÇOS LTDA,1
+Gil Sil,gilvanerh@gmail.com,Braslumber,1
+Agenor Antonio De Freitas,agenor@gerlab.com.br,GERLAB INDÚSTRIA E COMÉRCIO DE MÓVEIS E EQUIPAMENTOS PARA LABORATÓRIO LTDA,1
+Carlos Nunes De Souza,rhdracena@hotmail.com,CNS TECNICO EM SEGURANCA DO TRABALHO,1
+Marcos Agner,marcosagtst@gmail.com,moto serviços especializados,1
+Agenor Antonio De Freitas,fiscal@gerlab.com.br,GERLAB INDÚSTRIA E COMÉRCIO DE MÓVEIS E EQUIPAMENTOS PARA LABORATÓRIO LTDA,1
+Viviane Marques De Moraes,barcafeagora@gmail.com,Viviane Marques de Moraes,1
+Marcos Santos Souza Santos,marcomssouza@hotmail.com,MS SOUZA,1
+Marcelo Santos,atendimento@multigas.com.br,D.P.A SERVIÇOS EIRELI,1
+George Lacerda,george@handsonconsultoria.com,HandsOn Consultoria,1
+Vania Regina,vania@tecnoambar.com.br,Tecnoambar Eletricidade e Automação Ltda,1
+Lazaro Destefani,laxarodestefani@bol.com.br,joão a kanheski me,1
+Lazaro Destefani,lazarodestefani@bol.com.br,joão a kanheski me,1
+Clemer Lopes,financeiro@grupoambipar.com.br,getel transporte,1
+Graziele Alves Penariol,adm1@squareautomacao.com.br,Grad Square Serviços de Automação Ltda,1
+Willian Marinho,contato@consultoriaomega.com.br,Omega Engenharia,0
+G&P,gestao@omegaenergia.com.br,Omega Engenharia,1
+Ana Kruk,financeiro@tonvisual.com.br,Ton Visual Comunicação Ltda,1
+Ana Paula Dos Santos,anaescoladominio@gmail.com,ANA P DOS SANTOS,1
+Jonathan Santana Da Silva,jhonsantanasilva92@gmail.com,Brumado Internet,1
+Digital Cine Audio Video,digitalcinevideo@gmail.com,Digital cine Audio e video,1
+William Vilani Moreira,williamvilane@alumglassesquadrias.com.br,ALUMGLASS ESQUADRIAS DE ALUMINIO,1
+Aléxis Naud Rosa,financeiro.slbc@slavierohoteis.com.br,SLAVIERO EMPREENDIMENTOS HOTELEIROS LTDA,1
+José Douglas Matheus Souza Alves,douglasmatheus12@hotmail.com,SMTT ARACAJU,1
+Rodrigo Villas,arqvillas@gmail.com,ARQVILLAS REFORMAS PREDIAIS EIRELI,1
+Sueli Mitie Katata Forti,ghk-smk@hotmail.com,São Bernardo,1
+Guaci Bravosi Tonelo,contato@aguiasegur.com.br,aguia sistemas de segurança,0
+Marcelo Cardoso,mcsguia@hotmail.com,Cases temporada.com,1
+Luiza Antunes Soares,luiza.soares@esab.com.br,ESAB - SALVADOR,1
+Vanessa Yoko Futata,qualidade@attos.ind.br,Attos Serviços de Alimentação,1
+Vanessa Yoko Futata,vanessa@attos.ind.br,Attos Serviços de Alimentação,1
+Carmelita Forbici,odomdebemcuidar233@onedrive.com,O DOM De Bem Cuidar,1
+Luiza Antunes Soares,luiza.soares@esab.com.br,ESAB-RIO DE JANEIRO,1
+Andre Silva Faria,suporte02pc@gmail.com,Tracker,1
+Luiza Antunes Soares,luiza.soares@esab.com.br,ESAB - PORTO ALEGRE,1
+Luis Roberto Ribeiro Seixas,ribeiroseixas@ribeiroseixas.com.br,Ribeiro Seixas Instalacoes e Materiais Eletricos Ltda,1
+Cordeiro Guindastes,anapaula.berg@grupocordeiro.srv.br,Grupo Cordeiro,1
+Josemari Barreto,josi.barreto@oi.com.br,usm,1
+Anderson Eduardo,lab@cottonil.com.br,Cottonil do Brasil,1
+Jacir Paris,jacir@xpert.com.br,XPERT,1
+Ramon Leal De Freitas,mgarcondicionado@hotmail.com,M&G arcondicionado,1
+Ivonildo Moura Macedo,phenix.solucoes@gmail.com,phenix.solucoes@gmail.com,1
+Mario De Melo,mario.melo@mdmconsulting.com.br,MDM CONSULTING,1
+Pablo Gutterres Martins,pablo@redesplit.com.br,Pablo Gutterres Martins,0
+Sheila Rodrigues,sheila@asst.com.br,ASST Assessoria e Suporte em Segurança ltda,1
+Poliane Heloisa De Araujo,heloizapoliane@gmail.com,DHL SUPPLY CHAIN,1
+Claudia Sandi,rh@trdi.combr,MECANICA INDUSTRIAL CAXIAS EIRELLI,0
+Jair Pereira Da Silva,jpcascavel28@hotmail.com,CONSEGT,1
+Fernanda Luisa Gewehr,fernanda203131@gmail.com,ALS CALÇADOS LTDA ME,1
+Liziane Salomao,liziane.salomao@mcgengenharia.com,MCG ENGENHARIA DE PROJETOS LTDA.,1
+BRUNO MAURITAN BISPO CINTRA,bruno.cintra@mcgengenharia.com,MCG ENGENHARIA DE PROJETOS LTDA.,1
+Cláudia de Oliveira Cruz,claudia.cruz@mcgengenharia.com,MCG ENGENHARIA DE PROJETOS LTDA.,1
+Edinaldo Cavalcante Dos Anjos,catia_sely@hotmail.com,METATIVA CONS. E SERV. DE ENGENHARIA LTDA,1
+Maria Aparecida Dos Santos,arestaurepinturas@outlook.com,Arestaurepinturas,1
+Luis Rodolfo Pereira,helptronic1508@gmail.com,Helptronic Manut. Ind.,1
+Ana Paula Vargas Monteiro,ana@multmetal.com,Multmetal Com Visual e Serralheria Ltda ME,1
+Marcelo Juliano Da Silva,delta.brasileira@gmail.com,Deltaseg - Segurança e Medicina do Trabalho,1
+Alexandre De Abreu Gomes,alex_agomes@hotmail.com,LDA Telecomunicações,1
+Igor França Guedes,suporte@1rigo.com.br,Registro de Imóveis da 1ª Circunscrição de Goiânia,1
+Janisson De Melo Santos,janisson_melo@unit.br,Gráfia Gutemberg,1
+Rafael Gomes,financeiro@procnc.com.br,"PROCNC MANUTENÇÃO, REPARAÇÃO EM EQUIOAMENTOS, IMPORTAÇÃO E COMERCIO LTDA",1
+Janisson De Melo Santos,janissonsantos@yahoo.com.br,Gráfia Gutemberg,1
+Marcia Carvalho,marcia@balancaspadrao.com.br,BALANÇAS PADRÃO LTDA,1
+Aguinaldo Ataide De Sousa,aguinaldo@institutoataide.com.br,Instituto de ensino Técnico Ataide,1
+Marcio Falchi Vieira,marcio_falchi@hotmail.com,marcio falchi vieira - mei,1
+Paulo Henrique De Lima Sabra,sabra@ssabra.com.br,S & Sabra Comércio e Serviços Ltda,1
+Kemerson De Oliveira Batista,protwork@hotmail.com,PROT-WORK ASSESSORIA E CONSULTORIA,1
+Fernando Wolffenbuttel,comercial@fwsolucoes.inf.br,20670713000170,1
+Josemari Barreto,seguranca@usm.ind.br,usm,1
+Camila R Wilbert,camila@vigimaster.com.br,Vigimaster,1
+Alumater Alumínio Industrial Ltda,maiara.orlandi@alumind.com.br,Alumater Alumínio Industrial,1
+Cristian Trapp De Carvalho,suprimentos.compras@unilasalle.edu.br,UNIVERSIDADE LA SALLE,1
+Maria Augusta,autoposto2irmaos.ro.nfe@gmail.com,COMPANHIA RODRIGUES DE COMBUSTIVEIS,1
+Robson Vieira De Castro,rvc-alsken-es@hotmail.com,Alsken Serviços Técnicos e Manutenção,1
+Roger Alvarenga,g5ambiental@hotmail.com,R. Alvarenga-ME,1
+Jorge Da Silva Santos,jorgesilvakv@yahoo.com.br,visamtec projetos e instalações Ltda.,1
+Alexandre,almoxarifado@copper100.com.br,copper100,1
+Fernando Ogawa,fernando@canalvoce.com.br,Canal Você,1
+Joy William De Oliveira Matos,joy.matos@isiengenharia.com.br,ISI ENGENHARIA E COMÉRCIO LTDA,1
+Glasiela Freire Ferreira Damazio,glasifreire@hotmail.com,Samarco,1
+Brunno Raythz,vendas@polisservicos.com.br,massagão e almeida sistemas de segurança,1
+Kênia Barbosa,psicokenia@yahoo.com.br,Shambelle indústria e comércio de cosméticos ltda,1
+Julia Fernanda,seguranca@thecmec.com.br,THECMEC CALDERARIA E TUBULAÇÃO LTDA ME,1
+Sueli Becker,mercadobecker1@hotmail.com,MERCADO BECKER,1
+Vinícius Lima,vinicius.lima@unimedprudente.com.br,Unimed - F'NA EOURO GESTAO DE FRANCHISING E NEGOCIOS LTDA,1
+Milena Barboza Giardiello,milena.giardiello@unimed.coop.br,Unimed - F'NA EOURO GESTAO DE FRANCHISING E NEGOCIOS LTDA,1
+Mariana Garcia,mirianruolla@nobleagri.com,Noble Agri,1
+Tatiana,tatiana.castelli@gleam.com.br,Gleam,1
+Caroline,carol.pinheiro@bb.com.br,Banco do Brasil,1
+Aguinaldo Junior,junior@cargomax.com.br,Cargoflex,1
+Amarildes Pereira De Andrade,artessma@gmail.com,ARTESSMA CONSULTORIA EM SEGURANCA DO TRABALHOARTESSMA CONSULTORIA EM SEGURANCA DO TRABALHO,1
+André,andre.costa.pinto@dupont.com,Andé,1
+Normenia,comercial@jcengenharia.eng.br,JCAMARGO ENGENHARIA,1
+Natan Lopes Da Cunha,natancunha@ig.com.br,casa da nobreak,1
+Mari Stela Pedro,maristela@cidasc.sc.gov.br,CIDASC,1
+Agatha Albuquerque,adm@clinicatrinutrix.com.br,Clinica TRINUTRIX,1
+Franklin,aoitec@aoitecautomacao.com.br,aoi tec automação ltda me,1
+Gisele Uchoa Da Silva,sup.manaus@norautorentacar.com.br,NORAUTO,1
+Rafael Teixeira,rafaelteixeira@norautorentacar.com.br,Norauto Rent a Car,1
+Carlos Henrique Martins,carlos.martins@lupusalimentos.com.br,Lupus Desenvolvimento em Alimentos Ltda,1
+Alex Caetano,leco.simples@gmail.com,Comando do Terceiro Distrito Naval,1
+Ariane,arianeseg@gmail.com,CONTAF,1
+Kamilla,kamillacarvalho@bol.com.br,VJR Comercial,1
+Herlaine Romão,constanciaconst@gmail.com,NÃO TEM,1
+Rafael Costa Fernandes,rafael@neologic.ind.br,Neologic,1
+Dario Santos,dario.santos@steag-erb.com.br,STEAG-ERB,0
+Marcelo Castro Magalhães,mctbauru@gmail.com,MCM,1
+Nathalia Alves Centeno,comercial@rctel.com.br,RC TELECOMUNICAÇÕES,1
+Guilherme Gonçalves Soares,guilherme.ecivil@gmail.com,Garden Campestre,1
+Thiago,thiago@vigiaseguranca.com.br,vigia sistemas de seguranca,1
+Bruno Samarini Machado,brunosamarini@gmail.com,MAC PLACAS,1
+Guilherme Eduardo Pacheco De Oliveira,guilherme@syguima.com,Syguima Engenharia,1
+Anderson Da C Silva,baceleteengenharia@ig.com.br,bacelete e silva construções,1
+Rafael Peixoto,rafaelp_pereira@yahoo.com.br,Empresarial Serviços,1
+Jorgina Figueroa,jorgina.martins@terra.com.br,LEOBABY,1
+Rosangela,tst@internacionalcouros.com.br,INTERNACIONAL,1
+Leticia K Tessmann,nicolas@unicaconsultoriarh.com,unica consultoria,1
+Jose Ademir Bezerra,ademircursos@gmail.com,ONG DE PREVENÇÃO E COMBATE A INCÊNDIOS,1
+Ailson Tavares,eglalves@gmail.com,Poynt Net provedor,1
+Marco Antonio De Oliviera Biss,fernanda.scalcon@pr.senac.br,SENAC,1
+Leoberto Esmério Pereira,dpxgestao@gmail.com,DPX GESTAO,1
+Carlos Otávio Weber,cow62@outlook.com,Carlos Weber,1
+Jardel Korte,jardel.k@wkservice.com.br,Weise Kraft Service,1
+Luiz Claudio,marinausinagem@hotmail.com,MARINA USINAGEM,1
+Jane Maria Caetano,janemaria@queijosipanema.com.br,BRAVALAT,1
+Marilize,mari.cruz@lixastatu.com.br,GK Abrasivos,1
+Luise Tiara Benini Do Amaral,ggeral.arcongel@gmail.com,ARCONGEL AR CONDICIONADO,1
+Rafael,rafael@safetyconsultoria.com.br,Safety,1
+Frank Matos,frank.matos@macegenharia.com,Mac engenharia e Instalações ltda,0
+Adilson Duarte Dos Santos,elianepcorrea@hotmail.com,Bar e Pastelaria União Santista,1
+Daiane Lima,daianemkt.almeida@gmail.com,FACILITYDOC,1
+Cleuzi De Oliveira Assis,taty_marega@hotmail.com,samuca,1
+Delmer Sales,delmer.sales@perbras.com.br,PERBRAS - Empresa Brasileira de Perfurações,1
+Mateus Vinicius Mateus,financeiro@agyonet.com.br,AGYONET,1
+Helcio Luis De Araujo Nunes Souza,helcio.luis@gmail.com,carnaubalink,1
+Letícia,administracao@dualtronics.com.br,Dualtronics,1
+Luiza,luiza.neves@metaljato.com.br,metaljato,0
+Tadeu Lima Dos Santos,tadeu.santos@tplt.com.br,Matrinchã Transmissora de Energia,1
+Flavia Silva,flavias_p@hotmail.com,CERAMICA SAO BENTO,1
+Murilo Fleiscmann,filiperosa@grupoadservi.com.br,ADSERVI ADMINISTRADORA DE SERVIÇOS LTDA,1
+Manoel Elielson,fcjecoturismo@hotmail.com,FM TRANSPORTES LTDA,1
+Jailton,jailton@acessoocupacional.com.br,Acesso Ocupacional,1
+Tiago Dos Santos Rambor,home_service@hotmail.com.br,Home Service,1
+Adelar S Venancio,adelarvenancio@ibest.com.br,pinturas venancio,1
+Neuza Wunder Hening,dragagemmcr@hotmail.com,DRAGAGEM MCR,1
+Mateus Ciochetta Minuzzi,minuzzi2009@hotmail.com,JR construções e pavimentadora,1
+Grimaldo Farias Marques,gmarques.ssa@gmail.com,TEC VERDE,1
+Lincoln Marinho,st@lacca.com.br,LACCA,1
+Edson De Souza,edson.carvalhoesouza@gmail.com,CARVALHOESOUZA ASSISTENCIA TÉCNICA DE MAQUINAS INJETORAS .,1
+Camila Rojas,treinamento@ciaband.com.br,Bandeirantes Logistica Integrada,1
+Janaina Xavier,janainaxavier@rede020.com.br,POSTO VILA RICA,1
+Rodrigo Abrantes,rodrigo@isptec.com.br,ISPTEC TELECOMUNICAÇÕES,1
+Giuliana Aggiunti,giuliana@tintasfamosas.com.br,Tintas Famosas,1
+Hamilton Passos,combsaofrancisco@sfrancisco.net,SAO FRANCISCO COMERCIO DE COMBUSTIVEIS E LUBRIFICANTES,1
+Márcio Santos Nomiyama,marcio@omegatl.com.br,Vinimaq Eireli EPP,0
+Rosemeirre Casimiro Da Silva,rosemeirecasimiro@hotmail.com,Rosemeire,1
+Janderson Coelho Da Silva,janderson.silva@energisa.com.br,ENERGISA,1
+Ozeas Dos Santos Silva,ozeas216@gmail.com,Ozeas dos santos silva,1
+Andre Steiner Vieira,andre@antagus.com.br,ANTAGUS ENGENHARIA LTDA,1
+Glacy Ricotta,glacy@famprojetos.com.br,FAM PROJETOS CONSULTORIA IMPORTAÇÃO E EXPORTAÇÃO LTDA,1
+Camila De Miranda Pereira Corrêa,mila-cmp@hotmail.com,M&I Electric Brazil,1
+Adriela Peter Dornelles,fundacao.compras@gmail.com,Fundação Delfim Mendes Silveira,1
+Anderson Barbosa Pereira,financeiro@papereira.com.br,P. A. PEREIRA CONSTRUÇÕES PREDIAIS LTDA,1
+Melquíades Jennifer Silva Oliveira,melquiades2016@outlook.com.br,Seridó Cósmeticos,1
+Cassiano Zanon,suporte3@provedorcznet.com.br,CZNet Telecom,0
+Roger de Souza,roger.souza@cznet.net.br,CZNet Telecom,1
+Jairo Henrique De Jesus,jhairohenrique@hotmeil.com,Jáirão eletricista,1
+Carlos Eduardo Garcia,contato@diagrama.eng.br,DIAGRAMA ENGENHARIA LTDA,1
+Fabio Marques De Souza,fabio.marques@ehsbrasil.com,EHS Solutions,1
+Henrique Eterio Henriques,frt.engenharia@gmail.com,frt engenharia topografia ltda-me,1
+Vitelio De Souza Costa,viteliocosta@gmail.com,ESS Engenharia,1
+Lucas Brito,brito@mixsolucoesambientais.com.br,mix soluções ambientais ktda,1
+Vanessa Regina Tavares Duz,qualidade2@hpbio.com.br,Hp Bioproteses Ltda,1
+Andrea Vieira Lopes Cunha,andrea.vieira@vnet.com.br,ICTUS INFORMATICA E TELECOMUNICAÇÕES LTDA,1
+Mário Felipe Silva Esteves,mario.esteves@autotrac.com.br,Autotrac,1
+Deoclides Martins,servitec.assistencia@gmail.com,Servitec,1
+Angelica Tomazia Da Silva,angelica.silva@bdo.com.br,BDO RCS Auditores Independentes,1
+Amanda Martelotti,durocontrol@durocontrol.com.br,Durocontrol Industria e Comércio EIRELI,1
+Fabiola Pesos,fabiolapesos.bk_consultoria@petrobras.com.br,PETROLEO BRASILEIRO SA,1
+Paulo Francis Brunoski,eletromecanica@geroma.com.br,GEROMA DO BRASIL INDUSTRIA E COMERCIO LTDA,1
+Tatyane Oliveira Cruz,financeiro@lis.com.br,LIS SOLUÇÕES INTEGRADAS EM ILUMINAÇÃO LTDA EPP,1
+Fernanda Mafra,fernanda@enprol.com.br,Enprol Engenharia e Proejtos LTda,1
+Juliane Francine Junkes,juliane.junkes@neogrid.com,Neogrid Software S.A.,1
+Matheus Ferreira Beninca,matheus.beninca@neogrid.com,Neogrid Software S.A.,1
+Ilson Anchieta De Oliveira,ilson@arbi.com.br,Arbi Rio Incorporações Imobiliarias LTDA,1
+Luiz Augusto Silva Junior,octhaengenharia@gmail.com,Octha Engenharia Ltda Me,1
+Fernanda Silva Almeida,fernanda.almeida@tecnoset.com.br,Tecnoset Inf. Prod. Servs. Ltda.,1
+Adriana Nunes Bernardo,financeiro@etaplan.com.br,ETAPLAN,1
+Wagner Taveira Trindade,wagnertrindade@gruporesolva.com,WAGNER TAVEIRA TRINDADE,1
+Gabriella Fernandes,rh@alfakit.ind.br,ALFAKIT EIRELI EPP,1
+Luciana Cairrão,luciana.cairrao@ecoponte.com.br,CONCESSIONÁRIA PONTE RIO - NITEROI S.A. - ECOPONTE,1
+Grazielle Fatima Da Silva De Jesus,aline.maia@amil.com.br,AMIL ASSISTENCIA MEDICA INTERNACIONAL S.A - UNIDADE MORUMBI,1
+Grazielle Fatima Da Silva De Jesus,gfjesus@amil.com.br,AMIL ASSISTENCIA MEDICA INTERNACIONAL S.A,1
+Lays Nogueira Silva,quality1@ottmedical.com,ott medical eireli,1
+Aline Gerhardt,aline.gerhardt@pfiffner.com.br,PFIFFNER DO BRASIL IND E COM TRANSF LTDA,1
+Carla Mirelle Santos,mirelle.santos@basf.com,BASF S.A - JACAREÍ,1
+Katia Maria Mandu Draber,katia.draber@basf.com,BASF S.A - JACAREÍ,1
+Pedro Henrique Santos,pedro-henrique.santos@basf.com,BASF S.A - JACAREÍ,1
+Silvia Duarte,silvia.duarte@jurere.com.br,Jurerê Internacional Administração Hoteleira 10.892.102/0001-12,1
+Thais Michelle Foppa,thais.foppa@jurere.com.br,Jurerê Internacional Administração Hoteleira 10.892.102/0001-12,1
+Michele dos Santos Garcia,michele.garcia@jurere.com.br,Jurerê Internacional Administração Hoteleira 10.892.102/0001-12,1
+Willian Brum Da Costa,financeiro@aluminortepoa.com.br,R E E COMERCIO DE ESQUADRIAS DE ALUMINIO LTDA ME,1
+Pâmela Machado Romano,pamela.romano@ecovias.com.br,Ecovias,1
+Dane Pereira De Abreu,dane@bitz.cafe,OÁSIS GASTRONOMIA E EVENTOS EIRELI ME,0
+Gustavo De Barros Rossi,contato@newpresentenergy.com,New Present Energy,0
+Regina Alves,cgq@fraldaskisses.com.br,Midiz Indústria e Comércio de Fraldas SA,0
+Wesley Osvaldo Da Silv,financeiro@souzatelhados.com.br,VALDEMIR DE SOUZA TELHADOS - EPP,1
+Mariana Guedes Da Cunha,cadastro@inntag.com.br,"INNTAG INDUSTRIA, COMERCIO E SERVIÇOS DE MANUTENÇÃO ELETROMECÂNICA LTDA - EPP",1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Rádio e Televisão Imagem Ltda.,1
+Wanderlei Martins,wanderleimartins@kpmg.com.br,KPMG Auditores Independentes,1
+Daniel Vasconcelos Da Rosa E Silva,daniel.rosa@inovaenergy.com.br,Inova Energy,1
+Cassiano Galone,cassiano.galone@hines.com,DMO ENGENHARIA E INCORPORAÇÕES LTDA,1
+Jairo Luis Gass,jairo@tiservicers.com.br,Ti Service Comércio e Serviços de Telecomunicações Ltda,1
+Heidi Porto,hporto@hirsa.com.br,HIRSA SISTEMAS DE AUTOMAÇÃO E CONTROLE LTDA,1
+Hamilton Jesus Silva,hamilton.silva@deca.com.br,DURATEX S.A. - LOUÇAS JUNDIAÍ,1
+Hamilton Jesus Da Silva,hamilton.silva@duratex.com.br,DURATEX S.A. - LOUÇAS JUNDIAÍ,1
+Fábio Rogério Ribeiro Garcia,fabio.garcia@deca.com.br,DURATEX S.A. - LOUÇAS JUNDIAÍ,1
+Rodrigo Joaquim Dos Santos,pontual.supri@hotmail.com,Pontual Informatica,1
+Fernanda Georgia Sales Pereira,fernanda.pereira@cscenergia.com.br,CSCENERGIA,1
+ARLEN PATRÍCIO NOVELLETTO,arlen.novelletto@cscenergia.com.br,CSCENERGIA,1
+Daiana Tamara de Souza,daiana.tamara@gmail.com,CSCENERGIA,1
+DAIANA TAMARA DE SOUZA,daiana.souza@cscenergia.com.br,CSCENERGIA,1
+Clarice Lopes,clarice.lopes@luthom.com.br,Luthom Engenharia Ltda.,1
+Katiana Lemos,pessoal@brooksambiental.com.br,BROOKS EMPREENDIMENTOS LTDA,1
+Reinaldo Oliveira,reinaldo.smartconsultoria@outlook.com,smart consultoria,1
+Juliana De Boni,juliana.dboni@orangeconnect.com.br,ORANGE CONNECT SOLUÇÕES EM INFORMATICA LTDA,1
+Camila Mendes,alisios@alisiosom.com,Alisios Eólica Ltda,1
+Fernanda Oliveira,fernanda@aahbran.eng.br,AAHBRAN ENG. MANUT. E MONT. INDL. LTDA,1
+Fleuri Douglas Soares,fleuriodonto@hotmail.com,Odonto Tucuruvi Clinica Odontologica ltda,1
+Vanessa Oliveira,vanessa.oliveira@hines.com,Hines do Brasil Empreendimentos Ltda.,1
+Alisson Ben,atendimento@protseg.com,Santos e Barreto Com. e Repes. ME,1
+Andréia Guimarães Nogueira,andreia.nogueira@pam-membranas.com.br,Pam Membranas Seletivas Ltda.,1
+Gabrielle Viveiros,gabriele@pam-membranas.com.br,Pam Membranas Seletivas Ltda.,1
+Claudia Elisa Da Silva Steindorff,claudia.elisa@ativa.com.br,RSBC REDE SULBRASILEIRA DE COMUNICAÇÃO VISUAL SA,1
+Fernando C. F. Oliveira,oliveira.fernando@phenixengenharia.com.br,Phenix Engenharia Ltda,1
+Priscila Ursulina Da Silva,priscila.ursulina@pbastones.com.br,PBA SERV E COM DE PEDRAS ORN LTDA,1
+Fabiana Justi,fabiana.justi@neosolarpro.com.br,MS ENERGIA RENOVAVEL,0
+Marcos A. Castilhos,marcos@infomac.com.br,INFOMAC,1
+Lana Flavia Barcelos Santos,lana.barcelos@albioma.com,ALBIOMA CODORA ENERGIA S.A,1
+Jéssica Nicaele Rezende,jessica.rezende@albioma.com,ALBIOMA CODORA ENERGIA S.A,1
+Michele Weigel,michele.weigel@grupopratofeito.com.br,Prato Feito Alimentação e Serviços Ltda,1
+Rayssa Santana,rayssa@gcomm.com.br,GCOMM TELEINFORMATICA LTDA - ME,1
+Sergio Ricardo Barbosa Gomes,milene.deconto@disys.com,Disys do Brasil Serviços de Tecnologia L,1
+Jaison Luis Tamanini,rh@braselio.com.br,Brasélio Ind. Com. Máq. Ltda,1
+Alisson Ben,protsegepi@hotmail.com,APP COM. DE COMB. E DERV. DE PETROLEO LTDA,1
+Andrea Vieira Lopes Cunha,andreaavl.raf@ibest.com.br,ICTUS INFORMATICA E TELECOMUNICAÇÕES LTDA,1
+Maria Claudia Pereira Lourenção,setorpessoal@colegiobezerra.com.br,Educandário dr. Bezerra de Menezes,1
+Arthur Maluf Barretto,arthur.barretto@rbasaopaulo.com.br,Elabore Representações e Assistência Técnica Ltda. ME,1
+José Carlos Saponara,ilhabelagreens@terra.com.br,Ilhabela Greens Hotelaria Ltda,1
+Ricardo Santos Rossi,rsrossi@worldcourier.com.br,WORLD COURIER DO BRASIL TRANSPORTES INTERNACIONAIS LTDA.,1
+Leandro Souza,admin@uaibaby.com,Uaibaby,1
+Daiane Giacomelli,compras@multimatech.com.br,Multimatech Indústria Metalúrgica Eireli,1
+Leandro Viel,leandro@levti.com.br,LEANDRO VIEL ACACIO INFORMATICA,1
+Paulo Rocha,procha@montana.com.br,Montana Química,1
+Claudia Sandi,rh@micxcaxias.com.br,MECANICA INDUSTRIAL CAXIAS EIRELLI,0
+Cristiane Castro,cristiane@massasul.com.br,MASSASUL PRODUTOS ALIM LTDA,1
+Josenilson Dos Santos,j.seletrica@outlook.com,JS elétrica,1
+Attos Serviços De Alimentação,qualidade1@attos.ind.br,Attos Serviços de Alimentação,1
+Rosane Rodrigues Do Vale,qualidade@sopetra.com.br,Sopetra Rolamentos e Peças Ltda,1
+Maria Da Conceição Silva Dos Santos,administrativo@wmk.com.br,WMK AUTO SERVIÇO E PEÇAS LTDA,1
+Eloi Ferreira Maruggi,efmaruggi@latam.stefanini.com,Stefanini IT Solutions,1
+Angélica Chaves Aguiar Simões,aaguiar@signusdobrasil.com.br,SIGNUS DO BRASIL COMÉRCIO DE MATERIAIS HOSPITALARES LTDA,1
+Fabrizio Rocha Lima,fabrizio@spectrumpreditiva.com.br,Spectrum Preditiva,1
+Angelo Heleno Loos,predialmasterpinturas@gmail.com,LOOS PINTURAS PREDIAIS .LTDA,1
+Fábio Rogério Ribeiro Garcia,fabio.garcia@deca.com.br,Duratex s/a _ jundiaí,1
+Ricardo Araújo Prudente Pires,ricardo@dboengenharia.com.br,DBO Engenharia Ltda,1
+Cinthya Barros,cinthya.barros@basf.com,BASF SA _ CAMAÇARI,1
+Francisco Fabio Menezes Lima,ffmlima@hotmail.com,CARTHA INDUSTRIA DE ALIMENTOS LTDA,1
+Manoel Damaceno Souza Neto,neto@grupodelfino.com.br,R.V. Provedor de Internet Ltda ME,0
+Mauricio Shizuo Shimokawa,anshin.alarmes@gmail.com,MAG ANSHIN SISTEMAS DE SEGURANÇA ELETRONICA,1
+João Paulo Silva,joaopaulo@silvaesilva.com.br,SILVA E SILVA LTDA,1
+Tamiris Correia Cunha,tamiris@soccergrass.com.br,SG PISOS ESPORTIVOS LTDA - EPP,1
+Andressa Kelly Silva De Souto,andressa.kelly@soccergrass.com.br,SOCCER GRASS ASSESSORIA E ENPREENDIMENTOS ESPORTIVOS LTDA,1
+Nathalia Martins Canola,ncanola@mauacapital.com,Mauá Capital Investimentos Imobiliários Ltda,1
+Raimundo Nonato Alves Teixeira,adm@marcenariasp.com,MSP Indústria e Comércio de Móveis,0
+Alyne Yarla De Souza,elevesulmanutencoes@gmail.com,ELEVESUL MANUTENÇÕES LTDA ME,1
+Juliana Sacardo,adm@ambientarcomercio.com.br,Ambientar Comercio e Servicos Ltda,1
+Lyane Silva,lyane.silva@somosnsc.com.br,TV COLIGADAS DE SANTA CATARINA S.A. 82.645.029/0001-95,1
+Lyane Silva,lyane.silva@somosnsc.com.br,COMPANHIA CATARINENSE DE RADIO E TELEVISÃO - 82.611.617/0001-08,1
+Lyane Silva,lyane.silva@somosnsc.com.br,NC COMUNICACOES SA 79.227.963/0014-05,1
+Cristiane Rodrigues,cristiane.rodrigues@nsc.com.br,NC COMUNICACOES SA 79.227.963/0014-05,1
+Julio Cesar De Abreu,jcabreu@tbg.com.br,TRANSPORTADORA GASODUTO BOLÍVIA-BRASIL - TBG,1
+Abelino Soares De Andrade,serralheriaandrade@andrafer.com.br,SERRALHERIA ARTISTICA ANDRADE LTDA.,1
+Jaqueline Santos,jaqueline.santos@resultadosdigitais.com.br,Resultados Digitais,1
+Juliana Amelia Freire,jasantos@aralco.com.br,Figueira Industria Comercio S/N,1
+Fabiano Araujo Da Silva,fabiano@fab-ar.com.br,f a da silva com e servs me,1
+Jackson Robert Machado Paes,jacksonpaes@hotmail.com,MELITA DEBUS -ME,1
+Claudiana Rodrigues,claudianarsrep@grpcom.com.br,Sociedade Rádio Emissora Paranaense S.A.,1
+Pedro Henrique Magaldi,pedro.magaldi@cyberfly.com.br,MA Soluções em Tecnologia LTA,1
+Anderson Borges,anderson@cyberfly.com.br,MA Soluções em Tecnologia LTA,1
+Carmem Rosa,carmem.rosa@senairs.org.br,SERVIÇO NACIONAL DE APRENDIZAGEM INDUSTRIAL,1
+Patricia Mara Gonçalves Oliveira,orlandojk@gmail.com,Patricia Mara Gonçalves Oliveira 15014848850,1
+Lyane Silva,lyane.silva@somosnsc.com.br,RBS PARTICIPACOES S A - 68.737.857/0005-56,1
+Rosana Smolski,rosana.smolski10@gruporbs.com.br,RBS PARTICIPACOES S A - 68.737.857/0005-56,1
+Renato Scatolin,rscatolin@meridianmining.co,Meridian Mineração Jaburi S/A,1
+Diego Feliciano Souza,diego@omegapi.net.br,Omega pi,1
+G&P,gestao@omegaenergia.com.br,Omega pi,1
+Claudio Aparecido Alves Pereira,claudio@powernettelecom.com.br,Priscila Santos da Silva Informatica ME,1
+Josiane Aparecida Viana,josiane@vertentes.com.br,Luma Informática LTDA EPP,1
+Rodrigo Bonoto Berni,rodrigobnoto@hotmail.com.br,mercado bonoto,1
+Fabiane Eloisa Reeck,vendas6@quimidrol.com.br,Quimidrol Comércio Indústria Importação Ltda,1
+Jeferson Guilem,suporte04@interpower.com.br,Interpower,1
+Jucelaine Da Silva Garcia,jucelaine.garcia@unilasalle.edu.br,Sociedade Porvir Científico,1
+Cristina De Oliveira,comercial@sucessoseguranca.com.br,Sucesso Serviços Terceirizados,0
+Guilherme Lourival Esteves,adm@amplamedica.com.br,Ampla Médica,1
+Celda Menezes,nfeletronica@idealnetwork.com.br,IDEAL NETWORK COMERCIO DEEQUIPAMENTO,1
+Rafael Dos Santos Almeida,rafaelsalmeida.ibrav@petrobras.com.br,Ibrav Acessórios Industriais Ltda,1
+Renato Da Silveira,renato@brasilpostos.com.br,Brasil Postos,1
+Mônica,vendas2@brasilpostos.com.br,Brasil Postos,1
+Carlos Rychlewski Gomes,unicmed@unicmed.com.br,UNICMED OCUPACIONAL,1
+Juliana Barbosa Da Silva,juliana.silva@alertbrasil.com.br,Alert Brasil,1
+Hermann Rainer De Britto,hermann.britto@mail.weir,Weir do Brasil,1
+Edison Junior Soares Dos Santos,sulaquatica@gmail.com,sulaquatica,1
+Jesse Andrade Costa,contato@htecbrasil.com.br,HFP DA SILVA TECNOLOGIA ME,1
+Robson Alves Fonseca,robson.fonseca@eco101.com.br,ECO101 CONCESSIONARIA DE RODOVIAS S/A,1
+Raphael Fagundes Pereira,raphael.pereira@eco101.com.br,ECO101 CONCESSIONARIA DE RODOVIAS S/A,1
+Rafael Leopoldo Batista,rafael.leopoldo@manserv.com.br,MANSERVE FACILITIES,1
+Francisco Fabio Menezes Lima,fflima@ducoco.com.br,DUCOCO PRODUTOS ALIMENTÍCIOS S/A,1
+Mateus Santana,mateus.santana9@hotmail.com,ship it,1
+Jaila Cássia Duarte Santos,jaila.duarte@laboratoriosobral.com.br,Laboratório Industrial Farmacêutico Sobral,1
+Rafaela Leite Nunes,rafaela@irmaosmarques.com.br,IRMÃOS MARQUES LTDA - ME,1
+Marina Cachoeira,marina.cachoeira@ecogenbrasil.com.br,Ecogen Brasil,1
+Sara Caravalho,sara.carvalho@ecogenbrasil.com.br,Ecogen Brasil,1
+Thais Azevedo Mesquita Mendonça,thais.mesquita@ecogenbrasil.com.br,Ecogen Brasil,1
+Suelen de Lima Almeida,suelen.almeida@ecogenbrasil.com.br,Ecogen Brasil,1
+Telma Andreia C S Valle,telma.faje@gmail.com,FAJE LOGÍSTICA E TRANSPORTE LTDA,1
+Mateus Lattik Hickmann,mateushickmann@petrobras.com.br,PETROBRAS,1
+Lana Flavia Barcelos Santos,lana.barcelos@albioma.com,ALBIOMA Rio Pardo Termoelétrica Ltda,1
+Jéssica Nicaele Rezende,jessica.rezende@albioma.com,ALBIOMA Rio Pardo Termoelétrica Ltda,1
+Marcos Alexandre Zangarini Grisi De Oliveira,marcos.grisi@albioma.com,ALBIOMA Rio Pardo Termoelétrica Ltda,1
+Jan Adryan Alves Do Lago,jan@jgsconstrucoes.com.br,"JGS Construções, Comércio e Serviços LTDA",1
+Marcelo Rolim De Freitas Maciel,marcelorolim@eletrodataengenharia.com.br,Eletrodata Engenharia Ltda.,1
+Fabio Simoes Braga,fabio.braga@eritel.com.br,ERITEL TELECOMUNICAÇÕES LTDA,1
+Joelma Da Silva De Souza,betina3110@bol.com.br,silva e souza lanchonete e restaurante ltda - me,1
+Gertec Brasil,nfe.ba@gertec.com.br,GERTEC BRASIL LTDA,1
+Rose Ramos,recursoshumanos@energeticaserranopolis.com.br,ENERGÉTICA SERRANÓPOLIS,1
+Greice Auras,adminfln@culturainglesa-sc.com.br,Cultura Inglesa,1
+Phelipe Albani Oliveira,phelipe_albani@hotmail.com,SERRARIA SANTA RITA LTDA,1
+Ana Paula,ana.comercial@erthalcom.com.br,Erthalcom,1
+Jaqueline Cristofolini,jaqueline@r30systems.com,R30 Systems Ind. e Com. de Equipamentos Ltda. ME,1
+Cátia Aparecida Mota,treinactba@scopus.com.br,Scopus Desenvolvimento de Sistemas Ltda,1
+Eliéges Machado,administracao@gottert.com.br,GOTTERT DO BRASIL LTDA,1
+Marilise Budal Arins,marilise.arins@gmail.com,Projeville Serviços Ltda ME,1
+Adrian Alves Dos Santos,adrian@coopervale.com.br,Coopervale Soluções Ltda EPP,1
+Renata Dias,renata@mdanet.net.br,MDANET SERVIÇOS DE COMUN. INF. LTDA ME,1
+Marlon Cesar Bugai,marlon.bugai@hotmail.com,BUGAI & MARCELINO LTDA ME,1
+Jéssica Helen Da Silva,jessica.silva@tropiconet.com,TROPICO SISTEMAS E TELECOMUNICACOES DA AMAZONIA LTDA,1
+Josiely Xavier,josiely.xavier@sca-solutions.com,Schucker do Brasil Ltda,1
+Douglas Fernandes Neto,douglas@install-tec.com,Douglas Fernandes Neto 36089949809,1
+Caroline Livio Pedreira Alves,rh@eletrospitalar.com.br,Eletrospitalar Comércio e Assistência Técnica Ltda,1
+Lilyane Nunes De Oliveira,lnunes@staefa.com.br,Staefa Control System Ltda,1
+Patricia Alexandra De Moura Lohner Arouca,patricia@altaengenharia.com.br,Alta Engenharia Mecânica Ltda,1
+Sara Scarpato Marin Natel,s.marin@steute.com.br,steute do Brasil Equipamentos Eletro-eletronicos Ltda,1
+Leonardo Nobrega Pedrosa,leonardo.pedrosa@kenner.com.br,TESS INDUSTRIA E COMERCIO LTDA,1
+Tania Zanette,postococal@hotmail.com,Posto Cocal do Sul LTDA,1
+Fabrizio Chabaribery Leão,fleao@acaoenge.com.br,Ação Engenharia e Instalações Ltda.,1
+CAROLINE FARIA CUNHA MOREIRA,caroline.moreira@semeq.com,SEMEQ-SERVIÇOS DE MONITORAMENTOS DE EQUIPAMENTOS LTDA,1
+ALINE GONSALVES,aline.gonsalves@semeq.com,SEMEQ-SERVIÇOS DE MONITORAMENTOS DE EQUIPAMENTOS LTDA,1
+MAYRA ANDRADE,mayra.andrade@semeq.com,SEMEQ-SERVIÇOS DE MONITORAMENTOS DE EQUIPAMENTOS LTDA,1
+Lyane Silva,lyane.silva@somosnsc.com.br,Televisão Joaçaba Ltda - 79.845.830/0001-70,1
+Janaina Saticq,janaina.saticq@rbstv.com.br,Televisão Joaçaba Ltda - 79.845.830/0001-70,1
+Lyane Silva,lyane.silva@somosnsc.com.br,NC Comunicações SA - 79.227.963/0012-35,1
+Cristiane Rodrigues,cristiane.rodrigues@nsc.com.br,NC Comunicações SA - 79.227.963/0012-35,1
+Lyane Silva,lyane.silva@somosnsc.com.br,NC Comunicações S A - 79.227.963/0002-63,1
+Rosana Smolski,rosana.smolski1@gruporbs.com.br,NC Comunicações S A - 79.227.963/0002-63,1
+Cristiane Rodrigues,cristiane.rodrigues@nsc.com.br,NC Comunicações S A - 79.227.963/0002-63,1
+Lyane Silva,lyane.silva@somosnsc.com.br,NC Comunicações S A - 79.227.963/0001-82,1
+Rosana Smolski,rosana.smolski@gruporbs.com.br,NC Comunicações S A - 79.227.963/0001-82,1
+Cristiane Rodrigues,cristiane.rodrigues@nsc.com.br,NC Comunicações S A - 79.227.963/0001-82,1
+Gabriel Aparecido Damasceno Souza,gabriel.aparecido1910@gmail.com,GMC SOLAR COMERCIO DE EQUIPAMENTOS DE ENERGIA LTDA - ME,1
+Flávio Falqueiro De Oliveira Melo,flavio@blondine.com.br,Blondine Cervejaria Eireli,1
+Geraldo Magela Mendes Assis,mendesassis@gmail.com,"MENDES & LIMA SERVIÇOS DE ENGENHARIA, CONSULTORIA E REPRESENTAÇÕES LTDA",1
+Luciana Costa De Oliveira De Lima,luciana@crazy4beer.com.br,Crazy4Beer Distribuidora de Bebidas LTDA EPP,1
+Paula Pimentel,paula@blondine.com.br,Crazy4Beer Distribuidora de Bebidas LTDA EPP,1
+Regina Biaggi Gomes,reginagomes@itsseg.com,It'sSeg Corretora de Seguros S.A,1
+Marcella Prado,prado_ma@hotmail.com,eSeg Soluções em SST,1
+Carla I Virginia Arantes,escolaapoiosp@gmail.com,ESCOLA ARANTES LTDA,1
+Carina Van De Groes,carina@tropclima.com.br,Trop Clima Equipamentos p/ Estufas Agrícolas Ltda.,1
+Ana Cristina Pereira,michele.valvano@campolimpoplasticos.com.br,Campo Limpo Reciclagem e Transformação de Plásticos S.A.,1
+Lyane Silva,lyane.silva@somosnsc.com.br,RBS TV Criciúma 82.916.503/0001-76,1
+Lyane Silva,lyane.silva@somosnsc.com.br,TV Chapecó - 76.851.492/0001-90,1
+Aline Garcia Cabral De Melo,aline@hepa.org.br,Hospital Espirita de Porto Alegre,1
+Fernando Teixeira Dos Reis,rh1@piscinafacil.com.br,Piscina Fácil Ltda.,1
+Huagner Pires Santos Mendonça,huagnerpsm@gmail.com,HPS REFRIGERAÇAO,1
+Claudia Regina Da Silva,claudia.fazendadaspalmas@gmail.com,Konder A Braga Comércio de Produtos Alimentícios Ltda,1
+Franz Felipe Pimenta Da Costa,sinistro.ps.bebecoauto@gmail.com,BEBECO AUTO LTDA ME,1
+Maycon Motta,contato@portofacilities.com.br,Porto Facilities,1
+Daniele Lima Pontes,daniele.pontes@normatel.com.br,NORMATEL ENGENHARIA LTDA,1
+Carlos Eduardo Leme Da Silva,eduardo@ultraer.com.br,ULTRAER AEROAGRÍCOLA LTDA,1
+Claudio Gomes Messias,claudio@serralheriarodante.com,Industria de Serralheria Rodante,1
+Natacha Cassiolato,natachacassiolato@gmail.com,"Ari Cabos - Indústria, Comércio, Importação e Exportação Ltda",1
+Samuel Vcitor Melo De Rezende,samuel.rezende@masaengenharia.com,MASA Engenharia,1
+Marcos Da Silva,msntma@gmail.com,Boi Corte LTDA,1
+Victor Felipe da Silva,victor.felipe@manserv.com.br,MANSERV FACILITIES,1
+Rafael Leopoldo Batista,rafael.leopoldo@manserv.com.br,MANSERV FACILITIES,1
+Gilberto Carvalho,gilberto.carvalho@anroi.com.br,Anroi Industria e Comercio Ltda,1
+Marcia Flores,marcia@semant.com.br,Semant Serviços Industriais e Ambientais Ltda,1
+Bruna Maia Vieira,bruna@progecon.com.br,Progecon Engenharia LTDA,1
+Caio Cesar Barbosa,barbosaefilhosterraplanagem@gmail.com,Barbosa e Filhos Terraplanagem e Locação de maquinas LTDA ME,1
+Marcelo Da Costa,marcelo.costa@atostelecom.com,Athos Serviços Elétrico e Telecomunicações,1
+Francieli Deggeroni,rh@linckmaquinas.com.br,Linck Máquinas S/A,1
+Deise Priscila Vitorino Gonçalves,gil.vidro@terra.com.br,GILBERTO PEREIRA MADURO,1
+Edson Alves Da Silva,temakprojetoseobras@hotmail.com,"Temak Projetos, Obras e Manutenção Ltda.",1
+Carolina Sampaio Brito Duarte,posto_guaiba@hotmail.com,Rio Real Derivados de petróleo,1
+ROMOLO FRANCISCO PETROLLI,seguranca@engeco.ind.br,Engeco distribuidora de Materiais Elétricos LTDA,1
+Rodrigo Da Silva Costa,rodrigo.costa@lemar.eng.br,LEMAR ELETRO COMERCIAL LTDA,1
+Alice Daiana Weber,alice.weber@dentalcremer.com.br,Dental Cremer S/A,1
+Franciele Oliveira,franciele@novus.com.br,NOVUS PRODUTOS ELETRONICOS LTDA,1
+Hosiny Aparecida Rahman,conprodata.financeiro@hotmail.com,MARCO ANDRE RADOMILLE,1
+Luis Gustavo Kawahara,financeiro@egnex.com,EGNEX ELÉTRICA LTDA,1
+Gabriela Carminatti Samistraro,gabi_samis1@hotmail.com,GABISTELA,1
+Rodrigo Luis Schneider,racao@sccereais.com.br,SC CEREAIS LTDA,1
+Daniel Paulo Cunha Santiago,daniel.santiago@deca.com.br,Duratex S.A.,1
+Fábio Rogério Ribeiro Garcia,fabio.garcia@deca.com.br,Duratex S.A.,1
+Joao Victor Ferraz Bandeira,joaovictor-bandeiira@hotmail.com,Pax transportes ltda,1
+Leopoldo Jose Gama Martins,mayara@paxlog.com.br,Pax transportes ltda,1
+Anna Paula Santin Ganchar,compras@lactec.org.br,INSTITUTO DE TECNOLOGIA PARA O DESENVOLVIMENTO,1
+Wagner Da Silva Turbiani,phoenix@phoenixbalancas.com.br,Phoenix Balanças,1
+Camila Silveira Dal Col,csdalcol@klabin.com.br,Klabin S/A,1
+Luiz Fernando Fernades,fernandoprolink@hotmail.com,rastro automação comercial ltda,1
+Suleima Mara Santos Del Monaco,suleima.santos1@basf.com,BASF SA - DEMARCHI,1
+Alex Souza Vieira,alex.vieira@basf.com,BASF SA - DEMARCHI,1
+Paula Carvalho,paula.carvalho@basf.com,BASF SA - DEMARCHI,1
+Leonardo Caldeira,financeiro.cieloengenharia@gmail.com,CIELO ENGENHARIA LTDA,1
+Ana Janini Dos Santos Michels,suporte01@imsb.com.br,IMSB IND MAQ EQUIPAMENTO LTDA,1
+Fernando Cândido Da Cunha,fernando.cunha@saudeocupacionalunimed.com.br,SOU - Saúde Ocupacional Unimed LTDA,1
+Hertz Borges,postouniverde@postouniverde.com.br,POSTO UNIVERDE UBERABA,1
+Jéssica Wanzuita De Novais,bruna.baldassari@redeunifique.com.br,Cabovisão Telecomunicações Ltda EPP,1
+Adriana Braga Queiroz,adriana.queiroz@imcsaste.com.br,"IMC SASTE - Construções, Serviços e Comércio Ltda",1
+Ana Maria Kohler,rh1@tecebem.com.br,Tecebem Beneficiamento Têxtil Ltda,1
+Wallace Felix,walllace@scientiaconsultoria.com.br,Scientia Consultoria Científica,1
+Hyllen Augusto Carvalhido,hyllen@ecomg.com.br,ECO MG ENGENHARIA LTDA ME,1
+Leticia Gabriela Da Silveira,adm@azurit.com.br,Azurit Engenharia Ltda,1
+Luciano Fernandes Da Graça,administrativo@sueca.com.br,Sueca Rolamentos e Soluções Industriais Eireli,1
+Carla Da Silva,carla.dasilva@fluidserv.com,Fluidserv do Brasil,1
+Felipe Dos Santos Menezes,dp@brastelnet.com.br,Brasil Instalações e Serviços Ltda,1
+Sirleny M. Kemmer,sirleny.kemmer@fotovoltec.com.br,SMK ENERGIA SOLAR EIRELI - ME,1
+Mateus Resende,mateus.resende@biomm.com,BIOMM S/A,1
+Emilyn Thaire de Faria Marion,adm.performaquinas@gmail.com,M. E. PERFOR MÁQUINAS E EQUIPAMENTOS EIRELI - EPP,1
+Renata Kleinkauf Pereira,imunisinos@imunisinos.com.br,IMUNISINOS LTDA,1
+Onix Bandeira Ramos,onix.ramos@pierre-fabre.com,Laboratórios Pierre Fabre do Brasil Ltda,1
+Mauro Colli Inglez,mauro@azevedotravassos.com.br,AZEVEDO & TRAVASSOS ENGENHARIA LTDA,1
+Mayra Thais De Oliveira,giancarlo.ferraz@consp.com.br,Consorcio São Paulo de Fiscalização Automática de Transito,1
+Renata Hart,daniel@iwtservices.com.br,IWT Services Ltda,1
+Katia Taras,katia@permution.com.br,EJ KRIEGER & CIA LTDA,1
+Marcieli Fernanda Da Silva,marcieli@bins.com.br,BINS INDUSTRIA DE ARTEFATOS DE BORRACHA LTDA,1
+Cláudia Santos De Souza Duarte,claudiasantos@ceasaminas.com.br,Centrais de Abastecimento de Minas Gerais S/A - CeasaMinas,1
+Paulo Henrique De Melo,financeiro@sinergiaps.com,SINERGIA PRESTADORA DE SERVIÇOS S/S LTDA EPP,1
+Lucimara Pinheiro,lucimara@etica-ti.com.br,EMPRESA DE TECNOLOGIA E INFORMAÇÃO COMPUTACIONAL AVANÇADA LTDA,1
+Luciano Dallago,luciano.seg@construtorapasqualotto.com.br,Yachthouse Incorporadora LTDA,1
+Bianca Cruz,vendas@multartec.com.br,TRC DA SILVA - ME,1
+Fernando Henrique Zimmermann,fernando@doceoli.com.br,DOCEOLI ALIMENTOS LTDA,1
+Caroline Machado De Oliveira,caroline.azeredo@unilasalle.edu.br,CENTRO UNIVERSITÁRIO LA SALLE,1
+Cristiano Rumpel,27216958000170@avato.com.br,Vino Telecom EIRELI - ME,1
+Marcos Roberto Righi,marcosrighi@avato.com.br,Vino Telecom EIRELI - ME,1
+Wilson Trinidad,interlans@gmail.com,LAN SOLUTIONS INFORMATICA LTDA,1
+Sara Schledorn,sara.schledorn@ssma.com.br,FANUC SOUTH AMERICA EQUIPAMENTOS DE AUTOMACAO E SERVICOS LTDA.,1
+Marlene Baldin,marlene.baldin@fanucamerica.com,FANUC SOUTH AMERICA EQUIPAMENTOS DE AUTOMACAO E SERVICOS LTDA.,1
+Jennyfer Kaneto Sales Felicio,jennyfer.felico@fanucamerica.com,FANUC SOUTH AMERICA EQUIPAMENTOS DE AUTOMACAO E SERVICOS LTDA.,1
+Yasmin de Deus da Rocha,yasmin.rocha@fanucamerica.com,FANUC SOUTH AMERICA EQUIPAMENTOS DE AUTOMACAO E SERVICOS LTDA.,1
+Gersica Viana Ribeiro,gvi@flodim.com.br,FLODIM DO BRASIL LTDA ME,1
+Iolanda Demola,idemola@voegol.com.br,Gol Linhas Aéreas,1
+Dani Sperber,danielasspinturas@hotmail.com,"SS PINTURAS PROFISSIONAIS, COML IMP E EXP LTDA",1
+José Eduardo Machado Da Veiga,open@opentecnologia.com.br,JOSÉ EDUARDO MACHADO DA VEIGA E CIA LTDA,1
+EDVALDO RODRIGUES DE SOUZA,edvaldo.souza@tredegar.com,Tredegar Brasil Indústria de Plásticos Ltda,1
+Thiago Rezende,thiago.samonte@hotmail.com,Marquinho Motores,1
+Luir De Oliveira Ferreira,ldterraplanagem@gmail.com,Luir de Oliveira Ferreira - LD Terraplanagem,1
+Vanio José Schimidt,contato@transvanio.com.br,VANIO JOSÉ SCHIMIDT EPP,1
+Lidia Xavier,lidia.xavier@geq.com.br,Grupo Edson Queiroz,1
+Lígia Regina Kummer,ligia@pioneirobr.com.br,PIONEIRO COMBUSTÍVEIS LTDA,1
+Zilda Santos De Paula,faturamento@maiclean.com.br,MAICLEAN TERCEIRIZAÇÃO DE SERVIÇOS LTDA - PP,1
+Marcos Marques,cursos.ctne@yahoo.com.br,Nordeste Emergências e Soluções Médicas LTDA,1
+Ramses Lopes,ramses.lopes@grupomoura.com,Baterias Moura,1
+Manoela Ballen,manoela.santana@stemac.com.br,STEMAC S/A GRUPOS GERADORES,1
+Jose Francisco Sales Rizzi,vendas@rizzitherm.com.br,All Heating Systems Comércio de Matériais Elétricos Ltda-ME,1
+Rafael Schimitz,rafael@imnet.com.br,Internet Milenium Ltda Epp,1
+Luiza Pelegrini,luiza@pelegrini.com.br,CASA DA TRANSMISSÃO CAMINHÕES MOTORES E PEÇAS LTDA,1
+Sonia Vergilio Martins,sonia.vergilio@yahoo.com.br,Associação de Pais e Amigos dos Excepcionais de Portão,1
+Barbara Santana,barbara.santana@funbio.org.br,FUNDO BRASILEIRO PARA A BIODIVERSIDADE (FUNBIO),1
+Cristiano Rumpel,04771989000198@avato.com.br,EBZ INSTALACAO E MANUTENCAO EIRELI,1
+Milena Barboza Giardiello,milena.giardiello@unimed.coop.br,UNIMED DO BRASIL CONFEDERACAO NAC DAS COOPERATIVAS MED,1
+Robson Venzon,robson.venzon@hbsis.com.br,HBSIS Soluções em TI Ltda,1
+Morgana Luiza Fischer,verticalbraz.alpinismo@gmail.com,L. BRAZ NUNES PEREIRA SERVIÇOS,1
+Alessandra Rocha,alessandrarocha@guimar.com.br,Guimar Engenharia Ltda,1
+Neville Batista Junior,comercial@hipermunck.com.br,ATN LOG LOGISTICA E TRANSPORTE LTDA,1
+Sergio Scotti,sergio@techspace.com.br,Techspace Comercio e Servicos de Produtos de Informatica Ltda,1
+Paulo Siqueira,paulo.siqueira@jbs.com.br,JBS,1
+Flavia Rocha Pereira,flavia1.aumaautomacao@gmail.com,Sami Sistema de Automação Mecânica Industrial LTDA,1
+Suilan Diniz Manfro Bianeck,doc_ideal@yahoo.com.br,DOC IDEAL RADIOLOGIA E DOCUMENTAÇÃO ODONTOLÓGICA LTDA,1
+Sâmia Roma Canalle,scanalle@iguatemi.com.br,Condomínio Complexo Iguatemi Ribeirão Preto,1
+Lucy Mara Pazini Holthausen,administrativo@weco.com.br,WECO DO BRASIL LTDA,1
+Barbara Ipiranga,barbarar@ipiranga.com.br,Ipiranga,1
+Mario Eugenio Gioto Junior,marioegj@spirol.com,SPIROL SOLUÇÕES EM FIXAÇÃO LTDA.,1
+Liziane Cabral,liziane.cabral@zumpnet.com.br,SPEAKERS PROJETOS E EXECUÇÃO EM AUDIO LTDA,1
+JULIA RONIZE COSTA DE CAMPOS,juliac.95@hotmail.com,SPEAKERS PROJETOS E EXECUÇÃO EM AUDIO LTDA,1
+Marlon Chaves Francisco,marlonfrancisco@gmail.com,Frigorifico frigmam,1
+Fabiana Fernandez Chinaque,fabiana.chinaque@foxconn.com,Foxconn Brasil Indústria e Comércio,1
+Paulo Vinicius De Oliveira Farias,pauloviny9@hotmail.com,PLANETA NET TELECOM E SERVIÇOS LTDA-ME,1
+Wellington Serrilho Soler,ws@zoopnet.com.br,Wellington Serrilho Soler ME,1
+Douglas Schio Pilecco,pileccoposto@gmail.com,POSTO PILECCO LTDA,1
+Sharles Mendes Rodrigues,rodrigues@engsigma.com.br,SIGMA PESQUISA E CONSULTORIA EM ENGENHARIA LTDA,1
+Cristiane Mansur,logistica@sensoreng.com.br,SensorEng,1
+Andreia Zinelli,rhtreinamento@cotrijal.com.br,COTRIJAL COOPERATIVA AGROPECUÁRIA E INDUSTRIAL,1
+Gelson Almeida Dos Reis,reismanutencaoeservicos@yahoo.com,reis manutenção em geral,1
+Jocimara Da Silva,artechcompressores@gmail.com,Jeferson Tavares-ME,1
+Eduardo Lopes Dos Reis,producao@sacariaourobranco.com.br,Sacaria Ouro Branco Ltda,1
+Luis Felipe Nunes Lopes,luis.lopes@hexagonagriculture.com,Arvus tecnologia S.A>,1
+Diego Barrey,diego.oliveira@hexagonagriculture.com,Arvus tecnologia S.A>,1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Editora Gazeta do Povo S.A. 76.568.708/0001-70,1
+Eduardo Duda Da Silva,esilva3@grpcom.com.br,Editora Gazeta do Povo S.A. 76.568.708/0001-70,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Editora Gazeta do Povo S.A. 76.568.708/0001-70,1
+Aline Demetrio,splimaq@gmail.com,Splimaq instalação e montagem de equipamentos industriais ltda,1
+Isomi Luiz Da Silva,tecalerta@tecalerta.com.br,TECALERTA - Monitoramento 42h Via Telcomunicação,1
+Kerley Valadao,kerley_vendas@hotmail.com,Royal Impermeabilização Eirele-me,1
+Aline Brito Pintor,nina_pintor@hotmail.com,CASTELLI MATERIAIS PARA CONSTRUÇÃO LTDA - EPP,1
+Leticia Ramos Domingues,leticia.domingues@ldcom.com,LOUIS DREYFUS COMPANY,1
+Alexandre Casimiro De Freitas,alexandresuporteola@gmail.com,OLÁ SERVIÇO DE ACESSO A INTERNET LTDA,1
+Simone Santos,simone.santos@egferramentaria.com.br,EG FERRAMENTARIA,1
+Ramon Francisco Abreu Do Nascimento,amconsultoria.contato@gmail.com,AM CONSULTORIA,1
+Gregori Murakami Duarte,gregori_duarte@br.ajinomoto.com,AJINOMOTO DO BRASIL IND E COM DE ALIMENTOS LTDA,1
+Robson Junior Brighenti,brighenti.transportes1@gmail.com,BRIGHENTI TRANSPORTES LTDA ME,1
+Vera Lucia Nascimento Dos Santos Masotti,vl@workvideo.com.br,WORK VÍDEO SERVIÇOS EM ÁUDIO E VÍDEO LTDA,1
+Belone Ambiental,belone.ambiental@gmail.com,Belone Ambiental,1
+Célio Fernandes,terra.monte1@yahoo.com.br,Fernandes Terraplanagens e Pavimentações Ltda,1
+Flavio Pavan Filho,atendimento@flamarmergulho.com,FLAMAR COMERCIO E ATIVIDADES SUBAQUATICAS,1
+Mauro Cesar Toledo,geleiavitalidade@yahoo.com.br,Comercial Toledo e Toledo LTDA,1
+Matheus Calazans Parreiras,matheus@proinfoenergia.com.br,Pro-info Energia Ininterrupta e Informática ltda,1
+Vagner Rogerio Cortez,vagnerrcortez@gmail.com,JOSE PAULINO DA SILVA LAVANDERIA,1
+Eduardo Serrão Neves Leal,eduardo.serrao@copapa.com.br,Cia Paduana de Papeis,1
+Fernando Da Silva Pereira,contato@lfvidros.com.br,Letícia e Fernando Vidros ME,1
+Walter Barbosa Da Silva,grupocertecalianca@yahoo.com.br,CERTEC HOME EMPREENDIMENTOS E OBRAS,1
+Ranilson Raposo,ranilsonraposo@gmail.com,ELETROELETRONICA SERVICE LTDA - EPP,1
+Joana Silva,rh@revelarte.com.br,Revelarte,1
+Ana Lucia Da Silva Garcia,safebrasil.rj@gmail.com,SAFE BRASIL COMERCIO E LOCAÇÃO DE EQUIPAMENTOS LTDA,1
+Ingrid Barbosa Betty,ingrid.b.betty@embraco.com,Embraco,1
+Luciane Doern,rh@medlive.com.br,Medilar Importação e Distr Prod Medico Hospitalar,1
+Nagary Batista,atendimento@preserve.bio.br,PRESERVE AMBIENTAL LTDA,1
+João Rafael Candido de Souza,joaorcsouza@gmail.com,PRESERVE AMBIENTAL LTDA,1
+Silda Coutinho Ferreira,silda.coutinho@irisiluminacao.com.br,IRIS MONTAGEM DE PROJETOS DE ILUMINAÇÃO LTDA,1
+Waldir Lucio,waldir.lucio@br.atlascopco.com,AtlasCopco,1
+Ana Maria Mendes,ana.maria@copobras.com.br,Copobras S/A Ind. Com. de Embalagens,1
+Tamara Costa De Oliveira Soares,contato@3cnet.com.br,3CNET SERVIÇOS E TECNOLOGIA LTDA ME,1
+Luciano Alves,lucianoalvesconsultoria@hotmail.com,STONE BUILDING S/A IND E COM,1
+Januzi José Pereira,januzi.pereira@cerradinho.com.br,Cerradinho Bio,1
+Marcelo Lindner,lindnermarcelo@gmail.com,THE VIEW EMPREENDIMENTO IMOBILIÁRIO SPE LTDA,1
+Andréia Lemes Sabino,andreia.sabino@santaclarasa.com.br,Indústria Santa Clara S.A,1
+Gustavo Queiroz,goaqueiroz@copersucar.com.br,copersucar,1
+Leila Cristina Dos Santos,santos.jaragua@gmail.com,Comércio e Materiais de Construção Santos Ltda,1
+Karina A O Santos,karina.santos@imzadi.com.br,IMZADI CONSULTORIA & AUTOMACAO LTDA,1
+Daniel Roberto Madureira Da Silva,territoriobrasil@territoriobrasil.com.br,Território Brasil Comercial e Lazer Ltda,1
+Adriano Bezerra De Brito,adriano.brito@ale.com.br,ALESAT Combustíveis S.A.,1
+Fernanda Freitas,fernanda.freitas@docecascao.com.br,Elizabete Andreia Teixeira Prata,1
+Eduardo Ribeiro,eduardo.ribeiro@danone.com,Danone,1
+Lindomar Dierings,lindomar@coopercarga.com.br,Coopercarga,1
+Emercio Cardoso Da Silva,postoalianca1@gmail.com,ALIANÇA COMBUSTÍVEIS LTDA,1
+Iara Lurdes Pereira,iara@frangosmorgana.com.br,frangos morgana abate de aves ltda,1
+Michael Sullivan Bull,seguranca.gaseo@gmail.com,GASEO MEDICINA OCUPACIONAL LTDA EPP,1
+Mayara Felix Da Justa,mfjusta@petrobras.com.br,PETRÓLEO BRASILEIRO S.A - PETROBRAS,1
+Milena Virginea,milena@parelhasgas.com.br,parelhas gas ltda,1
+Joaquim Vicente Amorim Neto,joaquimamorim@uol.com.br,JOAQUIM VICENTE AMORIM NETO,1
+Ildo José Spanevello,faxinal@jucarcombustiveis.com.br,JUCAR TRANSPORTES E COMÉRCIO LTDA,1
+Leandro Morais Sampaio Peixoto,leandro-msp@hotmail.com,Auto Posto Princesa do Sertão,1
+Patricia Bessado,clinotorrino@uol.com.br,ROBERTO ALCANTARA MAIA S/S LTDA,1
+Marco Antonio Fornazelli Freire,marco.freire@gerdau.com.br,Gerdau,1
+Fabiana Oliveira Viana Hillerman,fabiana.viana@caixaseguradora.com.br,CAIXA SEGURADORA S/A,1
+David Martins De Faria Júnior,dmjunior@geogas.net.br,GEOGAS - SERVIÇOS DE OLEO E GAS LTDA ( SANTO ANTONIO DOS LOPES),1
+Jocenir Locks Silveira,comercial@cmemontagens.com.br,CANCELLIER MONTAGENS ELÉTRICAS EIRELI ME,1
+Fabricia Pereira Siqueira De Godoi,fabricia@gravia.ind.br,GRAVIA ESQUALITY INDUSTRIA METALURGICA LTDA,1
+Gustavo Rocha Gonçalves Coelho,logistica@gtgroup.net.br,Biosul Produtos Diagnotiscos LTDA - EPP,1
+Gilberto Costa,comercial@ksrecursoshumanos.com.br,NOVA KS RECURSOS HUMANOS CONSULTORIA LTDA,1
+Claudio Almeida Machado,cmachado@geogas.net.br,GEOGAS - SERVIÇOS DE OLEO E GAS LTDA (SÃO BRAS DO SUACUI),1
+Emerson Meireles,emeireles@banparanet.com.br,BANCO DO ESTADO DO PARA S.A.,1
+Aline Coura,aline.vieira@pcbsoldagens.com.br,PCB SOLDAGENS AUTOMOTIVAS LTDA,1
+Renan Rosa Martines,renan.martines@lautor.com,Lautor Automação e Robótica LTDA,1
+Josiane Aparecida Viana,josiane@vertentes.com.br,Luma Informática LTDA,1
+Daiana Pires,daiana.pires@timacagro.com.br,Timac Agro Indústria e Comercio de Fertilizantes Ltda.,1
+Adelino Mendes Das Neves Junior,adelino@mendesemorais.com.br,M&M Master Ad. e Cor. Segs. Ltda.,1
+Feliciano Lorenzo Filho,florenzof@hotmail.com,Ana Maria Maron de F. e Lorenzo,1
+Leonardo Biancardi Rosa,leonardo.biancardi1@saybolt.com.br,CONCREMAT ENGENHARIA E TECNOLOGIA S/A,1
+Douglas Jeunon,douglasjeunon@fundicaoalea.com.br,FUNDIÇÃO ÁLEA LTDA,1
+Fernanda Dantas,dantas2010@gmail.com,MB DANTAS INSTALAÇÕES - ME,1
+Denílson Araujo Dos Santos,denilson.araujo@icofort.com.br,ICOFORT - AGROINDUSTRIAL LTDA,1
+Franciele Schmoeller,franciele.schmoeller@giassi.com.br,Giassi,1
+Jonathan Athanasio Rosa,fransilterraplanagem@gmail.com,Fransil Terraplanagem Ltda,1
+Alice Possa Nunes,sesmt@maiseconomica.com.br,Drogaria Mais Econômica S/A,1
+Daiane Gricolo Araujo,rhcaprigem@caprigem.com.br,CAPRIGEM COMERCIO DE AUTO PEÇAS,1
+Dehuel Diniz Ferreira Lima,dehuel@cincos.eng.br,Cinco S Instalações e Automações Prediais LTDA,1
+Elisângela Manganelli,elisangela.avencurt@senairs.org.br,SERVIÇO NACIONAL DE APRENDIZAGEM INDUSTRIAL - SENAI,1
+Kelly Monteiro,kmonteiro@supergasbras.com.br,Supergasbras,1
+Heloa Oliveira,heloaoliveira@cofcoagri.com,COFCO BRASIL S.A,1
+Patricia Germano De Carvalho Frigeri,patricia@highconnect.com.br,high connect redes eletricas e de telecomunicacoes,1
+Vanessa Lemes,financeiro@giselerodel.com.br,Rödel comercio de acessorios e artigos de joalheria eireli me,1
+Silas Elias De Souza,silaselias@outlook.com.br,Silmarketing - Fire,1
+Rodnei Rodrigues Junior,jsktt7@gmail.com.br,Instituto Mauá de Tecnologia,1
+Jose Luiz Sant'Anna,jl-santanna@bol.com.br,PRODESTEC,1
+Flavio Cesar Duriguello,flavio@mprmontagem.com.br,MPR MONTAGENS INDUSTRIAIS LTDA,1
+Daniela Zandonotto,dzandonotto@sesc-rs.com.br,SERVIÇO SOCIAL DO COMÉRCIO,1
+Juliane Vieira Iglesias Camargo,jcamargo@sesc-rs.com.br,SERVIÇO SOCIAL DO COMÉRCIO,1
+Ana Claudia,ana.claudia.b@hotmail.com,Bueno & Bonatelli Ltda - ME,1
+Rafael Nergemari Rezende Da Costa,administrativo.ce@grupofarrapos.com,Transfarrapos Transporte Comercio e Industria Ltda,1
+Maria Eudes De Souza Leite,mariaeudes2008@hotmail.com,MEDITEC INDUSTRIA COMÉRCIO E SERVIÇOS ELETRONICOS LDA,1
+Roberta Fagundes,roberta.fagundes@andritz.com,ANDRITZ BRASIL LTDA,1
+Graciele Gomes,stock@ottmedical.com,Image Equipamentos Eletronicos Ltda.,1
+Fabiana Cristiasna Moreira,facm18@hotmail.com,FABIANA CRISTINA MOREIRA DA CONCEIÇÃO - ME,1
+Angeral Batista Da Silva,eletroig_@hotmail.com,eletro ig,1
+Carlos Francisco Policarpo De Oliveira,carlos.f.policarpo@hotmail.com,TECADI ARMAZENS GERAIS LTDA,1
+Ana Renata Leal,renata.leal@climbaircraft.com.br,"QUIMIGEL INDUSTRIA, COMERCIO E SERVICOS AEREOS ESPECIALIZADOS LTDA",1
+Suelem Capistrano,suelem.capistrano@sueda.com.br,"CAPISTRANO PRESTAÇÃO DE SERVIÇOS EM ENERGIAS RENOVÁVEIS, METROLOGIA E REPRESENTAÇÃO COMERCIAL LTDA",1
+Carlos Alberto Monchelato,logistica@clinictransportes.com.br,Clinic Transportes,1
+Ribamar Júnior,ds.climatizacao10@gmail.com,Dinamite Studio &,1
+Wagner Geerrt,wag_grz@yahoo.com,Teste,1
+Marcelo Felipe De Souza,contato@cleigep.com.br,Cleiber Adriano da Silva - ME,1
+Eliana Gialin Rosset,nawa.sushi@yahoo.com.br,DEW JAPONES FOOD EIRELI - EPP,1
+Jean Felipe Cardoso,jeancardoso@cafquimica.com.br,CAF Química,1
+Wagner Pereira,facilsolucoesindustriais@gmail.com,Fácil Soluções Industriais ME,1
+Fernanda Tavares Da Silva,fernanda.silva@wirex.com.br,Wirex Cable S/A,1
+Marinalva Jacinto de Miranda Costa,marinalva.costa@wirex.com.br,Wirex Cable S/A,1
+Bruno Ferreira Fortes,bruno.fortes@wirex.com.br,Wirex Cable S/A,1
+Shirley Santiago Albuquerque,shirley_albuquerque@hotmail.com,Televisão Cidade S/A,1
+Paulo Cesar Adati,pauloadati@yahoo.com.br,CEI ESMERALDA,1
+Helena Xavier De Almeida Adati,helenaadati@gmail.com,ASSOCIAÇÃO BENEFICENTE CAMINHO DE DAMASCO,1
+Adla Novaes,requisicao@maprotec.com.br,MAPROTEC,1
+Rosália Andrade,rosalia.andrade@hbsanorte.com.br,HIDROVIAS DO BRASIL - VILA DO CONDE S.A.,1
+Fátima Costalonga Botelho,fbotelho@concept.ind.br,Concept Engenharia e Automação Ltda,1
+Rafael Leopoldo Batista,rafael.leopoldo@manserv.com.br,Manserv Facilities Ltda,1
+Fernanda Peni,administracao@embraarte.com,Embraarte,1
+Leandro Alvaraz,lealvaraz@uol.com.br,leandro alvaraz me,1
+Éder Lázaro Pereira,ederpereira@mg.sense.com.br,sense eletrônica ltda,1
+Roberto P Bertoncini,terravermelhagp@hotmail.com,Terra Vermelha Iluminação Pública LTda - Me,1
+Rodolfo Lourenço Camargos,rodolfo.camargos@icro.com.br,Icro Soluções,1
+Janayne Alexsandra Da Silva Lansa,jana@barravelha.ind.br,BARRA VELHA IND E COM DE DERVIDADOS DE MANDIOCA LTDA,1
+Giovani Finetti,giovani.finetti@rotork.com,ROTORK CONTROLS COMÉRCIO DE ATUADORES LTDA,1
+Letícia Silva Santos,leticia.santos@jpte.com.br,JPTE ENGENHARIA LTDA,1
+Rodrigo Haubrichs Batista Alves,comandoreformas@hotmail.com,CONSERVADORA COMANDO LTDA,1
+Tatiana Mara Moscão Castelli,financeiro@gleam.com.br,Gleam Terceirização de Serviços Ltda - ME,1
+Marco Antonio Ranal,aplitec.aero@gmail.com,APLITEC AERO AGRICOLA LTDA,1
+Evandro Jose Da Silva,nminstalacoeseletricas@hotmail.com,NM INSTALAÇÕES ELETRICAS,1
+Jaqueline Alves Da Silva,jaqueline.alves@tech-end.com.br,c.c.c. de Morais e cia ltda,1
+Lins Sena,adla.oliveira@maprotec.com.br,Maprotec Engenharia,1
+Everton Paz Da Silva,everton.a.silva@merckgroup.com,Merck SA,1
+Paula Freitas,rh@ambiensys.com.br,AMBIENSYS GESTAO AMBIENTAL LTDA,1
+Marcia Alves Pinheiro,marcia.pinheiro@bancoamazonia.com.br,BANCO DA AMAZONIA,1
+Ana Paula Pereira Da Silva,ana.paula@casfengenharia.com.br,CASF MONTAGENS DE PAINÉIS ELETRICOS E INSTALAÇÕES IND. LTDA.,1
+Leonardo Figueredo Belchior,leonardo@ifsistemas.com.br,IF Sistemas Ltda-ME,1
+Deise Vieira,deise.vieira@br.issworld.com,ISS MANUTENÇÃO E SERVIÇOS LTDA,1
+Ricardo Alexandre De Oliveira,ricardo.a.oliveira@renault.com,Renault do Brasil S.A. (definitiva),1
+Gabriel José Bueno Telles,gabriel.telles@renault.com,Renault do Brasil S.A. (definitiva),1
+Amanda Barboza,amanda.barboza-extern@renault.com,Renault do Brasil S.A. (definitiva),1
+Regiane Galdino dos Santos,regiane.santos@renault.com,Renault do Brasil S.A. (definitiva),1
+Patryck,patryck.godoy@renault.com,Renault do Brasil S.A. (definitiva),1
+Joceleia De Oliveira Viana,joceleia@liess.ind.br,Liess Maquinas e Equipamentos Ltda,1
+Rodrigo Leite,rodrigo.dgtx@gmail.com,Techint,1
+Carlos Lima,carlos.lima@simtv.com.br,CABLE BAHIA S/A,1
+Volnei Debastiani,vdcinstalacoeseletricas@hotmail.com,vdc instalações eletricas,1
+Marcos Antônio De Oliveira,sac@lmquimica.net,Luciana Dias dos Santos ME (LM Química Controle de Pragas),1
+Luís Eduardo Da Fonte Raya,safetycleanbrasil@safetycleanbrasil.com.br,Estação de Limpeza Safety Clean Ltda,1
+Eunice Patricio,eunice.patricio@levelgroup.com.br,LEVEL CONSULTORIA EM GESTÃO EMPRESARIAL LTDA,1
+Joaquim Rogério De Oliveira,oliveiraenergiasolar@gmail.com,Marilete Pinto de Oliveira me,1
+Abigail Pereira De França De Jesus,jesus.abigail40@yahoo.com.br,ALERT BPO SOLUÇÕES INTEGRADAS LTDA,1
+Rosangela Russo Braga Silva,financeiro@sublimepisos.com,Sublime Piso Elevado Ltda,1
+Karen Ramos De Oliveira,central.treinamentos@sulgas.rs.gov.br,Companhia de Gás do Estado do Rio Grande do Sul,1
+Márcia Moreira Da Silva,mmsilvamg@gmail.com,EVAMAX IND E COM,1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Gazeta do Povo - 80.242.720/000100,1
+Eduardo Duda Da Silva,esilva1@grpcom.com.br,Gazeta do Povo - 80.242.720/000100,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Gazeta do Povo - 80.242.720/000100,1
+Nataly Amanda Guerrero,nataly.guerrero@intech-automacao.com.br,In-tech Automação e Sistemas Ltda,1
+Gabriel Carnovali Pessoa,gabriel.pessoa@pentair.com,PENTAIR TAUNUS ELETROMETALÚRGICA LTDA,1
+Sabrina Francine Do Prado,financeiro@laticinioscordilheira.com,CORDILHEIRA ALIMENTO LTDA,1
+Adão Carlos Silva De Carvalho,carvalhocarlos973@gmail.com,Gan-Valle Palmitos ltda,1
+Pedro Felix,pedro@safelimp.com.br,priscila rosa jacintho,1
+Juliana Piccinini Ferrarin,ferrarinblocos@hotmail.com,ZELINDA FRANZOI FERRARIN ME,1
+Eliezer Soares Da Silva,eletricalsystem@gmail.com,Eliezer Soares da Silva ME,1
+Lidia Almeida da Silva,lidia.almeida@sinobras.com.br,SINOBRAS,1
+Caio Ubirajara,caio.ubirajara@sinobras.com.br,SINOBRAS,1
+ERICA SANTOS,erica.santos@sinobras.com.br,SINOBRAS,1
+Pedro Gomes Da Silva,infosegi@gmail.com,infoseg Informatica e segurança Eletronica Ltda - ME,1
+Paulo Roberto Navarro Junior,paulo.sos.seguranca@gmail.com,SOS Segurança Eletrônica,1
+Nilton Sousa,comercial@megarefrigeracao.com,MEGA REFRIGERAÇÃO,1
+Eusebio Sibrao Vieira Neto,eusebiosvn@hotmail.com,Dolphins construção e comercio ltda,1
+Karoline Silva,karoline.silva@lemar.eng.br,LEMAR ELETRO COMERCIAL LTDA,1
+Jose Franciel De Souza Camargo,mirelasabongi@hotmail.com,clima eletrica,1
+Silvia Dalto,sdalto12@gmail.com,NATUREZA PAISAGISMO,1
+Karen Rayany Ródio,karen@pmfezer.com.br,Power Machines Fezer Indústria Mecânica S.A.,1
+Vicente Durán Cabrera,duran@gsnetwork.com.br,GSNET Solução e Produtos de Rede Ltda,1
+Bruno Souza,lbr@lbrautomacao.eng.br,LBR AUTOMAÇÃO E INSTRUMENTAÇÃO,1
+Karine Rocha Vieira,karine.vieira@pli-petronas.com,PETRONAS,1
+Lívia Vasconcelos Cardoso,livia.cardoso@pli-petronas.com,PETRONAS,1
+Luana Cristina Santos,sha-brcge1-rh08@pli-petronas.com,PETRONAS,1
+Lyane Silva,lyane.silva@somosnsc.com.br,NC Comunicações S A - 79.227.963/0013-16,1
+Rosana Smolski,rosana.smolski@somosnsc.com.br,NC Comunicações S A - 79.227.963/0013-16,1
+Cristiane Rodrigues,cristiane.rodrigues@nsc.com.br,NC Comunicações S A - 79.227.963/0013-16,1
+Rosimeiri Rocha Dos Santos,rosimeiri.rocha@leaoab.com.br,LEÃO ALIMENTOS E BEBIDAS LTDA,1
+Milena Stival,atendimento@palefix.com.br,Novelty Partners Ltda,1
+Giselle Dos Reis Nascimento,fortbones1@gmail.com,FORT BONÉS LTDA ME,1
+Roque Da Costa Ramos Junior,roque@avanteautomacao.com.br,Avante Automação Industrial Ltda,1
+Michele Aparecida Mendes,mec.construcoes@uol.com.br,M&C Serviços de Construçòes e Mat. Eletricos Ltda,1
+Lays Nunes De Morais,lays@macz.eng.br,MACZ ENGENHARIA,1
+Carlos Ferrucio Ristori,carlos@tw4.com.br,TW4 Tecnologia e Soluções Integadas Ltda,1
+Juliana Costa Vasseur,treinamento@cigam.com.br,Cigam Software Corporativo S/a,1
+Mayara Gabriela Campos,comercial@acrtecnologia.srv.br,ACR Tecnologia e Serviços Ltda,1
+Stephanie Gomes De Souza,rh3@estaciotec.com.br,ESTACIOTEC LTDA,1
+Patricia Pereira Marçal,patricia.marcal@vli-logistica.com.br,Ferrovia Centro Atlântica,1
+Rudinei Lago Dos Santos,rudilago@bol.com.br,RUDINEI LAGO DOS SANTOS ME,1
+Luciano Possamai,lpossamai@infraero.gov.br,EMP. BRAS. DE INFRAESTRUTURA AEROPORTUÁRIA INFRAERO,1
+Jéssica Ferreira De Avila,jessica.alves@itsgroup.com.br,Its Tecnologia e Informação LTDA,1
+Robson Valle,robson.valle@imerys.com,Imerys Fused Minerals Salto Ltda,1
+Fernando Souza Da Silva,fernando@instaladorapontealta.com.br,INSTALADORA DE GASES PONTE ALTA EIRELI,1
+Fernanda Bridi,fbridi@itwbi.com,"TECHNOPACK INDÚSTRIA, COMÉRCIO, E SERVIÇO DE ROTULAGEM LTDA.",1
+Suzane Monteiro Huizer,smsilva@qgog.com.br,QUEIROZ GALVÃO ÓLEO E GÁS S/A,1
+Edilene Dos Santos,tec.seguranca@chaprenda.com.br,CHÁ PRENDA DO BRASIL IND. E COMERCIO LTDA,1
+Flavia Batista,solus@solussondagens.com.br,solus sondagens e estudos geotecnicos ltda.,1
+Edivaldo Dos Santos Da Silva,eia_montagem@oi.com.br,E&A INSPEÇÃO DE SOLDAGEM E MONTAGEM INDUSTRIAL LTDA,1
+Alexsandro Andrade Boato,alexsandro.andrade@hospitallifecenter.com.br,Hospital Lifecenter S/A,1
+Letícia Mendo,leticia.mendo@htmicron.com.br,HT Micron Semicondutores SA,1
+Rosilene Garcia,compras@feesc.org.br,Fundação de Ensino e Engenharia de Santa Catarina,1
+Gustavo Ciarallo,compras@cienp.org.br,Fundação de Ensino e Engenharia de Santa Catarina,1
+Marilia Vicente Dos Reis,marilia.reis@terloc.com.br,Terloc - Terminal Logístico Cesari Ltda,1
+Edson Alves De Souza,edson@organizanegocios.com.br,organiza negocios ltda epp,1
+Patricia Prestes Teixeira,patricia.teixeira@braspine.com.br,Braspine Madeiras LTDA,1
+Euniberto Urbano Gaspar De Oliveira,gaspar@gasparealves.com.br,GASPAR E ALVES SERVIÇOS LTDA,1
+Yara Marchini,yara@march.com.br,March Automação Industrial Ltda.,1
+Juliana De Boni,juliana.dboni@orangesystem.com.br,ORANGE SYSTEM SOLUÇÕES EM INFORMÁTICA E SEGURANÇA LTDA,1
+Advaldo Tolosa Leão,advaldo.sesmt@coplastam.com.br,COPLAST - IND. E COMERCIO DE RES. PLÁSTICOS LTDA.,1
+Nielle Oliveira,administrativo1@gradualenergia.com.br,Gradual Energia Ltda - EPP,1
+Anderson Ribeiro,aribeiro@hisa.com.br,Hidraulica Industrial SA,1
+Anderson Augusto Andrade Dias,sesmt1.sao@pacificolog.com.br,Pacífico Log Logística e Transportes Eireli,1
+Regina Alves De Morais Neta,regina.neta@kisses.ind.br,MIDIZ INDÚSTRIA E COMÉRCIO DE FRALDAS LTDA ( FRALDAS KISSES),1
+Sara Eliane Gontijo Brusch Nascimento,sara_nascimento.br@infraero.gov.br,Empresa Brasileira de Infra Estrutura Aeroportuaria - INFRAERO (Porto Velho),1
+Leandro Abrantes,rh.transportesangelina@outlook.com,Transportes Angelina LTDA,1
+Rita Oliveira,rita.rh@ethos.ind.br,ETHOS METALURGICA,1
+Solange Terezinha Ferrari Poli,confeccoesbupos@gmail.com,Confecções bupos Ind. com. Ltda,1
+Pypellyne Xavier Alencar,rh@polpacanaa.com.br,Agroindustrial Frutnaã LTDA,1
+Naiara De Moura E Costa Natividade,naiara@1tabelionatojoinville.com.br,GUILHERME GAYA,1
+Giselle Dias,mariadascouves@gmail.com,GISELLE EMPRESA,1
+Elaine Teresinha Cardoso Santos,elaine@semae.rs.gov.br,SEMAE- SERVIÇO MUNICIPAL DE AGUA E ESGOTOS,1
+Vanderlei Luiz Pasa,vanderpasa@yahoo.com.br,SHO Ambiental ltda,1
+Adriana Sanoani,adriana.sanoani@mrsondagens.com,MR Sondagens Ltda ME,1
+Maria Teresinha Da Silva,maria.teresinha@petrobras.com.br,PETROLEO BRASILEIRO S.A - PETROBRAS,1
+Tatiana Camini,tatiana.camini@hagah.com.br,For Fun Entretenimento Ltda,1
+Danielle Mendonça Camargo,danielle@cbarroseng.com.br,Camargo Barros Engenharia Ltda,1
+Eliete Moreira,elietemj@hotmail.com,S.O.S Jardins e Afins,1
+Karina Castellano Hercule,karina.hercule@unidas.com.br,UNIDAS lOCADORA,1
+Milena Barboza Giardiello,milena.giardiello@unimed.coop.br,UNIDAS lOCADORA,1
+Vivian Bernardo Dos Santos Ferreira,vferreira@cvh.com.br,COOPERATIVA VEILING HOLAMBRA,1
+Antonio Morando,vidconsertos@hotmail.com,VID CONSERTOS ANTONIO MORANDO ME,1
+Leonardo Gomes Figueira,leonardo.figueira@lnxglobal.com.br,LNX Global Serviços de Informática LTDA-ME,1
+Lívia Toscano,livia.toscano@airliquide.com,Air Liquide Brasil,1
+Cesar Augusto De Amorim,asaprestadoradeservicos@hotmail.com,Asa Prestadora de Serviços Ltda.,1
+Ezequiel Rotta Da Silva,ezequiel.rotta@hotmail.com,Ezequiel Rotta Da Silva Pinturas ME,1
+Vitor Lopes,vitor@elonenergy.com.br,Elon Energy,1
+Livia Maria Melo De Lima Rey,livia.rey@terceirosuni.com.br,Acrinor Acrilonitrila do Nordeste S/A,1
+João Paulo Previtali,joao.previtali@tecaut.com.br,Tecaut Automação Industrial Eireli,1
+Jéssica Wanzuita De Novais Gutjahr,jessica.novais@redeunifique.com.br,BR Live Telecomunicações Ltda,1
+Athos Ribeiro De Lucena,athos.rib.lucena@uol.com.br,CALCULO ENGENHARIA LTDA,1
+Andressa Noce Catarino,stsaneamento@hotmail.com,STS SERVIÇOS TÉCNICOS DE SANEAMENTOS LTDA ME,1
+Virgilio Augusto Sucena De Oliveira,vyb.eletronica@gmail.com,VYB ELETRONICA LTDA,1
+Lucilene Alende,lucilene.alende@express.srv.br,Express Restaurantes Empresariais Ltda,1
+Emerson De Souza Silva,emerson@imedempregos.com.br,imparck Limpeza e Conservação Ltda Me,1
+Vanessa Yoko Futata,vanessa@attos.ind.br,ATTOS SERVIÇOS DE ALIMENTAÇÃO LTDA,1
+Fabiano José Terra,condominio.sanraphael@outlook.com,Condomínio Edifício San Raphael,1
+Carlos Bind,carlosbind@yahoo.com.br,eletro comercial,1
+Cristiani Santos Cerqueira,cristiani.cerqueira@unimedprudente.com.br,UNIMED DE P. PTE. COOP TRAB. MEDICO,1
+Naiara De Moura E Costa,naiara.mouracosta@hotmail.com,1° Tabelionato de Notas e 1° Ofício de Protestos de Títulos da Comarca de Joinville,1
+Felipe Caranassios,caranassios.felipe@herrenknecht.com.br,Herrenknecht do Brasil,1
+Ademilton Cesar Baraviera,baltecbara@ig.com.br,ALTEC BALANÇAS IND. E COM. DE BALANÇAS E TRONCO,1
+Tatiane Freitas Brazeiro,tatiane@ebvvinhos.com.br,Empresa Brasileira de Vinificações Ltda,1
+Talita Ponce Leiras,talitaleiras@gmail.com,PAR SERVIÇOS DE APOIO ADMINISTRATIVOS LTDA,1
+Arthur Mendes Dos Santos,arthur@bla.com.br,bla bla ltda,1
+Claudia L. Tannhauser,claudia-tannhauser@corag.rs.gov.br,Companhia Rio-Grandense de Artes Gráficas - CORAG,1
+Igor Menezes,igor.menezes@eisenmann.com.br,Eisenmann Juiz de Fora Manutenção Industrial e Comércio de Peças Automotivas.,1
+Caroline Dal Bosco,global.dalbosco@gmail.com,DAL BOSCO COMERCIO DE BAZAR LTDA,1
+Eloisa Freitas Costa Bertoletti,eloisa_bertoletti@infraero.gov.br,INFRAERO - Empresa Brasileira de Infraestrutura Aeroportuária,1
+Claudia D. De Lima,claudia.dalceno@doehler.com.br,Döhler América Latina,1
+Ana Paula Kovalski,ana.kovalski@supermix.com.br,SUPERMIX CONCRETO S/A,1
+Ivan Gomes Da Costa,ivan.costa@formtap.com.br,Formtap Indústria e Comércio S/A.,1
+Nélia Simone Banderia E Ribeiro,cobrancalagunar.es@hotmail.com,Lagunar Aviation Ltda - ME,1
+Carmem Verônica Dos Santos Rêgo,ssma1@tecnofrio.net,TECNOCOLD LTDA,1
+Angela Maria Oliveira Xavier De Carvalho,angela.carvalho@pbti.com.br,Pbti Solucoes Ltda,1
+Angela Nascimento Da Fonseca Santos,angelanascimento.fmce@imbel.gov.br,Indústria de Material Bélico do Brasil - IMBEL/FMCE,1
+Fernando Pinheiro Sá,fernando.pinheiro@ceva.com,Ceva,1
+Renata Feiteiro Batista Ramos,renata.ramos@ceva.com,Ceva,1
+Renato Cezar Sertorio,lizianesertorio@hotmail.com,H.R. Açaí Comércio de Alimentos Ltda,1
+Peterson Santos,p.santos@fidia.com.br,FIDIA DO BRASIL,1
+Kell,autopostodezmais@gmail.com,Auto posto 10 mais,1
+Diego Creato,diego@colinaz.com.br,COLINAZ ENGENHARIA,1
+Gilson Morais De Oliveira,rhapis@ig.com.br,GILSON MORAIS OLIVEIRA SERVIÇOS - ME,1
+Rogério Bitencourt Marçal,rogeriomarcal@confepar.com.br,CONFEPAR,1
+Marcos Mauricio Dos Santos,marcosmauricio.quimico@gmail.com,ZIL-MAR,1
+Midian Gomes,midian.magalhaes@cassi.com.br,Cassi Sede Brasília,1
+Tisley,tisley@chaordic.com.br,Chaordic Systems S.A,1
+Jocélio Sousa Silva Filho,joceliosousasilvafilho@gmail.com,JOTA Soluções em Energias Eletrica,1
+Paulo Rogério Bonifácio,paulo.bonifacio@beumergroup.com,BEUMER Latinoamericana Equipamentos Ltda,1
+Paulo Cesar Alves Da Silva Filho,paulo@getecma.com,GETECMA,1
+Michelliny Silva De Oliveira,michelliny.oliveira@serpro.gov.br,SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS - SERPRO,1
+Consuelo Costa,consuelo@brfertil.com.br,BRFertil,1
+Osvaldo Leme Da Silva,tecnolimpe@tecnolimpe.com.br,TL IMUNIZAÇÃO E LIMPEZA LTDA-ME,1
+Adriana Santos,wallitec@hotmail.com,WALLITEC,1
+Juliano José Correa,juliano@saocamiloitapetininga.com.br,Hospital Regional de Itapetininga,1
+Miguel C. Da Silva,miguel@mcsprojetos.com.br,MCS Projetos Industriais Ltda,1
+Elza Antunes Espindola,bia@fozdochapeco.com.br,FOZ DO CHAPECÓ,1
+Norival Alves,norival_alves@hotmail.com,Esplanada,1
+Milena Barboza Giardiello,milena.giardiello@unimed.coop.br,UNIMED DO BRASIL,1
+Carlos Roberto Pereira Paiva,g.contec@yahoo.com.br,g.contec,1
+Tamara Borges,centralclimatizacao.sc@hotmail.com,central climatização,1
+Flavio Pavan,flamar_vitoria@yahoo.com.br,FLAMAR,1
+Rosemary Sant´Ana,rosemary@laticinioscalogi.com.br,Laticínios Calogi,1
+Kassia Daneska Ramos,rh01@vilagermanica.com.br,Hotel Vila Germânica LTDA,1
+Adriana Zanin Marcon Gobo,atendimento@tecnicaensaios.com.br,TÉCNICA ENSAIOS,1
+Alzir Thomas Miguel,dalmadh@hotmail.com,metalurgica thomas,1
+Marcos Cesar Pelinson,engenharia@maqnagua.com.br,MAQNAGUA,1
+Marcio,msa.eletrica@hotmail.ccom,MSA SERVIÇOS ELETRICOS,1
+Emilio Jacobs,emilio.jacobs@ezentis.com.br,Ezentis - Serviços de Engenharia e Instalação de Comunicações,1
+Natan Bandeira,natan@bprconstrucoes.com,BPR ENGENHARIA E CONSTRUÇÕES,1
+Arlete Oliveira Bertollo,depto.pessoal4@voltenge.com.br,VOLTENGE,1
+Arthur Yamamoto,arthursilva@nobleagri.com,NOBLE BIOENERGIA UNIDADE MERIDIANO,1
+Ludmilla Guimaraes,bambina_hotel@ibest.com.br,Hotel Bambina,1
+Walmir Vitor,w.v.junior@live.com,Vitor Contabilidade,1
+Edilson Soares,edilson.soares@ourofino.com,Ourofino,1
+Heloa Oliveira,heloaoliveira@nobleagri.com,NOBLE AGRI,1
+Sinara Da Silva Bianchi,sinara.bianchi@metodistadosul.edu.br,CENTRO UNIVERSITÁRIO METODISTA,1
+Alex Ribeiro Oliveira,alex@nettriangulo.com.br,NetTriangulo Telecom,1
+Steffany Fernanda,steffany@eusoumaster.com.br,Master Tecnologia,1
+Geremias Junior,geremias.junior@moind.com.br,MOIND ENGENHARIA,1
+Manoela Meurer,manoela@weg.net,WEG Automação Critical Power LTDA,1
+Eraldo Rodrigues Dos Santos,financeiro@showdesign.com.br,Showdesign,1
+Marco Lima,marco@eritel.com.br,Eritel,1
+Joelma Teixeira De Souza Santos,rh@fortcom.com.br,FORTCOM HIGIENE INDUSTRIA E COMERCIO EIRELI,1
+Diego De Paula Aragao,diego@sticbrasil.com.br,STIC - SOLUÇÕES EM TENCNOLOGIA DA INFORMAÇÃO E COMUNICAÇÃO,1
+Kely Espindola,kely@planave.com,PLANAVE S.A.,1
+Henrique Rodrigues De Abreu,henrique.abreu@armadabrasil.com,Armada Brasil Empreendimentos,1
+Flavia Pires Do Prado,rh@injetel.com.br,INJETEL,1
+Sandra Amaral Souza,sandra@conquistasupermercados.com.br,Conquista Supermercados,1
+Camilla,comprasadm@colegiostaterezinha.com.br,Colégio Santa Terezinha,1
+Thor Callado Nolla,thor@istria.com.br,ISTRIA ENGENHARIA,1
+Celso Antonio Paiva Filho,celso@grupoaxial.com.br,Axial Construções Eireli Me,1
+Sidinei Neves,compras@nextpa.com.br,Next Projetos e Automação Industriais,1
+Marli,marli.jager@tecnicon.com.br,TECNICON SISTEMAS GERENCIAIS,1
+Alexandra Vieira,alexandra@diversuniversity.com.br,D.U. Service Offshore,1
+Roberto Aparecido Perez,eorpac@yahoo.com.br,AUTO POSTO MILA,1
+Márcia Cristina De Souza,marcia.souza@saint-gobain.com,Saint-Gobain do Brasil Produtor Industriais e Para Construção LTDA,1
+Eldalina Nunes,eldalina.lima@randstad.com.br,Randstad RH,1
+Anderson Izidoro Pedroso.,comercial@eletroizidoro.com.br,Eletro Izidoro Ltda.,1
+Sara Torres,apparatus@apparatus.eng.br,apparatus engenharia,1
+Virgulina Costa Castro,vivi@macz.eng.br,MACZ EGENHARIA,1
+Mauricio Pereira Da Motta,mauriciomotta@ohmsolucoes.com.br,OHM Soluções e Serviços,1
+Mariana Nogueira De Oliveira Pacheco,mariana_nortlar@hotmail.com,Nortlar,1
+Mateus Ciochetta Minuzzi,recursareaa@gmail.com,recursarea assessoria empresarial,1
+Carla Marquetti,rh@perfor.com.br,Perfor,1
+Poliene Aparecida Lopes Morais,poliene.morais@pharlab.com.br,PHARLAB INDUSTRIA FARMACEUTICA S.A,1
+Ingrid Regina Diniz Da Silva,ingrid@wesra.com.br,WESRA ENGENHARIA ELÉTRICA,1
+Cleiton E. Michel,cleiton.michel@personalservice.com.br,PERSONAL SERVICE,1
+Márcia Sassi Nunes,marcia@fadaplasticos.com.br,FADA Plásticos,1
+Cassio Stanislovisky,stanislovisky@cassiosantos.com,Empresa do Cassioson,1
+Giovana Pereira Dalagnollo,giovana@weg.net,WEG Motores,1
+Adriana Aparecida Carboni,focuspinturas@hotmail.com,FOCUS REFORMA E PINTURA PREDIAL,1
+Vanderlei Cardoso De Oliveira,vanderoliver@gmail.com,viva sem fio,1
+Wilson Luiz Missono,wilson.missono@kpi.srv.br,KPI Gestão,1
+Sonivaldo Abreu Duarte,sonivaldoabreu@gmail.com,Monte Santo Informática Ltda ME,1
+Renivaldo Andrade Dos Santos,renivaldo@pombalnet.com.br,NET WORLD INFORMATICA,1
+José Adilson Dos Santos,dilson@adwave.com.br,ADWAVE,1
+Kleverton Alusson Carvalho Santana,kel.portal@gmail.com,PORTAL NET,1
+Jackson Antonio Castro Almeida,jacalmeida@megainfoline.com.br,CONID,1
+Tatiane Machado,salgadosdazareia@hotmail.com,salgados dazareia ltda me,1
+Leandro Da Silva Rosa,leandro.rosa@datatraffic.com.br,DATA TRAFFIC S/A,1
+Karla Teixeira Campos,karla.campos@datatraffic.com.br,DATA TRAFFIC S/A,1
+Dhyego Ferreira de Lima,dhyego.lima@datatraffic.com.br,DATA TRAFFIC S/A,1
+Adriana Firmino,adriana.firmino@venco-csti.com.br,FIXCONSULTING,1
+Hilton Cesar Bender,hilton@bendersom.com.br,Bendersom,1
+Carmen Villas,deptopessoal@nttdata.com,NTT DATA BRASIL CONSULTORIA EM TI & SOLUÇÕES LTDA,1
+Jair Alexander Grisales,alexder.gr@bmbrasil.com,BM INSTALACAO E MONTAGEM DE EQUIPAMENTOS INDUSTRIAS,1
+Johny Patricio Pereira,patriciojohny@gmail.com,SS Pinturas,1
+Poliene Aparecida Lopes Morais,poliene.morais@pharlab.com.br,PHARLAB INDUSTRIA FARMACÊUTICA S.A.,1
+Valeria Braga,valeria.braga@pharlab.com.br,PHARLAB INDUSTRIA FARMACÊUTICA S.A.,1
+CAROLINE BRUM,caroline.brum@pharlab.com.br,PHARLAB INDUSTRIA FARMACÊUTICA S.A.,1
+Julia Alves,julia.alves@pharlab.com.br,PHARLAB INDUSTRIA FARMACÊUTICA S.A.,1
+Adriane Soares De Moraes,adris3moraes@hotmail.com,Planaltur Hotel,1
+Alan Alencar Dias De Carvalho,carvalhosolucoes@ymail.com,CSE,1
+Daniele,rh@uptelecom.com.br,UNION POWER,1
+Maicon Francisco Dallabona,mdpinturas@mdpinturas.com.br,MD Pinturas,1
+Josiane Alves Da Silva,joseanealves2005@yahoo.com.br,Comercial Auto Estima,1
+Rafael,planejamento@predlub.com.br,PREDLUB,1
+Thais Miquelasso,passauralocacoes@gmail.com,Irmãos Passaúra Locações S.A.,1
+Caique Costa,caiquec_pf@hotmail.com,PANIFICADORA DOCE PÃO,1
+Zelito Correia Os Santos,zelitocorreia@hotmail.com,ZCS SERVIÇOS,1
+Charline,logistica@msredes.com.br,MS REDES INFORMATICA E TELECOMUNICACOES LTDA,1
+Valmor Carlos Tonietto,valmor@tecnohard.ind.br,TECNOHARD,1
+José Roberto Felix Da Silva,joseroberto.sse@gmail.com,S.S.E.,1
+Vânia Garcino,vania.garcino@techplus.com.br,Itech,1
+Michele Moretti,michele.moretti@moriahambiental.com.br,Moriah Ambiental,1
+Fabrício Fernandes De Souza Reis,fabricio@redeaerea.com.br,Rede Aérea Tecnologia,1
+Nilson,nilson@phsnet.com.br,Power Net,1
+Elaine P Santana,rh@vianet.com.br,VIANET TELECOM,1
+Maicon David Jaques,contato@maytecseguranca.com.br,MAYTEC SEGURANÇA ELETRÔNICA,1
+Diego Batista Pereira,diegoluznobre@gmail.com,luz nobre,1
+Jaqueline Quintanilha,administracao@robosystem.com.br,ROBOSYSTEM,1
+Flávia Machado,comercial@etig.com.br,GRUPO ETIG,1
+Jomar Dias De Mello,serrariamelodia@gmail.com,SERRARIA MELODIA,1
+Ariel Cristina De Oliveira Porto,ariel.porto@energia1.com.br,Energia,1
+Ana Paula Souza Da Silva,apsouza@qgog.com.br,QUEIROZ GALVÃO ÓLEO E GÁS S/A,1
+Rodrigo Jose Marasca,rodrigo@primatecmt.com.br,PRIMATEC,1
+Pedro Cardoso,pedro.cardoso@electricpowerengenharia.com.br,ELECTRIC POWER COMÉRCIO E SERVIÇOS LTDA,1
+Luciane Belmonte Chami,lu.moa@gmail.com.br,FUNDAÇÃO MO'Ã,1
+Elbio Fassini,elbio@afrastelecom.com.br,Afras Telecom,1
+Robson Marcos Reinaldi Ribeiro,rob_vivi@hotmail.com,Supermercado Popeye,1
+Djeison Vossgrau,anap@diferpinturas.com.br,Difer Pinturas,1
+Célio Ricardo Quaio Goetten,celio@softenge.com.br,Softenge Automação Industrial,1
+Edvaina Cr Inacio,rh@mrgnet.ind.br,METALÚRGICA RIO GRANDE,1
+Lucas Vicki Martins,contato@plastechmaquinas.com.br,PLASTECH MÁQUINAS,1
+Aguinaldo Da Silva Montovani,aguinaldo.montovani@electroimpact.com,Eletroimpact,1
+Estevão Hudson Dos Santos,estevaohs@hotmail.com,Technical Solutions,1
+Petersen Ernani Poia,petersen@solucoesprime.com,PRIME,1
+Renata Ferreira Carnaúba,al.montanagrill@gmail.com,MONTANA GRILL EXPRESS,1
+Carlos Aníbal Cunha Cardoso,anibal@niplanne.com.br,NPE NIPLAN SERVICE LTDA,1
+Washington Luiz Landin Maia,wmaia@internitro.com.br,INTERNITRO,1
+Jenifer De Almeida Rodrigues,jenifer@mksservices.com.br,MKS DEFINITIVO,1
+Vitória Capum Rodrigues,vitoria@mksintegridade.com,MKS DEFINITIVO,1
+Joao Rodrigues De Souza Neto,joaorodriguesneto@gmail.com,Sage,1
+Enilso Martins Marques,contato@marpie.com.br,MARPIE,1
+Tatiane Rodrigues Gonçalves,ha0h2-gl@accor.com,Atrio Hoteis,1
+Natália,wtecengenharia@wtecengenharia.com,WTEC ENGENHARIA,1
+Priscila Rodrigues,tucano201103@yahoo.com.br,ÁGUA & MUNCK TUCANO,1
+Dylson Valente,dylson.valente@tlonanlogistica.com.br,T. LONAN,1
+Marcelo Rodrigo Castaldi,marcelo.castaldi@macservice.eng.br,Macservice Serviços de Enenharia Ltda.,1
+Marcio Silveira,apcabure@gmail.com,AUTO POSTO CABURÉ,1
+Divino Alves Da Silva Junior,junior@uzzifilter.com.br,UZZI FILTER,1
+José Olinto Laeber,vipesa.es@gmail.com,VIPESA,1
+Hellen,hellen@viaconect.com,VIACONECT TELECOMUNICAÇOES,1
+George Lucas Gonçalves Teixeira,emp.georgelucas@hotmail.com,George Lucas,1
+Wadson Melo Brito,wadson@netcomam.com.br,Netcom,1
+Angélica De Castro E Silva,departamentopessoal@techs.com.br,Techs Net,1
+Georgina Squeff Sanches,gsanches@inmetrics.com.br,INMETRICS,1
+Mateus Machado Scain,fiscal@parquesdaserra.com.br,BONDINHOS AÉREOS,1
+Patricia Pariol,patricia@rizzitherm.com.br,RizziTherm,1
+Andressa,andressa.dasinger@semarndt.com.br,SEMAR,1
+Diogo Padilha,coordenadorpoa@hotmail.com,AAPECAN,1
+Lauro Hoffmann Pádua,lauro@postodino.com.br,Posto Dino,1
+Débora Mello,debora.mello@divinaprovidencia.org.br,Hospital Divina Providência,1
+Maria Salete Corrêa Carvalho,mariasaletecarvalho2014@gmail.com,Formação Profissional,1
+Vanessa Estorio Vides,prontoarbauru@hotmail.com,Prontoar Bauru,1
+Luiz Fernando Pereira De Carvalho,digitacao@metroquality.com.br,METROQUALITY,1
+Josiene Nepomuceno De Carvalho,auto.posto.tenente@hotmail.com,AUTO POSTO 3 IRMÃOS,1
+Carlos Sergio Moretto,pneucar_andradina@hotmail.com,Pneucar,1
+Rafael Leopoldo Batista,rafael.leopoldo@manserv.com.br,MANSERV,1
+Jean Carlos Correia,jean.correia@hotmail.com,Brava sistemas segurança,1
+Cristiani Borres,frotamodesto@gmail.com,Modesto Transportes,1
+Luis Carlos Correa De Almeida,luiscca@gmail.com,TS Cursos e Serviços,1
+Luciana De Barros Costa,lcosta@ttrans.com.br,MPE,1
+Elisabethe Silva Araujo,operacional@tecnoarcondicionados.com.br,Tecnoar,1
+Denise De Almeida Andrade,denise_dine05@hotmail.com,Nossa senhora da gloria,1
+Jarbas Carneiro,jarbascarneiro@gmail.com,JORGE TIRCO,1
+Luana Cardozo Da Silva,luana.silva@rj.senac.br,Senac Rio,1
+Sarah,sarah@thermocold.com.br,THERMOCOLD,1
+Rui Garcia,geratecgeradores@terra.com.br,GERATEC GERADORES,1
+Valkennedy De Moura Castro,valkennedy@comnt.com.br,ComNT Provedor Internet,1
+Marcelo Augusto Bernardo,marcelo.bernardo@marsh.com,MARSH CORRETORA DE SEGUROS,1
+Luana Pedroso,luana@goxin.com.br,Goxin,1
+Diva Marques,divabieltata@yahoo.com.br,ARCHER WELL,1
+Pedro Antonio Pimentel Póvoa Da Silva,diretoria@grupopoder.com.br,GRUPO PODER,1
+Analucia S Espingarda,analuciaespingarda1958@hotmail.com,Cantinho do Bom Paladar,1
+Roseli Pires Longaretti,roseli@elletrocenter.com.br,ELLETROCENTER,1
+Maysa Belo Moreira,maysabelomoreira@yahoo.com.br,biscoitos tia wanda,1
+Melissa Grahl Figueredo,melissa.figueredo123@senairs.org.br,FACULDADE DE TECNOLOGIA SENAI PORTO ALEGRE,1
+Valdecir Ribeiro Da Silva,decibarraca@gmail.com,BARRACA,1
+Gislaine Bortolin Da Rosa Brandão,viviane@orizonvidros.com.br,Orizon Vidros,1
+Marcelo Toledo De Assis,marcelo@aetbrasil.com,A & T Brasil International Business,1
+Tiara Kretz,tiara@previsc.com.br,PREVISC,1
+Kornelius Hermann Eidam,kornelius@mobiliza.com.br,Mobiliza,1
+Andre Fornitani,andre@biomedicassessoria.com.br,BIO MEDIC TREINAMENTOS,1
+Fabiana Marchezi,serra@tracbel.com.br,Tracbel S/A,1
+José Terres,terres@goldline.com.br,SPARK,1
+Wallace Sitemberg Souza Felix,wallace@scientiaconsultoria.com.br,Scientia Consultoria,1
+Edmar Martins Dos Santos,santos1486@hotmail.com,B&M guarda vidas e brigadistas,1
+Anderson Andrade,anderson.andrade@4pipe.eng.br,4PIPE,1
+Adriana Scholten,adriana@hidropan.com.br,HIDROPAN,1
+Margit Edelgard Zillmer,margit@hidropan.com.br,HIDROPAN,1
+Patricia Fischer,brustronic1@brustronic.com.br,Brustronic Automação,1
+Thais Wille,thais.wille@jti.com,JTI,1
+Eliane Vieira Monteiro,eliane_monteiro.vieira@outlook.com,mercadinho 3m,1
+Priscila Oliveira De Moraes,priscila.moraes@espro.org.br,ESPRO,1
+Alexandra Sklasky Gottardi,rose@dbug.com.br,DBug Informatica,1
+Reinaldo Geronimo Viana,rick_station@hotmail.com,casa de carne filezão,1
+Tulio Leite De Castro,caiapo.tulio@task.com.br,TLC-ME,1
+José Bento Tomazeli,jbento.tomazeli@bdnet.com.br,BDNET,1
+Tiago Maciel,adrianabatistella@gmail.com,Teste,1
+Marcio Dias De Almeida,mdajesus@mdanet.net.br,Mdanet,1
+Alex Potenza,alexpotenza@hotmail.com,potenza som e luz,1
+Maurício Barros,mauricio@ownline.com.br,"Own Line Engenharia, Consultoria e Representação LTDA",1
+Ana Raquel Almeida Da Silva,transcandeal@terra.com.br,TRANSCANDEAL,1
+Wilson Patrocínio Teixeira Alencar,wilson.alencar@inmedbrasil.com.br,InMed,1
+Eliane De Fátima Faria,elianefaria@inb.gov.br,INB,1
+Dayana Diaz,dayana.diaz@ge.com,GE ENERGY,1
+Nilda Maria Ribeiro D`Eça,diskratinha@uol.com.br,Disk Ratinha Desinsetizadora,1
+Sebastião Henrique Bergamasco,sebastiaobergamasco@hotmail.com,COLORTRANS,1
+Ana Maria Bastos De Carvalho Kohn,adm@alphachannel.com.br,Alpha Channel,1
+Silvio De Oliveira Matos,matos.silvio@gmail.com,S.O. M - Serviços de Inspeções e Diligenciamentos Técnicos Ltda,1
+Marilda Nunes Franco,letrinhasamigas@yahoo.com.br,CENTRO EDUCACIONAL LETRINHAS AMIGAS,1
+Lind,audiomixsom@hotmail.com,AUDIOMIX SOM E LUZ,1
+Bruna Bresciani Piai,bru_p@yahoo.com.br,BNC-CONVENIÊNCIA E LANCHONETE EIRELE-ME,1
+Fernando Dantas,engenharia@engenhariamb.com.br,MB ENGENHARIA,1
+Danillo,danillo.ubannet@gmail.com,Ubannet,1
+Jairo Eliel De Souza Salgado,edmeq@hotmail.com,EDMEQ REFRIGERAÇÃO,1
+Terilú Maximino,terilu.maximino@valmig.com,Valmig Comercio e Assessoria Técnica de Equipamentos LTDA,1
+Viviane Moura,viviane.moura@litens.com,Litens Automotive do Brasil Ltda,1
+Marcos Antonio Melegario Tuppan,spaautomotivo@gmail.com,POSTO SERRA MAR,1
+Danilo Bueno,danilo@wyntech.com.br,Wyntech,1
+Marina Magalhaes Farah,marina_m_farah@icloud.com,Formoso Cozinha Natural,1
+Viviane Feitosa De Andrade Fujita,vianefujita@hotmail.com,FUJITA,1
+Jair Leo Lima Neves,nevesqido@hotmail.com,LIMA NEVES SOLUÇÕES PREDIAIS,1
+Cleide Da Silva Oliveira,rh2@regionalcereais.com.br,REGIONAL CEREAIS,1
+Fernando Almeida Blanco,feblanco1@hotmail.com,DECK 104,1
+Débora Cristina Campos,rh@tecnoklima.com.br,TECNOKLIMA SISTEMAS DE AR CONDICIONADO,1
+tecnoklima,manutencao3@tecnoklima.com.br,TECNOKLIMA SISTEMAS DE AR CONDICIONADO,1
+Geovane Nascimento Da Silva,eletrowatts2@hotmail.com,Eletrowatts Instalações Elétricas,1
+José Eduardo Machado Da Veiga,eduveiga.gel@terra.com.br,Open Tecnologia,1
+Jeniffer Da Silva Thome,thome.jeniffer@br.panasonic.com,PANASONIC,1
+Marcia C Z Montagner,valledasfrutas@uol.com.br,Valle das Frutas,1
+Paulo Akira Oshiro,miekoshiro@hotmail.com,PAULO AKIRA OSHIRO,1
+Leandro Narciso Calado,leandro.narciso@i9maistecnologia.com.br,i9+ Tecnologia,1
+Jonas Amaral,administrativo@creativerj.com.br,Creative,1
+Carolina,subway.avbrasilia@gmail.com,Subway Av. Brasília,1
+Vagner F. P. Da Silva,gerencia@autopostocopaouro.com.br,vin7,1
+Marcello Anderson Uchoa De Oliveira,dpcomercio@hotmail.com,EMPÓRIO FUNCIONAL GOURMETERIA E NUTRIÇÃO,1
+Daikichi Yoshinaga,daikichi@techinova.com.br,MGY,1
+Anderson Rossim Ferreira,anderson.ferreira@tivit.com,TIVIT SANTOS,1
+Ana Claudia,ana@grupomedeirosms.com.br,Bruno Otano,1
+Aline De Freitas Da Silva,afreitas@baldan.com.br,Baldan,1
+Valmir Ponciano Rodrigues,asteca.valmir@gmail.com,Asteca,1
+Daniel Certo Lopes,queijariadafamilia@gmail.com,Queijaria da Família,1
+Camila Melissa Picolo Fonseca,nostra.pizza@yahoo.com.br,NOSTRA PIZZA,1
+Davi Assunção Taborda,assadm@secovimed-pr.com.br,SECOVIMED,1
+Emerson Padua Caetano Da Silva,emersonpadua@hotmail.com,kiosque do açai,1
+Wirlon Sastre De Oliveira,ciaoliveiraefiscal@gmail.com,CONTABILIDADE OLIVEIRA,1
+Novoponto,novopontobordados@terra.com.br,Novo Ponto,1
+Maria Mônica Pereira Da Silva Ferreira,hospitalnsp@yahoo.com.br,HOSPITAL NOSSA SENHORA DA PIEDADE,1
+Rejane Campos,rejane.campos@multiempreendimentos.com,Multiempreendimentos,1
+George José Spencer Soares,george.spencer@eletronet.com,ELETRONET S/A,1
+Marcos Ferreira,m.ferreira@embrapa.br,Embrapa Agrobiologia,1
+Jose Ricardo Pereira,trapichedasostras@gmail.com,TRAPICHE DAS OSTRAS,1
+Claudinei Luiz Dos Santos-Me,claudinei.tecnowan@gmail.com,Tecnowan Teleinformatica,1
+Denival Rosa De Souza,denival.edu.tst@gmail.com,Mgf treinamento profissional,1
+Jean Paulo Agazzi - Mari Tania Tremea Agazzi,voaldoautoposto@hotmail.com,VO ALDO AUTO POSTO LTDA,1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Gazeta do Povo - 76.530.047/0001-29,1
+Claudiana Rodrigues,claudianar@grpcom.com.br,Gazeta do Povo - 76.530.047/0001-29,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Gazeta do Povo - 76.530.047/0001-29,1
+Gilvania Dos Santos,administrativo@prosolucoesindustriais.com.br,PRO SOLUÇÕES INDUSTRIAIS EIRELI - EPP,1
+Cinthia Maria Nogueira,cinthia58@gmail.com,O BARBA HAMBURGUERIA,1
+Ephigênio Domeneghetti Júnior,ephigenio.junior@candeias.tur.br,Escritório Regional de Santa Catarina,1
+Almir Bezerra Dos Santos,almir@netcom.psi.br,NET.COM,1
+Jose Barbosa Da Silva,barbosa@norteldata.com.br,NORTELDATA,1
+Anderson Dalmora,anderson@chapecobalancas.com.br,CHAPECÓ BALANÇAS E SERVIÇOS,0
+Elaine Cristina Da Silva,associacaoprojetodedeus@yahoo.com.br,CENTRO EDUCACIONAL INFANTIL PROJETO DE DEUS,1
+João Bosco,comercial@jbcservicos.com.br,JBC,1
+Camilla Freitas,camilla.freitas@syngenta.com,SYNGENTA,1
+Daiana,admfloripa@phrh.com.br,PH EVENTOS,1
+Daniela Lehmkuhl,daniela.lehmkuhl@woodtechms.com,Woodtech do Brasil,1
+Thiago Mendes Cardoso,thiagoscarnes@gmail.com,THIAGOS CARNES,1
+Luiz,rh@chacarasantaclara.com.br,CHÁCARA SANTA CLARA,1
+Angélica Gabriela Do Carmo,angelica.carmo@group-ism.com,Bebidas São Miguel,1
+Daisy Resende Pereira,daisy.resende@telebras.com.br,TELEBRAS,1
+Joane Carvalho Pizani Almada,jpizani@ttrans.com.br,TTRANS,0
+Rosa Saldanha,treinamento@passaura.com.br,Irmãos Passaúra S/A,1
+Eduardo Duda Da Silva,esilva@grpcom.com.br,RPCTV,1
+Severino Manoel Da Silva,multiplantas@hotmail.com,MULTIPLANTAS,1
+Sandra Zei,verdeserv@hotmail.com,VERDESERV,1
+Camila Araujo,financeiro@portenge.com,PORTENGE,1
+Rosana Cristiano Lopes,rosana.cristiano@hotmail.com,mercado ágape,1
+Vanessa Trizolini,vanessa.trizolini@cgi.com,CGI AMERICA DO SUL,1
+Ayres Monaliza Santana Garcia,ayres.monaliza@gmail.com,LLL alimentacao e servicos ltda me,1
+Silvia Queiroz,silvia.queiroz@br.heinenhopman.com,HEINEN & HOPMAN,1
+Marcos Antônio Da Silva,sandra@meioambiental.com.br,AMBIENTAL CONSULTORIA E PROJETOS LTDA,1
+Sidmar,sidmar2005@hotmail.com,SV TRANSPORTES,1
+Nara,rh@bextra.com.br,BEXTRA,1
+Rosangela,adm@navegantespraiahotel.com.br,NAVEGANTES PRAIA HOTEL,1
+Tania Tozzo,suportebarco@personalvideoservice.com.br,Personal Video Service,1
+Guilherme Distler,gdistler@bmdobrasil.net.br,BM DO BRASIL ENGENHARIA LTDA,1
+Daniele,monica@uptelecom.com.br,UNION SERVICES TECNOLOGIA E SERVIÇOS EPP,1
+Flávia Maia,rh@avancotelecom.com.br,AVANÇO TELECOM,1
+Ronaldo Pinto,lenon.andrade@rodagro.com,Rodagro,1
+Loren Briones Martins Silva,loren@ecoseguranca.com.br,Eco Segurança,1
+Gisele,financeiro@enfemed.com.br,Enfemed,1
+Bruna Moreira,bruna.moreira@clamed.com.br,CLAMED,1
+Ana Caroline Da Silva,ana.silva@jcvenergia.com.br,JCV Energia,1
+Leonardo Valles,valles@gmail.com,VALLES HAMBURGUERIA,1
+Elizangela Sandim Santana,rhguaicurus@hortifrutisantarita.com.br,HORTIFRUTI SANTA RITA,1
+Aline Rodrigues,aline.rodrigues@doehler.com.br,DOHLER RIO PARDO LTDA,1
+Renato Friedrich De Carvalho Rocha,contato@newhomesolutions.com.br,New Home Solutions,1
+Marcelo Augustinho Valentinari,valentinari@terra.com.br,Vidraçaria Vidral,1
+Maria De Nazareth M R Pedrosa,rh@biocap.com.br,EXECUTIVA DISTRIBUIDORA LTDA,1
+Cristina Nichele Reus,nichelecristina@gmail.com,Acquarium Gastronomia e eventos Ltda,1
+Francisnei Carmo Da Silva,francisneilico@hotmail.com,LYKO SATT SRVICOS,1
+Gabriela Lippert Vettorello,gabriela.vettorello@senairs.org.br,CFP SENAI PANAMBI,1
+Tamiris Evaldt,adm@comfortlux.com.br,COMFORT LUX SISTEMAS DE ILUMINAÇÃO LTDA,1
+Mateus Souza Santos,mateussouza@wmsolucoes.com,WTM SOLUÇÕES LTDA,1
+Comfort Lux,financeiro@comfortlux.com.br,COMFORT LUX SISTEMAS DE ILUMINAÇÃO LTDA,1
+Adelma Pereira Azevedo,adelmaazevedo@outlook.com,adelma azevedo,1
+Márcia Antunes,marcia.antunes@infotecbrasil.com.br,INFOTEC,1
+Marcos Goncalves,marcos.goncalves@infotecbrasil.com.br,INFOTEC,1
+Comfort Lux Sistemas De Iluminação Ltda,adm@comfortlux.eco.br,COMFORT LUX SISTEMAS DE ILUMINAÇÃO LTDA,1
+Helena Fatima Carrão,tcnk@tcnk.com.br,TCNK Iluminação e Sonorização Ltda,1
+Marcelo Mota Da Silva,comercial@emtctech.com.br,EMTC ENGENHARIA MANUTENÇÃO E TECNOLOGIA,1
+Giselle Zanetti,gisa_azul2009@hotmail.com,Giselle Falta Imaginação,1
+Wagner Decesaro,contato@eduaners.com.br,Eduane,1
+Ricardo Alves Dos Santos,contatotecnia@hotmail.com,Assistec,1
+Edson De Jesus Antonio Nunes,maiara.oliver0792@gmail.com,Alumater Alumínio Industrial LTDA,1
+Roberto Moreira Caldeira,rcaldeira@anp.gov.br,"Agência Nacional do Petróleo, Gás Natural e Biocombustíveis",1
+Élide Leal Silva,elide.leal@condominioft.com.br,Condominio Operacional Foodtown Osasco,1
+André Prause,andre.prause@hamiltoncompany.com,Hamilton do Brasil Comércio e Serviços Ltda.,1
+Arianne Silva Dos Santos,brazlsantos@gmail.com,ARIANNE SILVA DOS SANTOS & CIA LTDA,1
+Rodrigo Oliver,rodrigo@prolifeengenharia.com,Ranny Engenharia,1
+Reinaldo Pedro,reinaldo.pedro@kpesolution.com,KPE Solution Serviços de Engenharia Elétrica LTDA,1
+Euclydes Modolo Neto,netomodolo@uol.com.br,MODOLOG SERVIÇOS E LOCAÇÕES LTDA,1
+Marcia De Souza,contato@tonyserralheria.com.br,Tony Serralheria e Serviços Ltda,1
+Lyane Silva,lyane.silva@somosnsc.com.br,RADIO ATLANTIDA FM DE BLUMENAU LTDA - 83.093.708/0001-61,1
+Viviane Cristina Buchli,viviane.buchli@senairs.org.br,Serviço Nacional de Aprendizagem Industrial - SENAI,1
+Raiane Kelly Da Silva,secretaria@trops.com.br,TROPS CENTRO DE ESPORTE E LAZER,1
+Manuela,manuela@solucao.digital,Solução Digital,1
+Daiane Aline Da Rosa Ferreira,financeiro@fatechengenharia.com.br,Fatech engenharia,1
+Lyane Silva,lyane.silva@somosnsc.com.br,RADIO ATLANTIDA FM DE FLORIANOPOLIS LTDA - 80.430.317/0001-05,1
+Antônio Antomar De Castro Carvalho,aaccengenharia@yahoo.com,AACC ENGENHARIA EIRELI,1
+Jailson Freire Da Silva,grupojkprotecoes@gmail.com,GRUPO JK PROTECOES,1
+Associação Técnico Científica Ernesto Luiz De Oliveira Júnior,lat@dee.ufcg.edu.br,ATECEL,1
+Karla Biank,engeprime@engeprime.eng.br,JORDÃO E JORDÃO EIRELE EPP,1
+Ismael Francisco Alves,ismael@mastersulgeradores.com.br,MASTERSUL MANUTENÇÃO DE GRUPOS GERADORES EIRELI,1
+Isaac Nascimento Alves,ialves.bahia@gmail.com,LR ALVES INFORMATICA,1
+Jorge Kuzuyama Junior,jorge@techposto.com.br,TECHPOSTO TECNOLOGIA EM EQUIPAMENTOS LTDA,1
+Gisele Pereira,giselepereira@grupogelog.com.br,Gelog Locações e Transportes Ltda,1
+Sabrina Capiotti,sabrina.capiotti@pollipark.com.br,pollipark,1
+Sergio Oliveira,sergio.oliveira@bkconsultoria.com.br,BK Consultoria e Serviços,1
+Letticia Rita De Oliveira Ramos,contato@projevalle.com.br,Projevalle Construções,1
+Fabio Araujo Dos Santos,fabio.araujo@nanoteceletronica.com,Nanotec Eletrônica,1
+Michele Pivotto,dncpinturasespeciais@gmail.com,DNC INDUSTRIA E PINTURAS ESPECIAIS LTDA,1
+Erika Cipriano,ecip822@users.noreply.betaeducacao.com.br,MANN + HUMMEL Brasil Ltda,1
+Laís Reis,lrei211@users.noreply.betaeducacao.com.br,MANN + HUMMEL Brasil Ltda,1
+Dayane Cirino Costa Lourenço,Dayane.Lourenco@mann-hummel.com,MANN + HUMMEL Brasil Ltda,1
+Maynara Santos,nathalia.soares@mann-hummel.com,MANN + HUMMEL Brasil Ltda,1
+Cleuton Alves Martins,engeton@yahoo.com.br,capacitar treinamentos,1
+Dionisio Araujo,dionisio.araujo@uol.com.br,J. Dionisio de Araujo,1
+Luana Franco,desen.pessoas@eptv.com.br,Empresa Paulista de Televisão S.A,1
+Paulo Muller,pmuller@idealsms.com.br,Ideal Engenharia LTDA,0
+Karolline Miranda de Souza,karolline.souza@softplan.com.br,Lagos Centrais Empreendimentos,1
+Jessica Maia,jessica.maia@uspedra.com.br,Pedra Agroindustrial S/A - Unidade Ipê,1
+Francisco Miranda,francisco.miranda@uspedra.com.br,Pedra Agroindustrial S/A - Unidade Ipê,1
+kellen,kellen.fonseca@uspedra.com.br,Pedra Agroindustrial S/A - Unidade Ipê,1
+Gerson Ponciano,gerson.ponciano@falcaobauer.com.br,LA. FALCÃO BAUER CENTRO TECNOLÓGICO DE CONTROLE DA QUALIDADE,1
+Felipe Guimarães Sobral,felipe.sobral@falcaobauer.com.br,LA. FALCÃO BAUER CENTRO TECNOLÓGICO DE CONTROLE DA QUALIDADE,1
+Alice Juçara Rosa Da Silva,alice.rs@compagas.com.br,Companhia Paranaense de Gás - COMPAGAS,1
+M Cruz Manutenção E Montagens Elétricas Eireli-Me Engenharia,vivi@mcruz.eng.br,M CRUZ MANUTENÇÃO E MONTAGENS ELÉTRICAS EIRELI-ME ENGENHARIA,1
+Vanessa Neves Viana Anacleto,savanneanacleto@gmail.com,AMBIENTAL CONSULTORIA E PROJETOS LTDA,1
+Rafaele Oliveira Correia,rafaele.correia@padtec.com.br,PADTEC,1
+Ligia Pereira Ribeiro da Silva,ligia.silva@padtec.com.br,PADTEC,1
+Douglas Fernando Van Dall,jvandall@terra.com.br,TV Color,1
+Vanessa Bernardes Medeiros,vanessa.b.medeiros@animaeducacao.com.br,ANIMA EDUCAÇÃO,1
+Fábio Eustaquio Miranda,fabio.eustaquio@animaeducacao.com.br,ANIMA EDUCAÇÃO,1
+Neverston Paulista Soares Santana,neverston.soares@animaeducacao.com.br,ANIMA EDUCAÇÃO,1
+MARCOS ROBERTO RODRIGUES DE MORAIS,marcos.morais@una.br,ANIMA EDUCAÇÃO,1
+VANESSA BERNARDES MEDEIROS,vanessa.b.medeiros@unisociesc.com.br,ANIMA EDUCAÇÃO,1
+Cícero Araujo De Caldas,contato@henrisa.com,Henrisa Construções e Serviços Ltda.,1
+Luan Macedo Fernandes,comercial@s3comercio.com.br,S3 COMERCIO E SERVIÇOS EIRELI ME,1
+Veronica Avila,vavila@ecobrisa.com,Brisa Industria de Tecidos Tecnologicos S/A,1
+Romano Beltrame,awnmontagens@yahoo.com.br,AWN MONTAGENS,1
+Marcela Menezes Magalhães,comercial1@brasolengenharia.com.br,Brasol Energia Solar,1
+Ana Lúcia Rozeng Serafim,ana.lucia@tabelionatoicara.com.br,ADRIANA MARA DE OLIVEIRA,1
+Renata Hart,iwtservices@terra.com.br,IWT Services Ltda,1
+Gabriel Nunes Nascimento,gnascimento@rst.eng.br,RST ENGENHARIA E SOLUÇÕES LTDA,1
+Marcelo Cristino,marcelonei.lc@hotmail.com,Nei Música LTDA.,1
+Marcos Venicio Santos Sousa,vynylook@hotmail.com,MM TELECOMUNICAÇÕES LTDA,1
+Marcio Ormastroni,marcioormastroni@jembras.com.br,jembras@jembras.com.br,0
+Vicente Da Rocha Carneiro,vicente.deltatec@gmail.com,VICENTE DA ROCHA CARNEIRO EIRELI ME,1
+Lidiane Rodrigues,lidiane.rodrigues@swireos.com,Swire Oilfield Services do Brasil Ltda,1
+Nickson Wisley De Almeida Caldas,nickson@resolvoecia.com.br,RESOLVO E CIA,0
+Luciana Roberta França Bergamini,rh.luciana@faj.br,Instituto Educacional Jaguary Ltda,1
+Alair Mendes De Resende Junior,alair.resende@dcexpert.com.br,DC Expert Engenharia e Tecnologia Ltda,1
+Állan Souto De Araujo,marketing@agral.com.br,Agral Indústria e Comércio de Equipamentos Eletrônicos Ltda,1
+Reginaldo Madureira Silva,rcon@rconempreiteira.com.br,RCON EMPREITEIRA DE CONSTRUCAO CIVIL,1
+Erica Freitas,ericafreitas@montacon.com.br,MONTACON ENGENHARIA,1
+Ismael Vergiano Costa,postovitoria.r@gmail.com,Vitoria Regia Comercio de Combustiveis LTDA,1
+Thaís Cerchiaro,thais@jcf.com.br,JCF Segurança Eletrônica Ltda EPP,1
+Fernando S Almeida,atendimento@eletricasantos.com.br,Essência Serviços de Construção Especializados LTDA,1
+Mvm Engenharia,mateus@mvmengenharia.com,MVM Engenharia e Consultoria,1
+Eduardo Chiarello,echiarello@bbosch.com.br,BBOSCH GALVANIZAÇÃO DO BRASIL LTDA,1
+Naisson Cavalet,naisson.cavalet@fiesc.com.br,SESI - Serviço Social da Industria,1
+Eric Gonçalves Mackert,pchfazendavelha@gmail.com,ENERGÉTICA FAZENDA VELHA S.A.,1
+Ronaldo Soares,comercial@soaresaviamentos.com.br,Soares Aviamentos,0
+Isabella Marchesini Fanchin,isabella.marchesini@allnex.com,allnex,1
+Jessica Ferreira De Avila Alves,nfprestador@itsgroup.com.br,Its Tecnologia e Informação LTDA,1
+Carlos Otávio De Oliveira Cortez Junior,falecom@campestrerio.com.br,BOM DE JOGO MÓVEIS E JOGOS DE GUAPIMIRIM LTDA ME,1
+Rafael Ferreira,amplla@ampllaempreiteira.com.br,Rafael Josefino Duarte Ferreira ME,0
+Juliana Quintanilha Mello De Lima,juliana.lima@3cservices.com.br,3C SERVICES S.A,1
+Edson Mendes De Oliveira Filho,cityposto@hotmail.com,City Posto,1
+Marco Aurelio Faria,mafsegurancadotrabalho@gmail.com,Marco Aurélio Faria 82019266172,1
+Rafaela Costa,rafaela.santos@unigel.com.br,Acrinor,1
+Vanessa Rezende,vanessa.rezende@unigel.com.br,Acrinor,1
+Jurandir Aparecido Vaz,metalvaz@hotmail.com,Polisilar,1
+Eliseu Lopes De Carvalho,comercial@alphaenergy.net.br,Alpha Energy Manutenção de Maquinas e Equipamentos LTDA,1
+Valdeir Soares Da Silva,valdeir@kairosts.com.br,Kairós Techno Service,1
+Felipe De Francischi Dos Santos,felipe@proffac.com.br,Proffac Projetos Industriais ME,1
+Margarete Graciano,margarete.graciano@volvo.com,VOLVO DO BRASIL VEICULOS LTDA,1
+Euri Emere Ribeiro Vieira,mettambiental@gmail.com,Metta Ambiental Ltda. - ME,1
+Senai Joao Simplicio,riogrande@senairs.org.br,SERVIÇO NACIONAL DE APRENDIZAGEM INDUSTRIAL,1
+Ismael Vergiano Costa,postocambirelamc@gmail.com,Posto Cambirela Mundo Car,1
+Ronan Ferreira,ronan.ferreira@hybrazil.com,GMW Engenharia Ltda,1
+Eduardo da Silva Lemos,eduardo.lemos@gmwengenharia.com.br,GMW Engenharia Ltda,1
+Christian Koji,koji@japaautomacao.com.br,Japa Automação Industrial,1
+Uesley Ambrosio Leite,uesley.leite@tivit.com,TIVIT,1
+João Elemar De Oliveira,jomadeoliver@gmail.com,OLIVEIRA & GUEDES LTDA,1
+Marcio Freitas De Oliveira,apacheco@rst.eng.br,RST ENGENHARIA E SOLUÇÕES LTDA,1
+Celita Paiva Pereira,meioambiente@grafitedobrasil.com.br,Extrativa Metalquimica,1
+Jobson Bispo Mascarenhas,jobson.mascarenhas@fiesc.com.br,Serviço nacional de aprendizagem industrial de santa catarina,1
+Simone Eschberger Ferreira De Aguiar,simone@lambertbrasil.com,"Lambert Indústria, Comércio e Serviços Ltda",1
+Mauro Vitor Da Silva Rebello,sigga4tsc@gmail.com,MAURO VITOR S REBELLO TREINAMENTOS E ESTETICA,1
+Ademerson Xavier De Oliveira,oliveira.sst@hotmail.com,Oliveira - Segurança do Trabalho,1
+Rita De Cassia Cardoso,ritacardoso@mixedcomunicacao.com.br,Mixed Comunicação e Marketing Ltda,1
+Gustavo Assis,contato@brasilgtw.com.br,GTW Geração e Serviços LTDA.,1
+Diogo Barbosa Moreira Neiva,diogo.neiva@brasilgtw.com.br,GTW Geração e Serviços LTDA.,1
+Jheniffer Marques,jheniffer.marques@ecogenbrasil.com.br,GTW Geração e Serviços LTDA.,1
+Anderson Silva,anderson.silva@engie.com,Engie Brasil Soluções Integradas,1
+José Carlos Ferreira De Arruda,jcfconstrufox@gmail.com,Jcf de arruda construções ME,1
+Angelo Manoel Vidolin,tst@hakme.com.br,NKF CONFECCOES LTDA,1
+Vanessa Santaniello,vanessa.santaniello@qualitechirm.com,Qualitech,1
+Vinicius Brandi,vinicius.brandi@msc.com,MSC Mediterranean Shipping Company 08.680.888/0005-96,1
+Vinicius Brandi,vinicius.brandi@msc.com,MSC Mediterranean Shipping 08.680.888/0001-62,1
+Jobson Bispo Mascarenhas,adriana.burnier@fiesc.com.br,Instituto Euvaldo Lodi SC - Blumenau,1
+Fernanda Gomes Diniz,freacom@freacom.com.br,FREACOM ELETROMECÂNICA LTDA,1
+Mauricio Silva,m.silva@royalihc.com,IHC DO BRASIL,1
+Filipe Brandt,f.brandt@royalihc.com,IHC DO BRASIL,1
+Amanda Cordeiro Damasceno,a.damasceno@royalihc.com,IHC DO BRASIL,1
+Marlos Salles Bianna,mbi.bianna@royalihc.com,IHC DO BRASIL,1
+Thais Skuratovski Araujo,t.araujo@royalihc.com,IHC DO BRASIL,1
+Patrícia Ciarlo Bayona Perez Beretella,patriciab@usinacolombo.com.br,USINA COLOMBO S/A - AÇÚCAR E ÁLCOOL,1
+Laura Lazarini Aranha,laura@usinacolombo.com.br,USINA COLOMBO S/A - AÇÚCAR E ÁLCOOL,1
+Carlos Henrique Ferreira Martins,carlos@bwse.eng.br,Martins Soluções em Engenharia Eirelli,1
+Renata Toffoli,renata_toffoli@hotmail.com,TRANSPORTES MAROTO LTDA,1
+Celita Paiva Pereira,extbh@grafitedobrasil.com.br,Extrativa Metalquimica,1
+Cristian Ruediger,rh@baumgarten.com.br,Baumgarten Grafica,1
+Leandro Da Silva De Lima,lima.limainstalacoes@gmail.com,Leandro da Silva de Lima eletrica me,1
+Daniel Ribeiro De Oliveira Filho,daniel.filho@redeconecta.net.br,Rede Conecta Serviços de Rede S/A,1
+Wesley Viena Rodrigues,wesley.rodrigues@priner.com.br,PRINER SERVIÇOS INDUSTRIAIS S.A.,1
+Diego Rodrigo Andre,damatacabamentos@hotmail.com,Vicelle Store Com de Conf Eireli,1
+Teste Pj,gisa_azul2009@gmail.com,teste pj,1
+Amanda Cotta Sartore,amanda.sartore@sunchemical.com,SUN CHEMICAL DO BRASIL LTDA,1
+Mayara Ribeiro,comercial@karlog.com.br,Karlog Serviços e Logística LTDA,1
+Marco Burtet,marco.souza@sulzer.com,Sulzer Services Brasil,1
+Leandro W. Pires,leandro.pires@consultorialw.com.br,LW PIRES TREINAMENTOS,1
+Desativado Desativado,desativadoandamento@sgmp.adv.br,"SCHNEEBELI, GIMENES, MORAES E PEPE Advogados",1
+Andrew Riedi Barazetti,andrew@otiseg.com.br,BARAZETTI E GRIS LTDA,1
+Comercial De Combustíveis Caverá Ltda,trrcavera@hotmail.com,Comercial de Combustíveis Caverá Ltda,1
+Lucas Soares Da Silva,lucas.soares@ab5.com.br,AB5 INDUSTRIA E COMÉRCIO LTDA,1
+Jaqueline Elias Jaques De Souza,jaqueline.souza@fiesc.com.br,SESI 2018 - Ambulatório Medico ENGIE,1
+Jobi Aparecido Pereira,administracao@technolav.com.br,M.S.G.TECHNOLAV CONF E LAVANDERIA EIRELI EPP,1
+Atainara De Fatima Giuriato,atainara.giuriato@sgmp.adv.br,"SCHNEEBELI, GIMENES, MORAES e PEPE Advogados",1
+João Paulo Alves De Melo,nefroendocrino@hotmail.com,CLINICA NEFRO-ENDOCRINO LTDA,1
+Efraim Mota,postorota30@gmail.com,Rota 30 Comércio de Combustíveis Ltda –ME,1
+Beatriz Castilho,beatriz.castilho@petrustech.com.br,Petrustech Oil e Gas,0
+Fernando Diego Da Silva,fernando@itafrigo.com.br,Itafrigo Instalações Industriais Ltda ME,1
+Fernanda Faneli,fernanda.faneli@petrustech.com.br,Petrustech Oil e Gas,0
+Giselle Maria,paradisoaquafresh@gmail.com,PARADISO AQUA FRESH INDUSTRIA COMERCIO E MINERADORA LTDA,1
+Filipi Bernardo Silva,tst001@pedrita.com.br,CONPNESA,1
+Diogo Henrique Barbosa De Souza,eletrizaescritorio@gmail.com,Eletriza Eletricidade & Engenharia,1
+Flávia P. Corrêa,fluxo@cyber.com.br,Fluxo Ind. De Transformadores Elétricos Ltda,1
+Jacqueline Ullirsch,compras@eletroizidoro.com.br,Eletro Motores Curitibanos Ltda,1
+Danielle,danielle.ferreira@thyssenkrupp.com,thyssenkrupp Brasil Ltda,1
+Dayane Alves,dayane.francisco@thyssenkrupp.com,thyssenkrupp Brasil Ltda,1
+Quintella Engenharia,quintella@quintella.eng.br,QUINTELLA ENGENHARIA,1
+Victor Japiassú Corrêa,victor_japiassu@hotmail.com,Ecosol Condomínio Solar,1
+Eligiani Alves Ribeiro,auxiliarescritorio@curraldeminas.com.br,Organizações Junqueira Agropecuaria Ltda,1
+Thayrine Maite S. Signorelli,thayrine@unc.br,Fundação Universidade do Contestado – FUnC Campus Mafra,1
+Alessandra Wagner Jusviacky,alessandraw@unc.br,Fundação Universidade do Contestado – FUnC Campus Mafra,1
+Wagner Tolentino De Novaes,wag_novais@hotmail.com,WT SPEED TECNOLOGIA EM INFORMATICA LTDA ME,1
+Laura Schena,laura.schena@qualirede.com.br,Qualirede,1
+Mateus Lima,servicos@connectsat.com.br,E J P Telecomunicações Ltda ME,1
+Talita Figueiredo De Oliveira,tahdeoliveira@hotmail.com,"ZTE DO BRASIL, COMERCIO, SERVICOS, IMPORTACAO E EXPORTACAO LTDA.",1
+Moacyr Lacerda,moacyrflacerda@gmail.com,Sollaris Lacerda,1
+Thayane Boos,thayane@alexandria.solar,Alexandria,1
+Murilo Kadanus Dos Santos,murilo@alexandria.solar,Alexandria,1
+Flavio Novaes,novaesflavio2017@gmail.com,Alcon Web Service Ltda,1
+Vinicius Brandi,vinicius.brandi@msc.com,MSC Mediterranean Shipping Company 02.378.779/0001-09,1
+Caroline Vier Saviski,caroline@elevadorescastelo.com.br,Elevadores Castelo Ltda,1
+FRANCISCO ASSIS DE LIMA,chicolima41@hotmail.com,AB ENERGY DO BRASIL LTDA,1
+PAULA ALVES SANTANA,paula.santana@gruppoab.com,AB ENERGY DO BRASIL LTDA,1
+Alonsou Louzada Araujo Santos,batista.melina@gmail.com,CATIME TRANSPORADORA E ENTREGADORA LTDA,1
+Anália Salgado De Souza Faria,analia_marenostrum@outlook.com,MARENOSTRUM CONSULTORIA E ASSISTENCIA MARITIMA LTDA,1
+Ana Paula Couto De Azevedo,comercial@aquinomoreira.com.br,construtora Aquino Moreira,1
+Marcelo De Almeida Souza Santos,marcelo.santos@plasutil.com.br,Plasútil Indústria e Comércio de Plásticos Ltda,1
+Eduardo Mattos Vidal Gouveia,seguranca2@etig.com.br,ETIG MULTIFUNCIONAL EIRELI,1
+Cleiton Da Silva,cleiton@qwe.com.br,System Log,0
+Patricia Duarte,pduarte@transportarengenharia.com.br,Transportar Telecomunicações e Eletricidade SS Ltda,1
+Camile Zanatta,camile.zanatta@paraibuna.com.br,Indústria de Papéis Sudeste Ltda,1
+Marcia Lacerda,marcia@marpie.com.br,Piemar Engenharia Ltda ME,1
+Felipe Tomaz Silva,felipe@solucao.digital,Solução Digital,1
+Michele Weigel,michele.weigel@grupopratofeito.com.br,GOLLDEN FOOD INDUSTRIA E COMERCIO DE ALIMENTOS LTDA,1
+FELIX RICARDO PAULA PADILLA,padix@padix.com.br,HELLEN A. M. PADILLA EQUIPAMENTOS INDUSTRIAIS ME,1
+FRANCISCO SANTOS REIS,contato.lagosyhwh@gmail.com,LAGOS ENGENHARIA LTDA.,1
+Fabiane,fabiane.marin@ou.com.br,Martiplast,1
+FATECH ENG ELÉTRICA,financeiro2@fatechengenharia.com.br,F. S. FERREIRA ENGENHARIA,1
+FATECH ENG ELÉTRICA,financeiro2@fatechengenharia.com.br,F S FERREIRA ENGENHARIA,1
+Rondinelio vital da costa,joaomarcosteixeiraafo@gmail.com,Posto de gasolina,1
+Rafaela Benelli,rafaela-benelli@fiesc.com.br,SENAI/SC - SAO MIGUEL DO OESTE,1
+Paula Moreira,02744484598@users.noreply.betaeducacao.com.br,KORDSA,1
+Leonardo Fonseca Albuquerque,04338749539@users.noreply.betaeducacao.com.br,KORDSA,1
+THIAGO OTON S DE OLIVEIRA,05026147577@users.noreply.betaeducacao.com.br,KORDSA,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,KORDSA,1
+CAIQUE CARVALHO SILVA,03186585503@users.noreply.betaeducacao.com.br,KORDSA,1
+Jessica de andrade,07124124417@users.noreply.betaeducacao.com.br,KORDSA,1
+Anderson Julião,03083336594@users.noreply.betaeducacao.com.br,KORDSA,1
+Ana Carolina Nepomuceno de Santana,07491762530@users.noreply.betaeducacao.com.br,KORDSA,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,KORDSA,1
+CEZAR AUGUSTO ALBUQUERQUE SANTOS,34507019591@users.noreply.betaeducacao.com.br,KORDSA,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,KORDSA,1
+REGINA VITORIA SILVA MARQUES,regina.marques@gasmig.com.br,GASMIG,1
+Livia Melo,livia.melo@gasmig.com.br,GASMIG,1
+Marcos Roberto Righi,marcosrighi@avato.com.br,VINO INSTALADORA EIRELI,1
+ROSANE GONZAGA,contato@blondine.com.br,CRAZY4BEER DISTRIBUIDORA DE BEBIDAS LTDA,1
+ELSO FERRARI FILHO,exitoinstalacao@gmail.com,EXITO CLIMATIZAÇÃO E AQUECIMENTO,1
+LUCIANO JOSÉ VAREJÃO FASSARELLA,luciano@3lengenharia.com.br,"L-L-L ENGENHARIA, CONSULTORIA, COMÉRCIO E REPRESENTAÇÃO LTDA",1
+Mauricio Paiva,mauricio.paiva@constarco.com.br,CONSTARCO ENGENHARIA E COMERCIO LTDA,1
+MATHEUS SILVA,matheus.silva@constarco.com.br,CONSTARCO ENGENHARIA E COMERCIO LTDA,1
+Stéphanie Carvalho,contato@techmap.com.br,TECHMAP,1
+Thiago Alvez,thiagoalvez@xbtasa.com,Empresa XBTA,0
+Rosangela Pereira,adm@gmbhospitalares.com.br,GMB,1
+Ediane Bergamasco,adm@transtadiotto.com.br,RICARDO LUIZ TADIOTTO & CIA LTDA - PLANI. CURSOS,1
+ANDRE LUIZ DE FARIA,pacrefrigeracao@gmail.com,PAC SERVICE,1
+Stephany Antoniolo Almeida,rh02@ajardini.com.br,AJARDINI PAISAGISMO LTDA,1
+NIOCLAUDIO BERKENBROCK,nioclaudio@hotmail.com,SIB ENGENHARIA E CONSTRUÇÕES LTDA,1
+Vinicius Brandi,vinicius.brandi@msc.com,MSC Mediterranean Shipping 08.680.888/0007-58,1
+Vinicius Brandi,vinicius.brandi@msc.com,MSC Mediterranean Shipping 08680888001053,1
+Vinicius Brandi,vinicius.brandi@msc.com,MSC Mediterranean Shipping 08.680.888/0019-91,1
+Vinicius Brandi,vinicius.brandi@msc.com,MSC Mediterranean Shipping 02.378.779/0006-13,1
+Silvia Duarte,silvia.duarte@jurere.com.br,Jurerê Internacional Administração Hoteleira 03.578.193/0001-50,1
+Thais Michelle Foppa,thais.foppa@jurere.com.br,Jurerê Internacional Administração Hoteleira 03.578.193/0001-50,1
+Michele dos Santos Garcia,michele.garcia@jurere.com.br,Jurerê Internacional Administração Hoteleira 03.578.193/0001-50,1
+Silvia Duarte,silvia.duarte@jurere.com.br,Jurerê Internacional Administração Hoteleira 87.919.437/0002-92,1
+Thais Michelle Foppa,thais.foppa@jurere.com.br,Jurerê Internacional Administração Hoteleira 87.919.437/0002-92,1
+Michele dos Santos Garcia,michele.garcia@jurere.com.br,Jurerê Internacional Administração Hoteleira 87.919.437/0002-92,1
+Silvia Duarte,silvia.duarte@jurere.com.br,Jurerê Internacional Administração Hoteleira 10.529.232/0001-95,1
+Thais Michelle Foppa,thais.foppa@jurere.com.br,Jurerê Internacional Administração Hoteleira 10.529.232/0001-95,1
+Silvia Duarte,silvia.duarte@jurere.com.br,Jurerê Internacional Administração Hoteleira 10.892.102/0003-84,1
+Thais Michelle Foppa,thais.foppa@jurere.com.br,Jurerê Internacional Administração Hoteleira 10.892.102/0003-84,1
+Michele dos Santos Garcia,michele.garcia@jurere.com.br,Jurerê Internacional Administração Hoteleira 10.892.102/0003-84,1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,"Editora Gazeta do Povo S.A. 04.955,882/0001-08",1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,"Editora Gazeta do Povo S.A. 04.955,882/0001-08",1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Editora Gazeta do Povo S.A. 76.498.864/0001-47,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Editora Gazeta do Povo S.A. 76.498.864/0001-47,1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Editora Gazeta do Povo S.A. 81.034.977/0001-21,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Editora Gazeta do Povo S.A. 81.034.977/0001-21,1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Editora Gazeta do Povo S.A. 78.712.056/0001-66,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Editora Gazeta do Povo S.A. 78.712.056/0001-66,1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,"Editora Gazeta do Povo S.A. 76.494,806/0001-45",1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,"Editora Gazeta do Povo S.A. 76.494,806/0001-45",1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Editora Gazeta do Povo S.A. 76.494.806/0002-26,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Editora Gazeta do Povo S.A. 76.494.806/0002-26,1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Editora Gazeta do Povo S.A. 79.135.760/0001-66,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Editora Gazeta do Povo S.A. 79.135.760/0001-66,1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Editora Gazeta do Povo S.A. 80.830.334/0001-21,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Editora Gazeta do Povo S.A. 80.830.334/0001-21,1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Editora Gazeta do Povo S.A. 03.699.194/0001-53,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Editora Gazeta do Povo S.A. 03.699.194/0001-53,1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Editora Gazeta do Povo S.A. 03.699.194/0002-34,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Editora Gazeta do Povo S.A. 03.699.194/0002-34,1
+Berenice Torres de Menezes Contri,sta.telecom@terra.com.br,STA Telecomunicacoes e Eletricidade Ltda,1
+rs eventos e stands -eireli-me,rseventos@terra.com.br,rs eventos,1
+Anna Busatto,virtualinternetvbi@gmail.com,Busatto Internet e Suprimentos de Informática LTDA ME,1
+Carine Carvalho de Araujo Pierozan,contato@moveispierozan.com.br,Vinicius Besbati Pierozan - ME,1
+Sérgio Siqueira,sergio+group@somosbeta.com.br,Test,1
+Sérgio Siqueira,sergio+g2@somosbeta.com.br,Test 2,1
+Aline Fernandes dos Santos Rocha,aline.fernandes@campello.com.br,ELLO SOLUÇÕES EM TECNOLOGIA LTDA,1
+Vinicius Brandi,vinicius.brandi@msc.com,MSC 08.680.888/0001-12,1
+Antonio Dultra dos Santos,antonio.dultra@msc.com,MSC 08.680.888/0001-12,1
+Regis Cardoso,regis.cardoso@senairs.org.br,Serviço Nacional de Aprendizagem Industrial,1
+Dejaime Pinto Teixeira,dejaime.teixeira@external.atlascopco.com,Atlas Copco Brasil Ltda,1
+GUILHERME JUNIOR MONTEIRO,guilhermemonteiro01@outlook.com,GUILHERME JUNIOR MONTEIRO,1
+maurilio,edu_maurylio@hotmail.com,tristeMED,1
+maurilio,edu_maurylio@hotmail.com,joaozinho engenharia ltda,1
+maurilio,edu_maurylio@hotmail.com.br,XXXX LTDA,1
+Welysson Barbosa da Silva,welysilva@hotmail.com,JOSÉ NILTON GOMES DA SILVA -EPP,1
+MARCIA KATIANE PEREIRA POUSSAM,marciapoussan@gmail.com,Registro de Imóveis de Campo Grande,1
+Angela Maria de Morais Andreatta,angela@sosmerces.com.br,Andreatta e Filho Ltda,1
+Andre de Oliveira Carvalho,andrearteparque@gmail.com,AC MANUTENÇÃO E SERVIÇOS GERAIS,1
+Francis Flores Fiorini,francis.fiorini@senairs.org.br,SENAI SÃO LEOPOLDO,1
+Tiago Emanoel Souza Oliveira,tiago@4kservice.com.br,4k service,1
+Joelson do Nascimento,supervisorboituva@gmail.com,Joelson do Nascimento Remanufaturado ME,1
+André costa dos santos,metalurgicaverticalfms@hotmail.com,Metalurgica vertical Eirele-me,1
+Renata Abreu da Silva,financeiro@inovvar.net.br,INOVVAR,1
+Herlon Matheus Ventura,herlon@vheindustrial.com.br,H. M. Ventura - EPP,1
+BRUNO LEANDRO,LCL._@HOTMAIL.COM,LCL DA SILVA REVESTIMENTOS ME,1
+Allan Victor,dp@metalpartes.com.br,AAE METALPARTES PRODUTOS E SERVIÇOS LTDA,1
+Themis Patrício,treinamento@cdp.com.br,CDP,1
+ELISANGELA DE FATIMA PRESTES DA CRUS,elisangela.crus@powereletric.com.br,G.L DA CRUS E CIA LTDA ME,1
+Stanley Roberto Pafaro,stanley.pafaro@sabbry.com,Sabbry Industrial Solutions,1
+Kevillyn da Luz Pereira,kevillyn.pereira@powereletric.com.br,POWER ELETRIC,1
+José Carvalho Nascimento,jrp.reformasemgeral@gmail.com,JRP servicos em gerais,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,GRUPO CARBONI-PALHOÇA 02.952.689/0010-70,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,GRUPO CARBONI-CHAPECÓ 02.952.689/0003-41,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,GRUPO CARBONI-JOINVILLE 02.952.689/0007-75,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,GRUPO CARBONI-ITAJAI 02.952.689/0011-51,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,GRUPO CARBONI-RIO DO SUL 02.952.689/0009-37,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,GRUPO CARBONI-CONCÓRDIA 02.952.689/0006-94,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,GRUPO CARBONI-PASSO FUNDO 02.952.689/0013-13,1
+Sérgio Rafael Siqueira,sergio+5@somosbeta.com.br,Via API Lambda,1
+Sérgio Rafael Siqueira,sergio+6@somosbeta.com.br,Via API Lambda,1
+Sérgio Test,sergio+8@somosbeta.com.br,Via API Lambda,1
+Roselene Guilardi,roselene@funcionalautomacao.com.br,Funcional Automação e Manutenção Ltda,1
+JOSE FRANCISCO - TST,josefranciscolana@yahoo.com.br,SO DIESEL E CONSTRUCAO LTDA ME,1
+Priscilla Silveira,operations@roderemovedora.com.br,RODE REMOVEDORA DE RESÍDUOS LTDA,1
+DIEME SANTOS,rh@bouwman.com.br,BOUWMAN TECNOLOGIA AGROPECUARIA LTDA,1
+Volnei Carlos Pozzebon,vanderlei@grandelagoservicos.com.br,LIS Serviços e Obras LTDA,1
+Andréia De Azevedo Lopes,andreia.lopes@aeromot.com.br,Brant Comércio e Serviços Eireli,1
+Fernanda Rodrigues,shoppingacropole@gmail.com,Shopping Acrópole Empreendimento Imobiliário SPE LTDA,1
+Claudia Seindorff,csteindorff@hotmail.com,RSBC REDE SULBRASILEIRA DE COMUNICAÇÃO VISUAL S.A,1
+Magno Vinícius Machado de Souza,eletromag.vr@hotmail.com,Eletromag serviços em eletricidade- 25.263.660/0001-96,1
+Golden Maq,assistencia1@goldenmaq.com.br,GOLDEN MAQ,1
+Tiago,kizza.engenharia@gmail.com,Kizza engenharia,1
+Leonardo Fonseca Albuquerque,04338749539@users.noreply.betaeducacao.com.br,KORDSA - Secagem/Fiação,1
+THIAGO OTON S DE OLIVEIRA,05026147577@users.noreply.betaeducacao.com.br,KORDSA - Secagem/Fiação,1
+CRISTINIANO XAVIER DOS SANTOS,98985850563@users.noreply.betaeducacao.com.br,KORDSA - Secagem/Fiação,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,KORDSA - Secagem/Fiação,1
+Jessica de andrade,07124124417@users.noreply.betaeducacao.com.br,KORDSA - Secagem/Fiação,1
+Anderson Julião,03083336594@users.noreply.betaeducacao.com.br,KORDSA - Secagem/Fiação,1
+Ana Carolina Nepomuceno de Santana,07491762530@users.noreply.betaeducacao.com.br,KORDSA - Secagem/Fiação,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,KORDSA - Secagem/Fiação,1
+CEZAR AUGUSTO ALBUQUERQUE SANTOS,34507019591@users.noreply.betaeducacao.com.br,KORDSA - Secagem/Fiação,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,KORDSA - Secagem/Fiação,1
+Leonardo Fonseca Albuquerque,04338749539@users.noreply.betaeducacao.com.br,KORDSA - Dipping/SEC,1
+THIAGO OTON S DE OLIVEIRA,05026147577@users.noreply.betaeducacao.com.br,KORDSA - Dipping/SEC,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,KORDSA - Dipping/SEC,1
+Jessica de andrade,07124124417@users.noreply.betaeducacao.com.br,KORDSA - Dipping/SEC,1
+Anderson Julião,03083336594@users.noreply.betaeducacao.com.br,KORDSA - Dipping/SEC,1
+Ana Carolina Nepomuceno de Santana,07491762530@users.noreply.betaeducacao.com.br,KORDSA - Dipping/SEC,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,KORDSA - Dipping/SEC,1
+CEZAR AUGUSTO ALBUQUERQUE SANTOS,34507019591@users.noreply.betaeducacao.com.br,KORDSA - Dipping/SEC,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,KORDSA - Dipping/SEC,1
+Leonardo Fonseca Albuquerque,04338749539@users.noreply.betaeducacao.com.br,KORDSA - Manutenção,1
+THIAGO OTON S DE OLIVEIRA,05026147577@users.noreply.betaeducacao.com.br,KORDSA - Manutenção,1
+CARLA CRISTINA PENNA FERNANDES,81206917687@users.noreply.betaeducacao.com.br,KORDSA - Manutenção,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,KORDSA - Manutenção,1
+Jessica de andrade,07124124417@users.noreply.betaeducacao.com.br,KORDSA - Manutenção,1
+Anderson Julião,03083336594@users.noreply.betaeducacao.com.br,KORDSA - Manutenção,1
+Ana Carolina Nepomuceno de Santana,07491762530@users.noreply.betaeducacao.com.br,KORDSA - Manutenção,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,KORDSA - Manutenção,1
+CEZAR AUGUSTO ALBUQUERQUE SANTOS,34507019591@users.noreply.betaeducacao.com.br,KORDSA - Manutenção,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,KORDSA - Manutenção,1
+Sonia,laudos@limnobras.com.br,LimnoBras Laboartórios de analises Limnológicas Ltda,1
+antonio carlos de queiroz,antonio@sulsegba.com.br,sulseg vigilância e segurança patrimonial,1
+HYLLEN AUGUSTO CARVALHIDO,hcarvalhido@gmail.com,ECO MG ENGENHARIA LTDA,1
+CELSO VIEIRA DOS SANTOS,celso.vieira@solteco.com.br,SOLTECO TECNOLOGIA E CORTE LTDA.,1
+Raquel Costa,raquel@top.eng.br,TOP Empreendimentos Ltda.,1
+ALESSANDRO PARAÍSO,apiariosnicolas@gmail.com,ISO APICULTURA BRASILEIRA LTDA-ME,1
+JÚNIO CEZAR AMARAL,junioamaral2009@hotmail.com,CASA DE CARNES E MERCEARIA AMARAL,1
+SEGURPRO,erick.costa@prosegur.com,SEGURPRO SISTEMAS DE SEGURANÇA LTDA. 74.224.163/0029-95,1
+SEGURPRO,erick.costa@prosegur.com,SEGURPRO VIGILÂNCIA PATRIMONIAL S.A. 25.278.459/0002-63,1
+Nayara Caroline de Rezende,rh02@hidrogeron.com,Hidrogeron,1
+Gislaine Lourenço Dias da Costa,gislaine@agfengenharia.com.br,AGF ENGENHARIA,1
+Sérgio Rafael Siqueira,sergio+14@somosbeta.com.br,Via API Lambda 2am,1
+Silvana Paulista,silvana.paulista@copel.com,COPEL,1
+PABLO FACHINI NASCIMENTO,pablo@mambiental.com,M. Ambiental,1
+José Carlos,jcarlos@innovaction.net.br,Innovaction,1
+Mateus Maia Bastos dos Santos,mateus.maia@grupodr1.com.br,DR1 Serviços Especializados de Inspeção Aérea ltda,1
+Sérgio Rafael Siqueira,sergio+17@somosbeta.com.br,Sergio's teste,1
+Sérgio Siqueira,sergio+18@somosbeta.com.br,Sérgio's Test,1
+Henrique Lemos De Faria,henrique@laceeng.com.br,LACE ENGENHARIA,1
+Liliane,liliane@smartups.com.br,SMART UPS SOLUTIONS SERVIÇO E COMERCIO LTDA EPP,1
+SMART UPS SOLUTIONS SERVIÇOS E COMERCIO LTDA EPP,adm@smartups.com.br,SMART UPS SOLUTIONS SERVIÇO E COMERCIO LTDA EPP,1
+JORGE,techposto@techposto.com.br,TECHPOSTO,1
+Aline Gerhardt,aline.gerhardt@pfiffner.com.br,Pfiffner do Brasil Industria e Comércio de Transformadores Ltda,1
+ROSANGELA MACIEL MATOS,rosymmatos@gmail.com,ROSANGELA MACIEL MATOS,1
+Camila Silva Rocha,crsilva@alliedbrasil.com.br,TRAMEAP,1
+BRUNO MAQUEDA DA SILVA,bruno.maqueda@trameap.com.br,TRAMEAP,1
+ADRIANA ROSA DOS SANTOS,arsantos@alliedbrasil.com.br,TRAMEAP,1
+AMANDA CARVALHO DO CARMO OLIVEIRA,accarmo@alliedbrasil.com.br,TRAMEAP,1
+Jéssica Dias de Souza,jessica.souza@tapss.com.br,TRAMEAP,1
+Victor Matheus Ortiz de Lima Araujo,victor.araujo@tapss.com.br,TRAMEAP,1
+Deivys Kunrath,construtoragdk@hotmail.com,DEIVYS KUNRATH ME,1
+TAAGEERO COMERCIAL,rh@taageero.com.br,TAAGEERO COMERCIAL LTDA ME,0
+SUZETE CARNEIRO DE QUEIROZ,suzete.queiroz@bradesco.com.br,BRADESCO,1
+Nathalia Moreli Brito,nathalia@marmorariaseleto.com.br,Marmoraria Seleto,1
+Waldenyce Francyne Leitão Santos,waldenyce.santos@ezentis.com.br,Ezentis,0
+ANTONIO RODRIGUES,financeiro@net4you.com.br,NET4YOU INTERNET SOLUTION,1
+Elaine Vieira,faturamento@novadupla.com.br,NOVA DUPLA SOLUCAO GRAFICA DIGITAL COMUNICACAO E COMERCIO EIRELI,1
+PROJETO X BRINQUEDOS LTDA,rh@projetoxbrinquedos.com.br,PROJETO X BRINQUEDOS LTDA,0
+WILLIAN DA SILVA FILHO,willian.d.silva@manserv.com.br,Manserv Janileide,1
+Rafael Leopoldo Batista,rafael.leopoldo@manserv.com.br,Manserv Janileide,1
+Leonardo Silveira Martins,leonardo.martins@senairs.org.br,SERVIÇO NACIONAL DE APRENDIZAGEM INDUSTRIAL,1
+Ivan Barbosa Da Silva,ivanb@gazetadopovo.com.br,Televisão Cultura de Maringá Ltda.,1
+Ana Carolina Silva,anasilva@grpcom.com.br,Televisão Cultura de Maringá Ltda.,1
+Amanda Cristina Camargo,amandacamargo@grpcom.com.br,Televisão Cultura de Maringá Ltda.,1
+Alexsandro De Souza Da Silva,alex@actecrs.com.br,AC TEC ELÉTRICA LTDA,1
+Franciele Padilha da Silva,adm@actecrs.com.br,AC TEC ELÉTRICA LTDA,1
+Washington Carlos Correia,seguranca.trabalho@ecopistas.com.br,CONCESSIONARIA ECOVIAS DOS IMIGRANTES S.A.,1
+Gildo de Souza Martins,gildomartinsseg@gmail.com,GSM TREINAMENTOS,1
+ISPL INDUSTRIA SULAMERICANA DE PRODUTOS DE LIMPEZA LTDA,rh@crivialli.com.br,CRIVIALLI,1
+Jéssica dos Santos Alves de Sousa,sesmt2@grupomagnus.com.br,Grupo Magnus,1
+Poliana Moreira de Araújo,sesmt3@grupomagnus.com.br,Grupo Magnus,1
+Andreza Vieira,andreza.vieira@gestaogps.com.br,Grupo Magnus,1
+Fabiana Capiche Alves,fabiana.capiche@ihcare.com.br,international health care offshore,1
+Gabriel Vieira Lopez,gabriel.lopez@ihcare.com.br,International Health Care Offshore LTDA,1
+CONTROL SERVICE DO BRASIL EIRELI,financeiro@controlservice.com.br,CONTROL SERVICE DO BRASIL EIRELI,1
+Renato Torre,renato.torre@vibrasom.ind.br,Vibrashop,1
+Priscila,priscila@saccobrasil.com.br,Sacco Brasil,1
+Mayara Menezes,administrativo@easyvix.com.br,EASYVIX COMERCIO E SOLUCOES INDUSTRIAIS,0
+Lindinalva dos Santos,lindinalva.santos@ecosan.com,ECOSAN EQUIPAMENTOS PARA SANEAMENTO LTDA,1
+Jullya Bárbara dos Santos Cardoso,comercial@samed.med.br,SAMED MEDICINA E SEGURANÇA DO TRABALHO LTDA.,1
+Frederico Zettel,frederico@astj.ind.br,"Jetalbras Fabricação de Equipamentos, Montagem, Manutenção e Remoção Industrial Ltda.",1
+JOANA CAROLINA PERINI,adm@pbastones.com.br,PBA SERVIÇOS E COMERCIO DE PEDRAS ORNAMENTAIS LTDA,1
+TALITA MARINHO BRAZ DA CUNHA,talita@hzn.com.br,HZN IND E COM DE ALIMENTOS LTDS,1
+GONSALES ALVES DOS SANTOS,cleyton.santos@ecosan.com,ECOSAN EQUIPAMENTOS PARA SANEAMENTO LTDA,1
+Antonio Carlos Alves Evangelista Filho,antonio@rcprojetoseconsultoria.com.br,R&C Engenharia Elétrica e Telecomunicações Ltda.,0
+WAGNER AP. DE OLIVEIRA HEMKEMEIER,renan@brasilsolaris.com.br,BRASIL SOLARIS LTDA,1
+Giana Hahn Alves,giana.alves@fiesc.com.br,Serviço Social da industria,1
+Jaqueline Zucatti,jaqueline.zucatti@indukern.com.br,Indukern Do Brasil Química - Ltda,1
+GESLIANE ANDREIS,carla.schneider@fiesc.com.br,SERVIÇO SOCIAL DA INDUSTRIA - 844,1
+valamir da silva,contato@lavippinturas.com.br,lavip lavações e pinturas prediais,0
+Joycy Machado Moro,joycy.moro@ibrav.com.br,IBRAV ACESSÓRIOS INDUSTRIAIS LTDA,1
+Marcela Braga,estacaoribeirao3235@hotmail.com,RESTAURANTE ESTAÇÃO RIBEIRÃO LTDA,1
+Joyce Improta,financeiro@karpapiscinas.com.br,Karpa Piscinas,1
+Alberto Yoshitomo Tsutsui de Oliveira,alberto@yoshitomo.com.br,Tsutsui Tec,0
+David luna Santos,contato@tldx.com.br,TLDX – Comércio e Serviços Tecnologia em Limpeza de Dutos LTDA – ME,1
+elizete secchi,elizete76secchi@gmail.com,Elizete Secchi,1
+Vitória Gissélia Vitor,vitoria.vitor@formtap.com.br,Formtap Industria e Comercio S/A,1
+Aline Holanda Mattos,aline@starnort.com.br,Starnort,1
+André Barreto das Virgens,andre.barreto@grupoplantao.srv.br,PLANTÃO SERVIÇO DE TELECOMUNICAÇÕES EIRELI - EPP,1
+Serviço Social da Indústria,vanessa.mascellaro@fiesc.com.br,SERVIÇO SOCIAL DA INDÚSTRIA,1
+Michel Simões Lopes,michel.lopes@infineum.com,Infineum Brasil Ltda,1
+João Leonel de Freitas Souza,joaoleonel.souza@infineum.com,Infineum Brasil Ltda,1
+Lucília Fernanda Fernandes Lins,luciliafernanda.lins@infineum.com,Infineum Brasil Ltda,1
+Priscila Bernardes Santoro,Priscila.Bernardes@infineum.com,Infineum Brasil Ltda,1
+Daniel Rodrigues Vieira Pinto,daniel@demcomercio.com.br,D&M Comércio Ltda,1
+Thais Aparecida Lopes Teixeira,adm3@demcomercio.com.br,D&M Comércio Ltda,1
+Lana Flavia Barcelos Santos,lana.barcelos@albioma.com,Albioma Esplanada Energia S.A,1
+Jéssica Nicaele Rezende,jessica.rezende@albioma.com,Albioma Esplanada Energia S.A,1
+Silvio Luis Bonczynski,silvio.bonczynski@sesisc.org.br,SERVICO SOCIAL DA INDUSTRIA - TUBARÃO,1
+Douglas Augusto Pereira,douglasiker@hotmail.com,Douglas A Pereira Montagem de Equipamentos M.E,1
+Luiz Geraldo Nunes,luiz.seguranca@ceraca.com.br,Ceraçá,1
+LUIZ TADEU DE MASCARENHAS AMBROS,clinica.ambros@terra.com.br,AMBROS CLINICA OFTALMOLOGICA LTDA,1
+Eduarda da Silva Kindlein,ambros.clinica32@terra.com.br,AMBROS CLINICA OFTALMOLOGICA LTDA,1
+Marcos Bornholdt,marcos@baumec.com.br,Baumec Engenharia Ltda,1
+Gabriel Zat Guizzardi,gabriel.guizzardi@setaengenharia.com.br,SETA ENGENHARIA,1
+Emerson Fagundes Ribeiro,manarthsc@gmail.com,Manarth Soluções Construtivas Ltda,1
+Leidiane,ldom960@users.noreply.betaeducacao.com.br,Mann=Hummel,1
+Dayane Cirino Costa Lourenço,Dayane.Lourenco@mann-hummel.com,Mann=Hummel,1
+Maynara Santos,nathalia.soares@mann-hummel.com,Mann=Hummel,1
+Luciano Dallago,segsolucoessst@gmail.cm,SEG SOLUÇÕES EM SAÚDE E SEGURANÇA DO TRABALHO,0
+Kássia Reis,kassia.reis@hybrazil.com,GMW Engenharia Ltda,1
+ROMILTO DE LOURENZI LOPES,contato@estudyou.com,SANTOS E BARRETO COM. E REP. LTDA,1
+ROMILTO DE LOURENZI LOPES,contato@estudyou.com,SANTOS E CIA LTDA,1
+Felipe De Biase,felipe.debiase@inventory.com.br,MINAS SOFT,1
+Albert Geraldo Alves,albert.alves@inventory.com.br,MINAS SOFT,1
+Patricia Sales de Carvalho,patricia.sales.de.carvalho@gmail.com,MSC Vila Velha,1
+REVERT SOLUCOES AMBIENTAIS LTDA,revertsolucoesambientais@gmail.com,REVERT SOLUCOES AMBIENTAIS,1
+BRUNO MAQUEDA DA SILVA,bruno.maqueda@trameap.com.br,TRAMEAP- Pratt & Whitney,1
+INTERTECHNE CONSULTORES S.A.,dcba@intertechne.com.br,Intertechne,1
+Leonardo Fonseca Albuquerque,04338749539@users.noreply.betaeducacao.com.br,Kordsa- Utilidades,1
+THIAGO OTON S DE OLIVEIRA,05026147577@users.noreply.betaeducacao.com.br,Kordsa- Utilidades,1
+CARLA CRISTINA PENNA FERNANDES,81206917687@users.noreply.betaeducacao.com.br,Kordsa- Utilidades,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,Kordsa- Utilidades,1
+Jessica de andrade,07124124417@users.noreply.betaeducacao.com.br,Kordsa- Utilidades,1
+Anderson Julião,03083336594@users.noreply.betaeducacao.com.br,Kordsa- Utilidades,1
+Ana Carolina Nepomuceno de Santana,07491762530@users.noreply.betaeducacao.com.br,Kordsa- Utilidades,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,Kordsa- Utilidades,1
+CEZAR AUGUSTO ALBUQUERQUE SANTOS,34507019591@users.noreply.betaeducacao.com.br,Kordsa- Utilidades,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,Kordsa- Utilidades,1
+Leonardo Fonseca Albuquerque,04338749539@users.noreply.betaeducacao.com.br,Kordsa - Manutenção - Oficina Química,1
+THIAGO OTON S DE OLIVEIRA,05026147577@users.noreply.betaeducacao.com.br,Kordsa - Manutenção - Oficina Química,1
+CARLA CRISTINA PENNA FERNANDES,81206917687@users.noreply.betaeducacao.com.br,Kordsa - Manutenção - Oficina Química,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,Kordsa - Manutenção - Oficina Química,1
+Jessica de andrade,07124124417@users.noreply.betaeducacao.com.br,Kordsa - Manutenção - Oficina Química,1
+Anderson Julião,03083336594@users.noreply.betaeducacao.com.br,Kordsa - Manutenção - Oficina Química,1
+Ana Carolina Nepomuceno de Santana,07491762530@users.noreply.betaeducacao.com.br,Kordsa - Manutenção - Oficina Química,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,Kordsa - Manutenção - Oficina Química,1
+CEZAR AUGUSTO ALBUQUERQUE SANTOS,34507019591@users.noreply.betaeducacao.com.br,Kordsa - Manutenção - Oficina Química,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,Kordsa - Manutenção - Oficina Química,1
+Leonardo Fonseca Albuquerque,04338749539@users.noreply.betaeducacao.com.br,Kordsa - Tecelagem,1
+THIAGO OTON S DE OLIVEIRA,05026147577@users.noreply.betaeducacao.com.br,Kordsa - Tecelagem,1
+RONALDO SANTOS DE ALMEIDA,53643283504@users.noreply.betaeducacao.com.br,Kordsa - Tecelagem,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,Kordsa - Tecelagem,1
+Jessica de andrade,07124124417@users.noreply.betaeducacao.com.br,Kordsa - Tecelagem,1
+Anderson Julião,03083336594@users.noreply.betaeducacao.com.br,Kordsa - Tecelagem,1
+Ana Carolina Nepomuceno de Santana,07491762530@users.noreply.betaeducacao.com.br,Kordsa - Tecelagem,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,Kordsa - Tecelagem,1
+CEZAR AUGUSTO ALBUQUERQUE SANTOS,34507019591@users.noreply.betaeducacao.com.br,Kordsa - Tecelagem,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,Kordsa - Tecelagem,1
+SOCIEDADE DA AGUA,contato@sociedadedaagua.com.br,SOCIEDADE DA ÁGUA SERVIÇOS AMBIENTAIS E GEOTECNOLOGIAS EIRELI,1
+Leonardo Fonseca Albuquerque,04338749539@users.noreply.betaeducacao.com.br,Kordsa - Retorcimento,1
+THIAGO OTON S DE OLIVEIRA,05026147577@users.noreply.betaeducacao.com.br,Kordsa - Retorcimento,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,Kordsa - Retorcimento,1
+Jessica de andrade,07124124417@users.noreply.betaeducacao.com.br,Kordsa - Retorcimento,1
+Anderson Julião,03083336594@users.noreply.betaeducacao.com.br,Kordsa - Retorcimento,1
+Ana Carolina Nepomuceno de Santana,07491762530@users.noreply.betaeducacao.com.br,Kordsa - Retorcimento,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,Kordsa - Retorcimento,1
+CEZAR AUGUSTO ALBUQUERQUE SANTOS,34507019591@users.noreply.betaeducacao.com.br,Kordsa - Retorcimento,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,Kordsa - Retorcimento,1
+WAGNER COELHO EUGENIO,marketing@logxexpress.com.br,LOGX TRANSPORTES EIRELI,1
+Mario Vitor Rosa,mario.rosa@tegula.com.br,Tegula Soluções para Telhados,1
+Ana Carolina Fanton,ana.fanton@clamed.com.br,CLAMED - Cia Latino Americana de Medicamentos,1
+Leonardo Fonseca Albuquerque,04338749539@users.noreply.betaeducacao.com.br,Kordsa- Oficina Central,1
+THIAGO OTON S DE OLIVEIRA,05026147577@users.noreply.betaeducacao.com.br,Kordsa- Oficina Central,1
+CARLA CRISTINA PENNA FERNANDES,81206917687@users.noreply.betaeducacao.com.br,Kordsa- Oficina Central,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,Kordsa- Oficina Central,1
+Jessica de andrade,07124124417@users.noreply.betaeducacao.com.br,Kordsa- Oficina Central,1
+Anderson Julião,03083336594@users.noreply.betaeducacao.com.br,Kordsa- Oficina Central,1
+Ana Carolina Nepomuceno de Santana,07491762530@users.noreply.betaeducacao.com.br,Kordsa- Oficina Central,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,Kordsa- Oficina Central,1
+CEZAR AUGUSTO ALBUQUERQUE SANTOS,34507019591@users.noreply.betaeducacao.com.br,Kordsa- Oficina Central,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,Kordsa- Oficina Central,1
+Leonardo Fonseca Albuquerque,04338749539@users.noreply.betaeducacao.com.br,Kordsa - Segurança Suporte,1
+THIAGO OTON S DE OLIVEIRA,05026147577@users.noreply.betaeducacao.com.br,Kordsa - Segurança Suporte,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,Kordsa - Segurança Suporte,1
+Anderson Julião,03083336594@users.noreply.betaeducacao.com.br,Kordsa - Segurança Suporte,1
+Ana Carolina Nepomuceno de Santana,07491762530@users.noreply.betaeducacao.com.br,Kordsa - Segurança Suporte,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,Kordsa - Segurança Suporte,1
+CEZAR AUGUSTO ALBUQUERQUE SANTOS,34507019591@users.noreply.betaeducacao.com.br,Kordsa - Segurança Suporte,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,Kordsa - Segurança Suporte,1
+Gabrielle Viveiros,gabriele@pam-membranas.com.br,Pam Membranas Seletivas LTDA,1
+DANIELA ARO SILVA,abeb.compras@gruppoab.com,AB ENERGY DO BRASIL - FAKE,1
+Gabriela Baltazar,financeiro@schweers.com.br,Schweers Metalurgica EIRELI,1
+Eduardo D. C. R. Costa,gerencia@segmedcampos.com,segmed serviços médicos ltda,1
+SWC,salaswc.catu@hotmail.com,SWC Service of Well Control,1
+Gabrielle Viveiros,gabriele@pam-membranas.com.br,Pam Membranas,1
+CASSIA MENDES BERNARDES SESSA,adm@housedecorsantos.com.br,A M A DECORAÇÕES LTDA,1
+Monica Pietscher,financeiro@trameap.com.br,"AUDIO PADRÃO DIAGNOSTICO, SAÚDE E SEGURANÇA OCUPACIONAL LTDA",1
+John Wilson Sadovski dos Santos,john@eratelecom.com.br,Era Telecomunicações Ltda,1
+Era Telecom,eratelecom@eratelecom.com.br,Era Telecomunicações Ltda,1
+ANA CAROLINA SILVA,anasilva@grpcom.com,TV CATARATAS,1
+gilmar barbosa silva,tatielle12345678@gmail.com,Gilmar barbosa da silva,1
+Vitória Capum Rodrigues,vitoria@mksintegridade.com,MKS SERVIÇOS ESPECIAIS DE ENGENHARIA LTDA,1
+Gabriel Jose Fraga Mello,fragamellogabriel@gmail.com,Vale Comercial Eireli,1
+BRUNO MAURITAN BISPO CINTRA,bruno.cintra@mcgengenharia.com,MCG ENGENHARIA DE PROJETOS LTDA - FAKE,1
+Christiane Ronchi da Silva Gomes,cronchi@iguacu.com.br,Cia. Iguaçu de Café Solúvel,1
+Johnathan Schoenau Vasconcellos Cardoso,johnathancardoso@gmail.com,CAPB Treinametnos,1
+Luana Cristina Santos,sha-brcge1-rh08@pli-petronas.com,Petronas Lubrificantes Brasil S.A,1
+Carlos Magno Nunes,capbtreinamentos@gmail.com,CAPB,1
+Lizandra Sanches Soares,aprendizrh@usinacolombo.com.br,Usina Colombo S/A Açúcar e Álcool,1
+Laura Lazarini Aranha,laura@usinacolombo.com.br,Usina Colombo S/A Açúcar e Álcool,1
+Breno,bsilva@recursus.com,Recursus Engenharia,1
+Amanda Duarte,rh@nunesdecorarte.com.br,NUNES ENXOVAIS IND. COM. IMP. E EXP. EIRELI,1
+Diego Alex dos Santos Sousa,diego.sousa@smipreditiva.com.br,SMI Manutenção Preventiva Ltda,1
+jae min lee,marina.dias@benvista.com.br,VMOFTSPCLINICA MEDICA OFTALMOLOGICA LTDA,1
+Renato A L F Chaves,chavrenato@gmail.com,CONDOMINIO DO EDIFICIO SONATA.,1
+Ana Paula de Albuquerque Marciano,ana.marciano@dorsolucoes.com.br,REDE D’OR SÃO LUIZ SOLUÇÕES CORPORATIVAS EM SAÚDE E SEGURANÇA DO TRABALHO,1
+Camila Gomes Selecto da Cunha,camila.cunha@dorsolucoes.com.br,REDE D’OR SÃO LUIZ SOLUÇÕES CORPORATIVAS EM SAÚDE E SEGURANÇA DO TRABALHO,1
+Poliene Aparecida Lopes Morais,poliene.morais@pharlab.com.br,Pharlab,1
+Poliene Morais,recrutamento@pharlab.com.br,Pharlab,1
+Rogerio Gardim,tendasmaringa@gmail.com,Tendas Maringá comércio e locação de tendas e estrutura para eventos EIRELLI,1
+Antonio Vasconcelos,suprimentos-m4p@m4u.com.br,M4 Produtos e Serviços,1
+Ezequias da Silva Alves,ezanengenharia@ezan.com.br,Ezan Engenharia e Geotecnia,1
+WENDELL HEINZL,wendell.heinzl@fanucamerica.com,FANUC SOUTH AMERICAEQUIP DE AUTOM E SERV LTDA,1
+Jennyfer Kaneto Sales Felicio,jennyfer.felico@fanucamerica.com,FANUC SOUTH AMERICAEQUIP DE AUTOM E SERV LTDA,1
+Yasmin de Deus da Rocha,yasmin.rocha@fanucamerica.com,FANUC SOUTH AMERICAEQUIP DE AUTOM E SERV LTDA,1
+MARIA CLARICE LAGUNA,jornalismojoaosantos@gmail.com,CANASBEACH HOTEL LTDA,1
+LEANDRO PEREIRA LACERDA,eduardo.gurgel@brturbo.com.br,SOMAR - SOCIEDADE MINERADORA LTDA.,1
+Vinicius Ruiz de Oliveira,vinicius.ruiz@vr7automacao.com.br,VR7 Automação Industrial,1
+Mateus Prohmann,mateus.prohmann@consorciobiomacae.com.br,AMP2 Soluções em Energia Ltda,1
+JOYCE RODRIGUES PIMENTEL,joyce.pimentel@uspedra.com.br,USINA BURITI PEDRA AGROINDUSTRIAL S/A,1
+Jessica Maia,jessica.maia@uspedra.com.br,USINA BURITI PEDRA AGROINDUSTRIAL S/A,1
+Francisco Miranda,francisco.miranda@uspedra.com.br,USINA BURITI PEDRA AGROINDUSTRIAL S/A,1
+kellen,kellen.fonseca@uspedra.com.br,USINA BURITI PEDRA AGROINDUSTRIAL S/A,1
+Livia Fernanda Santana,livia.santana@pedraagroindustrial.com.br,USINA BURITI PEDRA AGROINDUSTRIAL S/A,1
+NANCY ALVES LABRITZ,nancy.labritz@gmail.com,NAFEM USINAGEM E FERRAMENTARIA LTDA ME,1
+Hudson Alves martins,hudsonalvesmartins@gmail.com,Brasil Educação,1
+Donizete,donizetty.andre@gmail.com,Htp engenharia,1
+Donizette Aparecido André,htpengenharia1@gmail.com,Nova Consbras Comercio E Serviços LTDA,1
+SAMARA MEDEIROS FARIA,adm2@demcomercio.com.br,D&M COMERCIO LTDA,1
+Tiago Ongaratto,tiago.ongaratto@geraeb.com.br,BIO GERA ENERGIA LOCACOES DE MAQUINAS E EQUIPAMENTOS INDUSTRIAIS LTDA,0
+Rogger Nunes,atendimento.gratitude@gmail.com,Gratitude,1
+Paulo Rogério,logistica1@eritel.com.br,Eritel Telecomunicação,1
+Mario Zawacki,elisangela@eritel.com.br,Eritel Telecomunicações Ltda,1
+Letícia de Souza Cunha,leticia.souza@jacomarsm.com.br,Auto Posto Jacomar Boqueirão,1
+Luciano Garcia Pereira,lgpportforro@yahoo.com.br,Luciano Garcia Pereira Me,1
+RICARDO REIS DAS NEVES,producao@cbcflex.com,CBC FLEX IND E COMERCIO DE ADESIVOS LTDA,1
+Edson Cavalcante da Silva,financeiro@speedytelecom.com.br,Speedy Telecom,1
+IZABELA DO VALE FERRAZ,financeiro@viapress.com.br,VIA PRESS COMUNICAÇÃO EIRELI,1
+SAMARA MEDEIROS FARIA,sam.faria@hotmail.com,D&M COMERCIO LTDA,1
+Claudio Roberto de Menezes,reila@mg.sense.com.br,Sense Eletrônica,1
+Rosimere Mendes,rosimeiremendes@natura.net,NATURA COSMETICOS S/A 2000,1
+NATALIA PAES DOS SANTOS,nataliapaes@natura.net,NATURA COSMETICOS S/A 2000,1
+Thauane Almeida Guilherme,thauaneguilherme.espro@natura.net,NATURA COSMETICOS S/A 2000,1
+JOSIANE NASCIMENTO FLORIANO BRASANITAS,josianefloriano.brasanitas@natura.net,NATURA COSMETICOS S/A 2000,1
+Keven Ramos Gaspar,kevengaspar.associacao@natura.net,NATURA COSMETICOS S/A 2000,1
+Felipe Figueredo,felipe.figueredo@doricaeng.com.br,DORICA INSTALACAO E MANUTENCAO EIRELI,1
+Olier Pantuza Torres,clayton.assis@npegroup.com.br,NPE SERVICE MANUTENÇÃO E MONTAGEM,1
+Silvio José Montanher,compras5@colomboagroindustria.com.br,COLOMBO AGROINDUSTRIA S/A,1
+Patrícia Costa Almeida,patricia.almeida@ponsse.com,Ponsse Latin America Indústria de Máquinas Florestais LTDA,1
+José Carlos da Silveira,jose.silveira@ponsse.com,Ponsse Latin America Indústria de Máquinas Florestais LTDA,1
+ABDON LIMA GOES NETO,abdon.neto@cetrel.com.br,DAC CNPJ 0194403100163,1
+Ana Rita da Hora Reis,anareis@cetrel.com.br,DAC CNPJ 0194403100163,1
+ROSELY CARVALHO DOS SANTOS,roselysantos@cetrel.com.br,DAC CNPJ 0194403100163,1
+Rafael Pereira da Silva,rafaelpsilva@cetrel.com.br,DAC CNPJ 0194403100163,1
+Treinamentos CETREL,treinamentosqssma@cetrel.com.br,DAC CNPJ 0194403100163,1
+Apoio CETREL,apoioadministrativo@cetrel.com.br,DAC CNPJ 0194403100163,1
+Vivian,vivian.santana@ecovias.com.br,Concessionária Ecovias dos Imigrantes,1
+Bruna Carmona Picarelli,comprasagencia@climatempo.com.br,Agencia Brasileira de Meteorologia Ltda,1
+Silvio José Montanher,compras5@colomboagroindustria.com.br,COLOMBO AGROINDUSTRIA S/A-PALESTINA,1
+GIZELE,financeiro1@granaco.com.br,GRANAÇO,1
+Erick Filipino,maferkcalhas@yahoo.com,Maferk,1
+Marcia Lacerda,marcia@marpie.com.br,Piemar Engenharia Ltda,1
+Victor Bruno Carletti Silveira,vbcsilveira@saaeamparo.sp.gov.br,Serviço Autônomo de Água e Esgoto Amparo,1
+Jessica dos Santos Ribeiro,segurancadotrabalho@grupomottin.com.br,Movesa Motores e Veiculos LTDA,1
+LOURDES RIBEIRO,compras@apiceprojetos.com.br,APICE PROJETOS DE GESTAO,1
+Débora Cristina Campos,rh@tecnoklima.com.br,DS manutenção de ar condicionado,1
+Luiz,admciabrap@yahoo.com.br,Cia Brap treinamentos,1
+Roberto Cristian Pires De Souza,roberto.souza@inovaenergy.com.br,Inova Energy,1
+Fernanda Georgia Sales Pereira,fernanda.pereira@cscenergia.com.br,CSC-CENTRAL DE SERVIÇOS COMPARTILHADOS SA,1
+ARLEN PATRÍCIO NOVELLETTO,arlen.novelletto@cscenergia.com.br,CSC-CENTRAL DE SERVIÇOS COMPARTILHADOS SA,1
+Daiana Tamara de Souza,daiana.tamara@gmail.com,CSC-CENTRAL DE SERVIÇOS COMPARTILHADOS SA,1
+DAIANA TAMARA DE SOUZA,daiana.souza@cscenergia.com.br,CSC-CENTRAL DE SERVIÇOS COMPARTILHADOS SA,1
+Luciano Alves da Cruz,contato@commetro.com.br,Commetro Engenharia Eireli,1
+Dhyego Ferreira de Lima,dhyego.lima@datatraffic.com.br,DATA TRAFFIC,1
+LEANDRO VOLKART,leandro@flybyte.com.br,FLYSERVICE SERVICO DE TECNOLOGIA LTDA,1
+Nathalia Lorena,nathalia.lorena@uspedra.com.br,Pedra Agroindustrial S/A,1
+Jessica Maia,jessica.maia@uspedra.com.br,Pedra Agroindustrial S/A,1
+Francisco Miranda,francisco.miranda@uspedra.com.br,Pedra Agroindustrial S/A,1
+kellen,kellen.fonseca@uspedra.com.br,Pedra Agroindustrial S/A,1
+Livia Fernanda Santana,livia.santana@pedraagroindustrial.com.br,Pedra Agroindustrial S/A,1
+Otávio,contesini@salengenharia.com.br,Sal Engenharia,1
+Lucas Veronez,logistica2@salengenharia.com.br,Sal Engenharia,1
+Liziane Cabral,liziane.cabral@zumpnet.com.br,ZumpNet,1
+JULIA RONIZE COSTA DE CAMPOS,juliac.95@hotmail.com,ZumpNet,1
+Marco Macana,services@norsul.com,COMPANHIA DE NAVEGACAO NORSUL,1
+Elisangela Pereira de Carvalho,elisangela.pereira@inovaenergy.com.br,INOVA ENERGY ENGENHARIA,1
+Felipe Figueredo,felipe.figueredo@doricaeng.com.br,Dorica Instalacao e Manutencao LTDA,1
+Pedro Victor Peres,gerencia.operacional@crescersolucoes.com.br,CRESCER RECURSOS HUMANOS LTDA,1
+Leonardo Fonseca Albuquerque,04338749539@users.noreply.betaeducacao.com.br,Kordsa / Manutenção Oficina Têxtil,1
+THIAGO OTON S DE OLIVEIRA,05026147577@users.noreply.betaeducacao.com.br,Kordsa / Manutenção Oficina Têxtil,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,Kordsa / Manutenção Oficina Têxtil,1
+Anderson Julião,03083336594@users.noreply.betaeducacao.com.br,Kordsa / Manutenção Oficina Têxtil,1
+Ana Carolina Nepomuceno de Santana,07491762530@users.noreply.betaeducacao.com.br,Kordsa / Manutenção Oficina Têxtil,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,Kordsa / Manutenção Oficina Têxtil,1
+CEZAR AUGUSTO ALBUQUERQUE SANTOS,34507019591@users.noreply.betaeducacao.com.br,Kordsa / Manutenção Oficina Têxtil,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,Kordsa / Manutenção Oficina Têxtil,1
+Leandro W. Pires,leandro.pires@consultorialw.com.br,LW PIRES TREINAMENTOS ME DEFINITIVO,1
+Pedro Luís Caldeira Martins,pedro@pmartinsengenharia.com.br,Pedro Martins Engenharia,1
+Taís Cristina,tais@lonjastec.com.br,LONJAS TECNOLOGIA ENERGIA E MEIO AMBIENTE LTDA,1
+Alexandre Gonzaga,alexandre.gonzaga@lonjastec.com.br,LONJAS TECNOLOGIA ENERGIA E MEIO AMBIENTE LTDA,1
+Eli Tiago Martini,kuaraecoenergy@gmail.com,Kuara Ecoenergy,1
+Washington Amélio de Queiroz Neto,trevoarcondicionado@outlook.com,Trevo Ar Condicionado,1
+André Luis Moura,sesmt@marsala.com.br,MARSALA,1
+Leandro Barbosa Dorea,leandrodorea@kofre.com.br,kofre,1
+LEANDRO BARBOSA DOREA,caiosilva@kofre.com.br,kofre,1
+Fernanda Aguiar,fernandaguiar@eurofins.com,ANALYTICAL TECHNOLOGY SERVICOS ANALITICOS E AMBIENTAIS LTDA,1
+Rafaele Oliveira Correia,rafaele.correia@padtec.com.br,PADTEC S/A,1
+Ligia Pereira Ribeiro da Silva,ligia.silva@padtec.com.br,PADTEC S/A,1
+Elaine Xavier Bueno,elaine.bueno@padtec.com.br,PADTEC S/A,1
+Eduardo Serrão Neves Leal,eduardo.serrao@copapa.com.br,COPAPA CIA PADUANA DE PAPEIS,1
+Sheila Regina Decco,sheila@mitspieler.com.br,Mitspieler Serviço e Representaçoes Ltda,1
+Marildo da silva,marildo.pop@hotmail.com,Mão serviços gerais,1
+INTERTECHNE CONSULTORES S.A.,dcba@intertechne.com.br,INTERTECHNE CONSULTORES S.A,1
+Jefferson Pradino de Carvalho,jefferson.carvalho@wcabrasil.com.br,WCA RH Belo Horizonte Ltda,1
+TAINÁ SEIDEL DURANTE,taina.durante@setaengenharia.com.br,SETA ENGENHARIA S/A,1
+Bianca Boscardini,bianca.boscardini@ext.omegaenergia.com.br,Omega Energia,1
+G&P,gestao@omegaenergia.com.br,Omega Energia,1
+Ana Araújo,karina.araujo@omegaenergia.com.br,Omega Energia,1
+Márcio Henrique Ferreira de Macedo,marcio.macedo@omegaenergia.com.br,Omega Energia,1
+Thais Siqueira,thais.siqueira@gruposeres.com.br,Grupo SERES,1
+Amanda Cotta Sartore,amanda.sartore@sunchemical.com,Sun Chemical do Brasil,1
+BRUNO MAURITAN BISPO CINTRA,bruno.cintra@mcgengenharia.com,MCG ENGENHARIA DE PROJETOS,1
+Cláudia de Oliveira Cruz,claudia.cruz@mcgengenharia.com,MCG ENGENHARIA DE PROJETOS,1
+Jéssica Nicaele Rezende,jessica.rezende@albioma.com,ALBIOMA ESPLANADA ENERGIA SA,1
+Angelica Tomazia Da Silva,angelica.silva@bdo.com.br,BDO,1
+Diogo Barbosa Moreira Neiva,diogo.neiva@brasilgtw.com.br,BRASIL GTW,1
+Jheniffer Marques,jheniffer.marques@ecogenbrasil.com.br,BRASIL GTW,1
+Feliciano Libanio da Silveira Filho,cafecampinho6@gmail.com,Café Campinho,1
+Julio Cesar da Silva Soares,j.cesar@royalihc.com,IHC do Brasil,1
+Dhyego Ferreira de Lima,dhyego.lima@datatraffic.com.br,DATA TRAFFIC SA,1
+Laís Reis,lrei211@users.noreply.betaeducacao.com.br,Mann+Hummel,1
+Dayane Cirino Costa Lourenço,Dayane.Lourenco@mann-hummel.com,Mann+Hummel,1
+Maynara Santos,nathalia.soares@mann-hummel.com,Mann+Hummel,1
+Fabio Toledo Campos,fabio@mcend.com.br,MC END Prestação de Serviço Ltda ME,1
+Leandro W. Pires,leandro.pires@consultorialw.com.br,LW PIRES TREINAMENTOS ME,1
+Zilda Santos De Paula,faturamento@maiclean.com.br,MAICLEAN TERCEIRIZAÇÃO DE SERVIÇOS LTDA- EPP,1
+Natia Moura Gonçalves,admsilvestre.adm@hotmail.com,administradora silvestre,1
+Lídia da Luz Albuquerque,rh02@maxwilhelm.com.br,BEBIDAS MAX WILHELM LTDA,1
+Juliano Rodrigues Lencina,conectwest@gmail.com,J.A. Plataforma de Serviços Online Ltda,1
+Grasiela Pedroso Scheib de Simas,grasiela@tudexcargo.com.br,Tudex Cargo Transportes,0
+Jaqueline,jaqueline.salomao@pdcbrasil.com.br,Process Development Corporation do Brasil Ltda,1
+WENDELL HEINZL,wendell.heinzl@fanucamerica.com,FANUC SOUTH AMERICA EQUIPAMENTOS DE AUTOMACAO E SERV. LTDA,1
+Yasmin de Deus da Rocha,yasmin.rocha@fanucamerica.com,FANUC SOUTH AMERICA EQUIPAMENTOS DE AUTOMACAO E SERV. LTDA,1
+FERNANDA DA ROSA SOUZA,enffernanda2009@yahoo.com.br,AGREGUE SAÚDE,1
+Rodrigo Nascimento Hernandez,relac@minasambiente.com.br,MinasAmbiente Eng. LTDA,1
+Vanessa Lima Pires,administrativo@mekatronik.com.br,MEKATRONIK IND E COM DE AUTOMAÇÃO LTDA,1
+Danilo Sabino,adm3@mekatronik.com.br,MEKATRONIK IND E COM DE AUTOMAÇÃO LTDA,1
+Petrick,compras@plasmundi.com.br,Plasmundi,1
+Marco Antônio,marco_eng10@hotmail.com,CONDOMINIO RESIDENCIAL BRASILIA,1
+G&P,gestao@omegaenergia.com.br,OMEGA GERAÇÃO S.A,1
+Ana Araújo,karina.araujo@omegaenergia.com.br,OMEGA GERAÇÃO S.A,1
+Márcio Henrique Ferreira de Macedo,marcio.macedo@omegaenergia.com.br,OMEGA GERAÇÃO S.A,1
+Juliano Rodrigues Lencina,conectwest@gmail.com,J.A Plataforma de Serviços Online ltda,1
+Vanessa Estorio Vides,prontoarbauru@hotmail.com,Prontoar Refrigeração LTDA ME,1
+Flávio Junio Castelão,flavio.castelao@toledobrasil.com.br,Toledo do Brasil Ind. de Balanças Ltda.,1
+Rachel de Figueiredo da Silva Ataide,rfsataide@mills.com.br,MILLS ESTRUTURAS E SERVICOS DE ENGENHARIA S/A,1
+Ana Caroline Domingos Ferreira,acdferreira@mills.com.br,MILLS ESTRUTURAS E SERVICOS DE ENGENHARIA S/A,1
+MARINA PATRICIA MENCONCA DA SILVA,marina.mendonca@mills.com.br,MILLS ESTRUTURAS E SERVICOS DE ENGENHARIA S/A,1
+Matheus Homem dos Santos,matheus.homem@mills.com.br,MILLS ESTRUTURAS E SERVICOS DE ENGENHARIA S/A,1
+MARIANA RUFINO NOVAIS,mariana.novais@mills.com.br,MILLS ESTRUTURAS E SERVICOS DE ENGENHARIA S/A,1
+Allan Caputto Macedo,allan.macedo@mills.com.br,MILLS ESTRUTURAS E SERVICOS DE ENGENHARIA S/A,1
+Fabio Toledo Campos,fabio@mcend.com.br,MC END Inspeções,1
+Barbara Stella Lima Gomes,barbara@cetrel.com.br,CETREL S.A.,1
+ABDON LIMA GOES NETO,abdon.neto@cetrel.com.br,CETREL S.A.,1
+Ana Rita da Hora Reis,anareis@cetrel.com.br,CETREL S.A.,1
+ROSELY CARVALHO DOS SANTOS,roselysantos@cetrel.com.br,CETREL S.A.,1
+Rafael Pereira da Silva,rafaelpsilva@cetrel.com.br,CETREL S.A.,1
+Treinamentos CETREL,treinamentosqssma@cetrel.com.br,CETREL S.A.,1
+Apoio CETREL,apoioadministrativo@cetrel.com.br,CETREL S.A.,1
+SANDRA ELIANE CORDEIRO ABDALLA,dho@fenixto.com.br,SANDRA ELIANE CORDEIRO ABDALLA - EPP,1
+Renata Abreu da Silva,financeiro@inovvar.net.br,Inovvar Soluções Empresariais LTDA ME,1
+Sheila Rissato,sheila.rissato@valedoparana.com.br,VALE DO PARANÁ S. A. ÁLCOOL E AÇÚCAR,1
+Eder,eder@rescuebrasil.com.br,Rescue brasil treinamento,1
+Dalvir Fernando Moratelli,contato@dlconsultoria.net.br,D.L. Consultoria Ltda,0
+Marcelo Felinto Macedo,marcelo.macedo@ecolab.com,ECOLAB,1
+NATHALIA LEMES RIBEIRO,adm4@demcomercio.com.br,D&M COMÉRCIO LTDA,1
+AUGUSTO,exitodiretoria@hotmail.com,EXITO PINTURA,1
+Gustavo Balbinot,gustavo@termovib.com.br,TERMOVIB análise e monitoramento,1
+NANCY ALVES LABRITZ,nancy.labritz@gmail.com,NAFEM USINAGEM E FERRAMENTARIA LTDA,1
+NANCY ALVES LABRITZ,nancy.labritz@gmail.com,NAFEM USINAGEM E FERRAMENTARIA LTDA,1
+Luciana Freiberger da Rosa,luciana.f.rosa@sesisc.org.br,Serviço Social da Industria,1
+Leandro Barbosa Dorea,leandrodorea@kofre.com.br,Kofre Tecnologia,1
+LEANDRO BARBOSA DOREA,caiosilva@kofre.com.br,Kofre Tecnologia,1
+Adriana Firmino,adriana.firmino@venco-csti.com.br,Fixconsulting Consultoria e Serviços de TL Ltda,1
+UBIRACINI RAMOS DE JESUS,compras@engrest.com.br,ENGREST ENGENHARIA DE RECUPERAÇÃO ESTRUTURAL LTDA.,1
+Washington Carlos Correia,seguranca.trabalho@ecopistas.com.br,CONCESSIONARIA ECOVIAS DOS IMIGRANTES S.A,1
+Washington Carlos Correia,seguranca.trabalho@ecopistas.com.br,CONCESSIONARIA ROD. AYRTON SENNA CARV. PINTO S.A,1
+Rangel Das Chagas Cambuim,rangel.cambuim@venergia.com.br,VOTORANTIM GERAÇÃO DE ENERGIA S.A,1
+Tiago Ongaratto,tiago.ongaratto@grupogera.com,Gera Energia Rio,1
+Adriane Kadanus Dobgynski,rhfin@geroma.com.br,GEROMA DO BRASIL IND COM LTDA,1
+Lucas de Assis,lucas.assis@prohigi.com,PRO HIGI Service LTDA,0
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,CARBONI MAQUINAS AGRICOLAS LTDA,1
+ALBERTO PINHEIRO SANTOS,alberto@gbconstrutora.com.br,GB CONSTRUTORA,1
+Denise,deptpessoal@sdc.com.br,SDC Engenharia de Sistemas LTDA,1
+Fabio Toledo Campos,fabio@mcend.com.br,MC END Prestação de Serviço Ltda,1
+Tiago Pereira de Oliveira,tiago.pereira@vessel.eng.br,Vena Contracta Rio,1
+Emilyn Thaire de Faria Marion,adm.performaquinas@gmail.com,M. E. Perfor Máquinas e Equipamentos,1
+Fabio Toledo Campos,fabio@mcend.com.br,MC END Prestação de Serviços Ltda,1
+Jaco De Souza Abrantes,jaco@ab5.com.br,Ab5 Ind e Comercio Ltda.,1
+Liziane Cabral,liziane.cabral@zumpnet.com.br,Speakrs Projetos e Execuções em Áudio Ltda,1
+Claudio Almeida,flavio.querino@gunneboindustries.com.br,Gunnebo Industries Produtos para Movimentação de Cargas Ltda,1
+Joana Bernardi,joana.rh@atibrasil.com.br,ATI BRASIL ARTIGOS TÉCNICOS INDUSTRIAIS,1
+RAMON ALVES RABELO CIDADE,rh@jwsaraiva.com.br,JW SARAIVA E CIA LTDA,1
+Aline Gerhardt,aline.gerhardt@pfiffner.com.br,Pfiffner do Brasil Industria e Comercio de Transformadores Ltds,1
+Pricila Gomes Cordeiro,pricila.cordeiro@forseq.com.br,Forseq,1
+Professor luigi,professorluigi@terra.com.br,Antonio Luigi calabrese 742200808,1
+LUIZ ANGELO PIANZOLA,rita@transjap.com.br,TRANSJAP TRANSPORTES DOIS IRMAOS LTDA,1
+Maria Luiza De Oliveira Motta,luiza.motta@cedae.com.br,CEDAE – Cia. Estadual de Águas e Esgotos - LARANJAL,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,CEDAE – Cia. Estadual de Águas e Esgotos - LARANJAL,1
+Maria Luiza De Oliveira Motta,luiza.motta@cedae.com.br,CEDAE – Cia. Estadual de Águas e Esgotos - LAMEIRÃO,1
+José Jorge Siqueira Barbosa,j.barbosa@cedae.com.br,CEDAE – Cia. Estadual de Águas e Esgotos - LAMEIRÃO,1
+Landerley Lemos de Abreu,landerley@cedae.com.br,CEDAE – Cia. Estadual de Águas e Esgotos - LAMEIRÃO,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,CEDAE – Cia. Estadual de Águas e Esgotos - LAMEIRÃO,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,CARBONI DISTRIB. DE VEICULOS LTDA - PFU,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,CARBONI DISTRIB. DE VEICULOS LTDA - PLH,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,CARBONI DISTRIB. DE VEICULOS LTDA - CHP,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,CARBONI DISTRIB. DE VEICULOS LTDA - RSU,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,CARBONI DISTRIB. DE VEICULOS LTDA - ITJ,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,CARBONI DISTRIB. DE VEICULOS LTDA - JLE,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,CARBONI DISTRIB. DE VEICULOS LTDA - CDA,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,CARBONI VEÍCULOS LTDA,1
+Fabio Oliveira,fabio.oliveira@grupocarboni.com.br,CARBONI VEÍCULOS LTDA,1
+Andreza Vieira,andreza.vieira@gestaogps.com.br,TOP SERVICE SERVICOS E SISTEMAS S/A,1
+Andreza Vieira,andreza.vieira@gestaogps.com.br,IN-HAUS INDUSTRIAL E SERVICOS DE LOGISTICA LTDA,1
+LEONARDO HENRIQUE NEVES LOPES,leonardo.lopes@basis.com.br,BASIS TECNOLOGIA DA INFORMAÇÃO SA,1
+Andreza Vieira,andreza.vieira@gestaogps.com.br,GOL SEGURANCA E VIGILANCIA LTDA,1
+Vanessa Lima Pires,administrativo@mekatronik.com.br,Maketronik,1
+Michel Simões Lopes,michel.lopes@infineum.com,Infineum Brasil,1
+Lucília Fernanda Fernandes Lins,luciliafernanda.lins@infineum.com,Infineum Brasil,1
+Priscila Bernardes Santoro,Priscila.Bernardes@infineum.com,Infineum Brasil,1
+RAMON ALVES RABELO CIDADE,rh@jwsaraiva.com.br,Comércio de Combustíveis LTDA,1
+RAMON ALVES RABELO CIDADE,rh@jwsaraiva.com.br,Saraiva Comércio de Combustíveis LTDA,1
+DEIVISON RODRIGUES PEGO,derodrigueadm@gmail.com,ID DO BRASIL LOGÍSTICA LTDA,1
+MAICON MATEUS DE FREITAS,mfreitas@id-logistics.com.br,ID DO BRASIL LOGÍSTICA LTDA,1
+LUIZ CARLOS DA CRUZ,lcruz@id-logistics.com.br,ID DO BRASIL LOGÍSTICA LTDA,1
+Fabiana Lisboa de Souza,souzafab@amazon.com,ID DO BRASIL LOGÍSTICA LTDA,1
+Silvia Duarte,silvia.duarte@jurere.com.br,Jurerê Internacional Administração Hoteleira,1
+Thais Michelle Foppa,thais.foppa@jurere.com.br,Jurerê Internacional Administração Hoteleira,1
+Michele dos Santos Garcia,michele.garcia@jurere.com.br,Jurerê Internacional Administração Hoteleira,1
+API SERVICOS ESPECIALIZADOS LTDA,apidutos@apidutos.com.br,API SERVIÇOS ESPECIALIZADOS,1
+Neusa Zeferino Strey,donaldstrey@yahoo.com.br,Bom Café Cafeteria e Lanchonete Eireli,1
+Ana Lemos,ana.cruz@gestaogps.com.br,ENGESEG EMPRESA DE VIGILANCIA COMPUTADORIZADA LTDA,1
+Iuri Castro Donato,iuri.donato@unigel.com.br,Companhia Brasileira de Estireno,1
+Miqueline Neves Carvalho dos Santos,miqueline.carvalho@unigel.com.br,Companhia Brasileira de Estireno,1
+Karina Luzia Lins Vieira,karina.vieira@unigel.com.br,Companhia Brasileira de Estireno,1
+Rebeca Dantas dos Santos Trigo,rebeca.trigo@unigel.com.br,Companhia Brasileira de Estireno,1
+Edson Cavalcante da Silva,financeiro@speedytelecom.com.br,E C DA SILVA ME,1
+Zorenilda,restaurantebamboosjc@gmail.com,Restaurante Bamboo,1
+Aline Procheira,compras@attos.ind.br,Attos Serviços de Alimentação,1
+Gustavo,gustavo@edificaempreendimentos.com.br,WG Sinterização Ltda,1
+Rangel Das Chagas Cambuim,rangel.cambuim@venergia.com.br,Votorantim Geração de Energia S.A.,1
+Rubens Pires Cunha,projetos@linq.net.br,LinQ Telecomunicações,1
+Elisa,siegert@siegertdobrasil.com.br,Siegert do Brasil Ltda,1
+Marcos Damaia Tavares,marcos.tavares@ecoponte.com.br,Concessionária Ponte Rio-Niterói S/A – Ecoponte,1
+GRAZIELE A. FAZOLINI DE AZEVEDO,graziele@soletex.com,Soletex Têxtil,1
+Euri Emere Ribeiro Vieira,mettambiental@gmail.com,Metta Ambiental Ltda,1
+Iuri Castro Donato,iuri.donato@unigel.com.br,Proquigel Química S/A,1
+Miqueline Neves Carvalho dos Santos,miqueline.carvalho@unigel.com.br,Proquigel Química S/A,1
+Amauri Oliveira Tolentino,amauri.tolentino@unigel.com.br,Proquigel Química S/A,1
+Beatriz Drummond Pinto Dantas,beatriz.dantas@terceirosuni.com.br,Proquigel Química S/A,1
+Karina Luzia Lins Vieira,karina.vieira@unigel.com.br,Proquigel Química S/A,1
+Rebeca Dantas dos Santos Trigo,rebeca.trigo@unigel.com.br,Proquigel Química S/A,1
+Milena Barboza Giardiello,milena.giardiello@unimed.coop.br,UNIMED DO BRASIL CONFEDERACAO NAC DAS COOPERATIVAS MED,1
+Maria Luiza De Oliveira Motta,luiza.motta@cedae.com.br,CEDAE – Cia. Estadual de Águas e Esgotos - ITALVA,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,CEDAE – Cia. Estadual de Águas e Esgotos - ITALVA,1
+Maria Luiza De Oliveira Motta,luiza.motta@cedae.com.br,CEDAE – Cia. Estadual de Águas e Esgotos - DSG Concursados,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,CEDAE – Cia. Estadual de Águas e Esgotos - DSG Concursados,1
+Emilyn Thaire de Faria Marion,adm.performaquinas@gmail.com,M E PERFOR MAQUINAS,1
+SCHEILA SOARES,financeiro@thermokey.com.br,THERMOKEY DO BRASIL IND. E COM. DE EQUIPAMENTOS LTDA,1
+Luiz Felipe de Alvarenga Moreira,rh@jlfestruturas.com.br,SBS Eventos ltda,1
+Luiz Felipe de Alvarenga Moreira,rh@jlfestruturas.com.br,JLF Estruturas de Eventos Ltda,1
+API SERVICOS ESPECIALIZADOS LTDA,apidutos@apidutos.com.br,API Serviços Especializados em Dutos Ltda EPP,1
+Juliane Francine Junkes,juliane.junkes@neogrid.com,Neogrid Informática LTDA,1
+PABLO FACHINI NASCIMENTO,pablo@mvgeotecnicaambiental.com.br,MV SERVICOS E CONSULTORIA AMBIENTAL E GEOTECNICA LTDA,1
+Fernanda Crone Zanella,fernanda@watergel.com.br,Watergel Indústria e Comércio de Produtos Químicos,1
+SILVIA OSS EMMER,watergel@watergel.com.br,Watergel Indústria e Comércio de Produtos Químicos,1
+Maria Luiza De Oliveira Motta,luiza.motta@cedae.com.br,CEDAE,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,CEDAE,1
+Maria Luiza De Oliveira Motta,luiza.motta@cedae.com.br,CEDAE - MONIQUE,1
+MONIQUE OLIVEIRA LOPES,mlopes@cedae.com.br,CEDAE - MONIQUE,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,CEDAE - MONIQUE,1
+REGINALDO RAMOS,reginaldo-ramos@cedae.com.br,CONCURSADOS DRI,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,CONCURSADOS DRI,1
+Aline Gerhardt,andriele.ferreira@pfiffner.com.br,Pfiffner do Brasil,1
+Ana Carolina Silva,anasilva@grpcom.com.br,RADIO E TELEVISÃO IMAGEM LTDA,1
+Amanda Cristina Camargo,amandacamargo@grpcom.com.br,RADIO E TELEVISÃO IMAGEM LTDA,1
+Ana Carolina Silva,anasilva@grpcom.com.br,TELEVISÃO CULTURA DE MARINGA LTDA,1
+Amanda Cristina Camargo,amandacamargo@grpcom.com.br,TELEVISÃO CULTURA DE MARINGA LTDA,1
+Ana Carolina Silva,anasilva@grpcom.com.br,SOCIEDADE RADIO EMISSORA PARANAENSE S.A FILIAL,1
+Ana Carolina Silva,anasilva@grpcom.com.br,TV CATARATAS LTDA,1
+Amanda Cristina Camargo,amandacamargo@grpcom.com.br,TV CATARATAS LTDA,1
+Ana Carolina Silva,anasilva@grpcom.com.br,TV ESPLANADA DO PARANÁ LTDA,1
+Amanda Cristina Camargo,amandacamargo@grpcom.com.br,TV ESPLANADA DO PARANÁ LTDA,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,TV ESPLANADA DO PARANÁ LTDA,1
+Ana Carolina Silva,anasilva@grpcom.com.br,TV OESTE DO PARANA LTDA,1
+Amanda Cristina Camargo,amandacamargo@grpcom.com.br,TV OESTE DO PARANA LTDA,1
+Maria Luiza De Oliveira Motta,luiza.motta@cedae.com.br,CEDAE – Cia. Estadual de Águas e Esgotos,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,CEDAE – Cia. Estadual de Águas e Esgotos,1
+Fernanda Veiga Soares,fernandaveiga@fitzroy.com.br,Fitz Roy Entretenimento,1
+Michael D. G. da Cunha,michael@ateq.ind.br,Ateq serviços téc. LTDA,1
+RODRIGO MORI DELGADO,rodrigo.delgado@basf.com,MORUMBI – CNPJ 48.539.407/0001-18,1
+Katia Maria Mandu Draber,katia.draber@basf.com,MORUMBI – CNPJ 48.539.407/0001-18,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,OFICINA ELETRICA,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,OFICINA ELETRICA,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,OFICINA ELETRICA,1
+REGINALDO RAMOS,reginaldo-ramos@cedae.com.br,DRI 3ª TURMA,1
+Jones Gomes de Souza,joness@cedae.com.br,DRI 3ª TURMA,1
+Rangel Das Chagas Cambuim,rangel.cambuim@venergia.com.br,Votorantim Comercializadora de Energia Ltda. – CNPJ: 03.984.862/0001-94,1
+Luciano Batista Soares,luciano.soares@gpssa.com.br,TOP SERVICE SERVICOS E SISTEMAS S/A,1
+Daniela Myagushicu,daniela.myagushicu@basf.com,SANTO ANTONIO,1
+José Jorge Siqueira Barbosa,j.barbosa@cedae.com.br,DSG - LAMEIRÃO,1
+Landerley Lemos de Abreu,landerley@cedae.com.br,DSG - LAMEIRÃO,1
+Zilda Santos De Paula,faturamento@maiclean.com.br,Maiclean Terceirização de Serviços Ltda,1
+Vanessa Lima Pires,administrativo@mekatronik.com.br,MEKATRONIK IND E COM AUTOMAÇÃO LTDA,1
+Danilo Sabino,adm3@mekatronik.com.br,MEKATRONIK IND E COM AUTOMAÇÃO LTDA,1
+EDUARDO BARRELLA MARTIN,compras@emamsolucoes.com.br,EMAM SOLUÇÕES,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,DSG NR-10 NOVEMBRO,1
+Maria Luiza De Oliveira Motta,luiza.motta@cedae.com.br,CEDAE NR-10 NOVEMBRO,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,CEDAE NR-10 NOVEMBRO,1
+ADÃO JESUS DO COUTO BRITO,adaocouto@cedae.com.br,DPR - NR-10 Novembro,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,DPR - NR-10 Novembro,1
+Antonio Vasconcelos,suprimentos-m4p@m4u.com.br,M4 Produtos e serviços S.A,1
+Marisa Borth,instalapoa@gmail.com,PAULO BERGMANN E CIA LTDA,1
+Ana Paula Tucci,ana.tucci@sakata.com.br,Sakata,1
+Paula Barbosa,paula.barbosa@sakata.com.br,Sakata,1
+CARLOS ALBERTO DE A. E SILVA JR,carlos.junior@sakata.com.br,Sakata,1
+Anderson Roberto Monteiro,smipreditiva@smipreditiva.com.br,SMI Manutenção Preventiva,1
+Maria Luiza De Oliveira Motta,luiza.motta@cedae.com.br,DSG - NR-33,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,DSG - NR-33,1
+SHEILA EVALDT DA SILVA,compras.syltec@gmail.com,Syltec Serviços,1
+Juliana Quintanilha Mello De Lima,juliana.lima@3cservices.com.br,3C Services S.A.,1
+Milena Barboza Giardiello,milena.giardiello@unimed.coop.br,TIMKEN,1
+Milena Barboza Giardiello,milena.giardiello@unimed.coop.br,REPRESS,1
+Francisco Miranda,francisco.miranda@uspedra.com.br,PEDRA AGROINDUSTRIAL SA,1
+kellen,kellen.fonseca@uspedra.com.br,PEDRA AGROINDUSTRIAL SA,1
+Livia Fernanda Santana,livia.santana@pedraagroindustrial.com.br,PEDRA AGROINDUSTRIAL SA,1
+Geraldo Matheus,geraldo.matheus@constanta.com.br,CONSTANTA INDUSTRIAL LTDA,1
+Emilyn Thaire de Faria Marion,adm.performaquinas@gmail.com,M E PERFOR MÁQUINAS E EQUIPAMENTOS EIRELI,1
+Leandro W. Pires,leandro.pires@consultorialw.com.br,DEFINITIVO,1
+Netinho,operacional01netinhocargas@gmail.com,Netinho serviços de carga e descarga,1
+Jessica Maia,jessica.maia@uspedra.com.br,PEDRA AGROINDUSTRIAL SA,1
+Ana Paula,financeiro@termotubos.com.br,Termotubos Importação e Exportação Eireli,1
+JEAN CLAUDIO DE CARVALHO OLIVEIRA,68113820400@users.noreply.betaeducacao.com.br,KORDSA QUALIDADE,1
+MARCELA SEPRENY DA COSTA,05222254542@users.noreply.betaeducacao.com.br,KORDSA QUALIDADE,1
+CEZAR AUGUSTO ALBUQUERQUE SANTOS,34507019591@users.noreply.betaeducacao.com.br,KORDSA QUALIDADE,1
+CRISLEIDE BRITO SANTOS,02148085565@users.noreply.betaeducacao.com.br,KORDSA QUALIDADE,1
+Rafael Schimitz,rafael@imnet.com.br,Imnet Telecomunicações Ltda,1
+Tiago Carvalho,polotest@polotest.com.br,"MCEND INSPEÇÕES, CONSULTORIA E CONTROLE DE QUALDIADE",1
+Golden Maq,assistencia1@goldenmaq.com.br,GOLDENMAQ,1
+Vanessa Lima Pires,administrativo@mekatronik.com.br,MEKATRONIK IND E COM DE AUTOMAÇÃO,1
+Danilo Sabino,adm3@mekatronik.com.br,MEKATRONIK IND E COM DE AUTOMAÇÃO,1
+Miqueline Neves Carvalho dos Santos,miqueline.carvalho@unigel.com.br,Proquigel Química SA 27.515.154/0018-10,1
+Beatriz Drummond Pinto Dantas,beatriz.dantas@terceirosuni.com.br,Proquigel Química SA 27.515.154/0018-10,1
+Karina Luzia Lins Vieira,karina.vieira@unigel.com.br,Proquigel Química SA 27.515.154/0018-10,1
+Rebeca Dantas dos Santos Trigo,rebeca.trigo@unigel.com.br,Proquigel Química SA 27.515.154/0018-10,1
+daiana visinnheski,daiana.visinheski@danica.com.br,DANICAZIPCO SISTEMAS CONSTRUTIVOS S.A.,1
+Amanda Cristina Camargo,amandacamargo@grpcom.com.br,SOCIEDADE RADIO EMISSORA PARANAENSE S.A FILIAL,1
+José Carlos da Silveira,jose.silveira@ponsse.com,PONSSE - 07.556.927/0006-66,1
+Ana Carolina Silva,anasilva@grpcom.com.br,Sociedade Rádio Emissora Paranaense S.A.,1
+daiana visinnheski,daiana.visinheski@danica.com.br,DANICA SOLUCOES TERMOISOLANTES INTEGRADAS S.A.,1
+Amanda Cristina Camargo,amandacamargo@grpcom.com.br,Rádio Continental de Curitiba Ltda,1
+Amanda Cristina Camargo,amandacamargo@grpcom.com.br,Rádio Intercontinental Ltda,1
+Amanda Cristina Camargo,amandacamargo@grpcom.com.br,Sociedade Rádio Emissora Paranaense S.A.,1
+ELIELSON LIMA DA SILVA,elielson@polotest.com.br,"MCEND INSPEÇÕES, CONSULTORIA E CONTROLE DE QUALDIADE",1
+Golden Maq,assistencia@goldenmaq.com.br,GOLDEN MAQ COMERCIAL IMPORTADORA DE MAQUINAS LTDA,1
+alexsandro Cazuza da Silva,anabsilveira@terra.com.br,ANA PAULA BORGES DA SILVEIRA EPP,1
+Maria Luiza De Oliveira Motta,luiza.motta@cedae.com.br,CEDAE ANO 2021,1
+LUCIANO SILVA DE SOUZA,lucianosousa@cedae.com.br,CEDAE ANO 2021,1
+Munique Dutra,dutramunique@gmail.com,Lucilia Helena Tokar Dutra,1
+Adriane Kadanus Dobgynski,rhfini@geroma.com.br,GEROMA DO BRASIL IND COM LTDA,1
+Luiz,admiciabrap@yahoo.com.br,Cia Brap treinamentos,1
+Andreza Vieira,andrezaa.vieira@gestaogps.com.br,GOL SEGURANCA E VIGILANCIA LTDA,1
+Paulo Gomes,contasapagar@mynarski.com,Mynarski International Valuation,1
+Emanuelle Livramento,emanuelle.moraes@constanta.com.br,CONSTANTA Industrial Ltda _ EMANUELLE,1
+Emanuelle Livramento,emanuelle.moraes@constanta.com.br,CONSTANTA Industrial Ltda,1
+Ana Carolina Silva,anasilva@grpcom.com.br,Editora Gazeta do Povo S.A,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Editora Gazeta do Povo S.A,1
+Ana Carolina Silva,anasilva@grpcom.com.br,Editora O Estado do Paraná S.A,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Editora O Estado do Paraná S.A,1
+Ana Carolina Silva,anasilva@grpcom.com.br,TV Oeste do Paraná Ltda. - Filial,1
+Claudia Faria Araujo,claudia.fariaaraujo@avon.com,Avon Industrial Ltda,1
+Ana Lemos,ana.cruz@gestaogps.com.br,TOP SERVICE SERVICOS E SISTEMAS S/A,1
+PATRICIA BERTIN,rh@eurostec.com.br,EUROSTEC,1
+NATÁLIA DE OLIVEIRA SILVA,natalia.silva@gruppoab.com,AB ENERGY DO BRASIL LTDA,1
+Barbara,barbaraa@cetrel.com.br,CETREL S.A.,1
+Bianca Testoni,bianca@genesispre.com.br,Genesis Indústria de Pré Moldados de Cimento LTDA,1
+FMC CENTER CAR LTDA,financeirocavw@viacometa.com.br,70.487.921/0001-06,1
+Orion,tatiane.rodrigues@orionvet.com.br,Orion Nutricao Animal Ltda,1
+Beatriz Drummond Pinto Dantas,beatriz.dantas@terceirosuni.com.br,UNIDADE 389,1
+Mônica,vendas22@brasilpostos.com.br,Brasil Postos Comércio de Máquinas e Equipamentos Ltda,1
+Fabio Souza de Almeida,fabio@assertiva-br.com,"ASSERTIVA - SOLUÇÕES, MANUTENÇÃO PREDITIVA, COMERCIO DE EQUIPAMENTOS E ACESSORIOS LTDA",1
+Milena Barboza Giardiello,milena.giardiello@unimed.coop.br,UNIDADE FESP,1
+Michele Weigel,qualidade@villare.com.br,Villare Gastronomia Empresarial Ltda,1
+CRISTIANE DA SILVA,rh.br@vanhessen.com,VAN HESSEN BRAZIL IND E COM DE ALIMENTOS LTDA,1
+SILVIA MARIA DE CAMPOS,silvia.campos@vanhessen.com,VAN HESSEN BRAZIL IND E COM DE ALIMENTOS LTDA,1
+Paulo Gomes,contasapagar@mynarski.com,Mynarski International Valuation Ltda,1
+Thamiris Barbosa Simões Sueiro,thamiris.sueiro@unigel.com.br,Proquigel Química S/A,1
+Gustavo Ciarallo,gustavo.ciarallo@cienp.org.br,CENTRO DE INOVAÇÃO E ENSAIOS PRÉ-CLÍNICOS,1
+Lucas de Araujo Manoel,lucas.manoel@venergia.com.br,Votorantim Geração de Energia S.A.,1
+Ana Claudete Ferreira,rh@fpf.br,Fundação Amazônica de Amparo a Pesquisa e Desenvolvimento Tecnológico Desembargador Paulo dos Anjos Feitosa,1
+Ana Ferreira,ana.ferreira@fpf.br,Fundação Amazônica de Amparo a Pesquisa e Desenvolvimento Tecnológico Desembargador Paulo dos Anjos Feitosa,1
+Jheniffer Marques,jheniffer.marques@ecogenbrasil.com.br,GTW GERACAO E SERVIÇOS LTDA,1
+Miqueline Neves Carvalho dos Santos,miqueline.carvalho@unigel.com.br,Proquigel Química SA,1
+Beatriz Drummond Pinto Dantas,beatriz.dantas@terceirosuni.com.br,Proquigel Química SA,1
+Karina Luzia Lins Vieira,karina.vieira@unigel.com.br,Proquigel Química SA,1
+Rebeca Dantas dos Santos Trigo,rebeca.trigo@unigel.com.br,Proquigel Química SA,1
+VANIA R PALODETO,acti_nfe@hotmail.com,ACTI DESENVOLVIMENTO DE SISTEMAS S/S LTDA,1
+LUCILENE PERIN,lucilene.perin@arneg.com.br,ARNEG BRASIL LTDA,1
+Pedro Funchal Teixeira,supervisao@grupoellorh.com.br,ELLOS SERVIÇOS E LOCAÇÕES LTDA,1
+Andre Ricardo A Carneiro,versatilemobiliario@gmail.com,Versatile Serviços de Móveis Planejados Eireli,1
+Pricila Gomes Cordeiro,pricila.cordeiro@forseq.com.br,Forseq Industria e Comércio de Maquinas Industriais,1
+Rossana Pelisser,rossanapelisser@gmail.com,Efeito Luz Iluminação Ltda,1
+Simone Cristina,cdpcbasecretaria@gmail.com,MCC - Centro de desenvolvimento profissional,1
+Breno Silva,breno.silva@recursus.com,Recursus Engenharia,1
+Victor Felipe da Silva,victor.felipe@manserv.com.br,MANSERV FACILITIES - 0001 SÃO CAETANO DO SUL SP,1
+WILLIAN DA SILVA FILHO,willian.d.silva@manserv.com.br,MANSERV FACILITIES - 0001 SÃO CAETANO DO SUL SP,1
+Rafael Leopoldo Batista,rafael.leopoldo@manserv.com.br,MANSERV FACILITIES - 0001 SÃO CAETANO DO SUL SP,1
+Maria Aparecida Sena Soaresa,mariaaparecidasenasoares@gmail.com,L.A Materias Elétricos e Reciclagem Ltda,1
+Claire Baccin Penso,claire@unc.br,FUNDAÇÃO UNIVERSIDADE DO CONTESTADO- FUNC,1
+Alessandra Wagner Jusviacky,alessandraw@unc.br,FUNDAÇÃO UNIVERSIDADE DO CONTESTADO- FUNC,1
+Debora Matheus,fstecnologia07@gmail.com,Fstecnologia Ltda,1
+RODRIGO ALVARENGA,rodrigo@samsungbh.com.br,BKV EXPRESS ASSISTENCIA TECNICA EIRELLI,1
+Vanessa Lima Pires,administrativo@mekatronik.com.br,MEKATORNIK IND E COM DE AUTOMAÇÃO LTDA,1
+Vitória,rh@mksintegridade.com,MKS SERVICOS ESPECIAIS DE ENGENHARIA LTDA,1
+BRUNA DE OLIVA AMBROSI,bruna@engepack.com.br,Engepack Embalagens São Paulo S/A,1
+MARTA MIRANDA DEL SANTO,samara.rosa@viacometa.com.br,Cometa Serviços De Assessoria E Consultoria Empresarial LTDA,1
+Vanessa Lima Pires,administrativo@mekatronik.com.br,MEKATORNIK IND E COM DE AUTOMAMAÇÃO LTDA,1
+Silvia Ivonete Mausolf Fortes,patrick.adm@lyonveiculos.com.br,CARWAY SUL VEÍCULOS,1
+Wilson Nogueira,divers@diversuniversity.com.br,D.U Service Offshore,1
+EVERTON GIROTTO,everton@girottologistica.com,GF BUE LOGISTICA LTDA,1
+Leandro Dorea,leandrodoreaype@yahoo.com.br,Kofre Tecnologia,1
+Sheila Regina Decco,sheila@mitspieler.com.br,Mitspieler Serviços e Representações Ltda,1
+LUCILENE PERIN,michele.strasser@arneg.com.br,ARNEG BRASIL LTDA,1
+Ariela Félix da Silva,ariela.silva@samaritano.com.br,ESHO EMPRESA DE SERVIÇOS HOSPITALARES S.A,1
+Andre Vinicius,andre.pereira@npegroup.com.br,NPE SERVIÇE MANUTENÇÃO E MONTAGEM LTDA,1
+Eduardo Serrão Neves Leal,eduardo.serrao@copapa.com.br,COPAPA CIA PADUANA DE PAPEIS DEFINITIVA,1
+Hiago Lima,hiago.lima@copapa.com.br,COPAPA CIA PADUANA DE PAPEIS DEFINITIVA,1
+Francini,francini@mksintegridade.com,MKS SERVICOS ESPECIAIS DE ENGENHARIA LTDA,1
+Francine,francineleao@mksintegridade.com,MKS SERVICOS ESPECIAIS DE ENGENHARIA LTDA,1
+Rodrigo Collaço Gusso,compras@oakmontgroup.com.br,Advanta Sistemas de Telecom. e Serviçosde Informática Ltda,1
+Júnior Cesar,junior.santos@valedoparana.com.br,VALE DO PARANA S/A ALCOOL E ACUCAR,1
+Mirele Viviane Moura Chiqueto,mirele.chiqueto@valedoparana.com.br,VALE DO PARANA S/A ALCOOL E ACUCAR,1
+Felipe,felipe.a.silva@thyssenkrupp.com,Thyssenkrupp Brasil Ltda,1
+NICOLLI,nicolli.mendes@servsul.com.br,SERVSUL,1
+Renata Feiteiro Batista Ramos,renata.ramos@ceva.com,Ceva Saúde Animal Ltda,1
+Maiara,compras@neogrid.com,Neogrid Informática LTDA,1
+Bruno de Souza,bruno@embpauli.com.br,Emablagens Paulicea,1
+Eduardo Chamizo,compras@embpauli.com.br,Emablagens Paulicea,1
+Marco Antonio Soares Jesser,eliane.anjos@haarslev.com,Haarslev Industries Ltda.,1
+NVT CATERING LTDA,nvt@unicater.com.br,NVT CATERING LTDA,1
+Daniel Paulo Cunha Santiago,daniel.santiago@deca.com.br,DURATEX S.A,1
+REJANE ARAUJO DA SILVA,rejanesilva@kofre.com.br,Kofre Tecnologia,1
+RUANY TALITA CAETANO ESTANGUII,ruany.caetano@apecatus.com,CORTEVA AGRISCIENCE DO BRASIL LTDA,1
+Debora,deborah.milagres@brasilgtw.com.br,GTW GERACAO E SERVIÇOS LTDA,1
+DIEGO DE SOUZA ALMEIDA,diego.almeida@viacometa.com.br,COMETA MATO GROSSO COMERCIO DE VEICULOS LTDA,1
+Gilvandro Neto,operacaofor@jwsaraiva.com.br,Saraiva Comercio de Combustiveis LTDA,1
+Andressa Batista,admssa@jwsaraiva.com.br,Saraiva Comercio de Combustiveis LTDA,1
+Bruna Voltolini,bruna.voltolini@sebsa.com.br,COC de Florianópolis/São José - SEB SISTEMA EDUCACIONAL BRASILEIRO,1
+Guilherme Vasconcelos Osório,guilherme.v.o.91@gmail.com,Guilherme Vasconcelos Osório,1
+Caroline,caroline.geraldini@grupogera.com,"GERAR SERVIÇOS DE ENGENHARIA, OPERAÇÃO E MANUTENÇÃO LTDA",1
+Cesar Wruch,cesar.wruch@randstad.com.br,RANDSTAD BRASIL RECURSOS HUMANOS LTDA,1
+FILIPE O MATTOS,tottal.sinal@gmail.com,TOTTAL SINALIZAÇÃO LTDA,1
+Christiane Ronchi da Silva Gomes,cronchi@iguacu.com.br,IGUAÇUMEC ELETROMECANICA LTDA,1
+Michele Marques,michele@tecnoperfilaluminio.com.br,ZINCOLOR TRATAMENTO DE METAIS LTDA,1
+Marcelo Martin,compras@ab5.com.br,Ab5 Ind e Com Ltda.,1
+viviane,viviane@ab5.com.br,Ab5 Ind e Com Ltda.,1
+Miqueline Neves Carvalho dos Santos,miqueline.carvalho@unigel.com.br,Proquigel Quimica S.A. - Filial,1
+Danielle Prata,danielle.prata@unigel.com.br,Proquigel Quimica S.A. - Filial,1
+Karina Luzia Lins Vieira,karina.vieira@unigel.com.br,Proquigel Quimica S.A. - Filial,1
+Rebeca Dantas dos Santos Trigo,rebeca.trigo@unigel.com.br,Proquigel Quimica S.A. - Filial,1
+Bruno Carvalhal,bruno@cachoeiradofagundes.com,ASSET ALLOCATION ASSESSORIA E PARTICIPACOES S.A.,1
+ANGELINA TAYNAH DA ROCHA MARCELINO,angelina.marcelino@viacometa.com.br,COMETA MOTOCENTER LTDA,1
+Jocassia Bier Leguissimo,glinoxpf@gmail.com,Gustavo Oliveira Leguissimo ME,1
+MATHEUS GOBATTI DO NASCIMENTO,giovanna@mecsulcompressores.com.br,MEC SUL COMPRESSORES,1
+Rosangela,contato@analubi.com.br,ANA LUBI DECORAÇÕES,1
+Rafaela Nayara Simeão Pelegrini,rpel893@users.noreply.betaeducacao.com.br,MANN+HUMMEL BRASIL LTDA,1
+Dayane Cirino Costa Lourenço,Dayane.Lourenco@mann-hummel.com,MANN+HUMMEL BRASIL LTDA,1
+Maynara Santos,nathalia.soares@mann-hummel.com,MANN+HUMMEL BRASIL LTDA,1
+Adriana Firmino,adriana.firmino@venco-csti.com.br,Fixconsulting Consultoria e Serviços de TI Ltda,1
+Diego Silva,financeiro@mrtech.med.br,MR TECH SERVICO TECNICO DE MANUT EM APAREL ELETROMEDIC LTDA,1
+Eduardo Godinho,eduardo.godinho@bailac.com.br,BAILAC,1
+ENIO,faturamento@soultec.com.br,SOULTEC IMPORTAÇÃO E COMERCIO LTDA,1
+DAVID BARBOSA TORRES,gislaine.silva@viacometa.com.br,ALTA FLORESTA MOTOS LTDA,1
+Gislaine,Gislaine.Coelho@swirees.com,SWIRE OILFIELD SERVICES DO BRASIL LTDA,1
+MARCELO RAMIRES MARICAUA,marcelo.ramires@viacometa.com.br,COMETA AMZIONIA MOTOS LTDA,1
+GENIVAL LIMA DO NASCIMENTO,maria.oliveira@viacometa.com.br,COMETA AMAZONIA MOTOS LTDA,1
+Gersica Viana Ribeiro,gvi@flodim.com.br,FLODIM DO BRASIL LTDA,1
+ELTON MACIEL DOS SANTOS,juliana.oliveira@viacometa.com.br,MOTOS MATO GROSSO LTDA,1
+Thais Rhein,compras@blackbox.com,Black box do Brasil,1
+Talita Christine Horita dos Santos,talita.santos@blackbox.com,Black box do Brasil,1
+GISELE ALMEIDA,gisele.almeida@blackbox.com,Black box do Brasil,1
+CINTHIA TERRA,cinthia@assertiva-br.com,Assertiva - Soluções Preditiva,1
+PEDRO ABREU BASTOS,pedro.bastos@lonjastec.com.br,LONJAS TECNOLOGIA ENERGIA E MEIO AMBITENTE LTDA,1
+PEDRO ABREU BASTOS,fiscal@lonjastec.com.br,LONJAS TECNOLOGIA ENERGIA E MEIO AMBITENTE LTDA,1
+MARCELA GONTIJO DE VARGAS CONFORTI,gerh@riominasservicos.com.br,RIO MINAS TERCEIRIZAÇÃO E ADM DE SERVIÇOS,1
+Rosangela Feliciano,administrativo@smart.emp.br,SMART Limpeza e Jardinagem Ltda,1
+TamirIs Torres,tamiris.torres@brasilgtw.com.br,ENERSERV OPERACAO E MANUTENCAO DE EQUIPAMENTOS LTDA,1
+Marcelo Augusto Bernardo,marcelo.bernardo@marsh.com,Marsh GSC Corretagem e Administracao de Seguros Ltda,1
+ANDERSON SCHNEKEMERG,comercial@projetosinteligento.com.br,INTELIGENTO INSTALACOES DE MAQUINAS E EQUIPAMENTOS INDUSTRIAIS LTDA,1
+Caique de Araujo Dias,caique.dias@efort.org.br,Instituto Efort,1
+Euri Emere Ribeiro Vieira,mettambiental@gmail.com,METTA AMBIENTAL LTDA - ME,1
+FRANCISCO ANTONIO BERREZA,consulplan.valenca@gmail.com,F A BEZERRA CONSTRUÇÕES ME,1
+Thalita Lourenço Pereira,thalita.pereira@ecopistas.com.br,ECOPISTAS,1
+Flavio da Silva Querino,flavio.querino@thecrosbygroup.com,Gunnebo Industries PMC LTDA,1
+Jaqueline,jaqueline.salomao@pdcbrasil.com.br,PROCESS DEVELOPMENT CORPORATION DO BRASIL LTDA.,1
+Michelle Silva,compras@pdcbrasil.com.br,PROCESS DEVELOPMENT CORPORATION DO BRASIL LTDA.,1
+FABIO MERIGIOLLI,cnatalseg@gmail.com,CNATAL SEGURANÇA DO TRABALHO,1
+Marcia Lacerda,marcia@marpie.com.br,Piemar Instalaçoes e Construçoes Ltda,1
+Fernanda Veiga Soares,fernandaveiga@fitzroy.com.br,Fernanda Veiga Soares,1
+Juliana Garcia Fruteiro Pereira,garciafruteiroj@gmail.com,MEDICINA E SEGURANÇA DO TRABALHO ICSE,1
+DAVI CAMPOS DE ANDRADE,daviandradeefraim@gmail.co,Efraim Obras de Engenharia Civil Eireli,0
+Davi Campos de Andrade,daviandradeefraim@gmail.com,Efraim Obras de Engenharia Civil Eireli,1
+Aline Procheira,compras@attos.ind.br,Attos Serviços de Alimentação Ltda,1
+Thais Santos,thais.santos@fitesa.com,FITESA BRASIL INDÚSTRIA DE PLÁSTICOS LTDA,1
+Robson Alves Fonseca,robson.fonseca@eco101.com.br,ECO101 CONCESSIONARIA RODOVIAS S/A,1
+Rodrigo Cezar Mululo Laino De Alencar,rodrigo.alencar@ecoponte.com.br,Concessionária Ponte Rio-Niterói S/A – Ecoponte,1
+Adjane.Silva@ecovias.com.br,Adjane.Silva@ecovias.com.br,CONCESSIONARIA ROD. AYRTON SENNA CARV. PINTO S.A,1
+Meirielly,meirielly.ferreira@3cservices.com.br,3C Services S.A.,1
+RENATO BARBIERO,financeiro@radioscan.com.br,RADIOSCAN TELECOM,1
+CLAUDIA BARBIERO,nfe@radioscan.com.br,GENIR BILIA ME,1
+Diego Leite,diego.leite@camargoesata.com.br,T FREITAS SUZUKI EIRELI,1
+Fabio Oliveira,caroline.giazzoni@grupocarboni.com.br,Carboni Distribuidora de Veículos Ltda,1
+BECKHAUSER INDUSTRIA E COMERCIO DE MALHAS LTDA,sabrina.fernandes@beckhausermalhas.com.br,BECKHAUSER INDUSTRIA E COMERCIO DE MALHAS LTDA,1
+Carolina Sampaio Brito Duarte,posto_guaiba@hotmail.com,RIO REAL DERIVADOS PETROLEO LTDA,1
+Monica Pietscher,financeiro@trameap.com.br,"AUDIO PADRAO DIAGNOSTICO, SAUDE E SEGURANCA OCUPACIONAL LTDA.",1
+Ramsés Watson Pereira,compras@ipdjjanini.com.br,DIAGNOSTICA LTDA,1
+Maria Mariana Faria,mariana@mmcengenharia.com,MMC ENGENHARIA,1
+Integra Serviço E Comercio Ltda,atendimento@squadraconsultoria.com.br,Integra serviço e comércio Ltda,0
+Gabriel Peris Maciel,lucia.sieczkowski@integra-engenharia.com,Integra serviço e comércio Ltda,1
+FRANCISCO ALECIO WAN DALL FILHO,rotagas@terra.com.br,SAGATOR COMÉRCIO DE GÁS LTDA,1
+Stefani Caparroz,scaparroz@id-logistics.com.br,ID DO BRASIL LOGISTICA LTDA,1
+Rafael de Oliveira Silva,rafael.o.silva@animaeducacao.com.br,IEDUC - INSTITUTO DE EDUCACAO E CULTURA S/A,1
+VITOR HUNG,financeiroyftrading@gmail.com,DSH DISTRIBUIDORA DE COSMETICOS EIRELI,1
+Clecio Dergam,rhlinhares@fibracem.com,FIBRACEM TELEINFORMATICA LTDA,1
+Suzinkelli Aparecida Morinigo Marcolino,sup.seguranca@fibracem.com,FIBRACEM TELEINFORMATICA LTDA,1
+Stephany Areco Gois,segurancadotrabalho@fibracem.com,FIBRACEM TELEINFORMATICA LTDA,1
+Wescley,seguranca.linhares@fibracem.com,FIBRACEM TELEINFORMATICA LTDA,1
+Amanda Scarello,amanda.scarello@group-indigo.com,Hospital Cárdio Pulmonar,1
+Paula Carvalho,paula.carvalho@basf.com,BASF S.A - JABOATÃO,1
+Lucas Melo Zurita Leao,11196877483@users.noreply.betaeducacao.com.br,BASF S.A - JABOATÃO,1
+Anthony Manon Abba Pizaia,anthonyp@grpcom.com.br,TV Oeste do Paraná Ltda,1
+Ingrid Silva,ingrid.silva@mail.mbcc-group.com,Master Builders Solutions Brasil,1
+RODRIGO MORI DELGADO,rodrigo.delgado@basf.com,BASF - Morumbi,1
+Katia Maria Mandu Draber,katia.draber@basf.com,BASF - Morumbi,1
+Juliane Da Silva Ranna,juliane.a.ranna@basf.com,BASF GUARATINGUETÁ,1
+Cristiane Rodrigues,cristiane.rodrigues@nsc.com.br,NC Comunicações SA,1
+Katia Maria Mandu Draber,katia.draber@basf.com,BASF - Jacareí,1
+José Lopes Camargos Neto,contatoeletrico2017@gmail.com,José Lopes Camargos Neto ME,1
+Rosiane Martins da Paz,rosiane.paz@manserv.com.br,MANSERV FACILITIES - 0007 NOVA LIMA MG,1
+Deborah Souza Carvalho,deborah.carvalho@manserv.com.br,MANSERV FACILITIES - 0007 NOVA LIMA MG,1
+ALEXSANDRO DE SOUZA,alexsandro.souza@hexagon.com,ARVUS TECNOLOGIA LTDA,1
+Andréa Maria da Cruz Silva,andrea.silva@mills.com.br,MILLS ESTRUTURAS E SERVICOS DE ENGENHARIA S/A,1
+Andreia Freire,andreia.freire@basf.com,BASF SA,1
+VALDEMAR,compras@montesiaoplasticos.com.br,MONTE SIÃO PLASTICOS,1
+1SG-MR Nilson Rodrigues de Sousa,sousa.rodrigues@marinha.mil.br,Comando do Grupamento de Patrulha Naval do Sul,1
+Joyce Marcelia Cristina Gomes,jmgomes.angels@tbg.com.br,TRANSPORTADORA BRASILEIRA GASODUTO BOLÍVIA BRASIL S.A.,1
+VANESSA LIMA,administrtivo@mekatronik.com.br,MEKATRONIK IND E COM. DE AUTOMAÇÃO LTDA,1
+Danilo Sabino,adm3@mekatronik.com.br,MEKATRONIK IND E COM. DE AUTOMAÇÃO LTDA,1
+LIGIA,gestaoopr@jwsaraiva.com.br,JW SARAIVA E CIA LTDA,1
+Silvia Cristina Pereira Forte,silviaf@grpcom.com.br,Sociedade Rádio Emissora Paranaense S.A.,1
+KATIELLY FONSECA,fonseca@grupoandradegarcia.com.br,ANDRADE E GARCIA COMERCIO E REPRESENTAÇÕES LTDA,1
+Flávia P. Corrêa,fluxo@cyber.com.br,Fluxo Transformadores e Motores,1
+Ronaldo Campos,ronaldo@acrtecnologia.srv.br,ACR TECNOLOGIA E SERVIÇOS LTDA,1
+Fabiana Rabelo,frabelo@sescamapa.com.br,SERVIÇO SOCIAL DO COMERCIO-DR/AMAPÁ,1
+Vagner Xavier Alves,sst@limport.com.br,Portlimp cOMÉRCIO E serviços Ltda,1
+Carina Falvo,financeiro@autroma.ind.br,AUTROMA Máquinas e Automações Ltda - ME,1
+Ariela Félix da Silva,ariela.silva@samaritano.com.br,UH SAMARITANO SP,1
+Aline Borba da Silva,admproducao@rkferramentaria.com.br,RK Ferramentaria,1
+GUSTAVO VALADARES GONTIJO,contasapagar.tfa@tfaplantio.com.br,WG SINTERIZAÇAO LTDA,1
+Gustavo,awgsinterizacao@gmail.com,WG SINTERIZAÇAO LTDA,1
+Giliane Rosa,giliane.rosa@soscardio.com.br,SOS Cardio Serviços Hospitalares,1
+Tiago Carvalho,polotest@polotest.com.br,MCEDN INSPEÇÕES CONSULTORIA E CONTROLE DE QUALIDADE,1
+Hudson,hudson.diniz@hotmail.com,Hudson Fernando Diniz Silva & Cia Ltda,1
+Hudson Fernando Diniz Silva,hudson.diniz@tractusengenharia.com.br,Hudson Fernando Diniz Silva & Cia Ltda,1
+Altemis Silva,altemiis.silva@basf.com,BASF S.A - Indaiatuba-CC,1
+Romulo Gomes manfrin,romulorgm@gmail.com,Atacarejo da fábrica cruzeiro,1
+Marjorie Bezerra,marjorie.bezerra@phxslag.com,PHOENIX DO PECEM,1
+Condominio Office House,officehouse@officehouse.com.br,Condominio Office House,1
+Fernanda Tavares,qualidade@metalfoto.com.br,Metalfoto,1
+Athila Pedroso,athila.pedroso@copobras.com.br,COPOBRAS S/A IND. E COM. DE EMBALAGENS,1
+Sandra Cruz,financeiro@qpack.com.br,QPack Soluções Analíticas Ltda.,1
+LUCIANO DO VALLE SABOIA,contato@criadourooncapintada.org.br,ASSOCIAÇÃO DE PESQUIESA E CONSERVAÇÃO DA VIDA SILVESTRE,1
+Felipe Lourenço,felipe.lourenco@brasilgtw.com.br,ENERSERV OPERACAO E MANUTENCAO DE EQUIPAMENTOS LTDA,1
+JOÃO RAFAEL CANDIDO DE SOUZA,financeiro@protege.bio.br,PROTEGE CONTROLE DE PRAGAS,1
+FABRICIO DE OLIVEIRA LOPES,patrick070696@gmail.com,COMETA MTO GROSSO COMERCIO DE VEICULOS LTDA,1
+Gabriel Weiss Maciel,gabriel.maciel@ibge.gov.br,Fundação Instituto Brasileiro de Geografia e Estatística,1
+Julio Cesar da Silva Soares,j.cesar@royalihc.com,IHC do Brasil Serviços Técnicos e de Engenharia Ltda,1
+Amanda Cordeiro Damasceno,a.damasceno@royalihc.com,IHC do Brasil Serviços Técnicos e de Engenharia Ltda,1
+Marlos Salles Bianna,mbi.bianna@royalihc.com,IHC do Brasil Serviços Técnicos e de Engenharia Ltda,1
+Thais Skuratovski Araujo,t.araujo@royalihc.com,IHC do Brasil Serviços Técnicos e de Engenharia Ltda,1
+Marcilene Penha de Jesus,deiverson@asperqd.org.br,Associação dos Pescadores e Extrativistas e Remanescentes de Quilombo de Degredo,1
+ELISANGELA MARTINS DO REGO,elisangelamartins@alimentoswilson.com.br,ALIMENTOS WILSON LTDA,1
+Luciana Couto Leite,lucianacoutoleite@gmail.com,L&P alimentação comercial ltda,1
+Markivani Perondi,rh@lp3internet.com.br,LP3 Serviços de Internet Ltda,1
+Ursula Bernardes Gandra da Cruz,bernardesgandra@gmail.com,BERNARDES & GANDRA SOLUCOES INDUSTRIAL - EIRELI,1
+Rosangela Maria de Jesus Lage,thiago.dias@genyx.com.br,GENYX SOLAR COMERCIO LTDA,1
+Tiago Morais,htnnatalia@gmail.com,NGP Inspeções e Montagens Industriais Eireli,1
+Wendel,wendell.heinzl@fanucfa.com,FANUC SOUTH AMERICA EQUIPAMENTOS DE AUTOMACAO E SERV. LTDA,1
+Leticia Ozorio,leticia.ozorio@infotecbrasil.com.br,Infotec Brasil,1
+ALINE DENISE GERHARDT,gabriela.duarte@pfiffner.com.br,PFIFFNER DO BRASIL,1
+Valdir Soares,valdir.soares@pfiffner.com.br,PFIFFNER DO BRASIL,1
+MARLON DIOGO BONIN,contato@enelt.com.br,ENELT MATERIAIS LTDA,1
+EDUARDO BARRELLA MARTIN,compras@emamsolucoes.com.br,EMAM SOLUÇÕES LTDA,1
+Priscila Samara de Queiroz Medeiros,teslaenergia@teslasuaenergia.com.br,TESLA ENERGIA CONSULTORIA E SERVIÇOS LTDA,1
+JOSEMEIRE,josemeire.nascimento@antaresvision.com,ANTARES VISION DO BRASIL,1
+Gustavo Hoffmann,gustavo.hoffmann@elitetrade.com.br,Elite Trade Importação e Exportação Ltda,1
+ROSANGELA DRESCH,financeiro1@goldenmaq.com.br,GOLDEN MAQ COMERCIAL IMPORTADORA DE MAQUINAS LTDA,1
+Verônica Girardello,veronica@lgmanutencao.com.br,LG Montagem Serralheria e Manutenção Industrial LTDA,1
+FMC CENTER CAR LTDA,lucia.nunes@viacometa.com.br,70.487.921/0001-06,1
+MARMORARIA DONA ADELIA LTDA ME,marmorariadonadelia@hotmail.com,Marmorariadonadelia@hotmail.com,1
+Mário M. Pereira,danillo@procad.eng.br,Procad Engenharia Ltda,1
+MAURO,luccas.lopes@hytorcsaopaulo.com.br,HYTORC SÃO PAULO,1
+Mirlane Robério,mirlaneroberio@hotmail.com,Climed Clínica Médica de Saúde Ltda.,1
+Reginaldo Santos,dp@provider-it.com.br,C&V CONSULTORIA LTDA,1
+ANDREA LILIAN PAVAN SANTOS,karina@asconnet.com.br,GROUPSERV SERVIÇOS CONTÁBEIS LTDA,1
+Jocinei Darui,rh@freitag.com.br,Freitag Laboratórios,1
+Jessica Maia,jessica.maia@pedraagroindustrial.com.br,PEDRA AGROINDUSTRIAL S/A,1
+Aline Fortuna,aline.fortuna@gpssa.com.br,IN-HAUS INDUSTRIAL E SERVICOS DE LOGISTICA LTDA,1
+DELMO ENEIAS MENDES,comercial@tdmpreditiva.com.br,"TDM INSPEÇÃO PREDITIVA, ENGENHARIA E MANUTENÇÃO",1
+Priscila Borges,rh@autogeradora.com,AUTOGERADORA COMERC. E LOCAÇÃO,1
+JANICE BALDEZ BATISTA,janice.batista@ecosul.com.br,Empresa Concessionária de Rodovias do Sul – Ecosul,1
+ZUMPNET,eduardozumpnet@gmail.com,SPEAKERS PROJETO E EXECUÇÕES EM AUDIO LTDA,1
+JULIA RONIZE COSTA DE CAMPOS,juliac.95@hotmail.com,SPEAKERS PROJETO E EXECUÇÕES EM AUDIO LTDA,1
+Jeová Lira,jlira@id-logistics.com.br,ID DO BRASIL LOGISTICA LTDA,1
+Amilton Pereira de Matos,thais@climaseg.com.br,Climaseg Ambiental Ltda,1
+Marciano Joao maria da Silva,mstelecom.lancamentos@outlook.com,MS Telecom,1
+erlon antonio resende,erlon.resende@campello.com.br,Campello Inovação e Tecnologia em Ti Eireli,1
+Flávia Paim,flavia@engepack.com.br,Engepack Embalagens São Paulo S/A,1
+Lucicleia,lucicleia@weg.net,G Drives & Controls - 1321 -1013 - WDC - Itajaí,1
+Marcia Thais Leal,teresa.mesquita@sdredes.com.br,SdRedes Segurança de Redes LTDA,1
+PAULO ROGERIO DE LIMA PEREIRA,paulo.rogerio@eritel.com.br,ERITEL TELECOMUNICAÇOES LTDA,1
+SILVIO RINCON,joice.couto@basecientifica.com.br,BASE CIENTIFICA COMÉRCIO E SERVIÇOS LABORATORIAIS LTDA,1
+JOICE COUTO,administrativo@basecientifica.com.br,BASE CIENTIFICA COMÉRCIO E SERVIÇOS LABORATORIAIS LTDA,1
+Maria Rita Porfirio de Souza,rh@rotiv.com.br,Hiraco Produtos Siderurgicos Importacao e Exportacao Ltda.,1
+Mauricio da Silva Oliveira,mauroliveira@uhgbrasil.com.br,HOSPITAL ALVORADA,1
+Cristian Da Silva Santos,cs.santos@grupounimetal.com.br,UNIMETAL SAO VICENTE INDUSTRIA COMERCIO E EMP LTDA,1
+Almir Dadalto,adadalto@alltech.com,ALLTECH DO BRASIL AGROINDUSTRIAL LTDA,1
+Cristiane Rodrigues,cristiane.rodrigues@nsc.com.br,NSC Comunicações,1
+Lourdes Silveira,lourdes.silveira@acco.com,ACCO BRANDS BRASIL LTDA,1
+Simone Maria da Silva Freitas,financeiro@centrosul.net,CONSÓRCIO MAGNO MARTINS ENGENHARIA LTDA E ETECOL CONSTRUÇÃO LTDA,1
+PAULO SANTOS,paulo.santos@vinilengenharia.com.br,VINIL GESTAO E FACILITIES LTDA,1
+Hamilton Cesar Chambrone,hamilton@pcp.eng.br,PCP Engenharia e Comércio Ltda,1
+Kely da Silva Farneth,kely.farneth@ecoriominas.com.br,ECORIOMINAS CONCESSIONÁRIA DE RODOVIAS S.A,1
+Marcelo P. dos Santos Barroso,tecseguranca.ba@novacasadistribuidora.com.br,Nova Casa Distribuidora,1
+Deborah Souza Carvalho,deborah.carvalho@manserv.com.br,LSI ADMINISTRACAO E SERVICOS S/A(Manserv),1
+DAIANA TAMARA DE SOUZA,daiana.souza@cscenergia.com.br,BAESA-ENERGETICA BARRA GRANDE S/A,1
+DAIANA TAMARA DE SOUZA,daiana.souza@cscenergia.com.br,CAMPOS NOVOS ENERGIA S.A.,1
+Cassia Araujo dos Santos,rhjacobina@gmail.com,WN Facilities Serviços e Soluções,1
+Lucilia Fernandes,lucilia.fernandes@eleaedge.com,ELEA DIGITAL INFRAESTRUTURA E REDES DE TELECOMUNICACOES S.A. - RJ - MATRIZ,1
+Cora Braga,cora.nogueira@eleaedge.com,ELEA DIGITAL INFRAESTRUTURA E REDES DE TELECOMUNICACOES S.A. - RJ - MATRIZ,1
+Luciano Silva,luciano.silva@pauliniaverde.com.br,UTE PAULINIA VERDE S. A.,1
\ No newline at end of file
diff --git a/users-events/tests/samples/users.csv b/users-events/tests/samples/users.csv
new file mode 100644
index 0000000..e8b21cd
--- /dev/null
+++ b/users-events/tests/samples/users.csv
@@ -0,0 +1,28 @@
+CADASTRO DE COLABORADOR,,,,
+,NOME COMPLETO,EMAIL (letra minúscula),CPF,TREINAMENTO
+,ANDRE HENRIQUE LOPES ZAFALON,henrique.zafalon@fanucamerica.com,261.955.138-22,NR-35 (RECICLAGEM)
+,SERGIO DA SILVA CUPERTINO,sergio.cupertino@fanucamerica.com,066.945.708-64,NR-10 (RECICLAGEM)
+,SERGIO DA SILVA CUPERTINO,sergio.cupertino@fanucamerica.com,066.945.708-64,NR-35 (RECICLAGEM)
+,ROVANE CAMPOS,rovane.campos@fanucamerica.com,095.958.578-82,NR-10 (RECICLAGEM)
+,ROVANE CAMPOS,rovane.campos@fanucamerica.com,095.958.578-82,NR-35 (RECICLAGEM)
+,MARCIO ATSUSHI KANEKO MASUDA,marcio.masuda@fanucamerica.com,293.042.798-10,NR-10 (RECICLAGEM)
+,FABIO AKIRA HARAGUCHI,fabio.haraguchi@fanucamerica.com,287.018.428-03,NR-10 (RECICLAGEM)
+,EMIDIO YOITI MOCHIZUKI,emidio.mochizuki@fanucamerica.com,268.579.208-26,NR-10 (RECICLAGEM)
+,EMIDIO YOITI MOCHIZUKI,emidio.mochizuki@fanucamerica.com,268.579.208-26,NR-35 (RECICLAGEM)
+,ERIC HIDEKI MORIKIO,eric.morikio@fanucamerica.com,417.359.838-61,NR-10 (RECICLAGEM)
+,HENRIQUE DE FIGUEIREDO BASTOS FERRAZ,henrique.ferraz@fanucamerica.com,417.059.788-51,NR-10 (RECICLAGEM)
+,LAYS MORETTI DA SILVA,lays.silva@fanucamerica.com,013.107.662-07,NR-10 (RECICLAGEM)
+,LAYS MORETTI DA SILVA,lays.silva@fanucamerica.com,013.107.662-07,NR-12
+,ANDRE DE SOUZA,andre.souza@fanucamerica.com,290.688.648-31,NR-10 (RECICLAGEM)
+,ANDRE DE SOUZA,andre.souza@fanucamerica.com,290.688.648-31,NR-12
+,RAFAEL TOSHIO BURATO MAEDA,rafael.maeda@fanucamerica.com,394.153.268-59,NR-10 (RECICLAGEM)
+,RAFAEL TOSHIO BURATO MAEDA,rafael.maeda@fanucamerica.com,394.153.268-59,NR-12
+,RAFAEL TOSHIO BURATO MAEDA,rafael.maeda@fanucamerica.com,394.153.268-59,NR-35 (RECICLAGEM)
+,RICARDO GALLES BONET,ricardo.bonet@fanucamerica.com,424.430.528-93,NR-10 (RECICLAGEM)
+,RULIO SIEFERT SERA,rulio.sera@fanucamerica.com,063.916.859-08,NR-10 (RECICLAGEM)
+,MACIEL FERREIRA BOMFIM,maciel.bomfim@fanucamerica.com,334.547.088-85,NR-10 (RECICLAGEM)
+,JAIME EDUARDO GALVEZ AVILES,jaime.galvez@fanucamerica.com,280.238.818-50,NR-12
+,JAIME EDUARDO GALVEZ AVILES,jaime.galvez@fanucamerica.com,280.238.818-50,NR-35 (RECICLAGEM)
+,HIGOR MACHADO SILVA,higor.silva@fanucamerica.com,419.879.878-88,NR-12
+,LÁZARO SOUZA DIAS,lazaro.dias@fanucamerica.com,067.179.825-19,NR-12
+,JOÃO PEDRO AGUIAR GALASSO,joao.pedro@fanucamerica.com,570.403.588-40,NR-12
\ No newline at end of file
diff --git a/users-events/tests/seeds.jsonl b/users-events/tests/seeds.jsonl
new file mode 100644
index 0000000..b704442
--- /dev/null
+++ b/users-events/tests/seeds.jsonl
@@ -0,0 +1,4 @@
+{"id": {"S": "cJtK9SsnJhKPyxESe7g3DG"}, "sk": {"S": "0"}, "name": {"S": "EDUSEG"}}
+{"id": {"S": "cJtK9SsnJhKPyxESe7g3DG"}, "sk": {"S": "admins#5OxmMjL-ujoR5IMGegQz"}, "name": {"S": "Sérgio R Siqueira"}, "email": {"S": "sergio@somosbeta.com.br"}}
+{"id": {"S": "cnpj"}, "sk": {"S": "15608435000190"}, "user_id": {"S": "cJtK9SsnJhKPyxESe7g3DG"}}
+{"id": {"S": "email"}, "sk": {"S": "org+15608435000190@users.noreply.saladeaula.digital"}, "user_id": {"S": "cJtK9SsnJhKPyxESe7g3DG"}}
\ No newline at end of file
diff --git a/users-events/tests/test_csv_utils.py b/users-events/tests/test_csv_utils.py
new file mode 100644
index 0000000..2647818
--- /dev/null
+++ b/users-events/tests/test_csv_utils.py
@@ -0,0 +1,29 @@
+from csv_utils import byte_ranges, detect_delimiter
+
+
+def test_detect_delimiter():
+ with open('tests/samples/users.csv') as fp:
+ assert detect_delimiter(fp) == ','
+
+
+def test_byte_ranges():
+ csvpath = 'tests/samples/users.csv'
+ ranges = byte_ranges(csvpath, 10)
+ *_, pair = ranges
+ start_byte, end_byte = pair
+
+ assert ranges == [(0, 808), (809, 1655), (1656, 2303)]
+
+ expected = """,RICARDO GALLES BONET,ricardo.bonet@fanucamerica.com,424.430.528-93,NR-10 (RECICLAGEM)
+,RULIO SIEFERT SERA,rulio.sera@fanucamerica.com,063.916.859-08,NR-10 (RECICLAGEM)
+,MACIEL FERREIRA BOMFIM,maciel.bomfim@fanucamerica.com,334.547.088-85,NR-10 (RECICLAGEM)
+,JAIME EDUARDO GALVEZ AVILES,jaime.galvez@fanucamerica.com,280.238.818-50,NR-12
+,JAIME EDUARDO GALVEZ AVILES,jaime.galvez@fanucamerica.com,280.238.818-50,NR-35 (RECICLAGEM)
+,HIGOR MACHADO SILVA,higor.silva@fanucamerica.com,419.879.878-88,NR-12
+,LÁZARO SOUZA DIAS,lazaro.dias@fanucamerica.com,067.179.825-19,NR-12
+,JOÃO PEDRO AGUIAR GALASSO,joao.pedro@fanucamerica.com,570.403.588-40,NR-12"""
+
+ with open(csvpath, 'rb') as f:
+ f.seek(start_byte)
+ data = f.read(end_byte - start_byte + 1)
+ assert data.decode('utf-8') == expected
diff --git a/users-events/uv.lock b/users-events/uv.lock
new file mode 100644
index 0000000..bf5f797
--- /dev/null
+++ b/users-events/uv.lock
@@ -0,0 +1,1171 @@
+version = 1
+revision = 2
+requires-python = ">=3.13"
+
+[[package]]
+name = "annotated-types"
+version = "0.7.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89", size = 16081, upload-time = "2024-05-20T21:33:25.928Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" },
+]
+
+[[package]]
+name = "arnparse"
+version = "0.0.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/bd/42/949284e998282b167e273872fa9c39b06d41a6055163c30aa2daaeee76a0/arnparse-0.0.2.tar.gz", hash = "sha256:cb87f17200d07121108a9085d4a09cc69a55582647776b9a917b0b1f279db8f8", size = 2677, upload-time = "2019-03-12T21:17:04.586Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/57/6f/630bedeb32964e99661990811a66389201b62c047b35c17e332dad9be2a3/arnparse-0.0.2-py2.py3-none-any.whl", hash = "sha256:b0906734e4b8f19e39b1e32944c6cd6274b6da90c066a83882ac7a11d27553e0", size = 2904, upload-time = "2019-03-12T21:17:03.039Z" },
+]
+
+[[package]]
+name = "attrs"
+version = "25.3.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/5a/b0/1367933a8532ee6ff8d63537de4f1177af4bff9f3e829baf7331f595bb24/attrs-25.3.0.tar.gz", hash = "sha256:75d7cefc7fb576747b2c81b4442d4d4a1ce0900973527c011d1030fd3bf4af1b", size = 812032, upload-time = "2025-03-13T11:10:22.779Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl", hash = "sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3", size = 63815, upload-time = "2025-03-13T11:10:21.14Z" },
+]
+
+[[package]]
+name = "aws-encryption-sdk"
+version = "4.0.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "attrs" },
+ { name = "boto3" },
+ { name = "cryptography" },
+ { name = "wrapt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/45/ff/fefbcc1cee829f3ab188dbcb5069862f61b64ed82a6205314f1ab7bb90e6/aws-encryption-sdk-4.0.1.tar.gz", hash = "sha256:7320dc4cf8d8d5a9b4c88a343be93835da18756e05308d3536554be0ca2889a5", size = 260219, upload-time = "2025-03-27T17:24:54.669Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/66/a5/82956e2111b169c644633212da2a5f84dd9d953b9dd146ccfccfb8a46290/aws_encryption_sdk-4.0.1-py2.py3-none-any.whl", hash = "sha256:5c2ca9a207e1732542a1370ac7efd630ab6e04d05f98e68badf20927eb95ed1d", size = 99127, upload-time = "2025-03-27T17:24:50.903Z" },
+]
+
+[[package]]
+name = "aws-lambda-powertools"
+version = "3.12.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "jmespath" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/bb/90/7cc2e76ca959ce5985fcfff73a3885bbd5e3d85d5acd8c4ba1149b5ccaec/aws_lambda_powertools-3.12.0.tar.gz", hash = "sha256:b13146bbacf7bc029539b18c2a9b07b333cecca482d9ec4fba81dff5fb8523ea", size = 671775, upload-time = "2025-05-06T07:48:35.023Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/63/86/c73f4fc738df6a937a1d542c8e4eaf0a96a242b4fcb80db2d22fe78b39bb/aws_lambda_powertools-3.12.0-py3-none-any.whl", hash = "sha256:094d5b404a8025b09ca1425099aa417ddaff537f915b250007dcd43217c61dc5", size = 801386, upload-time = "2025-05-06T07:48:32.864Z" },
+]
+
+[package.optional-dependencies]
+all = [
+ { name = "aws-encryption-sdk" },
+ { name = "aws-xray-sdk" },
+ { name = "fastjsonschema" },
+ { name = "jsonpath-ng" },
+ { name = "pydantic" },
+ { name = "pydantic-settings" },
+]
+
+[[package]]
+name = "aws-xray-sdk"
+version = "2.14.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore" },
+ { name = "wrapt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/e0/6c/8e7fb2a45f20afc5c19d52807b560793fb48b0feca1de7de116b62a7893e/aws_xray_sdk-2.14.0.tar.gz", hash = "sha256:aab843c331af9ab9ba5cefb3a303832a19db186140894a523edafc024cc0493c", size = 93976, upload-time = "2024-06-04T22:11:38.124Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/41/69/b417833a8926fa5491e5346d7c233bf7d8a9b12ba1f4ef41ccea2494000c/aws_xray_sdk-2.14.0-py2.py3-none-any.whl", hash = "sha256:cfbe6feea3d26613a2a869d14c9246a844285c97087ad8f296f901633554ad94", size = 101922, upload-time = "2024-06-04T22:12:25.729Z" },
+]
+
+[[package]]
+name = "boltons"
+version = "25.0.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/63/54/71a94d8e02da9a865587fb3fff100cb0fc7aa9f4d5ed9ed3a591216ddcc7/boltons-25.0.0.tar.gz", hash = "sha256:e110fbdc30b7b9868cb604e3f71d4722dd8f4dcb4a5ddd06028ba8f1ab0b5ace", size = 246294, upload-time = "2025-02-03T05:57:59.129Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/45/7f/0e961cf3908bc4c1c3e027de2794f867c6c89fb4916fc7dba295a0e80a2d/boltons-25.0.0-py3-none-any.whl", hash = "sha256:dc9fb38bf28985715497d1b54d00b62ea866eca3938938ea9043e254a3a6ca62", size = 194210, upload-time = "2025-02-03T05:57:56.705Z" },
+]
+
+[[package]]
+name = "boto3"
+version = "1.38.17"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore" },
+ { name = "jmespath" },
+ { name = "s3transfer" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/a5/dd/68ea8ab6dfbed46b75fcfe0bbd5ae19e4d3ef094b749ff8d944398e90f2d/boto3-1.38.17.tar.gz", hash = "sha256:6058feef976ece2878ad3555f39933e63d20d02e2bbd40610ab2926d4555710a", size = 111803, upload-time = "2025-05-15T19:35:17.029Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ce/89/634155fb209f50fd98da1cb11480bcdf6ed8d8ab68800d91cdb2bf59a8af/boto3-1.38.17-py3-none-any.whl", hash = "sha256:9b56c98fe7acb6559c24dacd838989878c60f3df2fb8ca5f311128419fd9f953", size = 139937, upload-time = "2025-05-15T19:35:14.663Z" },
+]
+
+[[package]]
+name = "boto3-stubs"
+version = "1.38.26"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore-stubs" },
+ { name = "types-s3transfer" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/1e/89/9e2658210ac11459405ed8c82f47be533a5d16ae3b8203c90564b7a738a0/boto3_stubs-1.38.26.tar.gz", hash = "sha256:492e59e42323de43018ffa6d00d3bb2b93d1fead042e76c6a68fd0a0c0fe3236", size = 99065, upload-time = "2025-05-29T19:47:49.383Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/48/51/881ac3c7ebeefdfe0e712b1f4d815261707a492187ea301506168cf6fc20/boto3_stubs-1.38.26-py3-none-any.whl", hash = "sha256:3022b2a8f6925c60c9ce68c5e090ff9fd2bad0c918300395a1c242681a67c11c", size = 68669, upload-time = "2025-05-29T19:47:42.352Z" },
+]
+
+[package.optional-dependencies]
+essential = [
+ { name = "mypy-boto3-cloudformation" },
+ { name = "mypy-boto3-dynamodb" },
+ { name = "mypy-boto3-ec2" },
+ { name = "mypy-boto3-lambda" },
+ { name = "mypy-boto3-rds" },
+ { name = "mypy-boto3-s3" },
+ { name = "mypy-boto3-sqs" },
+]
+
+[[package]]
+name = "botocore"
+version = "1.38.17"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "jmespath" },
+ { name = "python-dateutil" },
+ { name = "urllib3" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/33/73/8b831403be00dbea152d4827929a5772f58e0413dd3e6b6d4b3592d88d39/botocore-1.38.17.tar.gz", hash = "sha256:f2db4c4bdcfbc41d78bfe73b9affe7d217c7840f8ce120cff815536969418b18", size = 13903448, upload-time = "2025-05-15T19:35:05.325Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/01/fc/9c08db2e89055999e996fee3537cbbfb4ed8ebf0d4ab1b1045e1819b76d8/botocore-1.38.17-py3-none-any.whl", hash = "sha256:ec75cf02fbd3dbec18187085ce387761eab16afdccfd0774fd168db3689c6cb6", size = 13564514, upload-time = "2025-05-15T19:35:00.231Z" },
+]
+
+[[package]]
+name = "botocore-stubs"
+version = "1.38.26"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "types-awscrt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/08/f2/fd2f5a8ef00bbcfe00c12b8c49e247510266929dff5578b6fec360967a21/botocore_stubs-1.38.26.tar.gz", hash = "sha256:3bbf7662fc97e28a50dc959752619cf57029194987268b4dc13df4e54767204c", size = 42315, upload-time = "2025-05-29T20:18:25.22Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/28/4a/f99ef1ff37620c0c23aa67e3d9de5fce0f98b38fd26e6d30438ee440c0fc/botocore_stubs-1.38.26-py3-none-any.whl", hash = "sha256:c86ac7d2c7e24ea50a866a9686a293dfe8b40281cc3465d79e2e0e48d35ad93b", size = 65628, upload-time = "2025-05-29T20:18:23.125Z" },
+]
+
+[[package]]
+name = "brotli"
+version = "1.1.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/2f/c2/f9e977608bdf958650638c3f1e28f85a1b075f075ebbe77db8555463787b/Brotli-1.1.0.tar.gz", hash = "sha256:81de08ac11bcb85841e440c13611c00b67d3bf82698314928d0b676362546724", size = 7372270, upload-time = "2023-09-07T14:05:41.643Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/0a/9f/fb37bb8ffc52a8da37b1c03c459a8cd55df7a57bdccd8831d500e994a0ca/Brotli-1.1.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8bf32b98b75c13ec7cf774164172683d6e7891088f6316e54425fde1efc276d5", size = 815681, upload-time = "2024-10-18T12:32:34.942Z" },
+ { url = "https://files.pythonhosted.org/packages/06/b3/dbd332a988586fefb0aa49c779f59f47cae76855c2d00f450364bb574cac/Brotli-1.1.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7bc37c4d6b87fb1017ea28c9508b36bbcb0c3d18b4260fcdf08b200c74a6aee8", size = 422475, upload-time = "2024-10-18T12:32:36.485Z" },
+ { url = "https://files.pythonhosted.org/packages/bb/80/6aaddc2f63dbcf2d93c2d204e49c11a9ec93a8c7c63261e2b4bd35198283/Brotli-1.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c0ef38c7a7014ffac184db9e04debe495d317cc9c6fb10071f7fefd93100a4f", size = 2906173, upload-time = "2024-10-18T12:32:37.978Z" },
+ { url = "https://files.pythonhosted.org/packages/ea/1d/e6ca79c96ff5b641df6097d299347507d39a9604bde8915e76bf026d6c77/Brotli-1.1.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91d7cc2a76b5567591d12c01f019dd7afce6ba8cba6571187e21e2fc418ae648", size = 2943803, upload-time = "2024-10-18T12:32:39.606Z" },
+ { url = "https://files.pythonhosted.org/packages/ac/a3/d98d2472e0130b7dd3acdbb7f390d478123dbf62b7d32bda5c830a96116d/Brotli-1.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a93dde851926f4f2678e704fadeb39e16c35d8baebd5252c9fd94ce8ce68c4a0", size = 2918946, upload-time = "2024-10-18T12:32:41.679Z" },
+ { url = "https://files.pythonhosted.org/packages/c4/a5/c69e6d272aee3e1423ed005d8915a7eaa0384c7de503da987f2d224d0721/Brotli-1.1.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f0db75f47be8b8abc8d9e31bc7aad0547ca26f24a54e6fd10231d623f183d089", size = 2845707, upload-time = "2024-10-18T12:32:43.478Z" },
+ { url = "https://files.pythonhosted.org/packages/58/9f/4149d38b52725afa39067350696c09526de0125ebfbaab5acc5af28b42ea/Brotli-1.1.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:6967ced6730aed543b8673008b5a391c3b1076d834ca438bbd70635c73775368", size = 2936231, upload-time = "2024-10-18T12:32:45.224Z" },
+ { url = "https://files.pythonhosted.org/packages/5a/5a/145de884285611838a16bebfdb060c231c52b8f84dfbe52b852a15780386/Brotli-1.1.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:7eedaa5d036d9336c95915035fb57422054014ebdeb6f3b42eac809928e40d0c", size = 2848157, upload-time = "2024-10-18T12:32:46.894Z" },
+ { url = "https://files.pythonhosted.org/packages/50/ae/408b6bfb8525dadebd3b3dd5b19d631da4f7d46420321db44cd99dcf2f2c/Brotli-1.1.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:d487f5432bf35b60ed625d7e1b448e2dc855422e87469e3f450aa5552b0eb284", size = 3035122, upload-time = "2024-10-18T12:32:48.844Z" },
+ { url = "https://files.pythonhosted.org/packages/af/85/a94e5cfaa0ca449d8f91c3d6f78313ebf919a0dbd55a100c711c6e9655bc/Brotli-1.1.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:832436e59afb93e1836081a20f324cb185836c617659b07b129141a8426973c7", size = 2930206, upload-time = "2024-10-18T12:32:51.198Z" },
+ { url = "https://files.pythonhosted.org/packages/c2/f0/a61d9262cd01351df22e57ad7c34f66794709acab13f34be2675f45bf89d/Brotli-1.1.0-cp313-cp313-win32.whl", hash = "sha256:43395e90523f9c23a3d5bdf004733246fba087f2948f87ab28015f12359ca6a0", size = 333804, upload-time = "2024-10-18T12:32:52.661Z" },
+ { url = "https://files.pythonhosted.org/packages/7e/c1/ec214e9c94000d1c1974ec67ced1c970c148aa6b8d8373066123fc3dbf06/Brotli-1.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b", size = 358517, upload-time = "2024-10-18T12:32:54.066Z" },
+]
+
+[[package]]
+name = "brotlicffi"
+version = "1.1.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "cffi" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/95/9d/70caa61192f570fcf0352766331b735afa931b4c6bc9a348a0925cc13288/brotlicffi-1.1.0.0.tar.gz", hash = "sha256:b77827a689905143f87915310b93b273ab17888fd43ef350d4832c4a71083c13", size = 465192, upload-time = "2023-09-14T14:22:40.707Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/a2/11/7b96009d3dcc2c931e828ce1e157f03824a69fb728d06bfd7b2fc6f93718/brotlicffi-1.1.0.0-cp37-abi3-macosx_10_9_x86_64.whl", hash = "sha256:9b7ae6bd1a3f0df532b6d67ff674099a96d22bc0948955cb338488c31bfb8851", size = 453786, upload-time = "2023-09-14T14:21:57.72Z" },
+ { url = "https://files.pythonhosted.org/packages/d6/e6/a8f46f4a4ee7856fbd6ac0c6fb0dc65ed181ba46cd77875b8d9bbe494d9e/brotlicffi-1.1.0.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:19ffc919fa4fc6ace69286e0a23b3789b4219058313cf9b45625016bf7ff996b", size = 2911165, upload-time = "2023-09-14T14:21:59.613Z" },
+ { url = "https://files.pythonhosted.org/packages/be/20/201559dff14e83ba345a5ec03335607e47467b6633c210607e693aefac40/brotlicffi-1.1.0.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9feb210d932ffe7798ee62e6145d3a757eb6233aa9a4e7db78dd3690d7755814", size = 2927895, upload-time = "2023-09-14T14:22:01.22Z" },
+ { url = "https://files.pythonhosted.org/packages/cd/15/695b1409264143be3c933f708a3f81d53c4a1e1ebbc06f46331decbf6563/brotlicffi-1.1.0.0-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84763dbdef5dd5c24b75597a77e1b30c66604725707565188ba54bab4f114820", size = 2851834, upload-time = "2023-09-14T14:22:03.571Z" },
+ { url = "https://files.pythonhosted.org/packages/b4/40/b961a702463b6005baf952794c2e9e0099bde657d0d7e007f923883b907f/brotlicffi-1.1.0.0-cp37-abi3-win32.whl", hash = "sha256:1b12b50e07c3911e1efa3a8971543e7648100713d4e0971b13631cce22c587eb", size = 341731, upload-time = "2023-09-14T14:22:05.74Z" },
+ { url = "https://files.pythonhosted.org/packages/1c/fa/5408a03c041114ceab628ce21766a4ea882aa6f6f0a800e04ee3a30ec6b9/brotlicffi-1.1.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:994a4f0681bb6c6c3b0925530a1926b7a189d878e6e5e38fae8efa47c5d9c613", size = 366783, upload-time = "2023-09-14T14:22:07.096Z" },
+]
+
+[[package]]
+name = "camel-converter"
+version = "4.0.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/ee/3d/dd783586dc0c4aee5b6b88489666fdb2c0c344ea0aa8a5c10746cc423707/camel_converter-4.0.1.tar.gz", hash = "sha256:401414549ae4ac4073e38cdc4aa6d464dc534fc40aa06ff787bf0960b0c86535", size = 38915, upload-time = "2024-10-08T16:55:39.427Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/32/e5/806359514cc8305f047bd6d39d63890298c0596f7328b534059724bd1a9e/camel_converter-4.0.1-py3-none-any.whl", hash = "sha256:0cba7ca1354a29ca2191983deecc9dcf28889f606c28d6ed18ac7d4586b163ac", size = 6243, upload-time = "2024-10-08T16:55:37.769Z" },
+]
+
+[package.optional-dependencies]
+pydantic = [
+ { name = "pydantic" },
+]
+
+[[package]]
+name = "certifi"
+version = "2025.4.26"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e8/9e/c05b3920a3b7d20d3d3310465f50348e5b3694f4f88c6daf736eef3024c4/certifi-2025.4.26.tar.gz", hash = "sha256:0a816057ea3cdefcef70270d2c515e4506bbc954f417fa5ade2021213bb8f0c6", size = 160705, upload-time = "2025-04-26T02:12:29.51Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/4a/7e/3db2bd1b1f9e95f7cddca6d6e75e2f2bd9f51b1246e546d88addca0106bd/certifi-2025.4.26-py3-none-any.whl", hash = "sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3", size = 159618, upload-time = "2025-04-26T02:12:27.662Z" },
+]
+
+[[package]]
+name = "cffi"
+version = "1.17.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "pycparser" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fc/97/c783634659c2920c3fc70419e3af40972dbaf758daa229a7d6ea6135c90d/cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824", size = 516621, upload-time = "2024-09-04T20:45:21.852Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/8d/f8/dd6c246b148639254dad4d6803eb6a54e8c85c6e11ec9df2cffa87571dbe/cffi-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e", size = 182989, upload-time = "2024-09-04T20:44:28.956Z" },
+ { url = "https://files.pythonhosted.org/packages/8b/f1/672d303ddf17c24fc83afd712316fda78dc6fce1cd53011b839483e1ecc8/cffi-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2", size = 178802, upload-time = "2024-09-04T20:44:30.289Z" },
+ { url = "https://files.pythonhosted.org/packages/0e/2d/eab2e858a91fdff70533cab61dcff4a1f55ec60425832ddfdc9cd36bc8af/cffi-1.17.1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3", size = 454792, upload-time = "2024-09-04T20:44:32.01Z" },
+ { url = "https://files.pythonhosted.org/packages/75/b2/fbaec7c4455c604e29388d55599b99ebcc250a60050610fadde58932b7ee/cffi-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683", size = 478893, upload-time = "2024-09-04T20:44:33.606Z" },
+ { url = "https://files.pythonhosted.org/packages/4f/b7/6e4a2162178bf1935c336d4da8a9352cccab4d3a5d7914065490f08c0690/cffi-1.17.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5", size = 485810, upload-time = "2024-09-04T20:44:35.191Z" },
+ { url = "https://files.pythonhosted.org/packages/c7/8a/1d0e4a9c26e54746dc08c2c6c037889124d4f59dffd853a659fa545f1b40/cffi-1.17.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4", size = 471200, upload-time = "2024-09-04T20:44:36.743Z" },
+ { url = "https://files.pythonhosted.org/packages/26/9f/1aab65a6c0db35f43c4d1b4f580e8df53914310afc10ae0397d29d697af4/cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd", size = 479447, upload-time = "2024-09-04T20:44:38.492Z" },
+ { url = "https://files.pythonhosted.org/packages/5f/e4/fb8b3dd8dc0e98edf1135ff067ae070bb32ef9d509d6cb0f538cd6f7483f/cffi-1.17.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed", size = 484358, upload-time = "2024-09-04T20:44:40.046Z" },
+ { url = "https://files.pythonhosted.org/packages/f1/47/d7145bf2dc04684935d57d67dff9d6d795b2ba2796806bb109864be3a151/cffi-1.17.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9", size = 488469, upload-time = "2024-09-04T20:44:41.616Z" },
+ { url = "https://files.pythonhosted.org/packages/bf/ee/f94057fa6426481d663b88637a9a10e859e492c73d0384514a17d78ee205/cffi-1.17.1-cp313-cp313-win32.whl", hash = "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d", size = 172475, upload-time = "2024-09-04T20:44:43.733Z" },
+ { url = "https://files.pythonhosted.org/packages/7c/fc/6a8cb64e5f0324877d503c854da15d76c1e50eb722e320b15345c4d0c6de/cffi-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a", size = 182009, upload-time = "2024-09-04T20:44:45.309Z" },
+]
+
+[[package]]
+name = "charset-normalizer"
+version = "3.4.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e4/33/89c2ced2b67d1c2a61c19c6751aa8902d46ce3dacb23600a283619f5a12d/charset_normalizer-3.4.2.tar.gz", hash = "sha256:5baececa9ecba31eff645232d59845c07aa030f0c81ee70184a90d35099a0e63", size = 126367, upload-time = "2025-05-02T08:34:42.01Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ea/12/a93df3366ed32db1d907d7593a94f1fe6293903e3e92967bebd6950ed12c/charset_normalizer-3.4.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:926ca93accd5d36ccdabd803392ddc3e03e6d4cd1cf17deff3b989ab8e9dbcf0", size = 199622, upload-time = "2025-05-02T08:32:56.363Z" },
+ { url = "https://files.pythonhosted.org/packages/04/93/bf204e6f344c39d9937d3c13c8cd5bbfc266472e51fc8c07cb7f64fcd2de/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eba9904b0f38a143592d9fc0e19e2df0fa2e41c3c3745554761c5f6447eedabf", size = 143435, upload-time = "2025-05-02T08:32:58.551Z" },
+ { url = "https://files.pythonhosted.org/packages/22/2a/ea8a2095b0bafa6c5b5a55ffdc2f924455233ee7b91c69b7edfcc9e02284/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3fddb7e2c84ac87ac3a947cb4e66d143ca5863ef48e4a5ecb83bd48619e4634e", size = 153653, upload-time = "2025-05-02T08:33:00.342Z" },
+ { url = "https://files.pythonhosted.org/packages/b6/57/1b090ff183d13cef485dfbe272e2fe57622a76694061353c59da52c9a659/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98f862da73774290f251b9df8d11161b6cf25b599a66baf087c1ffe340e9bfd1", size = 146231, upload-time = "2025-05-02T08:33:02.081Z" },
+ { url = "https://files.pythonhosted.org/packages/e2/28/ffc026b26f441fc67bd21ab7f03b313ab3fe46714a14b516f931abe1a2d8/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c9379d65defcab82d07b2a9dfbfc2e95bc8fe0ebb1b176a3190230a3ef0e07c", size = 148243, upload-time = "2025-05-02T08:33:04.063Z" },
+ { url = "https://files.pythonhosted.org/packages/c0/0f/9abe9bd191629c33e69e47c6ef45ef99773320e9ad8e9cb08b8ab4a8d4cb/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e635b87f01ebc977342e2697d05b56632f5f879a4f15955dfe8cef2448b51691", size = 150442, upload-time = "2025-05-02T08:33:06.418Z" },
+ { url = "https://files.pythonhosted.org/packages/67/7c/a123bbcedca91d5916c056407f89a7f5e8fdfce12ba825d7d6b9954a1a3c/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:1c95a1e2902a8b722868587c0e1184ad5c55631de5afc0eb96bc4b0d738092c0", size = 145147, upload-time = "2025-05-02T08:33:08.183Z" },
+ { url = "https://files.pythonhosted.org/packages/ec/fe/1ac556fa4899d967b83e9893788e86b6af4d83e4726511eaaad035e36595/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ef8de666d6179b009dce7bcb2ad4c4a779f113f12caf8dc77f0162c29d20490b", size = 153057, upload-time = "2025-05-02T08:33:09.986Z" },
+ { url = "https://files.pythonhosted.org/packages/2b/ff/acfc0b0a70b19e3e54febdd5301a98b72fa07635e56f24f60502e954c461/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:32fc0341d72e0f73f80acb0a2c94216bd704f4f0bce10aedea38f30502b271ff", size = 156454, upload-time = "2025-05-02T08:33:11.814Z" },
+ { url = "https://files.pythonhosted.org/packages/92/08/95b458ce9c740d0645feb0e96cea1f5ec946ea9c580a94adfe0b617f3573/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:289200a18fa698949d2b39c671c2cc7a24d44096784e76614899a7ccf2574b7b", size = 154174, upload-time = "2025-05-02T08:33:13.707Z" },
+ { url = "https://files.pythonhosted.org/packages/78/be/8392efc43487ac051eee6c36d5fbd63032d78f7728cb37aebcc98191f1ff/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4a476b06fbcf359ad25d34a057b7219281286ae2477cc5ff5e3f70a246971148", size = 149166, upload-time = "2025-05-02T08:33:15.458Z" },
+ { url = "https://files.pythonhosted.org/packages/44/96/392abd49b094d30b91d9fbda6a69519e95802250b777841cf3bda8fe136c/charset_normalizer-3.4.2-cp313-cp313-win32.whl", hash = "sha256:aaeeb6a479c7667fbe1099af9617c83aaca22182d6cf8c53966491a0f1b7ffb7", size = 98064, upload-time = "2025-05-02T08:33:17.06Z" },
+ { url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl", hash = "sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980", size = 105641, upload-time = "2025-05-02T08:33:18.753Z" },
+ { url = "https://files.pythonhosted.org/packages/20/94/c5790835a017658cbfabd07f3bfb549140c3ac458cfc196323996b10095a/charset_normalizer-3.4.2-py3-none-any.whl", hash = "sha256:7f56930ab0abd1c45cd15be65cc741c28b1c9a34876ce8c17a2fa107810c0af0", size = 52626, upload-time = "2025-05-02T08:34:40.053Z" },
+]
+
+[[package]]
+name = "colorama"
+version = "0.4.6"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" },
+]
+
+[[package]]
+name = "coverage"
+version = "7.8.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/19/4f/2251e65033ed2ce1e68f00f91a0294e0f80c80ae8c3ebbe2f12828c4cd53/coverage-7.8.0.tar.gz", hash = "sha256:7a3d62b3b03b4b6fd41a085f3574874cf946cb4604d2b4d3e8dca8cd570ca501", size = 811872, upload-time = "2025-03-30T20:36:45.376Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/f3/21/87e9b97b568e223f3438d93072479c2f36cc9b3f6b9f7094b9d50232acc0/coverage-7.8.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:5ac46d0c2dd5820ce93943a501ac5f6548ea81594777ca585bf002aa8854cacd", size = 211708, upload-time = "2025-03-30T20:35:47.417Z" },
+ { url = "https://files.pythonhosted.org/packages/75/be/882d08b28a0d19c9c4c2e8a1c6ebe1f79c9c839eb46d4fca3bd3b34562b9/coverage-7.8.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:771eb7587a0563ca5bb6f622b9ed7f9d07bd08900f7589b4febff05f469bea00", size = 211981, upload-time = "2025-03-30T20:35:49.002Z" },
+ { url = "https://files.pythonhosted.org/packages/7a/1d/ce99612ebd58082fbe3f8c66f6d8d5694976c76a0d474503fa70633ec77f/coverage-7.8.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42421e04069fb2cbcbca5a696c4050b84a43b05392679d4068acbe65449b5c64", size = 245495, upload-time = "2025-03-30T20:35:51.073Z" },
+ { url = "https://files.pythonhosted.org/packages/dc/8d/6115abe97df98db6b2bd76aae395fcc941d039a7acd25f741312ced9a78f/coverage-7.8.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:554fec1199d93ab30adaa751db68acec2b41c5602ac944bb19187cb9a41a8067", size = 242538, upload-time = "2025-03-30T20:35:52.941Z" },
+ { url = "https://files.pythonhosted.org/packages/cb/74/2f8cc196643b15bc096d60e073691dadb3dca48418f08bc78dd6e899383e/coverage-7.8.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5aaeb00761f985007b38cf463b1d160a14a22c34eb3f6a39d9ad6fc27cb73008", size = 244561, upload-time = "2025-03-30T20:35:54.658Z" },
+ { url = "https://files.pythonhosted.org/packages/22/70/c10c77cd77970ac965734fe3419f2c98665f6e982744a9bfb0e749d298f4/coverage-7.8.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:581a40c7b94921fffd6457ffe532259813fc68eb2bdda60fa8cc343414ce3733", size = 244633, upload-time = "2025-03-30T20:35:56.221Z" },
+ { url = "https://files.pythonhosted.org/packages/38/5a/4f7569d946a07c952688debee18c2bb9ab24f88027e3d71fd25dbc2f9dca/coverage-7.8.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:f319bae0321bc838e205bf9e5bc28f0a3165f30c203b610f17ab5552cff90323", size = 242712, upload-time = "2025-03-30T20:35:57.801Z" },
+ { url = "https://files.pythonhosted.org/packages/bb/a1/03a43b33f50475a632a91ea8c127f7e35e53786dbe6781c25f19fd5a65f8/coverage-7.8.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:04bfec25a8ef1c5f41f5e7e5c842f6b615599ca8ba8391ec33a9290d9d2db3a3", size = 244000, upload-time = "2025-03-30T20:35:59.378Z" },
+ { url = "https://files.pythonhosted.org/packages/6a/89/ab6c43b1788a3128e4d1b7b54214548dcad75a621f9d277b14d16a80d8a1/coverage-7.8.0-cp313-cp313-win32.whl", hash = "sha256:dd19608788b50eed889e13a5d71d832edc34fc9dfce606f66e8f9f917eef910d", size = 214195, upload-time = "2025-03-30T20:36:01.005Z" },
+ { url = "https://files.pythonhosted.org/packages/12/12/6bf5f9a8b063d116bac536a7fb594fc35cb04981654cccb4bbfea5dcdfa0/coverage-7.8.0-cp313-cp313-win_amd64.whl", hash = "sha256:a9abbccd778d98e9c7e85038e35e91e67f5b520776781d9a1e2ee9d400869487", size = 214998, upload-time = "2025-03-30T20:36:03.006Z" },
+ { url = "https://files.pythonhosted.org/packages/2a/e6/1e9df74ef7a1c983a9c7443dac8aac37a46f1939ae3499424622e72a6f78/coverage-7.8.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:18c5ae6d061ad5b3e7eef4363fb27a0576012a7447af48be6c75b88494c6cf25", size = 212541, upload-time = "2025-03-30T20:36:04.638Z" },
+ { url = "https://files.pythonhosted.org/packages/04/51/c32174edb7ee49744e2e81c4b1414ac9df3dacfcb5b5f273b7f285ad43f6/coverage-7.8.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:95aa6ae391a22bbbce1b77ddac846c98c5473de0372ba5c463480043a07bff42", size = 212767, upload-time = "2025-03-30T20:36:06.503Z" },
+ { url = "https://files.pythonhosted.org/packages/e9/8f/f454cbdb5212f13f29d4a7983db69169f1937e869a5142bce983ded52162/coverage-7.8.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e013b07ba1c748dacc2a80e69a46286ff145935f260eb8c72df7185bf048f502", size = 256997, upload-time = "2025-03-30T20:36:08.137Z" },
+ { url = "https://files.pythonhosted.org/packages/e6/74/2bf9e78b321216d6ee90a81e5c22f912fc428442c830c4077b4a071db66f/coverage-7.8.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d766a4f0e5aa1ba056ec3496243150698dc0481902e2b8559314368717be82b1", size = 252708, upload-time = "2025-03-30T20:36:09.781Z" },
+ { url = "https://files.pythonhosted.org/packages/92/4d/50d7eb1e9a6062bee6e2f92e78b0998848a972e9afad349b6cdde6fa9e32/coverage-7.8.0-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ad80e6b4a0c3cb6f10f29ae4c60e991f424e6b14219d46f1e7d442b938ee68a4", size = 255046, upload-time = "2025-03-30T20:36:11.409Z" },
+ { url = "https://files.pythonhosted.org/packages/40/9e/71fb4e7402a07c4198ab44fc564d09d7d0ffca46a9fb7b0a7b929e7641bd/coverage-7.8.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:b87eb6fc9e1bb8f98892a2458781348fa37e6925f35bb6ceb9d4afd54ba36c73", size = 256139, upload-time = "2025-03-30T20:36:13.86Z" },
+ { url = "https://files.pythonhosted.org/packages/49/1a/78d37f7a42b5beff027e807c2843185961fdae7fe23aad5a4837c93f9d25/coverage-7.8.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:d1ba00ae33be84066cfbe7361d4e04dec78445b2b88bdb734d0d1cbab916025a", size = 254307, upload-time = "2025-03-30T20:36:16.074Z" },
+ { url = "https://files.pythonhosted.org/packages/58/e9/8fb8e0ff6bef5e170ee19d59ca694f9001b2ec085dc99b4f65c128bb3f9a/coverage-7.8.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f3c38e4e5ccbdc9198aecc766cedbb134b2d89bf64533973678dfcf07effd883", size = 255116, upload-time = "2025-03-30T20:36:18.033Z" },
+ { url = "https://files.pythonhosted.org/packages/56/b0/d968ecdbe6fe0a863de7169bbe9e8a476868959f3af24981f6a10d2b6924/coverage-7.8.0-cp313-cp313t-win32.whl", hash = "sha256:379fe315e206b14e21db5240f89dc0774bdd3e25c3c58c2c733c99eca96f1ada", size = 214909, upload-time = "2025-03-30T20:36:19.644Z" },
+ { url = "https://files.pythonhosted.org/packages/87/e9/d6b7ef9fecf42dfb418d93544af47c940aa83056c49e6021a564aafbc91f/coverage-7.8.0-cp313-cp313t-win_amd64.whl", hash = "sha256:2e4b6b87bb0c846a9315e3ab4be2d52fac905100565f4b92f02c445c8799e257", size = 216068, upload-time = "2025-03-30T20:36:21.282Z" },
+ { url = "https://files.pythonhosted.org/packages/59/f1/4da7717f0063a222db253e7121bd6a56f6fb1ba439dcc36659088793347c/coverage-7.8.0-py3-none-any.whl", hash = "sha256:dbf364b4c5e7bae9250528167dfe40219b62e2d573c854d74be213e1e52069f7", size = 203435, upload-time = "2025-03-30T20:36:43.61Z" },
+]
+
+[[package]]
+name = "cryptography"
+version = "44.0.3"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "cffi", marker = "platform_python_implementation != 'PyPy'" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/53/d6/1411ab4d6108ab167d06254c5be517681f1e331f90edf1379895bcb87020/cryptography-44.0.3.tar.gz", hash = "sha256:fe19d8bc5536a91a24a8133328880a41831b6c5df54599a8417b62fe015d3053", size = 711096, upload-time = "2025-05-02T19:36:04.667Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/08/53/c776d80e9d26441bb3868457909b4e74dd9ccabd182e10b2b0ae7a07e265/cryptography-44.0.3-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:962bc30480a08d133e631e8dfd4783ab71cc9e33d5d7c1e192f0b7c06397bb88", size = 6670281, upload-time = "2025-05-02T19:34:50.665Z" },
+ { url = "https://files.pythonhosted.org/packages/6a/06/af2cf8d56ef87c77319e9086601bef621bedf40f6f59069e1b6d1ec498c5/cryptography-44.0.3-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ffc61e8f3bf5b60346d89cd3d37231019c17a081208dfbbd6e1605ba03fa137", size = 3959305, upload-time = "2025-05-02T19:34:53.042Z" },
+ { url = "https://files.pythonhosted.org/packages/ae/01/80de3bec64627207d030f47bf3536889efee8913cd363e78ca9a09b13c8e/cryptography-44.0.3-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:58968d331425a6f9eedcee087f77fd3c927c88f55368f43ff7e0a19891f2642c", size = 4171040, upload-time = "2025-05-02T19:34:54.675Z" },
+ { url = "https://files.pythonhosted.org/packages/bd/48/bb16b7541d207a19d9ae8b541c70037a05e473ddc72ccb1386524d4f023c/cryptography-44.0.3-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:e28d62e59a4dbd1d22e747f57d4f00c459af22181f0b2f787ea83f5a876d7c76", size = 3963411, upload-time = "2025-05-02T19:34:56.61Z" },
+ { url = "https://files.pythonhosted.org/packages/42/b2/7d31f2af5591d217d71d37d044ef5412945a8a8e98d5a2a8ae4fd9cd4489/cryptography-44.0.3-cp37-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:af653022a0c25ef2e3ffb2c673a50e5a0d02fecc41608f4954176f1933b12359", size = 3689263, upload-time = "2025-05-02T19:34:58.591Z" },
+ { url = "https://files.pythonhosted.org/packages/25/50/c0dfb9d87ae88ccc01aad8eb93e23cfbcea6a6a106a9b63a7b14c1f93c75/cryptography-44.0.3-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:157f1f3b8d941c2bd8f3ffee0af9b049c9665c39d3da9db2dc338feca5e98a43", size = 4196198, upload-time = "2025-05-02T19:35:00.988Z" },
+ { url = "https://files.pythonhosted.org/packages/66/c9/55c6b8794a74da652690c898cb43906310a3e4e4f6ee0b5f8b3b3e70c441/cryptography-44.0.3-cp37-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:c6cd67722619e4d55fdb42ead64ed8843d64638e9c07f4011163e46bc512cf01", size = 3966502, upload-time = "2025-05-02T19:35:03.091Z" },
+ { url = "https://files.pythonhosted.org/packages/b6/f7/7cb5488c682ca59a02a32ec5f975074084db4c983f849d47b7b67cc8697a/cryptography-44.0.3-cp37-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:b424563394c369a804ecbee9b06dfb34997f19d00b3518e39f83a5642618397d", size = 4196173, upload-time = "2025-05-02T19:35:05.018Z" },
+ { url = "https://files.pythonhosted.org/packages/d2/0b/2f789a8403ae089b0b121f8f54f4a3e5228df756e2146efdf4a09a3d5083/cryptography-44.0.3-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:c91fc8e8fd78af553f98bc7f2a1d8db977334e4eea302a4bfd75b9461c2d8904", size = 4087713, upload-time = "2025-05-02T19:35:07.187Z" },
+ { url = "https://files.pythonhosted.org/packages/1d/aa/330c13655f1af398fc154089295cf259252f0ba5df93b4bc9d9c7d7f843e/cryptography-44.0.3-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:25cd194c39fa5a0aa4169125ee27d1172097857b27109a45fadc59653ec06f44", size = 4299064, upload-time = "2025-05-02T19:35:08.879Z" },
+ { url = "https://files.pythonhosted.org/packages/10/a8/8c540a421b44fd267a7d58a1fd5f072a552d72204a3f08194f98889de76d/cryptography-44.0.3-cp37-abi3-win32.whl", hash = "sha256:3be3f649d91cb182c3a6bd336de8b61a0a71965bd13d1a04a0e15b39c3d5809d", size = 2773887, upload-time = "2025-05-02T19:35:10.41Z" },
+ { url = "https://files.pythonhosted.org/packages/b9/0d/c4b1657c39ead18d76bbd122da86bd95bdc4095413460d09544000a17d56/cryptography-44.0.3-cp37-abi3-win_amd64.whl", hash = "sha256:3883076d5c4cc56dbef0b898a74eb6992fdac29a7b9013870b34efe4ddb39a0d", size = 3209737, upload-time = "2025-05-02T19:35:12.12Z" },
+ { url = "https://files.pythonhosted.org/packages/34/a3/ad08e0bcc34ad436013458d7528e83ac29910943cea42ad7dd4141a27bbb/cryptography-44.0.3-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:5639c2b16764c6f76eedf722dbad9a0914960d3489c0cc38694ddf9464f1bb2f", size = 6673501, upload-time = "2025-05-02T19:35:13.775Z" },
+ { url = "https://files.pythonhosted.org/packages/b1/f0/7491d44bba8d28b464a5bc8cc709f25a51e3eac54c0a4444cf2473a57c37/cryptography-44.0.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f3ffef566ac88f75967d7abd852ed5f182da252d23fac11b4766da3957766759", size = 3960307, upload-time = "2025-05-02T19:35:15.917Z" },
+ { url = "https://files.pythonhosted.org/packages/f7/c8/e5c5d0e1364d3346a5747cdcd7ecbb23ca87e6dea4f942a44e88be349f06/cryptography-44.0.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:192ed30fac1728f7587c6f4613c29c584abdc565d7417c13904708db10206645", size = 4170876, upload-time = "2025-05-02T19:35:18.138Z" },
+ { url = "https://files.pythonhosted.org/packages/73/96/025cb26fc351d8c7d3a1c44e20cf9a01e9f7cf740353c9c7a17072e4b264/cryptography-44.0.3-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:7d5fe7195c27c32a64955740b949070f21cba664604291c298518d2e255931d2", size = 3964127, upload-time = "2025-05-02T19:35:19.864Z" },
+ { url = "https://files.pythonhosted.org/packages/01/44/eb6522db7d9f84e8833ba3bf63313f8e257729cf3a8917379473fcfd6601/cryptography-44.0.3-cp39-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:3f07943aa4d7dad689e3bb1638ddc4944cc5e0921e3c227486daae0e31a05e54", size = 3689164, upload-time = "2025-05-02T19:35:21.449Z" },
+ { url = "https://files.pythonhosted.org/packages/68/fb/d61a4defd0d6cee20b1b8a1ea8f5e25007e26aeb413ca53835f0cae2bcd1/cryptography-44.0.3-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:cb90f60e03d563ca2445099edf605c16ed1d5b15182d21831f58460c48bffb93", size = 4198081, upload-time = "2025-05-02T19:35:23.187Z" },
+ { url = "https://files.pythonhosted.org/packages/1b/50/457f6911d36432a8811c3ab8bd5a6090e8d18ce655c22820994913dd06ea/cryptography-44.0.3-cp39-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:ab0b005721cc0039e885ac3503825661bd9810b15d4f374e473f8c89b7d5460c", size = 3967716, upload-time = "2025-05-02T19:35:25.426Z" },
+ { url = "https://files.pythonhosted.org/packages/35/6e/dca39d553075980ccb631955c47b93d87d27f3596da8d48b1ae81463d915/cryptography-44.0.3-cp39-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:3bb0847e6363c037df8f6ede57d88eaf3410ca2267fb12275370a76f85786a6f", size = 4197398, upload-time = "2025-05-02T19:35:27.678Z" },
+ { url = "https://files.pythonhosted.org/packages/9b/9d/d1f2fe681eabc682067c66a74addd46c887ebacf39038ba01f8860338d3d/cryptography-44.0.3-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:b0cc66c74c797e1db750aaa842ad5b8b78e14805a9b5d1348dc603612d3e3ff5", size = 4087900, upload-time = "2025-05-02T19:35:29.312Z" },
+ { url = "https://files.pythonhosted.org/packages/c4/f5/3599e48c5464580b73b236aafb20973b953cd2e7b44c7c2533de1d888446/cryptography-44.0.3-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:6866df152b581f9429020320e5eb9794c8780e90f7ccb021940d7f50ee00ae0b", size = 4301067, upload-time = "2025-05-02T19:35:31.547Z" },
+ { url = "https://files.pythonhosted.org/packages/a7/6c/d2c48c8137eb39d0c193274db5c04a75dab20d2f7c3f81a7dcc3a8897701/cryptography-44.0.3-cp39-abi3-win32.whl", hash = "sha256:c138abae3a12a94c75c10499f1cbae81294a6f983b3af066390adee73f433028", size = 2775467, upload-time = "2025-05-02T19:35:33.805Z" },
+ { url = "https://files.pythonhosted.org/packages/c9/ad/51f212198681ea7b0deaaf8846ee10af99fba4e894f67b353524eab2bbe5/cryptography-44.0.3-cp39-abi3-win_amd64.whl", hash = "sha256:5d186f32e52e66994dce4f766884bcb9c68b8da62d61d9d215bfe5fb56d21334", size = 3210375, upload-time = "2025-05-02T19:35:35.369Z" },
+]
+
+[[package]]
+name = "cssselect2"
+version = "0.8.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "tinycss2" },
+ { name = "webencodings" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/9f/86/fd7f58fc498b3166f3a7e8e0cddb6e620fe1da35b02248b1bd59e95dbaaa/cssselect2-0.8.0.tar.gz", hash = "sha256:7674ffb954a3b46162392aee2a3a0aedb2e14ecf99fcc28644900f4e6e3e9d3a", size = 35716, upload-time = "2025-03-05T14:46:07.988Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/0f/e7/aa315e6a749d9b96c2504a1ba0ba031ba2d0517e972ce22682e3fccecb09/cssselect2-0.8.0-py3-none-any.whl", hash = "sha256:46fc70ebc41ced7a32cd42d58b1884d72ade23d21e5a4eaaf022401c13f0e76e", size = 15454, upload-time = "2025-03-05T14:46:06.463Z" },
+]
+
+[[package]]
+name = "dnspython"
+version = "2.7.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/b5/4a/263763cb2ba3816dd94b08ad3a33d5fdae34ecb856678773cc40a3605829/dnspython-2.7.0.tar.gz", hash = "sha256:ce9c432eda0dc91cf618a5cedf1a4e142651196bbcd2c80e89ed5a907e5cfaf1", size = 345197, upload-time = "2024-10-05T20:14:59.362Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl", hash = "sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86", size = 313632, upload-time = "2024-10-05T20:14:57.687Z" },
+]
+
+[[package]]
+name = "elastic-transport"
+version = "8.17.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "certifi" },
+ { name = "urllib3" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/6a/54/d498a766ac8fa475f931da85a154666cc81a70f8eb4a780bc8e4e934e9ac/elastic_transport-8.17.1.tar.gz", hash = "sha256:5edef32ac864dca8e2f0a613ef63491ee8d6b8cfb52881fa7313ba9290cac6d2", size = 73425, upload-time = "2025-03-13T07:28:30.776Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/cf/cd/b71d5bc74cde7fc6fd9b2ff9389890f45d9762cbbbf81dc5e51fd7588c4a/elastic_transport-8.17.1-py3-none-any.whl", hash = "sha256:192718f498f1d10c5e9aa8b9cf32aed405e469a7f0e9d6a8923431dbb2c59fb8", size = 64969, upload-time = "2025-03-13T07:28:29.031Z" },
+]
+
+[[package]]
+name = "elasticsearch"
+version = "8.18.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "elastic-transport" },
+ { name = "python-dateutil" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/2a/e4/40fc0e8d9a646889ac3f865cd35e41835f3cf888c716c7aae82248e022f0/elasticsearch-8.18.1.tar.gz", hash = "sha256:998035f17a8c1fba7ae26b183dca797dcf95db86da6a7ecba56d31afc40f07c7", size = 750746, upload-time = "2025-04-29T09:32:16.361Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/33/62/f62e8a5c7c6f7b27481c9ffc248fb32078ad88878aa4f3731a83a14cc797/elasticsearch-8.18.1-py3-none-any.whl", hash = "sha256:1a8c8b5ec3ce5be88f96d2f898375671648e96272978bce0dee3137d9326aabb", size = 906320, upload-time = "2025-04-29T09:32:12.527Z" },
+]
+
+[[package]]
+name = "elasticsearch-dsl"
+version = "8.18.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "elastic-transport" },
+ { name = "elasticsearch" },
+ { name = "python-dateutil" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/72/6d/00cbeee412a2dc825f0df18c98463a2e0b423b86800fba6c50ea2c627962/elasticsearch_dsl-8.18.0.tar.gz", hash = "sha256:763465dba9eae166add10567e924c65730aa122819b08bfe9a077e91b13b30d1", size = 31886, upload-time = "2025-04-16T11:54:14.412Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/77/a9/b200790a22585aeb023d88bd8b9fb222820e2976ce4239d401670116ae3c/elasticsearch_dsl-8.18.0-py3-none-any.whl", hash = "sha256:0522c5bb20c7abae69855109e650bf1166d486cbf706b5e1b29c28936a9102a3", size = 10406, upload-time = "2025-04-16T11:54:12.677Z" },
+]
+
+[[package]]
+name = "email-validator"
+version = "2.2.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "dnspython" },
+ { name = "idna" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/48/ce/13508a1ec3f8bb981ae4ca79ea40384becc868bfae97fd1c942bb3a001b1/email_validator-2.2.0.tar.gz", hash = "sha256:cb690f344c617a714f22e66ae771445a1ceb46821152df8e165c5f9a364582b7", size = 48967, upload-time = "2024-06-20T11:30:30.034Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/d7/ee/bf0adb559ad3c786f12bcbc9296b3f5675f529199bef03e2df281fa1fadb/email_validator-2.2.0-py3-none-any.whl", hash = "sha256:561977c2d73ce3611850a06fa56b414621e0c8faa9d66f2611407d87465da631", size = 33521, upload-time = "2024-06-20T11:30:28.248Z" },
+]
+
+[[package]]
+name = "face"
+version = "24.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "boltons" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/ac/79/2484075a8549cd64beae697a8f664dee69a5ccf3a7439ee40c8f93c1978a/face-24.0.0.tar.gz", hash = "sha256:611e29a01ac5970f0077f9c577e746d48c082588b411b33a0dd55c4d872949f6", size = 62732, upload-time = "2024-11-02T05:24:26.095Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e9/47/21867c2e5fd006c8d36a560df9e32cb4f1f566b20c5dd41f5f8a2124f7de/face-24.0.0-py3-none-any.whl", hash = "sha256:0e2c17b426fa4639a4e77d1de9580f74a98f4869ba4c7c8c175b810611622cd3", size = 54742, upload-time = "2024-11-02T05:24:24.939Z" },
+]
+
+[[package]]
+name = "fastjsonschema"
+version = "2.21.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/8b/50/4b769ce1ac4071a1ef6d86b1a3fb56cdc3a37615e8c5519e1af96cdac366/fastjsonschema-2.21.1.tar.gz", hash = "sha256:794d4f0a58f848961ba16af7b9c85a3e88cd360df008c59aac6fc5ae9323b5d4", size = 373939, upload-time = "2024-12-02T10:55:15.133Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/90/2b/0817a2b257fe88725c25589d89aec060581aabf668707a8d03b2e9e0cb2a/fastjsonschema-2.21.1-py3-none-any.whl", hash = "sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667", size = 23924, upload-time = "2024-12-02T10:55:07.599Z" },
+]
+
+[[package]]
+name = "fonttools"
+version = "4.58.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/9a/cf/4d037663e2a1fe30fddb655d755d76e18624be44ad467c07412c2319ab97/fonttools-4.58.0.tar.gz", hash = "sha256:27423d0606a2c7b336913254bf0b1193ebd471d5f725d665e875c5e88a011a43", size = 3514522, upload-time = "2025-05-10T17:36:35.886Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/0c/d7/d77cae11c445916d767cace93ba8283b3f360197d95d7470b90a9e984e10/fonttools-4.58.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:4809790f2371d8a08e59e1ce2b734c954cf09742e75642d7f4c46cfdac488fdd", size = 2728320, upload-time = "2025-05-10T17:35:56.455Z" },
+ { url = "https://files.pythonhosted.org/packages/77/48/7d8b3c519ef4b48081d40310262224a38785e39a8610ccb92a229a6f085d/fonttools-4.58.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:b00f240280f204ce4546b05ff3515bf8ff47a9cae914c718490025ea2bb9b324", size = 2302570, upload-time = "2025-05-10T17:35:58.794Z" },
+ { url = "https://files.pythonhosted.org/packages/2c/48/156b83eb8fb7261056e448bfda1b495b90e761b28ec23cee10e3e19f1967/fonttools-4.58.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5a62015ad463e1925544e9159dd6eefe33ebfb80938d5ab15d8b1c4b354ff47b", size = 4790066, upload-time = "2025-05-10T17:36:01.174Z" },
+ { url = "https://files.pythonhosted.org/packages/60/49/aaecb1b3cea2b9b9c7cea6240d6bc8090feb5489a6fbf93cb68003be979b/fonttools-4.58.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ceef6f6ab58061a811967e3e32e630747fcb823dcc33a9a2c80e2d0d17cb292", size = 4861076, upload-time = "2025-05-10T17:36:03.663Z" },
+ { url = "https://files.pythonhosted.org/packages/dc/c8/97cbb41bee81ea9daf6109e0f3f70a274a3c69418e5ac6b0193f5dacf506/fonttools-4.58.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c7be21ac52370b515cdbdd0f400803fd29432a4fa4ddb4244ac8b322e54f36c0", size = 4858394, upload-time = "2025-05-10T17:36:06.087Z" },
+ { url = "https://files.pythonhosted.org/packages/4d/23/c2c231457361f869a7d7374a557208e303b469d48a4a697c0fb249733ea1/fonttools-4.58.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:85836be4c3c4aacf6fcb7a6f263896d0e9ce431da9fa6fe9213d70f221f131c9", size = 5002160, upload-time = "2025-05-10T17:36:08.178Z" },
+ { url = "https://files.pythonhosted.org/packages/a9/e0/c2262f941a43b810c5c192db94b5d1ce8eda91bec2757f7e2416398f4072/fonttools-4.58.0-cp313-cp313-win32.whl", hash = "sha256:2b32b7130277bd742cb8c4379a6a303963597d22adea77a940343f3eadbcaa4c", size = 2171919, upload-time = "2025-05-10T17:36:10.644Z" },
+ { url = "https://files.pythonhosted.org/packages/8f/ee/e4aa7bb4ce510ad57a808d321df1bbed1eeb6e1dfb20aaee1a5d9c076849/fonttools-4.58.0-cp313-cp313-win_amd64.whl", hash = "sha256:75e68ee2ec9aaa173cf5e33f243da1d51d653d5e25090f2722bc644a78db0f1a", size = 2222972, upload-time = "2025-05-10T17:36:12.495Z" },
+ { url = "https://files.pythonhosted.org/packages/9b/1f/4417c26e26a1feab85a27e927f7a73d8aabc84544be8ba108ce4aa90eb1e/fonttools-4.58.0-py3-none-any.whl", hash = "sha256:c96c36880be2268be409df7b08c5b5dacac1827083461a6bc2cb07b8cbcec1d7", size = 1111440, upload-time = "2025-05-10T17:36:33.607Z" },
+]
+
+[package.optional-dependencies]
+woff = [
+ { name = "brotli", marker = "platform_python_implementation == 'CPython'" },
+ { name = "brotlicffi", marker = "platform_python_implementation != 'CPython'" },
+ { name = "zopfli" },
+]
+
+[[package]]
+name = "ftfy"
+version = "6.3.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "wcwidth" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/a5/d3/8650919bc3c7c6e90ee3fa7fd618bf373cbbe55dff043bd67353dbb20cd8/ftfy-6.3.1.tar.gz", hash = "sha256:9b3c3d90f84fb267fe64d375a07b7f8912d817cf86009ae134aa03e1819506ec", size = 308927, upload-time = "2024-10-26T00:50:35.149Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ab/6e/81d47999aebc1b155f81eca4477a616a70f238a2549848c38983f3c22a82/ftfy-6.3.1-py3-none-any.whl", hash = "sha256:7c70eb532015cd2f9adb53f101fb6c7945988d023a085d127d1573dc49dd0083", size = 44821, upload-time = "2024-10-26T00:50:33.425Z" },
+]
+
+[[package]]
+name = "glom"
+version = "24.11.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "attrs" },
+ { name = "boltons" },
+ { name = "face" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/05/89/b57cfbc448189426f2e01b244fbe9226b059ef5423a9d49c1d335a1f1026/glom-24.11.0.tar.gz", hash = "sha256:4325f96759a912044af7b6c6bd0dba44ad8c1eb6038aab057329661d2021bb27", size = 195120, upload-time = "2024-11-02T23:17:50.405Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/9c/a2/75fd80784ec33da8d39cf885e8811a4fbc045a90db5e336b8e345e66dbb2/glom-24.11.0-py3-none-any.whl", hash = "sha256:991db7fcb4bfa9687010aa519b7b541bbe21111e70e58fdd2d7e34bbaa2c1fbd", size = 102690, upload-time = "2024-11-02T23:17:46.468Z" },
+]
+
+[[package]]
+name = "idna"
+version = "3.10"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f1/70/7703c29685631f5a7590aa73f1f1d3fa9a380e654b86af429e0934a32f7d/idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9", size = 190490, upload-time = "2024-09-15T18:07:39.745Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3", size = 70442, upload-time = "2024-09-15T18:07:37.964Z" },
+]
+
+[[package]]
+name = "iniconfig"
+version = "2.1.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f2/97/ebf4da567aa6827c909642694d71c9fcf53e5b504f2d96afea02718862f3/iniconfig-2.1.0.tar.gz", hash = "sha256:3abbd2e30b36733fee78f9c7f7308f2d0050e88f0087fd25c2645f63c773e1c7", size = 4793, upload-time = "2025-03-19T20:09:59.721Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/2c/e1/e6716421ea10d38022b952c159d5161ca1193197fb744506875fbb87ea7b/iniconfig-2.1.0-py3-none-any.whl", hash = "sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760", size = 6050, upload-time = "2025-03-19T20:10:01.071Z" },
+]
+
+[[package]]
+name = "jmespath"
+version = "1.0.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/00/2a/e867e8531cf3e36b41201936b7fa7ba7b5702dbef42922193f05c8976cd6/jmespath-1.0.1.tar.gz", hash = "sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe", size = 25843, upload-time = "2022-06-17T18:00:12.224Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/31/b4/b9b800c45527aadd64d5b442f9b932b00648617eb5d63d2c7a6587b7cafc/jmespath-1.0.1-py3-none-any.whl", hash = "sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980", size = 20256, upload-time = "2022-06-17T18:00:10.251Z" },
+]
+
+[[package]]
+name = "jsonlines"
+version = "4.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "attrs" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/35/87/bcda8e46c88d0e34cad2f09ee2d0c7f5957bccdb9791b0b934ec84d84be4/jsonlines-4.0.0.tar.gz", hash = "sha256:0c6d2c09117550c089995247f605ae4cf77dd1533041d366351f6f298822ea74", size = 11359, upload-time = "2023-09-01T12:34:44.187Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/f8/62/d9ba6323b9202dd2fe166beab8a86d29465c41a0288cbe229fac60c1ab8d/jsonlines-4.0.0-py3-none-any.whl", hash = "sha256:185b334ff2ca5a91362993f42e83588a360cf95ce4b71a73548502bda52a7c55", size = 8701, upload-time = "2023-09-01T12:34:42.563Z" },
+]
+
+[[package]]
+name = "jsonpath-ng"
+version = "1.7.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "ply" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/6d/86/08646239a313f895186ff0a4573452038eed8c86f54380b3ebac34d32fb2/jsonpath-ng-1.7.0.tar.gz", hash = "sha256:f6f5f7fd4e5ff79c785f1573b394043b39849fb2bb47bcead935d12b00beab3c", size = 37838, upload-time = "2024-10-11T15:41:42.404Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/35/5a/73ecb3d82f8615f32ccdadeb9356726d6cae3a4bbc840b437ceb95708063/jsonpath_ng-1.7.0-py3-none-any.whl", hash = "sha256:f3d7f9e848cba1b6da28c55b1c26ff915dc9e0b1ba7e752a53d6da8d5cbd00b6", size = 30105, upload-time = "2024-11-20T17:58:30.418Z" },
+]
+
+[[package]]
+name = "layercake"
+version = "0.6.2"
+source = { directory = "../layercake" }
+dependencies = [
+ { name = "arnparse" },
+ { name = "aws-lambda-powertools", extra = ["all"] },
+ { name = "elasticsearch" },
+ { name = "elasticsearch-dsl" },
+ { name = "ftfy" },
+ { name = "glom" },
+ { name = "meilisearch" },
+ { name = "orjson" },
+ { name = "pycpfcnpj" },
+ { name = "pydantic", extra = ["email"] },
+ { name = "pydantic-extra-types" },
+ { name = "pytz" },
+ { name = "requests" },
+ { name = "smart-open", extra = ["s3"] },
+ { name = "weasyprint" },
+]
+
+[package.metadata]
+requires-dist = [
+ { name = "arnparse", specifier = ">=0.0.2" },
+ { name = "aws-lambda-powertools", extras = ["all"], specifier = ">=3.8.0" },
+ { name = "elasticsearch", specifier = ">=8.17.2" },
+ { name = "elasticsearch-dsl", specifier = ">=8.17.1" },
+ { name = "ftfy", specifier = ">=6.3.1" },
+ { name = "glom", specifier = ">=24.11.0" },
+ { name = "meilisearch", specifier = ">=0.34.0" },
+ { name = "orjson", specifier = ">=3.10.15" },
+ { name = "pycpfcnpj", specifier = ">=1.8" },
+ { name = "pydantic", extras = ["email"], specifier = ">=2.10.6" },
+ { name = "pydantic-extra-types", specifier = ">=2.10.3" },
+ { name = "pytz", specifier = ">=2025.1" },
+ { name = "requests", specifier = ">=2.32.3" },
+ { name = "smart-open", extras = ["s3"], specifier = ">=7.1.0" },
+ { name = "weasyprint", specifier = ">=65.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "boto3", specifier = ">=1.37.16" },
+ { name = "boto3-stubs", extras = ["essential"], specifier = ">=1.37.33" },
+ { name = "jsonlines", specifier = ">=4.0.0" },
+ { name = "pytest", specifier = ">=8.3.5" },
+ { name = "pytest-cov", specifier = ">=6.0.0" },
+ { name = "ruff", specifier = ">=0.11.1" },
+]
+
+[[package]]
+name = "meilisearch"
+version = "0.34.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "camel-converter", extra = ["pydantic"] },
+ { name = "requests" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/11/d2/63b34effea260f2551685cdc38783d36e05a1734c1f14f8bd8dd059fe699/meilisearch-0.34.1.tar.gz", hash = "sha256:99a8d8f548cc1905668ffb2bbf641b5e3ec9231f3413cce4189c5d7b16e52afa", size = 24221, upload-time = "2025-04-04T13:45:07.868Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/bf/3e/a3ec8d44b35e495444cac8ce3573b33adf19a9b6d70f2a51e4a971f17c81/meilisearch-0.34.1-py3-none-any.whl", hash = "sha256:43efa4521ce7dc3b065d404267ad5b3acb825602e6219b8b5356650306686cd4", size = 24918, upload-time = "2025-04-04T13:45:06.869Z" },
+]
+
+[[package]]
+name = "mypy-boto3-cloudformation"
+version = "1.38.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/40/d5/35b9301c8b2fb870e58401d13fec36de2c83f2ddef48398b8c89c9a58995/mypy_boto3_cloudformation-1.38.0.tar.gz", hash = "sha256:563399166c07e91e0695fb1e58103a248b2bee0db5e2c3f07155776dd6311805", size = 57702, upload-time = "2025-04-22T21:19:31.221Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/1e/2f/d20ad6e0113f982ea255fcb4ed94f70d0111757d7d03bfacebc2d9f60ba4/mypy_boto3_cloudformation-1.38.0-py3-none-any.whl", hash = "sha256:a1411aa5875b737492aaac5f7e8ce450f034c18f972eb608a9eba6fe35837f6a", size = 69607, upload-time = "2025-04-22T21:19:29.235Z" },
+]
+
+[[package]]
+name = "mypy-boto3-dynamodb"
+version = "1.38.4"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/6b/7f/72b68d275a80a42675c36249b80dd79ec5c7d9bd1f5cc93cdb572f866722/mypy_boto3_dynamodb-1.38.4.tar.gz", hash = "sha256:5cf3787631e312b3d75f89a6cbbbd4ad786a76f5d565af023febf03fbf23c0b5", size = 47461, upload-time = "2025-04-28T19:26:22.728Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/6a/35/3d0ceabb0a9f3765f509cb9dce6ddfa939114682b1acc442f52a755e9bc8/mypy_boto3_dynamodb-1.38.4-py3-none-any.whl", hash = "sha256:6b29d89c649eeb1e894118bee002cb8b1304c78da735b1503aa08e46b0abfdec", size = 56395, upload-time = "2025-04-28T19:26:16.947Z" },
+]
+
+[[package]]
+name = "mypy-boto3-ec2"
+version = "1.38.25"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/d4/88/b9a99e010224b2ad9ea45b96f6689d9706841f2788e5ffe114cb0041e543/mypy_boto3_ec2-1.38.25.tar.gz", hash = "sha256:aed7d746c7c6af7e3f75424ad64829a7ce5b94dc871114a449c403ada22954cb", size = 400494, upload-time = "2025-05-28T19:42:21.197Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/b4/22/f7caf22d014c7b0b62546a41b49030b73c162702870bfd1b1aaf48e2cc05/mypy_boto3_ec2-1.38.25-py3-none-any.whl", hash = "sha256:bad444d731669eab25fdcb7259901cb0db0fb26a4e1a79836a32aef6d674dbd0", size = 389882, upload-time = "2025-05-28T19:42:17.484Z" },
+]
+
+[[package]]
+name = "mypy-boto3-lambda"
+version = "1.38.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/8f/e3/0436071b28942788bdd22d6f91847654a7b1d167fb9d86c5779108e49ee9/mypy_boto3_lambda-1.38.0.tar.gz", hash = "sha256:ece7b3848c045e1be81c4f2b7482002c17ce7cb70de850661146103a8cb1a3fb", size = 41767, upload-time = "2025-04-22T21:27:54.666Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/17/09/602a39b39abd0d58d8b6bbee4c1552b64fadba2324676d7d45c3fa00fe7b/mypy_boto3_lambda-1.38.0-py3-none-any.whl", hash = "sha256:0dcb882826f61fd2751f6b98330b0e11085570654db85318aea018374ca88dc9", size = 48210, upload-time = "2025-04-22T21:27:52.034Z" },
+]
+
+[[package]]
+name = "mypy-boto3-rds"
+version = "1.38.20"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/97/b7/5ac46bee6617c8f955f6c28b8698a954f537812d84d655e3c887557421f0/mypy_boto3_rds-1.38.20.tar.gz", hash = "sha256:c6aa70c0cc5bc59959fec434206fbf8200386b583ff1f7e372154eaa41eb52e9", size = 85121, upload-time = "2025-05-20T23:30:09.631Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e7/ff/1a82134124ef41c040a40076c83b111d760f57007ec7b16649891fef0473/mypy_boto3_rds-1.38.20-py3-none-any.whl", hash = "sha256:9f600c24e687780fed1c8dc6d244b17dd0889f34705ec40c66df15e1caa420f4", size = 91368, upload-time = "2025-05-20T23:30:05.508Z" },
+]
+
+[[package]]
+name = "mypy-boto3-s3"
+version = "1.38.26"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/79/a5/366aec375b77cfe7820b7b3213318b147aefda6f12a035691541a5d557d1/mypy_boto3_s3-1.38.26.tar.gz", hash = "sha256:38a45dee5782d5c07ddea07ea50965c4d2ba7e77617c19f613b4c9f80f961b52", size = 73717, upload-time = "2025-05-29T19:43:03.468Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/3b/fa/251b651c18341c7491909994bd459b12ad05e13059d65bfa65d3afabdf8d/mypy_boto3_s3-1.38.26-py3-none-any.whl", hash = "sha256:1129d64be1aee863e04f0c92ac8d315578f13ccae64fa199b20ad0950d2b9616", size = 80321, upload-time = "2025-05-29T19:42:59.199Z" },
+]
+
+[[package]]
+name = "mypy-boto3-sqs"
+version = "1.38.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f0/a0/ef5c7bdb33af5d0a48029fed11401388fa68949c6c0f9b11b2e845f5fe0e/mypy_boto3_sqs-1.38.0.tar.gz", hash = "sha256:39aebc121a2fe20f962fd83b617fd916003605d6f6851fdf195337a0aa428fe1", size = 23541, upload-time = "2025-04-22T21:35:17.315Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/a5/97/72fccc9aaa0e3c8f3f99b4edac580ede651808aefb47b0d2b52c18a3d16b/mypy_boto3_sqs-1.38.0-py3-none-any.whl", hash = "sha256:8e881c8492f6f51dcbe1cce9d9f05334f4b256b5843e227fa925e0f6e702b31d", size = 33669, upload-time = "2025-04-22T21:35:16.073Z" },
+]
+
+[[package]]
+name = "orjson"
+version = "3.10.18"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/81/0b/fea456a3ffe74e70ba30e01ec183a9b26bec4d497f61dcfce1b601059c60/orjson-3.10.18.tar.gz", hash = "sha256:e8da3947d92123eda795b68228cafe2724815621fe35e8e320a9e9593a4bcd53", size = 5422810, upload-time = "2025-04-29T23:30:08.423Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/04/f0/8aedb6574b68096f3be8f74c0b56d36fd94bcf47e6c7ed47a7bd1474aaa8/orjson-3.10.18-cp313-cp313-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:69c34b9441b863175cc6a01f2935de994025e773f814412030f269da4f7be147", size = 249087, upload-time = "2025-04-29T23:29:19.083Z" },
+ { url = "https://files.pythonhosted.org/packages/bc/f7/7118f965541aeac6844fcb18d6988e111ac0d349c9b80cda53583e758908/orjson-3.10.18-cp313-cp313-macosx_15_0_arm64.whl", hash = "sha256:1ebeda919725f9dbdb269f59bc94f861afbe2a27dce5608cdba2d92772364d1c", size = 133273, upload-time = "2025-04-29T23:29:20.602Z" },
+ { url = "https://files.pythonhosted.org/packages/fb/d9/839637cc06eaf528dd8127b36004247bf56e064501f68df9ee6fd56a88ee/orjson-3.10.18-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5adf5f4eed520a4959d29ea80192fa626ab9a20b2ea13f8f6dc58644f6927103", size = 136779, upload-time = "2025-04-29T23:29:22.062Z" },
+ { url = "https://files.pythonhosted.org/packages/2b/6d/f226ecfef31a1f0e7d6bf9a31a0bbaf384c7cbe3fce49cc9c2acc51f902a/orjson-3.10.18-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7592bb48a214e18cd670974f289520f12b7aed1fa0b2e2616b8ed9e069e08595", size = 132811, upload-time = "2025-04-29T23:29:23.602Z" },
+ { url = "https://files.pythonhosted.org/packages/73/2d/371513d04143c85b681cf8f3bce743656eb5b640cb1f461dad750ac4b4d4/orjson-3.10.18-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f872bef9f042734110642b7a11937440797ace8c87527de25e0c53558b579ccc", size = 137018, upload-time = "2025-04-29T23:29:25.094Z" },
+ { url = "https://files.pythonhosted.org/packages/69/cb/a4d37a30507b7a59bdc484e4a3253c8141bf756d4e13fcc1da760a0b00cb/orjson-3.10.18-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0315317601149c244cb3ecef246ef5861a64824ccbcb8018d32c66a60a84ffbc", size = 138368, upload-time = "2025-04-29T23:29:26.609Z" },
+ { url = "https://files.pythonhosted.org/packages/1e/ae/cd10883c48d912d216d541eb3db8b2433415fde67f620afe6f311f5cd2ca/orjson-3.10.18-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e0da26957e77e9e55a6c2ce2e7182a36a6f6b180ab7189315cb0995ec362e049", size = 142840, upload-time = "2025-04-29T23:29:28.153Z" },
+ { url = "https://files.pythonhosted.org/packages/6d/4c/2bda09855c6b5f2c055034c9eda1529967b042ff8d81a05005115c4e6772/orjson-3.10.18-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bb70d489bc79b7519e5803e2cc4c72343c9dc1154258adf2f8925d0b60da7c58", size = 133135, upload-time = "2025-04-29T23:29:29.726Z" },
+ { url = "https://files.pythonhosted.org/packages/13/4a/35971fd809a8896731930a80dfff0b8ff48eeb5d8b57bb4d0d525160017f/orjson-3.10.18-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e9e86a6af31b92299b00736c89caf63816f70a4001e750bda179e15564d7a034", size = 134810, upload-time = "2025-04-29T23:29:31.269Z" },
+ { url = "https://files.pythonhosted.org/packages/99/70/0fa9e6310cda98365629182486ff37a1c6578e34c33992df271a476ea1cd/orjson-3.10.18-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:c382a5c0b5931a5fc5405053d36c1ce3fd561694738626c77ae0b1dfc0242ca1", size = 413491, upload-time = "2025-04-29T23:29:33.315Z" },
+ { url = "https://files.pythonhosted.org/packages/32/cb/990a0e88498babddb74fb97855ae4fbd22a82960e9b06eab5775cac435da/orjson-3.10.18-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:8e4b2ae732431127171b875cb2668f883e1234711d3c147ffd69fe5be51a8012", size = 153277, upload-time = "2025-04-29T23:29:34.946Z" },
+ { url = "https://files.pythonhosted.org/packages/92/44/473248c3305bf782a384ed50dd8bc2d3cde1543d107138fd99b707480ca1/orjson-3.10.18-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2d808e34ddb24fc29a4d4041dcfafbae13e129c93509b847b14432717d94b44f", size = 137367, upload-time = "2025-04-29T23:29:36.52Z" },
+ { url = "https://files.pythonhosted.org/packages/ad/fd/7f1d3edd4ffcd944a6a40e9f88af2197b619c931ac4d3cfba4798d4d3815/orjson-3.10.18-cp313-cp313-win32.whl", hash = "sha256:ad8eacbb5d904d5591f27dee4031e2c1db43d559edb8f91778efd642d70e6bea", size = 142687, upload-time = "2025-04-29T23:29:38.292Z" },
+ { url = "https://files.pythonhosted.org/packages/4b/03/c75c6ad46be41c16f4cfe0352a2d1450546f3c09ad2c9d341110cd87b025/orjson-3.10.18-cp313-cp313-win_amd64.whl", hash = "sha256:aed411bcb68bf62e85588f2a7e03a6082cc42e5a2796e06e72a962d7c6310b52", size = 134794, upload-time = "2025-04-29T23:29:40.349Z" },
+ { url = "https://files.pythonhosted.org/packages/c2/28/f53038a5a72cc4fd0b56c1eafb4ef64aec9685460d5ac34de98ca78b6e29/orjson-3.10.18-cp313-cp313-win_arm64.whl", hash = "sha256:f54c1385a0e6aba2f15a40d703b858bedad36ded0491e55d35d905b2c34a4cc3", size = 131186, upload-time = "2025-04-29T23:29:41.922Z" },
+]
+
+[[package]]
+name = "packaging"
+version = "25.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/a1/d4/1fc4078c65507b51b96ca8f8c3ba19e6a61c8253c72794544580a7b6c24d/packaging-25.0.tar.gz", hash = "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f", size = 165727, upload-time = "2025-04-19T11:48:59.673Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484", size = 66469, upload-time = "2025-04-19T11:48:57.875Z" },
+]
+
+[[package]]
+name = "pillow"
+version = "11.2.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/af/cb/bb5c01fcd2a69335b86c22142b2bccfc3464087efb7fd382eee5ffc7fdf7/pillow-11.2.1.tar.gz", hash = "sha256:a64dd61998416367b7ef979b73d3a85853ba9bec4c2925f74e588879a58716b6", size = 47026707, upload-time = "2025-04-12T17:50:03.289Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/36/9c/447528ee3776e7ab8897fe33697a7ff3f0475bb490c5ac1456a03dc57956/pillow-11.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:fdec757fea0b793056419bca3e9932eb2b0ceec90ef4813ea4c1e072c389eb28", size = 3190098, upload-time = "2025-04-12T17:48:23.915Z" },
+ { url = "https://files.pythonhosted.org/packages/b5/09/29d5cd052f7566a63e5b506fac9c60526e9ecc553825551333e1e18a4858/pillow-11.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b0e130705d568e2f43a17bcbe74d90958e8a16263868a12c3e0d9c8162690830", size = 3030166, upload-time = "2025-04-12T17:48:25.738Z" },
+ { url = "https://files.pythonhosted.org/packages/71/5d/446ee132ad35e7600652133f9c2840b4799bbd8e4adba881284860da0a36/pillow-11.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7bdb5e09068332578214cadd9c05e3d64d99e0e87591be22a324bdbc18925be0", size = 4408674, upload-time = "2025-04-12T17:48:27.908Z" },
+ { url = "https://files.pythonhosted.org/packages/69/5f/cbe509c0ddf91cc3a03bbacf40e5c2339c4912d16458fcb797bb47bcb269/pillow-11.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d189ba1bebfbc0c0e529159631ec72bb9e9bc041f01ec6d3233d6d82eb823bc1", size = 4496005, upload-time = "2025-04-12T17:48:29.888Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/b3/dd4338d8fb8a5f312021f2977fb8198a1184893f9b00b02b75d565c33b51/pillow-11.2.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:191955c55d8a712fab8934a42bfefbf99dd0b5875078240943f913bb66d46d9f", size = 4518707, upload-time = "2025-04-12T17:48:31.874Z" },
+ { url = "https://files.pythonhosted.org/packages/13/eb/2552ecebc0b887f539111c2cd241f538b8ff5891b8903dfe672e997529be/pillow-11.2.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:ad275964d52e2243430472fc5d2c2334b4fc3ff9c16cb0a19254e25efa03a155", size = 4610008, upload-time = "2025-04-12T17:48:34.422Z" },
+ { url = "https://files.pythonhosted.org/packages/72/d1/924ce51bea494cb6e7959522d69d7b1c7e74f6821d84c63c3dc430cbbf3b/pillow-11.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:750f96efe0597382660d8b53e90dd1dd44568a8edb51cb7f9d5d918b80d4de14", size = 4585420, upload-time = "2025-04-12T17:48:37.641Z" },
+ { url = "https://files.pythonhosted.org/packages/43/ab/8f81312d255d713b99ca37479a4cb4b0f48195e530cdc1611990eb8fd04b/pillow-11.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fe15238d3798788d00716637b3d4e7bb6bde18b26e5d08335a96e88564a36b6b", size = 4667655, upload-time = "2025-04-12T17:48:39.652Z" },
+ { url = "https://files.pythonhosted.org/packages/94/86/8f2e9d2dc3d308dfd137a07fe1cc478df0a23d42a6c4093b087e738e4827/pillow-11.2.1-cp313-cp313-win32.whl", hash = "sha256:3fe735ced9a607fee4f481423a9c36701a39719252a9bb251679635f99d0f7d2", size = 2332329, upload-time = "2025-04-12T17:48:41.765Z" },
+ { url = "https://files.pythonhosted.org/packages/6d/ec/1179083b8d6067a613e4d595359b5fdea65d0a3b7ad623fee906e1b3c4d2/pillow-11.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:74ee3d7ecb3f3c05459ba95eed5efa28d6092d751ce9bf20e3e253a4e497e691", size = 2676388, upload-time = "2025-04-12T17:48:43.625Z" },
+ { url = "https://files.pythonhosted.org/packages/23/f1/2fc1e1e294de897df39fa8622d829b8828ddad938b0eaea256d65b84dd72/pillow-11.2.1-cp313-cp313-win_arm64.whl", hash = "sha256:5119225c622403afb4b44bad4c1ca6c1f98eed79db8d3bc6e4e160fc6339d66c", size = 2414950, upload-time = "2025-04-12T17:48:45.475Z" },
+ { url = "https://files.pythonhosted.org/packages/c4/3e/c328c48b3f0ead7bab765a84b4977acb29f101d10e4ef57a5e3400447c03/pillow-11.2.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:8ce2e8411c7aaef53e6bb29fe98f28cd4fbd9a1d9be2eeea434331aac0536b22", size = 3192759, upload-time = "2025-04-12T17:48:47.866Z" },
+ { url = "https://files.pythonhosted.org/packages/18/0e/1c68532d833fc8b9f404d3a642991441d9058eccd5606eab31617f29b6d4/pillow-11.2.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:9ee66787e095127116d91dea2143db65c7bb1e232f617aa5957c0d9d2a3f23a7", size = 3033284, upload-time = "2025-04-12T17:48:50.189Z" },
+ { url = "https://files.pythonhosted.org/packages/b7/cb/6faf3fb1e7705fd2db74e070f3bf6f88693601b0ed8e81049a8266de4754/pillow-11.2.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9622e3b6c1d8b551b6e6f21873bdcc55762b4b2126633014cea1803368a9aa16", size = 4445826, upload-time = "2025-04-12T17:48:52.346Z" },
+ { url = "https://files.pythonhosted.org/packages/07/94/8be03d50b70ca47fb434a358919d6a8d6580f282bbb7af7e4aa40103461d/pillow-11.2.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:63b5dff3a68f371ea06025a1a6966c9a1e1ee452fc8020c2cd0ea41b83e9037b", size = 4527329, upload-time = "2025-04-12T17:48:54.403Z" },
+ { url = "https://files.pythonhosted.org/packages/fd/a4/bfe78777076dc405e3bd2080bc32da5ab3945b5a25dc5d8acaa9de64a162/pillow-11.2.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:31df6e2d3d8fc99f993fd253e97fae451a8db2e7207acf97859732273e108406", size = 4549049, upload-time = "2025-04-12T17:48:56.383Z" },
+ { url = "https://files.pythonhosted.org/packages/65/4d/eaf9068dc687c24979e977ce5677e253624bd8b616b286f543f0c1b91662/pillow-11.2.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:062b7a42d672c45a70fa1f8b43d1d38ff76b63421cbbe7f88146b39e8a558d91", size = 4635408, upload-time = "2025-04-12T17:48:58.782Z" },
+ { url = "https://files.pythonhosted.org/packages/1d/26/0fd443365d9c63bc79feb219f97d935cd4b93af28353cba78d8e77b61719/pillow-11.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4eb92eca2711ef8be42fd3f67533765d9fd043b8c80db204f16c8ea62ee1a751", size = 4614863, upload-time = "2025-04-12T17:49:00.709Z" },
+ { url = "https://files.pythonhosted.org/packages/49/65/dca4d2506be482c2c6641cacdba5c602bc76d8ceb618fd37de855653a419/pillow-11.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f91ebf30830a48c825590aede79376cb40f110b387c17ee9bd59932c961044f9", size = 4692938, upload-time = "2025-04-12T17:49:02.946Z" },
+ { url = "https://files.pythonhosted.org/packages/b3/92/1ca0c3f09233bd7decf8f7105a1c4e3162fb9142128c74adad0fb361b7eb/pillow-11.2.1-cp313-cp313t-win32.whl", hash = "sha256:e0b55f27f584ed623221cfe995c912c61606be8513bfa0e07d2c674b4516d9dd", size = 2335774, upload-time = "2025-04-12T17:49:04.889Z" },
+ { url = "https://files.pythonhosted.org/packages/a5/ac/77525347cb43b83ae905ffe257bbe2cc6fd23acb9796639a1f56aa59d191/pillow-11.2.1-cp313-cp313t-win_amd64.whl", hash = "sha256:36d6b82164c39ce5482f649b437382c0fb2395eabc1e2b1702a6deb8ad647d6e", size = 2681895, upload-time = "2025-04-12T17:49:06.635Z" },
+ { url = "https://files.pythonhosted.org/packages/67/32/32dc030cfa91ca0fc52baebbba2e009bb001122a1daa8b6a79ad830b38d3/pillow-11.2.1-cp313-cp313t-win_arm64.whl", hash = "sha256:225c832a13326e34f212d2072982bb1adb210e0cc0b153e688743018c94a2681", size = 2417234, upload-time = "2025-04-12T17:49:08.399Z" },
+]
+
+[[package]]
+name = "pluggy"
+version = "1.6.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f9/e2/3e91f31a7d2b083fe6ef3fa267035b518369d9511ffab804f839851d2779/pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3", size = 69412, upload-time = "2025-05-15T12:30:07.975Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746", size = 20538, upload-time = "2025-05-15T12:30:06.134Z" },
+]
+
+[[package]]
+name = "ply"
+version = "3.11"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e5/69/882ee5c9d017149285cab114ebeab373308ef0f874fcdac9beb90e0ac4da/ply-3.11.tar.gz", hash = "sha256:00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3", size = 159130, upload-time = "2018-02-15T19:01:31.097Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl", hash = "sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce", size = 49567, upload-time = "2018-02-15T19:01:27.172Z" },
+]
+
+[[package]]
+name = "pycparser"
+version = "2.22"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/1d/b2/31537cf4b1ca988837256c910a668b553fceb8f069bedc4b1c826024b52c/pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6", size = 172736, upload-time = "2024-03-30T13:22:22.564Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc", size = 117552, upload-time = "2024-03-30T13:22:20.476Z" },
+]
+
+[[package]]
+name = "pycpfcnpj"
+version = "1.8"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/d5/de/3439a4d7838410294f47aa02ae359f16ff81f154ea9b1526b18123d8d47e/pycpfcnpj-1.8.tar.gz", hash = "sha256:c9e95d2790d582aa7a7deb4b87da252364c670bd1d78f69f3d8f8f82479ed969", size = 5127, upload-time = "2024-01-17T00:02:46.406Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/3e/d9/5182d830ac9dc5ab20cfa11bf68520ca79809a67c5288d89178d63682669/pycpfcnpj-1.8-py3-none-any.whl", hash = "sha256:771d2ff00511f70453f2df8a20f529bad8deb8e35315a15ba0350d3b5360ef91", size = 6928, upload-time = "2024-01-17T00:02:45.338Z" },
+]
+
+[[package]]
+name = "pydantic"
+version = "2.11.4"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "annotated-types" },
+ { name = "pydantic-core" },
+ { name = "typing-extensions" },
+ { name = "typing-inspection" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/77/ab/5250d56ad03884ab5efd07f734203943c8a8ab40d551e208af81d0257bf2/pydantic-2.11.4.tar.gz", hash = "sha256:32738d19d63a226a52eed76645a98ee07c1f410ee41d93b4afbfa85ed8111c2d", size = 786540, upload-time = "2025-04-29T20:38:55.02Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e7/12/46b65f3534d099349e38ef6ec98b1a5a81f42536d17e0ba382c28c67ba67/pydantic-2.11.4-py3-none-any.whl", hash = "sha256:d9615eaa9ac5a063471da949c8fc16376a84afb5024688b3ff885693506764eb", size = 443900, upload-time = "2025-04-29T20:38:52.724Z" },
+]
+
+[package.optional-dependencies]
+email = [
+ { name = "email-validator" },
+]
+
+[[package]]
+name = "pydantic-core"
+version = "2.33.2"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/ad/88/5f2260bdfae97aabf98f1778d43f69574390ad787afb646292a638c923d4/pydantic_core-2.33.2.tar.gz", hash = "sha256:7cb8bc3605c29176e1b105350d2e6474142d7c1bd1d9327c4a9bdb46bf827acc", size = 435195, upload-time = "2025-04-23T18:33:52.104Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/46/8c/99040727b41f56616573a28771b1bfa08a3d3fe74d3d513f01251f79f172/pydantic_core-2.33.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:1082dd3e2d7109ad8b7da48e1d4710c8d06c253cbc4a27c1cff4fbcaa97a9e3f", size = 2015688, upload-time = "2025-04-23T18:31:53.175Z" },
+ { url = "https://files.pythonhosted.org/packages/3a/cc/5999d1eb705a6cefc31f0b4a90e9f7fc400539b1a1030529700cc1b51838/pydantic_core-2.33.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f517ca031dfc037a9c07e748cefd8d96235088b83b4f4ba8939105d20fa1dcd6", size = 1844808, upload-time = "2025-04-23T18:31:54.79Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/5e/a0a7b8885c98889a18b6e376f344da1ef323d270b44edf8174d6bce4d622/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a9f2c9dd19656823cb8250b0724ee9c60a82f3cdf68a080979d13092a3b0fef", size = 1885580, upload-time = "2025-04-23T18:31:57.393Z" },
+ { url = "https://files.pythonhosted.org/packages/3b/2a/953581f343c7d11a304581156618c3f592435523dd9d79865903272c256a/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2b0a451c263b01acebe51895bfb0e1cc842a5c666efe06cdf13846c7418caa9a", size = 1973859, upload-time = "2025-04-23T18:31:59.065Z" },
+ { url = "https://files.pythonhosted.org/packages/e6/55/f1a813904771c03a3f97f676c62cca0c0a4138654107c1b61f19c644868b/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ea40a64d23faa25e62a70ad163571c0b342b8bf66d5fa612ac0dec4f069d916", size = 2120810, upload-time = "2025-04-23T18:32:00.78Z" },
+ { url = "https://files.pythonhosted.org/packages/aa/c3/053389835a996e18853ba107a63caae0b9deb4a276c6b472931ea9ae6e48/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0fb2d542b4d66f9470e8065c5469ec676978d625a8b7a363f07d9a501a9cb36a", size = 2676498, upload-time = "2025-04-23T18:32:02.418Z" },
+ { url = "https://files.pythonhosted.org/packages/eb/3c/f4abd740877a35abade05e437245b192f9d0ffb48bbbbd708df33d3cda37/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fdac5d6ffa1b5a83bca06ffe7583f5576555e6c8b3a91fbd25ea7780f825f7d", size = 2000611, upload-time = "2025-04-23T18:32:04.152Z" },
+ { url = "https://files.pythonhosted.org/packages/59/a7/63ef2fed1837d1121a894d0ce88439fe3e3b3e48c7543b2a4479eb99c2bd/pydantic_core-2.33.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:04a1a413977ab517154eebb2d326da71638271477d6ad87a769102f7c2488c56", size = 2107924, upload-time = "2025-04-23T18:32:06.129Z" },
+ { url = "https://files.pythonhosted.org/packages/04/8f/2551964ef045669801675f1cfc3b0d74147f4901c3ffa42be2ddb1f0efc4/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:c8e7af2f4e0194c22b5b37205bfb293d166a7344a5b0d0eaccebc376546d77d5", size = 2063196, upload-time = "2025-04-23T18:32:08.178Z" },
+ { url = "https://files.pythonhosted.org/packages/26/bd/d9602777e77fc6dbb0c7db9ad356e9a985825547dce5ad1d30ee04903918/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:5c92edd15cd58b3c2d34873597a1e20f13094f59cf88068adb18947df5455b4e", size = 2236389, upload-time = "2025-04-23T18:32:10.242Z" },
+ { url = "https://files.pythonhosted.org/packages/42/db/0e950daa7e2230423ab342ae918a794964b053bec24ba8af013fc7c94846/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:65132b7b4a1c0beded5e057324b7e16e10910c106d43675d9bd87d4f38dde162", size = 2239223, upload-time = "2025-04-23T18:32:12.382Z" },
+ { url = "https://files.pythonhosted.org/packages/58/4d/4f937099c545a8a17eb52cb67fe0447fd9a373b348ccfa9a87f141eeb00f/pydantic_core-2.33.2-cp313-cp313-win32.whl", hash = "sha256:52fb90784e0a242bb96ec53f42196a17278855b0f31ac7c3cc6f5c1ec4811849", size = 1900473, upload-time = "2025-04-23T18:32:14.034Z" },
+ { url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl", hash = "sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9", size = 1955269, upload-time = "2025-04-23T18:32:15.783Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/86/1beda0576969592f1497b4ce8e7bc8cbdf614c352426271b1b10d5f0aa64/pydantic_core-2.33.2-cp313-cp313-win_arm64.whl", hash = "sha256:e80b087132752f6b3d714f041ccf74403799d3b23a72722ea2e6ba2e892555b9", size = 1893921, upload-time = "2025-04-23T18:32:18.473Z" },
+ { url = "https://files.pythonhosted.org/packages/a4/7d/e09391c2eebeab681df2b74bfe6c43422fffede8dc74187b2b0bf6fd7571/pydantic_core-2.33.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:61c18fba8e5e9db3ab908620af374db0ac1baa69f0f32df4f61ae23f15e586ac", size = 1806162, upload-time = "2025-04-23T18:32:20.188Z" },
+ { url = "https://files.pythonhosted.org/packages/f1/3d/847b6b1fed9f8ed3bb95a9ad04fbd0b212e832d4f0f50ff4d9ee5a9f15cf/pydantic_core-2.33.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95237e53bb015f67b63c91af7518a62a8660376a6a0db19b89acc77a4d6199f5", size = 1981560, upload-time = "2025-04-23T18:32:22.354Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/9a/e73262f6c6656262b5fdd723ad90f518f579b7bc8622e43a942eec53c938/pydantic_core-2.33.2-cp313-cp313t-win_amd64.whl", hash = "sha256:c2fc0a768ef76c15ab9238afa6da7f69895bb5d1ee83aeea2e3509af4472d0b9", size = 1935777, upload-time = "2025-04-23T18:32:25.088Z" },
+]
+
+[[package]]
+name = "pydantic-extra-types"
+version = "2.10.4"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "pydantic" },
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/d9/33/0cde418479949cd6aa1ac669deffcd1c37d8d9cead99ddb48f344e75f2e3/pydantic_extra_types-2.10.4.tar.gz", hash = "sha256:bf8236a63d061eb3ecb1b2afa78ba0f97e3f67aa11dbbff56ec90491e8772edc", size = 95269, upload-time = "2025-04-28T08:18:34.869Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/df/ac/bee195ee49256385fad460ce420aeb42703a648dba487c20b6fd107e42ea/pydantic_extra_types-2.10.4-py3-none-any.whl", hash = "sha256:ce064595af3cab05e39ae062752432dcd0362ff80f7e695b61a3493a4d842db7", size = 37276, upload-time = "2025-04-28T08:18:31.617Z" },
+]
+
+[[package]]
+name = "pydantic-settings"
+version = "2.9.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "pydantic" },
+ { name = "python-dotenv" },
+ { name = "typing-inspection" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/67/1d/42628a2c33e93f8e9acbde0d5d735fa0850f3e6a2f8cb1eb6c40b9a732ac/pydantic_settings-2.9.1.tar.gz", hash = "sha256:c509bf79d27563add44e8446233359004ed85066cd096d8b510f715e6ef5d268", size = 163234, upload-time = "2025-04-18T16:44:48.265Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/b6/5f/d6d641b490fd3ec2c4c13b4244d68deea3a1b970a97be64f34fb5504ff72/pydantic_settings-2.9.1-py3-none-any.whl", hash = "sha256:59b4f431b1defb26fe620c71a7d3968a710d719f5f4cdbbdb7926edeb770f6ef", size = 44356, upload-time = "2025-04-18T16:44:46.617Z" },
+]
+
+[[package]]
+name = "pydyf"
+version = "0.11.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/2e/c2/97fc6ce4ce0045080dc99446def812081b57750ed8aa67bfdfafa4561fe5/pydyf-0.11.0.tar.gz", hash = "sha256:394dddf619cca9d0c55715e3c55ea121a9bf9cbc780cdc1201a2427917b86b64", size = 17769, upload-time = "2024-07-12T12:26:51.95Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/c9/ac/d5db977deaf28c6ecbc61bbca269eb3e8f0b3a1f55c8549e5333e606e005/pydyf-0.11.0-py3-none-any.whl", hash = "sha256:0aaf9e2ebbe786ec7a78ec3fbffa4cdcecde53fd6f563221d53c6bc1328848a3", size = 8104, upload-time = "2024-07-12T12:26:49.896Z" },
+]
+
+[[package]]
+name = "pyphen"
+version = "0.17.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/69/56/e4d7e1bd70d997713649c5ce530b2d15a5fc2245a74ca820fc2d51d89d4d/pyphen-0.17.2.tar.gz", hash = "sha256:f60647a9c9b30ec6c59910097af82bc5dd2d36576b918e44148d8b07ef3b4aa3", size = 2079470, upload-time = "2025-01-20T13:18:36.296Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/7b/1f/c2142d2edf833a90728e5cdeb10bdbdc094dde8dbac078cee0cf33f5e11b/pyphen-0.17.2-py3-none-any.whl", hash = "sha256:3a07fb017cb2341e1d9ff31b8634efb1ae4dc4b130468c7c39dd3d32e7c3affd", size = 2079358, upload-time = "2025-01-20T13:18:29.629Z" },
+]
+
+[[package]]
+name = "pytest"
+version = "8.3.5"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "colorama", marker = "sys_platform == 'win32'" },
+ { name = "iniconfig" },
+ { name = "packaging" },
+ { name = "pluggy" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/ae/3c/c9d525a414d506893f0cd8a8d0de7706446213181570cdbd766691164e40/pytest-8.3.5.tar.gz", hash = "sha256:f4efe70cc14e511565ac476b57c279e12a855b11f48f212af1080ef2263d3845", size = 1450891, upload-time = "2025-03-02T12:54:54.503Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/30/3d/64ad57c803f1fa1e963a7946b6e0fea4a70df53c1a7fed304586539c2bac/pytest-8.3.5-py3-none-any.whl", hash = "sha256:c69214aa47deac29fad6c2a4f590b9c4a9fdb16a403176fe154b79c0b4d4d820", size = 343634, upload-time = "2025-03-02T12:54:52.069Z" },
+]
+
+[[package]]
+name = "pytest-cov"
+version = "6.1.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "coverage" },
+ { name = "pytest" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/25/69/5f1e57f6c5a39f81411b550027bf72842c4567ff5fd572bed1edc9e4b5d9/pytest_cov-6.1.1.tar.gz", hash = "sha256:46935f7aaefba760e716c2ebfbe1c216240b9592966e7da99ea8292d4d3e2a0a", size = 66857, upload-time = "2025-04-05T14:07:51.592Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/28/d0/def53b4a790cfb21483016430ed828f64830dd981ebe1089971cd10cab25/pytest_cov-6.1.1-py3-none-any.whl", hash = "sha256:bddf29ed2d0ab6f4df17b4c55b0a657287db8684af9c42ea546b21b1041b3dde", size = 23841, upload-time = "2025-04-05T14:07:49.641Z" },
+]
+
+[[package]]
+name = "python-dateutil"
+version = "2.9.0.post0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "six" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", size = 342432, upload-time = "2024-03-01T18:36:20.211Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892, upload-time = "2024-03-01T18:36:18.57Z" },
+]
+
+[[package]]
+name = "python-dotenv"
+version = "1.1.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/88/2c/7bb1416c5620485aa793f2de31d3df393d3686aa8a8506d11e10e13c5baf/python_dotenv-1.1.0.tar.gz", hash = "sha256:41f90bc6f5f177fb41f53e87666db362025010eb28f60a01c9143bfa33a2b2d5", size = 39920, upload-time = "2025-03-25T10:14:56.835Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl", hash = "sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d", size = 20256, upload-time = "2025-03-25T10:14:55.034Z" },
+]
+
+[[package]]
+name = "pytz"
+version = "2025.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f8/bf/abbd3cdfb8fbc7fb3d4d38d320f2441b1e7cbe29be4f23797b4a2b5d8aac/pytz-2025.2.tar.gz", hash = "sha256:360b9e3dbb49a209c21ad61809c7fb453643e048b38924c765813546746e81c3", size = 320884, upload-time = "2025-03-25T02:25:00.538Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl", hash = "sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00", size = 509225, upload-time = "2025-03-25T02:24:58.468Z" },
+]
+
+[[package]]
+name = "requests"
+version = "2.32.3"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "certifi" },
+ { name = "charset-normalizer" },
+ { name = "idna" },
+ { name = "urllib3" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/63/70/2bf7780ad2d390a8d301ad0b550f1581eadbd9a20f896afe06353c2a2913/requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760", size = 131218, upload-time = "2024-05-29T15:37:49.536Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6", size = 64928, upload-time = "2024-05-29T15:37:47.027Z" },
+]
+
+[[package]]
+name = "ruff"
+version = "0.11.10"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/e8/4c/4a3c5a97faaae6b428b336dcca81d03ad04779f8072c267ad2bd860126bf/ruff-0.11.10.tar.gz", hash = "sha256:d522fb204b4959909ecac47da02830daec102eeb100fb50ea9554818d47a5fa6", size = 4165632, upload-time = "2025-05-15T14:08:56.76Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/2f/9f/596c628f8824a2ce4cd12b0f0b4c0629a62dfffc5d0f742c19a1d71be108/ruff-0.11.10-py3-none-linux_armv6l.whl", hash = "sha256:859a7bfa7bc8888abbea31ef8a2b411714e6a80f0d173c2a82f9041ed6b50f58", size = 10316243, upload-time = "2025-05-15T14:08:12.884Z" },
+ { url = "https://files.pythonhosted.org/packages/3c/38/c1e0b77ab58b426f8c332c1d1d3432d9fc9a9ea622806e208220cb133c9e/ruff-0.11.10-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:968220a57e09ea5e4fd48ed1c646419961a0570727c7e069842edd018ee8afed", size = 11083636, upload-time = "2025-05-15T14:08:16.551Z" },
+ { url = "https://files.pythonhosted.org/packages/23/41/b75e15961d6047d7fe1b13886e56e8413be8467a4e1be0a07f3b303cd65a/ruff-0.11.10-py3-none-macosx_11_0_arm64.whl", hash = "sha256:1067245bad978e7aa7b22f67113ecc6eb241dca0d9b696144256c3a879663bca", size = 10441624, upload-time = "2025-05-15T14:08:19.032Z" },
+ { url = "https://files.pythonhosted.org/packages/b6/2c/e396b6703f131406db1811ea3d746f29d91b41bbd43ad572fea30da1435d/ruff-0.11.10-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f4854fd09c7aed5b1590e996a81aeff0c9ff51378b084eb5a0b9cd9518e6cff2", size = 10624358, upload-time = "2025-05-15T14:08:21.542Z" },
+ { url = "https://files.pythonhosted.org/packages/bd/8c/ee6cca8bdaf0f9a3704796022851a33cd37d1340bceaf4f6e991eb164e2e/ruff-0.11.10-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8b4564e9f99168c0f9195a0fd5fa5928004b33b377137f978055e40008a082c5", size = 10176850, upload-time = "2025-05-15T14:08:23.682Z" },
+ { url = "https://files.pythonhosted.org/packages/e9/ce/4e27e131a434321b3b7c66512c3ee7505b446eb1c8a80777c023f7e876e6/ruff-0.11.10-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5b6a9cc5b62c03cc1fea0044ed8576379dbaf751d5503d718c973d5418483641", size = 11759787, upload-time = "2025-05-15T14:08:25.733Z" },
+ { url = "https://files.pythonhosted.org/packages/58/de/1e2e77fc72adc7cf5b5123fd04a59ed329651d3eab9825674a9e640b100b/ruff-0.11.10-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:607ecbb6f03e44c9e0a93aedacb17b4eb4f3563d00e8b474298a201622677947", size = 12430479, upload-time = "2025-05-15T14:08:28.013Z" },
+ { url = "https://files.pythonhosted.org/packages/07/ed/af0f2340f33b70d50121628ef175523cc4c37619e98d98748c85764c8d88/ruff-0.11.10-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7b3a522fa389402cd2137df9ddefe848f727250535c70dafa840badffb56b7a4", size = 11919760, upload-time = "2025-05-15T14:08:30.956Z" },
+ { url = "https://files.pythonhosted.org/packages/24/09/d7b3d3226d535cb89234390f418d10e00a157b6c4a06dfbe723e9322cb7d/ruff-0.11.10-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2f071b0deed7e9245d5820dac235cbdd4ef99d7b12ff04c330a241ad3534319f", size = 14041747, upload-time = "2025-05-15T14:08:33.297Z" },
+ { url = "https://files.pythonhosted.org/packages/62/b3/a63b4e91850e3f47f78795e6630ee9266cb6963de8f0191600289c2bb8f4/ruff-0.11.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4a60e3a0a617eafba1f2e4186d827759d65348fa53708ca547e384db28406a0b", size = 11550657, upload-time = "2025-05-15T14:08:35.639Z" },
+ { url = "https://files.pythonhosted.org/packages/46/63/a4f95c241d79402ccdbdb1d823d156c89fbb36ebfc4289dce092e6c0aa8f/ruff-0.11.10-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:da8ec977eaa4b7bf75470fb575bea2cb41a0e07c7ea9d5a0a97d13dbca697bf2", size = 10489671, upload-time = "2025-05-15T14:08:38.437Z" },
+ { url = "https://files.pythonhosted.org/packages/6a/9b/c2238bfebf1e473495659c523d50b1685258b6345d5ab0b418ca3f010cd7/ruff-0.11.10-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:ddf8967e08227d1bd95cc0851ef80d2ad9c7c0c5aab1eba31db49cf0a7b99523", size = 10160135, upload-time = "2025-05-15T14:08:41.247Z" },
+ { url = "https://files.pythonhosted.org/packages/ba/ef/ba7251dd15206688dbfba7d413c0312e94df3b31b08f5d695580b755a899/ruff-0.11.10-py3-none-musllinux_1_2_i686.whl", hash = "sha256:5a94acf798a82db188f6f36575d80609072b032105d114b0f98661e1679c9125", size = 11170179, upload-time = "2025-05-15T14:08:43.762Z" },
+ { url = "https://files.pythonhosted.org/packages/73/9f/5c336717293203ba275dbfa2ea16e49b29a9fd9a0ea8b6febfc17e133577/ruff-0.11.10-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:3afead355f1d16d95630df28d4ba17fb2cb9c8dfac8d21ced14984121f639bad", size = 11626021, upload-time = "2025-05-15T14:08:46.451Z" },
+ { url = "https://files.pythonhosted.org/packages/d9/2b/162fa86d2639076667c9aa59196c020dc6d7023ac8f342416c2f5ec4bda0/ruff-0.11.10-py3-none-win32.whl", hash = "sha256:dc061a98d32a97211af7e7f3fa1d4ca2fcf919fb96c28f39551f35fc55bdbc19", size = 10494958, upload-time = "2025-05-15T14:08:49.601Z" },
+ { url = "https://files.pythonhosted.org/packages/24/f3/66643d8f32f50a4b0d09a4832b7d919145ee2b944d43e604fbd7c144d175/ruff-0.11.10-py3-none-win_amd64.whl", hash = "sha256:5cc725fbb4d25b0f185cb42df07ab6b76c4489b4bfb740a175f3a59c70e8a224", size = 11650285, upload-time = "2025-05-15T14:08:52.392Z" },
+ { url = "https://files.pythonhosted.org/packages/95/3a/2e8704d19f376c799748ff9cb041225c1d59f3e7711bc5596c8cfdc24925/ruff-0.11.10-py3-none-win_arm64.whl", hash = "sha256:ef69637b35fb8b210743926778d0e45e1bffa850a7c61e428c6b971549b5f5d1", size = 10765278, upload-time = "2025-05-15T14:08:54.56Z" },
+]
+
+[[package]]
+name = "s3transfer"
+version = "0.12.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "botocore" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fc/9e/73b14aed38ee1f62cd30ab93cd0072dec7fb01f3033d116875ae3e7b8b44/s3transfer-0.12.0.tar.gz", hash = "sha256:8ac58bc1989a3fdb7c7f3ee0918a66b160d038a147c7b5db1500930a607e9a1c", size = 149178, upload-time = "2025-04-22T21:08:09.787Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/89/64/d2b49620039b82688aeebd510bd62ff4cdcdb86cbf650cc72ae42c5254a3/s3transfer-0.12.0-py3-none-any.whl", hash = "sha256:35b314d7d82865756edab59f7baebc6b477189e6ab4c53050e28c1de4d9cce18", size = 84773, upload-time = "2025-04-22T21:08:08.265Z" },
+]
+
+[[package]]
+name = "six"
+version = "1.17.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81", size = 34031, upload-time = "2024-12-04T17:35:28.174Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 11050, upload-time = "2024-12-04T17:35:26.475Z" },
+]
+
+[[package]]
+name = "smart-open"
+version = "7.1.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "wrapt" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/21/30/1f41c3d3b8cec82024b4b277bfd4e5b18b765ae7279eb9871fa25c503778/smart_open-7.1.0.tar.gz", hash = "sha256:a4f09f84f0f6d3637c6543aca7b5487438877a21360e7368ccf1f704789752ba", size = 72044, upload-time = "2024-12-17T13:19:17.71Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/7a/18/9a8d9f01957aa1f8bbc5676d54c2e33102d247e146c1a3679d3bd5cc2e3a/smart_open-7.1.0-py3-none-any.whl", hash = "sha256:4b8489bb6058196258bafe901730c7db0dcf4f083f316e97269c66f45502055b", size = 61746, upload-time = "2024-12-17T13:19:21.076Z" },
+]
+
+[package.optional-dependencies]
+s3 = [
+ { name = "boto3" },
+]
+
+[[package]]
+name = "tinycss2"
+version = "1.4.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "webencodings" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/7a/fd/7a5ee21fd08ff70d3d33a5781c255cbe779659bd03278feb98b19ee550f4/tinycss2-1.4.0.tar.gz", hash = "sha256:10c0972f6fc0fbee87c3edb76549357415e94548c1ae10ebccdea16fb404a9b7", size = 87085, upload-time = "2024-10-24T14:58:29.895Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl", hash = "sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289", size = 26610, upload-time = "2024-10-24T14:58:28.029Z" },
+]
+
+[[package]]
+name = "tinyhtml5"
+version = "2.0.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "webencodings" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/fd/03/6111ed99e9bf7dfa1c30baeef0e0fb7e0bd387bd07f8e5b270776fe1de3f/tinyhtml5-2.0.0.tar.gz", hash = "sha256:086f998833da24c300c414d9fe81d9b368fd04cb9d2596a008421cbc705fcfcc", size = 179507, upload-time = "2024-10-29T15:37:14.078Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/5c/de/27c57899297163a4a84104d5cec0af3b1ac5faf62f44667e506373c6b8ce/tinyhtml5-2.0.0-py3-none-any.whl", hash = "sha256:13683277c5b176d070f82d099d977194b7a1e26815b016114f581a74bbfbf47e", size = 39793, upload-time = "2024-10-29T15:37:11.743Z" },
+]
+
+[[package]]
+name = "types-awscrt"
+version = "0.27.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/36/6c/583522cfb3c330e92e726af517a91c13247e555e021791a60f1b03c6ff16/types_awscrt-0.27.2.tar.gz", hash = "sha256:acd04f57119eb15626ab0ba9157fc24672421de56e7bd7b9f61681fedee44e91", size = 16304, upload-time = "2025-05-16T03:10:08.712Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/4c/82/1ee2e5c9d28deac086ab3a6ff07c8bc393ef013a083f546c623699881715/types_awscrt-0.27.2-py3-none-any.whl", hash = "sha256:49a045f25bbd5ad2865f314512afced933aed35ddbafc252e2268efa8a787e4e", size = 37761, upload-time = "2025-05-16T03:10:07.466Z" },
+]
+
+[[package]]
+name = "types-s3transfer"
+version = "0.13.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/42/c1/45038f259d6741c252801044e184fec4dbaeff939a58f6160d7c32bf4975/types_s3transfer-0.13.0.tar.gz", hash = "sha256:203dadcb9865c2f68fb44bc0440e1dc05b79197ba4a641c0976c26c9af75ef52", size = 14175, upload-time = "2025-05-28T02:16:07.614Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/c8/5d/6bbe4bf6a79fb727945291aef88b5ecbdba857a603f1bbcf1a6be0d3f442/types_s3transfer-0.13.0-py3-none-any.whl", hash = "sha256:79c8375cbf48a64bff7654c02df1ec4b20d74f8c5672fc13e382f593ca5565b3", size = 19588, upload-time = "2025-05-28T02:16:06.709Z" },
+]
+
+[[package]]
+name = "typing-extensions"
+version = "4.13.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/f6/37/23083fcd6e35492953e8d2aaaa68b860eb422b34627b13f2ce3eb6106061/typing_extensions-4.13.2.tar.gz", hash = "sha256:e6c81219bd689f51865d9e372991c540bda33a0379d5573cddb9a3a23f7caaef", size = 106967, upload-time = "2025-04-10T14:19:05.416Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/8b/54/b1ae86c0973cc6f0210b53d508ca3641fb6d0c56823f288d108bc7ab3cc8/typing_extensions-4.13.2-py3-none-any.whl", hash = "sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c", size = 45806, upload-time = "2025-04-10T14:19:03.967Z" },
+]
+
+[[package]]
+name = "typing-inspection"
+version = "0.4.0"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "typing-extensions" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/82/5c/e6082df02e215b846b4b8c0b887a64d7d08ffaba30605502639d44c06b82/typing_inspection-0.4.0.tar.gz", hash = "sha256:9765c87de36671694a67904bf2c96e395be9c6439bb6c87b5142569dcdd65122", size = 76222, upload-time = "2025-02-25T17:27:59.638Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/31/08/aa4fdfb71f7de5176385bd9e90852eaf6b5d622735020ad600f2bab54385/typing_inspection-0.4.0-py3-none-any.whl", hash = "sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f", size = 14125, upload-time = "2025-02-25T17:27:57.754Z" },
+]
+
+[[package]]
+name = "urllib3"
+version = "2.4.0"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/8a/78/16493d9c386d8e60e442a35feac5e00f0913c0f4b7c217c11e8ec2ff53e0/urllib3-2.4.0.tar.gz", hash = "sha256:414bc6535b787febd7567804cc015fee39daab8ad86268f1310a9250697de466", size = 390672, upload-time = "2025-04-10T15:23:39.232Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl", hash = "sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813", size = 128680, upload-time = "2025-04-10T15:23:37.377Z" },
+]
+
+[[package]]
+name = "user-management"
+version = "0.1.0"
+source = { virtual = "." }
+dependencies = [
+ { name = "layercake" },
+]
+
+[package.dev-dependencies]
+dev = [
+ { name = "boto3-stubs", extra = ["essential"] },
+ { name = "jsonlines" },
+ { name = "pytest" },
+ { name = "pytest-cov" },
+ { name = "ruff" },
+]
+
+[package.metadata]
+requires-dist = [{ name = "layercake", directory = "../layercake" }]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "boto3-stubs", extras = ["essential"], specifier = ">=1.38.26" },
+ { name = "jsonlines", specifier = ">=4.0.0" },
+ { name = "pytest", specifier = ">=8.3.4" },
+ { name = "pytest-cov", specifier = ">=6.0.0" },
+ { name = "ruff", specifier = ">=0.9.1" },
+]
+
+[[package]]
+name = "wcwidth"
+version = "0.2.13"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/6c/63/53559446a878410fc5a5974feb13d31d78d752eb18aeba59c7fef1af7598/wcwidth-0.2.13.tar.gz", hash = "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5", size = 101301, upload-time = "2024-01-06T02:10:57.829Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859", size = 34166, upload-time = "2024-01-06T02:10:55.763Z" },
+]
+
+[[package]]
+name = "weasyprint"
+version = "65.1"
+source = { registry = "https://pypi.org/simple" }
+dependencies = [
+ { name = "cffi" },
+ { name = "cssselect2" },
+ { name = "fonttools", extra = ["woff"] },
+ { name = "pillow" },
+ { name = "pydyf" },
+ { name = "pyphen" },
+ { name = "tinycss2" },
+ { name = "tinyhtml5" },
+]
+sdist = { url = "https://files.pythonhosted.org/packages/38/76/7f865f0019120be20276813097b5729b8487b93dd4aff339aa77ed8c7ad2/weasyprint-65.1.tar.gz", hash = "sha256:120281bdbd42ffaa7d7e5cedbe3182a2cef36ea5ad97fe9f357e43be6a1e58ea", size = 499028, upload-time = "2025-04-14T12:15:02.654Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/fe/9a/14f4e5fd4bba988d3684602b72f04c0b299c0f368d26c11a79ceab97aa68/weasyprint-65.1-py3-none-any.whl", hash = "sha256:9baa54282dc86929f6b877034d06b0416e2a7cacb1af3f73d80960592fd0af89", size = 298040, upload-time = "2025-04-14T12:15:00.695Z" },
+]
+
+[[package]]
+name = "webencodings"
+version = "0.5.1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/0b/02/ae6ceac1baeda530866a85075641cec12989bd8d31af6d5ab4a3e8c92f47/webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923", size = 9721, upload-time = "2017-04-05T20:21:34.189Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78", size = 11774, upload-time = "2017-04-05T20:21:32.581Z" },
+]
+
+[[package]]
+name = "wrapt"
+version = "1.17.2"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/c3/fc/e91cc220803d7bc4db93fb02facd8461c37364151b8494762cc88b0fbcef/wrapt-1.17.2.tar.gz", hash = "sha256:41388e9d4d1522446fe79d3213196bd9e3b301a336965b9e27ca2788ebd122f3", size = 55531, upload-time = "2025-01-14T10:35:45.465Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/ce/b9/0ffd557a92f3b11d4c5d5e0c5e4ad057bd9eb8586615cdaf901409920b14/wrapt-1.17.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:6ed6ffac43aecfe6d86ec5b74b06a5be33d5bb9243d055141e8cabb12aa08125", size = 53800, upload-time = "2025-01-14T10:34:21.571Z" },
+ { url = "https://files.pythonhosted.org/packages/c0/ef/8be90a0b7e73c32e550c73cfb2fa09db62234227ece47b0e80a05073b375/wrapt-1.17.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:35621ae4c00e056adb0009f8e86e28eb4a41a4bfa8f9bfa9fca7d343fe94f998", size = 38824, upload-time = "2025-01-14T10:34:22.999Z" },
+ { url = "https://files.pythonhosted.org/packages/36/89/0aae34c10fe524cce30fe5fc433210376bce94cf74d05b0d68344c8ba46e/wrapt-1.17.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a604bf7a053f8362d27eb9fefd2097f82600b856d5abe996d623babd067b1ab5", size = 38920, upload-time = "2025-01-14T10:34:25.386Z" },
+ { url = "https://files.pythonhosted.org/packages/3b/24/11c4510de906d77e0cfb5197f1b1445d4fec42c9a39ea853d482698ac681/wrapt-1.17.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5cbabee4f083b6b4cd282f5b817a867cf0b1028c54d445b7ec7cfe6505057cf8", size = 88690, upload-time = "2025-01-14T10:34:28.058Z" },
+ { url = "https://files.pythonhosted.org/packages/71/d7/cfcf842291267bf455b3e266c0c29dcb675b5540ee8b50ba1699abf3af45/wrapt-1.17.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:49703ce2ddc220df165bd2962f8e03b84c89fee2d65e1c24a7defff6f988f4d6", size = 80861, upload-time = "2025-01-14T10:34:29.167Z" },
+ { url = "https://files.pythonhosted.org/packages/d5/66/5d973e9f3e7370fd686fb47a9af3319418ed925c27d72ce16b791231576d/wrapt-1.17.2-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8112e52c5822fc4253f3901b676c55ddf288614dc7011634e2719718eaa187dc", size = 89174, upload-time = "2025-01-14T10:34:31.702Z" },
+ { url = "https://files.pythonhosted.org/packages/a7/d3/8e17bb70f6ae25dabc1aaf990f86824e4fd98ee9cadf197054e068500d27/wrapt-1.17.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:9fee687dce376205d9a494e9c121e27183b2a3df18037f89d69bd7b35bcf59e2", size = 86721, upload-time = "2025-01-14T10:34:32.91Z" },
+ { url = "https://files.pythonhosted.org/packages/6f/54/f170dfb278fe1c30d0ff864513cff526d624ab8de3254b20abb9cffedc24/wrapt-1.17.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:18983c537e04d11cf027fbb60a1e8dfd5190e2b60cc27bc0808e653e7b218d1b", size = 79763, upload-time = "2025-01-14T10:34:34.903Z" },
+ { url = "https://files.pythonhosted.org/packages/4a/98/de07243751f1c4a9b15c76019250210dd3486ce098c3d80d5f729cba029c/wrapt-1.17.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:703919b1633412ab54bcf920ab388735832fdcb9f9a00ae49387f0fe67dad504", size = 87585, upload-time = "2025-01-14T10:34:36.13Z" },
+ { url = "https://files.pythonhosted.org/packages/f9/f0/13925f4bd6548013038cdeb11ee2cbd4e37c30f8bfd5db9e5a2a370d6e20/wrapt-1.17.2-cp313-cp313-win32.whl", hash = "sha256:abbb9e76177c35d4e8568e58650aa6926040d6a9f6f03435b7a522bf1c487f9a", size = 36676, upload-time = "2025-01-14T10:34:37.962Z" },
+ { url = "https://files.pythonhosted.org/packages/bf/ae/743f16ef8c2e3628df3ddfd652b7d4c555d12c84b53f3d8218498f4ade9b/wrapt-1.17.2-cp313-cp313-win_amd64.whl", hash = "sha256:69606d7bb691b50a4240ce6b22ebb319c1cfb164e5f6569835058196e0f3a845", size = 38871, upload-time = "2025-01-14T10:34:39.13Z" },
+ { url = "https://files.pythonhosted.org/packages/3d/bc/30f903f891a82d402ffb5fda27ec1d621cc97cb74c16fea0b6141f1d4e87/wrapt-1.17.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:4a721d3c943dae44f8e243b380cb645a709ba5bd35d3ad27bc2ed947e9c68192", size = 56312, upload-time = "2025-01-14T10:34:40.604Z" },
+ { url = "https://files.pythonhosted.org/packages/8a/04/c97273eb491b5f1c918857cd26f314b74fc9b29224521f5b83f872253725/wrapt-1.17.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:766d8bbefcb9e00c3ac3b000d9acc51f1b399513f44d77dfe0eb026ad7c9a19b", size = 40062, upload-time = "2025-01-14T10:34:45.011Z" },
+ { url = "https://files.pythonhosted.org/packages/4e/ca/3b7afa1eae3a9e7fefe499db9b96813f41828b9fdb016ee836c4c379dadb/wrapt-1.17.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e496a8ce2c256da1eb98bd15803a79bee00fc351f5dfb9ea82594a3f058309e0", size = 40155, upload-time = "2025-01-14T10:34:47.25Z" },
+ { url = "https://files.pythonhosted.org/packages/89/be/7c1baed43290775cb9030c774bc53c860db140397047cc49aedaf0a15477/wrapt-1.17.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40d615e4fe22f4ad3528448c193b218e077656ca9ccb22ce2cb20db730f8d306", size = 113471, upload-time = "2025-01-14T10:34:50.934Z" },
+ { url = "https://files.pythonhosted.org/packages/32/98/4ed894cf012b6d6aae5f5cc974006bdeb92f0241775addad3f8cd6ab71c8/wrapt-1.17.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a5aaeff38654462bc4b09023918b7f21790efb807f54c000a39d41d69cf552cb", size = 101208, upload-time = "2025-01-14T10:34:52.297Z" },
+ { url = "https://files.pythonhosted.org/packages/ea/fd/0c30f2301ca94e655e5e057012e83284ce8c545df7661a78d8bfca2fac7a/wrapt-1.17.2-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9a7d15bbd2bc99e92e39f49a04653062ee6085c0e18b3b7512a4f2fe91f2d681", size = 109339, upload-time = "2025-01-14T10:34:53.489Z" },
+ { url = "https://files.pythonhosted.org/packages/75/56/05d000de894c4cfcb84bcd6b1df6214297b8089a7bd324c21a4765e49b14/wrapt-1.17.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:e3890b508a23299083e065f435a492b5435eba6e304a7114d2f919d400888cc6", size = 110232, upload-time = "2025-01-14T10:34:55.327Z" },
+ { url = "https://files.pythonhosted.org/packages/53/f8/c3f6b2cf9b9277fb0813418e1503e68414cd036b3b099c823379c9575e6d/wrapt-1.17.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:8c8b293cd65ad716d13d8dd3624e42e5a19cc2a2f1acc74b30c2c13f15cb61a6", size = 100476, upload-time = "2025-01-14T10:34:58.055Z" },
+ { url = "https://files.pythonhosted.org/packages/a7/b1/0bb11e29aa5139d90b770ebbfa167267b1fc548d2302c30c8f7572851738/wrapt-1.17.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4c82b8785d98cdd9fed4cac84d765d234ed3251bd6afe34cb7ac523cb93e8b4f", size = 106377, upload-time = "2025-01-14T10:34:59.3Z" },
+ { url = "https://files.pythonhosted.org/packages/6a/e1/0122853035b40b3f333bbb25f1939fc1045e21dd518f7f0922b60c156f7c/wrapt-1.17.2-cp313-cp313t-win32.whl", hash = "sha256:13e6afb7fe71fe7485a4550a8844cc9ffbe263c0f1a1eea569bc7091d4898555", size = 37986, upload-time = "2025-01-14T10:35:00.498Z" },
+ { url = "https://files.pythonhosted.org/packages/09/5e/1655cf481e079c1f22d0cabdd4e51733679932718dc23bf2db175f329b76/wrapt-1.17.2-cp313-cp313t-win_amd64.whl", hash = "sha256:eaf675418ed6b3b31c7a989fd007fa7c3be66ce14e5c3b27336383604c9da85c", size = 40750, upload-time = "2025-01-14T10:35:03.378Z" },
+ { url = "https://files.pythonhosted.org/packages/2d/82/f56956041adef78f849db6b289b282e72b55ab8045a75abad81898c28d19/wrapt-1.17.2-py3-none-any.whl", hash = "sha256:b18f2d1533a71f069c7f82d524a52599053d4c7166e9dd374ae2136b7f40f7c8", size = 23594, upload-time = "2025-01-14T10:35:44.018Z" },
+]
+
+[[package]]
+name = "zopfli"
+version = "0.2.3.post1"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/5e/7c/a8f6696e694709e2abcbccd27d05ef761e9b6efae217e11d977471555b62/zopfli-0.2.3.post1.tar.gz", hash = "sha256:96484dc0f48be1c5d7ae9f38ed1ce41e3675fd506b27c11a6607f14b49101e99", size = 175629, upload-time = "2024-10-18T15:42:05.946Z" }
+wheels = [
+ { url = "https://files.pythonhosted.org/packages/2b/24/0e552e2efce9a20625b56e9609d1e33c2966be33fc008681121ec267daec/zopfli-0.2.3.post1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ecb7572df5372abce8073df078207d9d1749f20b8b136089916a4a0868d56051", size = 295485, upload-time = "2024-10-18T15:41:12.57Z" },
+ { url = "https://files.pythonhosted.org/packages/08/83/b2564369fb98797a617fe2796097b1d719a4937234375757ad2a3febc04b/zopfli-0.2.3.post1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a1cf720896d2ce998bc8e051d4b4ce0d8bec007aab6243102e8e1d22a0b2fb3f", size = 163000, upload-time = "2024-10-18T15:41:13.743Z" },
+ { url = "https://files.pythonhosted.org/packages/3c/55/81d419739c2aab35e19b58bce5498dcb58e6446e5eb69f2d3c748b1c9151/zopfli-0.2.3.post1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5aad740b4d4fcbaaae4887823925166ffd062db3b248b3f432198fc287381d1a", size = 823699, upload-time = "2024-10-18T15:41:14.874Z" },
+ { url = "https://files.pythonhosted.org/packages/9e/91/89f07c8ea3c9bc64099b3461627b07a8384302235ee0f357eaa86f98f509/zopfli-0.2.3.post1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6617fb10f9e4393b331941861d73afb119cd847e88e4974bdbe8068ceef3f73f", size = 826612, upload-time = "2024-10-18T15:41:16.069Z" },
+ { url = "https://files.pythonhosted.org/packages/41/31/46670fc0c7805d42bc89702440fa9b73491d68abbc39e28d687180755178/zopfli-0.2.3.post1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a53b18797cdef27e019db595d66c4b077325afe2fd62145953275f53d84ce40c", size = 851148, upload-time = "2024-10-18T15:41:17.403Z" },
+ { url = "https://files.pythonhosted.org/packages/22/00/71ad39277bbb88f9fd20fb786bd3ff2ea4025c53b31652a0da796fb546cd/zopfli-0.2.3.post1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b78008a69300d929ca2efeffec951b64a312e9a811e265ea4a907ab546d79fa6", size = 1754215, upload-time = "2024-10-18T15:41:18.661Z" },
+ { url = "https://files.pythonhosted.org/packages/d0/4e/e542c508d20c3dfbef1b90fcf726f824f505e725747f777b0b7b7d1deb95/zopfli-0.2.3.post1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:0aa5f90d6298bda02a95bc8dc8c3c19004d5a4e44bda00b67ca7431d857b4b54", size = 1905988, upload-time = "2024-10-18T15:41:19.933Z" },
+ { url = "https://files.pythonhosted.org/packages/ba/a5/817ac1ecc888723e91dc172e8c6eeab9f48a1e52285803b965084e11bbd5/zopfli-0.2.3.post1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2768c877f76c8a0e7519b1c86c93757f3c01492ddde55751e9988afb7eff64e1", size = 1835907, upload-time = "2024-10-18T15:41:21.582Z" },
+ { url = "https://files.pythonhosted.org/packages/cd/35/2525f90c972d8aafc39784a8c00244eeee8e8221b26cbc576748ee9dc1cd/zopfli-0.2.3.post1-cp313-cp313-win32.whl", hash = "sha256:71390dbd3fbf6ebea9a5d85ffed8c26ee1453ee09248e9b88486e30e0397b775", size = 82742, upload-time = "2024-10-18T15:41:23.362Z" },
+ { url = "https://files.pythonhosted.org/packages/2f/c6/49b27570923956d52d37363e8f5df3a31a61bd7719bb8718527a9df3ae5f/zopfli-0.2.3.post1-cp313-cp313-win_amd64.whl", hash = "sha256:a86eb88e06bd87e1fff31dac878965c26b0c26db59ddcf78bb0379a954b120de", size = 99408, upload-time = "2024-10-18T15:41:24.377Z" },
+]