{
  "ml": {
    "v": "7",
    "eng": "2.8.0",
    "lvl": -1,
    "conf": 0,
    "mods": [
      {
        "cls": 0,
        "raw": 0.00011072556,
        "rte": "az",
        "prob": 0.00011072556
      },
      {
        "cls": 0,
        "raw": 0.0013984641,
        "rte": "az/whl",
        "prob": 0.0013984641
      }
    ],
    "prob": 0.00011072556,
    "files": [
      {
        "id": 0,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00011072555935243145,
        "type": "whl"
      },
      {
        "id": 1,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000008732080459594727,
        "type": "python"
      },
      {
        "id": 2,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00001193086336570559,
        "type": "python"
      },
      {
        "id": 4,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00001343091298622312,
        "type": "python"
      },
      {
        "id": 5,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00001381834317726316,
        "type": "python"
      },
      {
        "id": 11,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009079773917619605,
        "type": "registry"
      }
    ],
    "version": "v18.18",
    "analyzed_at": "2026-09-02T00:29:46Z"
  },
  "path": "threaded-4.0.4-py3-none-any.whl",
  "raw": {
    "files": [
      {
        "id": 0,
        "ctx": [
          {
            "b": "p!H([6Awak2ML9Yp/2cu^]unE002E)000Yk004aOA+eV\u0026wN)D3uUKy(ByexcAcV\u003eh.ew0Y488J*2\u003coRpIpqbMTIYN1o[\u003cJoLa+SL6VgFghSC6=l}@\u0026l8PhM5L=.rgYvE^5\u003cM1Ylx(TjKOrmYFevM9:J]dN6K:\u003e4",
            "ln": 0
          }
        ],
        "mol": "H₂(CmPo₂)",
        "sha": "cb8c09184284abdc108b416991da8bab53c2a381f46d73564d1060ec1e992463",
        "path": "threaded-4.0.4-py3-none-any.whl",
        "risk": 3,
        "size": 17654,
        "type": "whl",
        "facts": {
          "metrics": {
            "whl": {
              "native_extension_count": 0
            },
            "file": {
              "size": 17654,
              "entropy": 7.92
            },
            "binary": {
              "peak_region_bytes": 16384,
              "peak_region_entropy": 7.83
            },
            "archive": {
              "file_count": 13,
              "member_count": 13,
              "script_count": 7,
              "zip_bomb_ratio": 4.38,
              "compressed_size": 15956,
              "directory_count": 0,
              "executable_count": 0,
              "extra_field_size": 0,
              "noise_file_count": 0,
              "compression.ratio": 0.31,
              "hidden_file_count": 0,
              "uncompressed_size": 51177,
              "crc_collision_count": 0,
              "entry_comment_count": 0,
              "max_filename_length": 38,
              "rtlo_filename_count": 0,
              "format.regular_count": 13,
              "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": 3,
              "timing.mtime_unique_ratio": 0.23,
              "misplaced_executable_count": 0,
              "timing.mtime_outlier_count": 6,
              "timing.mtime_dominant_count": 7,
              "timing.mtime_spread_seconds": 220,
              "timing.sentinel_mtime_count": 0,
              "security.world_writable_count": 1,
              "timing.mtime_dominant_fraction": 0.54,
              "compression.method_counts.deflate": 13
            }
          }
        },
        "ident": {
          "name": {
            "value": "threaded",
            "source": "whl.distribution",
            "verified": false
          },
          "urls": [
            {
              "url": "https://github.com/python-useful-helpers/threaded",
              "kind": "homepage",
              "source": "whl.home_page"
            }
          ],
          "trust": "unsigned",
          "emails": [
            "penguinolog@gmail.com"
          ],
          "authors": [
            {
              "name": "Alexey Stepanov",
              "role": "author",
              "email": "penguinolog@gmail.com",
              "source": "whl.author"
            },
            {
              "name": "Alexey Stepanov \u003cpenguinolog@gmail.com\u003e, Antonio Esposito \u003cesposito.cloud@gmail.com\u003e, Dennis Dmitriev \u003cdis-xcom@gmail.com\u003e",
              "role": "maintainer",
              "source": "whl.maintainer"
            }
          ],
          "version": {
            "value": "4.0.4",
            "source": "whl.version",
            "verified": false
          }
        },
        "traits": [
          {
            "id": "metadata/package/manifest/author/domain::generic-email",
            "conf": 0.6,
            "crit": 3,
            "desc": "Generic email address",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-name-field",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python package name",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "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": 1
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/url/reference::python-comment-url-reference",
            "conf": 0.9,
            "crit": 1,
            "desc": "Python comment contains a URL",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-requires-dist",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python runtime dependencies",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/email/address::google-consumer-email-domain-suffix",
            "conf": 0.55,
            "crit": 3,
            "desc": "Gmail consumer email domain suffix",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-version-field",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python package version",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "micro-behaviors/process/create/thread::python-thread-create",
            "conf": 0.65,
            "crit": 3,
            "desc": "Creates a thread in Python",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-summary-field",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python package summary",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-requires-python",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares supported Python versions",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-core-metadata",
            "conf": 1.0,
            "crit": 1,
            "desc": "Declares Python Core Metadata version",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "micro-behaviors/process/create/workers::parallel-thread-executor",
            "conf": 0.88,
            "crit": 3,
            "desc": "Uses a thread or async task executor",
            "from": [
              {
                "file": 5
              }
            ]
          }
        ]
      },
      {
        "ctx": [
          {
            "b": "boO9Kavy6^D2^RixMLvLfFLHeeG=/5f/Zvxy?m\u003c5C{34cwPh6}z*0miyHFu8wO#d6x(m\u003c9z!xz4bmkUrarR!2x\u003e7Z(B7F(8B-7-3AV/EqwGToTvpJ$ZawuGVwO#N2efE#8A=U@kzxHX!fD.==xK@qgoLF0FzGxwkdlwU$z/)gtvr\u0026h8arR^HzF%RtB-RapBzbxfazbt7wGUMev}xR3azCZov@Dj6y?Wr}v}u^bx([2hBzbkdoLF0FzGxwwax-S9az\u003eLjaA7.hvqfP^boO9KayMy5z/x$Az!pblxK@qWx\u003e7Z(B7DF5Bp6l1boO9KarR^HarUutBz%n]fl.R:e[5Zcv}YBaz/PFzy?Wx\u003czGxxgfha@8mnu=IeIX}j3l])5arR^HrC(R:B8@EAwPq\u003cbA+e=7vTf88z#",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "wODm1wPw]8CYmXmB8@ExAV/7kAbol1wg/06wO00axK}I}arR^HoLF0FzGxwiw]zYjBzbkdB8UY2x\u003ez6?az+F7xlvS}wGUS7C4CYix(mMaAaK6bx(!ufz/fRsvqYP#y?W:2Byxo9z/fR6boO9KaA.NjwPw]nxK@qWx\u003e7Z(B7D%h3l*VrBzbYavpS}Waz(4cB.\u003eRwa%Fir3l{V(Byx5$vrb)3oLE%RvrcS2x(d*cA=-BCD2NFnx9[$",
            "ln": 498,
            "col": 44,
            "line": 11
          },
          {
            "b": "ra{q-vpS}W3tar%z6gDrBzbYavpS}WazCXiz/P}xBzbYavpS}W3tar%z6gDrBzbYavpTs}z!@#}azCXiz/P}xra{q-vpShMz!@#}3tar%z6gDrBzbYavpTs}z!@#}azCXiz/P}xBzbYavpTs}z!@#}3jp(}C@=oParR!sA=k!qe)\u0026^kA=U@kzxJUgAbP=saA?spB7]MgayPsluTE$/A=U@kzEl-TwQ4Y@Ac9i]ze:AlBvyj\u003cz/N(CarR^HAa9*e3jpcEvqG:!uM.GOc\u003c?7tarR\u003ecxMvV)wkEh.y?mc3ed9HxarR\u003ecxMvV)wmYo}ed9HxarR\u003eIxMvV)wn(E9y?mc3ed9HxarR\u003eIxMvV)wmYo}ed8",
            "ln": 815,
            "col": 24,
            "line": 23
          },
          {
            "b": "aAR)FwJy@QD2NFnxd^eaAbo8\u0026B98BNatbo0t)Z{CuTX80xM4]#uM.GOb0*3RCX8dyq/(O\u0026vqZ1ba{}W:vrDW9z/Ph@zddc{uTB{sar\u003e=ozFa9azF%ufxfZ9DvqfKgv@Did3svdSvqfR3vqfQ\u003cA=UO{auZ\u0026]3lQDlar\u003c9/wQ4^iax9w[Aa9T5B%n%\u0026b5?ahxlv{az!%u8kXB}xx(2ziz/3WH3lQDlar\u003c9?Bz(5hzY?F\u0026AbP/iBz\u0026u:ar\u003exrAbP/iBz\u0026^wy\u0026sDbkXB}xx(2ziz/3WH3lQDlar\u003ci+zF\u003cffavH6XBAh8bB%n%\u0026b4LzeeQg=zz9R-JvqfKgv@Didedc!juTE}@y*QJ(jS\u003e}ZBAzFyiXJd0x([3hvLheez7/\u003cNBzbPgeP(bCw{4]wxK#10wPz\u0026BBzbYavpS}Wa{}W:wmY*(A+PGmx(v(@uM.GOb1c0Lz/Podz/P[ww]zYjA=(nqx(mMaw{503BzkVhB0bgmaxi2{wNPa5ra{q-vpShMz!}6#pFtXBA3tS@uU\u003cB^wO#N2uTB{sar*",
            "ln": 1147,
            "col": 5,
            "line": 40
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "._asynciotask"
            ],
            [
              "",
              "._asynciotask.AsyncIOTask"
            ],
            [
              "",
              "._asynciotask.asynciotask"
            ],
            [
              "",
              "._threaded"
            ],
            [
              "",
              "._threaded.Threaded"
            ],
            [
              "",
              "._threaded.threaded"
            ],
            [
              "",
              "._threadpooled"
            ],
            [
              "",
              "._threadpooled.ThreadPooled"
            ],
            [
              "",
              "._threadpooled.threadpooled"
            ],
            [
              "",
              "._version"
            ],
            [
              "",
              "._version.version"
            ],
            [
              "",
              "typing"
            ]
          ],
          "metrics": {
            "ast": {
              "max_depth": 6,
              "call_count": 0,
              "node_count": 227,
              "max_array_len": 6
            },
            "file": {
              "size": 1606,
              "entropy": 4.93
            },
            "text": {
              "lines": 51,
              "top_char": 101,
              "max_ws_run": 9,
              "digit_ratio": 0.01,
              "space_count": 229,
              "char_entropy": 4.93,
              "unique_chars": 68,
              "top_char_null": 0,
              "string_density": 0.35,
              "top_char_ratio": 0.08,
              "avg_line_length": 30.49,
              "max_line_length": 80,
              "empty_line_ratio": 0.12,
              "last_line_length": 43,
              "whitespace_ratio": 0.17,
              "identifier_density": 0.47,
              "line_length_stddev": 24.75,
              "normalized_string_count": 2.52,
              "suspicious_comment_ratio": 0.06,
              "normalized_unique_identifiers": 3.7
            },
            "binds": {
              "count": 7
            },
            "binary": {
              "peak_region_bytes": 1606,
              "peak_region_entropy": 4.88
            },
            "imports": {
              "count": 12,
              "aliased": 1,
              "relative": 11,
              "stdlib_count": 1,
              "stdlib_ratio": 0.08,
              "relative_ratio": 0.92,
              "third_party_count": 11,
              "third_party_ratio": 0.92
            },
            "strings": {
              "bytes": 363,
              "count": 18,
              "url_count": 1,
              "avg_length": 20.17,
              "max_length": 60,
              "avg_entropy": 3.41,
              "email_count": 4,
              "entropy_stddev": 0.48
            },
            "comments": {
              "chars": 675,
              "count": 16,
              "empty": 2,
              "lines": 14,
              "high_entropy": 1,
              "to_code_ratio": 0.38,
              "url_in_comments": 1
            },
            "identifiers": {
              "count": 24,
              "unique": 21,
              "avg_length": 10.48,
              "max_length": 16,
              "min_length": 6,
              "avg_entropy": 2.76,
              "reuse_ratio": 0.88,
              "length_stddev": 2.79,
              "all_lowercase_ratio": 0.81,
              "double_underscore_count": 8,
              "underscore_prefix_count": 12
            }
          }
        },
        "id": 1,
        "mol": "H(Cm)",
        "path": "threaded-4.0.4-py3-none-any.whl!!threaded/__init__.py",
        "pid": 0,
        "risk": 3,
        "sha": "624fde51aa3b7230526a80a141212e8d48b20f0eb23e072941ed9d8d8a53cb3a",
        "size": 1606,
        "traits": [
          {
            "id": "metadata/package/manifest/author/domain::generic-email",
            "conf": 0.6,
            "crit": 3,
            "desc": "Generic email address",
            "spans": [
              [
                1211,
                39
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/email/address::google-consumer-email-domain-suffix",
            "conf": 0.55,
            "crit": 3,
            "desc": "Gmail consumer email domain suffix",
            "spans": [
              [
                1240,
                10
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/forge::public-code-forge-url",
            "conf": 0.9,
            "crit": 3,
            "desc": "References a public code-forge URL",
            "spans": [
              [
                1430,
                19
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/url/reference::python-comment-url-reference",
            "conf": 0.9,
            "crit": 1,
            "desc": "Python comment contains a URL",
            "spans": [
              [
                248,
                0
              ]
            ]
          }
        ],
        "type": "python"
      },
      {
        "ctx": [
          {
            "b": "boO9Kavy6^D2^RixMLvLfFLHeeG=/5f/Zvxy?m\u003c5C{34cwPh6}z*0miyHFu8wO#d6x(m\u003c9z!xz4bmkUrarR!2x\u003e7Z(B7F(8B-7-3AV/EqwGToTvpJ$ZawuGVwO#N2efE#8A=U@kzxHX!fD.==xK@qgoLF0FzGxwkdlwU$z/)gtvr\u0026h8arR^HzF%RtB-RapBzbxfazbt7wGUMev}xR3azCZov@Dj6y?Wr}v}u^bx([2hBzbkdoLF0FzGxwwax-S9az\u003eLjaA7.hvqfP^boO9KayMy5z/x$Az!pblxK@qWx\u003e7Z(B7DF5Bp6l1boO9KarR^HarUutBz%n]fl.R:e[5Zcv}YBaz/PFzy?Wx\u003czGxxgfha@8mnu=IeIX}j3l])5arR^HrC(R:B8@EAwPq\u003cbA+e=7vTf88z#",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "wODm1wPw]8CYmXmB8@ExAV/7kAbol1wg/06wO00axK}I}arR^HoLF0FzGxwiw]zYjBzbkdB8UY2x\u003ez6?az+F7xlvS}wGUS7C4CYix(mMaAaK6bx(!ufz/fRsvqYP#y?W:2Byxo9z/fR6boO9KaA.NjwPw]nxK@qWx\u003e7Z(B7D%h3l*Vrl34r?v[xD}vrlibx(d*9wO(0@Byxo9z/dfKa%Ev3uTEkTy*QJ(jS(c%l34r?v[xD}vrlidefDcBB9RUkx(w94B88%G3jn12q/(C=wmoH?awuGUA::0l3tBu@z/P}xvrlZiv}/\u0026*x(d*cA=-BoB-7Yhz/oDk3tBu@z/P}xBA}?tzF6p-boPV#v{%f@nO@A.wO(0@Byxo9z/b[]A=k!qe*a\u003eBAbP=say/j@B8$Y0wN/U0vruBd3jmbIy*?yaavg5",
            "ln": 498,
            "col": 44,
            "line": 11
          },
          {
            "b": "z/fVdCYU$?vScg3auZ\u0026pvqH0@ed9HxarS9QeJ$pLz/fbE3lQDlarR^Har\u00260Ns8}.*azb+lv@#B6zxJUhazb+rB-I4ovqYP#A+funA=9Gp3lQDlarR^HauBEIA:-/cw{503iV{[mzEW^5z/cXtzY\u003cmAvq(L@arR^HarR^/BA}?pazb+lv(+-OD2NFnxd=#0BzkVhvqGd\u0026D2NFnxd=LWy\u00260J?y?l*6e?OW$BA}?tzF7N/CvticvpB4:u0N^WarR^HarR^/Aa9=}z6iUkz/x5@wPS39AYLsqwPRQ7wft#jazkncaz2.czGE1qz/oOCazCBgCxdbhazCZovrlZiv}/\u003c7",
            "ln": 1300,
            "col": 27,
            "line": 40
          },
          {
            "b": "y?l*6e?OW$b4kLrzEWy0e(Vn2yG\u003e[aAa%i5e\u003cTx2t{rMn3lQDlarR^Har\u00260Nnm=*MaAIjmB.\u003eOhvR3V(z/fSrA=\u003e(lwN(](zE:(gwPS6nzE)u3A+eV}ay]4[z/Podz/NDq3lQDlarR^HauBEIA:-/cw{503iV}HAvq{f%wftGbzEW^5z/b[8arR^HarR^/BA}?pazb+lv(+-OD2NFnxd=LWy\u00260J?y?l*6e?OW$BA}?tzF7N/CvticvpB4:t).X%arR^HarSZ=wPS6nzAn[:A:-{awPxsACw7Y2xDRIky?$kkA=kGhv}u=\u003eB9RUkx(tR6vrlibz/cXcvqG:5Cwhej",
            "ln": 3193,
            "col": 23,
            "line": 86
          },
          {
            "b": "yJ\u003cicxlbHearR^HarR^HarR^HA+funA=91oz/oOEv@=c?By!*3vrlijw{503c[nUCxlbQDdK]jTvrc14djCPharR^HarR^HA+funA=91zA:-{awPwa+arR^HwmYu}uTEqKy\u00260C",
            "ln": 3777,
            "col": 43,
            "line": 97
          },
          {
            "b": "y**^?wM{=te?wa?vrlZiv}/\u003clraf\u0026-txCdfx(mMol2H%Nb3!Fn3lQDlar\u00260Ns8}.*azb+lv@#B6zxJUhazb+rB-I4ovqYP#A+funA=9Gp3lQDlauBEIA:-/cw{503iV{[mzEW^5z/cXtzY\u003cmAvq(L@arR^/BA}?pazb+lv(+-OD2NFnxd=#0BzkVhvqGd\u0026D2NFnxd=LWy\u00260J?y?l*6e?OW$BA}?tzF7N/CvticvpB4:u0N^WarR^/Aa9=}z6iUkz/x5@wPS39AYLsqwPRQ7wft#jazkncaz2.czGE1qz/oOCazCBgCxdbhazCZovrlZiv}/\u003c7Byxla3lQDlauBQ\u0026",
            "ln": 5707,
            "col": 42,
            "line": 152
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "super(AsyncIOTask, self).__init__"
            ],
            [
              "",
              "super"
            ],
            [
              "",
              "callable"
            ],
            [
              "",
              "self.loop_getter"
            ],
            [
              "",
              "self.loop_getter"
            ],
            [
              "",
              "functools.wraps"
            ],
            [
              "",
              "self.get_loop"
            ],
            [
              "",
              "loop.create_task"
            ],
            [
              "",
              "func"
            ],
            [
              "",
              "super(AsyncIOTask, self).__call__"
            ],
            [
              "",
              "super"
            ],
            [
              "",
              "id"
            ],
            [
              "",
              "AsyncIOTask"
            ],
            [
              "",
              "AsyncIOTask"
            ],
            [
              "",
              "AsyncIOTask"
            ],
            [
              "",
              ".class_decorator"
            ],
            [
              "",
              "asyncio"
            ],
            [
              "",
              "functools"
            ],
            [
              "",
              "typing"
            ]
          ],
          "mbr": [
            "asyncio.AbstractEventLoop",
            "asyncio.get_event_loop",
            "class_decorator.BaseDecorator",
            "functools.wraps",
            "loop.create_task",
            "self.__class__",
            "self.__class__.__name__",
            "self.__loop_getter",
            "self.__loop_getter_need_context",
            "self._func",
            "self.get_loop",
            "self.loop_getter",
            "self.loop_getter_need_context",
            "super().__call__",
            "super().__init__",
            "typing.Any",
            "typing.Callable",
            "typing.Optional",
            "typing.Union",
            "typing.overload"
          ],
          "tgt": [
            "AsyncIOTask",
            "AsyncIOTask()",
            "callable",
            "func",
            "functools.wraps",
            "id",
            "loop.create_task",
            "self.get_loop",
            "self.loop_getter",
            "super",
            "super().__call__",
            "super().__init__"
          ],
          "funcs": [
            [
              "__init__",
              985
            ],
            [
              "loop_getter",
              2218
            ],
            [
              "loop_getter_need_context",
              2528
            ],
            [
              "get_loop",
              2705
            ],
            [
              "_get_function_wrapper",
              3071
            ],
            [
              "wrapper",
              3643
            ],
            [
              "__call__",
              3873
            ],
            [
              "__repr__",
              4291
            ],
            [
              "asynciotask",
              4655
            ],
            [
              "asynciotask",
              4976
            ],
            [
              "asynciotask",
              5350
            ]
          ],
          "metrics": {
            "ast": {
              "max_depth": 14,
              "call_count": 15,
              "node_count": 1070,
              "member_count": 20,
              "max_array_len": 2,
              "member_depth_max": 3
            },
            "file": {
              "size": 6746,
              "entropy": 4.73
            },
            "text": {
              "lines": 171,
              "top_char": 101,
              "max_ws_run": 9,
              "digit_ratio": 0,
              "space_count": 1360,
              "char_entropy": 4.73,
              "unique_chars": 76,
              "top_char_null": 0,
              "string_density": 0.18,
              "top_char_ratio": 0.07,
              "avg_line_length": 38.45,
              "max_line_length": 118,
              "empty_line_ratio": 0.15,
              "last_line_length": 11,
              "whitespace_ratio": 0.23,
              "identifier_density": 1.31,
              "line_length_stddev": 30.06,
              "normalized_string_count": 2.37,
              "repeated_char_sequences": 18,
              "suspicious_string_ratio": 0.13,
              "suspicious_comment_ratio": 0.13,
              "normalized_unique_identifiers": 5.66
            },
            "binds": {
              "count": 5
            },
            "binary": {
              "peak_region_bytes": 5722,
              "peak_region_entropy": 4.89
            },
            "source": {
              "class_count": 1,
              "function_count": 9
            },
            "imports": {
              "count": 5,
              "relative": 2,
              "stdlib_count": 3,
              "stdlib_ratio": 0.6,
              "relative_ratio": 0.4,
              "third_party_count": 2,
              "third_party_ratio": 0.4
            },
            "strings": {
              "sql": 1,
              "bytes": 2472,
              "count": 31,
              "avg_length": 79.74,
              "max_length": 710,
              "avg_entropy": 3.79,
              "entropy_stddev": 0.35,
              "embedded_code_candidates": 3
            },
            "comments": {
              "chars": 910,
              "count": 24,
              "empty": 2,
              "lines": 22,
              "base64": 2,
              "high_entropy": 1,
              "to_code_ratio": 0.15,
              "url_in_comments": 1
            },
            "functions": {
              "count": 10,
              "nested": 1,
              "density": 6.43,
              "avg_params": 2.91,
              "code_ratio": 0.74,
              "max_params": 5,
              "length_stddev": 7.82,
              "avg_name_length": 11.64,
              "avg_length_lines": 11.45,
              "max_length_lines": 27,
              "min_length_lines": 3,
              "avg_nesting_depth": 0.09,
              "max_nesting_depth": 1,
              "high_entropy_names": 1,
              "single_char_params": 4,
              "avg_param_name_length": 11.59
            },
            "identifiers": {
              "count": 224,
              "unique": 42,
              "avg_length": 8.93,
              "max_length": 26,
              "min_length": 2,
              "avg_entropy": 2.42,
              "reuse_ratio": 0.19,
              "length_stddev": 5.3,
              "high_entropy_count": 2,
              "high_entropy_ratio": 0.05,
              "all_lowercase_ratio": 0.83,
              "double_underscore_count": 7,
              "underscore_prefix_count": 11
            }
          }
        },
        "id": 2,
        "path": "threaded-4.0.4-py3-none-any.whl!!threaded/_asynciotask.py",
        "pid": 0,
        "risk": 1,
        "sha": "52c39b75d9431013ebe24ee6033c9a41e8250260fb638cde417b8c1f0508c9f1",
        "size": 6746,
        "traits": [
          {
            "id": "metadata/file/extension/identity::py",
            "conf": 1.0,
            "crit": 2,
            "desc": "File uses a Python artifact extension",
            "spans": [
              [
                0,
                0
              ]
            ]
          },
          {
            "id": "metadata/file/extension/token-shape::bare-alphanumeric-script-basename",
            "conf": 0.9,
            "crit": 2,
            "desc": "Script filename is a bare alphanumeric token",
            "spans": [
              [
                0,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/url/reference::python-comment-url-reference",
            "conf": 0.9,
            "crit": 1,
            "desc": "Python comment contains a URL",
            "spans": [
              [
                248,
                0
              ]
            ]
          },
          {
            "id": "metadata/file/metrics::low-overall-entropy-source",
            "conf": 0.9,
            "crit": 2,
            "desc": "Source file has low overall entropy",
            "spans": [
              [
                0,
                0
              ]
            ]
          }
        ],
        "type": "python"
      },
      {
        "ctx": [
          {
            "b": "boO9Kavy6^D2^RixMLvLfFLHeeG=/5f/Zvxy?m\u003c5C{34cwPh6}z*0miyHFu8wO#d6x(m\u003c9z!xz4bmkUrarR!2x\u003e7Z(B7F(8B-7-3AV/EqwGToTvpJ$ZawuGVwO#N2efE#8A=U@kzxHX!fD.==xK@qgoLF0FzGxwkdlwU$z/)gtvr\u0026h8arR^HzF%RtB-RapBzbxfazbt7wGUMev}xR3azCZov@Dj6y?Wr}v}u^bx([2hBzbkdoLF0FzGxwwax-S9az\u003eLjaA7.hvqfP^boO9KayMy5z/x$Az!pblxK@qWx\u003e7Z(B7DF5Bp6l1boO9KarR^HarUutBz%n]fl.R:e[5Zcv}YBaz/PFzy?Wx\u003czGxxgfha@8mnu=IeIX}j3l])5arR^HrC(R:B8@EAwPq\u003cbA+e=7vTf88z#",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "wODm1wPw]8CYmXmB8@ExAV/7kAbol1wg/06wO00axK}I}arR^HoLF0FzGxwiw]zYjBzbkdB8UY2x\u003ez6?az+F7xlvS}wGUS7C4CYix(mMaAaK6bx(!ufz/fRsvqYP#y?W:2Byxo9z/fR6boO9KaA.NjwPw]nxK@qWx\u003e7Z(B7D%h3l*Vrra{q-vpS}WazCXiy?mD{zGGrex(v(w3jo7uD2vbazY\u0026+naAIWAAbP=swN(b(a%Ev3uTEj",
            "ln": 498,
            "col": 44,
            "line": 11
          },
          {
            "b": "ByxiiwN)?AvScg3auZ\u0026pvqH0@ed9HxarS9QeJ$pLz/fbE3lQDlarR^Har\u00260NqGV\u003e1w{503BzkVhazCZoB7Gr0A::63aARpqwNPa43jm)#arR^HarSZ:vrb^[az$R8wJy@ewP]nsxMvV)wft+#zdLsbarR^HarR^HarR^HarR^HarR^Haw3e/v{%g\u0026vpB4:iV@M^wGUA5aA}\u003cmAbYx0azb+lv@#B6zy#nsarR^HarR^HarR^HarR^HarR^HnOf8.z/fbEaA.:paA}\u003cmAbYx0azb+lv@#B6zxJ?9zdLsbarR^HarR^Hi=]T^wGU(0zdL:JBA}?tzF7N$Acb/jzEEu=",
            "ln": 1223,
            "col": 10,
            "line": 42
          },
          {
            "b": "e(cCdx(v($y*g$5A:o!Jar\u003c=#A+eV\u0026wN)?Aa%nxUxjVf[BAzKKzEEx[efDczuV6p?wNw^*efG1QAWUQfB7=$tvqPN8djCPDarR^HarR!ry\u0026:eG3lQDlarR^HarR^Hazb-",
            "ln": 1989,
            "col": 32,
            "line": 59
          },
          {
            "b": "x(mMolT:!EvpB4:tp}JXefG4FA+eV\u0026x(mMora{q-vpSU83lQDlarR^Har\u00260Nnm=*MaAIjmB.\u003eOhvR3V(z/fSrA=\u003e(lwN(](zE:(gwPS6nzE)u3A+eV}ay]4[z/Podz/NDq3lQDlarR^HauBEIA:-/cw{503iV}HAvq{f%wftGbzEW^5z/b[8arR^HarR^/BA}?pazb+lv(+-OD2NFnxd=LWy\u00260J?y?l*6e?OW$BA}?tzF7O4zFs3btxCdfx(mMol3D:KBywS{wH[%CD2NFnxd=F/D0KX.arR^HarR^Hi=X!NB-IvXaA}\u003cmAbYx0azb+lv@#B6zvdHearR^HarSZ=",
            "ln": 2963,
            "col": 13,
            "line": 94
          },
          {
            "b": "efG4WAa%i5e\u003cTx2diHiaaARpqwNPa-zF7O3xMvV)wc%C4arR^HarR^HarU=tA+eV\u0026auZ\u0026?xMvV)wnb{]e(VI8wNP9$Byxi5wPQ7OA+fh#A+e=jaz$R8wJ:{tzdLmvvrc14jZ\u0026wzB1wCHCvtJ8B3jq.vrc14efFFiwO(v6j-+gJw?ER5wO(v6dgdguarR^HarR^HarUxgaAIagw?FdDvrcE3wi75uarR^HarR^HarR^HarR!GxMvV)wg?}B",
            "ln": 3667,
            "col": 59,
            "line": 109
          },
          {
            "b": "BA}?tzF7N?vqG:*vR/QWe?O+caARpqwNPa-zF7O3xMvV)wl\u0026F43lQDlar\u00260NqGV\u003e1w{503BzkVhazCZoB7Gr0A::63aARpqwNPa43jm)#arSZ:vrb^[az$R8wJy@ewP]nsxMvV)wft+#zdLsbarR^HarR^HarR^HarR^Haw3e/v{%g\u0026vpB4:iV@M^wGUA5aA}\u003cmAbYx0azb+lv@#B6zy#nsarR^HarR^HarR^HarR^HnOf8.z/fbEaA.:paA}\u003cmAbYx0azb+lv@#B6zxJ?9zdLsbarR^Hi=]T^wGU(0zdL:JBA}?tzF7O4zFs3bttx9OwH[%BBAe]PBA}?tzF7N?",
            "ln": 4945,
            "col": 29,
            "line": 142
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "callable"
            ],
            [
              "",
              "getattr"
            ],
            [
              "",
              "str"
            ],
            [
              "",
              "hash"
            ],
            [
              "",
              "super(Threaded, self).__init__"
            ],
            [
              "",
              "super"
            ],
            [
              "",
              "self._await_if_required"
            ],
            [
              "",
              "getattr"
            ],
            [
              "",
              "str"
            ],
            [
              "",
              "hash"
            ],
            [
              "",
              "functools.wraps"
            ],
            [
              "",
              "threading.Thread"
            ],
            [
              "",
              "thread.start"
            ],
            [
              "",
              "super(Threaded, self).__call__"
            ],
            [
              "",
              "super"
            ],
            [
              "",
              "callable"
            ],
            [
              "",
              "getattr"
            ],
            [
              "",
              "str"
            ],
            [
              "",
              "hash"
            ],
            [
              "",
              "Threaded"
            ],
            [
              "",
              "Threaded"
            ],
            [
              "",
              "Threaded"
            ],
            [
              "",
              ".class_decorator"
            ],
            [
              "",
              "functools"
            ],
            [
              "",
              "threading"
            ],
            [
              "",
              "typing"
            ]
          ],
          "mbr": [
            "class_decorator.BaseDecorator",
            "functools.wraps",
            "self.__class__",
            "self.__class__.__name__",
            "self.__daemon",
            "self.__name",
            "self.__started",
            "self._await_if_required",
            "self.daemon",
            "self.name",
            "self.started",
            "super().__call__",
            "super().__init__",
            "thread.start",
            "threading.Thread",
            "typing.Any",
            "typing.Callable",
            "typing.Optional",
            "typing.Union",
            "typing.overload"
          ],
          "tgt": [
            "Threaded",
            "Threaded()",
            "callable",
            "functools.wraps",
            "getattr",
            "hash",
            "self._await_if_required",
            "str",
            "super",
            "super().__call__",
            "super().__init__",
            "thread.start",
            "threading.Thread"
          ],
          "funcs": [
            [
              "__init__",
              997
            ],
            [
              "name",
              2190
            ],
            [
              "daemon",
              2350
            ],
            [
              "started",
              2493
            ],
            [
              "__repr__",
              2623
            ],
            [
              "_get_function_wrapper",
              2825
            ],
            [
              "wrapper",
              3617
            ],
            [
              "__call__",
              3928
            ],
            [
              "threaded",
              4365
            ],
            [
              "threaded",
              4599
            ],
            [
              "threaded",
              4749
            ]
          ],
          "metrics": {
            "ast": {
              "op.add": 3,
              "max_depth": 16,
              "call_count": 22,
              "node_count": 1152,
              "member_count": 20,
              "max_array_len": 3,
              "op_density.add": 0,
              "max_concat_chain": 2,
              "member_depth_max": 3
            },
            "file": {
              "size": 5797,
              "entropy": 4.71
            },
            "text": {
              "lines": 159,
              "top_char": 101,
              "max_ws_run": 9,
              "digit_ratio": 0,
              "space_count": 1212,
              "char_entropy": 4.71,
              "unique_chars": 75,
              "top_char_null": 0,
              "string_density": 0.18,
              "top_char_ratio": 0.07,
              "avg_line_length": 35.46,
              "max_line_length": 120,
              "empty_line_ratio": 0.18,
              "last_line_length": 62,
              "whitespace_ratio": 0.24,
              "identifier_density": 1.66,
              "line_length_stddev": 31.18,
              "normalized_string_count": 2.22,
              "repeated_char_sequences": 13,
              "suspicious_string_ratio": 0.11,
              "suspicious_comment_ratio": 0.09,
              "normalized_unique_identifiers": 6.15
            },
            "binds": {
              "count": 10
            },
            "binary": {
              "peak_region_bytes": 4773,
              "peak_region_entropy": 4.85
            },
            "source": {
              "class_count": 1,
              "function_count": 9
            },
            "imports": {
              "count": 5,
              "relative": 2,
              "stdlib_count": 3,
              "stdlib_ratio": 0.6,
              "relative_ratio": 0.4,
              "third_party_count": 2,
              "third_party_ratio": 0.4
            },
            "strings": {
              "bytes": 1982,
              "count": 28,
              "avg_length": 70.79,
              "max_length": 542,
              "avg_entropy": 3.38,
              "entropy_stddev": 0.77,
              "embedded_code_candidates": 3
            },
            "comments": {
              "chars": 842,
              "count": 23,
              "empty": 2,
              "lines": 21,
              "base64": 1,
              "high_entropy": 1,
              "to_code_ratio": 0.15,
              "url_in_comments": 1
            },
            "functions": {
              "count": 10,
              "nested": 1,
              "density": 6.92,
              "avg_params": 2.36,
              "code_ratio": 0.7,
              "max_params": 4,
              "length_stddev": 8.84,
              "avg_name_length": 8.45,
              "avg_length_lines": 10.18,
              "max_length_lines": 27,
              "min_length_lines": 2,
              "avg_nesting_depth": 0.09,
              "max_nesting_depth": 1,
              "high_entropy_names": 1,
              "avg_param_name_length": 11.35
            },
            "identifiers": {
              "count": 264,
              "unique": 45,
              "avg_length": 7.47,
              "max_length": 21,
              "min_length": 3,
              "avg_entropy": 2.32,
              "reuse_ratio": 0.17,
              "length_stddev": 3.49,
              "high_entropy_count": 1,
              "high_entropy_ratio": 0.02,
              "all_lowercase_ratio": 0.84,
              "double_underscore_count": 7,
              "underscore_prefix_count": 12
            }
          }
        },
        "id": 4,
        "mol": "H(Po)",
        "path": "threaded-4.0.4-py3-none-any.whl!!threaded/_threaded.py",
        "pid": 0,
        "risk": 1,
        "sha": "511b63d9c35ef621b0f2eef8de42ae27d078d126582c659d56a1367601858614",
        "size": 5797,
        "traits": [
          {
            "id": "micro-behaviors/communications/url/reference::python-comment-url-reference",
            "conf": 0.9,
            "crit": 1,
            "desc": "Python comment contains a URL",
            "spans": [
              [
                248,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/create/thread::python-thread-create",
            "conf": 0.65,
            "crit": 3,
            "desc": "Creates a thread in Python",
            "spans": [
              [
                3731,
                8
              ]
            ]
          }
        ],
        "type": "python"
      },
      {
        "ctx": [
          {
            "b": "boO9Kavy6^D2^RixMLvLfFLHeeG=/5f/Zvxy?m\u003c5C{34cwPh6}z*0miyHFu8wO#d6x(m\u003c9z!xz4bmkUrarR!2x\u003e7Z(B7F(8B-7-3AV/EqwGToTvpJ$ZawuGVwO#N2efE#8A=U@kzxHX!fD.==xK@qgoLF0FzGxwkdlwU$z/)gtvr\u0026h8arR^HzF%RtB-RapBzbxfazbt7wGUMev}xR3azCZov@Dj6y?Wr}v}u^bx([2hBzbkdoLF0FzGxwwax-S9az\u003eLjaA7.hvqfP^boO9KayMy5z/x$Az!pblxK@qWx\u003e7Z(B7DF5Bp6l1boO9KarR^HarUutBz%n]fl.R:e[5Zcv}YBaz/PFzy?Wx\u003czGxxgfha@8mnu=IeIX}j3l])5arR^HrC(R:B8@EAwPq\u003cbA+e=7vTf88z#",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "wODm1wPw]8CYmXmB8@ExAV/7kAbol1wg/06wO00axK}I}arR^HoLF0FzGxwiw]zYjBzbkdB8UY2x\u003ez6?az+F7xlvS}wGUS7C4CYix(mMaAaK6bx(!ufz/fRsvqYP#y?W:2Byxo9z/fR6boO9KaA.NjwPw]nxK@qWx\u003e7Z(B7D%h3l*Vrra{q-vpShMz!@#}azCXiy?mD{zGGrex(v(w3jo7uD2vbazY\u0026+naAIWAAbP=swN(b(a%Ev3uTEkTy*QJ(jS(c%ra{q-vpShMz!@#}a$K\u0026XBzbYavpTs}z!@#}a$i\u003caboP{bvqYQ:A+3p^x\u003c#9\u003eA^n1aze:AlBrC1kD2vbazWHh}AbP=say/tcv%8*jwO#Pxw{5irA+fq0x(d*cA=-BoB-7Yhz/oDk3tBu@z/P}xBA}?tzF6p-boPV#v{%f@nO@A.wO(0@Byxo9z/b[]A=k!qe*a\u003eBAbP=sao",
            "ln": 498,
            "col": 44,
            "line": 11
          },
          {
            "b": "D2NFnxd=#0BzkVhvqGdZzGGebjS)HrzE\u003emteJ$pLz/fbE3lQDlarR^Har\u00260Np\u0026yn*az2!ev%8)iAV!\u003ejwNPW(ayPd#ay/tcw[+[2A+c\u003cg3lQDlarR^HauBEIA:-/czddV@Cw?IqwPz\u0026MawDo?x(e0faA}:AyH}Kc3lQDlarR^HauBQ\u0026AaHeevr=d6z/PS8A=Tn:BA}?tzF7N$Acb/jzEEu=x(n2#3lQDlarR^Har\u00260N3lQDlarR^HazCBgx(!0aB97\u0026dv}v5#y\u0026.jouUaE[v%8)iAX5tjxMvV)wkEh.y^\u0026OWv%8)iAW:3RarR^HarR^HarR^Hx\u003ewF$y\u0026.jouUaE[",
            "ln": 1188,
            "col": 67,
            "line": 40
          },
          {
            "b": "arR^HarR^HarR^Hv@cisuTEw?wN/\u003e8z/NEKxMXAcz*c7Edgcz8arR^HarR!py\u0026.jouUaE[v%8)iAV^H/ra{q-vpShMz!}\u003c!wN/\u003e8z/Nmyvr=d6z/PS8A=TxXvr=d6z/PS8A=SVp3lQDlav6BMvrlHbwPRQ7wc%C4arUiaw/#edB-.ejCwX*sy\u0026.SWBA}?tzF7O3D2Nt0b2\u0026k@wNPaCz/oD6wfLqdat2=1ph+2YiTM#LarR^HarR\u003cLb2-e$ByYrlzxJInwN+",
            "ln": 1517,
            "col": 1,
            "line": 49
          },
          {
            "b": "z/fVdCYU$?vScg3auZ\u0026pvqH0@ed9HxarS9QeJ$pLz/fbE3lQDlarR^Har\u00260Ns8}.*azb+lv@#B6zxJUhazb+rB-I4ovqYP#A+funA=9Gp3lQDlarR^HauBEIA:-/cw{503iV@3SzEW^5z/cXtzY\u003cmAvq(L@arR^HarR^/BA}?pazb+lv(+-OD2NFnxd=#0BzkVhvqGd\u0026D2NFnxd=LWy\u00260J?y?l(VarR^HarR^Hi=FIFvqNc6z/oP4xjVgbwPx*Oo\u003ewAWz!6#jzY\u0026X7BrCdrwO#Pjy\u0026slhefFUsaA}\u003cmA3e\u003ejayPtpzEWy0aAR4kyyhgbarR^HarSZ!D2Nsqy\u0026slh",
            "ln": 2470,
            "col": 27,
            "line": 76
          },
          {
            "b": "D0I%zBA}?tzF7N/CvticvpB4:txCdfx(mMol2H%Nt{rMn3lQDlarR^Har\u00260Nnm=*MaAIjmB.\u003eOhvR3V(z/fSrA=\u003e(lwN(](zE:(gwPS6nzE)u3A+eV}ay]4[z/Podz/NDq3lQDlarR^HauBEIA:-/cw{503iV}HAvq{f%wftGbzEW^5z/b[8arR^HarR^/BA}?pazb+lv(+-OD2NFnxd=LWy\u00260J?y?i}@arR^HarR^/A+funA=9]XCxdbhAaJM5v@DyaB-.tnwGU]iazb+lv@#B6zvdHearR^HarSZ=BA}?piV@J\u0026Aa%i5e\u003c\u003c5-y**^?wM{=te?wb!D2NFnxd^h4",
            "ln": 4587,
            "col": 80,
            "line": 125
          },
          {
            "b": "zH2IsaAR)Fx(mMol3D:KBywS{wM%n4Aa%i5e\u003cTx2u0OTWedbVz3lQDlar\u00260Np\u0026yz%azb+lv@#B6zxK4taxi2{wNPaCz/oCXCX7xcBz(gL3jm)#arSZ:vrb^[azb+lv(+-AB-7Yhx(v(iBz\u0026pCA:-[]arR^Hi=]T^wGUPczEUZIBA}?tzF7N$Acb/jzEEu=BA}?tzF7N?vqG:*vR/QWe?O+caAR)Fx(mMorC(I?zD?jdAa%i5e\u003cTX\u0026x()=)y?kduBA}?tzF7N/zH2I[t).X%arSZ:vrb^[az+$mA9)l?BAz8miV}ddBzbP6aARJAxjVfcwP?T5BrCyrz/vlIx\u003ewGi",
            "ln": 8105,
            "col": 74,
            "line": 213
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "isinstance"
            ],
            [
              "",
              "cls.__executor.shutdown"
            ],
            [
              "",
              "ThreadPoolExecutor"
            ],
            [
              "",
              "cls.__executor.shutdown"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "self.configure"
            ],
            [
              "",
              "super(ThreadPooled, self).__init__"
            ],
            [
              "",
              "super"
            ],
            [
              "",
              "callable"
            ],
            [
              "",
              "self.loop_getter"
            ],
            [
              "",
              "self.loop_getter"
            ],
            [
              "",
              "self._await_if_required"
            ],
            [
              "",
              "functools.wraps"
            ],
            [
              "",
              "self._get_loop"
            ],
            [
              "",
              "self.executor.submit"
            ],
            [
              "",
              "loop.run_in_executor"
            ],
            [
              "",
              "functools.partial"
            ],
            [
              "",
              "super(ThreadPooled, self).__call__"
            ],
            [
              "",
              "super"
            ],
            [
              "",
              "id"
            ],
            [
              "",
              "ThreadPooled"
            ],
            [
              "",
              "ThreadPooled"
            ],
            [
              "",
              "ThreadPooled"
            ],
            [
              "",
              "._base_threaded"
            ],
            [
              "",
              "asyncio"
            ],
            [
              "",
              "concurrent.futures"
            ],
            [
              "",
              "functools"
            ],
            [
              "",
              "typing"
            ]
          ],
          "mbr": [
            "_base_threaded.APIPooled",
            "asyncio.AbstractEventLoop",
            "cls.__executor",
            "cls.__executor.max_workers",
            "cls.__executor.shutdown",
            "concurrent.futures",
            "concurrent.futures.ThreadPoolExecutor",
            "functools.partial",
            "functools.wraps",
            "loop.run_in_executor",
            "self.__class__",
            "self.__class__.__name__",
            "self.__executor",
            "self.__executor.is_shutdown",
            "self.__loop_getter",
            "self.__loop_getter_need_context",
            "self._await_if_required",
            "self._func",
            "self._get_loop",
            "self._max_workers",
            "self._shutdown",
            "self.configure",
            "self.executor",
            "self.executor.submit",
            "self.loop_getter",
            "self.loop_getter_need_context",
            "super().__call__",
            "super().__init__",
            "typing.Any",
            "typing.Callable",
            "typing.Optional",
            "typing.Optional.ThreadPoolExecutor",
            "typing.Type",
            "typing.Type.ThreadPooled",
            "typing.Union",
            "typing.overload"
          ],
          "tgt": [
            "ThreadPoolExecutor",
            "ThreadPooled",
            "ThreadPooled()",
            "callable",
            "cls.__executor.shutdown",
            "functools.partial",
            "functools.wraps",
            "id",
            "isinstance",
            "loop.run_in_executor",
            "self._await_if_required",
            "self._get_loop",
            "self.configure",
            "self.executor.submit",
            "self.loop_getter",
            "super",
            "super().__call__",
            "super().__init__"
          ],
          "funcs": [
            [
              "configure",
              1126
            ],
            [
              "shutdown",
              1647
            ],
            [
              "executor",
              1832
            ],
            [
              "__init__",
              2130
            ],
            [
              "loop_getter",
              3420
            ],
            [
              "loop_getter_need_context",
              3767
            ],
            [
              "_get_loop",
              3944
            ],
            [
              "_get_function_wrapper",
              4382
            ],
            [
              "wrapper",
              5063
            ],
            [
              "__call__",
              5709
            ],
            [
              "__repr__",
              6287
            ],
            [
              "threadpooled",
              6651
            ],
            [
              "threadpooled",
              6996
            ],
            [
              "threadpooled",
              7412
            ],
            [
              "threadpooled",
              7678
            ],
            [
              "max_workers",
              9474
            ],
            [
              "is_shutdown",
              9628
            ]
          ],
          "metrics": {
            "ast": {
              "op.lor": 1,
              "max_depth": 14,
              "call_count": 23,
              "node_count": 1715,
              "member_count": 36,
              "max_array_len": 2,
              "op_density.lor": 0,
              "member_depth_max": 3
            },
            "file": {
              "size": 9775,
              "entropy": 4.73
            },
            "text": {
              "lines": 259,
              "top_char": 101,
              "max_ws_run": 9,
              "digit_ratio": 0,
              "space_count": 1964,
              "char_entropy": 4.73,
              "unique_chars": 76,
              "top_char_null": 0,
              "string_density": 0.19,
              "top_char_ratio": 0.07,
              "avg_line_length": 36.74,
              "max_line_length": 120,
              "empty_line_ratio": 0.18,
              "last_line_length": 45,
              "whitespace_ratio": 0.23,
              "identifier_density": 1.4,
              "line_length_stddev": 32.93,
              "normalized_string_count": 2.98,
              "repeated_char_sequences": 31,
              "suspicious_string_ratio": 0.15,
              "suspicious_comment_ratio": 0.07,
              "normalized_unique_identifiers": 7.61
            },
            "binds": {
              "count": 9
            },
            "binary": {
              "peak_region_bytes": 8751,
              "peak_region_entropy": 4.9
            },
            "source": {
              "class_count": 2,
              "function_count": 14
            },
            "imports": {
              "count": 6,
              "relative": 2,
              "stdlib_count": 4,
              "stdlib_ratio": 0.67,
              "relative_ratio": 0.33,
              "third_party_count": 2,
              "third_party_ratio": 0.33
            },
            "strings": {
              "sql": 2,
              "bytes": 3608,
              "count": 48,
              "avg_length": 75.17,
              "max_length": 817,
              "avg_entropy": 3.82,
              "entropy_stddev": 0.38,
              "embedded_code_candidates": 5
            },
            "comments": {
              "chars": 899,
              "count": 28,
              "empty": 2,
              "lines": 26,
              "base64": 1,
              "high_entropy": 1,
              "to_code_ratio": 0.11,
              "url_in_comments": 1
            },
            "functions": {
              "count": 16,
              "nested": 1,
              "density": 6.56,
              "avg_params": 2.47,
              "code_ratio": 0.76,
              "max_params": 5,
              "length_stddev": 8.1,
              "avg_name_length": 11.24,
              "avg_length_lines": 11.53,
              "max_length_lines": 29,
              "min_length_lines": 4,
              "avg_nesting_depth": 0.06,
              "max_nesting_depth": 1,
              "high_entropy_names": 1,
              "single_char_params": 5,
              "avg_param_name_length": 12.38
            },
            "identifiers": {
              "count": 363,
              "unique": 61,
              "avg_length": 8.95,
              "max_length": 26,
              "min_length": 2,
              "avg_entropy": 2.52,
              "reuse_ratio": 0.17,
              "length_stddev": 4.91,
              "high_entropy_count": 3,
              "high_entropy_ratio": 0.05,
              "all_lowercase_ratio": 0.85,
              "double_underscore_count": 7,
              "underscore_prefix_count": 17
            }
          }
        },
        "id": 5,
        "mol": "H(Po)",
        "path": "threaded-4.0.4-py3-none-any.whl!!threaded/_threadpooled.py",
        "pid": 0,
        "risk": 1,
        "sha": "515ee8533f14af93da217457c3d9fd6557b9aa944611e93cb3952834d55852af",
        "size": 9775,
        "traits": [
          {
            "id": "micro-behaviors/communications/url/reference::python-comment-url-reference",
            "conf": 0.9,
            "crit": 1,
            "desc": "Python comment contains a URL",
            "spans": [
              [
                248,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/create/workers::parallel-thread-executor",
            "conf": 0.88,
            "crit": 3,
            "desc": "Uses a thread or async task executor",
            "spans": [
              [
                1581,
                18
              ]
            ]
          }
        ],
        "type": "python"
      },
      {
        "ctx": [
          {
            "b": "DM)3hz/ZhBBy/qkiWeJ*Aa{HEb5Q?awG\u003ceVBzbYavpS}Wa$K{YwPz\u003caz/c:Wa#y]ae\u0026j+6b5?Wly?W%7wN]dRBrS+2h8^lBg+}3Ahy{4XxjUBXvr(]riX\u0026MEgaTQ",
            "ln": 0,
            "col": 1,
            "line": 1
          }
        ],
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 872,
              "entropy": 4.8
            },
            "binary": {
              "peak_region_bytes": 872,
              "peak_region_entropy": 4.8
            },
            "registry": {
              "age_days": 2512,
              "published_at": 1571242806,
              "releases_24h": 0,
              "releases_48h": 0,
              "is_deprecated": 0,
              "release_count": 39,
              "package_age_days": 3289,
              "first_published_at": 1504115237,
              "vulnerability_count": 0,
              "previous_published_at": 1556539645,
              "days_since_previous_release": 170
            }
          }
        },
        "id": 11,
        "path": "threaded@4.0.4.registry.json",
        "pid": 0,
        "rel": "registry",
        "role": "sidecar",
        "sha": "c29101f1b6cc702dfd82e86a231851a6718d4b37a1d9bbc90287af42afad0716",
        "size": 872,
        "traits": [
          {
            "id": "metadata/registry::established-package",
            "conf": 1.0,
            "crit": 1,
            "desc": "Package is at least one year old",
            "spans": [
              [
                0,
                0
              ]
            ]
          },
          {
            "id": "metadata/registry::many-releases",
            "conf": 1.0,
            "crit": 1,
            "desc": "Twenty or more releases",
            "spans": [
              [
                0,
                0
              ]
            ]
          }
        ],
        "type": "registry"
      }
    ],
    "rev": "01871",
    "v": "8"
  }
}