{
  "ml": {
    "v": "7",
    "eng": "2.12.0-beta.1",
    "lvl": -1,
    "conf": 0,
    "mods": [
      {
        "cls": 0,
        "raw": 0.47961363,
        "rte": "az",
        "prob": 0.47961363
      },
      {
        "cls": 0,
        "raw": 0.021035513,
        "rte": "az/npm",
        "prob": 0.021035513
      }
    ],
    "prob": 0.47961363,
    "files": [
      {
        "id": 0,
        "lvl": -1,
        "conf": 0,
        "prob": 0.47961363196372986,
        "type": "npm"
      },
      {
        "id": 1,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00001783172228897456,
        "type": "javascript"
      },
      {
        "id": 3,
        "lvl": -1,
        "conf": 0,
        "prob": 0.0000421603508584667,
        "type": "package.json"
      },
      {
        "id": 4,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000010271866813127417,
        "type": "markdown"
      },
      {
        "id": 5,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009864568710327148,
        "type": "markdown"
      },
      {
        "id": 6,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000021904706954956055,
        "type": "javascript"
      },
      {
        "id": 7,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000007698933586652856,
        "type": "javascript"
      },
      {
        "id": 8,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000017096599549404345,
        "type": "registry"
      }
    ],
    "version": "v18.18",
    "analyzed_at": "2026-10-06T04:54:50Z"
  },
  "path": "free-email-domains-1.12.20.tgz",
  "raw": {
    "files": [
      {
        "id": 0,
        "ctx": [
          {
            "b": "abZy8000000@}S2:*glz^JiUNEU]8oXgjjvT8wjnbSegJb^vQRtXCxWpWZ?Da#t{nETf(Dbv6hI{tfDvbm72rb^Lq/Vv+TDCJBf9e(\u003ejbu\u0026Or0/6A0GZYj4n}1eTW@RG%l./rxy9foB:ZYgZ#y{%l3ZYg.v/mgUkJTrOq/6AttJA\u0026Ws%don\u003cZSxpurKPG!{RzR0%nz#%jlUNrG8SK:tsEXcCMm7g@XarFkr]hF}X.PGZJYZm(WMm$O^@*t:ne2r{Y1[8%7zocFb!S/%nGj/rs^8I^!A!m%5)=hq#",
            "ln": 0
          }
        ],
        "mol": "O₂(S₅Xe)H₅(Cm₆Db₄F₃Po₂U)Md₂(InPa₁₀)",
        "sha": "91e3884b4bf31272784fd0d4c7f677b216c35e7577e6406d25c97201872780cc",
        "path": "free-email-domains-1.12.20.tgz",
        "refs": [
          {
            "to": "pkg:github/kikobeats/free-email-domains",
            "off": 0,
            "kind": "repository"
          }
        ],
        "risk": 58,
        "size": 83224,
        "type": "npm",
        "facts": {
          "metrics": {
            "file": {
              "size": 83224,
              "entropy": 8
            },
            "parse": {
              "error_count": 1
            },
            "binary": {
              "peak_region_bytes": 82944,
              "peak_region_entropy": 7.82
            },
            "consistency": {
              "name_repo_mismatch": 0
            }
          }
        },
        "ident": {
          "name": {
            "value": "free-email-domains",
            "source": "npm.name",
            "verified": false
          },
          "urls": [
            {
              "url": "git+https://github.com/kikobeats/free-email-domains.git",
              "kind": "repository",
              "source": "npm.repository.url"
            },
            {
              "url": "https://github.com/Kikobeats/free-email-domains",
              "kind": "homepage",
              "source": "npm.homepage"
            }
          ],
          "trust": "unsigned",
          "emails": [
            "josefrancisco.verdu@gmail.com"
          ],
          "authors": [
            {
              "url": "https://kikobeats.com",
              "name": "Kiko Beats",
              "role": "author",
              "email": "josefrancisco.verdu@gmail.com",
              "source": "npm.author"
            }
          ],
          "version": {
            "value": "1.12.20",
            "source": "npm.version",
            "verified": false
          },
          "identifier": {
            "value": "free-email-domains",
            "source": "npm.name",
            "verified": false
          }
        },
        "traits": [
          {
            "id": "micro-behaviors/communications/http/client/response-body::fetch-response-body-read",
            "conf": 0.9,
            "crit": 3,
            "desc": "JavaScript fetch reads response body",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/delete/file/command::npm-script-delete",
            "atk": "T1070.004",
            "mbc": "C0047",
            "conf": 0.85,
            "crit": 3,
            "desc": "Package script deletes files"
          },
          {
            "id": "micro-behaviors/data/control-flow/module-exec::module-leading-promise-chain-call",
            "conf": 0.84,
            "crit": 3,
            "desc": "Leading promise-chain call at module scope",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/files/included::postinstall-js-basename",
            "conf": 0.9,
            "crit": 3,
            "desc": "Filename is postinstall.js/cjs/mjs",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/files/package-json::files-array-present",
            "conf": 0.92,
            "crit": 3,
            "desc": "Package.json declares a files allowlist"
          },
          {
            "id": "metadata/package/scripts/build::has-release-scripts-1",
            "conf": 1.0,
            "crit": 3,
            "desc": "Package has release script"
          },
          {
            "id": "objectives/supply-chain/install-hook/scripts/declaration::has-postinstall",
            "atk": "T1195.002",
            "conf": 0.85,
            "crit": 3,
            "desc": "Has postinstall script hook"
          },
          {
            "id": "metadata/build/ecosystem::npm-logical-or-fallback",
            "conf": 0.95,
            "crit": 1,
            "desc": "npm script uses logical-OR fallback"
          },
          {
            "id": "objectives/supply-chain/install-hook/package/manifest::postinstall-runs-node-script",
            "conf": 0.92,
            "crit": 3,
            "desc": "Postinstall targets local Node.js file"
          },
          {
            "id": "metadata/package/entrypoint::main-root-javascript-entry",
            "conf": 0.9,
            "crit": 2,
            "desc": "Root JavaScript main entrypoint"
          },
          {
            "id": "metadata/import/npm/relative/1/domains/json::relative/1/domains/json",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ./domains.json",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/package/dependencies/manifest/presence::npm-empty-dependencies-object",
            "conf": 0.95,
            "crit": 2,
            "desc": "npm manifest has empty dependencies object",
            "from": [
              {
                "file": 3
              }
            ]
          },
          {
            "id": "metadata/package/testing/presence/harness::test-or-declaration-file",
            "conf": 0.85,
            "crit": 1,
            "desc": "File is a test or type-declaration source file",
            "from": [
              {
                "file": 7
              }
            ],
            "uses": [
              27
            ]
          },
          {
            "id": "metadata/package/dependencies/manifest/presence::npm-no-runtime-dependencies",
            "conf": 0.9,
            "crit": 2,
            "desc": "npm manifest declares no runtime dependencies",
            "from": [
              {
                "off": 1930,
                "file": 3,
                "line": 85
              }
            ],
            "uses": [
              11
            ]
          },
          {
            "id": "micro-behaviors/communications/email/address::google-consumer-email-domain-suffix",
            "conf": 0.55,
            "crit": 3,
            "desc": "Gmail consumer email domain suffix",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "objectives/supply-chain/install-hook/scripts/local-script::postinstall-js-file",
            "conf": 0.84,
            "crit": 3,
            "desc": "JavaScript file named npm postinstall hook",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "objectives/supply-chain/install-hook/remote-content::hook-script-fetches-and-writes-remote-content",
            "conf": 0.94,
            "crit": 3,
            "desc": "Lifecycle hook-like script saves HTTP response",
            "from": [
              {
                "off": 4505,
                "file": 6,
                "line": 258
              }
            ],
            "uses": [
              24,
              53
            ]
          },
          {
            "id": "micro-behaviors/fs/write/file/full::node-write-file-promise-destructured",
            "conf": 0.9,
            "crit": 3,
            "desc": "Node writes a file via destructured import",
            "from": [
              {
                "file": 6
              }
            ],
            "uses": [
              21,
              52
            ]
          },
          {
            "id": "metadata/package/repository::has-repository-url",
            "conf": 0.85,
            "crit": 2,
            "desc": "package.json declares a repository URL"
          },
          {
            "id": "micro-behaviors/communications/http/client/response-body::js-response-text-read",
            "conf": 0.82,
            "crit": 3,
            "desc": "JavaScript reads HTTP response text",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/scripts/develop::has-git-hooks",
            "conf": 0.9,
            "crit": 3,
            "desc": "Package uses git hooks tooling",
            "from": [
              {
                "file": 3
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/write/file/full::node-fs-promises-import",
            "conf": 0.95,
            "crit": 2,
            "desc": "Imports the Node fs/promises API",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/github::raw-githubusercontent-web-file",
            "atk": "T1071.001",
            "mbc": "C0002",
            "conf": 0.7,
            "crit": 3,
            "desc": "raw.githubusercontent.com web file URL",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/npm/fs/promises::fs/promises",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports node:fs/promises",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/download/write::script-fetches-and-writes-remote-content",
            "atk": "T1105",
            "conf": 0.94,
            "crit": 3,
            "desc": "JavaScript saves fetched remote content",
            "from": [
              {
                "file": 6
              }
            ],
            "uses": [
              0,
              21,
              52
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/endpoint::domain-collection-path-token",
            "conf": 0.92,
            "crit": 3,
            "desc": "domain collection URL path segment",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/file/extension/identity::declaration-file-extension",
            "conf": 1.0,
            "crit": 2,
            "desc": "File uses a source declaration extension",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/package/repository::repo-url-git-host",
            "conf": 0.9,
            "crit": 3,
            "desc": "Repository identifies major Git host"
          },
          {
            "id": "metadata/package/files/included::npm-publish-root-manifest",
            "conf": 0.95,
            "crit": 2,
            "desc": "Manifest sits at npm publish root",
            "from": [
              {
                "file": 3
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/package/files/included::npm-package-scripts-member",
            "conf": 0.99,
            "crit": 3,
            "desc": "JavaScript under npm package scripts dir",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/path/extension::model-extension-reference--pytorch-or-safetensors",
            "conf": 0.88,
            "crit": 3,
            "desc": "AI PyTorch or SafeTensors extension",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/process/create/load/local::cjs-local-require-call",
            "atk": "T1059.007",
            "conf": 0.9,
            "crit": 3,
            "desc": "CommonJS local-module require call",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "micro-behaviors/data/source/syntax/array::js-array-sort-call",
            "conf": 0.72,
            "crit": 3,
            "desc": "Sorts a JavaScript array",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/data/serialize/json::json-stringify-identifier",
            "conf": 0.85,
            "crit": 3,
            "desc": "Serializes an identifier as JSON",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "micro-behaviors/data/string/split::js-split-call",
            "conf": 0.8,
            "crit": 3,
            "desc": "Calls JavaScript split()",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/forge::public-code-forge-url",
            "conf": 0.9,
            "crit": 3,
            "desc": "References a public code-forge URL",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/package/homepage::homepage-git-host",
            "conf": 0.9,
            "crit": 3,
            "desc": "Homepage points to major Git host"
          },
          {
            "id": "objectives/supply-chain/install-hook/scripts/import-chain::scripts-postinstall-executor-node",
            "atk": "T1195.002",
            "conf": 0.75,
            "crit": 3,
            "desc": "postinstall invokes node"
          },
          {
            "id": "micro-behaviors/communications/http/url/forge::github-raw-url",
            "conf": 0.92,
            "crit": 3,
            "desc": "GitHub raw-content URL",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/ui/window/dom-access::ad-selector-token",
            "conf": 0.8,
            "crit": 3,
            "desc": "Ad-related CSS selector token",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/process/interpreter/npm::npm-script-interpreter",
            "atk": "T1059",
            "mbc": "B0030",
            "conf": 0.85,
            "crit": 3,
            "desc": "Package script invokes a language interpreter"
          },
          {
            "id": "micro-behaviors/data/control-flow/module-exec::commonjs-module-reexport",
            "conf": 0.92,
            "crit": 3,
            "desc": "CommonJS module re-exports required package",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/package/repository::has-repository-field",
            "conf": 0.9,
            "crit": 2,
            "desc": "package.json declares repository metadata"
          },
          {
            "id": "objectives/supply-chain/install-hook/package/manifest::postinstall-hook-key",
            "conf": 0.85,
            "crit": 3,
            "desc": "Declares a package postinstall hook"
          },
          {
            "id": "metadata/package/scripts/lifecycle::builtin-pipe-execute-benign-package-context",
            "conf": 0.99,
            "crit": 3,
            "desc": "Known-good package context for pipe-execute heuristic",
            "from": [
              {
                "file": 3
              }
            ],
            "uses": [
              7
            ]
          },
          {
            "id": "metadata/lang/scripted::dts-declaration-file",
            "conf": 0.99,
            "crit": 2,
            "desc": "TypeScript declaration file",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/github::raw-githubusercontent-any",
            "atk": "T1071.001",
            "mbc": "C0002",
            "conf": 0.7,
            "crit": 3,
            "desc": "raw.githubusercontent.com URL",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/scripts/develop::has-test-script",
            "conf": 1.0,
            "crit": 2,
            "desc": "package.json declares a test script"
          },
          {
            "id": "objectives/execution/interpreter/script/npm::npm-postinstall-script",
            "conf": 1.0,
            "crit": 3,
            "desc": "Declares an npm postinstall lifecycle hook"
          },
          {
            "id": "micro-behaviors/fs/write/file/full::write-file-call-target",
            "conf": 0.9,
            "crit": 3,
            "desc": "Calls an unqualified writeFile function",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "objectives/supply-chain/install-hook/scripts/hook-file::hook-script-filename",
            "atk": "T1195.002",
            "conf": 0.9,
            "crit": 1,
            "desc": "npm lifecycle hook-like filename",
            "from": [
              {
                "file": 6
              }
            ],
            "uses": [
              3
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/package/dependencies/manifest/count::npm-many-dev-dependencies",
            "conf": 0.7,
            "crit": 2,
            "desc": "npm manifest has many devDependencies"
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/domain::js-remote-host-url",
            "conf": 0.75,
            "crit": 3,
            "desc": "Contains a hardcoded remote HTTP(S) URL",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "objectives/supply-chain/install-hook/scripts/declaration::postinstall-hook-declaration",
            "atk": "T1195.002",
            "conf": 0.96,
            "crit": 3,
            "desc": "Package declares a postinstall hook"
          },
          {
            "id": "metadata/package/author/domain::npm-author-gmail",
            "atk": "T1195.002",
            "conf": 0.65,
            "crit": 3,
            "desc": "npm package author uses Gmail"
          },
          {
            "id": "supply-chain/install-hook/postinstall",
            "conf": 0.8,
            "crit": 3,
            "desc": "Package has 'postinstall' hook that runs during install"
          },
          {
            "id": "metadata/package/files/included::package-json-basename",
            "conf": 0.95,
            "crit": 3,
            "desc": "Filename is package.json",
            "from": [
              {
                "file": 3
              }
            ]
          },
          {
            "id": "metadata/package/documentation/package-metadata::npm-name-matches-readme-heading",
            "conf": 0.9,
            "crit": 3,
            "desc": "README heading matches the npm package name"
          },
          {
            "id": "metadata/package/files/archive-member::archive-js-member",
            "conf": 0.9,
            "crit": 3,
            "desc": "Archive member is a JavaScript file"
          },
          {
            "id": "objectives/supply-chain/install-hook/remote-content::npm-install-hook-fetches-branch-tip-content",
            "conf": 0.96,
            "crit": 4,
            "desc": "Install hook fetches branch-tip remote content",
            "from": [
              {
                "file": 3
              },
              {
                "off": 5074,
                "file": 6,
                "line": 278
              }
            ],
            "uses": [
              6,
              16,
              22
            ],
            "spans": [
              [
                0,
                41
              ]
            ]
          },
          {
            "id": "objectives/supply-chain/install-hook/remote-content::npm-install-hook-persists-remote-content",
            "conf": 0.95,
            "crit": 3,
            "desc": "npm install hook saves fetched remote data",
            "from": [
              {
                "file": 3
              },
              {
                "off": 5074,
                "file": 6,
                "line": 278
              }
            ],
            "uses": [
              6,
              16
            ],
            "spans": [
              [
                0,
                41
              ]
            ]
          }
        ]
      },
      {
        "ctx": [
          {
            "b": "zeS%cy?kkgCYmOwBAnM/aAz4kB.L(cc){S2wn=r[x(m#AyiarhcN/x",
            "ln": 0,
            "col": 1,
            "line": 1
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "require"
            ],
            [
              "",
              "./domains.json"
            ]
          ],
          "mbr": [
            "module.exports"
          ],
          "tgt": [
            "require"
          ],
          "metrics": {
            "ast": {
              "max_depth": 6,
              "call_count": 1,
              "node_count": 17,
              "member_count": 1,
              "max_member_depth": 2
            },
            "file": {
              "size": 43,
              "entropy": 4.4
            },
            "text": {
              "lines": 1,
              "top_char": 111,
              "space_count": 2,
              "char_entropy": 4.4,
              "unique_chars": 24,
              "top_char_null": 0,
              "import_density": 100,
              "string_density": 1,
              "top_char_ratio": 0.09,
              "avg_line_length": 42,
              "max_line_length": 42,
              "last_line_length": 42,
              "whitespace_ratio": 0.07,
              "identifier_density": 3,
              "max_whitespace_run": 1,
              "normalized_import_count": 1,
              "normalized_string_count": 1
            },
            "binds": {
              "count": 1
            },
            "binary": {
              "peak_region_bytes": 43,
              "peak_region_entropy": 4.4
            },
            "imports": {
              "count": 1,
              "relative": 1,
              "relative_ratio": 1,
              "third_party_count": 1,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 14,
              "count": 1,
              "avg_length": 14,
              "max_length": 14,
              "path_count": 1,
              "avg_entropy": 3.24
            },
            "identifiers": {
              "count": 3,
              "unique": 3,
              "avg_length": 6.67,
              "max_length": 7,
              "min_length": 6,
              "avg_entropy": 2.54,
              "reuse_ratio": 1,
              "length_stddev": 0.47,
              "all_lowercase_ratio": 1
            }
          }
        },
        "id": 1,
        "mol": "H₂(DbOs)",
        "path": "free-email-domains-1.12.20.tgz!!package/domains.js",
        "pid": 0,
        "refs": [
          {
            "to": "./domains.json",
            "off": 26,
            "file": 2,
            "kind": "local"
          }
        ],
        "risk": 3,
        "sha": "4aa108a35751b3fa2c8f59f4f8c7c6c16f210ef24733510fbd8e906606bde54c",
        "size": 43,
        "traits": [
          {
            "id": "micro-behaviors/data/control-flow/module-exec::commonjs-module-reexport",
            "conf": 0.92,
            "crit": 3,
            "desc": "CommonJS module re-exports required package",
            "spans": [
              [
                0,
                42
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/control-flow/module-exec::sole-require-passthrough-module",
            "conf": 0.93,
            "crit": 3,
            "desc": "Module body is only a require pass-through",
            "spans": [
              [
                0,
                43
              ]
            ]
          },
          {
            "id": "micro-behaviors/os/module/require::cjs-local-require-call",
            "conf": 0.9,
            "crit": 3,
            "desc": "CommonJS local-module require call",
            "spans": [
              [
                17,
                7
              ]
            ]
          },
          {
            "id": "metadata/import/npm/relative/1/domains/json::relative/1/domains/json",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ./domains.json",
            "spans": [
              [
                25,
                0
              ]
            ]
          }
        ],
        "type": "javascript"
      },
      {
        "ctx": [
          {
            "b": "DKp(rb5Q?awG\u003ceTb4+\u003ebwI4FgvqfKfwn=r[x(m#oed9Hxb4Lnav@=p5BzkVhb03?\u003clVl*XA+e]}zGxJnwGU/6B95Kyw/$YawN##}zddc{aAhvtC4\u003eF#AV![hzddc@B0b7kAV/BqxkR\u003chaA?gfx\u003egT]x(v(ivqYP#wnca7z/Yt@y?j-3x(4)5A+PA7e*q?NarR\u003ewz/668vp%c}iV]RWBAzFyiXJd0x([3hvLheez7!K@yJ0V[vruMzw].D]eOe^cx(2wiz/5]%zGv0M3lQDnC4CYnx(v(kiV]R3e?]algb6[63lQDnzddc@b03?\u003cwn=r[x(m#Ayi7NI3lQDnvrDW9z/N3.aBsCrarR^JwO\u003e\u003c\u0026y:7[.b5h4qwOb%\u003ezEWy4v@A#ywPzs7kXB}xx(2ziz/3WH3lQDlar\u003eYizdK[Lar\u003cD)yI$sZwNPX4a$K6zarR^JB-IpxiV]RWBAzFyiXJd4x\u003e}S@wNPX4e[n*pa{]CnEjLZFar\u003erlzGG]kvS=^hA=SA=ax]f}arR!N3lQDlarR^JzEEx[b03?\u003cnP[JWaxAA4yJ0W2x(niia$K6zarR^Har\u003exlvqfK4iV]RXC42nNAb]Joy\u003cvTyz/3W9arR^HEjLZFarR!N3lQDlarR^JzEEx[b03?\u003cnP59Xaw=G!BrSmyarR^HarR\u003etzddc{b03?\u003cg=NlFg=E9Dd}@)jB8UMdBu\u003c$\u0026wPz\u0026AzF%MbAbo!Lxk8E3BZ=$kz/3W9arR^HEjLZFarR!N3lQDlarR^JzEEx[b03?\u003cojq\u003cSav{A\u003eyK49P3lQDlarR^JwO\u003e\u003c\u0026y:7[.b5pRcy+xytA+/}=xkI6\u003ey+xjoz6xrfarR!Ped9HxarV1rarR^HarR\u003eCvqPN1iV]RswO#MioNgY3vpQMk3lQDl",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "3lQDlarR^JwO\u003e\u003c\u0026y:7[.b64yckYZTWA+P2ov@A#xyA:9darR!P3lQD%ed9Hxb64mlz/YSmz/QaEiV@+RarR^Hb6n9HwG\u003ceTb4\u003eRia$K6zarR^JB-IpxiV]RVx(\u003e\u003esBAzFyiXJd0x([3hvLheez7/WsyJ0V[vruMzw].D]eOe^cx(2wiz/5]%zGvByx(\u003eKaarV7-3lQDnvS=s8b03\u0026[3lQDlar\u003e@Gy:7[.b4#7uAc15[fk20vxMW=pv@DiqokefWvR5$\u0026B1.cCwO0D8zddc{eO5^pvqfR2fkkGGB.bRr3lQEted9Hxb5p+nCw?IjB0rT/tm8F}arR\u003eqy\u0026r*0y?W%ja$K6zarR^Jwnca7z/Yt@y?j!w3lQDlar\u003eumzddc@B0rdxarR^Hb4UR1x(1$A3lQDlar\u003eAoA=00K3lQDlar\u003eArwO05p3lQDlar\u003eDnvqfK4ed9HxarR\u003eBvqfK4ed9HxarR\u003eHx\u003eIsaA3u?uarR^Hb6Eyhx\u003egT]x(v(k3lQD%ed9Hxb4Ln7wO#3\u0026zEWx(B0rT/DWNBLarR\u003eswP*EMAaJ]$wO#0(wPG4RaBsCrarR^JkX1.Hze19dx(n2Cv@b\u003c6iV]R.vru74BrSmyarR^Hb0YTRzeB0ey?W^efjO{rw[+)fv@DmdwO#Q7z/f01b03?\u003cy*?A%B95PS3lQDlar\u003erfePt\u0026wy?W%7b03?\u003cy*?A%B95PS3lQDlar\u003eAizE)=}v@0nHar\u003eSgBy/Jna$K6zarR^Jxk8DtvrDW9z/P[Jv@b\u003c6iV]R.vru74BrSmyarR^Hb4\u003eRixMW=oxjU%(A::63ePLAswNPT\u003eb03?\u003cy*?A%B95PS3lQDlar\u003eVvv}Yo{iV]R.vru74BrSmyarR^Hb5Q?bz.l3Lvp%dZb03?\u003cy*?A%B95PS3lQDlar\u003e(uz/](bb03?\u003cy*?A%B95PS3lQDlar\u003e(vze:r5eOw^teOG6vyJyWXar\u003eSgBy/Jna$K6zarR^JB97\u0026dwmoH?b03?\u003cy*?A%B95PS3lQDlar\u003e(GvqYQ:A+3+BwPz\u003caz/c:War\u003eSgBy/Jna{]CnEjLZFar\u003exmxk8l{B0rT/DKp(rarR\u003eCz!9A6iV]RgjS(Esa{]CnEjLZFar\u003eAiy?mViiV}SlarR^Hb4LRevqfR2e]2CKed9HxarR\u003esz/5]%zGvBBB8L}ued9HxarR\u003exzE^s6e[uORB0rdxarR^Hb6dmmx(Ffna{]Cnt}us9ar\u003e(pA+PGmB0rT/DKp(rarR\u003ery?m3)b03?\u003cA+#{JA+lCiz!9A^zeS%cy?mVied9HxarR\u003erz/fVqx\u003c#jbz/P[yiV]Q{zG6?yxk8DtvrDW9z/P[Jv@b\u003c4cmf\u003cMAcJHqx(mH3vpK6}cmf\u003cFx(\u003eFawmM*4vpK7YxjSYgB8L}scmf\u003cFx(\u003eFcz/6u9BrAeLasySvx(4rvay/tcBAh88B-.LxB0\u00267ZePbFUC4CYdw{C*FE0^5UA=\u003e}qed9HxarR\u003eAx(n2piV]R/Byx5$vrb)5ed9HxarR\u003eEz/Z2mzGx]dy?$pRar\u003eYwwmV)8v@=p5BAo9Oz/Z2mzGx]dy?$.vyi7NI3lQDlar\u003e=yB98Cly?m3@wG\u003ceTb5RvpaAzQxaAz4fwNPT\u003ei=[!yB08!Raz#dnaAzQxaAz4fwNPT\u003ei+JeGxMW=bcmf\u0026-v}^JlBZ/f3B7=XzD)0rCz6i!uvR/+1xDO(UvpJ!UB8%G-BZ/f3v\u003c@PM3lQDlar\u003e=BwPRH8BrS:*b5RvpaAzQxaz++fBrSmyarR^Hb64mhwNPT\u003eb03?\u003cB97\u0026dwmoH?eP$YCB7]Mgat41Ced9HxarR\u003eGwO+{^B7EyBx([3hvJ)\u0026Qb4\u003eRixMW=oxjU%(A::63ePLAswNPT\u003ea$K6zarR^JA+f5#vrl0vByw*6b03?\u003cxk8DgAclknat2fSz!%ldCp^]BxlbhlA+Pf2zxIFsk$0+JvrlK4AW04warR^Hb6myqBrS:*b5ImdxKJ7(arV7-3lQDny?Wx\u003czGxwkiV]RvnMl(+3lQDnv@Dj3x([f9zGE6-aBsCrarR^JwQ5rdzE^/jiV}SlarR^HarR\u003c[v@Dj3x([f9zGEKwz/ff3xdWRizGYPeBzkVhvqEa{arR^Ht}t",
            "ln": 1522,
            "col": 37,
            "line": 62
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "latest",
              "@commitlint/cli"
            ],
            [
              "latest",
              "finepack"
            ],
            [
              "latest",
              "mocha"
            ],
            [
              "latest",
              "github-generate-release"
            ],
            [
              "latest",
              "nano-staged"
            ],
            [
              "latest",
              "simple-git-hooks"
            ],
            [
              "latest",
              "should"
            ],
            [
              "latest",
              "git-authors-cli"
            ],
            [
              "latest",
              "@commitlint/config-conventional"
            ],
            [
              "latest",
              "standard"
            ],
            [
              "latest",
              "standard-version"
            ],
            [
              "latest",
              "ci-publish"
            ]
          ],
          "metrics": {
            "file": {
              "size": 3575,
              "entropy": 4.6
            },
            "binary": {
              "peak_region_bytes": 3575,
              "peak_region_entropy": 4.65
            },
            "consistency": {
              "name_repo_mismatch": 0
            }
          }
        },
        "id": 3,
        "ident": {
          "name": {
            "value": "free-email-domains",
            "source": "npm.name",
            "verified": false
          },
          "urls": [
            {
              "url": "git+https://github.com/kikobeats/free-email-domains.git",
              "kind": "repository",
              "source": "npm.repository.url"
            },
            {
              "url": "https://github.com/Kikobeats/free-email-domains",
              "kind": "homepage",
              "source": "npm.homepage"
            }
          ],
          "trust": "unsigned",
          "emails": [
            "josefrancisco.verdu@gmail.com"
          ],
          "authors": [
            {
              "url": "https://kikobeats.com",
              "name": "Kiko Beats",
              "role": "author",
              "email": "josefrancisco.verdu@gmail.com",
              "source": "npm.author"
            }
          ],
          "version": {
            "value": "1.12.20",
            "source": "npm.version",
            "verified": false
          },
          "identifier": {
            "value": "free-email-domains",
            "source": "npm.name",
            "verified": false
          }
        },
        "mol": "O₂(S₃Xe)H₂(FPo)Md(Pa₈)",
        "path": "free-email-domains-1.12.20.tgz!!package/package.json",
        "pid": 0,
        "refs": [
          {
            "to": "pkg:github/kikobeats/free-email-domains",
            "off": 1617,
            "kind": "repository"
          },
          {
            "to": "domains.js",
            "off": 2415,
            "file": 1,
            "kind": "local"
          }
        ],
        "risk": 10,
        "sha": "ac1cb28f5154c2d26ba97392413eefb56510222dee16df620cfd06b9c0eac027",
        "size": 3575,
        "traits": [
          {
            "id": "supply-chain/install-hook/postinstall",
            "conf": 0.8,
            "crit": 3,
            "desc": "Package has 'postinstall' hook that runs during install",
            "spans": [
              [
                2708,
                28
              ]
            ]
          },
          {
            "id": "metadata/build/ecosystem::npm-logical-or-fallback",
            "conf": 0.95,
            "crit": 1,
            "desc": "npm script uses logical-OR fallback",
            "spans": [
              [
                2487,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/author/domain::npm-author-gmail",
            "atk": "T1195.002",
            "conf": 0.65,
            "crit": 3,
            "desc": "npm package author uses Gmail",
            "spans": [
              [
                283,
                29
              ]
            ]
          },
          {
            "id": "metadata/package/dependencies/manifest/count::npm-many-dev-dependencies",
            "conf": 0.7,
            "crit": 2,
            "desc": "npm manifest has many devDependencies",
            "spans": [
              [
                1952,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/dependencies/manifest/presence::npm-empty-dependencies-object",
            "conf": 0.95,
            "crit": 2,
            "desc": "npm manifest has empty dependencies object",
            "spans": [
              [
                1930,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/entrypoint::main-root-javascript-entry",
            "conf": 0.9,
            "crit": 2,
            "desc": "Root JavaScript main entrypoint",
            "spans": [
              [
                243,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/files/included::npm-publish-root-manifest",
            "conf": 0.95,
            "crit": 2,
            "desc": "Manifest sits at npm publish root"
          },
          {
            "id": "metadata/package/files/included::package-json-basename",
            "conf": 0.95,
            "crit": 3,
            "desc": "Filename is package.json"
          },
          {
            "id": "metadata/package/files/package-json::files-array-present",
            "conf": 0.92,
            "crit": 3,
            "desc": "Package.json declares a files allowlist",
            "spans": [
              [
                2399,
                47
              ]
            ]
          },
          {
            "id": "metadata/package/homepage::homepage-git-host",
            "conf": 0.9,
            "crit": 3,
            "desc": "Homepage points to major Git host",
            "spans": [
              [
                154,
                47
              ]
            ]
          },
          {
            "id": "metadata/package/repository::has-repository-field",
            "conf": 0.9,
            "crit": 2,
            "desc": "package.json declares repository metadata",
            "spans": [
              [
                1570,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/repository::has-repository-url",
            "conf": 0.85,
            "crit": 2,
            "desc": "package.json declares a repository URL",
            "spans": [
              [
                1609,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/repository::repo-url-git-host",
            "conf": 0.9,
            "crit": 3,
            "desc": "Repository identifies major Git host",
            "spans": [
              [
                1609,
                55
              ]
            ]
          },
          {
            "id": "metadata/package/scripts/build::has-release-scripts-1",
            "conf": 1.0,
            "crit": 3,
            "desc": "Package has release script",
            "spans": [
              [
                2906,
                19
              ]
            ]
          },
          {
            "id": "metadata/package/scripts/develop::has-git-hooks",
            "conf": 0.9,
            "crit": 3,
            "desc": "Package uses git hooks tooling",
            "spans": [
              [
                2263,
                18
              ]
            ]
          },
          {
            "id": "metadata/package/scripts/develop::has-test-script",
            "conf": 1.0,
            "crit": 2,
            "desc": "package.json declares a test script",
            "spans": [
              [
                3058,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/fs/delete/file/command::npm-script-delete",
            "atk": "T1070.004",
            "mbc": "C0047",
            "conf": 0.85,
            "crit": 3,
            "desc": "Package script deletes files",
            "spans": [
              [
                2487,
                19
              ]
            ]
          },
          {
            "id": "objectives/supply-chain/install-hook/scripts/import-chain::scripts-postinstall-executor-node",
            "atk": "T1195.002",
            "conf": 0.75,
            "crit": 3,
            "desc": "postinstall invokes node",
            "spans": [
              [
                2708,
                28
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/interpreter/npm::npm-script-interpreter",
            "atk": "T1059",
            "mbc": "B0030",
            "conf": 0.85,
            "crit": 3,
            "desc": "Package script invokes a language interpreter",
            "spans": [
              [
                2487,
                28
              ]
            ]
          },
          {
            "id": "objectives/execution/interpreter/script/npm::npm-postinstall-script",
            "conf": 1.0,
            "crit": 3,
            "desc": "Declares an npm postinstall lifecycle hook",
            "spans": [
              [
                2708,
                28
              ]
            ]
          },
          {
            "id": "objectives/supply-chain/install-hook/package/manifest::postinstall-hook-key",
            "conf": 0.85,
            "crit": 3,
            "desc": "Declares a package postinstall hook",
            "spans": [
              [
                2708,
                28
              ]
            ]
          },
          {
            "id": "objectives/supply-chain/install-hook/package/manifest::postinstall-runs-node-script",
            "conf": 0.92,
            "crit": 3,
            "desc": "Postinstall targets local Node.js file",
            "spans": [
              [
                2708,
                28
              ]
            ]
          },
          {
            "id": "objectives/supply-chain/install-hook/scripts/declaration::has-postinstall",
            "atk": "T1195.002",
            "conf": 0.85,
            "crit": 3,
            "desc": "Has postinstall script hook",
            "spans": [
              [
                2708,
                28
              ]
            ]
          },
          {
            "id": "objectives/supply-chain/install-hook/scripts/declaration::postinstall-hook-declaration",
            "atk": "T1195.002",
            "conf": 0.96,
            "crit": 3,
            "desc": "Package declares a postinstall hook",
            "spans": [
              [
                2708,
                28
              ]
            ]
          },
          {
            "id": "metadata/package/dependencies/manifest/presence::npm-no-runtime-dependencies",
            "conf": 0.9,
            "crit": 2,
            "desc": "npm manifest declares no runtime dependencies",
            "uses": [
              4
            ],
            "spans": [
              [
                1930,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/scripts/lifecycle::builtin-pipe-execute-benign-package-context",
            "conf": 0.99,
            "crit": 3,
            "desc": "Known-good package context for pipe-execute heuristic",
            "uses": [
              1
            ],
            "spans": [
              [
                2487,
                120
              ]
            ]
          }
        ],
        "type": "package.json"
      },
      {
        "ctx": [
          {
            "b": "ra]?=o?wqboLF0FzGxwic@0ojdgczHz/x#xx\u003eIa3aI$92gb7BwawlA:zY?wTvruMkjzF!QwOb%\u003ezEWy4v@A#ywPzs7kXB}xx(2ziz/4VXc#iKjz^)o^BAo6Az/3{g3q+qOze16jx(v(ix(+zgwPzu\u003eC{3:uvqZf#wgO\u003cnA+e/8z!pb4xKL{]wH[%CzY\u0026FaC{46qA=VepaA7.hvqfQ[zF782ay/teC)XF4aARphB0bKxw]@l9A+cw4zE:\u003e#B8#nfx\u003c(9{wftA3v%8T1zGGrex(v(iw[=6)B08(MxK@qgq/un\u0026CvtJ6a$k5=Bz\u0026pjwNPxZx(k5nxK@q+z!s9nvrb{4Cwhejz/{dAA+frlA+P39x(v(uazC.6y\u0026%o5zF78ox([3bB-X:xx(dNavruj4zxK4mwGV2cxj#yd3uQheB-RaBay/teC}p7Pz!9M]C}p7PwPzA{efF[OvR/+1xE\u003eopx(!xpx\u003c#jbwH[%BBZ/f3v}xL0wH[%jzE+zsAV/Bmy?%C*z/xA4B0bykaARpdax9h\u003cBA.elwH[%jzE:(izY\u003c1gA=2JjaAg[jB8L@qaARJACw7]iaARpdax9h\u003cBA.elwGUYd3taB3zFsf9wN({9zY\u0026OeaAIDLaAIWmygQ)%aARJABzbkdw]zH4z*b]kxcpY5zE^E6x(v)giTMi[xK@q{vScB3ay/teD2^RixMLwmz//Y6wGUA0wft#cx(+zowPzT4B8#5lzxJ?nBzkk@aAIj8y?$k6wGUY8v@co#wN(]$zvf/*y-)kaAa@)8aA8oyB9g@kByx6ex\u003c\u003e*2AbP=sx(v)gaA7\u003cmBzbkdq/un\u0026CvtJ6e^.}+njsU1pEXq+k#Hb]nMc:dqCQs+l}6G^b0/cInMc/:axIclnkAk+axH\u003cbqBa5SsS*Hfave+9awkp3l[xDHswR):q=s/mqvk#\u0026p!TCHl[xDLpd4YPl}Hczavo7cawLZiawtv3nMnbDaxhbVr7GC2s3Y.Zk#7xJmn\u003es8mJ+z]qBr#vpe\u003cICnLzYPsU6[HnMnCNq=s/dpF@r3aw+v4r7PCSoHhM0p/Qy\u0026pG6X8k#6/\u003cpesRRpdwbMpdE-Emnu/maw2rJper03rZ/+.ax7/%oIuNdnjr\u003eKrA8H+qD1YlqxOt5p*3W/m[uP4nkz]Emn^5blpA1\u003cnKkWpmiC5}qxOn2sS*79k$K^4avFH\u0026k$svxawU(TpGf\u003eNqvl8?k%!dpnMn?zaxI95r7GCQaw2rJk#5K*lSuSMp9rt4avw}1r8M1Hr4Gd\u003epF$dmpF@rhr7GCQs4MsVefEkRnMehQm\u003c7o0pFAwEpGpvppEVE5qxOLaavw}1pdmJHnL-87s4MvZaxg)2ax869r98v-miCx7axg)2axqueawU(TpGf\u003eNqxOv@k$\u003c\u003cBm]HK4p6%@\u003emiCJ8mPrCPqBJhB",
            "ln": 0,
            "col": 1,
            "line": 1
          }
        ],
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 1124,
              "entropy": 5.16
            },
            "binary": {
              "peak_region_bytes": 1024,
              "peak_region_entropy": 5.16
            }
          }
        },
        "id": 4,
        "path": "free-email-domains-1.12.20.tgz!!package/LICENSE.md",
        "pid": 0,
        "risk": 1,
        "sha": "fd7dfd4301e4377aa912ef30758f99d760f24b4ec86e1852a1ce3bce35754e3f",
        "size": 1124,
        "supp": [
          {
            "by": [
              {
                "id": "path"
              }
            ],
            "id": "well-known/tool/development/vcs/github-web::github-repo-fetched-path",
            "crit": "notable",
            "kind": "unless"
          }
        ],
        "traits": [
          {
            "id": "micro-behaviors/communications/email/address::gmail-com-email-domain-suffix",
            "conf": 0.55,
            "crit": 3,
            "desc": "Email address suffix @gmail.com",
            "spans": [
              [
                72,
                10
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                0,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                195,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                819,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                1060,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                181,
                0
              ]
            ]
          }
        ],
        "type": "text"
      },
      {
        "ctx": [
          {
            "b": "boQPswO0D8zddc{eO5^pvqfR23jm}XoKS0:aA?spB7]Mgt{%xdBz#pZfe43Rxd!msx\u003eq9\u003eB1RfBfk20vxMW=qByw/nokefWvR5$\u0026B1.cCwO0D8zddc{eO5^pvqfR2e]#hGkxy{(y?k+wy*?AqB8=thA+cWbtoNiCp!-6hByxolB6QhcBAzFyiXJd2zd+FxxLz3]wofwqz.D0Ez7/Bpfj]lowI4FgvqfKfwn=r[x(m#AB9qgXB98XzwJ:Twvrs8xADLYgwHQ[kxMOunB2\u003e%cCxXl-zG6DcB1RxKxd[jjv@2H=wImUowO0D8zddc{eO5^pvqfR2dgczCavyo(vru6\u003eaz++kBrCHlazbU9wGUA0wftz%B8V5svpB4:az2y#x(1]5z/5]%zGu}jz/M$wx\u003eIsaA3e+by\u0026\u003clex(mMmaz+Q$wft(mvqGU1C}p7DzE:\u003e#vS=:6aAhvjC4CMkx(v(w3jn15axJl4aA.:pazC{83n0w!y\u0026r*0aARgiAbP=9A^n^CAV/EqA=legCvt+tx(mx#CX7}swoz{bzF78kx\u003eIsaA4RFHaw#=YBZ[#9w)]E^azbLjz6i[xvR]?2B7]MgB1N!KawloSA3dICo^0\u003eZwftD2vqfK2Cw?Iqw]8yfB0a$ewNPE/AXmXabo[s5zGx]dy?%B=u%)wKvrl8?bP{#zz6iLgB97\u0026by-)tgwO0D8zddc{eO5^pvqfR2at2f^vrMh?u%)vH3l{=rrDzOYwEn=Lu%).\u003c3s!0(B95KpA+e/Jzddc{l#M{Jx(m#mjS[=RADL#owHF{rA+e/lwO\u003e\u003c\u0026y+ogozddc@B0\u0026yz3tar\u0026wKQDAx(3gQzddc@B1RfAv@co#wPGmExkI6\u003ey+xjoz6{+Pfe1Chj%j@/B.7[(A+e/Jzddc{l#M{Jx(m#Ax(mA%B.268c)%pUB-G6zz/6D4zH0\u003cAz/3\u003cJatkw\u003cjW702vqH0@3sEmH3jn15axrw\u003evru66wmoN*3jpfGu$9L=xBl1czF%5%aAI4kx(Ffnfk$\u0026JBzkSlByx04e]tuA3sEmH3jn15aw#=!vru6\u003e3jnvctv?UWx(2wuA=lbnwmY!5t{%xdBz#pZfe3%LBzb/ae[n*pfjXTmxMW)bB966Dzddc{ePt-GC4\u003eF#A=SVL\u0026^^jnrbVZ#gIXayz/6ufzxJIcvqfL0ayYQsl2paSvixP0zFH\u003ci3l{=roLF0FzGxv@3mWJqA+e/lwO\u003e\u003c\u0026y+ogozddc@B1eTZ.L[UZokefWavoTFBAp.oxMOunB2\u003e%cyIvN5vR5$\u0026B1Q%vz7d1UA+f5#vrl0\u003caA.NjwPw]nxK@q\u003co?wq\u0026c$)ZAAc15[fk20vxMW=pv@DiqokefWvR5$\u0026B1.cCwO0D8zddc{eO5^pvqfR2fjF:ovLqObB97#lfha@8mnu=Ie]tbFawuGVwO#N2e\u003c9P-j{\u003cO#BzbPkwN(](zE:(bvqfR3vqfQ\u003cwftubawlA:zY?wTvruMkCwhejaztt5A3e+kz/3R3v@DmbA+P09Bz(hvt{%xdBz#pZfe3%LBzb/ae[n*pfh31{z^)o^BAo9EA+e/lwO\u003e\u003c\u0026y+ogozddc@B1.3wzGG]kvS=^hA=SVZ3jn%ttwE}*z^)o^BAo6Az/5=dxMOunB2\u003e%cyIvN5vR5$\u0026B1Q%vz7cQAW\u0026!gPBvZK-ax}97x\u003e}Sfls\u003cOEB6QhcBAzFyiXJd0x([3hvLheez7!K@yJ0V[vruMtaI$PgsrH*kokefWvR5$\u0026B6QhcBAzFyiXJdhe[n*pfh31{z^)o^BAn(r",
            "ln": 0,
            "col": 1,
            "line": 1
          }
        ],
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 1400,
              "entropy": 5.13
            },
            "text": {
              "lines": 44,
              "top_char": 101,
              "digit_ratio": 0,
              "space_count": 94,
              "char_entropy": 5.13,
              "unique_chars": 73,
              "top_char_null": 0,
              "top_char_ratio": 0.08,
              "avg_line_length": 30.82,
              "max_line_length": 172,
              "non_ascii_ratio": 0.01,
              "empty_line_ratio": 0.36,
              "last_line_length": 137,
              "long_token_count": 1,
              "whitespace_ratio": 0.1,
              "line_length_stddev": 45.95,
              "max_whitespace_run": 1
            },
            "binary": {
              "peak_region_bytes": 1400,
              "peak_region_entropy": 5.06
            }
          }
        },
        "id": 5,
        "mol": "H(Cm)Md",
        "path": "free-email-domains-1.12.20.tgz!!package/README.md",
        "pid": 0,
        "risk": 3,
        "sha": "7b01909d664e65f7f35d04d4754b989c4c3195317de42d4a0a22b6102e168ee6",
        "size": 1400,
        "traits": [
          {
            "id": "metadata/file/naming::uppercase-readme-md-basename",
            "conf": 1.0,
            "crit": 3,
            "desc": "Basename is uppercase README.md"
          },
          {
            "id": "metadata/file/profile/markup::at-least-four-markdown-section-headings",
            "conf": 0.97,
            "crit": 3,
            "desc": "At least four Markdown section headings",
            "spans": [
              [
                374,
                13
              ],
              [
                516,
                10
              ],
              [
                581,
                8
              ],
              [
                766,
                14
              ],
              [
                826,
                10
              ],
              [
                945,
                10
              ]
            ]
          },
          {
            "id": "metadata/file/profile/markup::markdown-heading-before-fenced-block",
            "conf": 0.98,
            "crit": 3,
            "desc": "Markdown-style heading precedes a code fence",
            "spans": [
              [
                516,
                15
              ],
              [
                581,
                13
              ],
              [
                766,
                19
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/forge::public-code-forge-url",
            "conf": 0.9,
            "crit": 3,
            "desc": "References a public code-forge URL",
            "spans": [
              [
                858,
                19
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/content-word::english-edit-verb-token",
            "conf": 0.88,
            "crit": 1,
            "desc": "English edit-action verb token",
            "spans": [
              [
                769,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                1035,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                286,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                315,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                1168,
                0
              ]
            ]
          }
        ],
        "type": "markdown"
      },
      {
        "analysis_gaps": [
          "flow-graph-limited"
        ],
        "ctx": [
          {
            "b": "x(d*cA=-BJaA}\u003cuBy^{Qy?j-qazbUjz6gizz!9Auw]/RAA=k/eB7Gzu3jpoYzGx[xq+{y\u003elQ:]@jS)@oarV1rarR^HzEEx[iV]!vBZ!o*z/^ahy\u0026r*0wN(]]z/5]%zGvfR3lQDlaA.ZviV]!-BAzFyiXJc#e[/xpB8V5tB-Rbmv@DmbwO#PDfFmlOBt4rIvRfWmgb}6BgDvfyo\u003c@6TwPRT7xd(}\u0026vpQ@Svq{shA+c[oA+e/lwn=r[x(m#zga)6TB%^RtaBL^FarV1rarR^HzEEx[iV]!qvrlKbwGUI$B8V5svpB4:az2y#x(1]5z/5]%zGvfR3lQDlaA.ZviV]!-BAzFyiXJdbvrTtpx([3hvS=:6A:%39By/uie[n*pfjOBiBzLIwwnca7z/Yt@y?khfzddc{eO5^pvqfR2fkUcsBy/FCwnca7z/Yt@y?khfzddc{eO5^pvqfR2e{8tWcKH$sEjLZFaBsCrarR!AvqPNpasxM\u003eB8V5svpB4:az2y#x(1]5z/5]%zGu}fy\u0026r*0y?W%jcObPEarR!HA+)=VcUNQzAc15[flgGBe[X)uxMW^bB7Gx4z/fVdzGEHvz/4drx(!liB75J]wI4FgvqfKfwn=r[x(m#Bwnca7z/Yt@y?khfzddc{eO5^pvqfR2fkUcizzbKmB8V5svpB4:uUa7.x(4c=y\u0026r*0y?W%je[n*qw*W{daBKP53jnBodJ?2/wncd1z/f01ay]zcvqfR2az#ataAhvjB7GlhazCZoBzbkdrz(HkdLzcsz/fSravG11k$K*IauZ\u0026K3lQDsghgDqe]ClxcObPEasyPdB8iEDzZN7yarS4uz!}4oz.ufFcObPEasyPoy+xmfcObPEasyPoy+xsucObPEasyPsvq6vbzE)]xz/NEBA3)gzarS4uBzLxbe[ohPed9HxcT?cIv@Diied9HxcT?dozE\u003ezqwPPLtA3)gzarS4uDs.gJB89cO3lQDsvQ:4\u003ee]2tMed9Hx",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "e[]bHed9HxcWGive]CkMyh+Kct)Z{Gz/fSraARTrz6g$:By/Ysau.[hBy/Yse]\u003eJxy***+c[![iB1qSyB1nH?xdLeMcN/xfv@DmaBrCTkzFsibDsXiZaARgtBrA.g3lQEkwQ5q7arR^He]$#Fx(\u003e:Rtp:2%t}Y?t3lQDlatdItA42*Gx(bpaarR^He[O*lBy/Fvwn=r[x(k4Rj%jxOzddc@asnATa.kIdvqfQiB97\u0026hBApI$Bz96Ibps]?3jpi.D2vamw{503BzkVhazbhbv}X!VB-H#6asIqHB-H#6diJ%AarUfjzGx[xA+fqmjS[fSvqf*aw[u6]xEE}uB-H#6e{hhJdgcz8azCBgc)rRxB1RxDdiJ%AarR^HBzbYkCoy^mCoxs{A=k$Du@.8MvR/P#Bz\u0026plwPRA}as8qPz/{8gwId\u003eezdObrc)TdWwPGFBByxolBa2GBdgdguEf{r7ay/tcB95KDwQ5qtjS[fSvqf*aA+fqABy/Ysc[bGgarUxgasItyCYUMVByxiiB606$xECk\u003caW/9[r9r3^azt\u003ely:QUOE0^5UwQ5qHx(mA%B.268c)}b\u003cBzU?wdjDx^3lQDlaARpqz*9swwP]m=A=M8sc$2}:v}xv$wN(]Or834ex(n0lwNP9(z!pb5z/5]%zxJ+fB95Kpz/M%CDVKaFA:@VkzEEx[EpaGharV7t3lQEiwPS6nzxK1ezFsibDsXHDwQ5qC3vJl*vrlZiv\u003c2xazEW^5z/cXmvqfQ4c[co=3lQE3z/fSraAIEzA:@VGz/5]%zGu{-ayPF5x(\u003eE]A=k/eB7D$jy?$H#pGppWmn\u003e*Qvq)SbwPRA}q/u/0v}v8r3lQE3z/fSray]zcvqfR2auZ\u0026+wP]m}wPPtwz/{8gwKHDNvqfR2e[O{dBsnN!3lQE6z/M%Gv@DmaBrCajzddc@aA7\u003cml@cJynLShkay]zcvqfR2e[5p3c$EmkvqfQd3lQE3z/fSraAIEwBy!#9jS)4hA::kCw].*bc$EmkvqfR2dk2WWA=-YU3lQE1CvticaA}\u003cuBy^{Qy?k1xwn=r[x(m#AyiarhcOcxjq+{dvB98CpzF9V}C{)-LA=+(6efF?My?$TBgasTVEf{r#vqfQcdk2asByO#jwPz*fAV^Ieay/tcB8L(ae{y-Azyu(AA+e/lwO\u003e\u003c\u0026y+ogozddc@B2\u003eB^zEE0\u003cwGV8kaAz49A+fr9ay]zcvqfR2efG7Rx(mMaBzbkdvS=N0y?mc1y?W%jcOcxKA=M8sdjCP",
            "ln": 4245,
            "col": 13,
            "line": 245
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "text.replace"
            ],
            [
              "",
              "text.split.map.filter"
            ],
            [
              "",
              "text.split.map"
            ],
            [
              "",
              "text.split"
            ],
            [
              "",
              "domain.startsWith"
            ],
            [
              "",
              "fetch"
            ],
            [
              "",
              "Error"
            ],
            [
              "",
              "res.text"
            ],
            [
              "",
              "text.startsWith"
            ],
            [
              "",
              "text.includes"
            ],
            [
              "",
              "Error"
            ],
            [
              "",
              "sanitize"
            ],
            [
              "",
              "Promise.all"
            ],
            [
              "",
              "SOURCES.map"
            ],
            [
              "",
              "Set"
            ],
            [
              "",
              "sourceDomains.flat"
            ],
            [
              "",
              "domains.add"
            ],
            [
              "",
              "Array.from.sort"
            ],
            [
              "",
              "Array.from"
            ],
            [
              "",
              "writeFile"
            ],
            [
              "",
              "JSON.stringify"
            ],
            [
              "",
              "main.catch"
            ],
            [
              "",
              "main"
            ],
            [
              "",
              "console.warn"
            ],
            [
              "",
              "node:fs/promises"
            ]
          ],
          "mbr": [
            "Array.from",
            "Array.from.sort",
            "JSON.stringify",
            "Promise.all",
            "SOURCES.map",
            "console.warn",
            "domain.startsWith",
            "domains.add",
            "main.catch",
            "res.ok",
            "res.status",
            "res.text",
            "source.name",
            "source.url",
            "sourceDomains.flat",
            "text.includes",
            "text.replace",
            "text.split",
            "text.split.map",
            "text.split.map.filter",
            "text.startsWith"
          ],
          "tgt": [
            "Array.from",
            "Array.from.sort",
            "Error",
            "JSON.stringify",
            "Promise.all",
            "SOURCES.map",
            "Set",
            "console.warn",
            "domain.startsWith",
            "domains.add",
            "fetch",
            "main",
            "main.catch",
            "res.text",
            "sanitize",
            "sourceDomains.flat",
            "text.includes",
            "text.replace",
            "text.split",
            "text.split.map",
            "text.split.map.filter",
            "text.startsWith",
            "writeFile"
          ],
          "funcs": [
            [
              "text",
              4281
            ],
            [
              "text",
              4338
            ],
            [
              "domain",
              4401
            ],
            [
              "fetchSource",
              4447
            ],
            [
              "main",
              4829
            ],
            [
              "error",
              5149
            ]
          ],
          "metrics": {
            "ast": {
              "op.lor": 1,
              "op.land": 1,
              "op.lnot": 2,
              "max_depth": 12,
              "call_count": 24,
              "node_count": 1595,
              "member_count": 21,
              "op_density.lor": 0,
              "op_density.land": 0,
              "op_density.lnot": 0,
              "max_array_length": 227,
              "max_member_depth": 4
            },
            "file": {
              "size": 5252,
              "entropy": 4.75
            },
            "text": {
              "lines": 281,
              "top_char": 39,
              "digit_ratio": 0.01,
              "space_count": 653,
              "char_entropy": 4.75,
              "unique_chars": 80,
              "top_char_null": 0,
              "import_density": 0.36,
              "string_density": 0.86,
              "top_char_ratio": 0.09,
              "avg_line_length": 17.69,
              "max_line_length": 131,
              "empty_line_ratio": 0.04,
              "last_line_length": 115,
              "long_token_count": 2,
              "whitespace_ratio": 0.18,
              "identifier_density": 0.28,
              "line_length_stddev": 15.87,
              "max_whitespace_run": 1,
              "normalized_import_count": 0.06,
              "normalized_string_count": 14.44,
              "anonymous_function_ratio": 0.67,
              "normalized_function_count": 0.36,
              "imports_to_functions_ratio": 0.17,
              "strings_to_functions_ratio": 40.33,
              "normalized_unique_identifiers": 4.92,
              "identifiers_to_functions_ratio": 6.67
            },
            "binds": {
              "count": 9
            },
            "binary": {
              "peak_region_bytes": 2180,
              "peak_region_entropy": 5.01
            },
            "source": {
              "function_count": 2
            },
            "imports": {
              "count": 1,
              "third_party_count": 1,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 2884,
              "count": 242,
              "url_count": 3,
              "avg_length": 11.92,
              "max_length": 120,
              "avg_entropy": 3,
              "empty_count": 1,
              "domain_count": 49,
              "entropy_stddev": 0.44
            },
            "comments": {
              "chars": 44,
              "count": 1,
              "lines": 1,
              "to_code_ratio": 0
            },
            "functions": {
              "count": 2,
              "nested": 1,
              "density": 2.14,
              "anonymous": 4,
              "avg_params": 0.17,
              "code_ratio": 0.11,
              "max_params": 1,
              "one_liners": 3,
              "length_stddev": 5.03,
              "avg_name_length": 7.5,
              "no_params_count": 5,
              "avg_length_lines": 5,
              "max_length_lines": 15,
              "min_length_lines": 1,
              "avg_nesting_depth": 0.17,
              "max_nesting_depth": 1,
              "avg_param_name_length": 6
            },
            "identifiers": {
              "count": 80,
              "unique": 40,
              "avg_length": 5.65,
              "max_length": 13,
              "min_length": 2,
              "avg_entropy": 2.17,
              "reuse_ratio": 0.5,
              "length_stddev": 2.39,
              "all_lowercase_ratio": 0.73,
              "all_uppercase_ratio": 0.08
            }
          }
        },
        "id": 6,
        "mol": "H₃(Cm₇DbF)Md₂(InPa₂)",
        "path": "free-email-domains-1.12.20.tgz!!package/scripts/postinstall.mjs",
        "pid": 0,
        "risk": 6,
        "sha": "5ed080ee6d74175a393314ffdb949899d078d17401db206d8c7b5a22c7f231af",
        "size": 5252,
        "supp": [
          {
            "by": [
              {
                "id": "text",
                "spans": [
                  [
                    4672,
                    14
                  ]
                ]
              }
            ],
            "id": "micro-behaviors/communications/http/url/tld::hardcoded-domain-ru",
            "crit": "notable",
            "kind": "unless"
          }
        ],
        "traits": [
          {
            "id": "metadata/import/npm/fs/promises::fs/promises",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports node:fs/promises",
            "spans": [
              [
                26,
                16
              ]
            ]
          },
          {
            "id": "metadata/package/files/included::install-or-beacon-js-basename",
            "conf": 0.9,
            "crit": 3,
            "desc": "JavaScript install or beacon basename",
            "uses": [
              3
            ]
          },
          {
            "id": "metadata/package/files/included::npm-package-scripts-member",
            "conf": 0.99,
            "crit": 3,
            "desc": "JavaScript under npm package scripts dir"
          },
          {
            "id": "metadata/package/files/included::postinstall-js-basename",
            "conf": 0.9,
            "crit": 3,
            "desc": "Filename is postinstall.js/cjs/mjs"
          },
          {
            "id": "metadata/package/files/lifecycle::install-js-basename",
            "conf": 0.86,
            "crit": 3,
            "desc": "File has JavaScript install-script basename"
          },
          {
            "id": "metadata/package/files/lifecycle::postinstall-js-file",
            "conf": 0.84,
            "crit": 3,
            "desc": "File has postinstall JavaScript basename"
          },
          {
            "id": "micro-behaviors/communications/http/client/response-body::fetch-response-body-read",
            "conf": 0.9,
            "crit": 3,
            "desc": "JavaScript fetch reads response body",
            "spans": [
              [
                4505,
                141
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/http/client/response-body::js-response-text-read",
            "conf": 0.82,
            "crit": 3,
            "desc": "JavaScript reads HTTP response text",
            "spans": [
              [
                4637,
                8
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/http/download/write::hook-named-script-fetch-write-profile",
            "conf": 0.94,
            "crit": 3,
            "desc": "Hook-named script has fetch and write calls",
            "uses": [
              1,
              9
            ],
            "spans": [
              [
                4505,
                141
              ],
              [
                5074,
                9
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/http/download/write::script-fetches-and-writes-remote-content",
            "conf": 0.94,
            "crit": 3,
            "desc": "JavaScript fetch-response read and file write",
            "uses": [
              6,
              19
            ],
            "spans": [
              [
                4505,
                141
              ],
              [
                5074,
                9
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/http/message::http-url-literal",
            "conf": 0.75,
            "crit": 3,
            "desc": "HTTP URL string literal",
            "spans": [
              [
                115,
                90
              ],
              [
                271,
                101
              ],
              [
                441,
                120
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/http/request/client::single-fetch-call",
            "conf": 0.99,
            "crit": 3,
            "desc": "Source contains exactly one parsed fetch call",
            "spans": [
              [
                4505,
                5
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/domain::js-remote-host-url",
            "conf": 0.75,
            "crit": 3,
            "desc": "Contains a hardcoded remote HTTP(S) URL",
            "spans": [
              [
                115,
                34
              ],
              [
                271,
                33
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/forge::github-raw-url",
            "conf": 0.92,
            "crit": 3,
            "desc": "GitHub raw-content URL",
            "spans": [
              [
                271,
                34
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/github::raw-githubusercontent-any",
            "conf": 0.7,
            "crit": 3,
            "desc": "raw.githubusercontent.com URL",
            "spans": [
              [
                279,
                58
              ],
              [
                449,
                76
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/github::raw-githubusercontent-web-file",
            "conf": 0.7,
            "crit": 3,
            "desc": "raw.githubusercontent.com web file URL",
            "spans": [
              [
                279,
                93
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/control-flow/module-exec::module-leading-promise-chain-call",
            "conf": 0.84,
            "crit": 3,
            "desc": "Leading promise-chain call at module scope",
            "spans": [
              [
                5136,
                13
              ]
            ]
          },
          {
            "id": "micro-behaviors/fs/path/extension::conf-extension-reference",
            "conf": 0.4,
            "crit": 3,
            "desc": "Config file extension",
            "spans": [
              [
                556,
                5
              ]
            ]
          },
          {
            "id": "micro-behaviors/fs/write/file/full::node-write-file-promise-destructured",
            "conf": 0.9,
            "crit": 3,
            "desc": "Node writes a file via destructured import",
            "uses": [
              0,
              19
            ],
            "spans": [
              [
                26,
                16
              ],
              [
                5074,
                9
              ]
            ]
          },
          {
            "id": "micro-behaviors/fs/write/file/full::write-file-call-target",
            "conf": 0.9,
            "crit": 3,
            "desc": "Calls an unqualified writeFile function",
            "spans": [
              [
                5074,
                9
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                608,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                4776,
                0
              ]
            ]
          }
        ],
        "type": "javascript"
      },
      {
        "ctx": [
          {
            "b": "x(d*cA=-BoA+e/Jzddc{l#M{Jx(m#mw].*basw={wn=r[x(m#AyiarhcM)REBz8!zaAR)FwJy}YyiarhcM)*AwQ5fjA=-A!azbU9wKQDAx(3gQzddc@A%.",
            "ln": 0,
            "col": 1,
            "line": 1
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "./domains.json"
            ]
          ],
          "metrics": {
            "ast": {
              "max_depth": 6,
              "call_count": 0,
              "node_count": 26
            },
            "file": {
              "size": 94,
              "entropy": 4.47
            },
            "text": {
              "lines": 2,
              "top_char": 111,
              "max_ws_run": 1,
              "space_count": 10,
              "char_entropy": 4.47,
              "unique_chars": 29,
              "top_char_null": 0,
              "string_density": 1,
              "top_char_ratio": 0.09,
              "avg_line_length": 46,
              "max_line_length": 67,
              "last_line_length": 25,
              "whitespace_ratio": 0.13,
              "identifier_density": 1.5,
              "line_length_stddev": 21,
              "normalized_string_count": 1.41,
              "normalized_unique_identifiers": 2
            },
            "binary": {
              "peak_region_bytes": 94,
              "peak_region_entropy": 4.47
            },
            "imports": {
              "count": 1,
              "relative": 1,
              "relative_ratio": 1,
              "third_party_count": 1,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 18,
              "count": 2,
              "avg_length": 9,
              "max_length": 14,
              "path_count": 1,
              "avg_entropy": 2.62,
              "entropy_stddev": 0.62
            },
            "identifiers": {
              "count": 3,
              "unique": 2,
              "avg_length": 10,
              "max_length": 16,
              "min_length": 4,
              "avg_entropy": 2.75,
              "reuse_ratio": 0.67,
              "length_stddev": 6,
              "all_lowercase_ratio": 0.5
            }
          }
        },
        "id": 7,
        "mol": "K(Te)",
        "path": "free-email-domains-1.12.20.tgz!!package/index.d.ts",
        "pid": 0,
        "refs": [
          {
            "to": "./domains.json",
            "off": 30,
            "file": 10,
            "kind": "local"
          }
        ],
        "risk": 2,
        "sha": "6df32e592bf4f98205c3be3fa80b61eef0fb99467aa8bb4a6c10db4d4213378a",
        "size": 94,
        "traits": [
          {
            "id": "metadata/import/npm/relative/1/domains/json::relative/1/domains/json",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ./domains.json",
            "spans": [
              [
                29,
                0
              ]
            ]
          },
          {
            "id": "metadata/file/extension/identity::declaration-file-extension",
            "conf": 1.0,
            "crit": 2,
            "desc": "File uses a source declaration extension"
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                46,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/scripted::dts-declaration-file",
            "conf": 0.99,
            "crit": 2,
            "desc": "TypeScript declaration file"
          },
          {
            "id": "well-known/tool/development/vcs/github-web::github-repo-fetched-path",
            "conf": 0.98,
            "crit": 3,
            "desc": "Fetched github.com repository artifact"
          },
          {
            "id": "metadata/package/testing/presence/harness::test-or-declaration-file",
            "conf": 0.85,
            "crit": 1,
            "desc": "File is a test or type-declaration source file",
            "uses": [
              1
            ]
          }
        ],
        "type": "javascript"
      },
      {
        "id": 8,
        "mol": "Md(Re)",
        "sha": "1fbffb0f962b02b7534011bcd5330657f1556c2e4c833800f7df5134664460cc",
        "path": "free-email-domains@1.12.20.registry.json",
        "risk": 1,
        "size": 975,
        "type": "registry",
        "depth": 1
      }
    ],
    "omitted_files": 1,
    "rev": "c1ea9",
    "v": "8"
  }
}