Public record
Software health reportschema 0.26.0 · metrics 1.13.0 · 2026-07-22 01:33 UTC

Python-Markdown / markdown

A Python implementation of John Gruber’s Markdown with Extension support.

PythonBSD-3-Clause★ 4,226 stars⑂ 902 forkssince May 2010View on GitHub ↗

Python-Markdown/markdown holds a health index of 76 out of 100, placing it in the Good band. It scores highest on Community & Adoption (93/100) and lowest on AI Readiness (42/100). It was last updated 13 days ago. 2 contributors account for most of its recent work.

76
overall / 100
Good

Software health index

Metrics are grouped into weighted categories on one standardized 1–100 scale. Overall starts as their weighted mean; when public evidence triggers the High-Risk Jurisdiction Policy, the rating is adjusted and receives an At risk ceiling of 49. AI Readiness sits outside the overall score.

76
Excellent85-100Exemplary; meets essentially all checked criteria
Good70-84Healthy; minor gaps
Moderate50-69Acceptable with notable gaps; review recommended
At risk30-49Significant weaknesses; adoption warrants caution
Critical1-29Severe problems (abandoned, single-maintainer, no hygiene)
VitalityCommunity &AdoptionSustainability &GovernanceEngineeringQualitySecurityAI Readiness

Score profile

Each axis is a category. The shape matters more than the average — a healthy subject fills the whole shape, while a spike-and-crater profile means strength in one dimension is masking risk in another.

Ownership

Python-MarkdownOrganization
68 followers4 public repossince Mar 2015

This repository is backed by an organization — shared, accountable stewardship that can outlive any single maintainer.

Package ecosystems

RegistryPackageVersionDownloads / moVersionsLast publishTags
PyPIMarkdown3.10.2-60162 days agomarkdownmarkdown-parserpython-markdownmarkdown-to-html

Metrics by category

Vitality

Is the project alive — is code being written and are releases shipping?

66Moderate · 22% of overall
How it's scored
28.8/36Push recency — last push 13 days ago
9.7/36Commit cadence — 14/52 weeks with commits
12.4/18Commit volume — 23 commits in the last year
10/10OpenSSF Scorecard: Maintained — 4 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
Inputs used
commits_last_year23
human_commit_share1
days_since_last_push13
active_weeks_last_year14
How it's scored
27/27Ships releases — 11 releases published
27/36Release recency — latest release 162 days ago
19.8/27Release cadence — a release every ~84.6 days
0/10OpenSSF Scorecard: Signed-Releases — Project has not signed or included provenance with any releases.
Inputs used
releases_count11
latest_release_tag3.10.2
releases_from_tagsno
days_since_latest_release162
mean_days_between_releases84.6

Community & Adoption

Does the project have users, downloads, attention, and a welcoming setup for contributors?

93Excellent · 18% of overall
How it's scored
58.8/60Stars — 4,226 stars
24.6/25Forks — 902 forks
10.4/15Watchers — 75 watchers
Inputs used
forks902
stars4,226
watchers75
growth_stateorganic
growth_factor_pct100

Community health

92Excellent
How it's scored
22.5/22.5README
22.5/22.5License — recognized license (BSD-3-Clause)
18/18CONTRIBUTING guide
13.5/13.5Code of conduct
0/7.2Issue template
6.3/6.3PR template
Inputs used
has_readmeyes
has_licenseyes
has_contributingyes
has_issue_templateno
has_code_of_conductyes
has_pull_request_templateyes

Sustainability & Governance

Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?

74Good · 24% of overall
How it's scored
25.2/54Bus factor — 2 contributor(s) cover half of all commits
12.2/22.5Commit distribution — top contributor authored 46% of commits
13.5/13.5Contributor breadth — 100 contributors
10/10OpenSSF Scorecard: Contributors — project has 38 contributing companies or organizations
Inputs used
bus_factor2
contributors_sampled100
top_contributor_share0.46
How it's scored
45.5/46.8Issue resolution — 97% of issues closed
28.4/38.3PR acceptance — 478/643 decided PRs merged
10.5/15OpenSSF Scorecard: Code-Review — Found 20/28 approved changesets -- score normalized to 7
Inputs used
merged_prs478
open_issues26
closed_issues933
issue_closed_ratio0.973
closed_unmerged_prs165
How it's scored
30/30Ownership backing — organization-owned
0/20Verified domain
13.2/25Owner reach — 68 followers of Python-Markdown
17.1/25Track record — 4 public repos, account ~11 yr old
Inputs used
followers68
owner_typeOrganization
is_verified
owner_loginPython-Markdown
public_repos4
account_age_days4,159
How it's scored
25/25Published & resolvable — 1 package(s) on pypi
35/35Publish recency — latest publish 162 days ago
20/20Version history — 60 published versions
20/20Not deprecated — active, not deprecated or yanked
Inputs used
packagesMarkdown
ecosystemspypi
any_deprecatedno
min_days_since_publish162

Engineering Quality

Are baseline engineering and documentation practices in place?

89Excellent · 20% of overall
How it's scored
24/24CI workflows — 6 workflow(s)
24/24Tests present
16/16Linter config — tox.ini
0/9.6Pre-commit hooks
0/6.4.editorconfig
18/20OpenSSF Scorecard: CI-Tests — 26 out of 27 merged PRs checked by a CI test -- score normalized to 9
Inputs used
has_ciyes
has_testsyes
has_editorconfigno
has_linter_configyes
has_precommit_configno

Documentation

100Excellent
How it's scored
30/30README
25/25Documentation directory
15/15Documentation / homepage site — https://python-markdown.github.io/
10/10Repository description
10/10Topics — 6 topics
10/10Wiki
Inputs used
topicspython-markdown, markdown, markdown-parser, markdown-to-html, python, python3
has_wikiyes
homepagehttps://python-markdown.github.io/
has_readmeyes
has_docs_diryes
has_descriptionyes

Security

Are visible security and supply-chain practices strong, without unresolved high-risk jurisdiction exposure?

56Moderate · 16% of overall
How it's scored
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — no data
2.2/2.5CI-Tests — 26 out of 27 merged PRs checked by a CI test -- score normalized to 9
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
5.2/7.5Code-Review — Found 20/28 approved changesets -- score normalized to 7
2.5/2.5Contributors — project has 38 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
5/5Fuzzing — project is fuzzed
2.5/2.5License — license file detected
7.5/7.5Maintained — 4 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — Project has not signed or included provenance with any releases.
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
7.5/7.5Vulnerabilities — 0 existing vulnerabilities detected
Inputs used
sourceopenssf_scorecard
checks_evaluated17
scorecard_versionv5.5.0
checks_inconclusive1
scorecard_aggregate5.6
Excluded from scoring (no data or not applicable): branch_protection. Remaining weights renormalized.

AI Readiness

How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score.

42At risk · 0% of overall
How it's scored
0/45Agent instructions — no CLAUDE.md / AGENTS.md / editor rules
0/15Machine-readable docs (llms.txt)
24/40Legible commit history — 45 of 100 human commits state their intent (structured subject or explanatory body)
Inputs used
has_llms_txtno
legible_history_share0.45
agent_instruction_files
agent_instruction_max_bytes
How it's scored
18/18One-command bootstrap — makefile
22/22Automated tests
11/11Lint / format config — tox.ini
0/11Static type checking
0/10Reproducible environment
0/10Demonstrated agent practice — no agent-authored commits among the last 100
0/8Automated maintenance — no automated dependency updates observed
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Inputs used
has_nixno
has_testsyes
lockfiles
has_dockerfileno
typed_languageno
bootstrap_filesmakefile
has_devcontainerno
has_linter_configyes
typecheck_configs
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0
How it's scored
0/45Type-checkable code — Python without a type-check config
54.2/55Manageable file sizes — 1/71 source files over 60KB
Inputs used
primary_languagePython
largest_source_bytes60,063
source_files_sampled71
oversized_source_files1

Key facts

4,226GitHub stars
100contributors
23commits, last 12 months
13days since last push
11releases
2bus factor
26open issues
PyPIpackage ecosystems

More detail

Star and fork history 4,226 ★ / 902 ⇿
4,226Stars
902Forks
11Releases

When each star and fork was added, collected from GitHub and bucketed by day. Cumulative growth sits directly above the daily additions it is made of, so the two read against each other: steady organic accretion looks nothing like an abrupt, short-lived burst. Where that difference is measurable, it is reported as growth authenticity.

Only the most recent history is shown — this repository exceeds the collection window, so the earliest history is not captured.

01,0002,0003,0004,0005,0004,226883242011-052018-122026-07
Major 0Minor 2Patch 6

Each point covers 14 days.

OpenSSF Scorecard 5.6 / 10
5.6aggregate

Independent, tool-agnostic security assessment from the open-source OpenSSF Scorecard. Each check rewards a security practice, not a specific vendor's tool. Checks Scorecard could not determine are marked n/a and excluded from the security score (never counted as zero).Scorecard v5.5.0 · 2026-07-22 01:32 UTC

10Binary-Artifactsno binaries found in the repo
n/aBranch-Protectioninternal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
9CI-Tests26 out of 27 merged PRs checked by a CI test -- score normalized to 9
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
7Code-ReviewFound 20/28 approved changesets -- score normalized to 7
10Contributorsproject has 38 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
10Fuzzingproject is fuzzed
10Licenselicense file detected
10Maintained4 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
0SASTSAST tool is not run on all commits -- score normalized to 0
0Security-Policysecurity policy file not detected
0Signed-ReleasesProject has not signed or included provenance with any releases.
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
10Vulnerabilities0 existing vulnerabilities detected
All dependencies 0

Full resolved dependency set from the GitHub dependency graph: 0 direct and 0 indirect (transitive) packages. The transitive closure is complete when the repository commits a lockfile.

RegistryPackageVersionRelation
Dependency advisories not assessed

Advisory matching could not run for this report: No resolved dependencies to assess

Raw JSON report machine-readable
{
  "data": {
    "repo": {
      "topics": [
        "python-markdown",
        "markdown",
        "markdown-parser",
        "markdown-to-html",
        "python",
        "python3"
      ],
      "is_fork": false,
      "size_kb": 3524,
      "has_wiki": true,
      "homepage": "https://python-markdown.github.io/",
      "languages": {
        "Shell": 679,
        "Python": 782277,
        "Makefile": 1136
      },
      "pushed_at": "2026-07-08T18:19:24Z",
      "created_at": "2010-05-29T02:59:45Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-20T20:22:26Z",
      "description": "A Python implementation of John Gruber’s Markdown with Extension support.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "BSD-3-Clause",
      "default_branch": "master",
      "license_spdx_raw": "BSD-3-Clause",
      "primary_language": "Python",
      "significant_languages": [
        "Python"
      ]
    },
    "owner": {
      "blog": null,
      "name": "Python-Markdown",
      "type": "Organization",
      "login": "Python-Markdown",
      "company": null,
      "location": null,
      "followers": 68,
      "avatar_url": "https://avatars.githubusercontent.com/u/11278576?v=4",
      "created_at": "2015-03-02T20:04:32Z",
      "is_verified": null,
      "public_repos": 4,
      "account_age_days": 4159
    },
    "license": {
      "state": "standard",
      "spdx_id": "BSD-3-Clause",
      "raw_spdx": "BSD-3-Clause",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "3.10.2",
          "kind": "patch",
          "published_at": "2026-02-09T14:57:29Z"
        },
        {
          "tag": "3.10.1",
          "kind": "patch",
          "published_at": "2026-01-21T18:09:32Z"
        },
        {
          "tag": "3.10.0",
          "kind": "minor",
          "published_at": "2025-11-03T19:51:17Z"
        },
        {
          "tag": "3.9.0",
          "kind": "minor",
          "published_at": "2025-09-04T20:25:24Z"
        },
        {
          "tag": "3.8.2",
          "kind": "patch",
          "published_at": "2025-06-19T17:12:46Z"
        },
        {
          "tag": "3.8.1",
          "kind": "patch",
          "published_at": "2025-06-18T14:50:51Z"
        },
        {
          "tag": "3.8",
          "kind": "other",
          "published_at": "2025-04-11T14:47:13Z"
        },
        {
          "tag": "3.7",
          "kind": "other",
          "published_at": "2024-08-16T17:12:04Z"
        },
        {
          "tag": "3.6",
          "kind": "other",
          "published_at": "2024-03-14T18:35:10Z"
        },
        {
          "tag": "3.5.2",
          "kind": "patch",
          "published_at": "2024-01-10T15:19:41Z"
        },
        {
          "tag": "3.5.1",
          "kind": "patch",
          "published_at": "2023-10-31T19:59:26Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "8453df010daf9547efcc20a05bb12c0e2fd2016a",
          "body": "* Document the priorities assigned by each extension for the API Reference.\n\n* Link Extension API docs to API Reference.\n\n    Various sections were reduced to avoid repetition with the API Reference.\n    Other sections were expanded to provide more links. A deeper explanation\n    of the registry priority has been added. \n\nFixes 1612.",
          "is_bot": false,
          "headline": "Update Extension API documentation",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2026-07-08T18:19:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "93ac448b161deb5a4578c7f56bd5f5c39dc280c3",
          "body": "This has been the de facto policy for some time. We are now officially\ndocumenting it. Relates to #1612.\n\nSome recommendations for alternative extensions have been included.",
          "is_bot": false,
          "headline": "Document that all extensions are in maintenance mode",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2026-07-02T12:49:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d38fd4a6ee4ef897812bc481855a7f9d8a4ad4f1",
          "body": "The motivation for adopting this policy is to avoid wasting the maintainers'\ntime. We work on this project as volunteers and it is an unproductive waste of\ntime to interact with contributors who do not understand their contributions.\n\nWhile we generaly would prefer to receive contributions which are\n[…]\nalue in limited ways.\nTherefore, we have attempted to create a policy which allows use of such tools\nwhile also holding the contributor accountable. Hopefully this accomplishes our\ngoal. Closes #1610.",
          "is_bot": false,
          "headline": "Create AI Policy",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2026-06-29T19:05:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ddead47873e7918829e1d8b0eaee6ab725793cc9",
          "body": "Fixes #1604.",
          "is_bot": false,
          "headline": "Prevent mixed =/- chars in Setext-style headings",
          "author_name": "RoomWithOutRoof",
          "author_login": "Jah-yee",
          "committed_at": "2026-05-26T13:19:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e7a0efb3a7c36d6b8005403122705662bc17c904",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 3.10.2",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2026-02-09T14:54:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "630183336bda57c258becc3ed229105481876a7e",
          "body": "Recommend JustHTML as an HTML sanitizer with bleach and nh3 as alternatives.\n\nReorganize cli.md for clarity.\n\nResolves #1479.",
          "is_bot": false,
          "headline": "Document HTML sanitation policy",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2026-02-06T14:36:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7f29f1a69d236f5bb11645c2fa03fcf701487c8c",
          "body": "Include hack so we don't break MkDocs.",
          "is_bot": false,
          "headline": "More reliable fix for `</`",
          "author_name": "Isaac Muse",
          "author_login": "facelessuser",
          "committed_at": "2026-02-03T16:20:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c4386475a6b6daea43b7d7717add4271adc9a3c1",
          "body": "Fixes #1590",
          "is_bot": false,
          "headline": "Fix regression of special comments",
          "author_name": "facelessuser",
          "author_login": "facelessuser",
          "committed_at": "2026-02-02T18:12:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e5fa5b86e8ec380cbc520cfc637d72c779e5c601",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 3.10.1",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2026-01-21T18:03:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f9253495f5d9919f2fdd5e147832b5fc21330f65",
          "body": "- Have `parse_comment` handle bad `<!--` cases.\n- `handle_comment` only needs to handle the `</` case for comments.\n  Provide a more reliable way to calculate the index to check for this\n  case.\n- Ensure `override_comment_update` is reset, just in case.\n\nResolves #1586\n\n* Fix spelling\n\n* Add changelog entry",
          "is_bot": false,
          "headline": "More HTML fixes",
          "author_name": "Isaac Muse",
          "author_login": "facelessuser",
          "committed_at": "2026-01-21T16:35:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9933a0a4699f3dea91f46528a2bf54863f531c08",
          "body": "This reverts commit 07dfa4eb43f7a2ab3181b4f842a960a03a6c1221.",
          "is_bot": false,
          "headline": "Revert \"Allow reference links with backticks\"",
          "author_name": "Isaac Muse",
          "author_login": "facelessuser",
          "committed_at": "2025-12-30T15:31:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "07dfa4eb43f7a2ab3181b4f842a960a03a6c1221",
          "body": "Fixes #495.",
          "is_bot": false,
          "headline": "Allow reference links with backticks",
          "author_name": "Martyn P",
          "author_login": "martynp",
          "committed_at": "2025-12-29T14:55:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fb6b27a6ff90980b5bcb0cd51528a7c9dc3a93ca",
          "body": "The `updatepos()` override was resetting the parser position to `0`,\ncausing infinite loops when multiple bogus/unclosed comments\nappeared in the input (e.g., `</` or `<!--` followed by non-standard\ncharacters). Now tracks the position of the triggering `<` and\nadvances past it instead of rewinding to the start of the buffer.\n\nFixes #1578.\n\n* update changelog",
          "is_bot": false,
          "headline": "Fix infinite loop when text contains multiple unclosed comments",
          "author_name": "Ben Tucker",
          "author_login": "btucker",
          "committed_at": "2025-12-29T14:38:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "89112c293f7b399ae8808f3a06306f46601e9684",
          "body": null,
          "is_bot": false,
          "headline": "Make the docs build successfully with mkdocstrings-python 2.0",
          "author_name": "Dmitry Shachnev",
          "author_login": "mitya57",
          "committed_at": "2025-12-11T15:40:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "961856ceb30623b929d8b7abdf5ed7074db7184c",
          "body": "Fixes #1573.",
          "is_bot": false,
          "headline": "Update link",
          "author_name": "Daniel Bovensiepen Li",
          "author_login": "bovi",
          "committed_at": "2025-12-10T20:43:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2b49115b1002142afbd84b3002f13c0e98a0f487",
          "body": "When inline Markdown elements are nested, each nested level contains its\nown placeholder. Therefore, when unescaping, the regex substitution needs\nto be run against each nested level. As this is nested inside the match, it ensures\nno more than one non-matching regex will be run in each instance.\n\nCloses #1571.",
          "is_bot": false,
          "headline": "Ensure nested elements inside inline comments are properly unescaped.",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-12-03T14:02:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "22e89c1fc346f72218a10e392a0c3b4731912522",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 3.10",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-11-03T19:19:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c138aea5139a6aceae05bb957e866d9ce7577b94",
          "body": "Python officially released 3.14 on 2025-10-07 and ended support for 3.9 on 2025-10-31.",
          "is_bot": false,
          "headline": "+ PY314 - PY39",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-11-03T19:10:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "746f7f527b15f63845253e3b86947b806ef1b98f",
          "body": null,
          "is_bot": false,
          "headline": "cleanup",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-11-03T18:19:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a5ee2b4aad05531898ab8fd726c7ece31ddadf8b",
          "body": "The new behavior introduced in 3.9.0 is experimental and results are inconsistent.\nIt should not have been made the default behavior. Relates to #1561.",
          "is_bot": false,
          "headline": "Revert the default behavior of `USE_DEFINITION_ORDER`",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-11-03T18:19:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5354daf618149f92580a1407c036115753c5df73",
          "body": "Fixes #1554",
          "is_bot": false,
          "headline": "Fix an HTML comment parsing case that can cause an infinite loop",
          "author_name": "facelessuser",
          "author_login": "facelessuser",
          "committed_at": "2025-09-26T14:52:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f39cf84a24124526c1a0efbe52219fa9950774f6",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 3.9",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-09-04T19:49:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "07bf2076623be5de9952e1f35bfb8c218b699300",
          "body": "* Alter footnote ordering so footnotes definitions are listed in the order in which their references appear in the document.\n* Add config option, USE_DEFINITION_ORDER, to support previous behavior. \n* Add comprehensive tests for extension.\n* Change to the behavior of inlinepatterns by ensuring that inlinepatterns iterate through elements in document order. Previously, in some specific case, elements with nested children had their inline content parsed in reverse order.\n\nResolves #1367.",
          "is_bot": false,
          "headline": "Order footnotes by reference",
          "author_name": "Anders Eskildsen",
          "author_login": "aeskildsen",
          "committed_at": "2025-08-01T18:38:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "23c301de28e12426408656efdfa153b11d4ff558",
          "body": "New change requires us to monkey patch `locatetagend` to prevent\ncapturing incomplete tags in code spans.",
          "is_bot": false,
          "headline": "Fix failing cases for Python 3.14",
          "author_name": "facelessuser",
          "author_login": "facelessuser",
          "committed_at": "2025-07-21T17:39:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4669a09894d4a35cd5f5d2106b0da95e48d1a3f9",
          "body": null,
          "is_bot": false,
          "headline": "fix typo",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-06-19T17:18:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d9c8431e404d614812e39a11109afbe9981bba13",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 3.8.2",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-06-19T17:11:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9980cb5b27b07ff48283178d98213e41543701ec",
          "body": "- Fix codecs deprecation\n- Fix issue with unclosed `<![`\n- Fix issue with unclosed HTML tag `<foo`\n- Fix issue with unclosed comments\n- Add tests which run on the Python 3.14 beta which should automatically update after release\n\nFixes #1537",
          "is_bot": false,
          "headline": "Fixes for Python 3.14",
          "author_name": "Isaac Muse",
          "author_login": "facelessuser",
          "committed_at": "2025-06-19T15:46:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3561310d30dac10c47f0b9fc404b167fc65331b0",
          "body": "The docs previously incorrectly linked to the Semantic Versioning specification.\nHowever, this project has never used that specification. Instead it uses the Python\nVersion Specification which was originally defined in PEP 440. The\nspecification explicitly identifies differences between the two\n(See https://packaging.python.org/en/latest/specifications/version-specifiers/#semantic-versioning).",
          "is_bot": false,
          "headline": "Properly document version specification.",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-06-18T19:57:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3bb9d42b93dae519d4f5a6eea970a571232e05e2",
          "body": null,
          "is_bot": false,
          "headline": "Update documentation for release process",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-06-18T19:57:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3870f20ba1dd214609b380e921dffc5f115730f5",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 3.8.1",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-06-18T14:47:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "820721485c928c6f97f3d74f37afb6d2450aef9e",
          "body": "See Python bug report at gh-77057 for details. Until we drop support for\nPython < 3.13 (where this was fixed upstream), we need to avoid the\nunwanted error by checking for it explicitly. Fixes #1534.",
          "is_bot": false,
          "headline": "Ensure incomplete markup declaration in raw HTML doesn't crash parser.",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-06-18T14:29:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "64a3c0fbc00327fbfee1fd6b44da0e5453287fe4",
          "body": "Fixes #1528",
          "is_bot": false,
          "headline": "Fix HTML handling of `</>`",
          "author_name": "facelessuser",
          "author_login": "facelessuser",
          "committed_at": "2025-04-26T22:20:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f2b9fd10f1fc7b0683f226e6a82da8e8375bccf5",
          "body": "Fixes #1526.\n\nCo-authored-by: Dmitry Shachnev <mitya57@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Ensure `md_in_html` does not drop content",
          "author_name": "Isaac Muse",
          "author_login": "facelessuser",
          "committed_at": "2025-04-21T19:57:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "513de8a0db81c840f917488af7078a45f74542bf",
          "body": "This is the first tag with support for metadata format 2.4.",
          "is_bot": false,
          "headline": "Update pypa/gh-action-pypi-publish to v1.12.4",
          "author_name": "Dmitry Shachnev",
          "author_login": "mitya57",
          "committed_at": "2025-04-11T14:18:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b34e1d03387be771aa626241fe56f8f0c34243f2",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 3.8",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-04-09T17:36:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e6b71632726c049ab9a7a1b42e816a67f422064b",
          "body": null,
          "is_bot": false,
          "headline": "Update deploy workflow to normalize version",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-04-09T17:23:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bd67d4862b388c7c2dd1ae90635c633472c2c77c",
          "body": "* Cleanup versions in changelog\n* Refactor changelog to validate. Use nested lists for contents of each version.\n* Fix internal link in changelog\n* Refactor action to use 2 jobs",
          "is_bot": false,
          "headline": "Improve changelog validation",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-04-09T16:22:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e912575a903215ebafaeb0fecbdad079d998b9ba",
          "body": null,
          "is_bot": false,
          "headline": "Fix incorrect TOC list structure in docs",
          "author_name": "Vladyslav Prudius",
          "author_login": "SoulPrudya",
          "committed_at": "2025-04-02T15:51:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "42d4b4336e97485b96c1e4e9fcdb4e8df2501217",
          "body": null,
          "is_bot": false,
          "headline": "Fix CI badge in README",
          "author_name": "Jan Brasna",
          "author_login": "janbrasna",
          "committed_at": "2025-04-02T14:09:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1caf02892487cead069cb0c4bcdd1e876ca6b590",
          "body": "Don't precompute placeholder replacements in raw HTML post-processor. Fixes #1507.\n\nPreviously, the raw HTML post-processor would precompute all possible replacements for placeholders in a string, based on the HTML stash. It would then apply a regular expression substitution using these replacements\n[…]\n` first, before `PLACEHOLDER`. The presence of a wrapping `p` tag indicates whether to wrap again the substitution result, or not (also depending on whether the substituted HTML is a block-level tag).",
          "is_bot": false,
          "headline": "Optimize raw HTML post-processor (#1510)",
          "author_name": "Timothée Mazzucotelli",
          "author_login": "pawamoy",
          "committed_at": "2025-03-27T12:44:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f6cfc5cca3dd2c313d2fa547b7c88dac656ae506",
          "body": null,
          "is_bot": false,
          "headline": "Use PEP 639 license expressions in project metadata",
          "author_name": "Marc Mueller",
          "author_login": "cdce8p",
          "committed_at": "2025-03-25T17:12:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9c6e39ace5e928f37854b3bf1010b209a79e2d63",
          "body": null,
          "is_bot": false,
          "headline": "Add Python 3.13 and drop Python 3.8",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2025-03-25T17:03:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7aae61bea185a4a5c0c48be2619ccc1d294aa381",
          "body": "Fixes #1514.",
          "is_bot": false,
          "headline": "Add special case for closing nested quotes",
          "author_name": "Chris Mayfield",
          "author_login": "ChrisMayfield",
          "committed_at": "2025-03-20T14:40:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0ad5b0abf9560255cf9d24234f7de64c0411ab98",
          "body": "Fixes #1512",
          "is_bot": false,
          "headline": "Abbr should respect AtomicStrings",
          "author_name": "Isaac Muse",
          "author_login": "facelessuser",
          "committed_at": "2025-03-12T14:36:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6347c57c8f309dcb0aaaa67b60d0f0039ff44484",
          "body": "Fixes #1481",
          "is_bot": false,
          "headline": "Treat center like a block-level element",
          "author_name": "Isaac Muse",
          "author_login": "facelessuser",
          "committed_at": "2025-01-31T14:07:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "900e85d4ae8fc60a965034a7a652587222a50916",
          "body": "…#1505)\n\n* Remove PHP tests and create tests for cases that are useful to keep\n\nResolves #1480\n\n* Update changelog",
          "is_bot": false,
          "headline": "Remove PHP tests and create tests for cases that are useful to keep (…",
          "author_name": "Isaac Muse",
          "author_login": "facelessuser",
          "committed_at": "2025-01-30T21:32:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f2ae4e4a453ba621a141ace7f1603c3a057fade2",
          "body": "… (#1503)\n\nEnsure `md_in_html` processes content inside a \"markdown\" block the same way content is processed outside of a \"markdown\" block.\n\n- Flatten the HTML content into placeholders so that the parser will treat the \"markdown\" block content in the same way it does when `md_in_html` is not enable\n[…]\no make better decisions.\n\nAdditionally, fix some issues with tags and inline code.\n\nAlso, fix some issues with one-liner block tags, e.g. `<tag><tag>...`\n\nResolves #1502 \nResolves #1075\nResolves #1074",
          "is_bot": false,
          "headline": "Adjust `md_in_html` \"markdown\" blocks to process content consistently…",
          "author_name": "Isaac Muse",
          "author_login": "facelessuser",
          "committed_at": "2025-01-28T20:03:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4260e7b4e68385ea084fd68fe8b20eb332ddd793",
          "body": "First line of module docstring is used as summary of module. Therefore, first line should only contain a full sentence and no incomplete links.\r\n\r\nFixes #1495.",
          "is_bot": false,
          "headline": "Clean up module summaries for API docs",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-12-24T18:28:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7aace29bd33bc1734082b677c6f06aac0dcc6ac2",
          "body": "Fixes #1493.",
          "is_bot": false,
          "headline": "Backslash Unescape IDs set via `attr_list` on `toc`",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-12-13T14:59:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0b5e80efbb83f119e0e38801bf5b5b5864c67cd0",
          "body": null,
          "is_bot": false,
          "headline": "Use mkdocs' builtin link checking",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-10-01T17:06:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "06c211b99100e8d33019e2a4debdeb702cae232d",
          "body": null,
          "is_bot": false,
          "headline": "update mkdocstring template overrides",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-10-01T17:06:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8552c3bf147c69247748338a43ee25f7716a70dd",
          "body": null,
          "is_bot": false,
          "headline": "fix broken links in docs",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-10-01T17:06:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eeb509d6c09b4841a20127babb26bacc3af09433",
          "body": null,
          "is_bot": false,
          "headline": "Fix DRY by adding create_element method in abbr extension",
          "author_name": "Yves Chevallier",
          "author_login": "yves-chevallier",
          "committed_at": "2024-09-30T17:33:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d312609bc3b2222f387b0c55c7522748a797d40f",
          "body": null,
          "is_bot": false,
          "headline": "Fix small typos in `api.md`",
          "author_name": "Sebastián Ramírez",
          "author_login": "tiangolo",
          "committed_at": "2024-09-30T15:58:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fc74d69758ff288e26ff616c703b22ce5a02a68a",
          "body": "This is the module: https://github.com/Python-Markdown/markdown/blob/master/markdown/blockparser.py",
          "is_bot": false,
          "headline": "Use correct import path in `abbr.py`",
          "author_name": "sobolevn",
          "author_login": "sobolevn",
          "committed_at": "2024-08-22T19:11:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "da03cd646d00a77786ae1e0bc79b01a5539852bc",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 3.7",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-08-16T15:53:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bd836a1448963081b221ad899399e20bb1ccb857",
          "body": null,
          "is_bot": false,
          "headline": "Update griffe_extensions to support Griffe v 1.0.",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-08-16T15:53:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "33359faa385f59b84cd87df5f4b0996055a482e2",
          "body": "* `AbbrTreeprocessor` now sorts the abbreviation\r\nlist by length before processing the element tree\r\n\r\nThis ensures that multi-word abbreviations are\r\nimplemented even if an abbreviation exists for\r\none of those component words.\r\n\r\n* Added handling for empty abbreviations.\r\n\r\n* Added a `glossary` option for the `abbr` extension\r\nwhich accepts a dictionary.",
          "is_bot": false,
          "headline": "Abbr Extension: Definition Sorting and Glossary storage",
          "author_name": "nbanyan",
          "author_login": "nbanyan",
          "committed_at": "2024-06-11T15:06:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ec8c305fb14eb081bb874c917d8b91d3c5122334",
          "body": "A new `AbbrTreeprocessor` has been introduced, which replaces the now\r\ndeprecated `AbbrInlineProcessor`. Abbreviation processing now happens\r\nafter Attribute Lists, avoiding a conflict between the two extensions.\r\nFixes #1460.\r\n\r\nThe `AbbrPreprocessor` class has been renamed to `AbbrBlockprocessor`, which\r\nbetter reflects what it is. `AbbrPreprocessor` has been deprecated.\r\n\r\nA call to `Markdown.reset()` now clears all previously defined abbreviations.",
          "is_bot": false,
          "headline": "Refactor `abbr` Extension",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-04-25T13:46:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "993b57b8ea577f2120f7d0c81b45ee5ed74a0f57",
          "body": "With the current version, if you open e.g. this page:\nhttps://python-markdown.github.io/reference/markdown/blockprocessors/\n\nThe ‹› links on the right side of the page will point to URLs like\nhttps://github.com/Python-Markdown/markdown/tree/3.6//home/runner/work/markdown/markdown/md/markdown/blockprocessors.py\n\nThis commit fixes them by replacing `filepath` with `relative_filepath`.",
          "is_bot": false,
          "headline": "Fixed links to source code on GitHub from the documentation",
          "author_name": "Dmitry Shachnev",
          "author_login": "mitya57",
          "committed_at": "2024-03-18T14:21:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e524b8fe938738cb4492411a34cce89051cb9695",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 3.6",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-03-14T15:35:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3d8afc6f89e169522f44c1bbec15f66dc359eccb",
          "body": "How it worked before:\r\n\r\n  * Extract the content without allowing any `}` in it, and require that it ends with `}` - for block elements anchored to the end of the line, otherwise not.\r\n  * Parse the content in more detail. No edge cases with `}` can arise. If parsing is interrupted by some unrecogni\n[…]\n: that must mean that we just overmatched a bit, but that's OK, we just assign attrs as normal and put the extra text back into the string. As mentioned, any extra text *before* `}` is just discarded.",
          "is_bot": false,
          "headline": "Allow attr_list quoted values to contain curly braces",
          "author_name": "Oleh Prypin",
          "author_login": "oprypin",
          "committed_at": "2024-03-12T15:54:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9edba85fc14f034b7109534220702bf60178ff15",
          "body": "A alternate fix to #1444. This does not exclude the use of carrots or square \r\nbrackets in abbreviations. It still excludes backslashse, however. I played\r\nwith backslashes and it just doesn't make sense to support them as they \r\nhave special meaning in the Markdown, not because of their use in regular\r\nexpressions.",
          "is_bot": false,
          "headline": "Refactor abbr escaping",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-03-08T14:44:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e4ab4a610edc6332ce81a53aa4ae6f97516ce461",
          "body": "* All postprocessors are run on heading content.\r\n* Footnote references are stripped from heading content. Fixes #660.\r\n* A more robust `striptags` is provided to convert headings to plain text.\r\n  Unlike, the `markupsafe` implementation, HTML entities are not unescaped.\r\n* The plain text `name`, ri\n[…]\n defined in the `toc` extension\r\n  are both **deprecated**. Instead, use some combination of `run_postprocessors`,\r\n  `render_inner_html` and `striptags`.\r\n\r\nCo-authored-by: Oleh Prypin <oleh@pryp.in>",
          "is_bot": false,
          "headline": "Refactor TOC sanitation",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-03-08T14:05:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a18765c25cccab23f400edeac94d20f4be00492b",
          "body": "Fixes #1444.",
          "is_bot": false,
          "headline": "Explicitly omit carot and backslash from abbr",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-03-06T20:47:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "421f1e88ff4661b4433b97ec57b040a2a74e5aed",
          "body": "And add a test for using smarty in ToC headers.\r\n\r\nFixes #1438.",
          "is_bot": false,
          "headline": "Give smarty tree processor higher priority than toc",
          "author_name": "Dmitry Shachnev",
          "author_login": "mitya57",
          "committed_at": "2024-02-05T13:43:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c334a3e47e6565469344154f966cf0eb9aca0de3",
          "body": "This is a weird edge case. Normally, detabbing would be handled by\r\nthe `ListIndentProcessor`. However, in this one case, that class's\r\n`get_level` method would need to return a different result than in\r\nany other case. As there is no way to easily determine this specific\r\ncase from that class, we make the adjustment directly in the\r\n`HashHeaderProcessor` class. Fixes #1433.",
          "is_bot": false,
          "headline": "Ensure lines after heading in loose list are properly detabbed",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-01-29T18:42:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ea92856855a6314488acb121f21f8fa02860e008",
          "body": "The license remains BSD 3-Clause but with a better known text",
          "is_bot": false,
          "headline": "Update the license template so GitHub can detect it",
          "author_name": "Oleh Prypin",
          "author_login": "oprypin",
          "committed_at": "2024-01-29T18:05:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a2effd6d5191808c8b2e347965f6fcf4aa709e78",
          "body": "…hing issue in #1432",
          "is_bot": false,
          "headline": "Disable mkdocstrings show_symbol_type_toc option to work around searc…",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-01-22T14:44:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "91f9a1205d32f3bc6a27ca5f993409c3b97c1931",
          "body": null,
          "is_bot": false,
          "headline": "Restore Attribute symbol type in mkdocstrings template",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-01-22T14:44:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6425ffcbe9d4ae87373cedddbbc36ce0025a9d84",
          "body": "These scripts are needed for building the documentation.",
          "is_bot": false,
          "headline": "MANIFEST.in: Include scripts/*.py in the generated source tarball",
          "author_name": "Dmitry Shachnev",
          "author_login": "mitya57",
          "committed_at": "2024-01-14T22:33:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "08dacae618775831243f6bbab47d9be590d511f2",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 3.5.2",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-01-10T15:17:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e466f381d09692f484f8ff022273e2ac8cea0b16",
          "body": "As with most implementations, we now pass through bogus comments (as\r\ndefined by the HTML Spec) unaltered except that they are HTML escaped.\r\nThis deviates from the reference implementation which completely ignores\r\nthem. As the reference implementation seems to not have even contemplated\r\ntheir existence, it is not being used as a reference in this instance.\r\nFixes #1425.",
          "is_bot": false,
          "headline": "Fix handling of bogus comments.",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2024-01-03T18:24:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a2a9c53ea262ea0d39e76aa18430ce071fbe68d5",
          "body": null,
          "is_bot": false,
          "headline": "Update change log link in README.md",
          "author_name": "Dan Bader",
          "author_login": "dbader",
          "committed_at": "2023-12-05T18:44:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cef5afeb959d11e1ad5566fefa1f9a71136c1050",
          "body": null,
          "is_bot": false,
          "headline": "Update Changelog URL",
          "author_name": "Eric",
          "author_login": "eric-rm",
          "committed_at": "2023-11-20T18:25:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5d7f2559c31844f788ea41132f40ace7555518e6",
          "body": "Fixes #1416.",
          "is_bot": false,
          "headline": "Fix missing search in docs",
          "author_name": "Isaac Muse",
          "author_login": "facelessuser",
          "committed_at": "2023-11-13T19:42:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bc14d5917b2943b438af930ae61fe27c31581375",
          "body": "Also fix a typo (`path=>paths`).",
          "is_bot": false,
          "headline": "Split changelog workflows to separate logic on when each gets run.",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2023-11-06T16:42:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9b06df2cff3602c98a77601d95d639ceacedb07d",
          "body": null,
          "is_bot": false,
          "headline": "ghp-import it not a command module",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2023-11-06T03:07:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dac7977458eb1f2ca27107e65bfa41aad3ac74bb",
          "body": null,
          "is_bot": false,
          "headline": "Fix a minor oversight in #1407",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2023-11-06T02:34:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dcd69b154b74a7818be433491896391058ea7e04",
          "body": "The update in 5cbabe1 didn't provide for a .nojekyll file, which is necessary when publishing to GitHub Pages to avoid Jekyll messing with our statically generated documentation.\r\n\r\nAlso added a user input to the manual deploy script which allows deploying from any past reference (tag or commit).",
          "is_bot": false,
          "headline": "Update docs deploy scripts",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2023-11-06T01:30:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a63e6f3416f2e4fc7c2d5edb2768ceed9218df20",
          "body": "If an inlineprocessor returns an AtomicString (even though that is pointless, a plain string is atomic in that context), there can be an exception in 2 separate places. The added test case was crashing before this change.",
          "is_bot": false,
          "headline": "Fix edge-case crash in InlineProcessor",
          "author_name": "Oleh Prypin",
          "author_login": "oprypin",
          "committed_at": "2023-11-03T14:20:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f5b151ac899dd0e71bc689ecfce17ac6018789eb",
          "body": "If there is an empty `<pre><code></code></pre>` inserted by another extension, there can be an exception. The added test case was crashing before this change.",
          "is_bot": false,
          "headline": "Fix edge-case crash in codehilite",
          "author_name": "Oleh Prypin",
          "author_login": "oprypin",
          "committed_at": "2023-11-03T13:53:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "87249beb5257e7c8c2b84ccbedb3f126ab6840d2",
          "body": "There are no other references to `content_indention`, and it seems that there were no problems with this only because the other line `self.content_indent = indent` kicks in in all relevant situations.",
          "is_bot": false,
          "headline": "Fix typo in attribute name",
          "author_name": "Oleh Prypin",
          "author_login": "oprypin",
          "committed_at": "2023-11-02T17:31:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "040b617a0dfed0f647582fffee5b0f3f64447184",
          "body": null,
          "is_bot": false,
          "headline": "Remove legacy import needed only in Python 2",
          "author_name": "Oleh Prypin",
          "author_login": "oprypin",
          "committed_at": "2023-11-02T17:03:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "85d0c18dc925c8e2758fe72145f0aeefd56a7fdb",
          "body": null,
          "is_bot": false,
          "headline": "Add and improve type annotations",
          "author_name": "Oleh Prypin",
          "author_login": "oprypin",
          "committed_at": "2023-11-02T14:44:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5cbabe1cc774d1e743d11ebc05d5c5c126ee8a7a",
          "body": "Switch to a different action (cpina/github-action-push-to-another-repository) which has worked in testing (see https://github.com/waylan/test-repo-source).\r\n\r\nAlso updated the version of many actions in all workflows to eliminate various warnings we have been getting of late.",
          "is_bot": false,
          "headline": "Update Docs deployment",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2023-11-02T14:36:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8e517de89015e6469e6829d98b6d7c55bd9fedf8",
          "body": "* Correctly declare the parameter annotations as `BinaryIO`, because in fact it works only with byte-based buffers.\r\n\r\n* `sys.stdin.read()` is always a string, so remove the Python2-specific check.\r\n    * Correct the patch in the test which incorrectly sets `sys.stdin` to a bytes buffer which it nev\n[…]\nc fallback.\r\n    * Correct the patch in the test which incorrectly sets `sys.stdout` to a bytes buffer which it never is. And fix a matching mistake because this necessitated `stdout.read().decode()`.",
          "is_bot": false,
          "headline": "Correct the declarations of I/O buffers as bytes-based",
          "author_name": "Oleh Prypin",
          "author_login": "oprypin",
          "committed_at": "2023-11-01T15:18:07Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2932f183921943687ca3d72b3908a937bd495d24",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 3.5.1",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2023-10-31T19:57:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "76af499a6771f0a120d5068119bd4af192ad8d79",
          "body": "Every edit to the changelog must be validated so that an invalid changelog doesn't block a release.",
          "is_bot": false,
          "headline": "Update changelog validation (#1388)",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2023-10-31T18:46:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "99425b47bc5b5cf5cda570c1ae5f739082370d8d",
          "body": "The origins of these are three-fold:\r\n\r\n* Merging in stubs from https://github.com/python/typeshed/tree/main/stubs/Markdown using \"merge-pyi\"\r\n   - Note: we can consider these annotations to be the important ones because it's what people have been adding according to their own need\r\n* Double-checkin\n[…]\ns with annotations that got added in this repository already\r\n   + Taking the opportunity to declare a generic \"Registry of T\" class\r\n* Running mypy and eliminating the most glaring errors it reported",
          "is_bot": false,
          "headline": "Improve type annotations (add more and fix wrong ones)",
          "author_name": "Oleh Prypin",
          "author_login": "oprypin",
          "committed_at": "2023-10-30T17:03:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c53d5d7e56062619d6805ecd117c1067227ae788",
          "body": null,
          "is_bot": false,
          "headline": "Properly resolve relative paths in scripts/gen_ref_nav.py",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2023-10-27T15:28:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "524e4daa56ead7e551f2c9c0d5ea9460884ad521",
          "body": "* Replace dynamic regex with string find operation\r\n* Add cache of where each line starts so we don't have quadratic behavior identifying line numbers when importing large chunks of html",
          "is_bot": false,
          "headline": "Speedup line_offset property (#1392)",
          "author_name": "Eric Norige",
          "author_login": "eanorige",
          "committed_at": "2023-10-26T18:54:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4f0b91abe1a954a72ab3c99c3e2b880ab36631fa",
          "body": null,
          "is_bot": false,
          "headline": "Bump version to 3.5",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2023-10-06T19:02:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "07cbf0a0538bf24d32ab9b2f91cec7fe3d22c689",
          "body": "The API docs are auto-generated with mkdocstrings. The Google-style is used in docstrings to document parameters, return values, exceptions raised, etc..\r\n\r\nMost of the docstrings throughout the codebase have been rewritten to be included in the documentations. Most objects have had type annotations\n[…]\n significant portion of the code has received edits, there should be no changes to the code itself and therefore no changes in behavior.\r\n\r\nCo-authored-by @waylan who made most of the docstring edits.",
          "is_bot": false,
          "headline": "Add API docs to documentation",
          "author_name": "Timothée Mazzucotelli",
          "author_login": "pawamoy",
          "committed_at": "2023-10-06T18:28:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5a2fee340845ee5a70f6570c35b53fd4a37ade1c",
          "body": "Fix a corner case in admonitions where if an indented code block was\r\nprovided as the first block, the output would be malformed.\r\n\r\nFixes #1329.",
          "is_bot": false,
          "headline": "Fix admonition corner case with indented code blocks",
          "author_name": "Isaac Muse",
          "author_login": "facelessuser",
          "committed_at": "2023-09-05T14:01:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "25b64df6a9066b8eef7e68101567de938e38ea0e",
          "body": "Fixes #1293.",
          "is_bot": false,
          "headline": "Add customizable TOC title class",
          "author_name": "Paolo Melchiorre",
          "author_login": "pauloxnet",
          "committed_at": "2023-08-11T17:59:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "acdbdc19959f5c02c13f741413d76e23366b4aa5",
          "body": "Use Python standard library's HTML_EMPTY which already contains the new tags. Fixes #1353.",
          "is_bot": false,
          "headline": "Update list of empty HTML tags",
          "author_name": "nicbou",
          "author_login": "nicbou",
          "committed_at": "2023-08-11T17:29:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f50ac4702108e90448919d228d465cc192a58936",
          "body": "New changelog is at `docs/changelog.md` and uses the format defined at\r\n<https://keepachangelog.com/>. It only contins releases in the 3.x series.\r\nThe old changelog at `docs/change_log/` remains in its old format as an\r\narchive and only contains older releases. The archive is removed from\r\nthe site\n[…]\nreflect the changes.\r\n\r\nUpdate the changelog validation workflow to use an action which understands the new format.\r\n\r\nUpdate deploy action to include release notes from changelog in a GitHub release.",
          "is_bot": false,
          "headline": "Refactor changelog",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2023-08-11T17:13:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8ae73a0580129dfa86e253f337e3da43537104c1",
          "body": "Update default version for non-version specific tests (linters, etc)\r\nto PY-3.11 (previously used 3.7). Fixes #1357.\r\n\r\nSkip version isvalid test except when version is changed.",
          "is_bot": false,
          "headline": "Add PY3.12 & PYPY3.10 and drop 3.7",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2023-08-08T17:50:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fbb34ea825b5c29faf9490ed3bbd3aab0ad22dbe",
          "body": "While we don't really need to upload release files to GitHub (as they\nare uploaded to PyPI), creating releases does provide a mechanism to\nnotify users that a new release is available. As GitHub will automaticaly\ncreate files from the repo when none are provided, we upload the official\ndistribution files instead. Fixes #1365.",
          "is_bot": false,
          "headline": "Add GitHub Releases action to deploy workflow",
          "author_name": "Waylan Limberg",
          "author_login": "waylan",
          "committed_at": "2023-08-07T18:53:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 11,
      "commits_last_year": 23,
      "latest_release_at": "2026-02-09T14:57:29Z",
      "latest_release_tag": "3.10.2",
      "releases_from_tags": false,
      "days_since_last_push": 13,
      "active_weeks_last_year": 14,
      "days_since_latest_release": 162,
      "mean_days_between_releases": 84.6
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 75,
      "has_issue_template": false,
      "has_code_of_conduct": true,
      "has_pull_request_template": true
    },
    "ecosystem": {
      "packages": [
        {
          "name": "Markdown",
          "exists": true,
          "license": "BSD-3-Clause",
          "keywords": [
            "markdown",
            "markdown-parser",
            "python-markdown",
            "markdown-to-html",
            "Development Status :: 5 - Production/Stable",
            "Operating System :: OS Independent",
            "Programming Language :: Python",
            "Programming Language :: Python :: 3",
            "Programming Language :: Python :: 3 :: Only",
            "Programming Language :: Python :: 3.10",
            "Programming Language :: Python :: 3.11",
            "Programming Language :: Python :: 3.12",
            "Programming Language :: Python :: 3.13",
            "Programming Language :: Python :: 3.14",
            "Programming Language :: Python :: Implementation :: CPython",
            "Programming Language :: Python :: Implementation :: PyPy",
            "Topic :: Communications :: Email :: Filters",
            "Topic :: Internet :: WWW/HTTP :: Dynamic Content :: CGI Tools/Libraries",
            "Topic :: Internet :: WWW/HTTP :: Site Management",
            "Topic :: Software Development :: Documentation",
            "Topic :: Software Development :: Libraries :: Python Modules",
            "Topic :: Text Processing :: Filters",
            "Topic :: Text Processing :: Markup :: HTML",
            "Topic :: Text Processing :: Markup :: Markdown"
          ],
          "ecosystem": "pypi",
          "matches_repo": true,
          "registry_url": "https://pypi.org/project/Markdown/",
          "is_deprecated": false,
          "latest_version": "3.10.2",
          "repository_url": "https://github.com/Python-Markdown/markdown",
          "versions_count": 60,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": "2008-02-18T02:14:25Z",
          "latest_published_at": "2026-02-09T14:57:26.942957Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 162
        }
      ]
    },
    "popularity": {
      "forks": 902,
      "stars": 4226,
      "watchers": 75,
      "fork_history": {
        "days": [
          {
            "date": "2011-05-02",
            "count": 1
          },
          {
            "date": "2011-06-06",
            "count": 1
          },
          {
            "date": "2011-06-18",
            "count": 1
          },
          {
            "date": "2011-06-25",
            "count": 1
          },
          {
            "date": "2011-06-26",
            "count": 1
          },
          {
            "date": "2011-07-25",
            "count": 1
          },
          {
            "date": "2011-08-05",
            "count": 1
          },
          {
            "date": "2011-08-27",
            "count": 1
          },
          {
            "date": "2011-10-04",
            "count": 2
          },
          {
            "date": "2011-10-14",
            "count": 2
          },
          {
            "date": "2011-11-10",
            "count": 1
          },
          {
            "date": "2011-11-25",
            "count": 1
          },
          {
            "date": "2011-12-14",
            "count": 1
          },
          {
            "date": "2011-12-27",
            "count": 1
          },
          {
            "date": "2012-01-02",
            "count": 1
          },
          {
            "date": "2012-01-05",
            "count": 1
          },
          {
            "date": "2012-01-10",
            "count": 1
          },
          {
            "date": "2012-01-31",
            "count": 1
          },
          {
            "date": "2012-03-09",
            "count": 1
          },
          {
            "date": "2012-04-11",
            "count": 1
          },
          {
            "date": "2012-05-23",
            "count": 1
          },
          {
            "date": "2012-07-21",
            "count": 1
          },
          {
            "date": "2012-07-26",
            "count": 1
          },
          {
            "date": "2012-07-31",
            "count": 1
          },
          {
            "date": "2012-08-09",
            "count": 1
          },
          {
            "date": "2012-08-14",
            "count": 1
          },
          {
            "date": "2012-08-23",
            "count": 1
          },
          {
            "date": "2012-08-24",
            "count": 1
          },
          {
            "date": "2012-08-28",
            "count": 1
          },
          {
            "date": "2012-09-02",
            "count": 1
          },
          {
            "date": "2012-10-06",
            "count": 1
          },
          {
            "date": "2012-10-19",
            "count": 2
          },
          {
            "date": "2012-11-03",
            "count": 1
          },
          {
            "date": "2012-12-03",
            "count": 1
          },
          {
            "date": "2012-12-04",
            "count": 1
          },
          {
            "date": "2012-12-20",
            "count": 1
          },
          {
            "date": "2013-01-01",
            "count": 1
          },
          {
            "date": "2013-01-07",
            "count": 1
          },
          {
            "date": "2013-01-08",
            "count": 1
          },
          {
            "date": "2013-01-09",
            "count": 1
          },
          {
            "date": "2013-01-18",
            "count": 1
          },
          {
            "date": "2013-01-27",
            "count": 1
          },
          {
            "date": "2013-01-29",
            "count": 1
          },
          {
            "date": "2013-02-01",
            "count": 1
          },
          {
            "date": "2013-02-05",
            "count": 1
          },
          {
            "date": "2013-02-13",
            "count": 1
          },
          {
            "date": "2013-02-15",
            "count": 1
          },
          {
            "date": "2013-02-17",
            "count": 1
          },
          {
            "date": "2013-02-26",
            "count": 2
          },
          {
            "date": "2013-03-15",
            "count": 1
          },
          {
            "date": "2013-03-21",
            "count": 1
          },
          {
            "date": "2013-03-22",
            "count": 1
          },
          {
            "date": "2013-03-25",
            "count": 1
          },
          {
            "date": "2013-04-30",
            "count": 1
          },
          {
            "date": "2013-05-28",
            "count": 1
          },
          {
            "date": "2013-06-05",
            "count": 2
          },
          {
            "date": "2013-06-09",
            "count": 1
          },
          {
            "date": "2013-06-19",
            "count": 1
          },
          {
            "date": "2013-06-20",
            "count": 1
          },
          {
            "date": "2013-06-25",
            "count": 1
          },
          {
            "date": "2013-07-15",
            "count": 1
          },
          {
            "date": "2013-07-18",
            "count": 1
          },
          {
            "date": "2013-07-23",
            "count": 1
          },
          {
            "date": "2013-07-24",
            "count": 1
          },
          {
            "date": "2013-07-31",
            "count": 1
          },
          {
            "date": "2013-08-01",
            "count": 1
          },
          {
            "date": "2013-08-09",
            "count": 1
          },
          {
            "date": "2013-08-16",
            "count": 1
          },
          {
            "date": "2013-08-31",
            "count": 1
          },
          {
            "date": "2013-09-04",
            "count": 1
          },
          {
            "date": "2013-09-09",
            "count": 1
          },
          {
            "date": "2013-09-16",
            "count": 1
          },
          {
            "date": "2013-09-20",
            "count": 1
          },
          {
            "date": "2013-09-24",
            "count": 1
          },
          {
            "date": "2013-09-26",
            "count": 2
          },
          {
            "date": "2013-10-21",
            "count": 1
          },
          {
            "date": "2013-10-23",
            "count": 1
          },
          {
            "date": "2013-11-09",
            "count": 1
          },
          {
            "date": "2013-11-25",
            "count": 1
          },
          {
            "date": "2013-12-01",
            "count": 2
          },
          {
            "date": "2013-12-20",
            "count": 1
          },
          {
            "date": "2013-12-22",
            "count": 1
          },
          {
            "date": "2014-01-04",
            "count": 1
          },
          {
            "date": "2014-01-06",
            "count": 1
          },
          {
            "date": "2014-01-10",
            "count": 1
          },
          {
            "date": "2014-02-11",
            "count": 1
          },
          {
            "date": "2014-02-14",
            "count": 1
          },
          {
            "date": "2014-02-15",
            "count": 1
          },
          {
            "date": "2014-02-17",
            "count": 1
          },
          {
            "date": "2014-02-20",
            "count": 1
          },
          {
            "date": "2014-02-25",
            "count": 2
          },
          {
            "date": "2014-02-28",
            "count": 1
          },
          {
            "date": "2014-03-07",
            "count": 1
          },
          {
            "date": "2014-04-10",
            "count": 1
          },
          {
            "date": "2014-05-05",
            "count": 1
          },
          {
            "date": "2014-05-14",
            "count": 1
          },
          {
            "date": "2014-05-17",
            "count": 1
          },
          {
            "date": "2014-05-31",
            "count": 1
          },
          {
            "date": "2014-06-01",
            "count": 1
          },
          {
            "date": "2014-06-21",
            "count": 1
          },
          {
            "date": "2014-07-02",
            "count": 1
          },
          {
            "date": "2014-07-08",
            "count": 1
          },
          {
            "date": "2014-07-10",
            "count": 1
          },
          {
            "date": "2014-07-29",
            "count": 1
          },
          {
            "date": "2014-07-30",
            "count": 1
          },
          {
            "date": "2014-08-07",
            "count": 1
          },
          {
            "date": "2014-08-17",
            "count": 1
          },
          {
            "date": "2014-08-22",
            "count": 1
          },
          {
            "date": "2014-09-04",
            "count": 1
          },
          {
            "date": "2014-09-10",
            "count": 1
          },
          {
            "date": "2014-09-13",
            "count": 1
          },
          {
            "date": "2014-09-21",
            "count": 1
          },
          {
            "date": "2014-09-22",
            "count": 1
          },
          {
            "date": "2014-09-23",
            "count": 1
          },
          {
            "date": "2014-09-24",
            "count": 2
          },
          {
            "date": "2014-10-24",
            "count": 1
          },
          {
            "date": "2014-10-31",
            "count": 1
          },
          {
            "date": "2014-11-17",
            "count": 1
          },
          {
            "date": "2014-11-24",
            "count": 1
          },
          {
            "date": "2014-12-04",
            "count": 1
          },
          {
            "date": "2014-12-06",
            "count": 2
          },
          {
            "date": "2014-12-09",
            "count": 1
          },
          {
            "date": "2014-12-18",
            "count": 1
          },
          {
            "date": "2015-01-01",
            "count": 1
          },
          {
            "date": "2015-01-16",
            "count": 1
          },
          {
            "date": "2015-01-21",
            "count": 1
          },
          {
            "date": "2015-01-22",
            "count": 1
          },
          {
            "date": "2015-01-28",
            "count": 1
          },
          {
            "date": "2015-02-23",
            "count": 1
          },
          {
            "date": "2015-03-09",
            "count": 1
          },
          {
            "date": "2015-03-13",
            "count": 1
          },
          {
            "date": "2015-03-22",
            "count": 1
          },
          {
            "date": "2015-03-28",
            "count": 1
          },
          {
            "date": "2015-04-10",
            "count": 1
          },
          {
            "date": "2015-04-19",
            "count": 1
          },
          {
            "date": "2015-04-25",
            "count": 1
          },
          {
            "date": "2015-05-08",
            "count": 1
          },
          {
            "date": "2015-05-19",
            "count": 1
          },
          {
            "date": "2015-05-25",
            "count": 1
          },
          {
            "date": "2015-05-26",
            "count": 1
          },
          {
            "date": "2015-06-04",
            "count": 1
          },
          {
            "date": "2015-06-14",
            "count": 1
          },
          {
            "date": "2015-07-04",
            "count": 1
          },
          {
            "date": "2015-08-01",
            "count": 1
          },
          {
            "date": "2015-08-05",
            "count": 1
          },
          {
            "date": "2015-08-27",
            "count": 1
          },
          {
            "date": "2015-08-28",
            "count": 1
          },
          {
            "date": "2015-09-01",
            "count": 1
          },
          {
            "date": "2015-09-22",
            "count": 1
          },
          {
            "date": "2015-09-25",
            "count": 1
          },
          {
            "date": "2015-10-13",
            "count": 1
          },
          {
            "date": "2015-10-14",
            "count": 1
          },
          {
            "date": "2015-10-22",
            "count": 1
          },
          {
            "date": "2015-10-23",
            "count": 1
          },
          {
            "date": "2015-11-02",
            "count": 1
          },
          {
            "date": "2015-11-08",
            "count": 1
          },
          {
            "date": "2015-11-11",
            "count": 1
          },
          {
            "date": "2015-11-25",
            "count": 2
          },
          {
            "date": "2015-11-28",
            "count": 2
          },
          {
            "date": "2015-12-16",
            "count": 1
          },
          {
            "date": "2015-12-27",
            "count": 1
          },
          {
            "date": "2015-12-30",
            "count": 1
          },
          {
            "date": "2016-01-02",
            "count": 1
          },
          {
            "date": "2016-01-04",
            "count": 1
          },
          {
            "date": "2016-01-25",
            "count": 1
          },
          {
            "date": "2016-01-29",
            "count": 1
          },
          {
            "date": "2016-02-01",
            "count": 1
          },
          {
            "date": "2016-03-03",
            "count": 1
          },
          {
            "date": "2016-03-11",
            "count": 1
          },
          {
            "date": "2016-03-25",
            "count": 1
          },
          {
            "date": "2016-03-29",
            "count": 2
          },
          {
            "date": "2016-05-03",
            "count": 1
          },
          {
            "date": "2016-05-06",
            "count": 1
          },
          {
            "date": "2016-05-08",
            "count": 1
          },
          {
            "date": "2016-05-31",
            "count": 1
          },
          {
            "date": "2016-06-01",
            "count": 1
          },
          {
            "date": "2016-07-14",
            "count": 1
          },
          {
            "date": "2016-07-18",
            "count": 1
          },
          {
            "date": "2016-07-20",
            "count": 1
          },
          {
            "date": "2016-07-25",
            "count": 1
          },
          {
            "date": "2016-08-05",
            "count": 1
          },
          {
            "date": "2016-08-10",
            "count": 1
          },
          {
            "date": "2016-08-15",
            "count": 1
          },
          {
            "date": "2016-09-13",
            "count": 1
          },
          {
            "date": "2016-09-20",
            "count": 1
          },
          {
            "date": "2016-10-17",
            "count": 1
          },
          {
            "date": "2016-10-19",
            "count": 1
          },
          {
            "date": "2016-10-21",
            "count": 1
          },
          {
            "date": "2016-10-24",
            "count": 1
          },
          {
            "date": "2016-11-02",
            "count": 1
          },
          {
            "date": "2016-11-04",
            "count": 1
          },
          {
            "date": "2016-11-12",
            "count": 1
          },
          {
            "date": "2016-12-13",
            "count": 1
          },
          {
            "date": "2016-12-21",
            "count": 1
          },
          {
            "date": "2017-01-08",
            "count": 1
          },
          {
            "date": "2017-01-17",
            "count": 2
          },
          {
            "date": "2017-02-22",
            "count": 1
          },
          {
            "date": "2017-03-08",
            "count": 1
          },
          {
            "date": "2017-03-26",
            "count": 1
          },
          {
            "date": "2017-03-31",
            "count": 1
          },
          {
            "date": "2017-04-25",
            "count": 1
          },
          {
            "date": "2017-04-28",
            "count": 1
          },
          {
            "date": "2017-05-07",
            "count": 1
          },
          {
            "date": "2017-06-07",
            "count": 1
          },
          {
            "date": "2017-06-23",
            "count": 1
          },
          {
            "date": "2017-06-27",
            "count": 1
          },
          {
            "date": "2017-07-14",
            "count": 1
          },
          {
            "date": "2017-08-09",
            "count": 1
          },
          {
            "date": "2017-08-17",
            "count": 1
          },
          {
            "date": "2017-09-08",
            "count": 3
          },
          {
            "date": "2017-09-18",
            "count": 1
          },
          {
            "date": "2017-10-05",
            "count": 1
          },
          {
            "date": "2017-10-20",
            "count": 1
          },
          {
            "date": "2017-10-22",
            "count": 1
          },
          {
            "date": "2017-11-01",
            "count": 1
          },
          {
            "date": "2017-11-08",
            "count": 1
          },
          {
            "date": "2017-11-14",
            "count": 1
          },
          {
            "date": "2017-12-08",
            "count": 1
          },
          {
            "date": "2017-12-21",
            "count": 1
          },
          {
            "date": "2017-12-22",
            "count": 2
          },
          {
            "date": "2018-01-07",
            "count": 1
          },
          {
            "date": "2018-01-12",
            "count": 1
          },
          {
            "date": "2018-01-15",
            "count": 1
          },
          {
            "date": "2018-01-24",
            "count": 1
          },
          {
            "date": "2018-01-31",
            "count": 1
          },
          {
            "date": "2018-02-01",
            "count": 1
          },
          {
            "date": "2018-02-07",
            "count": 1
          },
          {
            "date": "2018-02-08",
            "count": 1
          },
          {
            "date": "2018-02-20",
            "count": 2
          },
          {
            "date": "2018-02-22",
            "count": 1
          },
          {
            "date": "2018-02-23",
            "count": 1
          },
          {
            "date": "2018-03-01",
            "count": 1
          },
          {
            "date": "2018-03-06",
            "count": 1
          },
          {
            "date": "2018-03-11",
            "count": 1
          },
          {
            "date": "2018-04-04",
            "count": 1
          },
          {
            "date": "2018-04-09",
            "count": 1
          },
          {
            "date": "2018-04-11",
            "count": 1
          },
          {
            "date": "2018-04-15",
            "count": 1
          },
          {
            "date": "2018-04-18",
            "count": 1
          },
          {
            "date": "2018-04-24",
            "count": 2
          },
          {
            "date": "2018-04-26",
            "count": 1
          },
          {
            "date": "2018-04-29",
            "count": 1
          },
          {
            "date": "2018-05-07",
            "count": 1
          },
          {
            "date": "2018-05-08",
            "count": 1
          },
          {
            "date": "2018-05-18",
            "count": 1
          },
          {
            "date": "2018-05-19",
            "count": 1
          },
          {
            "date": "2018-05-29",
            "count": 2
          },
          {
            "date": "2018-06-01",
            "count": 1
          },
          {
            "date": "2018-06-10",
            "count": 1
          },
          {
            "date": "2018-06-12",
            "count": 1
          },
          {
            "date": "2018-06-18",
            "count": 1
          },
          {
            "date": "2018-06-19",
            "count": 1
          },
          {
            "date": "2018-07-10",
            "count": 1
          },
          {
            "date": "2018-07-28",
            "count": 1
          },
          {
            "date": "2018-08-03",
            "count": 1
          },
          {
            "date": "2018-08-10",
            "count": 1
          },
          {
            "date": "2018-08-25",
            "count": 1
          },
          {
            "date": "2018-08-27",
            "count": 1
          },
          {
            "date": "2018-08-31",
            "count": 1
          },
          {
            "date": "2018-09-02",
            "count": 1
          },
          {
            "date": "2018-09-07",
            "count": 1
          },
          {
            "date": "2018-09-13",
            "count": 1
          },
          {
            "date": "2018-09-23",
            "count": 1
          },
          {
            "date": "2018-10-11",
            "count": 1
          },
          {
            "date": "2018-10-19",
            "count": 1
          },
          {
            "date": "2018-10-26",
            "count": 1
          },
          {
            "date": "2018-11-06",
            "count": 1
          },
          {
            "date": "2018-11-08",
            "count": 2
          },
          {
            "date": "2018-11-13",
            "count": 1
          },
          {
            "date": "2018-11-18",
            "count": 2
          },
          {
            "date": "2018-11-21",
            "count": 1
          },
          {
            "date": "2018-11-29",
            "count": 1
          },
          {
            "date": "2018-12-01",
            "count": 2
          },
          {
            "date": "2018-12-22",
            "count": 1
          },
          {
            "date": "2018-12-27",
            "count": 1
          },
          {
            "date": "2019-01-04",
            "count": 1
          },
          {
            "date": "2019-01-05",
            "count": 1
          },
          {
            "date": "2019-01-10",
            "count": 1
          },
          {
            "date": "2019-01-16",
            "count": 2
          },
          {
            "date": "2019-01-18",
            "count": 1
          },
          {
            "date": "2019-01-20",
            "count": 1
          },
          {
            "date": "2019-01-29",
            "count": 2
          },
          {
            "date": "2019-02-01",
            "count": 1
          },
          {
            "date": "2019-02-08",
            "count": 1
          },
          {
            "date": "2019-02-17",
            "count": 1
          },
          {
            "date": "2019-02-21",
            "count": 1
          },
          {
            "date": "2019-03-06",
            "count": 2
          },
          {
            "date": "2019-03-07",
            "count": 2
          },
          {
            "date": "2019-03-08",
            "count": 1
          },
          {
            "date": "2019-03-13",
            "count": 1
          },
          {
            "date": "2019-03-23",
            "count": 1
          },
          {
            "date": "2019-03-27",
            "count": 2
          },
          {
            "date": "2019-03-31",
            "count": 1
          },
          {
            "date": "2019-04-09",
            "count": 3
          },
          {
            "date": "2019-04-16",
            "count": 1
          },
          {
            "date": "2019-04-23",
            "count": 1
          },
          {
            "date": "2019-04-26",
            "count": 1
          },
          {
            "date": "2019-04-27",
            "count": 2
          },
          {
            "date": "2019-04-28",
            "count": 1
          },
          {
            "date": "2019-04-29",
            "count": 1
          },
          {
            "date": "2019-04-30",
            "count": 1
          },
          {
            "date": "2019-05-10",
            "count": 1
          },
          {
            "date": "2019-05-12",
            "count": 1
          },
          {
            "date": "2019-05-16",
            "count": 1
          },
          {
            "date": "2019-05-20",
            "count": 1
          },
          {
            "date": "2019-05-22",
            "count": 1
          },
          {
            "date": "2019-05-31",
            "count": 1
          },
          {
            "date": "2019-06-06",
            "count": 1
          },
          {
            "date": "2019-06-16",
            "count": 1
          },
          {
            "date": "2019-06-17",
            "count": 1
          },
          {
            "date": "2019-07-02",
            "count": 1
          },
          {
            "date": "2019-07-03",
            "count": 1
          },
          {
            "date": "2019-07-08",
            "count": 1
          },
          {
            "date": "2019-07-14",
            "count": 1
          },
          {
            "date": "2019-07-16",
            "count": 1
          },
          {
            "date": "2019-07-23",
            "count": 2
          },
          {
            "date": "2019-07-30",
            "count": 1
          },
          {
            "date": "2019-08-01",
            "count": 1
          },
          {
            "date": "2019-08-10",
            "count": 1
          },
          {
            "date": "2019-08-21",
            "count": 1
          },
          {
            "date": "2019-08-24",
            "count": 1
          },
          {
            "date": "2019-08-30",
            "count": 1
          },
          {
            "date": "2019-09-05",
            "count": 1
          },
          {
            "date": "2019-09-19",
            "count": 1
          },
          {
            "date": "2019-09-29",
            "count": 2
          },
          {
            "date": "2019-10-08",
            "count": 1
          },
          {
            "date": "2019-10-10",
            "count": 1
          },
          {
            "date": "2019-10-14",
            "count": 1
          },
          {
            "date": "2019-10-17",
            "count": 1
          },
          {
            "date": "2019-10-22",
            "count": 1
          },
          {
            "date": "2019-10-23",
            "count": 3
          },
          {
            "date": "2019-10-24",
            "count": 1
          },
          {
            "date": "2019-10-26",
            "count": 1
          },
          {
            "date": "2019-10-27",
            "count": 1
          },
          {
            "date": "2019-10-29",
            "count": 1
          },
          {
            "date": "2019-10-30",
            "count": 1
          },
          {
            "date": "2019-10-31",
            "count": 1
          },
          {
            "date": "2019-11-09",
            "count": 1
          },
          {
            "date": "2019-12-03",
            "count": 1
          },
          {
            "date": "2019-12-07",
            "count": 1
          },
          {
            "date": "2019-12-08",
            "count": 1
          },
          {
            "date": "2019-12-17",
            "count": 1
          },
          {
            "date": "2019-12-20",
            "count": 1
          },
          {
            "date": "2019-12-24",
            "count": 1
          },
          {
            "date": "2019-12-27",
            "count": 1
          },
          {
            "date": "2020-01-08",
            "count": 1
          },
          {
            "date": "2020-01-14",
            "count": 2
          },
          {
            "date": "2020-01-29",
            "count": 1
          },
          {
            "date": "2020-01-31",
            "count": 1
          },
          {
            "date": "2020-02-04",
            "count": 1
          },
          {
            "date": "2020-02-05",
            "count": 1
          },
          {
            "date": "2020-02-22",
            "count": 1
          },
          {
            "date": "2020-02-27",
            "count": 2
          },
          {
            "date": "2020-03-03",
            "count": 3
          },
          {
            "date": "2020-03-05",
            "count": 1
          },
          {
            "date": "2020-03-08",
            "count": 1
          },
          {
            "date": "2020-03-09",
            "count": 1
          },
          {
            "date": "2020-03-10",
            "count": 1
          },
          {
            "date": "2020-03-11",
            "count": 1
          },
          {
            "date": "2020-03-16",
            "count": 1
          },
          {
            "date": "2020-03-19",
            "count": 1
          },
          {
            "date": "2020-03-21",
            "count": 1
          },
          {
            "date": "2020-03-22",
            "count": 1
          },
          {
            "date": "2020-03-23",
            "count": 1
          },
          {
            "date": "2020-03-31",
            "count": 2
          },
          {
            "date": "2020-04-03",
            "count": 1
          },
          {
            "date": "2020-04-04",
            "count": 1
          },
          {
            "date": "2020-04-08",
            "count": 1
          },
          {
            "date": "2020-04-10",
            "count": 1
          },
          {
            "date": "2020-04-11",
            "count": 1
          },
          {
            "date": "2020-04-14",
            "count": 1
          },
          {
            "date": "2020-04-16",
            "count": 1
          },
          {
            "date": "2020-04-19",
            "count": 2
          },
          {
            "date": "2020-04-26",
            "count": 1
          },
          {
            "date": "2020-04-27",
            "count": 2
          },
          {
            "date": "2020-05-01",
            "count": 1
          },
          {
            "date": "2020-05-06",
            "count": 1
          },
          {
            "date": "2020-05-09",
            "count": 1
          },
          {
            "date": "2020-05-10",
            "count": 1
          },
          {
            "date": "2020-05-18",
            "count": 1
          },
          {
            "date": "2020-05-20",
            "count": 2
          },
          {
            "date": "2020-05-21",
            "count": 1
          },
          {
            "date": "2020-05-28",
            "count": 1
          },
          {
            "date": "2020-06-03",
            "count": 1
          },
          {
            "date": "2020-06-11",
            "count": 1
          },
          {
            "date": "2020-06-12",
            "count": 2
          },
          {
            "date": "2020-06-21",
            "count": 1
          },
          {
            "date": "2020-06-22",
            "count": 1
          },
          {
            "date": "2020-06-24",
            "count": 1
          },
          {
            "date": "2020-06-25",
            "count": 1
          },
          {
            "date": "2020-07-01",
            "count": 1
          },
          {
            "date": "2020-07-07",
            "count": 1
          },
          {
            "date": "2020-07-08",
            "count": 1
          },
          {
            "date": "2020-07-23",
            "count": 1
          },
          {
            "date": "2020-08-03",
            "count": 1
          },
          {
            "date": "2020-08-16",
            "count": 1
          },
          {
            "date": "2020-08-18",
            "count": 1
          },
          {
            "date": "2020-09-02",
            "count": 2
          },
          {
            "date": "2020-09-03",
            "count": 1
          },
          {
            "date": "2020-09-07",
            "count": 1
          },
          {
            "date": "2020-09-09",
            "count": 1
          },
          {
            "date": "2020-09-11",
            "count": 1
          },
          {
            "date": "2020-09-16",
            "count": 1
          },
          {
            "date": "2020-09-23",
            "count": 1
          },
          {
            "date": "2020-10-01",
            "count": 1
          },
          {
            "date": "2020-10-07",
            "count": 2
          },
          {
            "date": "2020-10-14",
            "count": 1
          },
          {
            "date": "2020-10-15",
            "count": 2
          },
          {
            "date": "2020-10-17",
            "count": 1
          },
          {
            "date": "2020-10-27",
            "count": 1
          },
          {
            "date": "2020-10-29",
            "count": 1
          },
          {
            "date": "2020-10-30",
            "count": 1
          },
          {
            "date": "2020-10-31",
            "count": 1
          },
          {
            "date": "2020-11-03",
            "count": 1
          },
          {
            "date": "2020-11-06",
            "count": 1
          },
          {
            "date": "2020-11-10",
            "count": 1
          },
          {
            "date": "2020-11-19",
            "count": 1
          },
          {
            "date": "2020-11-29",
            "count": 1
          },
          {
            "date": "2020-11-30",
            "count": 1
          },
          {
            "date": "2020-12-03",
            "count": 1
          },
          {
            "date": "2020-12-06",
            "count": 1
          },
          {
            "date": "2020-12-14",
            "count": 1
          },
          {
            "date": "2020-12-15",
            "count": 1
          },
          {
            "date": "2020-12-16",
            "count": 1
          },
          {
            "date": "2020-12-21",
            "count": 1
          },
          {
            "date": "2020-12-22",
            "count": 1
          },
          {
            "date": "2020-12-27",
            "count": 2
          },
          {
            "date": "2020-12-29",
            "count": 1
          },
          {
            "date": "2020-12-30",
            "count": 1
          },
          {
            "date": "2021-01-04",
            "count": 1
          },
          {
            "date": "2021-01-06",
            "count": 1
          },
          {
            "date": "2021-01-09",
            "count": 2
          },
          {
            "date": "2021-01-12",
            "count": 1
          },
          {
            "date": "2021-01-18",
            "count": 1
          },
          {
            "date": "2021-01-21",
            "count": 1
          },
          {
            "date": "2021-01-22",
            "count": 1
          },
          {
            "date": "2021-01-26",
            "count": 2
          },
          {
            "date": "2021-01-28",
            "count": 1
          },
          {
            "date": "2021-02-02",
            "count": 1
          },
          {
            "date": "2021-02-03",
            "count": 1
          },
          {
            "date": "2021-02-06",
            "count": 1
          },
          {
            "date": "2021-02-09",
            "count": 1
          },
          {
            "date": "2021-02-15",
            "count": 3
          },
          {
            "date": "2021-02-20",
            "count": 2
          },
          {
            "date": "2021-03-01",
            "count": 1
          },
          {
            "date": "2021-03-02",
            "count": 1
          },
          {
            "date": "2021-03-03",
            "count": 1
          },
          {
            "date": "2021-03-05",
            "count": 2
          },
          {
            "date": "2021-03-06",
            "count": 1
          },
          {
            "date": "2021-03-07",
            "count": 1
          },
          {
            "date": "2021-03-12",
            "count": 1
          },
          {
            "date": "2021-03-14",
            "count": 1
          },
          {
            "date": "2021-03-18",
            "count": 1
          },
          {
            "date": "2021-04-01",
            "count": 1
          },
          {
            "date": "2021-04-03",
            "count": 1
          },
          {
            "date": "2021-04-07",
            "count": 1
          },
          {
            "date": "2021-04-13",
            "count": 1
          },
          {
            "date": "2021-04-15",
            "count": 3
          },
          {
            "date": "2021-04-17",
            "count": 1
          },
          {
            "date": "2021-04-19",
            "count": 1
          },
          {
            "date": "2021-04-20",
            "count": 1
          },
          {
            "date": "2021-04-21",
            "count": 1
          },
          {
            "date": "2021-04-23",
            "count": 1
          },
          {
            "date": "2021-05-02",
            "count": 1
          },
          {
            "date": "2021-05-04",
            "count": 1
          },
          {
            "date": "2021-05-06",
            "count": 2
          },
          {
            "date": "2021-05-08",
            "count": 1
          },
          {
            "date": "2021-05-13",
            "count": 1
          },
          {
            "date": "2021-05-18",
            "count": 1
          },
          {
            "date": "2021-05-20",
            "count": 1
          },
          {
            "date": "2021-05-22",
            "count": 1
          },
          {
            "date": "2021-05-24",
            "count": 2
          },
          {
            "date": "2021-05-26",
            "count": 1
          },
          {
            "date": "2021-05-29",
            "count": 1
          },
          {
            "date": "2021-06-01",
            "count": 1
          },
          {
            "date": "2021-06-03",
            "count": 1
          },
          {
            "date": "2021-06-06",
            "count": 1
          },
          {
            "date": "2021-06-10",
            "count": 2
          },
          {
            "date": "2021-06-12",
            "count": 1
          },
          {
            "date": "2021-06-13",
            "count": 1
          },
          {
            "date": "2021-06-15",
            "count": 1
          },
          {
            "date": "2021-06-23",
            "count": 1
          },
          {
            "date": "2021-07-08",
            "count": 2
          },
          {
            "date": "2021-07-14",
            "count": 1
          },
          {
            "date": "2021-07-15",
            "count": 2
          },
          {
            "date": "2021-07-17",
            "count": 1
          },
          {
            "date": "2021-07-23",
            "count": 1
          },
          {
            "date": "2021-07-27",
            "count": 1
          },
          {
            "date": "2021-07-28",
            "count": 2
          },
          {
            "date": "2021-07-30",
            "count": 1
          },
          {
            "date": "2021-08-01",
            "count": 1
          },
          {
            "date": "2021-08-06",
            "count": 1
          },
          {
            "date": "2021-08-08",
            "count": 1
          },
          {
            "date": "2021-08-09",
            "count": 1
          },
          {
            "date": "2021-08-19",
            "count": 1
          },
          {
            "date": "2021-08-21",
            "count": 1
          },
          {
            "date": "2021-08-22",
            "count": 1
          },
          {
            "date": "2021-08-23",
            "count": 3
          },
          {
            "date": "2021-08-25",
            "count": 2
          },
          {
            "date": "2021-08-26",
            "count": 1
          },
          {
            "date": "2021-08-29",
            "count": 1
          },
          {
            "date": "2021-08-30",
            "count": 2
          },
          {
            "date": "2021-09-02",
            "count": 1
          },
          {
            "date": "2021-09-03",
            "count": 2
          },
          {
            "date": "2021-09-04",
            "count": 1
          },
          {
            "date": "2021-09-05",
            "count": 1
          },
          {
            "date": "2021-09-14",
            "count": 1
          },
          {
            "date": "2021-09-26",
            "count": 1
          },
          {
            "date": "2021-10-05",
            "count": 1
          },
          {
            "date": "2021-10-06",
            "count": 1
          },
          {
            "date": "2021-10-09",
            "count": 1
          },
          {
            "date": "2021-10-12",
            "count": 1
          },
          {
            "date": "2021-10-13",
            "count": 2
          },
          {
            "date": "2021-10-15",
            "count": 1
          },
          {
            "date": "2021-10-16",
            "count": 1
          },
          {
            "date": "2021-10-24",
            "count": 1
          },
          {
            "date": "2021-10-25",
            "count": 1
          },
          {
            "date": "2021-10-27",
            "count": 2
          },
          {
            "date": "2021-10-28",
            "count": 1
          },
          {
            "date": "2021-10-29",
            "count": 1
          },
          {
            "date": "2021-11-08",
            "count": 1
          },
          {
            "date": "2021-11-17",
            "count": 2
          },
          {
            "date": "2021-11-20",
            "count": 1
          },
          {
            "date": "2021-11-25",
            "count": 1
          },
          {
            "date": "2021-11-30",
            "count": 1
          },
          {
            "date": "2021-12-01",
            "count": 1
          },
          {
            "date": "2021-12-10",
            "count": 1
          },
          {
            "date": "2021-12-14",
            "count": 1
          },
          {
            "date": "2021-12-15",
            "count": 1
          },
          {
            "date": "2021-12-20",
            "count": 1
          },
          {
            "date": "2021-12-31",
            "count": 1
          },
          {
            "date": "2022-01-09",
            "count": 1
          },
          {
            "date": "2022-01-11",
            "count": 1
          },
          {
            "date": "2022-01-22",
            "count": 1
          },
          {
            "date": "2022-01-24",
            "count": 1
          },
          {
            "date": "2022-01-25",
            "count": 1
          },
          {
            "date": "2022-01-27",
            "count": 1
          },
          {
            "date": "2022-02-02",
            "count": 1
          },
          {
            "date": "2022-02-03",
            "count": 1
          },
          {
            "date": "2022-02-05",
            "count": 1
          },
          {
            "date": "2022-02-08",
            "count": 1
          },
          {
            "date": "2022-02-12",
            "count": 1
          },
          {
            "date": "2022-02-16",
            "count": 1
          },
          {
            "date": "2022-02-18",
            "count": 1
          },
          {
            "date": "2022-02-21",
            "count": 1
          },
          {
            "date": "2022-02-23",
            "count": 2
          },
          {
            "date": "2022-02-25",
            "count": 1
          },
          {
            "date": "2022-03-02",
            "count": 1
          },
          {
            "date": "2022-03-03",
            "count": 2
          },
          {
            "date": "2022-03-06",
            "count": 1
          },
          {
            "date": "2022-03-18",
            "count": 1
          },
          {
            "date": "2022-03-21",
            "count": 1
          },
          {
            "date": "2022-03-24",
            "count": 1
          },
          {
            "date": "2022-04-01",
            "count": 1
          },
          {
            "date": "2022-04-02",
            "count": 1
          },
          {
            "date": "2022-04-05",
            "count": 2
          },
          {
            "date": "2022-04-06",
            "count": 1
          },
          {
            "date": "2022-04-07",
            "count": 1
          },
          {
            "date": "2022-04-10",
            "count": 1
          },
          {
            "date": "2022-04-22",
            "count": 1
          },
          {
            "date": "2022-04-28",
            "count": 1
          },
          {
            "date": "2022-05-05",
            "count": 1
          },
          {
            "date": "2022-05-12",
            "count": 1
          },
          {
            "date": "2022-05-13",
            "count": 1
          },
          {
            "date": "2022-05-15",
            "count": 2
          },
          {
            "date": "2022-05-17",
            "count": 1
          },
          {
            "date": "2022-05-22",
            "count": 1
          },
          {
            "date": "2022-05-25",
            "count": 1
          },
          {
            "date": "2022-05-26",
            "count": 1
          },
          {
            "date": "2022-05-31",
            "count": 1
          },
          {
            "date": "2022-06-02",
            "count": 1
          },
          {
            "date": "2022-06-07",
            "count": 1
          },
          {
            "date": "2022-06-11",
            "count": 1
          },
          {
            "date": "2022-06-13",
            "count": 1
          },
          {
            "date": "2022-06-15",
            "count": 1
          },
          {
            "date": "2022-06-22",
            "count": 1
          },
          {
            "date": "2022-07-02",
            "count": 1
          },
          {
            "date": "2022-07-03",
            "count": 1
          },
          {
            "date": "2022-07-06",
            "count": 1
          },
          {
            "date": "2022-07-07",
            "count": 1
          },
          {
            "date": "2022-07-08",
            "count": 2
          },
          {
            "date": "2022-07-09",
            "count": 1
          },
          {
            "date": "2022-07-11",
            "count": 1
          },
          {
            "date": "2022-07-19",
            "count": 1
          },
          {
            "date": "2022-07-20",
            "count": 1
          },
          {
            "date": "2022-07-23",
            "count": 2
          },
          {
            "date": "2022-07-30",
            "count": 1
          },
          {
            "date": "2022-08-05",
            "count": 1
          },
          {
            "date": "2022-08-08",
            "count": 2
          },
          {
            "date": "2022-08-11",
            "count": 1
          },
          {
            "date": "2022-08-19",
            "count": 1
          },
          {
            "date": "2022-08-25",
            "count": 1
          },
          {
            "date": "2022-08-27",
            "count": 1
          },
          {
            "date": "2022-08-30",
            "count": 1
          },
          {
            "date": "2022-09-02",
            "count": 1
          },
          {
            "date": "2022-09-09",
            "count": 1
          },
          {
            "date": "2022-09-11",
            "count": 1
          },
          {
            "date": "2022-09-13",
            "count": 2
          },
          {
            "date": "2022-09-18",
            "count": 1
          },
          {
            "date": "2022-09-25",
            "count": 1
          },
          {
            "date": "2022-09-28",
            "count": 2
          },
          {
            "date": "2022-10-03",
            "count": 1
          },
          {
            "date": "2022-10-07",
            "count": 1
          },
          {
            "date": "2022-10-08",
            "count": 1
          },
          {
            "date": "2022-10-10",
            "count": 2
          },
          {
            "date": "2022-10-13",
            "count": 2
          },
          {
            "date": "2022-11-01",
            "count": 1
          },
          {
            "date": "2022-11-02",
            "count": 1
          },
          {
            "date": "2022-11-05",
            "count": 1
          },
          {
            "date": "2022-11-09",
            "count": 1
          },
          {
            "date": "2022-11-12",
            "count": 1
          },
          {
            "date": "2022-11-24",
            "count": 1
          },
          {
            "date": "2022-11-28",
            "count": 1
          },
          {
            "date": "2022-11-29",
            "count": 1
          },
          {
            "date": "2022-11-30",
            "count": 1
          },
          {
            "date": "2022-12-06",
            "count": 1
          },
          {
            "date": "2022-12-12",
            "count": 1
          },
          {
            "date": "2022-12-19",
            "count": 2
          },
          {
            "date": "2022-12-24",
            "count": 1
          },
          {
            "date": "2022-12-29",
            "count": 1
          },
          {
            "date": "2023-01-03",
            "count": 1
          },
          {
            "date": "2023-01-08",
            "count": 1
          },
          {
            "date": "2023-01-12",
            "count": 1
          },
          {
            "date": "2023-01-17",
            "count": 1
          },
          {
            "date": "2023-01-21",
            "count": 2
          },
          {
            "date": "2023-02-03",
            "count": 2
          },
          {
            "date": "2023-02-04",
            "count": 1
          },
          {
            "date": "2023-02-08",
            "count": 1
          },
          {
            "date": "2023-02-11",
            "count": 1
          },
          {
            "date": "2023-02-13",
            "count": 1
          },
          {
            "date": "2023-02-21",
            "count": 1
          },
          {
            "date": "2023-02-25",
            "count": 1
          },
          {
            "date": "2023-02-26",
            "count": 1
          },
          {
            "date": "2023-02-28",
            "count": 1
          },
          {
            "date": "2023-03-02",
            "count": 2
          },
          {
            "date": "2023-03-04",
            "count": 2
          },
          {
            "date": "2023-03-05",
            "count": 1
          },
          {
            "date": "2023-03-09",
            "count": 1
          },
          {
            "date": "2023-03-14",
            "count": 1
          },
          {
            "date": "2023-03-15",
            "count": 1
          },
          {
            "date": "2023-03-17",
            "count": 1
          },
          {
            "date": "2023-03-29",
            "count": 1
          },
          {
            "date": "2023-04-03",
            "count": 1
          },
          {
            "date": "2023-04-15",
            "count": 1
          },
          {
            "date": "2023-04-17",
            "count": 2
          },
          {
            "date": "2023-04-25",
            "count": 1
          },
          {
            "date": "2023-05-02",
            "count": 1
          },
          {
            "date": "2023-05-03",
            "count": 1
          },
          {
            "date": "2023-05-12",
            "count": 1
          },
          {
            "date": "2023-05-14",
            "count": 1
          },
          {
            "date": "2023-05-17",
            "count": 1
          },
          {
            "date": "2023-05-26",
            "count": 1
          },
          {
            "date": "2023-06-04",
            "count": 1
          },
          {
            "date": "2023-06-15",
            "count": 1
          },
          {
            "date": "2023-06-20",
            "count": 1
          },
          {
            "date": "2023-07-01",
            "count": 1
          },
          {
            "date": "2023-07-19",
            "count": 1
          },
          {
            "date": "2023-07-26",
            "count": 1
          },
          {
            "date": "2023-08-11",
            "count": 2
          },
          {
            "date": "2023-08-14",
            "count": 1
          },
          {
            "date": "2023-08-22",
            "count": 1
          },
          {
            "date": "2023-08-28",
            "count": 1
          },
          {
            "date": "2023-09-25",
            "count": 1
          },
          {
            "date": "2023-10-05",
            "count": 1
          },
          {
            "date": "2023-10-09",
            "count": 1
          },
          {
            "date": "2023-10-20",
            "count": 1
          },
          {
            "date": "2023-10-21",
            "count": 1
          },
          {
            "date": "2023-10-31",
            "count": 1
          },
          {
            "date": "2023-11-16",
            "count": 2
          },
          {
            "date": "2023-11-18",
            "count": 1
          },
          {
            "date": "2023-11-20",
            "count": 1
          },
          {
            "date": "2023-11-22",
            "count": 1
          },
          {
            "date": "2023-11-23",
            "count": 1
          },
          {
            "date": "2023-11-29",
            "count": 2
          },
          {
            "date": "2023-11-30",
            "count": 1
          },
          {
            "date": "2023-12-05",
            "count": 2
          },
          {
            "date": "2023-12-13",
            "count": 1
          },
          {
            "date": "2023-12-15",
            "count": 1
          },
          {
            "date": "2023-12-17",
            "count": 1
          },
          {
            "date": "2023-12-18",
            "count": 1
          },
          {
            "date": "2023-12-24",
            "count": 1
          },
          {
            "date": "2024-01-12",
            "count": 1
          },
          {
            "date": "2024-01-17",
            "count": 1
          },
          {
            "date": "2024-01-18",
            "count": 1
          },
          {
            "date": "2024-01-20",
            "count": 1
          },
          {
            "date": "2024-01-24",
            "count": 1
          },
          {
            "date": "2024-01-27",
            "count": 1
          },
          {
            "date": "2024-02-02",
            "count": 1
          },
          {
            "date": "2024-02-14",
            "count": 1
          },
          {
            "date": "2024-02-21",
            "count": 2
          },
          {
            "date": "2024-03-07",
            "count": 1
          },
          {
            "date": "2024-03-13",
            "count": 1
          },
          {
            "date": "2024-03-15",
            "count": 1
          },
          {
            "date": "2024-03-28",
            "count": 1
          },
          {
            "date": "2024-04-04",
            "count": 1
          },
          {
            "date": "2024-04-22",
            "count": 1
          },
          {
            "date": "2024-04-24",
            "count": 1
          },
          {
            "date": "2024-04-28",
            "count": 1
          },
          {
            "date": "2024-05-08",
            "count": 1
          },
          {
            "date": "2024-05-27",
            "count": 1
          },
          {
            "date": "2024-06-05",
            "count": 1
          },
          {
            "date": "2024-06-08",
            "count": 1
          },
          {
            "date": "2024-06-12",
            "count": 1
          },
          {
            "date": "2024-06-15",
            "count": 1
          },
          {
            "date": "2024-07-01",
            "count": 1
          },
          {
            "date": "2024-07-09",
            "count": 1
          },
          {
            "date": "2024-07-10",
            "count": 1
          },
          {
            "date": "2024-08-07",
            "count": 1
          },
          {
            "date": "2024-08-12",
            "count": 1
          },
          {
            "date": "2024-08-16",
            "count": 1
          },
          {
            "date": "2024-08-20",
            "count": 1
          },
          {
            "date": "2024-08-25",
            "count": 1
          },
          {
            "date": "2024-09-03",
            "count": 1
          },
          {
            "date": "2024-09-07",
            "count": 1
          },
          {
            "date": "2024-09-27",
            "count": 1
          },
          {
            "date": "2024-09-30",
            "count": 1
          },
          {
            "date": "2024-10-04",
            "count": 1
          },
          {
            "date": "2024-10-12",
            "count": 1
          },
          {
            "date": "2024-10-23",
            "count": 1
          },
          {
            "date": "2024-11-04",
            "count": 1
          },
          {
            "date": "2024-12-10",
            "count": 1
          },
          {
            "date": "2024-12-13",
            "count": 1
          },
          {
            "date": "2024-12-18",
            "count": 1
          },
          {
            "date": "2024-12-23",
            "count": 1
          },
          {
            "date": "2025-01-09",
            "count": 1
          },
          {
            "date": "2025-01-19",
            "count": 1
          },
          {
            "date": "2025-01-21",
            "count": 1
          },
          {
            "date": "2025-01-25",
            "count": 1
          },
          {
            "date": "2025-02-03",
            "count": 1
          },
          {
            "date": "2025-02-05",
            "count": 1
          },
          {
            "date": "2025-02-21",
            "count": 1
          },
          {
            "date": "2025-03-16",
            "count": 1
          },
          {
            "date": "2025-04-09",
            "count": 1
          },
          {
            "date": "2025-04-10",
            "count": 1
          },
          {
            "date": "2025-04-17",
            "count": 1
          },
          {
            "date": "2025-04-27",
            "count": 1
          },
          {
            "date": "2025-04-28",
            "count": 1
          },
          {
            "date": "2025-05-07",
            "count": 1
          },
          {
            "date": "2025-05-16",
            "count": 1
          },
          {
            "date": "2025-05-23",
            "count": 1
          },
          {
            "date": "2025-05-25",
            "count": 1
          },
          {
            "date": "2025-06-04",
            "count": 1
          },
          {
            "date": "2025-06-06",
            "count": 1
          },
          {
            "date": "2025-06-27",
            "count": 1
          },
          {
            "date": "2025-07-02",
            "count": 1
          },
          {
            "date": "2025-07-10",
            "count": 2
          },
          {
            "date": "2025-07-11",
            "count": 1
          },
          {
            "date": "2025-07-22",
            "count": 1
          },
          {
            "date": "2025-07-24",
            "count": 1
          },
          {
            "date": "2025-08-07",
            "count": 1
          },
          {
            "date": "2025-08-23",
            "count": 2
          },
          {
            "date": "2025-09-14",
            "count": 1
          },
          {
            "date": "2025-09-15",
            "count": 1
          },
          {
            "date": "2025-09-17",
            "count": 1
          },
          {
            "date": "2025-09-26",
            "count": 1
          },
          {
            "date": "2025-10-25",
            "count": 1
          },
          {
            "date": "2025-10-27",
            "count": 3
          },
          {
            "date": "2025-10-30",
            "count": 2
          },
          {
            "date": "2025-10-31",
            "count": 1
          },
          {
            "date": "2025-11-04",
            "count": 1
          },
          {
            "date": "2025-11-09",
            "count": 1
          },
          {
            "date": "2025-11-10",
            "count": 1
          },
          {
            "date": "2025-11-11",
            "count": 1
          },
          {
            "date": "2025-11-28",
            "count": 1
          },
          {
            "date": "2025-12-10",
            "count": 1
          },
          {
            "date": "2025-12-28",
            "count": 1
          },
          {
            "date": "2025-12-29",
            "count": 1
          },
          {
            "date": "2026-01-18",
            "count": 1
          },
          {
            "date": "2026-02-01",
            "count": 1
          },
          {
            "date": "2026-02-02",
            "count": 1
          },
          {
            "date": "2026-03-06",
            "count": 1
          },
          {
            "date": "2026-03-24",
            "count": 1
          },
          {
            "date": "2026-04-13",
            "count": 3
          },
          {
            "date": "2026-04-18",
            "count": 1
          },
          {
            "date": "2026-04-22",
            "count": 1
          },
          {
            "date": "2026-05-12",
            "count": 1
          },
          {
            "date": "2026-05-19",
            "count": 1
          },
          {
            "date": "2026-05-21",
            "count": 1
          },
          {
            "date": "2026-05-22",
            "count": 2
          },
          {
            "date": "2026-06-04",
            "count": 1
          },
          {
            "date": "2026-06-19",
            "count": 1
          },
          {
            "date": "2026-06-24",
            "count": 1
          },
          {
            "date": "2026-07-11",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 883,
        "total_forks": 902
      },
      "star_history": {
        "days": [
          {
            "date": "2023-08-21",
            "count": 2
          },
          {
            "date": "2023-08-22",
            "count": 1
          },
          {
            "date": "2023-08-25",
            "count": 1
          },
          {
            "date": "2023-08-26",
            "count": 3
          },
          {
            "date": "2023-08-28",
            "count": 3
          },
          {
            "date": "2023-08-29",
            "count": 1
          },
          {
            "date": "2023-08-30",
            "count": 3
          },
          {
            "date": "2023-08-31",
            "count": 3
          },
          {
            "date": "2023-09-01",
            "count": 2
          },
          {
            "date": "2023-09-02",
            "count": 3
          },
          {
            "date": "2023-09-03",
            "count": 1
          },
          {
            "date": "2023-09-04",
            "count": 1
          },
          {
            "date": "2023-09-06",
            "count": 1
          },
          {
            "date": "2023-09-09",
            "count": 1
          },
          {
            "date": "2023-09-10",
            "count": 1
          },
          {
            "date": "2023-09-11",
            "count": 1
          },
          {
            "date": "2023-09-12",
            "count": 1
          },
          {
            "date": "2023-09-13",
            "count": 1
          },
          {
            "date": "2023-09-14",
            "count": 1
          },
          {
            "date": "2023-09-18",
            "count": 1
          },
          {
            "date": "2023-09-19",
            "count": 1
          },
          {
            "date": "2023-09-20",
            "count": 1
          },
          {
            "date": "2023-09-22",
            "count": 1
          },
          {
            "date": "2023-09-24",
            "count": 1
          },
          {
            "date": "2023-09-25",
            "count": 3
          },
          {
            "date": "2023-09-26",
            "count": 1
          },
          {
            "date": "2023-09-27",
            "count": 4
          },
          {
            "date": "2023-09-28",
            "count": 3
          },
          {
            "date": "2023-09-29",
            "count": 2
          },
          {
            "date": "2023-09-30",
            "count": 1
          },
          {
            "date": "2023-10-01",
            "count": 1
          },
          {
            "date": "2023-10-02",
            "count": 2
          },
          {
            "date": "2023-10-03",
            "count": 1
          },
          {
            "date": "2023-10-04",
            "count": 2
          },
          {
            "date": "2023-10-05",
            "count": 1
          },
          {
            "date": "2023-10-06",
            "count": 2
          },
          {
            "date": "2023-10-09",
            "count": 1
          },
          {
            "date": "2023-10-10",
            "count": 1
          },
          {
            "date": "2023-10-11",
            "count": 1
          },
          {
            "date": "2023-10-12",
            "count": 2
          },
          {
            "date": "2023-10-13",
            "count": 2
          },
          {
            "date": "2023-10-14",
            "count": 1
          },
          {
            "date": "2023-10-15",
            "count": 2
          },
          {
            "date": "2023-10-16",
            "count": 1
          },
          {
            "date": "2023-10-17",
            "count": 1
          },
          {
            "date": "2023-10-18",
            "count": 1
          },
          {
            "date": "2023-10-19",
            "count": 1
          },
          {
            "date": "2023-10-21",
            "count": 1
          },
          {
            "date": "2023-10-23",
            "count": 2
          },
          {
            "date": "2023-10-24",
            "count": 2
          },
          {
            "date": "2023-10-29",
            "count": 2
          },
          {
            "date": "2023-10-30",
            "count": 1
          },
          {
            "date": "2023-10-31",
            "count": 4
          },
          {
            "date": "2023-11-01",
            "count": 1
          },
          {
            "date": "2023-11-03",
            "count": 1
          },
          {
            "date": "2023-11-04",
            "count": 1
          },
          {
            "date": "2023-11-05",
            "count": 1
          },
          {
            "date": "2023-11-06",
            "count": 2
          },
          {
            "date": "2023-11-07",
            "count": 1
          },
          {
            "date": "2023-11-09",
            "count": 2
          },
          {
            "date": "2023-11-11",
            "count": 2
          },
          {
            "date": "2023-11-12",
            "count": 1
          },
          {
            "date": "2023-11-13",
            "count": 4
          },
          {
            "date": "2023-11-14",
            "count": 2
          },
          {
            "date": "2023-11-17",
            "count": 2
          },
          {
            "date": "2023-11-18",
            "count": 1
          },
          {
            "date": "2023-11-19",
            "count": 1
          },
          {
            "date": "2023-11-21",
            "count": 2
          },
          {
            "date": "2023-11-22",
            "count": 1
          },
          {
            "date": "2023-11-23",
            "count": 3
          },
          {
            "date": "2023-11-24",
            "count": 1
          },
          {
            "date": "2023-11-25",
            "count": 1
          },
          {
            "date": "2023-11-27",
            "count": 1
          },
          {
            "date": "2023-11-29",
            "count": 1
          },
          {
            "date": "2023-11-30",
            "count": 2
          },
          {
            "date": "2023-12-01",
            "count": 2
          },
          {
            "date": "2023-12-02",
            "count": 1
          },
          {
            "date": "2023-12-03",
            "count": 1
          },
          {
            "date": "2023-12-04",
            "count": 1
          },
          {
            "date": "2023-12-05",
            "count": 2
          },
          {
            "date": "2023-12-06",
            "count": 2
          },
          {
            "date": "2023-12-07",
            "count": 2
          },
          {
            "date": "2023-12-08",
            "count": 1
          },
          {
            "date": "2023-12-09",
            "count": 1
          },
          {
            "date": "2023-12-12",
            "count": 1
          },
          {
            "date": "2023-12-13",
            "count": 2
          },
          {
            "date": "2023-12-15",
            "count": 2
          },
          {
            "date": "2023-12-18",
            "count": 1
          },
          {
            "date": "2023-12-20",
            "count": 1
          },
          {
            "date": "2023-12-21",
            "count": 1
          },
          {
            "date": "2023-12-23",
            "count": 2
          },
          {
            "date": "2023-12-25",
            "count": 1
          },
          {
            "date": "2023-12-26",
            "count": 1
          },
          {
            "date": "2023-12-27",
            "count": 1
          },
          {
            "date": "2023-12-29",
            "count": 2
          },
          {
            "date": "2023-12-30",
            "count": 3
          },
          {
            "date": "2024-01-01",
            "count": 2
          },
          {
            "date": "2024-01-04",
            "count": 2
          },
          {
            "date": "2024-01-05",
            "count": 2
          },
          {
            "date": "2024-01-08",
            "count": 2
          },
          {
            "date": "2024-01-10",
            "count": 1
          },
          {
            "date": "2024-01-11",
            "count": 1
          },
          {
            "date": "2024-01-12",
            "count": 1
          },
          {
            "date": "2024-01-14",
            "count": 1
          },
          {
            "date": "2024-01-17",
            "count": 2
          },
          {
            "date": "2024-01-18",
            "count": 1
          },
          {
            "date": "2024-01-19",
            "count": 1
          },
          {
            "date": "2024-01-21",
            "count": 1
          },
          {
            "date": "2024-01-23",
            "count": 3
          },
          {
            "date": "2024-01-24",
            "count": 1
          },
          {
            "date": "2024-01-25",
            "count": 1
          },
          {
            "date": "2024-01-27",
            "count": 2
          },
          {
            "date": "2024-01-28",
            "count": 1
          },
          {
            "date": "2024-01-30",
            "count": 4
          },
          {
            "date": "2024-02-01",
            "count": 2
          },
          {
            "date": "2024-02-02",
            "count": 2
          },
          {
            "date": "2024-02-03",
            "count": 3
          },
          {
            "date": "2024-02-05",
            "count": 2
          },
          {
            "date": "2024-02-08",
            "count": 4
          },
          {
            "date": "2024-02-09",
            "count": 2
          },
          {
            "date": "2024-02-10",
            "count": 3
          },
          {
            "date": "2024-02-13",
            "count": 1
          },
          {
            "date": "2024-02-14",
            "count": 1
          },
          {
            "date": "2024-02-15",
            "count": 1
          },
          {
            "date": "2024-02-16",
            "count": 2
          },
          {
            "date": "2024-02-18",
            "count": 4
          },
          {
            "date": "2024-02-19",
            "count": 1
          },
          {
            "date": "2024-02-20",
            "count": 1
          },
          {
            "date": "2024-02-22",
            "count": 2
          },
          {
            "date": "2024-02-25",
            "count": 1
          },
          {
            "date": "2024-02-26",
            "count": 3
          },
          {
            "date": "2024-02-28",
            "count": 1
          },
          {
            "date": "2024-03-01",
            "count": 2
          },
          {
            "date": "2024-03-02",
            "count": 1
          },
          {
            "date": "2024-03-03",
            "count": 3
          },
          {
            "date": "2024-03-04",
            "count": 1
          },
          {
            "date": "2024-03-05",
            "count": 1
          },
          {
            "date": "2024-03-06",
            "count": 1
          },
          {
            "date": "2024-03-09",
            "count": 1
          },
          {
            "date": "2024-03-10",
            "count": 2
          },
          {
            "date": "2024-03-12",
            "count": 2
          },
          {
            "date": "2024-03-13",
            "count": 2
          },
          {
            "date": "2024-03-15",
            "count": 2
          },
          {
            "date": "2024-03-17",
            "count": 3
          },
          {
            "date": "2024-03-18",
            "count": 2
          },
          {
            "date": "2024-03-21",
            "count": 1
          },
          {
            "date": "2024-03-22",
            "count": 1
          },
          {
            "date": "2024-03-23",
            "count": 1
          },
          {
            "date": "2024-03-24",
            "count": 1
          },
          {
            "date": "2024-03-25",
            "count": 2
          },
          {
            "date": "2024-04-03",
            "count": 3
          },
          {
            "date": "2024-04-05",
            "count": 1
          },
          {
            "date": "2024-04-06",
            "count": 2
          },
          {
            "date": "2024-04-10",
            "count": 2
          },
          {
            "date": "2024-04-11",
            "count": 2
          },
          {
            "date": "2024-04-12",
            "count": 1
          },
          {
            "date": "2024-04-13",
            "count": 3
          },
          {
            "date": "2024-04-14",
            "count": 2
          },
          {
            "date": "2024-04-15",
            "count": 2
          },
          {
            "date": "2024-04-16",
            "count": 2
          },
          {
            "date": "2024-04-18",
            "count": 1
          },
          {
            "date": "2024-04-19",
            "count": 1
          },
          {
            "date": "2024-04-20",
            "count": 2
          },
          {
            "date": "2024-04-21",
            "count": 4
          },
          {
            "date": "2024-04-22",
            "count": 4
          },
          {
            "date": "2024-04-23",
            "count": 1
          },
          {
            "date": "2024-04-25",
            "count": 1
          },
          {
            "date": "2024-04-26",
            "count": 2
          },
          {
            "date": "2024-04-27",
            "count": 1
          },
          {
            "date": "2024-04-28",
            "count": 1
          },
          {
            "date": "2024-04-29",
            "count": 1
          },
          {
            "date": "2024-04-30",
            "count": 1
          },
          {
            "date": "2024-05-02",
            "count": 1
          },
          {
            "date": "2024-05-03",
            "count": 2
          },
          {
            "date": "2024-05-04",
            "count": 1
          },
          {
            "date": "2024-05-06",
            "count": 1
          },
          {
            "date": "2024-05-07",
            "count": 2
          },
          {
            "date": "2024-05-08",
            "count": 2
          },
          {
            "date": "2024-05-10",
            "count": 1
          },
          {
            "date": "2024-05-11",
            "count": 1
          },
          {
            "date": "2024-05-13",
            "count": 2
          },
          {
            "date": "2024-05-14",
            "count": 3
          },
          {
            "date": "2024-05-15",
            "count": 1
          },
          {
            "date": "2024-05-17",
            "count": 1
          },
          {
            "date": "2024-05-18",
            "count": 1
          },
          {
            "date": "2024-05-20",
            "count": 2
          },
          {
            "date": "2024-05-21",
            "count": 1
          },
          {
            "date": "2024-05-22",
            "count": 2
          },
          {
            "date": "2024-05-23",
            "count": 2
          },
          {
            "date": "2024-05-24",
            "count": 1
          },
          {
            "date": "2024-05-25",
            "count": 2
          },
          {
            "date": "2024-05-26",
            "count": 3
          },
          {
            "date": "2024-05-27",
            "count": 2
          },
          {
            "date": "2024-05-28",
            "count": 1
          },
          {
            "date": "2024-05-29",
            "count": 1
          },
          {
            "date": "2024-05-31",
            "count": 1
          },
          {
            "date": "2024-06-01",
            "count": 1
          },
          {
            "date": "2024-06-02",
            "count": 1
          },
          {
            "date": "2024-06-03",
            "count": 1
          },
          {
            "date": "2024-06-05",
            "count": 1
          },
          {
            "date": "2024-06-06",
            "count": 3
          },
          {
            "date": "2024-06-11",
            "count": 1
          },
          {
            "date": "2024-06-12",
            "count": 1
          },
          {
            "date": "2024-06-13",
            "count": 1
          },
          {
            "date": "2024-06-14",
            "count": 1
          },
          {
            "date": "2024-06-15",
            "count": 1
          },
          {
            "date": "2024-06-16",
            "count": 1
          },
          {
            "date": "2024-06-17",
            "count": 3
          },
          {
            "date": "2024-06-18",
            "count": 2
          },
          {
            "date": "2024-06-20",
            "count": 1
          },
          {
            "date": "2024-06-21",
            "count": 1
          },
          {
            "date": "2024-06-22",
            "count": 1
          },
          {
            "date": "2024-06-23",
            "count": 3
          },
          {
            "date": "2024-06-24",
            "count": 1
          },
          {
            "date": "2024-06-26",
            "count": 1
          },
          {
            "date": "2024-06-27",
            "count": 2
          },
          {
            "date": "2024-06-28",
            "count": 1
          },
          {
            "date": "2024-06-29",
            "count": 1
          },
          {
            "date": "2024-06-30",
            "count": 1
          },
          {
            "date": "2024-07-01",
            "count": 1
          },
          {
            "date": "2024-07-02",
            "count": 1
          },
          {
            "date": "2024-07-03",
            "count": 1
          },
          {
            "date": "2024-07-05",
            "count": 3
          },
          {
            "date": "2024-07-07",
            "count": 1
          },
          {
            "date": "2024-07-08",
            "count": 2
          },
          {
            "date": "2024-07-09",
            "count": 2
          },
          {
            "date": "2024-07-11",
            "count": 2
          },
          {
            "date": "2024-07-15",
            "count": 2
          },
          {
            "date": "2024-07-16",
            "count": 1
          },
          {
            "date": "2024-07-17",
            "count": 2
          },
          {
            "date": "2024-07-18",
            "count": 2
          },
          {
            "date": "2024-07-19",
            "count": 2
          },
          {
            "date": "2024-07-21",
            "count": 1
          },
          {
            "date": "2024-07-24",
            "count": 1
          },
          {
            "date": "2024-07-25",
            "count": 1
          },
          {
            "date": "2024-07-26",
            "count": 2
          },
          {
            "date": "2024-07-28",
            "count": 1
          },
          {
            "date": "2024-07-29",
            "count": 1
          },
          {
            "date": "2024-07-30",
            "count": 1
          },
          {
            "date": "2024-08-01",
            "count": 2
          },
          {
            "date": "2024-08-02",
            "count": 1
          },
          {
            "date": "2024-08-04",
            "count": 3
          },
          {
            "date": "2024-08-05",
            "count": 2
          },
          {
            "date": "2024-08-06",
            "count": 2
          },
          {
            "date": "2024-08-07",
            "count": 1
          },
          {
            "date": "2024-08-09",
            "count": 2
          },
          {
            "date": "2024-08-11",
            "count": 2
          },
          {
            "date": "2024-08-12",
            "count": 4
          },
          {
            "date": "2024-08-15",
            "count": 3
          },
          {
            "date": "2024-08-16",
            "count": 4
          },
          {
            "date": "2024-08-17",
            "count": 1
          },
          {
            "date": "2024-08-19",
            "count": 1
          },
          {
            "date": "2024-08-20",
            "count": 1
          },
          {
            "date": "2024-08-21",
            "count": 3
          },
          {
            "date": "2024-08-22",
            "count": 1
          },
          {
            "date": "2024-08-23",
            "count": 1
          },
          {
            "date": "2024-08-24",
            "count": 2
          },
          {
            "date": "2024-08-25",
            "count": 2
          },
          {
            "date": "2024-08-26",
            "count": 2
          },
          {
            "date": "2024-08-29",
            "count": 4
          },
          {
            "date": "2024-08-31",
            "count": 1
          },
          {
            "date": "2024-09-02",
            "count": 1
          },
          {
            "date": "2024-09-04",
            "count": 2
          },
          {
            "date": "2024-09-05",
            "count": 1
          },
          {
            "date": "2024-09-06",
            "count": 4
          },
          {
            "date": "2024-09-08",
            "count": 1
          },
          {
            "date": "2024-09-09",
            "count": 4
          },
          {
            "date": "2024-09-10",
            "count": 2
          },
          {
            "date": "2024-09-13",
            "count": 2
          },
          {
            "date": "2024-09-16",
            "count": 1
          },
          {
            "date": "2024-09-17",
            "count": 1
          },
          {
            "date": "2024-09-18",
            "count": 1
          },
          {
            "date": "2024-09-19",
            "count": 4
          },
          {
            "date": "2024-09-22",
            "count": 2
          },
          {
            "date": "2024-09-23",
            "count": 3
          },
          {
            "date": "2024-09-24",
            "count": 2
          },
          {
            "date": "2024-09-26",
            "count": 1
          },
          {
            "date": "2024-09-27",
            "count": 1
          },
          {
            "date": "2024-09-28",
            "count": 1
          },
          {
            "date": "2024-09-29",
            "count": 4
          },
          {
            "date": "2024-09-30",
            "count": 1
          },
          {
            "date": "2024-10-01",
            "count": 2
          },
          {
            "date": "2024-10-03",
            "count": 2
          },
          {
            "date": "2024-10-04",
            "count": 1
          },
          {
            "date": "2024-10-07",
            "count": 2
          },
          {
            "date": "2024-10-08",
            "count": 1
          },
          {
            "date": "2024-10-09",
            "count": 3
          },
          {
            "date": "2024-10-10",
            "count": 1
          },
          {
            "date": "2024-10-12",
            "count": 1
          },
          {
            "date": "2024-10-14",
            "count": 1
          },
          {
            "date": "2024-10-16",
            "count": 3
          },
          {
            "date": "2024-10-17",
            "count": 2
          },
          {
            "date": "2024-10-19",
            "count": 1
          },
          {
            "date": "2024-10-21",
            "count": 4
          },
          {
            "date": "2024-10-22",
            "count": 1
          },
          {
            "date": "2024-10-23",
            "count": 1
          },
          {
            "date": "2024-10-24",
            "count": 1
          },
          {
            "date": "2024-10-25",
            "count": 1
          },
          {
            "date": "2024-10-28",
            "count": 3
          },
          {
            "date": "2024-10-29",
            "count": 1
          },
          {
            "date": "2024-10-30",
            "count": 3
          },
          {
            "date": "2024-11-01",
            "count": 1
          },
          {
            "date": "2024-11-03",
            "count": 1
          },
          {
            "date": "2024-11-04",
            "count": 1
          },
          {
            "date": "2024-11-08",
            "count": 1
          },
          {
            "date": "2024-11-10",
            "count": 1
          },
          {
            "date": "2024-11-13",
            "count": 3
          },
          {
            "date": "2024-11-14",
            "count": 1
          },
          {
            "date": "2024-11-15",
            "count": 3
          },
          {
            "date": "2024-11-17",
            "count": 1
          },
          {
            "date": "2024-11-22",
            "count": 4
          },
          {
            "date": "2024-11-23",
            "count": 1
          },
          {
            "date": "2024-11-25",
            "count": 2
          },
          {
            "date": "2024-11-26",
            "count": 4
          },
          {
            "date": "2024-11-27",
            "count": 1
          },
          {
            "date": "2024-12-03",
            "count": 2
          },
          {
            "date": "2024-12-04",
            "count": 1
          },
          {
            "date": "2024-12-09",
            "count": 2
          },
          {
            "date": "2024-12-10",
            "count": 1
          },
          {
            "date": "2024-12-11",
            "count": 1
          },
          {
            "date": "2024-12-13",
            "count": 2
          },
          {
            "date": "2024-12-15",
            "count": 2
          },
          {
            "date": "2024-12-16",
            "count": 1
          },
          {
            "date": "2024-12-18",
            "count": 1
          },
          {
            "date": "2024-12-20",
            "count": 2
          },
          {
            "date": "2024-12-21",
            "count": 1
          },
          {
            "date": "2024-12-22",
            "count": 3
          },
          {
            "date": "2024-12-23",
            "count": 2
          },
          {
            "date": "2024-12-24",
            "count": 2
          },
          {
            "date": "2024-12-26",
            "count": 3
          },
          {
            "date": "2024-12-27",
            "count": 1
          },
          {
            "date": "2024-12-28",
            "count": 1
          },
          {
            "date": "2024-12-29",
            "count": 3
          },
          {
            "date": "2024-12-30",
            "count": 2
          },
          {
            "date": "2024-12-31",
            "count": 1
          },
          {
            "date": "2025-01-01",
            "count": 1
          },
          {
            "date": "2025-01-02",
            "count": 2
          },
          {
            "date": "2025-01-04",
            "count": 1
          },
          {
            "date": "2025-01-05",
            "count": 1
          },
          {
            "date": "2025-01-06",
            "count": 3
          },
          {
            "date": "2025-01-07",
            "count": 3
          },
          {
            "date": "2025-01-10",
            "count": 1
          },
          {
            "date": "2025-01-11",
            "count": 1
          },
          {
            "date": "2025-01-13",
            "count": 2
          },
          {
            "date": "2025-01-14",
            "count": 1
          },
          {
            "date": "2025-01-16",
            "count": 1
          },
          {
            "date": "2025-01-17",
            "count": 1
          },
          {
            "date": "2025-01-18",
            "count": 1
          },
          {
            "date": "2025-01-19",
            "count": 2
          },
          {
            "date": "2025-01-20",
            "count": 1
          },
          {
            "date": "2025-01-22",
            "count": 2
          },
          {
            "date": "2025-01-23",
            "count": 1
          },
          {
            "date": "2025-01-24",
            "count": 1
          },
          {
            "date": "2025-01-25",
            "count": 1
          },
          {
            "date": "2025-01-26",
            "count": 1
          },
          {
            "date": "2025-01-27",
            "count": 1
          },
          {
            "date": "2025-01-28",
            "count": 1
          },
          {
            "date": "2025-01-29",
            "count": 2
          },
          {
            "date": "2025-01-30",
            "count": 2
          },
          {
            "date": "2025-01-31",
            "count": 4
          },
          {
            "date": "2025-02-03",
            "count": 2
          },
          {
            "date": "2025-02-05",
            "count": 1
          },
          {
            "date": "2025-02-06",
            "count": 2
          },
          {
            "date": "2025-02-07",
            "count": 1
          },
          {
            "date": "2025-02-08",
            "count": 2
          },
          {
            "date": "2025-02-09",
            "count": 1
          },
          {
            "date": "2025-02-10",
            "count": 1
          },
          {
            "date": "2025-02-11",
            "count": 1
          },
          {
            "date": "2025-02-13",
            "count": 1
          },
          {
            "date": "2025-02-14",
            "count": 1
          },
          {
            "date": "2025-02-16",
            "count": 3
          },
          {
            "date": "2025-02-17",
            "count": 1
          },
          {
            "date": "2025-02-18",
            "count": 3
          },
          {
            "date": "2025-02-19",
            "count": 1
          },
          {
            "date": "2025-02-21",
            "count": 3
          },
          {
            "date": "2025-02-22",
            "count": 3
          },
          {
            "date": "2025-02-23",
            "count": 3
          },
          {
            "date": "2025-02-24",
            "count": 3
          },
          {
            "date": "2025-02-26",
            "count": 1
          },
          {
            "date": "2025-02-27",
            "count": 2
          },
          {
            "date": "2025-02-28",
            "count": 3
          },
          {
            "date": "2025-03-01",
            "count": 1
          },
          {
            "date": "2025-03-04",
            "count": 1
          },
          {
            "date": "2025-03-05",
            "count": 1
          },
          {
            "date": "2025-03-08",
            "count": 2
          },
          {
            "date": "2025-03-10",
            "count": 1
          },
          {
            "date": "2025-03-11",
            "count": 3
          },
          {
            "date": "2025-03-14",
            "count": 1
          },
          {
            "date": "2025-03-15",
            "count": 1
          },
          {
            "date": "2025-03-18",
            "count": 3
          },
          {
            "date": "2025-03-20",
            "count": 4
          },
          {
            "date": "2025-03-21",
            "count": 2
          },
          {
            "date": "2025-03-23",
            "count": 3
          },
          {
            "date": "2025-03-25",
            "count": 2
          },
          {
            "date": "2025-03-26",
            "count": 1
          },
          {
            "date": "2025-03-27",
            "count": 2
          },
          {
            "date": "2025-03-28",
            "count": 1
          },
          {
            "date": "2025-03-31",
            "count": 2
          },
          {
            "date": "2025-04-02",
            "count": 1
          },
          {
            "date": "2025-04-04",
            "count": 1
          },
          {
            "date": "2025-04-06",
            "count": 1
          },
          {
            "date": "2025-04-07",
            "count": 1
          },
          {
            "date": "2025-04-08",
            "count": 1
          },
          {
            "date": "2025-04-09",
            "count": 2
          },
          {
            "date": "2025-04-10",
            "count": 1
          },
          {
            "date": "2025-04-12",
            "count": 2
          },
          {
            "date": "2025-04-15",
            "count": 1
          },
          {
            "date": "2025-04-17",
            "count": 1
          },
          {
            "date": "2025-04-22",
            "count": 1
          },
          {
            "date": "2025-04-23",
            "count": 3
          },
          {
            "date": "2025-04-26",
            "count": 2
          },
          {
            "date": "2025-04-29",
            "count": 1
          },
          {
            "date": "2025-04-30",
            "count": 1
          },
          {
            "date": "2025-05-04",
            "count": 2
          },
          {
            "date": "2025-05-05",
            "count": 1
          },
          {
            "date": "2025-05-06",
            "count": 2
          },
          {
            "date": "2025-05-10",
            "count": 2
          },
          {
            "date": "2025-05-12",
            "count": 2
          },
          {
            "date": "2025-05-15",
            "count": 2
          },
          {
            "date": "2025-05-16",
            "count": 3
          },
          {
            "date": "2025-05-19",
            "count": 1
          },
          {
            "date": "2025-05-20",
            "count": 1
          },
          {
            "date": "2025-05-21",
            "count": 1
          },
          {
            "date": "2025-05-22",
            "count": 2
          },
          {
            "date": "2025-05-24",
            "count": 1
          },
          {
            "date": "2025-05-25",
            "count": 1
          },
          {
            "date": "2025-05-26",
            "count": 2
          },
          {
            "date": "2025-05-27",
            "count": 1
          },
          {
            "date": "2025-05-28",
            "count": 3
          },
          {
            "date": "2025-05-30",
            "count": 2
          },
          {
            "date": "2025-06-03",
            "count": 1
          },
          {
            "date": "2025-06-04",
            "count": 5
          },
          {
            "date": "2025-06-06",
            "count": 1
          },
          {
            "date": "2025-06-07",
            "count": 1
          },
          {
            "date": "2025-06-08",
            "count": 2
          },
          {
            "date": "2025-06-09",
            "count": 3
          },
          {
            "date": "2025-06-12",
            "count": 1
          },
          {
            "date": "2025-06-15",
            "count": 1
          },
          {
            "date": "2025-06-19",
            "count": 1
          },
          {
            "date": "2025-06-20",
            "count": 1
          },
          {
            "date": "2025-06-21",
            "count": 1
          },
          {
            "date": "2025-06-22",
            "count": 2
          },
          {
            "date": "2025-06-23",
            "count": 1
          },
          {
            "date": "2025-06-27",
            "count": 3
          },
          {
            "date": "2025-06-28",
            "count": 1
          },
          {
            "date": "2025-06-29",
            "count": 2
          },
          {
            "date": "2025-06-30",
            "count": 1
          },
          {
            "date": "2025-07-01",
            "count": 1
          },
          {
            "date": "2025-07-03",
            "count": 1
          },
          {
            "date": "2025-07-06",
            "count": 2
          },
          {
            "date": "2025-07-08",
            "count": 1
          },
          {
            "date": "2025-07-10",
            "count": 2
          },
          {
            "date": "2025-07-11",
            "count": 2
          },
          {
            "date": "2025-07-12",
            "count": 2
          },
          {
            "date": "2025-07-15",
            "count": 4
          },
          {
            "date": "2025-07-18",
            "count": 3
          },
          {
            "date": "2025-07-19",
            "count": 3
          },
          {
            "date": "2025-07-20",
            "count": 1
          },
          {
            "date": "2025-07-23",
            "count": 2
          },
          {
            "date": "2025-07-25",
            "count": 1
          },
          {
            "date": "2025-07-27",
            "count": 1
          },
          {
            "date": "2025-07-28",
            "count": 1
          },
          {
            "date": "2025-07-29",
            "count": 3
          },
          {
            "date": "2025-07-30",
            "count": 4
          },
          {
            "date": "2025-07-31",
            "count": 1
          },
          {
            "date": "2025-08-03",
            "count": 2
          },
          {
            "date": "2025-08-06",
            "count": 3
          },
          {
            "date": "2025-08-08",
            "count": 1
          },
          {
            "date": "2025-08-09",
            "count": 1
          },
          {
            "date": "2025-08-11",
            "count": 2
          },
          {
            "date": "2025-08-12",
            "count": 1
          },
          {
            "date": "2025-08-14",
            "count": 1
          },
          {
            "date": "2025-08-16",
            "count": 1
          },
          {
            "date": "2025-08-18",
            "count": 2
          },
          {
            "date": "2025-08-24",
            "count": 1
          },
          {
            "date": "2025-08-26",
            "count": 2
          },
          {
            "date": "2025-08-27",
            "count": 1
          },
          {
            "date": "2025-08-28",
            "count": 1
          },
          {
            "date": "2025-08-29",
            "count": 2
          },
          {
            "date": "2025-08-30",
            "count": 1
          },
          {
            "date": "2025-08-31",
            "count": 1
          },
          {
            "date": "2025-09-01",
            "count": 1
          },
          {
            "date": "2025-09-03",
            "count": 2
          },
          {
            "date": "2025-09-04",
            "count": 1
          },
          {
            "date": "2025-09-06",
            "count": 1
          },
          {
            "date": "2025-09-08",
            "count": 2
          },
          {
            "date": "2025-09-09",
            "count": 3
          },
          {
            "date": "2025-09-10",
            "count": 1
          },
          {
            "date": "2025-09-12",
            "count": 2
          },
          {
            "date": "2025-09-13",
            "count": 3
          },
          {
            "date": "2025-09-14",
            "count": 1
          },
          {
            "date": "2025-09-18",
            "count": 2
          },
          {
            "date": "2025-09-19",
            "count": 1
          },
          {
            "date": "2025-09-20",
            "count": 1
          },
          {
            "date": "2025-09-21",
            "count": 1
          },
          {
            "date": "2025-09-24",
            "count": 2
          },
          {
            "date": "2025-09-26",
            "count": 2
          },
          {
            "date": "2025-09-27",
            "count": 1
          },
          {
            "date": "2025-09-28",
            "count": 1
          },
          {
            "date": "2025-09-29",
            "count": 1
          },
          {
            "date": "2025-09-30",
            "count": 1
          },
          {
            "date": "2025-10-01",
            "count": 3
          },
          {
            "date": "2025-10-09",
            "count": 1
          },
          {
            "date": "2025-10-13",
            "count": 1
          },
          {
            "date": "2025-10-14",
            "count": 1
          },
          {
            "date": "2025-10-16",
            "count": 1
          },
          {
            "date": "2025-10-19",
            "count": 1
          },
          {
            "date": "2025-10-20",
            "count": 1
          },
          {
            "date": "2025-10-23",
            "count": 1
          },
          {
            "date": "2025-10-27",
            "count": 1
          },
          {
            "date": "2025-10-29",
            "count": 1
          },
          {
            "date": "2025-10-31",
            "count": 4
          },
          {
            "date": "2025-11-02",
            "count": 2
          },
          {
            "date": "2025-11-03",
            "count": 1
          },
          {
            "date": "2025-11-06",
            "count": 1
          },
          {
            "date": "2025-11-08",
            "count": 1
          },
          {
            "date": "2025-11-11",
            "count": 1
          },
          {
            "date": "2025-11-12",
            "count": 1
          },
          {
            "date": "2025-11-16",
            "count": 1
          },
          {
            "date": "2025-11-24",
            "count": 1
          },
          {
            "date": "2025-11-25",
            "count": 2
          },
          {
            "date": "2025-11-27",
            "count": 1
          },
          {
            "date": "2025-11-28",
            "count": 1
          },
          {
            "date": "2025-11-30",
            "count": 2
          },
          {
            "date": "2025-12-03",
            "count": 3
          },
          {
            "date": "2025-12-04",
            "count": 2
          },
          {
            "date": "2025-12-10",
            "count": 1
          },
          {
            "date": "2025-12-12",
            "count": 1
          },
          {
            "date": "2025-12-13",
            "count": 1
          },
          {
            "date": "2025-12-18",
            "count": 1
          },
          {
            "date": "2025-12-21",
            "count": 1
          },
          {
            "date": "2025-12-23",
            "count": 1
          },
          {
            "date": "2025-12-24",
            "count": 1
          },
          {
            "date": "2025-12-25",
            "count": 1
          },
          {
            "date": "2025-12-26",
            "count": 1
          },
          {
            "date": "2026-01-02",
            "count": 1
          },
          {
            "date": "2026-01-04",
            "count": 2
          },
          {
            "date": "2026-01-06",
            "count": 1
          },
          {
            "date": "2026-01-09",
            "count": 1
          },
          {
            "date": "2026-01-10",
            "count": 1
          },
          {
            "date": "2026-01-12",
            "count": 2
          },
          {
            "date": "2026-01-16",
            "count": 1
          },
          {
            "date": "2026-01-18",
            "count": 1
          },
          {
            "date": "2026-01-19",
            "count": 5
          },
          {
            "date": "2026-01-20",
            "count": 2
          },
          {
            "date": "2026-01-21",
            "count": 3
          },
          {
            "date": "2026-01-23",
            "count": 2
          },
          {
            "date": "2026-01-24",
            "count": 1
          },
          {
            "date": "2026-01-25",
            "count": 1
          },
          {
            "date": "2026-01-27",
            "count": 1
          },
          {
            "date": "2026-01-31",
            "count": 2
          },
          {
            "date": "2026-02-03",
            "count": 1
          },
          {
            "date": "2026-02-04",
            "count": 1
          },
          {
            "date": "2026-02-12",
            "count": 2
          },
          {
            "date": "2026-02-13",
            "count": 1
          },
          {
            "date": "2026-02-14",
            "count": 1
          },
          {
            "date": "2026-02-17",
            "count": 1
          },
          {
            "date": "2026-02-19",
            "count": 3
          },
          {
            "date": "2026-02-20",
            "count": 1
          },
          {
            "date": "2026-02-21",
            "count": 2
          },
          {
            "date": "2026-02-22",
            "count": 1
          },
          {
            "date": "2026-02-24",
            "count": 1
          },
          {
            "date": "2026-02-26",
            "count": 1
          },
          {
            "date": "2026-02-27",
            "count": 2
          },
          {
            "date": "2026-02-28",
            "count": 1
          },
          {
            "date": "2026-03-01",
            "count": 2
          },
          {
            "date": "2026-03-03",
            "count": 1
          },
          {
            "date": "2026-03-06",
            "count": 1
          },
          {
            "date": "2026-03-07",
            "count": 2
          },
          {
            "date": "2026-03-08",
            "count": 1
          },
          {
            "date": "2026-03-09",
            "count": 2
          },
          {
            "date": "2026-03-10",
            "count": 1
          },
          {
            "date": "2026-03-13",
            "count": 2
          },
          {
            "date": "2026-03-14",
            "count": 1
          },
          {
            "date": "2026-03-15",
            "count": 1
          },
          {
            "date": "2026-03-16",
            "count": 2
          },
          {
            "date": "2026-03-19",
            "count": 1
          },
          {
            "date": "2026-03-20",
            "count": 1
          },
          {
            "date": "2026-03-21",
            "count": 1
          },
          {
            "date": "2026-03-22",
            "count": 1
          },
          {
            "date": "2026-03-24",
            "count": 2
          },
          {
            "date": "2026-03-26",
            "count": 1
          },
          {
            "date": "2026-03-27",
            "count": 2
          },
          {
            "date": "2026-04-04",
            "count": 1
          },
          {
            "date": "2026-04-05",
            "count": 1
          },
          {
            "date": "2026-04-09",
            "count": 1
          },
          {
            "date": "2026-04-10",
            "count": 1
          },
          {
            "date": "2026-04-11",
            "count": 1
          },
          {
            "date": "2026-04-16",
            "count": 1
          },
          {
            "date": "2026-04-18",
            "count": 1
          },
          {
            "date": "2026-04-21",
            "count": 1
          },
          {
            "date": "2026-04-22",
            "count": 1
          },
          {
            "date": "2026-04-24",
            "count": 1
          },
          {
            "date": "2026-04-25",
            "count": 1
          },
          {
            "date": "2026-04-27",
            "count": 1
          },
          {
            "date": "2026-04-28",
            "count": 1
          },
          {
            "date": "2026-04-29",
            "count": 2
          },
          {
            "date": "2026-05-02",
            "count": 1
          },
          {
            "date": "2026-05-04",
            "count": 2
          },
          {
            "date": "2026-05-11",
            "count": 1
          },
          {
            "date": "2026-05-12",
            "count": 2
          },
          {
            "date": "2026-05-17",
            "count": 1
          },
          {
            "date": "2026-05-21",
            "count": 1
          },
          {
            "date": "2026-05-22",
            "count": 1
          },
          {
            "date": "2026-05-23",
            "count": 1
          },
          {
            "date": "2026-05-25",
            "count": 1
          },
          {
            "date": "2026-05-26",
            "count": 2
          },
          {
            "date": "2026-06-04",
            "count": 1
          },
          {
            "date": "2026-06-07",
            "count": 1
          },
          {
            "date": "2026-06-08",
            "count": 2
          },
          {
            "date": "2026-06-11",
            "count": 2
          },
          {
            "date": "2026-06-12",
            "count": 2
          },
          {
            "date": "2026-06-23",
            "count": 2
          },
          {
            "date": "2026-06-28",
            "count": 2
          },
          {
            "date": "2026-07-01",
            "count": 1
          },
          {
            "date": "2026-07-02",
            "count": 1
          },
          {
            "date": "2026-07-06",
            "count": 1
          },
          {
            "date": "2026-07-08",
            "count": 1
          },
          {
            "date": "2026-07-09",
            "count": 1
          },
          {
            "date": "2026-07-10",
            "count": 1
          },
          {
            "date": "2026-07-11",
            "count": 1
          },
          {
            "date": "2026-07-13",
            "count": 1
          },
          {
            "date": "2026-07-14",
            "count": 1
          },
          {
            "date": "2026-07-17",
            "count": 2
          }
        ],
        "complete": false,
        "collected": 1000,
        "total_stars": 4226
      },
      "open_issues_and_prs": 27
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [
        "makefile"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [],
      "largest_source_bytes": 60063,
      "source_files_sampled": 71,
      "oversized_source_files": 1,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "pyproject.toml"
      ],
      "advisories": {
        "error": "No resolved dependencies to assess",
        "scope": "repository_graph",
        "source": null,
        "findings": [],
        "collected": false,
        "malicious": [],
        "truncated": false,
        "by_severity": {},
        "advisory_count": 0,
        "affected_count": 0,
        "assessed_count": 0,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "pypi"
      ],
      "dependencies": [],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [],
        "collected": true,
        "truncated": false,
        "total_count": 0,
        "direct_count": 0,
        "indirect_count": 0
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 1,
        "merged_prs": 478,
        "open_issues": 26,
        "closed_ratio": 0.973,
        "closed_issues": 933,
        "closed_unmerged_prs": 165
      },
      "bus_factor": 2,
      "bot_contributors": 0,
      "top_contributors": [
        {
          "type": "User",
          "login": "waylan",
          "commits": 355,
          "avatar_url": "https://avatars.githubusercontent.com/u/78846?v=4"
        },
        {
          "type": "User",
          "login": "mitya57",
          "commits": 78,
          "avatar_url": "https://avatars.githubusercontent.com/u/1381584?v=4"
        },
        {
          "type": "User",
          "login": "yuri",
          "commits": 73,
          "avatar_url": "https://avatars.githubusercontent.com/u/2119?v=4"
        },
        {
          "type": "User",
          "login": "facelessuser",
          "commits": 62,
          "avatar_url": "https://avatars.githubusercontent.com/u/1055125?v=4"
        },
        {
          "type": "User",
          "login": "oprypin",
          "commits": 11,
          "avatar_url": "https://avatars.githubusercontent.com/u/371383?v=4"
        },
        {
          "type": "User",
          "login": "lahwaacz",
          "commits": 10,
          "avatar_url": "https://avatars.githubusercontent.com/u/1289205?v=4"
        },
        {
          "type": "User",
          "login": "slig",
          "commits": 7,
          "avatar_url": "https://avatars.githubusercontent.com/u/37779?v=4"
        },
        {
          "type": "User",
          "login": "lama7",
          "commits": 6,
          "avatar_url": "https://avatars.githubusercontent.com/u/1053237?v=4"
        },
        {
          "type": "User",
          "login": "mdirolf",
          "commits": 6,
          "avatar_url": "https://avatars.githubusercontent.com/u/3546?v=4"
        },
        {
          "type": "User",
          "login": "ryneeverett",
          "commits": 5,
          "avatar_url": "https://avatars.githubusercontent.com/u/3280280?v=4"
        }
      ],
      "contributors_sampled": 100,
      "top_contributor_share": 0.46
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "changelog-enforcer.yml",
        "changelog-validator.yml",
        "deploy.yml",
        "manual_deploy.yml",
        "tox.yml",
        "version_check.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        "tox.ini"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": null,
            "reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 9,
            "reason": "26 out of 27 merged PRs checked by a CI test -- score normalized to 9",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 7,
            "reason": "Found 20/28 approved changesets -- score normalized to 7",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 38 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 10,
            "reason": "project is fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "4 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": 10,
            "reason": "packaging workflow detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": 0,
            "reason": "Project has not signed or included provenance with any releases.",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 10,
            "reason": "0 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "8453df010daf9547efcc20a05bb12c0e2fd2016a",
        "ran_at": "2026-07-22T01:32:45Z",
        "aggregate_score": 5.6,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-08T18:21:23Z",
      "oldest_open_prs": [
        {
          "number": 1557,
          "created_at": "2025-09-26T10:13:19Z",
          "last_comment_at": "2025-09-26T16:24:38Z",
          "last_comment_author": "mondeja"
        }
      ],
      "last_merged_pr_at": "2026-07-08T18:19:24Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 53,
          "created_at": "2011-11-16T14:04:12Z",
          "last_comment_at": "2015-10-02T01:01:43Z",
          "last_comment_author": "waylan"
        },
        {
          "number": 495,
          "created_at": "2016-09-20T20:58:12Z",
          "last_comment_at": "2026-05-04T20:22:40Z",
          "last_comment_author": "waylan"
        },
        {
          "number": 760,
          "created_at": "2018-11-27T19:10:53Z",
          "last_comment_at": "2021-04-21T09:02:14Z",
          "last_comment_author": "Nirzak"
        },
        {
          "number": 798,
          "created_at": "2019-03-06T02:34:50Z",
          "last_comment_at": "2024-02-17T04:23:23Z",
          "last_comment_author": "stsewd"
        },
        {
          "number": 815,
          "created_at": "2019-04-12T19:12:08Z",
          "last_comment_at": "2019-06-13T15:54:55Z",
          "last_comment_author": "waylan"
        },
        {
          "number": 845,
          "created_at": "2019-07-12T11:08:02Z",
          "last_comment_at": "2026-01-05T14:10:17Z",
          "last_comment_author": "waylan"
        },
        {
          "number": 921,
          "created_at": "2020-03-18T15:38:04Z",
          "last_comment_at": "2020-03-20T20:14:52Z",
          "last_comment_author": "waylan"
        },
        {
          "number": 954,
          "created_at": "2020-05-05T07:44:30Z",
          "last_comment_at": "2026-05-24T08:56:30Z",
          "last_comment_author": "jbbqqf"
        },
        {
          "number": 1067,
          "created_at": "2020-11-15T19:27:15Z",
          "last_comment_at": "2020-11-16T16:18:44Z",
          "last_comment_author": "waylan"
        },
        {
          "number": 1096,
          "created_at": "2021-01-12T17:11:02Z",
          "last_comment_at": "2021-01-12T20:52:01Z",
          "last_comment_author": "facelessuser"
        },
        {
          "number": 1103,
          "created_at": "2021-02-06T18:11:08Z",
          "last_comment_at": "2022-09-17T23:10:59Z",
          "last_comment_author": "raylutz"
        },
        {
          "number": 1123,
          "created_at": "2021-03-26T14:21:14Z",
          "last_comment_at": "2023-03-16T13:57:47Z",
          "last_comment_author": "waylan"
        },
        {
          "number": 1178,
          "created_at": "2021-08-24T10:50:16Z",
          "last_comment_at": "2024-03-06T02:37:01Z",
          "last_comment_author": "j-davis-2022"
        },
        {
          "number": 1238,
          "created_at": "2022-03-26T02:35:04Z",
          "last_comment_at": "2022-03-28T15:47:06Z",
          "last_comment_author": "timmc"
        },
        {
          "number": 1244,
          "created_at": "2022-04-09T18:15:46Z",
          "last_comment_at": "2022-04-10T19:28:32Z",
          "last_comment_author": "waylan"
        },
        {
          "number": 1246,
          "created_at": "2022-04-28T01:57:34Z",
          "last_comment_at": "2025-07-09T14:32:18Z",
          "last_comment_author": "waylan"
        },
        {
          "number": 1383,
          "created_at": "2023-10-01T15:51:57Z",
          "last_comment_at": "2025-10-01T02:57:42Z",
          "last_comment_author": "wigging"
        },
        {
          "number": 1389,
          "created_at": "2023-10-09T15:44:50Z",
          "last_comment_at": "2023-11-08T20:22:55Z",
          "last_comment_author": "waylan"
        },
        {
          "number": 1412,
          "created_at": "2023-11-10T16:04:11Z",
          "last_comment_at": "2023-11-19T13:08:14Z",
          "last_comment_author": "pawamoy"
        },
        {
          "number": 1432,
          "created_at": "2024-01-18T19:29:40Z",
          "last_comment_at": "2024-02-02T18:57:04Z",
          "last_comment_author": "waylan"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/Python-Markdown/markdown",
    "host": "github.com",
    "name": "markdown",
    "owner": "Python-Markdown"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "good",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 76,
      "inputs": {
        "security": 56,
        "vitality": 66,
        "community": 93,
        "governance": 74,
        "engineering": 89
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "moderate",
        "name": "Vitality",
        "value": 66,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "moderate",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 61,
            "inputs": {
              "commits_last_year": 23,
              "human_commit_share": 1,
              "days_since_last_push": 13,
              "active_weeks_last_year": 14
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 13 days ago",
                "points": 28.8,
                "status": "partial",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 13
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "14/52 weeks with commits",
                "points": 9.7,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 14
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "23 commits in the last year",
                "points": 12.4,
                "status": "partial",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 23
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "4 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "good",
            "name": "Release discipline",
            "note": null,
            "notes": [],
            "value": 74,
            "inputs": {
              "releases_count": 11,
              "latest_release_tag": "3.10.2",
              "releases_from_tags": false,
              "days_since_latest_release": 162,
              "mean_days_between_releases": 84.6
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "11 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 11
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 162 days ago",
                "points": 27,
                "status": "partial",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 162
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~84.6 days",
                "points": 19.8,
                "status": "partial",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 84.6
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 13,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 13 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 13
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "excellent",
        "name": "Community & Adoption",
        "value": 93,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "excellent",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 94,
            "inputs": {
              "forks": 902,
              "stars": 4226,
              "watchers": 75,
              "growth_state": "organic",
              "growth_factor_pct": 100
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "4,226 stars",
                "points": 58.8,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 4226
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "902 forks",
                "points": 24.6,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 902
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "75 watchers",
                "points": 10.4,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 75
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "excellent",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 92,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": true,
              "has_pull_request_template": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (BSD-3-Clause)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "BSD-3-Clause"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 13.5,
                "status": "met",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 6.3,
                "status": "met",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "good",
        "name": "Sustainability & Governance",
        "value": 74,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "moderate",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 61,
            "inputs": {
              "bus_factor": 2,
              "contributors_sampled": 100,
              "top_contributor_share": 0.46
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "2 contributor(s) cover half of all commits",
                "points": 25.2,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 2
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 46% of commits",
                "points": 12.2,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 46
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "100 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 38 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "merged_prs": 478,
              "open_issues": 26,
              "closed_issues": 933,
              "issue_closed_ratio": 0.973,
              "closed_unmerged_prs": 165
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "97% of issues closed",
                "points": 45.5,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 97
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "478/643 decided PRs merged",
                "points": 28.4,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 478,
                      "decided": 643
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 20/28 approved changesets -- score normalized to 7",
                "points": 10.5,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 60,
            "inputs": {
              "followers": 68,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "Python-Markdown",
              "public_repos": 4,
              "account_age_days": 4159
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "68 followers of Python-Markdown",
                "points": 13.2,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 68,
                      "login": "Python-Markdown"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "4 public repos, account ~11 yr old",
                "points": 17.1,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 4
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 11
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "Markdown"
              ],
              "ecosystems": "pypi",
              "any_deprecated": false,
              "min_days_since_publish": 162
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on pypi",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "pypi"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 162 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 162
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "60 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 60
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "excellent",
        "name": "Engineering Quality",
        "value": 89,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 82,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "6 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": "tox.ini",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "tox.ini"
                    }
                  }
                ],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "26 out of 27 merged PRs checked by a CI test -- score normalized to 9",
                "points": 18,
                "status": "partial",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "topics": [
                "python-markdown",
                "markdown",
                "markdown-parser",
                "markdown-to-html",
                "python",
                "python3"
              ],
              "has_wiki": true,
              "homepage": "https://python-markdown.github.io/",
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://python-markdown.github.io/",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": "6 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 56,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Branch-Protection. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "branch_protection"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 56,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 17,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 1,
              "scorecard_aggregate": 5.6
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "26 out of 27 merged PRs checked by a CI test -- score normalized to 9",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 20/28 approved changesets -- score normalized to 7",
                "points": 5.2,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 38 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "no update tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is fuzzed",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "4 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "0 existing vulnerabilities detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 8
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "at_risk",
        "name": "AI Readiness",
        "value": 42,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "critical",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 24,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.45,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "45 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 24,
                "status": "partial",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 45,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 51,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [],
              "has_dockerfile": false,
              "typed_language": false,
              "bootstrap_files": [
                "makefile"
              ],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [],
              "agent_commit_share": 0,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "makefile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "makefile"
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": "tox.ini",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "tox.ini"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "moderate",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 54,
            "inputs": {
              "primary_language": "Python",
              "largest_source_bytes": 60063,
              "source_files_sampled": 71,
              "oversized_source_files": 1
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Python without a type-check config",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_typecheck_config_language",
                    "params": {
                      "language": "Python"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "1/71 source files over 60KB",
                "points": 54.2,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 71,
                      "oversized": 1
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [],
  "report_type": "repository",
  "generated_at": "2026-07-22T01:33:11.474254Z",
  "schema_version": "0.26.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/p/Python-Markdown/markdown.svg",
  "full_name": "Python-Markdown/markdown",
  "license_state": "standard",
  "license_spdx": "BSD-3-Clause"
}

Scores are signals, not warranties. They reflect publicly visible practices on GitHub — not a code audit, and not a security guarantee.

Missing data is excluded and weights renormalized, never scored as zero. Methodology is versioned and open: metrics v1.13.0, schema v0.26.0 — full methodology · metrics wiki.

How one result sits in the wider record: aggregate statisticsPyPI.