{
  "ml": {
    "v": "7",
    "eng": "2.12.0-beta.0",
    "lvl": -1,
    "conf": 0,
    "mods": [
      {
        "cls": 0,
        "raw": 0.020815155,
        "rte": "az",
        "prob": 0.020815155
      },
      {
        "cls": 0,
        "raw": 0.04284214,
        "rte": "az/whl",
        "prob": 0.04284214
      }
    ],
    "prob": 0.020815155,
    "files": [
      {
        "id": 0,
        "lvl": -1,
        "conf": 0,
        "prob": 0.020815154537558556,
        "type": "whl"
      },
      {
        "id": 1,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013361374840314966,
        "type": "text"
      },
      {
        "id": 2,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000010838110938493628,
        "type": "python"
      },
      {
        "id": 3,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00001181165407615481,
        "type": "python"
      },
      {
        "id": 15,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013659398064191919,
        "type": "pkg_info"
      },
      {
        "id": 16,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009735425010148901,
        "type": "text"
      },
      {
        "id": 18,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013520319953386206,
        "type": "registry"
      }
    ],
    "version": "v18.18",
    "analyzed_at": "2026-09-18T10:40:28Z"
  },
  "path": "ovos_skill_spelling-0.9.0a1-py3-none-any.whl",
  "raw": {
    "files": [
      {
        "id": 0,
        "ctx": [
          {
            "b": "p!H([6Awak2MPU$gf}$CEDk.=001t$001[S003}Xz/YobyIvQ3uVQf$y\u00260*6xdU!\u0026iw90]f!N0JB960FzF0/uy?Wx\u003czGxxgfha@8mnu=I?caVl8]\u0026M\u0026ulGnRoq5i^Om%uB*q-@:sAqpfKQK*:8Wb#vYXsWukhF6bCCr.%?!cLdKect6@z\u003e7PT\u003c=X9)7r",
            "ln": 0
          }
        ],
        "mol": "H(Cm)Md₂(Pa₂)",
        "sha": "b55ada8d2ec8a931b695f3b42d2c52f8107cc6682deab4c0a661f2057d4f9dcd",
        "path": "ovos_skill_spelling-0.9.0a1-py3-none-any.whl",
        "risk": 4,
        "size": 25109,
        "type": "whl",
        "facts": {
          "metrics": {
            "whl": {
              "native_extension_count": 0
            },
            "file": {
              "size": 25109,
              "entropy": 7.41
            },
            "binary": {
              "peak_region_bytes": 12288,
              "peak_region_entropy": 7.81
            },
            "archive": {
              "file_count": 57,
              "member_count": 57,
              "script_count": 2,
              "zip_bomb_ratio": 5.43,
              "compressed_size": 15343,
              "directory_count": 0,
              "executable_count": 0,
              "extra_field_size": 0,
              "noise_file_count": 0,
              "compression.ratio": 0.43,
              "hidden_file_count": 0,
              "uncompressed_size": 35721,
              "crc_collision_count": 0,
              "entry_comment_count": 0,
              "max_filename_length": 56,
              "rtlo_filename_count": 0,
              "format.regular_count": 57,
              "nested_archive_count": 0,
              "path_traversal_count": 0,
              "symlink_escape_count": 0,
              "security.setgid_count": 0,
              "security.setuid_count": 0,
              "security.sticky_count": 0,
              "double_extension_count": 0,
              "duplicate_member_count": 0,
              "security.symlink_count": 0,
              "unicode_filename_count": 0,
              "homoglyph_filename_count": 0,
              "security.encrypted_count": 0,
              "timing.mtime_unique_count": 1,
              "timing.mtime_unique_ratio": 0.02,
              "misplaced_executable_count": 0,
              "timing.mtime_dominant_count": 57,
              "timing.mtime_spread_seconds": 0,
              "timing.sentinel_mtime_count": 0,
              "security.world_writable_count": 0,
              "timing.mtime_dominant_fraction": 1,
              "compression.method_counts.deflate": 57
            },
            "consistency": {
              "cloned_summary": 0,
              "name_typosquat": 0,
              "self_dependency": 0,
              "metadata_identity_mismatch": 0
            }
          }
        },
        "ident": {
          "name": {
            "value": "ovos_skill_spelling",
            "source": "whl.distribution",
            "verified": false
          },
          "trust": "unsigned",
          "emails": [
            "jarbasai@mailfence.com"
          ],
          "authors": [
            {
              "name": "JarbasAi",
              "role": "author",
              "email": "jarbasai@mailfence.com",
              "source": "whl.author"
            }
          ],
          "version": {
            "value": "0.9.0a1",
            "source": "whl.version",
            "verified": false
          }
        },
        "traits": [
          {
            "id": "metadata/package/ecosystem::pkginfo-version-field",
            "conf": 0.9,
            "crit": 2,
            "desc": "Declares Python package version",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-name-field",
            "conf": 0.9,
            "crit": 2,
            "desc": "Declares Python package name",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/url/reference::python-comment-url-reference",
            "conf": 0.9,
            "crit": 3,
            "desc": "Python comment contains a URL",
            "from": [
              {
                "file": 2
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/package/ecosystem::pypi-basic-metadata",
            "conf": 0.95,
            "crit": 2,
            "desc": "PyPI package declares name, version, summary",
            "from": [
              {
                "off": 0,
                "file": 15,
                "line": 1
              }
            ],
            "uses": [
              0,
              2,
              7,
              18
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-core-metadata",
            "conf": 1.0,
            "crit": 2,
            "desc": "Declares Python Core Metadata version",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-4",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"have\"",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/file/size::small-no-imports",
            "conf": 0.75,
            "crit": 3,
            "desc": "Small Python source file with no imports",
            "from": [
              {
                "file": 3
              }
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-markdown-description",
            "conf": 0.9,
            "crit": 3,
            "desc": "Declares Markdown package description",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/package/ecosystem::pypi-runtime-metadata",
            "conf": 0.94,
            "crit": 2,
            "desc": "PyPI package declares Python and dependencies",
            "from": [
              {
                "off": 0,
                "file": 15,
                "line": 1
              }
            ],
            "uses": [
              7,
              14,
              16
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-requires-dist",
            "conf": 0.9,
            "crit": 3,
            "desc": "Declares Python runtime dependencies",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/package/ecosystem::pypi-license-metadata",
            "conf": 0.94,
            "crit": 2,
            "desc": "PyPI package declares license information",
            "from": [
              {
                "off": 0,
                "file": 15,
                "line": 1
              }
            ],
            "uses": [
              7,
              17
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-requires-python",
            "conf": 0.9,
            "crit": 3,
            "desc": "Declares supported Python versions",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-license-file",
            "conf": 0.9,
            "crit": 3,
            "desc": "Declares Python package license file",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-summary-field",
            "conf": 0.9,
            "crit": 2,
            "desc": "Declares Python package summary",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/package/scripts/entrypoint::entry-points-file",
            "conf": 0.95,
            "crit": 3,
            "desc": "Python package contains an entry_points.txt file",
            "from": [
              {
                "file": 16
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "from": [
              {
                "file": 1
              }
            ]
          }
        ]
      },
      {
        "ctx": [
          {
            "b": "4gjj2arR^HarR^HarR^HarR^HarR^HarR^HarR^HarR^)Aa9l\u0026wGTVXv}xL0wEO$?arR^HarR^HarR^HarR^HarR^HarR^HarTY@A=U@kzxHX!fF1tsvqZi@A^n=.fFCr)3lQDlarR^HarR^HarR^HarR^HarR^Hazt\u003esA5]T9CxXl-vq]T+xK@/mA+v4wx\u003e7Z(B7GzC4giKKarR!amn=\u0026Uave:\u003cavw}1l}HuHpFK?hmO=]8rz#sqaw$T8qCPXXlSuSMpaNINpdci)nMeO^nKuARnL-7\u003c3jNs+arSx\u003eavG^Mx(mTbx(v)ge!5c%3lQDlarR^JoLF0FzGxwkaAIj8y?$khwNPE0BzbkdBy/GfB0a[ewftx2zE^E6x(v)gazbLjaA.:pefF$AAb](cBZ]Jcz/d9n3lQDlarR!nzE:(2x(!xpx\u003c#jbx(v(ivriM4wObT]wN(])C{33%v@#B6zGu{PaARpqz/]YaaupM.w/#hex(+zcz!0{bwO#Px4giKKarR^HarR\u003e4x\u003e7Z(B8M7yaAIj8y?$khwNPE0Bzbkdv@DsiA+Pf1BrCHCzE)\u0026hz/M$izGGPmC{3KrBzbPkx)Ku3ayYQ93lQDlarR!GxK@q@z/x#xx\u003eIa3aA8EwwPw]nxKM09x(+zfA:-\u003ccx(mMaBzbkdoLF0FzGxww4giKKarR^HarR\u003e4wOkB/avQf\u0026x([RAaAIj8y?$khwNPE0BzbkdB-7]izxJ\u003efaARpdayO=4x(mMawO#Q7BA]0qzE:\u003c",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "zGG]qy\u00260V[ayYQEaA8oyvrb{4B-7-3AV!\u003egzeBie4gjj2arR^Hv@DmbA=k+pCwhejaARp9BrCdjBzk\u0026xe*9S4AV/EqwGU@mA=t@rwPF#jw/#hex(+zcwObT]x([6czy=k7arR^HarR\u003erz/fVqz!{QuzdNc[B08(BdiJ.CwGU@gCv+!Cay]hbwN/*8",
            "ln": 653,
            "col": 42,
            "line": 17
          },
          {
            "b": "wPq\u003c7zGGYuazC.6z/P/nA::63wfu8gBzbxaaARpdaxJG4yC3564gjj2atLL(m@\u00263QBrCHlavy6^D2^RixMLv\u003cx\u003e7Z(B7D%Dq/#L:wN/*8Bz\u0026pzxK@rdwPzTeayPd#ay/tcwncd1z/fRsz!oB=arR^HarU=tx(+y\u003cx\u003e7Z(B7D)BwNP7Zavy6+BAh88B-.LxazttbwNY{cxl0",
            "ln": 3527,
            "col": 11,
            "line": 65
          },
          {
            "b": "B97\u0026jwN(]$zxK4mx(+zrwN/*@z/d0DAa9\u003c1zGE1qx\u003e7Z(B7DFozY\u0026[9yH]4txKM6}az\u003eK$wH[n$arR^HarU/FwH[%xw[CQ{aARJAB7Gf7efG1By?$TBx(d*cA=-\u0026PvqYP#z//V7A^8kswGV8nvqZc#wPw]nxK@q/z/PRA4gjj2arR^HCw7MdwGV5p",
            "ln": 4223,
            "col": 18,
            "line": 77
          },
          {
            "b": "zdNp2aARpdazbLdy\u0026sJizF784z/f91BzkVhB2\u003c:q4gjj2arR^Hc$aLEs-nB9zfo]wazkziwGUA0C{43ExK#ibA+e-{Aa@)3BAnNyw/#hewGU5)A+=!oAT-u#arR^HarR^HavG^Yx)9{bx)a5gs8Sa{B0a)lv@DsiaA7\u003cmBzbxfawuGVwO#N2j0m%Hwdn\u003eP3lQDlarR^PvKSB5z/)gtB-RTEv{%I3wGUA0C{3%xwnbT\u0026wN(]}x(4v4",
            "ln": 5261,
            "col": 7,
            "line": 93
          },
          {
            "b": "z/fRG4giKKarR^+e*ablvpS}^vrcd8e*abbx(+y\u003cx\u003e7Z(B7DF8z!i#jzF%Rtxl4A#BrCKlA=2JiB7]MgaARJAB-RapBzbkdBAg/2wEO$?arR^Haz$R8wPGyBBAg/2wO\u003e\u003c@yJz3HB7Gxnx\u003e7Y%zddE2B1wCLAV/swz!a02BrCEfzdN=hz!pblxK@qWx\u003e7Z(B8M7I4gjj2arR^HwQ4Y@Ac9jhB0bHmADL#owN(]}z/M$vwNPT#zEE0\u003cwGUA0wftx8B98tqvrcSoB-Rapx(k57wPIv4x\u003c$^]xcqqfwEO$?arR^HaA8pmxk8laz!pblxK@q/z/PRovqYP#A+figz!a02x(mMaBz7",
            "ln": 7864,
            "col": 46,
            "line": 137
          }
        ],
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 11558,
              "entropy": 4.48
            },
            "binary": {
              "peak_region_bytes": 11558,
              "peak_region_entropy": 4.7
            }
          }
        },
        "id": 1,
        "path": "ovos_skill_spelling-0.9.0a1-py3-none-any.whl!!ovos_skill_spelling-0.9.0a1.dist-info/licenses/LICENSE",
        "pid": 0,
        "risk": 1,
        "sha": "49bbe9114e49214df2ccc324cb3ac8d1d1aa1c3a0947f94c286765e86647b32e",
        "size": 11558,
        "traits": [
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                280,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                173,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "spans": [
              [
                507,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-4",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"have\"",
            "spans": [
              [
                4271,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                188,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                701,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                390,
                0
              ]
            ]
          },
          {
            "id": "metadata/permission/prose::permission-grant-verb-english",
            "conf": 0.9,
            "crit": 2,
            "desc": "Grant or authorization verb text",
            "spans": [
              [
                5314,
                0
              ]
            ]
          },
          {
            "id": "metadata/permission/prose::permission-mandatory-language-english",
            "conf": 0.9,
            "crit": 2,
            "desc": "Forced or mandatory instruction wording",
            "spans": [
              [
                8038,
                0
              ]
            ]
          },
          {
            "id": "metadata/permission/prose::permission-permission-term-english",
            "conf": 0.9,
            "crit": 2,
            "desc": "Permission or access term",
            "spans": [
              [
                7918,
                0
              ]
            ]
          }
        ],
        "type": "text"
      },
      {
        "ctx": [
          {
            "b": "boPu(AcVFrxj#xfgb7BxawEb\u003eA=kMiaveNwnP52\u003c3l])5awuGVwO#N2wfu2jwmY^7Bzbkdl2ZmxxK@qWx\u003e7Z(B7D)Br+lq)x(v(iga\u003em6d0fclar\u003cG[v}xL0wG\u0026M+3l{Wsz/)gtvr\u0026#kz/^aAB7DFoxLzJgw[=6)az2!cwPh-lx(k56z/6Dfx\u003c\u003e)?wGVhhBz8!sxK@qWx\u003e7Z(B7D%hboQccBS+KfC{43mByw)3ayMy5z/x$Az!pblxK@qWx\u003e7Z(B7DF5Bp6l1boO9Kazt\u003esA5]T9CxXl-vq]T+xK@/mA+v4wx\u003e7Z(B7GzCoI4Pupe:Okga\u003el/bmkUrrC(R:B8@EAwPq\u003cbA+e=7vTf88AbYScv{@?.wGU!$Coy*AayO]6wO2x{Bz\u0026pozxKdzx([6bxdLfDz!s9nvrb]^boQJhB98CpvS=^7wfu2jwmY^7",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "l[xD(x([31AV!}rAb]JhB0bywazCXiy?WD\u003ee^-*Cq!oI.BzbkdoLF0FzGxwiw]zYjBzbkdB8UY2x\u003ez6?az+F7xlvS}wGUS7C4CYix(mMaAaK6bx(!ufz/fRsvqYP.boQ/pze192BzkVhB0bQywmY^7BzbkdoLF0FzGxww3tar%z6i+uz/Yofz/PSmxM4\u0026xwmYm?A::6dA=Svqze:AlBrCpnBy/uiuUA\u003e=wnC*$3tar%z6i+uz/Yofz/PSmxM4\u0026xB8bGay\u0026Z.kze:AlBrBvWpG7hcx(4O)3jpoVvrlGjq/Dq:y?W^1q!{8-y:-7WpG7hcx(4PmiTM#LarTPKlTJUUqEr9^r8=p:auZ\u00263e\u0026+3%boQD7B7F(8z/cXtxK@qXvrccaf^7KEA=g",
            "ln": 445,
            "col": 46,
            "line": 11
          },
          {
            "b": "pG5\u0026ppe\u003cUSr4P)G.LYsBf/*B=zxJw9vq])#A+P2aAb](mz/]}uc)AwEa$K\u0026XBzb98a$K\u0026?e?ON}x(:R7arR^HarR^HarR^KayYd}v@2){B97#7aA8yAaA7\u003cmBzbkdDV%yGwpkOwy\u0026szrd0GPIwg?tcvpK7?x(!wBefF+uvrMv5xcp]g3lQDlarR^HarR^Har@1KzGorfz!%Pdwft]3BzblaaARp9zxJz5zE^E0xcqqfwGU{",
            "ln": 990,
            "col": 17,
            "line": 26
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "intent_handler"
            ],
            [
              "",
              "message.data.get"
            ],
            [
              "",
              "self.get_response"
            ],
            [
              "",
              "self.enclosure.deactivate_mouth_events"
            ],
            [
              "",
              "self.enclosure.mouth_text"
            ],
            [
              "",
              "self.speak"
            ],
            [
              "",
              "self.enclosure.activate_mouth_events"
            ],
            [
              "",
              "self.enclosure.mouth_reset"
            ],
            [
              "",
              "OVOSSkill"
            ],
            [
              "",
              "intent_handler"
            ],
            [
              "",
              "ovos_workshop.decorators"
            ],
            [
              "",
              "ovos_workshop.skills"
            ]
          ],
          "mbr": [
            "message.data",
            "message.data.get",
            "self.enclosure",
            "self.enclosure.activate_mouth_events",
            "self.enclosure.deactivate_mouth_events",
            "self.enclosure.mouth_reset",
            "self.enclosure.mouth_text",
            "self.get_response",
            "self.speak"
          ],
          "tgt": [
            "intent_handler",
            "message.data.get",
            "self.enclosure.activate_mouth_events",
            "self.enclosure.deactivate_mouth_events",
            "self.enclosure.mouth_reset",
            "self.enclosure.mouth_text",
            "self.get_response",
            "self.speak"
          ],
          "funcs": [
            [
              "handle_spell",
              876
            ]
          ],
          "metrics": {
            "ast": {
              "op.add": 1,
              "max_depth": 13,
              "call_count": 10,
              "node_count": 230,
              "member_count": 9,
              "op_density.add": 0,
              "max_concat_chain": 2,
              "member_depth_max": 3
            },
            "file": {
              "size": 1922,
              "entropy": 4.74
            },
            "text": {
              "lines": 46,
              "top_char": 101,
              "max_ws_run": 10,
              "digit_ratio": 0.01,
              "space_count": 425,
              "char_entropy": 4.74,
              "unique_chars": 75,
              "top_char_null": 0,
              "string_density": 0.11,
              "top_char_ratio": 0.08,
              "avg_line_length": 40.78,
              "max_line_length": 78,
              "non_ascii_ratio": 0,
              "empty_line_ratio": 0.13,
              "last_line_length": 36,
              "whitespace_ratio": 0.25,
              "identifier_density": 0.96,
              "line_length_stddev": 25.68,
              "normalized_string_count": 0.74,
              "repeated_char_sequences": 8,
              "suspicious_comment_ratio": 0.13,
              "normalized_unique_identifiers": 4.53
            },
            "binds": {
              "count": 5
            },
            "binary": {
              "peak_region_bytes": 1024,
              "peak_region_entropy": 5.01
            },
            "source": {
              "class_count": 1,
              "function_count": 1
            },
            "imports": {
              "count": 4,
              "third_party_count": 4,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 37,
              "count": 5,
              "avg_length": 7.4,
              "max_length": 12,
              "avg_entropy": 1.77,
              "entropy_stddev": 1.14
            },
            "comments": {
              "chars": 1082,
              "count": 24,
              "empty": 3,
              "lines": 21,
              "high_entropy": 3,
              "to_code_ratio": 0.84,
              "url_in_comments": 1
            },
            "functions": {
              "count": 2,
              "density": 2.17,
              "avg_params": 2,
              "code_ratio": 0.52,
              "max_params": 2,
              "avg_name_length": 12,
              "avg_length_lines": 24,
              "max_length_lines": 24,
              "min_length_lines": 24,
              "avg_param_name_length": 5.5
            },
            "identifiers": {
              "count": 44,
              "unique": 25,
              "avg_length": 9.88,
              "max_length": 23,
              "min_length": 3,
              "avg_entropy": 2.58,
              "reuse_ratio": 0.57,
              "length_stddev": 5.38,
              "high_entropy_count": 1,
              "high_entropy_ratio": 0.04,
              "all_lowercase_ratio": 0.84,
              "all_uppercase_ratio": 0.08
            }
          }
        },
        "id": 2,
        "mol": "H(Cm)",
        "path": "ovos_skill_spelling-0.9.0a1-py3-none-any.whl!!skill_ovos_spelling/__init__.py",
        "pid": 0,
        "risk": 1,
        "sha": "de9fd509eea1a4abd4b9ef905a9088499cd87e1b67abc95ae4c856098c646033",
        "size": 1922,
        "traits": [
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                52,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                541,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "spans": [
              [
                1038,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                493,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                150,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                119,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/url/reference::python-comment-url-reference",
            "conf": 0.9,
            "crit": 3,
            "desc": "Python comment contains a URL",
            "spans": [
              [
                212,
                12
              ]
            ]
          }
        ],
        "type": "python"
      },
      {
        "depth": 1,
        "facts": {
          "metrics": {
            "ast": {
              "op.add": 1,
              "max_depth": 8,
              "call_count": 0,
              "node_count": 64,
              "op_density.add": 0.02,
              "max_concat_chain": 2
            },
            "file": {
              "size": 229,
              "entropy": 4.83
            },
            "text": {
              "lines": 8,
              "top_char": 95,
              "max_ws_run": 1,
              "digit_ratio": 0.03,
              "space_count": 18,
              "char_entropy": 4.83,
              "unique_chars": 44,
              "top_char_null": 0,
              "string_density": 0.38,
              "top_char_ratio": 0.07,
              "avg_line_length": 27.63,
              "max_line_length": 113,
              "empty_line_ratio": 0.13,
              "last_line_length": 113,
              "whitespace_ratio": 0.11,
              "identifier_density": 1.25,
              "line_length_stddev": 32.83,
              "normalized_string_count": 1.06,
              "normalized_unique_identifiers": 1.67
            },
            "binds": {
              "count": 5
            },
            "binary": {
              "peak_region_bytes": 229,
              "peak_region_entropy": 4.83
            },
            "strings": {
              "bytes": 63,
              "count": 3,
              "avg_length": 21,
              "max_length": 47,
              "avg_entropy": 3.91,
              "empty_count": 1,
              "entropy_stddev": 0.04
            },
            "comments": {
              "chars": 38,
              "count": 2,
              "lines": 2,
              "to_code_ratio": 0.33
            },
            "identifiers": {
              "count": 10,
              "unique": 5,
              "avg_length": 12.6,
              "max_length": 13,
              "min_length": 11,
              "avg_entropy": 3.26,
              "reuse_ratio": 0.5,
              "length_stddev": 0.8,
              "high_entropy_count": 2,
              "high_entropy_ratio": 0.4,
              "all_lowercase_ratio": 0.2,
              "all_uppercase_ratio": 0.8,
              "double_underscore_count": 1,
              "underscore_prefix_count": 1
            }
          }
        },
        "id": 3,
        "mol": "Md",
        "path": "ovos_skill_spelling-0.9.0a1-py3-none-any.whl!!skill_ovos_spelling/version.py",
        "pid": 0,
        "risk": 1,
        "sha": "2d164f550eba8011f3917dc7416398beadafbc501531ae29f9f15c538f417a99",
        "size": 229,
        "traits": [
          {
            "id": "metadata/file/size::small-no-imports",
            "conf": 0.75,
            "crit": 3,
            "desc": "Small Python source file with no imports"
          }
        ],
        "type": "python"
      },
      {
        "ctx": [
          {
            "b": "o\u003ewAPwmoN*eMMC6B7]MgiV{gggZV#^zdL:Jz*35uePUYwy?$XAAaJ\u003c4x(mL\u003cr+lq)x(v(IattAde?*Y*3r87:zddEgiV}j0pG5xSAaJ\u003c4x(mMaB8bGayZJEJBzbPkeOe^cx(2*Mn)#:Hvrj.GauTyEA:\u0026D#vqd#zvqfK\u0026wO#0?e[n*pj{\u003c$$v}xL0wJy@1Aa9l\u0026wI2U\u0026fByS%z!-\u0026[Bs*G\u003coGBp!z/668vp%d5azt\u003esz#",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "z!s9nvrb{4oLF0FzGxv@lU{gLB7]l2wPx*Op\u0026ZF!A:-*4x(mMaoKR*KBZX]]auzLap\u003cEd@z/cWUiV{i=qE%\u0026\u003cx(W^aeL{.mxM4=Hau?}Ae\u0026:nbwPIv4x(Ffdz/dc]z/fVdzGEEfD2NsQaARgtBt4GtA+/i7CwW:Yx\u003e7Z(B7D{)x(4uwawtu]mnu=I3q$CPB.L(cB1G^]B96C=z*35uePtJGxk8lnzddr\u003cxjV9CgCgvlfF2yJga\u003eplfByY?ADL#owPGB\u003ex(!wSaA8BwB1IJRx(4\u0026Mf!LdjfF2yJfFk4igDk.twPq\u003cbA+fqzl${Z:iV@u:z/WHOz/PSmxM4\u0026Lf!+jle?!?ujVC5Fe?^SeA=lbnwmY*lmr\u0026]{vlbJMwPI@2qE%\u0026\u003cx(W^aeKTq]BugK-D30RsBupQRCYW$mau.\u003egb6myqBrR5\u0026wPq\u003cbA+fqzl${Z:iV@u:z/WHOz/PSmxM4\u0026Lf!+jle?!?ujVC5Fe?/vfwD",
            "ln": 311,
            "col": 48,
            "line": 9
          }
        ],
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 1830,
              "entropy": 5.27
            },
            "binary": {
              "peak_region_bytes": 1830,
              "peak_region_entropy": 5.2
            }
          }
        },
        "id": 15,
        "mol": "Md(Pa)",
        "path": "ovos_skill_spelling-0.9.0a1-py3-none-any.whl!!ovos_skill_spelling-0.9.0a1.dist-info/METADATA",
        "pid": 0,
        "risk": 1,
        "sha": "4bb83624fa4499af106ae53721e33bdc13d6283111485e8497d50ad968a4a531",
        "size": 1830,
        "traits": [
          {
            "id": "metadata/package/ecosystem::pkginfo-core-metadata",
            "conf": 1.0,
            "crit": 2,
            "desc": "Declares Python Core Metadata version",
            "spans": [
              [
                0,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-license-file",
            "conf": 0.9,
            "crit": 3,
            "desc": "Declares Python package license file",
            "spans": [
              [
                438,
                21
              ]
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-markdown-description",
            "conf": 0.9,
            "crit": 3,
            "desc": "Declares Markdown package description",
            "spans": [
              [
                398,
                39
              ]
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-name-field",
            "conf": 0.9,
            "crit": 2,
            "desc": "Declares Python package name",
            "spans": [
              [
                22,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-requires-dist",
            "conf": 0.9,
            "crit": 3,
            "desc": "Declares Python runtime dependencies",
            "spans": [
              [
                460,
                48
              ]
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-requires-python",
            "conf": 0.9,
            "crit": 3,
            "desc": "Declares supported Python versions",
            "spans": [
              [
                375,
                22
              ]
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-summary-field",
            "conf": 0.9,
            "crit": 2,
            "desc": "Declares Python package summary",
            "spans": [
              [
                65,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/ecosystem::pkginfo-version-field",
            "conf": 0.9,
            "crit": 2,
            "desc": "Declares Python package version",
            "spans": [
              [
                48,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/ecosystem::pypi-basic-metadata",
            "conf": 0.95,
            "crit": 2,
            "desc": "PyPI package declares name, version, summary",
            "uses": [
              0,
              3,
              6,
              7
            ],
            "spans": [
              [
                0,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/ecosystem::pypi-license-metadata",
            "conf": 0.94,
            "crit": 2,
            "desc": "PyPI package declares license information",
            "uses": [
              0,
              1
            ],
            "spans": [
              [
                0,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/ecosystem::pypi-runtime-metadata",
            "conf": 0.94,
            "crit": 2,
            "desc": "PyPI package declares Python and dependencies",
            "uses": [
              0,
              4,
              5
            ],
            "spans": [
              [
                460,
                0
              ]
            ]
          }
        ],
        "type": "pkg_info"
      },
      {
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 80,
              "entropy": 4
            },
            "binary": {
              "peak_region_bytes": 80,
              "peak_region_entropy": 4
            }
          }
        },
        "id": 16,
        "mol": "Md(Pa)",
        "path": "ovos_skill_spelling-0.9.0a1-py3-none-any.whl!!ovos_skill_spelling-0.9.0a1.dist-info/entry_points.txt",
        "pid": 0,
        "risk": 1,
        "sha": "f5dbca4b0f803706a991ea4b04747ebcf093908c50d40953b3ed8a368ff2c46f",
        "size": 80,
        "traits": [
          {
            "id": "metadata/package/scripts/entrypoint::entry-points-file",
            "conf": 0.95,
            "crit": 3,
            "desc": "Python package contains an entry_points.txt file"
          }
        ],
        "type": "text"
      },
      {
        "id": 18,
        "mol": "Md(Re)",
        "sha": "e14ee8241d19e682e512fcb8c1544645e68a2bc051d5f354d3976035a99e9515",
        "path": "ovos-skill-spelling@0.9.0a1.registry.json",
        "risk": 1,
        "size": 843,
        "type": "registry",
        "depth": 1
      }
    ],
    "omitted_files": 1,
    "rev": "e86a6",
    "v": "8"
  }
}