)]}'
{
  "log": [
    {
      "commit": "1bb44ddb3f2a9dcf97a6ac11aba34e5b6ed31291",
      "tree": "c01a87fff75dbff376d5da9839e619ffabbdd4e4",
      "parents": [
        "c5459a10370f005dc09921aee3201b5a45699f9d",
        "909c49d15b8d159be163bccc7972116baffdb47b"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 03:33:51 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 21 03:33:51 2026"
      },
      "message": "Merge pull request #218 from kjd/release-candidate-3.12rc0\n\nRelease candidate for 3.12"
    },
    {
      "commit": "909c49d15b8d159be163bccc7972116baffdb47b",
      "tree": "c01a87fff75dbff376d5da9839e619ffabbdd4e4",
      "parents": [
        "c5459a10370f005dc09921aee3201b5a45699f9d"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 03:31:29 2026"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 03:31:29 2026"
      },
      "message": "Release candidate for 3.12\n"
    },
    {
      "commit": "c5459a10370f005dc09921aee3201b5a45699f9d",
      "tree": "5a037c31e8f08d64eb7f2664847f60ce28771d13",
      "parents": [
        "a5fcbef4777af97787178f199ec380677c20c96b",
        "f1ab8f60af0c83491eeef78a13347f4fe6014c9c"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 03:15:38 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 21 03:15:38 2026"
      },
      "message": "Merge pull request #217 from kjd/housekeeping-2\n\nHousekeeping and transitional deprecation warning"
    },
    {
      "commit": "f1ab8f60af0c83491eeef78a13347f4fe6014c9c",
      "tree": "5a037c31e8f08d64eb7f2664847f60ce28771d13",
      "parents": [
        "94bcdc38fd75ae8a259132f7e3f5f1fb5373c717"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 03:12:03 2026"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 03:12:03 2026"
      },
      "message": "Add tests for transitional deprecation warning\n\nAdd tests to verify the deprecation warning is emitted when\ntransitional\u003dTrue is passed to encode(), and that no warning\nis emitted with the default. Remove the duplicate warning from\nuts46_remap() to avoid warning twice when called via encode().\n"
    },
    {
      "commit": "94bcdc38fd75ae8a259132f7e3f5f1fb5373c717",
      "tree": "60cb391c03ab9f0da3ab1e973bddbbd3347a2e3a",
      "parents": [
        "199b7ca1932d48d8c74fa1bfc5d3574ab10ebed0"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 03:03:59 2026"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 03:03:59 2026"
      },
      "message": "Add deprecation warning for transitional argument\n\nTransitional processing was removed from UTS #46 in Unicode 16.0.0,\nso the transitional argument no longer has any effect. Warn users who\nstill pass it so they can update their code before it is removed.\n"
    },
    {
      "commit": "199b7ca1932d48d8c74fa1bfc5d3574ab10ebed0",
      "tree": "1d0f29c1c67f47cb1103e132c9a956230e634e7f",
      "parents": [
        "a5fcbef4777af97787178f199ec380677c20c96b"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 02:50:58 2026"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 02:50:58 2026"
      },
      "message": "Code quality and CI housekeeping\n\n- Remove dead Python 2 version guard in tools/idna-data\n- Add --test-dir option to make-libdata for separate test output\n- Rename SCRIPT_WHITELIST to CONTEXT_SCRIPTS\n- Replace raise/except IndexError control flow in uts46_remap\n- Rename CI job from mypy to lint\n- Use 3.14 instead of 3.14-dev in CI build matrix\n- Remove dead requirements.txt check from CI\n"
    },
    {
      "commit": "a5fcbef4777af97787178f199ec380677c20c96b",
      "tree": "6e2dc69ab305b5b8b0475e3ba9df833c8593ddb8",
      "parents": [
        "5c0453b1ba2e448d88025c10f60d0433b07f5f54",
        "80915cfd4070a9266dbc83dce7d99fccea6a17af"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 02:23:40 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 21 02:23:40 2026"
      },
      "message": "Merge pull request #216 from kjd/unicode-17-bis\n\nAdd Unicode 17 support"
    },
    {
      "commit": "80915cfd4070a9266dbc83dce7d99fccea6a17af",
      "tree": "6e2dc69ab305b5b8b0475e3ba9df833c8593ddb8",
      "parents": [
        "007bcb6836c18547892bb02f0a426f5cdea47106"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 02:16:04 2026"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 02:16:04 2026"
      },
      "message": "Fix ruff format compliance in generated idnadata.py\n\nAdd missing blank line in idna-data generator so the output has two\nblank lines between the joining_types() function and the\ncodepoint_classes assignment, as required by PEP 8.\n"
    },
    {
      "commit": "007bcb6836c18547892bb02f0a426f5cdea47106",
      "tree": "bc0488c96f755bd8a8b7af4f335d2caab7966d20",
      "parents": [
        "5c0453b1ba2e448d88025c10f60d0433b07f5f54"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 02:09:39 2026"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 02:09:39 2026"
      },
      "message": "Update to Unicode 17.0.0\n\nUpdate IDNA data tables and UTS #46 mapping to Unicode 17.0.0.\nThe UTS #46 data URL scheme changed from Public/idna/{version} to\nPublic/{version}/idna. Skip five UTS #46 test vectors that exercise\ncodepoints (U+32931, U+32B9A) newly assigned in Unicode 17.0,\nwhich cause bidi lookup failures on Python runtimes bundled with\nearlier Unicode data.\n"
    },
    {
      "commit": "5c0453b1ba2e448d88025c10f60d0433b07f5f54",
      "tree": "55d7eee59a339fe8cc804846aec71c14161136a5",
      "parents": [
        "1f8ba4510848e3ceabd917d9ca799d2ff1956f65",
        "1b3c8bb3dce917e295cba93b683168c2a330f27f"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 01:48:57 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 21 01:48:57 2026"
      },
      "message": "Merge pull request #215 from kjd/housekeeping\n\nRepository housekeeping"
    },
    {
      "commit": "1b3c8bb3dce917e295cba93b683168c2a330f27f",
      "tree": "55d7eee59a339fe8cc804846aec71c14161136a5",
      "parents": [
        "f3cede8dcc4e3cb816212bd571e89408e7bf6347",
        "1f8ba4510848e3ceabd917d9ca799d2ff1956f65"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 01:47:25 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 21 01:47:25 2026"
      },
      "message": "Merge branch \u0027master\u0027 into housekeeping"
    },
    {
      "commit": "f3cede8dcc4e3cb816212bd571e89408e7bf6347",
      "tree": "08827046315675f5e7604ff5b7a1bcf75c0f4b1d",
      "parents": [
        "69e3c714a3c924adfab5e35472a9de156782941b"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 01:41:40 2026"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 01:41:40 2026"
      },
      "message": "Tidy README wording on ASCII-compatible encoding and emoji domains\n"
    },
    {
      "commit": "69e3c714a3c924adfab5e35472a9de156782941b",
      "tree": "2a7e4ac94dceda5ad3716630ffb0734f5f245385",
      "parents": [
        "21cd5ddac6a1cc5e2bd4ae9e477ebe5f103f8225"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 01:34:35 2026"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 01:34:35 2026"
      },
      "message": "Remove redundant flake8 and tidy CI configuration\n\n- Remove flake8 from CI workflow and optional dependencies (ruff handles linting)\n- Update actions/checkout pin in scorecard.yml to match other workflows\n- Remove leftover placeholder comment in deploy.yml\n"
    },
    {
      "commit": "21cd5ddac6a1cc5e2bd4ae9e477ebe5f103f8225",
      "tree": "35832bf3f11805c118182ba0040292d6fe2d7f99",
      "parents": [
        "1448ddb93b3164558d93c3ad12d451dbe9eb7a0b"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 01:01:38 2026"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 01:01:38 2026"
      },
      "message": "Update copyright year to 2026\n"
    },
    {
      "commit": "1448ddb93b3164558d93c3ad12d451dbe9eb7a0b",
      "tree": "e251be3f4ea556565a4f99f0e33f0a97c434d877",
      "parents": [
        "d86e1a3aabc469dd855dfa8911e1b0fe111c5d36"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 00:59:38 2026"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 00:59:38 2026"
      },
      "message": "Fix RST formatting of history file\n"
    },
    {
      "commit": "1f8ba4510848e3ceabd917d9ca799d2ff1956f65",
      "tree": "c92c4ff52fa6241158da0de31a6100433ad937fa",
      "parents": [
        "d86e1a3aabc469dd855dfa8911e1b0fe111c5d36",
        "3500a63d10aae79854c984b8329f1dfed1aaa420"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 00:51:47 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 21 00:51:47 2026"
      },
      "message": "Merge pull request #214 from kjd/update-github-actions-versions\n\nUpdate GitHub Actions to latest pinned versions"
    },
    {
      "commit": "3500a63d10aae79854c984b8329f1dfed1aaa420",
      "tree": "c92c4ff52fa6241158da0de31a6100433ad937fa",
      "parents": [
        "d86e1a3aabc469dd855dfa8911e1b0fe111c5d36"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 00:48:36 2026"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 00:48:36 2026"
      },
      "message": "Update GitHub Actions to latest pinned versions\n\n- actions/checkout v4.2.2 -\u003e v6.0.2\n- actions/setup-python v5.6.0 -\u003e v6.2.0\n- actions/upload-artifact v4.6.2 -\u003e v7.0.1\n- actions/download-artifact v4.3.0 -\u003e v8.0.1\n- pypa/gh-action-pypi-publish v1.12.4 -\u003e v1.14.0\n- sigstore/gh-action-sigstore-python v3.0.0 -\u003e v3.3.0\n- ossf/scorecard-action v2.4.0 -\u003e v2.4.3\n- github/codeql-action v2.2.4 -\u003e v3.35.2\n"
    },
    {
      "commit": "d86e1a3aabc469dd855dfa8911e1b0fe111c5d36",
      "tree": "361365792577b66787b4c3f5e4e310e6fdf1903d",
      "parents": [
        "9de708980608399cb4dc8ced963d037c28928342",
        "a6d7c40e261bc1f14a9a9eb7154ab2194368ec58"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 00:41:33 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 21 00:41:33 2026"
      },
      "message": "Merge pull request #211 from rodrigobnogueira/fix-import-time-regression\n\nFix import time regression by lazy-loading joining_types"
    },
    {
      "commit": "a6d7c40e261bc1f14a9a9eb7154ab2194368ec58",
      "tree": "361365792577b66787b4c3f5e4e310e6fdf1903d",
      "parents": [
        "bb5dd48d0db96d6c0368900208171e51599c1814",
        "9de708980608399cb4dc8ced963d037c28928342"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 00:30:32 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 21 00:30:32 2026"
      },
      "message": "Merge branch \u0027master\u0027 into fix-import-time-regression"
    },
    {
      "commit": "9de708980608399cb4dc8ced963d037c28928342",
      "tree": "36b2c1c2c9dc0178cf23000d519671eda6da39e8",
      "parents": [
        "2309a9c3df2302527cbc14870043412c8ffc6598",
        "4ed3a9e20b6d365f4fdfa9e1ec89b08af14590b1"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 00:20:25 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 21 00:20:25 2026"
      },
      "message": "Merge pull request #213 from kjd/claude/optimize-uts46data-011CUKAuVHNzTcaaB1JgeycG\n\nOptimize uts46data.py for better performance (fixes #203)"
    },
    {
      "commit": "4ed3a9e20b6d365f4fdfa9e1ec89b08af14590b1",
      "tree": "36b2c1c2c9dc0178cf23000d519671eda6da39e8",
      "parents": [
        "ee27cb4bb717f34aa6eec5b4f476c13fe5906e50",
        "2309a9c3df2302527cbc14870043412c8ffc6598"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Tue Apr 21 00:17:53 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 21 00:17:53 2026"
      },
      "message": "Merge branch \u0027master\u0027 into claude/optimize-uts46data-011CUKAuVHNzTcaaB1JgeycG"
    },
    {
      "commit": "2309a9c3df2302527cbc14870043412c8ffc6598",
      "tree": "5e23137084638b13a153323f1c8fd155f38357db",
      "parents": [
        "dfe1beaa9363bb92328d32ee1c431ae974108c1d",
        "a9c1aa1f95ec1dc05f894a85416200692c1fce15"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Mon Apr 20 22:52:58 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Apr 20 22:52:58 2026"
      },
      "message": "Merge pull request #212 from Nadav0077/https-unicode-fetch\n\nUse HTTPS when downloading Unicode data"
    },
    {
      "commit": "a9c1aa1f95ec1dc05f894a85416200692c1fce15",
      "tree": "5e23137084638b13a153323f1c8fd155f38357db",
      "parents": [
        "dfe1beaa9363bb92328d32ee1c431ae974108c1d"
      ],
      "author": {
        "name": "Nadav0077",
        "email": "18245584+Nadav0077@users.noreply.github.com",
        "time": "Sun Apr 19 16:42:37 2026"
      },
      "committer": {
        "name": "Nadav0077",
        "email": "18245584+Nadav0077@users.noreply.github.com",
        "time": "Sun Apr 19 16:42:37 2026"
      },
      "message": "Use HTTPS when downloading Unicode data\n\nunicode.org has supported HTTPS for a long time, so there\u0027s no reason to keep fetching the UCD and UTS #46 files over plain HTTP. These downloads end up baked into idnadata.py and uts46data.py, which ship in the released package, so using TLS closes a small tampering window if a release is ever built on an untrusted network.\n"
    },
    {
      "commit": "bb5dd48d0db96d6c0368900208171e51599c1814",
      "tree": "2fc926eb6cd9d6a3ebc922cdc6dd7da8033eda8d",
      "parents": [
        "67ac5ac2f87f687c306424c4fdde798b344e4501"
      ],
      "author": {
        "name": "rodrigo.nogueira",
        "email": "rodrigo.nogueira@prf.gov.br",
        "time": "Thu Feb 12 17:59:12 2026"
      },
      "committer": {
        "name": "rodrigo.nogueira",
        "email": "rodrigo.nogueira@prf.gov.br",
        "time": "Thu Feb 12 17:59:12 2026"
      },
      "message": "feat: update IDNA data to Unicode 16.0.0 and standardize type hints in generated code.\n"
    },
    {
      "commit": "67ac5ac2f87f687c306424c4fdde798b344e4501",
      "tree": "d47297c85ce842569dbde8618f78e890bd9d2462",
      "parents": [
        "dfe1beaa9363bb92328d32ee1c431ae974108c1d"
      ],
      "author": {
        "name": "rodrigo.nogueira",
        "email": "rodrigo.nogueira@prf.gov.br",
        "time": "Fri Feb 06 20:16:55 2026"
      },
      "committer": {
        "name": "rodrigo.nogueira",
        "email": "rodrigo.nogueira@prf.gov.br",
        "time": "Fri Feb 06 22:08:01 2026"
      },
      "message": "Fix import time regression by lazy-loading joining_types\n\nAddresses #188. The joining_types dictionary (used for CONTEXTJ validation)\nis now wrapped in a @lru_cache(None)-decorated function to defer dictionary\nconstruction until first access. Uses lru_cache instead of cache for Python\n3.8+ compatibility.\n\n- Modified tools/idna-data generator to emit lazy-loaded format\n- Updated core.py to call joining_types() as a function\n- Manually regenerated idnadata.py (generator could not run due to network)\n\nThis reduces import time by ~53% (from ~6.5ms to ~3.1ms).\n"
    },
    {
      "commit": "ee27cb4bb717f34aa6eec5b4f476c13fe5906e50",
      "tree": "0d076259c4d744861cf368d777d9ebee70cdb27b",
      "parents": [
        "dfe1beaa9363bb92328d32ee1c431ae974108c1d"
      ],
      "author": {
        "name": "Claude",
        "email": "noreply@anthropic.com",
        "time": "Mon Oct 20 21:41:04 2025"
      },
      "committer": {
        "name": "Claude",
        "email": "noreply@anthropic.com",
        "time": "Mon Oct 20 21:41:04 2025"
      },
      "message": "Optimize uts46data.py for better performance (fixes #203)\n\nThis commit simplifies uts46data.py by replacing the segmented function\napproach with a single tuple literal, resulting in significant performance\nand size improvements.\n\nChanges:\n- Removed 84 segment functions (_seg_0 through _seg_83)\n- Replaced with single tuple literal assignment\n- Updated tools/idna-data generator to produce optimized format\n- Removed obsolete UTS46_SEGMENT_SIZE constant\n\nBenefits:\n- File size reduced from 239KB to 197KB (17.6% smaller)\n- Line count reduced from 8,841 to 8,336 (5.7% fewer lines)\n- Faster module import (no function calls or list concatenations at import time)\n- Simpler, more maintainable code structure\n- All 6,366 tests pass successfully\n\nThe new format uses a direct tuple literal which is more efficient for\nPython to parse and load, eliminating the overhead of:\n- 84 function definitions and calls\n- List object creation and concatenation\n- List-to-tuple conversion\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude \u003cnoreply@anthropic.com\u003e\n"
    },
    {
      "commit": "dfe1beaa9363bb92328d32ee1c431ae974108c1d",
      "tree": "21c6a96b73925910f24fbf90c73ea968e0ce620e",
      "parents": [
        "b375d27eaf2a905fbec1fe8f63af5ed9f7e1e824",
        "ec4c8ae566c017922cec963616d7a43d293673e3"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 15:01:23 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Oct 12 15:01:23 2025"
      },
      "message": "Merge pull request #209 from kjd/release-3.11\n\nRelease 3.11"
    },
    {
      "commit": "ec4c8ae566c017922cec963616d7a43d293673e3",
      "tree": "21c6a96b73925910f24fbf90c73ea968e0ce620e",
      "parents": [
        "ad949ee3052c2265c66e3df2dd8871a5832ba327",
        "b375d27eaf2a905fbec1fe8f63af5ed9f7e1e824"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 14:58:09 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Oct 12 14:58:09 2025"
      },
      "message": "Merge branch \u0027master\u0027 into release-3.11"
    },
    {
      "commit": "ad949ee3052c2265c66e3df2dd8871a5832ba327",
      "tree": "21c6a96b73925910f24fbf90c73ea968e0ce620e",
      "parents": [
        "cae4ba779e0a543823894bd4136651c187944da8"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 14:51:23 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 14:51:23 2025"
      },
      "message": "Release v3.11\n"
    },
    {
      "commit": "cae4ba779e0a543823894bd4136651c187944da8",
      "tree": "6403016f40649d6692942581f39b9e49a523446b",
      "parents": [
        "8adb305165c77c4a45d1568a70ead75d2197692c"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 14:44:00 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 14:44:00 2025"
      },
      "message": "Second release candidate for 3.11\n"
    },
    {
      "commit": "8adb305165c77c4a45d1568a70ead75d2197692c",
      "tree": "4a95467717752c4d0679e8afdafd177bf42ea908",
      "parents": [
        "74cb2b652bb06133b0c4ab52cc98221be63162cf"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 14:29:05 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 14:29:05 2025"
      },
      "message": "Add space in RST link\n"
    },
    {
      "commit": "74cb2b652bb06133b0c4ab52cc98221be63162cf",
      "tree": "a809cb5cb87d6094197e623b62e008a42e19ce44",
      "parents": [
        "05dab09fdde5bbf7d52f757c4dc62e0ba934cca8"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 14:23:07 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 14:23:07 2025"
      },
      "message": "Release candidate for 3.11\n"
    },
    {
      "commit": "05dab09fdde5bbf7d52f757c4dc62e0ba934cca8",
      "tree": "e6bdb695b2d59d2404e70808adb51e621499e122",
      "parents": [
        "90eac78b737d26613776b490432fc6d926b15c55"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 14:19:23 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 14:19:23 2025"
      },
      "message": "Format idna-data with ruff\n"
    },
    {
      "commit": "b375d27eaf2a905fbec1fe8f63af5ed9f7e1e824",
      "tree": "ab2ee370c0f8a3cf8ae37396d8865a21933acd51",
      "parents": [
        "bfa635561a30afc919cb83a2e1d2b0571bc4e464"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Oct 12 00:27:35 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Oct 12 00:27:35 2025"
      },
      "message": "Implement Unicode 16 (#208)\n\n* Update to Unicode 16 test vectors\n* Update README to reflect transitional processing is gone\n* Pre-compute UTS46 tests as part of make-libdata\n* Don\u0027t use ruff to format tests\n* Remove extra UTS46 test vector\n* Omit vectors known to be broken in test suite"
    },
    {
      "commit": "90eac78b737d26613776b490432fc6d926b15c55",
      "tree": "ab2ee370c0f8a3cf8ae37396d8865a21933acd51",
      "parents": [
        "a31ce7ecc0b767e40abb5ce28744ac567b73f366"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Oct 11 23:43:47 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Oct 11 23:43:47 2025"
      },
      "message": "Apply ruff formatting\n"
    },
    {
      "commit": "a31ce7ecc0b767e40abb5ce28744ac567b73f366",
      "tree": "24588081d034e1f2b649240f948d3e272bd9f608",
      "parents": [
        "81f03334211c78c1832991ce70ebafb3cbfbb79c"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Oct 11 23:10:15 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Oct 11 23:10:15 2025"
      },
      "message": "Remove errant test vectors\n"
    },
    {
      "commit": "81f03334211c78c1832991ce70ebafb3cbfbb79c",
      "tree": "66eb8d325d4529510b0389e1c542fd92e9c49a80",
      "parents": [
        "a0f32578c0cac28c7ffbb4c860c92eb2b9b579bd"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 13:26:04 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 13:26:04 2025"
      },
      "message": "Omit vectors known to be broken in test suite\n"
    },
    {
      "commit": "a0f32578c0cac28c7ffbb4c860c92eb2b9b579bd",
      "tree": "f7544b4e17fd2bc774e6a1b7d42bb884994a222b",
      "parents": [
        "38d98860e6a1ab92fd35ab09ea4739feabf339a3",
        "bfa635561a30afc919cb83a2e1d2b0571bc4e464"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 03:42:40 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 03:42:40 2025"
      },
      "message": "Merge branch \u0027master\u0027 into unicode-16-uts46-changes\n"
    },
    {
      "commit": "38d98860e6a1ab92fd35ab09ea4739feabf339a3",
      "tree": "9fd1e62f182fdca0f75f4b1386ea74a4e1bd461a",
      "parents": [
        "73c9b6feaed63ee0302c6a9ae607ba0cc64f2fa0"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 03:36:19 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 03:36:19 2025"
      },
      "message": "Remove extra UTS46 test vector\n"
    },
    {
      "commit": "73c9b6feaed63ee0302c6a9ae607ba0cc64f2fa0",
      "tree": "16596404d96684683135712217185b5250adda34",
      "parents": [
        "f889672471954059c7dcc34f404ca8891f9fd08b"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 03:31:44 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 03:31:44 2025"
      },
      "message": "Don\u0027t use ruff to format tests\n"
    },
    {
      "commit": "f889672471954059c7dcc34f404ca8891f9fd08b",
      "tree": "aba61f46cbdb6d4129c4b43e49bf596c0026aedd",
      "parents": [
        "a2e0bc77aaec8c15ad24d32935f0a0c5f4b946b6"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 03:15:46 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 03:15:46 2025"
      },
      "message": "IdnaTestV2.txt no longer needed due to new test method\n"
    },
    {
      "commit": "a2e0bc77aaec8c15ad24d32935f0a0c5f4b946b6",
      "tree": "2b389ac3b64bc438c890f5241da464ba70f544c6",
      "parents": [
        "c4dd8654b495bc05b531222e0bba5b79a701d381"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 03:12:35 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 03:12:35 2025"
      },
      "message": "WIP: Implement new UTS46 handling in Unicode 16\n"
    },
    {
      "commit": "bfa635561a30afc919cb83a2e1d2b0571bc4e464",
      "tree": "c2384443c0ba927a5e850d6f685bc7d67627c8fd",
      "parents": [
        "0e60bcf0ccebba97b434ebbc60da7afd9548852f",
        "3d7846e881f1ab5afe0adff3b8eb19148185e81c"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 00:46:09 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 10 00:46:09 2025"
      },
      "message": "Merge pull request #202 from SpecLad/pep-639\n\nConvert the license metadata to the PEP 639 format"
    },
    {
      "commit": "0e60bcf0ccebba97b434ebbc60da7afd9548852f",
      "tree": "acae63c7145da3f1b42dbdcdcea04ca42d145633",
      "parents": [
        "7544a542bd2d3496ff9c66160b9a5f51e9309223",
        "67c4df59c5a224d8b35384b6337f8f65ff0ce728"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 00:44:08 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 10 00:44:08 2025"
      },
      "message": "Merge pull request #205 from sisp/build/flit-core-3-11\n\nRequire flit-core v3.11+ to include license file metadata in the distribution"
    },
    {
      "commit": "67c4df59c5a224d8b35384b6337f8f65ff0ce728",
      "tree": "acae63c7145da3f1b42dbdcdcea04ca42d145633",
      "parents": [
        "ec711c4785ef523d9e38f4d3c8ee6aad2da691af",
        "7544a542bd2d3496ff9c66160b9a5f51e9309223"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 00:41:29 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 10 00:41:29 2025"
      },
      "message": "Merge branch \u0027master\u0027 into build/flit-core-3-11"
    },
    {
      "commit": "7544a542bd2d3496ff9c66160b9a5f51e9309223",
      "tree": "9e38dadc0f4e6e81d5f195fb0481443ab679f598",
      "parents": [
        "082ecbd0ba790d90894291fdea7ff210e07c2a2b"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 00:40:36 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 00:40:36 2025"
      },
      "message": "Test on Python 3.14 release\n"
    },
    {
      "commit": "082ecbd0ba790d90894291fdea7ff210e07c2a2b",
      "tree": "a11f5931a0238c4f7c789c38b4c880d88d8b52de",
      "parents": [
        "07d87ff0e9e1ac69d09ea24950e4859505d73f65",
        "6e64ad45cbd38bdcd2f34d8329c0355496d1186c"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 00:39:15 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 10 00:39:15 2025"
      },
      "message": "Merge pull request #206 from EwoutH/patch-1\n\nAdd Python 3.14 classifier in pyproject.toml"
    },
    {
      "commit": "6e64ad45cbd38bdcd2f34d8329c0355496d1186c",
      "tree": "a11f5931a0238c4f7c789c38b4c880d88d8b52de",
      "parents": [
        "93d75d7131fb3ccd4ddd8116fd6abdd799a40c5f",
        "07d87ff0e9e1ac69d09ea24950e4859505d73f65"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 00:37:11 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 10 00:37:11 2025"
      },
      "message": "Merge branch \u0027master\u0027 into patch-1"
    },
    {
      "commit": "07d87ff0e9e1ac69d09ea24950e4859505d73f65",
      "tree": "f01ed728ef114df76eddbcdd0b866259fb3c99b3",
      "parents": [
        "cde1d8a4d292b75aa195f0d7a8600be2c26ccedb",
        "fa34c71c48385e34df3626708ac90f8da569234a"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 00:35:36 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 10 00:35:36 2025"
      },
      "message": "Merge pull request #207 from kjd/fix-type-errors\n\nFix type error in ulabel() by ensuring label_bytes is consistently bytes"
    },
    {
      "commit": "fa34c71c48385e34df3626708ac90f8da569234a",
      "tree": "f01ed728ef114df76eddbcdd0b866259fb3c99b3",
      "parents": [
        "cde1d8a4d292b75aa195f0d7a8600be2c26ccedb"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 00:23:05 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Oct 10 00:23:05 2025"
      },
      "message": "Fix type error in ulabel() by ensuring label_bytes is consistently bytes\n"
    },
    {
      "commit": "93d75d7131fb3ccd4ddd8116fd6abdd799a40c5f",
      "tree": "7c2ce3070fc334efafa2a7f06d115110a53e6f93",
      "parents": [
        "cde1d8a4d292b75aa195f0d7a8600be2c26ccedb"
      ],
      "author": {
        "name": "Ewout ter Hoeven",
        "email": "15776622+EwoutH@users.noreply.github.com",
        "time": "Fri Sep 26 12:43:28 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 26 12:43:28 2025"
      },
      "message": "Add Python 3.14 classifier in pyproject.toml"
    },
    {
      "commit": "ec711c4785ef523d9e38f4d3c8ee6aad2da691af",
      "tree": "fcb7708f83108c75459640db320c7665bf011809",
      "parents": [
        "cde1d8a4d292b75aa195f0d7a8600be2c26ccedb"
      ],
      "author": {
        "name": "Sigurd Spieckermann",
        "email": "sigurd.spieckermann@gmail.com",
        "time": "Wed Sep 10 12:57:10 2025"
      },
      "committer": {
        "name": "Sigurd Spieckermann",
        "email": "sigurd.spieckermann@gmail.com",
        "time": "Wed Sep 10 12:57:10 2025"
      },
      "message": "Require flit-core v3.11+ to include license file metadata in the distribution\n"
    },
    {
      "commit": "3d7846e881f1ab5afe0adff3b8eb19148185e81c",
      "tree": "dad2fb0049a8d1b4cdf4643472b7605545f4ea72",
      "parents": [
        "cde1d8a4d292b75aa195f0d7a8600be2c26ccedb"
      ],
      "author": {
        "name": "Roman Donchenko",
        "email": "rdonchen@outlook.com",
        "time": "Fri May 02 22:07:33 2025"
      },
      "committer": {
        "name": "Roman Donchenko",
        "email": "rdonchen@outlook.com",
        "time": "Fri May 02 22:07:33 2025"
      },
      "message": "Convert the license metadata to the PEP 639 format\n\nThe table form of `project.license` and license classifiers are deprecated.\n"
    },
    {
      "commit": "c4dd8654b495bc05b531222e0bba5b79a701d381",
      "tree": "321c87c253f321976695a472e3b5312cdb5c0963",
      "parents": [
        "ba66696c3e1cd43b444dc81360339cc77040a3d3",
        "cde1d8a4d292b75aa195f0d7a8600be2c26ccedb"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 02:38:18 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 02:38:18 2025"
      },
      "message": "Resync with master branch\n"
    },
    {
      "commit": "cde1d8a4d292b75aa195f0d7a8600be2c26ccedb",
      "tree": "64f4b1c31032d8739daa037af0b8fbd0f924a75f",
      "parents": [
        "b6c6f2c3c647553508c3941564cf0089fa85c614"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 02:16:27 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 02:16:27 2025"
      },
      "message": "Remote trove classifiers for 3.6 and 3.7\n"
    },
    {
      "commit": "b6c6f2c3c647553508c3941564cf0089fa85c614",
      "tree": "02ce89fe3474fa4dfe4dba7a70157cca3681ee47",
      "parents": [
        "f7f55f50abac4c357f6458c3be73b82f3cde2d3c",
        "605a2f67a3270801432544c43f7b288d0bc941ad"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 02:13:41 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 02 02:13:41 2025"
      },
      "message": "Merge pull request #201 from kjd/rev-python-versions\n\nUpdate Python version support (closes #156)"
    },
    {
      "commit": "605a2f67a3270801432544c43f7b288d0bc941ad",
      "tree": "02ce89fe3474fa4dfe4dba7a70157cca3681ee47",
      "parents": [
        "8136862200dafc73f9375ef9c190de32c29fc309"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 02:05:00 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 02:05:00 2025"
      },
      "message": "Update version policy to reflect current reality\n"
    },
    {
      "commit": "8136862200dafc73f9375ef9c190de32c29fc309",
      "tree": "9ba365c032e40eb4464e01cdbe749b77dcf32d89",
      "parents": [
        "2db6a3a0a36f52255e105609f3da7fb11f8c71d3"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 02:00:07 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 02:00:07 2025"
      },
      "message": "No need to mention Python 2 any more\n"
    },
    {
      "commit": "2db6a3a0a36f52255e105609f3da7fb11f8c71d3",
      "tree": "0a18ea6c9176c6ccdf8d00ecc02a71a41ef1bdfa",
      "parents": [
        "17f30a644563860262436a552d99e3ab0c505da4"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 01:59:36 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 01:59:36 2025"
      },
      "message": "Reflect 3.8 as the minimum version\n"
    },
    {
      "commit": "17f30a644563860262436a552d99e3ab0c505da4",
      "tree": "5f8756217c327c45c08e474886a2b2107953d260",
      "parents": [
        "f7f55f50abac4c357f6458c3be73b82f3cde2d3c"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 01:55:10 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 01:55:56 2025"
      },
      "message": "Make minimum version Python 3.8; start testing 3.14\n\nNo longer able to reliably test 3.7 and earlier, and they are well\nand truly end-of-life too.\n"
    },
    {
      "commit": "f7f55f50abac4c357f6458c3be73b82f3cde2d3c",
      "tree": "c6632c5caea36496a09bd682f2f65d1b8b9cf5ae",
      "parents": [
        "df47c76f5f0aac526b3504819d8678a1b7866f7d"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 00:57:55 2025"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 00:57:55 2025"
      },
      "message": "Don\u0027t post to TestPyPI if already exists\n"
    },
    {
      "commit": "df47c76f5f0aac526b3504819d8678a1b7866f7d",
      "tree": "c73f7458d14b04531e67fd6f8cfb15f50c341fa5",
      "parents": [
        "384f16825ef92cc08bb7e11bd42427bdaf87401d"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri May 02 00:53:02 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 02 00:53:02 2025"
      },
      "message": "Start using Test PyPI (closes #183) (#200)\n\nStart using TestPyPI again as I now have access to the `idna` project in the TestPyPI repository.\n\nFixed incidental failures since last commit, mostly derived from Ubuntu 20.04 no longer being available on Github for test running (needed for Python 3.6), and Python 3.7 needs designation to run on Ubuntu 22.04."
    },
    {
      "commit": "ba66696c3e1cd43b444dc81360339cc77040a3d3",
      "tree": "1a938ab8af9d91032c8b19b16c8e89d3b73b5cb5",
      "parents": [
        "2e4b58741f7d47ae46fb11c558c1007a86b76b48"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Mon Sep 16 20:20:27 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Mon Sep 16 20:20:27 2024"
      },
      "message": "WIP: Pre-compute UTS46 tests as part of make-libdata\n\nRather than generate them dynamically, pre-compute them just like we do\nfor the UTS46 data itself.\n"
    },
    {
      "commit": "384f16825ef92cc08bb7e11bd42427bdaf87401d",
      "tree": "54f62e1bb71471939b86d4eb458c2c373e43fad4",
      "parents": [
        "3eef1680132907e90afb0feb29136f6895001f3c",
        "729225d8b0c58bc66bb38d1d0faf281a757ece59"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Sep 15 18:03:01 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 15 18:03:01 2024"
      },
      "message": "Merge pull request #195 from kjd/release-3.10\n\nRelease v3.10"
    },
    {
      "commit": "729225d8b0c58bc66bb38d1d0faf281a757ece59",
      "tree": "54f62e1bb71471939b86d4eb458c2c373e43fad4",
      "parents": [
        "3eef1680132907e90afb0feb29136f6895001f3c"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim.davies@iana.org",
        "time": "Sun Sep 15 18:00:46 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim.davies@iana.org",
        "time": "Sun Sep 15 18:00:46 2024"
      },
      "message": "Release v3.10\n"
    },
    {
      "commit": "3eef1680132907e90afb0feb29136f6895001f3c",
      "tree": "15b8e3e8e350c0a2a293d2525b4fc9956de82092",
      "parents": [
        "c43ac75cf649511c3d593164a32a3ff9cd0cdcd1",
        "ceca619a214c816e04c7c233565280bf3998c938"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sun Sep 15 17:54:13 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 15 17:54:13 2024"
      },
      "message": "Merge pull request #194 from kjd/revert-unicode-16\n\nRevert Unicode 16.0.0 data updates"
    },
    {
      "commit": "ceca619a214c816e04c7c233565280bf3998c938",
      "tree": "15b8e3e8e350c0a2a293d2525b4fc9956de82092",
      "parents": [
        "c43ac75cf649511c3d593164a32a3ff9cd0cdcd1"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim.davies@iana.org",
        "time": "Sun Sep 15 17:51:56 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim.davies@iana.org",
        "time": "Sun Sep 15 17:51:56 2024"
      },
      "message": "Revert Unicode 16.0.0 data updates\n\nDue to changes in the UTS46 processing logic, this is going to require\na bit more work to implement. Since there is collateral impacts,\nreverting back to data from Unicode 15.1.0 for now.\n"
    },
    {
      "commit": "2e4b58741f7d47ae46fb11c558c1007a86b76b48",
      "tree": "75eaee88c33a904861a7be35b2e33e99420e073f",
      "parents": [
        "7c6a8e61c4fa19a130e1f281ad8cc22b62da8dab"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 14:43:40 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 14:45:14 2024"
      },
      "message": "Update README to reflect transitional processing is gone\n"
    },
    {
      "commit": "7c6a8e61c4fa19a130e1f281ad8cc22b62da8dab",
      "tree": "63a952d08e28988c68388a1688e5844dca031230",
      "parents": [
        "c43ac75cf649511c3d593164a32a3ff9cd0cdcd1"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 14:38:26 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 14:38:26 2024"
      },
      "message": "Update to Unicode 16 test vectors\n"
    },
    {
      "commit": "c43ac75cf649511c3d593164a32a3ff9cd0cdcd1",
      "tree": "22edbf615ecdd8bf5eb5516c11d5e37cd1d86943",
      "parents": [
        "a1fd16821734235fb6ce4e0283a49a71d61535d2",
        "1b8800a4d0c76126ab2d3e28c7e62f567cbe69f8"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 03:00:52 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Sep 14 03:00:52 2024"
      },
      "message": "Merge pull request #191 from kjd/release-3.9\n\nRelease v3.9"
    },
    {
      "commit": "1b8800a4d0c76126ab2d3e28c7e62f567cbe69f8",
      "tree": "22edbf615ecdd8bf5eb5516c11d5e37cd1d86943",
      "parents": [
        "a1fd16821734235fb6ce4e0283a49a71d61535d2"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 02:51:52 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 02:51:52 2024"
      },
      "message": "Release v3.9\n"
    },
    {
      "commit": "a1fd16821734235fb6ce4e0283a49a71d61535d2",
      "tree": "3213cdeb0e3913a78ca550321797ca31fdab93a5",
      "parents": [
        "d5b76966c9160c4b1dead9d1640da8e9e66afe8a",
        "7732c6153e07946f1bf5cdea96817264d305b7cc"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 02:32:00 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Sep 14 02:32:00 2024"
      },
      "message": "Merge pull request #190 from kjd/unicode-16\n\nUnicode 16"
    },
    {
      "commit": "7732c6153e07946f1bf5cdea96817264d305b7cc",
      "tree": "3213cdeb0e3913a78ca550321797ca31fdab93a5",
      "parents": [
        "4ed183d95cf5cdfc98bb867b9e4b33a3fd13ca9b",
        "d5b76966c9160c4b1dead9d1640da8e9e66afe8a"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 02:29:19 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Sep 14 02:29:19 2024"
      },
      "message": "Merge branch \u0027master\u0027 into unicode-16"
    },
    {
      "commit": "4ed183d95cf5cdfc98bb867b9e4b33a3fd13ca9b",
      "tree": "111dbb25c1a466d85db0086719f03b1c88004d9f",
      "parents": [
        "762216bd7b1d0c45937703ea0c7632360e32c85b"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 02:26:53 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 02:26:53 2024"
      },
      "message": "Refactor membership test\n"
    },
    {
      "commit": "762216bd7b1d0c45937703ea0c7632360e32c85b",
      "tree": "aeea49f114e64cab2c2af270242a004ca9a11c28",
      "parents": [
        "580ece955f7e127094b21b40761be6b70ab62aef"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 02:22:13 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 02:22:13 2024"
      },
      "message": "Format with ruff\n"
    },
    {
      "commit": "580ece955f7e127094b21b40761be6b70ab62aef",
      "tree": "ad0b682336eff09e7fb54588b39b2c1defef0623",
      "parents": [
        "5343dd544e7ae541377147dbfd63f1871544643d"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 02:19:32 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 02:19:32 2024"
      },
      "message": "Implement changes to UTS46 algorithm\n\nSee https://www.unicode.org/reports/tr46/tr46-33.html#Validity_Criteria\n"
    },
    {
      "commit": "5343dd544e7ae541377147dbfd63f1871544643d",
      "tree": "5c9e561b483a2ecc097ad71927109aca754f9555",
      "parents": [
        "3a26791ede770443bb5e2133027dc57454ee0570"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 01:19:14 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 01:19:14 2024"
      },
      "message": "Update IDNA data to Unicode 16.0.0\n"
    },
    {
      "commit": "d5b76966c9160c4b1dead9d1640da8e9e66afe8a",
      "tree": "50533c7ba25c5bb01efc77faf4475c0e03d40367",
      "parents": [
        "3a26791ede770443bb5e2133027dc57454ee0570",
        "336fe1a43baa10e518c2487b71e0f12c1b771c6d"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 01:17:37 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Sep 14 01:17:37 2024"
      },
      "message": "Merge pull request #189 from kjd/fix-sigstore-action\n\nUpgrade gh-action-sigstore-python to v3.0.0"
    },
    {
      "commit": "336fe1a43baa10e518c2487b71e0f12c1b771c6d",
      "tree": "50533c7ba25c5bb01efc77faf4475c0e03d40367",
      "parents": [
        "3a26791ede770443bb5e2133027dc57454ee0570"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 01:11:38 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Sep 14 01:11:38 2024"
      },
      "message": "Upgrade gh-action-sigstore-python to v3.0.0\n"
    },
    {
      "commit": "3a26791ede770443bb5e2133027dc57454ee0570",
      "tree": "4e4e4a71dabeaab24c1a30e23f9a73b0450eb081",
      "parents": [
        "7b49ee825c1d1830ef5626b8b074917d018bd890",
        "99e7933a2c4d5c31935cf0d3a4253dfd8c159f1d"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Wed Aug 28 19:26:56 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 28 19:26:56 2024"
      },
      "message": "Merge pull request #186 from kjd/format-code\n\nFormat code using `ruff`"
    },
    {
      "commit": "99e7933a2c4d5c31935cf0d3a4253dfd8c159f1d",
      "tree": "4e4e4a71dabeaab24c1a30e23f9a73b0450eb081",
      "parents": [
        "03ccf4e68a0e4aa943e95397d975098ec19618ae",
        "7b49ee825c1d1830ef5626b8b074917d018bd890"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Wed Aug 28 00:42:55 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 28 00:42:55 2024"
      },
      "message": "Merge branch \u0027master\u0027 into format-code"
    },
    {
      "commit": "7b49ee825c1d1830ef5626b8b074917d018bd890",
      "tree": "d45dfd297d2a6788a3b4565da8ee594e989145f1",
      "parents": [
        "6614f3fecdd472131f5ea873270bea1b617bce9a",
        "05b7ce5fcc0d015d7a1b80be638c13a86c441cbd"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Wed Aug 28 00:41:50 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 28 00:41:50 2024"
      },
      "message": "Merge pull request #187 from kjd/remove-setup-cfg\n\nDeprecate setup.cfg in favour of pyproject.toml (fixes #155)"
    },
    {
      "commit": "03ccf4e68a0e4aa943e95397d975098ec19618ae",
      "tree": "2323e9b5e9dcdb017f8b83f30b73c7458ec3c50f",
      "parents": [
        "6614f3fecdd472131f5ea873270bea1b617bce9a",
        "4a64fc57f50e1c713393627b75dcfaa97a8dfe7b"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Wed Aug 28 00:26:48 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 28 00:26:48 2024"
      },
      "message": "Merge pull request #185 from waketzheng/master\n\nUse `ruff` formatter"
    },
    {
      "commit": "4a64fc57f50e1c713393627b75dcfaa97a8dfe7b",
      "tree": "2323e9b5e9dcdb017f8b83f30b73c7458ec3c50f",
      "parents": [
        "d0762219a4a67af2e0ddcb32ae846560d5685956"
      ],
      "author": {
        "name": "Waket Zheng",
        "email": "waketzheng@gmail.com",
        "time": "Mon Aug 26 10:06:19 2024"
      },
      "committer": {
        "name": "Waket Zheng",
        "email": "waketzheng@gmail.com",
        "time": "Mon Aug 26 10:06:19 2024"
      },
      "message": "Add ruff lint commands to github workflow\n"
    },
    {
      "commit": "d0762219a4a67af2e0ddcb32ae846560d5685956",
      "tree": "d62d8ff9dfd0f649144e732c7a63a6558124308a",
      "parents": [
        "8b55055e1aeb54b6cea67b3d3ae28034b13d6cd3"
      ],
      "author": {
        "name": "Waket Zheng",
        "email": "waketzheng@gmail.com",
        "time": "Mon Aug 26 09:54:00 2024"
      },
      "committer": {
        "name": "Waket Zheng",
        "email": "waketzheng@gmail.com",
        "time": "Mon Aug 26 09:54:00 2024"
      },
      "message": "Apply ruff format for `idna-data make-libdata` generated files\n"
    },
    {
      "commit": "8b55055e1aeb54b6cea67b3d3ae28034b13d6cd3",
      "tree": "cf2864bcce91f3c8bb42ade69d249ea460798409",
      "parents": [
        "6614f3fecdd472131f5ea873270bea1b617bce9a"
      ],
      "author": {
        "name": "Waket Zheng",
        "email": "waketzheng@gmail.com",
        "time": "Mon Aug 26 08:18:27 2024"
      },
      "committer": {
        "name": "Waket Zheng",
        "email": "waketzheng@gmail.com",
        "time": "Mon Aug 26 08:18:27 2024"
      },
      "message": "Use `ruff` formatter\n"
    },
    {
      "commit": "05b7ce5fcc0d015d7a1b80be638c13a86c441cbd",
      "tree": "d45dfd297d2a6788a3b4565da8ee594e989145f1",
      "parents": [
        "6614f3fecdd472131f5ea873270bea1b617bce9a"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Aug 23 17:01:02 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Aug 23 17:01:02 2024"
      },
      "message": "Deprecate setup.cfg in favour of pyproject.toml (fixes #155)\n"
    },
    {
      "commit": "6614f3fecdd472131f5ea873270bea1b617bce9a",
      "tree": "f18a75078a2623297384f26c9da51f9c1c28be47",
      "parents": [
        "28c7c9e250c81c41cbce34e2f5b684345367c486",
        "784c6f45c162db9709588124f2f1def5b70615ff"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Aug 23 15:58:42 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Aug 23 15:58:42 2024"
      },
      "message": "Merge pull request #184 from kjd/release-3.8\n\nRelease v3.8"
    },
    {
      "commit": "784c6f45c162db9709588124f2f1def5b70615ff",
      "tree": "f18a75078a2623297384f26c9da51f9c1c28be47",
      "parents": [
        "28c7c9e250c81c41cbce34e2f5b684345367c486"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Aug 23 15:49:51 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Aug 23 15:49:51 2024"
      },
      "message": "Release v3.8\n"
    },
    {
      "commit": "28c7c9e250c81c41cbce34e2f5b684345367c486",
      "tree": "71b91c913c97c70da9faf9ed9911fbe7d4a14616",
      "parents": [
        "a2b41c386e8e973757c69648a431d32f8ba4db69"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Aug 23 02:50:24 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Aug 23 02:50:24 2024"
      },
      "message": "Typo fix\n"
    },
    {
      "commit": "a2b41c386e8e973757c69648a431d32f8ba4db69",
      "tree": "7fe7b97e6fb0ccf893f5d42d437b36dc4285b5bc",
      "parents": [
        "1f613c53c6c725c76431671451a92f48e7a2e917"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Aug 23 02:48:14 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Fri Aug 23 02:48:14 2024"
      },
      "message": "Pin remainder of Github Actions flagged in code scanning\n"
    },
    {
      "commit": "1f613c53c6c725c76431671451a92f48e7a2e917",
      "tree": "3d259bef424e12f82baaf8991a4eaaabc217abe3",
      "parents": [
        "a87e2b6fd38b4c42d6ab3cdc0cb820ac4c6218dc"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Thu Aug 22 23:08:33 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Thu Aug 22 23:08:33 2024"
      },
      "message": "More Github Action dependency pinning\n"
    },
    {
      "commit": "a87e2b6fd38b4c42d6ab3cdc0cb820ac4c6218dc",
      "tree": "8a18899034fd7f01c06c631a21fe7244679f2d13",
      "parents": [
        "12d4dd133964b84a5b67d3b99b78d38be0c696c5"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Thu Aug 22 22:55:18 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Thu Aug 22 22:55:18 2024"
      },
      "message": "Update OSSF scorecard to latest version\n"
    },
    {
      "commit": "12d4dd133964b84a5b67d3b99b78d38be0c696c5",
      "tree": "010648a3291f754938f7aee1cbf9c5794203b031",
      "parents": [
        "613bdde233107a84958e5aa1174068f88728829a",
        "e1a15412eb0de3de9b7bee345e9888d46f32cde4"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Thu Aug 22 22:39:12 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 22 22:39:12 2024"
      },
      "message": "Merge pull request #182 from kjd/github-pypi-actions\n\nImplement current best practice for using Github Actions for package building and PyPI distribution"
    },
    {
      "commit": "e1a15412eb0de3de9b7bee345e9888d46f32cde4",
      "tree": "010648a3291f754938f7aee1cbf9c5794203b031",
      "parents": [
        "c109d3a80b769ce49fa23951b6d64ad9d43fda51"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Thu Aug 22 22:30:59 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Thu Aug 22 22:30:59 2024"
      },
      "message": "Pin Github Actions dependencies\n"
    },
    {
      "commit": "c109d3a80b769ce49fa23951b6d64ad9d43fda51",
      "tree": "12180639dc45cd540687266da221d5fbb7b765f1",
      "parents": [
        "f8a8de43db509c7e7fa0e9e08a7e7f1fe1c1a165",
        "613bdde233107a84958e5aa1174068f88728829a"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Thu Aug 22 21:45:04 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 22 21:45:04 2024"
      },
      "message": "Merge branch \u0027master\u0027 into github-pypi-actions"
    },
    {
      "commit": "f8a8de43db509c7e7fa0e9e08a7e7f1fe1c1a165",
      "tree": "db9817915984ab3125ac51f886a11256627d5908",
      "parents": [
        "b8d9784451fd795a69b7ce3f70b0eb037d6d875f"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Thu Aug 22 21:35:38 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Thu Aug 22 21:35:38 2024"
      },
      "message": "Do not try to build/send packages to TestPyPI for now\n\nWe don\u0027t have access to test.pypi.org to do this for now as someone\nelse has claimed this project. Have opened at ticket at\nhttps://github.com/pypi/support/issues/4484 to remedy but looks like\nthere is a ~6 month backlog so unlikely to get relief soon.\n"
    },
    {
      "commit": "613bdde233107a84958e5aa1174068f88728829a",
      "tree": "9e4c09fde0a0f73426a3aece85a0e7b04b30ce8f",
      "parents": [
        "0ab935ae9d138dce7fd480b0e260b8354884dd04"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim.davies@iana.org",
        "time": "Fri Aug 16 20:44:50 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim.davies@iana.org",
        "time": "Fri Aug 16 20:44:50 2024"
      },
      "message": "Update regexp to move global flag to start of expression\n"
    },
    {
      "commit": "b8d9784451fd795a69b7ce3f70b0eb037d6d875f",
      "tree": "1be73f3a54dfe3d91b724051b8478609ab7359e3",
      "parents": [
        "7e2073a19b72ced518e99f239f71b5ba31577a2a"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Aug 03 04:41:43 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Aug 03 04:41:43 2024"
      },
      "message": "Back out idna_preflight substitution\n"
    },
    {
      "commit": "7e2073a19b72ced518e99f239f71b5ba31577a2a",
      "tree": "f9876e176ca621963c1b65ed997411136a03d959",
      "parents": [
        "1361c16eab9cc347bd9bd103ab9031d83d9d493b"
      ],
      "author": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Aug 03 03:54:45 2024"
      },
      "committer": {
        "name": "Kim Davies",
        "email": "kim@cynosure.com.au",
        "time": "Sat Aug 03 03:54:45 2024"
      },
      "message": "Use actions/download-artifact@v4\n"
    }
  ],
  "next": "1361c16eab9cc347bd9bd103ab9031d83d9d493b"
}
