<commit_before>{
  "browsers": {
    "opera_android": {
      "name": "Opera Android",
      "releases": {
        "10.1": {
          "release_date": "2010-11-09",
          "release_notes": "https://dev.opera.com/blog/opera-mobile-10-1-beta-for-android-is-here/",
          "status": "retired",
          "engine": "Presto",
          "engine_version": "2.5"
        },
        "11": {
          "release_date": "2011-03-22",
          "release_notes": "https://dev.opera.com/blog/opera-mobile-11-for-maemo-meego-windows/",
          "status": "retired",
          "engine": "Presto",
          "engine_version": "2.7"
        },
        "11.1": {
          "release_date": "2011-06-30",
          "release_notes": "https://dev.opera.com/blog/opera-mobile-11-1-new-features-and-additions/",
          "status": "retired",
          "engine": "Presto",
          "engine_version": "2.8"
        },
        "11.5": {
          "release_date": "2011-10-12",
          "status": "retired",
          "engine": "Presto",
          "engine_version": "2.9"
        },
        "12": {
          "release_date": "2012-02-25",
          "release_notes": "https://dev.opera.com/blog/opera-mobile-12-and-introducing-opera-mini-next/",
          "status": "retired",
          "engine": "Presto",
          "engine_version": "2.10"
        },
        "12.1": {
          "release_date": "2012-10-09",
          "release_notes": "https://dev.opera.com/blog/opera-mobile-12-1-with-spdy-web-sockets-flexbox-and-more/",
          "status": "retired",
          "engine": "Presto",
          "engine_version": "2.11"
        },
        "14": {
          "release_date": "2013-05-21",
          "release_notes": "https://dev.opera.com/blog/opera-14-for-android-is-out/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "26"
        },
        "15": {
          "release_date": "2013-07-08",
          "release_notes": "https://blogs.opera.com/news/2013/07/opera-15-for-android/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "28"
        },
        "16": {
          "release_date": "2013-09-18",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "29"
        },
        "18": {
          "release_date": "2013-11-20",
          "release_notes": "https://blogs.opera.com/news/2013/11/opera-18-android-tablet/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "31"
        },
        "19": {
          "release_date": "2014-01-28",
          "release_notes": "https://dev.opera.com/blog/opera-19/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "32"
        },
        "20": {
          "release_date": "2014-03-06",
          "release_notes": "https://forums.opera.com/topic/1081/opera-20-final-release",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "33"
        },
        "21": {
          "release_date": "2014-04-22",
          "release_notes": "https://forums.opera.com/topic/2211/opera-21-final-release",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "34"
        },
        "22": {
          "release_date": "2014-06-17",
          "release_notes": "https://forums.opera.com/topic/3446/opera-22",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "35"
        },
        "24": {
          "release_date": "2014-09-10",
          "release_notes": "https://forums.opera.com/topic/5022/opera-24-final-release",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "37"
        },
        "25": {
          "release_date": "2014-10-16",
          "release_notes": "https://forums.opera.com/topic/5715/opera-25-final-release",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "38"
        },
        "26": {
          "release_date": "2014-12-02",
          "release_notes": "https://forums.opera.com/topic/6800/opera-26-final-release",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "39"
        },
        "27": {
          "release_date": "2015-01-29",
          "release_notes": "https://forums.opera.com/topic/7871/opera-27-final-release",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "40"
        },
        "28": {
          "release_date": "2015-03-10",
          "release_notes": "https://forums.opera.com/topic/8556/synced-bookmarks-and-improved-memory-usage-in-opera-28-for-android",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "41"
        },
        "29": {
          "release_date": "2015-04-28",
          "release_notes": "https://dev.opera.com/blog/opera-29/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "42"
        },
        "30": {
          "release_date": "2015-06-10",
          "release_notes": "https://blogs.opera.com/mobile/2015/06/opera-30-android-sync-speeddials/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "43"
        },
        "32": {
          "release_date": "2015-09-23",
          "release_notes": "https://blogs.opera.com/mobile/2015/09/opera-32-add-to-home-screen/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "45"
        },
        "33": {
          "release_date": "2015-11-03",
          "release_notes": "https://forums.opera.com/topic/12480/opera-33-now-featuring-video-optimization-and-brand-new-icons",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "46"
        },
        "34": {
          "release_date": "2015-12-16",
          "release_notes": "https://forums.opera.com/topic/13085/opera-34-for-android-released",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "47"
        },
        "35": {
          "release_date": "2016-02-04",
          "release_notes": "https://blogs.opera.com/mobile/2016/02/save-space-on-your-android-phone-with-web-apps/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "48"
        },
        "36": {
          "release_date": "2016-03-31",
          "release_notes": "https://forums.opera.com/topic/14514/opera-36-released",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "49"
        },
        "37": {
          "release_date": "2016-06-16",
          "release_notes": "https://forums.opera.com/topic/15753/opera-37-released",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "50"
        },
        "41": {
          "release_date": "2016-10-25",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "54"
        },
        "42": {
          "release_date": "2017-01-21",
          "release_notes": "https://forums.opera.com/topic/18950/opera-for-android-42",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "55"
        },
        "43": {
          "release_date": "2017-09-27",
          "release_notes": "https://forums.opera.com/topic/22708/opera-for-android-43",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "59"
        },
        "44": {
          "release_date": "2017-12-11",
          "release_notes": "https://forums.opera.com/topic/23860/opera-for-android-44",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "60"
        },
        "45": {
          "release_date": "2018-02-15",
          "release_notes": "https://forums.opera.com/topic/25124/opera-for-android-45",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "61"
        },
        "46": {
          "release_date": "2018-05-14",
          "release_notes": "https://forums.opera.com/topic/26662/opera-for-android-46",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "63"
        },
        "47": {
          "release_date": "2018-07-23",
          "release_notes": "https://forums.opera.com/topic/27794/opera-for-android-47",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "66"
        },
        "48": {
          "release_date": "2018-11-08",
          "release_notes": "https://forums.opera.com/topic/29525/opera-for-android-48",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "69"
        },
        "49": {
          "release_date": "2018-12-07",
          "release_notes": "https://forums.opera.com/topic/29983/opera-for-android-49",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "70"
        },
        "50": {
          "release_date": "2019-02-18",
          "release_notes": "https://forums.opera.com/topic/31003/opera-for-android-50",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "71"
        },
        "51": {
          "release_date": "2019-03-21",
          "release_notes": "https://forums.opera.com/topic/31467/opera-for-android-51-built-in-vpn",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "72"
        },
        "52": {
          "release_date": "2019-05-17",
          "release_notes": "https://forums.opera.com/topic/32516/opera-for-android-52",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "73"
        },
        "53": {
          "release_date": "2019-07-11",
          "release_notes": "https://forums.opera.com/topic/33558/opera-for-android-53",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "74"
        },
        "54": {
          "release_date": "2019-10-18",
          "release_notes": "https://forums.opera.com/topic/35853/opera-for-android-54",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "76"
        },
        "55": {
          "release_date": "2019-12-03",
          "release_notes": "https://forums.opera.com/topic/36858/opera-for-android-55",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "77"
        },
        "56": {
          "release_date": "2020-02-06",
          "release_notes": "https://blogs.opera.com/mobile/2020/02/easy-reading-in-opera-for-android/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "78"
        },
        "57": {
          "release_date": "2020-03-30",
          "release_notes": "https://blogs.opera.com/mobile/2020/03/introducing-new-features-in-opera-for-android-57/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "80"
        },
        "58": {
          "release_date": "2020-05-13",
          "release_notes": "https://blogs.opera.com/mobile/2020/05/opera-for-android-58-handle-notifications-easily-and-group-speed-dials-for-a-cleaner-appearance/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "81"
        },
        "59": {
          "release_date": "2020-06-30",
          "release_notes": "https://blogs.opera.com/mobile/2020/06/opera-for-android-59/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "83"
        },
        "60": {
          "release_date": "2020-09-23",
          "release_notes": "https://blogs.opera.com/mobile/2020/09/keep-in-sync-with-opera-for-android-60/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "85"
        },
        "61": {
          "release_date": "2020-12-07",
          "release_notes": "https://blogs.opera.com/mobile/2020/12/new-opera-for-android-61/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "86"
        },
        "62": {
          "release_date": "2021-02-16",
          "release_notes": "https://blogs.opera.com/mobile/2021/02/the-opera-browser-for-android-hit-a-new-record-of-80-million-maus/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "87"
        },
        "63": {
          "release_date": "2021-04-16",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "89"
        },
        "64": {
          "release_date": "2021-05-25",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "91"
        },
        "65": {
          "release_date": "2021-09-30",
          "status": "current",
          "engine": "Blink",
          "engine_version": "92"
        }
      }<commit_msg>Include release notes for Opera Android 65 (#13447)<commit_after>{
  "browsers": {
    "opera_android": {
      "name": "Opera Android",
      "releases": {
        "10.1": {
          "release_date": "2010-11-09",
          "release_notes": "https://dev.opera.com/blog/opera-mobile-10-1-beta-for-android-is-here/",
          "status": "retired",
          "engine": "Presto",
          "engine_version": "2.5"
        },
        "11": {
          "release_date": "2011-03-22",
          "release_notes": "https://dev.opera.com/blog/opera-mobile-11-for-maemo-meego-windows/",
          "status": "retired",
          "engine": "Presto",
          "engine_version": "2.7"
        },
        "11.1": {
          "release_date": "2011-06-30",
          "release_notes": "https://dev.opera.com/blog/opera-mobile-11-1-new-features-and-additions/",
          "status": "retired",
          "engine": "Presto",
          "engine_version": "2.8"
        },
        "11.5": {
          "release_date": "2011-10-12",
          "status": "retired",
          "engine": "Presto",
          "engine_version": "2.9"
        },
        "12": {
          "release_date": "2012-02-25",
          "release_notes": "https://dev.opera.com/blog/opera-mobile-12-and-introducing-opera-mini-next/",
          "status": "retired",
          "engine": "Presto",
          "engine_version": "2.10"
        },
        "12.1": {
          "release_date": "2012-10-09",
          "release_notes": "https://dev.opera.com/blog/opera-mobile-12-1-with-spdy-web-sockets-flexbox-and-more/",
          "status": "retired",
          "engine": "Presto",
          "engine_version": "2.11"
        },
        "14": {
          "release_date": "2013-05-21",
          "release_notes": "https://dev.opera.com/blog/opera-14-for-android-is-out/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "26"
        },
        "15": {
          "release_date": "2013-07-08",
          "release_notes": "https://blogs.opera.com/news/2013/07/opera-15-for-android/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "28"
        },
        "16": {
          "release_date": "2013-09-18",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "29"
        },
        "18": {
          "release_date": "2013-11-20",
          "release_notes": "https://blogs.opera.com/news/2013/11/opera-18-android-tablet/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "31"
        },
        "19": {
          "release_date": "2014-01-28",
          "release_notes": "https://dev.opera.com/blog/opera-19/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "32"
        },
        "20": {
          "release_date": "2014-03-06",
          "release_notes": "https://forums.opera.com/topic/1081/opera-20-final-release",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "33"
        },
        "21": {
          "release_date": "2014-04-22",
          "release_notes": "https://forums.opera.com/topic/2211/opera-21-final-release",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "34"
        },
        "22": {
          "release_date": "2014-06-17",
          "release_notes": "https://forums.opera.com/topic/3446/opera-22",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "35"
        },
        "24": {
          "release_date": "2014-09-10",
          "release_notes": "https://forums.opera.com/topic/5022/opera-24-final-release",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "37"
        },
        "25": {
          "release_date": "2014-10-16",
          "release_notes": "https://forums.opera.com/topic/5715/opera-25-final-release",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "38"
        },
        "26": {
          "release_date": "2014-12-02",
          "release_notes": "https://forums.opera.com/topic/6800/opera-26-final-release",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "39"
        },
        "27": {
          "release_date": "2015-01-29",
          "release_notes": "https://forums.opera.com/topic/7871/opera-27-final-release",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "40"
        },
        "28": {
          "release_date": "2015-03-10",
          "release_notes": "https://forums.opera.com/topic/8556/synced-bookmarks-and-improved-memory-usage-in-opera-28-for-android",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "41"
        },
        "29": {
          "release_date": "2015-04-28",
          "release_notes": "https://dev.opera.com/blog/opera-29/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "42"
        },
        "30": {
          "release_date": "2015-06-10",
          "release_notes": "https://blogs.opera.com/mobile/2015/06/opera-30-android-sync-speeddials/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "43"
        },
        "32": {
          "release_date": "2015-09-23",
          "release_notes": "https://blogs.opera.com/mobile/2015/09/opera-32-add-to-home-screen/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "45"
        },
        "33": {
          "release_date": "2015-11-03",
          "release_notes": "https://forums.opera.com/topic/12480/opera-33-now-featuring-video-optimization-and-brand-new-icons",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "46"
        },
        "34": {
          "release_date": "2015-12-16",
          "release_notes": "https://forums.opera.com/topic/13085/opera-34-for-android-released",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "47"
        },
        "35": {
          "release_date": "2016-02-04",
          "release_notes": "https://blogs.opera.com/mobile/2016/02/save-space-on-your-android-phone-with-web-apps/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "48"
        },
        "36": {
          "release_date": "2016-03-31",
          "release_notes": "https://forums.opera.com/topic/14514/opera-36-released",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "49"
        },
        "37": {
          "release_date": "2016-06-16",
          "release_notes": "https://forums.opera.com/topic/15753/opera-37-released",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "50"
        },
        "41": {
          "release_date": "2016-10-25",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "54"
        },
        "42": {
          "release_date": "2017-01-21",
          "release_notes": "https://forums.opera.com/topic/18950/opera-for-android-42",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "55"
        },
        "43": {
          "release_date": "2017-09-27",
          "release_notes": "https://forums.opera.com/topic/22708/opera-for-android-43",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "59"
        },
        "44": {
          "release_date": "2017-12-11",
          "release_notes": "https://forums.opera.com/topic/23860/opera-for-android-44",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "60"
        },
        "45": {
          "release_date": "2018-02-15",
          "release_notes": "https://forums.opera.com/topic/25124/opera-for-android-45",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "61"
        },
        "46": {
          "release_date": "2018-05-14",
          "release_notes": "https://forums.opera.com/topic/26662/opera-for-android-46",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "63"
        },
        "47": {
          "release_date": "2018-07-23",
          "release_notes": "https://forums.opera.com/topic/27794/opera-for-android-47",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "66"
        },
        "48": {
          "release_date": "2018-11-08",
          "release_notes": "https://forums.opera.com/topic/29525/opera-for-android-48",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "69"
        },
        "49": {
          "release_date": "2018-12-07",
          "release_notes": "https://forums.opera.com/topic/29983/opera-for-android-49",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "70"
        },
        "50": {
          "release_date": "2019-02-18",
          "release_notes": "https://forums.opera.com/topic/31003/opera-for-android-50",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "71"
        },
        "51": {
          "release_date": "2019-03-21",
          "release_notes": "https://forums.opera.com/topic/31467/opera-for-android-51-built-in-vpn",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "72"
        },
        "52": {
          "release_date": "2019-05-17",
          "release_notes": "https://forums.opera.com/topic/32516/opera-for-android-52",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "73"
        },
        "53": {
          "release_date": "2019-07-11",
          "release_notes": "https://forums.opera.com/topic/33558/opera-for-android-53",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "74"
        },
        "54": {
          "release_date": "2019-10-18",
          "release_notes": "https://forums.opera.com/topic/35853/opera-for-android-54",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "76"
        },
        "55": {
          "release_date": "2019-12-03",
          "release_notes": "https://forums.opera.com/topic/36858/opera-for-android-55",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "77"
        },
        "56": {
          "release_date": "2020-02-06",
          "release_notes": "https://blogs.opera.com/mobile/2020/02/easy-reading-in-opera-for-android/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "78"
        },
        "57": {
          "release_date": "2020-03-30",
          "release_notes": "https://blogs.opera.com/mobile/2020/03/introducing-new-features-in-opera-for-android-57/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "80"
        },
        "58": {
          "release_date": "2020-05-13",
          "release_notes": "https://blogs.opera.com/mobile/2020/05/opera-for-android-58-handle-notifications-easily-and-group-speed-dials-for-a-cleaner-appearance/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "81"
        },
        "59": {
          "release_date": "2020-06-30",
          "release_notes": "https://blogs.opera.com/mobile/2020/06/opera-for-android-59/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "83"
        },
        "60": {
          "release_date": "2020-09-23",
          "release_notes": "https://blogs.opera.com/mobile/2020/09/keep-in-sync-with-opera-for-android-60/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "85"
        },
        "61": {
          "release_date": "2020-12-07",
          "release_notes": "https://blogs.opera.com/mobile/2020/12/new-opera-for-android-61/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "86"
        },
        "62": {
          "release_date": "2021-02-16",
          "release_notes": "https://blogs.opera.com/mobile/2021/02/the-opera-browser-for-android-hit-a-new-record-of-80-million-maus/",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "87"
        },
        "63": {
          "release_date": "2021-04-16",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "89"
        },
        "64": {
          "release_date": "2021-05-25",
          "status": "retired",
          "engine": "Blink",
          "engine_version": "91"
        },
        "65": {
          "release_date": "2021-10-20",
          "release_notes": "https://blogs.opera.com/mobile/2021/10/opera-for-android-version-65/",
          "status": "current",
          "engine": "Blink",
          "engine_version": "92"
        }
      }
{'fraction_non_alphanumeric': 0.19525442009167598, 'fraction_numerical': 0.07106814067254728, 'mean_word_length': 1.7285338938518129, 'pattern_counts': {'":': 621, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 93, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4981722', 'n_tokens_mistral': 9854, 'n_tokens_neox': 8754, 'n_words': 1143}