{
  "ml": {
    "v": "7",
    "eng": "2.8.0",
    "lvl": -1,
    "conf": 0,
    "mods": [
      {
        "cls": 0,
        "raw": 0.019465784,
        "rte": "az",
        "prob": 0.019465784
      },
      {
        "cls": 0,
        "raw": 0.038848598,
        "rte": "az/whl",
        "prob": 0.038848598
      }
    ],
    "prob": 0.019465784,
    "files": [
      {
        "id": 0,
        "lvl": -1,
        "conf": 0,
        "prob": 0.01946578361093998,
        "type": "whl"
      },
      {
        "id": 2,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000012348095879133325,
        "type": "python"
      },
      {
        "id": 4,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000010460615158081055,
        "type": "python"
      },
      {
        "id": 6,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009795029654924292,
        "type": "pkg_info"
      },
      {
        "id": 7,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013192494407121558,
        "type": "registry"
      }
    ],
    "version": "v18.18",
    "analyzed_at": "2026-09-11T06:31:14Z"
  },
  "path": "dirigent_plugin-0.9.5-py3-none-any.whl",
  "raw": {
    "files": [
      {
        "id": 0,
        "ctx": [
          {
            "b": "p!H([6Awas00000aPIGx0000000000000Mg003LzA+Pe$zGGl8y\u0026%x8zza*V0%xqr00\u0026\u0026g001ex\u0026.\u003ezVY8?%jrr@N88VP\u003crwnc6#xjU$5uVo?7xk8lpuTEI+x()Y?e]V8UMd}s*fC60cC)YFgT}Zm9ro=[sLq.mMb.Cy4S\u0026u",
            "ln": 0
          }
        ],
        "mol": "H₂(DbPo₂)Md(Pa)",
        "sha": "fe7927a74d7eda89f140e389e5b0b6d915ec7050454075b02cc465cad31eea64",
        "path": "dirigent_plugin-0.9.5-py3-none-any.whl",
        "risk": 4,
        "size": 18286,
        "type": "whl",
        "facts": {
          "metrics": {
            "whl": {
              "native_extension_count": 0
            },
            "file": {
              "size": 18286,
              "entropy": 7.91
            },
            "binary": {
              "peak_region_bytes": 17408,
              "peak_region_entropy": 7.84
            },
            "archive": {
              "file_count": 9,
              "member_count": 12,
              "script_count": 4,
              "zip_bomb_ratio": 4.26,
              "compressed_size": 16586,
              "directory_count": 3,
              "executable_count": 0,
              "extra_field_size": 0,
              "noise_file_count": 0,
              "compression.ratio": 0.29,
              "hidden_file_count": 0,
              "uncompressed_size": 56567,
              "crc_collision_count": 0,
              "entry_comment_count": 0,
              "max_filename_length": 48,
              "rtlo_filename_count": 0,
              "format.regular_count": 9,
              "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,
              "format.directory_count": 3,
              "security.symlink_count": 0,
              "unicode_filename_count": 0,
              "homoglyph_filename_count": 0,
              "security.encrypted_count": 0,
              "timing.mtime_unique_count": 1,
              "timing.mtime_unique_ratio": 0.08,
              "misplaced_executable_count": 0,
              "timing.mtime_dominant_count": 12,
              "timing.mtime_spread_seconds": 0,
              "timing.sentinel_mtime_count": 0,
              "security.world_writable_count": 0,
              "timing.mtime_dominant_fraction": 1,
              "compression.method_counts.stored": 3,
              "compression.method_counts.deflate": 9
            },
            "consistency": {
              "cloned_summary": 0,
              "name_typosquat": 0,
              "self_dependency": 0,
              "metadata_identity_mismatch": 0
            }
          }
        },
        "ident": {
          "name": {
            "value": "dirigent_plugin",
            "source": "whl.distribution",
            "verified": false
          },
          "trust": "unsigned",
          "version": {
            "value": "0.9.5",
            "source": "whl.version",
            "verified": false
          }
        },
        "traits": [
          {
            "id": "metadata/package/dependencies/declaration::pypi-http-client-dependency",
            "conf": 0.9,
            "crit": 3,
            "desc": "PyPI metadata declares an HTTP client dependency"
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-license-expression",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python license expression",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-license-file",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python package license file",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/process/create/shell/pipeline::pipeline-terminates-in-shell",
            "atk": "T1027,T1059.004",
            "mbc": "B0032",
            "conf": 0.8,
            "crit": 3,
            "desc": "Pipeline terminates in a shell",
            "from": [
              {
                "file": 2
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-core-metadata",
            "conf": 1.0,
            "crit": 1,
            "desc": "Declares Python Core Metadata version",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-requires-python",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares supported Python versions",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pypi-license-metadata",
            "conf": 0.94,
            "crit": 2,
            "desc": "PyPI package declares license information",
            "from": [
              {
                "off": 178,
                "file": 6,
                "line": 6
              }
            ],
            "uses": [
              1,
              2,
              4
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-requires-dist",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python runtime dependencies",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/data/serialize/json::json-loads-call",
            "conf": 0.9,
            "crit": 3,
            "desc": "Parses JSON data with Python",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/lang/source::automatically-generated-source-marker",
            "conf": 0.85,
            "crit": 1,
            "desc": "Generated source provenance marker",
            "from": [
              {
                "file": 2
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-version-field",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python package version",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pypi-runtime-metadata",
            "conf": 0.94,
            "crit": 2,
            "desc": "PyPI package declares Python and dependencies",
            "from": [
              {
                "off": 325,
                "file": 6,
                "line": 11
              }
            ],
            "uses": [
              4,
              5,
              7
            ]
          },
          {
            "id": "micro-behaviors/fs/read/file::python-pathlib-read-bytes",
            "atk": "T1005",
            "mbc": "E1005",
            "conf": 0.8,
            "crit": 2,
            "desc": "Read bytes via pathlib",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-name-field",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python package name",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/process/create/shell/command-string::embedded-sh-c-literal",
            "conf": 0.8,
            "crit": 3,
            "desc": "Embedded shell command string uses -c",
            "from": [
              {
                "file": 2
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-markdown-description",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Markdown package description",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/process/create/shell/pipeline::curl-pipe-shell-text",
            "atk": "T1059.004",
            "conf": 0.9,
            "crit": 3,
            "desc": "References a curl- or wget-to-shell pipeline",
            "from": [
              {
                "file": 2
              }
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-summary-field",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python package summary",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/process/create/shell/command-string::sh-c-exec",
            "conf": 0.8,
            "crit": 3,
            "desc": "Executes a shell command string with -c",
            "from": [
              {
                "file": 2
              }
            ],
            "uses": [
              14
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pypi-basic-metadata",
            "conf": 0.95,
            "crit": 2,
            "desc": "PyPI package declares name, version, summary",
            "from": [
              {
                "off": 44,
                "file": 6,
                "line": 3
              }
            ],
            "uses": [
              4,
              10,
              13,
              17
            ]
          }
        ]
      },
      {
        "ctx": [
          {
            "b": "a%FjgxK@q%x(W{2wO#PjvR/%)yANb9zGG]cv@%:OBzbkdz/fxpaz(4cB.\u003eRivixV9x(W-oAa9^eC{46xB.tAaaAg+0yHH\u003c!az$+4woe(nzY\u0026+hAbP=se*qF-3jpx=z/3R9vQ*J{ze:AlBrA\u003eolO6u*vSMTivpKy@wPRQ7wc#{?z/3Rbz!%l3v@#B6zGvBsvQ*J{ze:AlBrA\u003e\u003cD2vaZwO#71vruBdefEl1D2va-By/G3Bz(gJavxNNy**^?wH[@#vq{g1zF6q*A=k!qv@DmbwQ5rkx\u003c@i0ze:AlBrA\u003eUB98Chv@$1TD2vaVz/fVdCYVU*zEEf?ATDA0z/3Rcvru75x(dA7x(d*cA=-Bmvru75x(dAjaARsmwN]v*BytI*A=k!qwO#TcazCXiz/P}xq/)4GzGP!6w].*baAg+hxL.x(azCXiz/P}xp*[DV3tar%z6i}CAa%i5azCXiz/P}xl2H%0avx%NB8$w\u003cAX5tfA=l5rv@Dfmay!\u00263Bp8S2z/3RtB.Lwex(d*cA=-B7ry]N=3tBu@z/P}xxMOunCRPRrA=k!qyiarhB7n({zdaM3ze:AlBrB4\u003eA=2lblUH4vyH}I[w].*baAhQpvqZg3v\u003c2G5AbP=savoHTwLE8NwO-[ulVl\u003cOx\u003eG?Fv@%mAmRMBIwgO\u0026[wPQK=z/eG-xK#3?nmuyDy?mSrawcY[zDpgZB.99Dw[+*)wm6H*y?WA*Bz(gJaz(4cwO+Z%vqGT*vruBd",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "ATAc#iV{Zhn(FIXax8=-wO\u003e\u0026#w]zZbvrrS4xK$W?wPx*OvixJfwN]H+vru66Bzb98aAz4nB-Iwvaxix7wGVhgwO@S0aA?gfB.8Xpvruj8w[+*$aARpd3l}OOw]zZbvrs4ymQZaOwGVhgwO@S8BrCajwPF#iz/^JMvqYP#zddYjx(n0lwNP9(A:-W6wGV8kaAImfzEEu7BzbkdC42ifwGUYdazC.pvqGT*at2eLbru@UCWU97y\u003cvdExKM09u%).\u003cz/fSaxK#3?e\u003ef=1zddJNxK$W?wPxy",
            "ln": 884,
            "col": 24,
            "line": 23
          },
          {
            "b": "r8=p:p9qXxAW1*]vj=!htvxaffFbp(eNo?Ka{[U:v@bN{B09[(A=k$=y*?yac@Ukdmq^l+dlm!UarR^Ja%GM@CoyrpvR/%)yANb6vrlH7w[+*$ayMy8vqfL2A+c^ACw7Y2xDR2gaA}HcBn",
            "ln": 1396,
            "col": 14,
            "line": 36
          },
          {
            "b": "z/d0DeJ$pCA=M8slU{gLB2\u003cTJarR^Ja%Gx\u003cvrlH7w{CIczxJInv}xR3x(v(iCwhejaz#9uvR/%)yB%QDwN/B^x\u003e5o3zF%-nwN]B+iV@J+vqZd9z/P}xvqYP#hf:u*BAg/cB7]i6BsXK\u003eCZ7uKwOL^^By!#na%FirarR^HzddJ@xDQ(bA=k$V3lQDl",
            "ln": 2343,
            "col": 36,
            "line": 66
          },
          {
            "b": "wfu57y\u0026%qix(+zgvqYQ!wft#jayMylxK#0@aARJAAa9^dwIaq%arR^Hk{fSMz!0M9Bzb98aAzQxB0a\u003c#B7=WFv{\u0026W!z/cXaay/tcw[+)2B98CpzF789vriM1aAhvtvR/Q)aARpdayYe9v@0h%vqY$3BrCTyy\u003c6wjz/b[8arR!vBAnNyCwYC:vTf8rxK@rdx(dA7x(\u003eFswO2{9BzbkdB98CpzF7HyBzbkdwO#c{zE\u003c@7vriM1y\u0026T8}wb",
            "ln": 3063,
            "col": 42,
            "line": 85
          },
          {
            "b": "vpB4:azbUjz6i+mwGV8dvrrS2A=L(qwN(]$zxJvgCv+k%z/ozlAaa3dz^^feax9h3u%)F.zeAZ0wi7?Sy\u0026r-)3lQDlas8qMvrb^[B1RGAxk8p4EiJ6baA}KwxDQX\u003cA+e($z/e@\u003caAIaoaARJAu%[jvay/Lmy-)qjx(2zyxDRWBB7!@?azC)tvixS8wO=f9x(mV%v@#B6zvdHearUYovpJ$VvR/P#vTf8uxM4E9wPw]6vqWh:pG7jnBz\u0026pgaA}yaxM4*8e^.}darR!3vrcc$zF78lxK@q#x\u003eq9\u003eaAhEAxK#lcBzbkdyI[6my?mc\u0026wGV8kaA}HgA+cwnxK}",
            "ln": 3389,
            "col": 18,
            "line": 90
          },
          {
            "b": "az(4cwO-Gkz/](bayX[8A+eV\u0026ayPslBzbkdw[+*)wg8BvB7n({zda$rvqYP#Bzbxfaz\u003eLcyH}Jezfo]waAITkC{3*sC4(2ivR/P#Bz?HearR!IvqGT*vruj4zy#n6arR^Hra]?=z/fbeBzbxaxcp]gay]z4B0bBAvR/+1xDR2gaA}HcBrCWswGUP0",
            "ln": 4078,
            "col": 4,
            "line": 101
          },
          {
            "b": "BwlsSx\u003c\u003c$^AaI6MBy/Ysfl/6\u0026xK#0@B7ol8AcbF}ayPd#ayMy8z/PX4arR^HxjU%(A::63wftG8z/3RsxK@rcv}YB\u003cvixb(x([zsx(\u003eFaB0bKxB-H#6aAy[jxK#ibBzb92ayPslz/fbey?W=#aA7\u003cmBy/Yse^-ZzarR\u003cLa{[V1arR!luVQ44BAp!@auZ?}dgcz8arQ",
            "ln": 4314,
            "col": 49,
            "line": 105
          },
          {
            "b": "e*qF-3lQDlaAz4nB-Ivxw].*owO#N2BsmFsarR^HarR!AvqPM.arR^HarR^Hw]zYjzEEx[efFLswO+)1x(k5gz!9A}e]tJqwO+Z=x\u003eq9\u003eB1RfGwO(GpdgdguarR^HarUxgayPekc#0:pzGx]dzEWlazddE2wPxsAq!P-Uy/tB@x(mMjazbLjaz\u003eLcyH}Jex(k59x\u003eq9\u003ee]tfwvpS!*vjqKaarR^Q3jmbIy*?yaaw#=/z//LYvqYQ(wHG(NB7F6:wmYNaiTM#LarR\u003cLb2-5[x\u003c\u003e*(Dspo0wGUG0vqfN3z/cXaazL?7aAzQxzFr$",
            "ln": 5083,
            "col": 72,
            "line": 127
          },
          {
            "b": "A=l8tuUjs%zc}0/c$D+dvjqJ\u003c3s^)XB8@E5Byxn?wPJ0gBsoE:B7F6:wmYNaiTM#LarR\u003cLb3eC^BrC0mB98tvvp%c]vQS+ZwO#33yI[6mB0a[2z/{dAz/fbez^)D)v@@\u0026qx([3bB-X:DwNPa-zF78aBs[:Ya{[V1arR!HA+NMSB98BBjS)jdwO+)9ze0({y?mG%Bz9/(dgdguarU-tDsYbWx(n2njS)jdwO+)9xjTjWdgdguarUJtwnbT\u0026wN]dRBugJ",
            "ln": 9969,
            "col": 18,
            "line": 259
          },
          {
            "b": "zE\u003e\u003coarR^HarR^Ha%Fj0wPIv4x\u003c$S@Bzbkdz^)D)v@@\u00264BrC0mrz(ytaA8oyA+funA=90{z/fbeCw7M9azC{uwn=42az#ataz2!iB962Ua%EvparR^HarR^Ve?NFrarR^HwmYu}y?W%jd05%ow?k6EA+NMSB98BKat2=1l34r?v[y=NA::6dA:8E:vrtyUB9hp",
            "ln": 11882,
            "col": 54,
            "line": 322
          },
          {
            "b": "B95KDxK@r8vRPE:BAnNEzE^s0ayMx)qB@0IA+e\u0026%CPZ{Baz\u003eLev}YN]xcpR9xkzG}e*qF-3lQDlarR^Hatbo03jm)#arU9lD2vamwmYu}wmYN*By=\u003ewwO+%faA.ZsiV@G=AW-a.j%iQszE\u003e\u003coarR^HarR^Ha%FjewO(vewGV8dwGU]2ygQ)%ayPvmve",
            "ln": 12054,
            "col": 14,
            "line": 327
          },
          {
            "b": "ar\u00260NqE%]/y\u003c6wjvixC@zdNl2v@Dm5wN/*@z/d9GwmYm\u003eD2N\u003epwftq#wfu57y?WA*By!#9vp%1.zGx[xBzbkdxk8K2zxJ!mwmYNfa%FirarR^HarR^He?O:-3lQDlay]4}ao",
            "ln": 16177,
            "col": 8,
            "line": 453
          },
          {
            "b": "w[+)SefFCACSD%CBy/zUz/fVdCYUwSeJ$pNA=kz#qE%](y\u0026?YBarR^HarR^Ha%FjewPhNdBrCWswGV28zeTJcazL?7cVZzKByxo5j0nPUwmWu7w[CQ:Bs?9BwN##)zE:\u003c",
            "ln": 18971,
            "col": 60,
            "line": 521
          },
          {
            "b": "wN/*@z/eiZzE+dYlpig.3lQDlar\u00260Nk{g5NzdNl2v@=c\u003ewO#Q7vqE6bwN/U0wft/5ayMy5z/fVqx\u003c#jbwN({0x(mD7Cw7]owGV59v@=d5azbt0y?dPfBzbkdB7GxnwPw]lwN]jVBAo5Ua%Ev3arR^Hx\u003efmElU{gLB5(Z\u0026txs[bt).X%arUfjzF0P}",
            "ln": 23789,
            "col": 11,
            "line": 639
          },
          {
            "b": "arR^HarR!lA+flkx(W=(B-7]kB.8%BvR/%)yANt4a$K\u003cvdKYjOe]$#yv\u003eIFaazbLjaA8iwx(k5mwO+%hz/xodvruBdB15T.dKYvHe]$#yv\u003eIFaazbLjaAI9px(k5mwO+%hB7Glgz/P[Ft}3a6arR^HarR!lA+flkx(W=(B-7]kB.8%BB98tvvp%c]B7n({zdK[xax@q-v@2T[wg?}kxK#3(azbLjayX+?yH}x]azCZoB7Gf1e]#bMA:-P(uT^CNyH}x]B6Qj4arR^HarR^HuVGZ$B.L(cuV*m2ADL?vb5Rsvx\u003ez6\u003cAV/7ba$K\u003cvzF%Shw[+*%e[[\u0026sw]zYjzF%Shw[+*%azCZoB7Gf1e]CPHx\u003ez6\u003cA=UIn3lQDlarR^Hayxe2ADL#owNxN$x(Oobc)AetzF\u003c2}BzkVhazUXewftO%a$K\u003cvv@Dm5wN/*@z/dgwwftG5AV!\u003egzF\u003c2}BzkVhazCZoB7Gf1e[n*qzE)s1x(v(@yIvV%B6Qj4arR^HarR^HuVGZ$B.L(cuV*m2ADL?vb4++lzddJgefF+yB95*KwO+%hw]zZbvruMtdgdguarR^HarUYoBAIRwaAIag",
            "ln": 25705,
            "col": 2,
            "line": 682
          },
          {
            "b": "A+e($B97#lB1OTXa{]CnarR^HarUYoBAIRwax{rzz/xodvruBde]$#yv\u003eIFaazbLjaA8jgA::6dAV/7laAIagw?F1vwPzj3z/P[FefDz\u003cB7Glgz/NEKAaJJix\u003eet#z/M$wwO#NcAV/7laAIagw?FdozGx-pB17x43jprPw/$D3wPq\u003cbA+eQ2zFs9kwHIw6vR6vpaAITBefGaAy\u0026%rgiV@lMB97ScBAgUoat2=1ph+2YiTM#LarR\u003cLb2R\u0026-B7DFrxK#67ve",
            "ln": 26281,
            "col": 64,
            "line": 690
          },
          {
            "b": "w)]gXefFCvy\u00260V)By!#9x(k5gwPzA{wg?OrwO(Gpdlm!UarR^HarR^HarR!pz!%l3v@#o)e[GoHwO#3bxjVf[BAzKKv@DmbA+P09BzkVhefG1RA+n-\u0026wHP5narR^Hw]zZbvruMKay]g@Bx-*dAX5t5z/PY6Bvf.Mv@2u)jS]913lQDlayxe2ADL#owNxN$x(Oobc)AnwA=2lba$K\u003cvzEEx[azbLjay/tcBAh88B-.tozxJUhay/tcBAh6",
            "ln": 27125,
            "col": 16,
            "line": 713
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "super.__init__"
            ],
            [
              "",
              "super"
            ],
            [
              "",
              "handler"
            ],
            [
              "",
              "frozenset"
            ],
            [
              "",
              "model.model_fields.items"
            ],
            [
              "",
              "any"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "ConfigDict"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "cast"
            ],
            [
              "",
              "fields.get"
            ],
            [
              "",
              "fields.get"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "block_id.split"
            ],
            [
              "",
              "ConfigDict"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "model_validator"
            ],
            [
              "",
              "_group_from_id"
            ],
            [
              "",
              "ConfigDict"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "timedelta"
            ],
            [
              "",
              "timedelta"
            ],
            [
              "",
              "model_validator"
            ],
            [
              "",
              "_group_from_id"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "super.__init__"
            ],
            [
              "",
              "super"
            ],
            [
              "",
              "ConfigDict"
            ],
            [
              "",
              "ConfigDict"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "min"
            ],
            [
              "",
              "NotImplementedError"
            ],
            [
              "",
              "type"
            ],
            [
              "",
              "NotImplementedError"
            ],
            [
              "",
              "type"
            ],
            [
              "",
              "classify_default"
            ],
            [
              "",
              "classify_default"
            ],
            [
              "",
              "ConfigDict"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "field_validator"
            ],
            [
              "",
              "ValueError"
            ],
            [
              "",
              "model_validator"
            ],
            [
              "",
              "_require_unique"
            ],
            [
              "",
              "_require_unique"
            ],
            [
              "",
              "_require_unique"
            ],
            [
              "",
              "_require_unique"
            ],
            [
              "",
              "_require_unique"
            ],
            [
              "",
              "list"
            ],
            [
              "",
              "set"
            ],
            [
              "",
              "ValueError"
            ],
            [
              "",
              "seen.add"
            ],
            [
              "",
              "merged.items"
            ],
            [
              "",
              "collected.extend"
            ],
            [
              "",
              "getattr"
            ],
            [
              "",
              "_require_unique"
            ],
            [
              "",
              "formats.update"
            ],
            [
              "",
              "Contribution"
            ],
            [
              "",
              "ABC"
            ],
            [
              "",
              "API_VERSION"
            ],
            [
              "",
              "AbstractAsyncContextManager"
            ],
            [
              "",
              "Any"
            ],
            [
              "",
              "AsyncGenerator"
            ],
            [
              "",
              "AsyncIterator"
            ],
            [
              "",
              "BaseModel"
            ],
            [
              "",
              "Callable"
            ],
            [
              "",
              "ClassVar"
            ],
            [
              "",
              "ConfigDict"
            ],
            [
              "",
              "CoreSchema"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "FormatChecker"
            ],
            [
              "",
              "GetJsonSchemaHandler"
            ],
            [
              "",
              "HealthReport"
            ],
            [
              "",
              "JsonMap"
            ],
            [
              "",
              "JsonSchemaValue"
            ],
            [
              "",
              "JsonValue"
            ],
            [
              "",
              "Mapping"
            ],
            [
              "",
              "Path"
            ],
            [
              "",
              "Protocol"
            ],
            [
              "",
              "SHELL_MEDIA_TYPE"
            ],
            [
              "",
              "StrEnum"
            ],
            [
              "",
              "UUID"
            ],
            [
              "",
              "abc"
            ],
            [
              "",
              "abstractmethod"
            ],
            [
              "",
              "cast"
            ],
            [
              "",
              "collections.abc"
            ],
            [
              "",
              "contextlib"
            ],
            [
              "",
              "datetime"
            ],
            [
              "",
              "dirigent_common"
            ],
            [
              "",
              "enum"
            ],
            [
              "",
              "field_validator"
            ],
            [
              "",
              "httpx2"
            ],
            [
              "",
              "jsonschema"
            ],
            [
              "",
              "model_validator"
            ],
            [
              "",
              "pathlib"
            ],
            [
              "",
              "pydantic"
            ],
            [
              "",
              "pydantic.json_schema"
            ],
            [
              "",
              "pydantic_core"
            ],
            [
              "",
              "timedelta"
            ],
            [
              "",
              "typing"
            ],
            [
              "",
              "uuid"
            ]
          ],
          "mbr": [
            "ErrorClass.REJECTED",
            "ErrorClass.TRANSIENT",
            "ErrorClass.UNKNOWN",
            "RunState.CANCELLED",
            "RunState.COMPLETED_WITH_ERRORS",
            "RunState.FAILED",
            "RunState.SUCCEEDED",
            "backend.scheme",
            "block_id.split",
            "collected.extend",
            "connection.id",
            "contribution.formats",
            "error.error_class",
            "error.response",
            "error.response.status_code",
            "field.metadata",
            "fields.get",
            "formats.update",
            "httpx2.AsyncClient",
            "merged.items",
            "model.model_fields",
            "model.model_fields.items",
            "notifier.id",
            "op.spec",
            "op.spec.id",
            "operator.spec",
            "operator.spec.id",
            "published.contentMediaType",
            "se.spec",
            "se.spec.id",
            "seen.add",
            "self.connection_kinds",
            "self.error_class",
            "self.finished_steps",
            "self.formats",
            "self.message",
            "self.notifiers",
            "self.operators",
            "self.run_id",
            "self.sensors",
            "self.storage_backends",
            "self.total_steps",
            "sensor.spec",
            "sensor.spec.id",
            "super.__init__",
            "type.__name__"
          ],
          "tgt": [
            "ConfigDict",
            "Contribution",
            "Field",
            "NotImplementedError",
            "ValueError",
            "_group_from_id",
            "_require_unique",
            "any",
            "block_id.split",
            "cast",
            "classify_default",
            "collected.extend",
            "field_validator",
            "fields.get",
            "formats.update",
            "frozenset",
            "getattr",
            "handler",
            "isinstance",
            "list",
            "merged.items",
            "min",
            "model.model_fields.items",
            "model_validator",
            "seen.add",
            "set",
            "super",
            "super.__init__",
            "timedelta",
            "type"
          ],
          "funcs": [
            [
              "__init__",
              1913
            ],
            [
              "__str__",
              2203
            ],
            [
              "classify_default",
              2308
            ],
            [
              "__repr__",
              4473
            ],
            [
              "__get_pydantic_json_schema__",
              4591
            ],
            [
              "shell_string_fields",
              4945
            ],
            [
              "_group_from_id",
              8048
            ],
            [
              "_shelve",
              9158
            ],
            [
              "_shelve",
              9860
            ],
            [
              "write",
              10677
            ],
            [
              "debug",
              10932
            ],
            [
              "info",
              11051
            ],
            [
              "warning",
              11169
            ],
            [
              "error",
              11292
            ],
            [
              "open_read",
              11528
            ],
            [
              "open_write",
              11695
            ],
            [
              "stat",
              11833
            ],
            [
              "list",
              11986
            ],
            [
              "delete",
              12128
            ],
            [
              "settled",
              12632
            ],
            [
              "__init__",
              12956
            ],
            [
              "skipped",
              13488
            ],
            [
              "progress",
              13989
            ],
            [
              "start",
              14352
            ],
            [
              "snapshot",
              14891
            ],
            [
              "cancel",
              15063
            ],
            [
              "connection",
              16093
            ],
            [
              "storage_connection",
              16278
            ],
            [
              "http",
              16759
            ],
            [
              "schema",
              16944
            ],
            [
              "format_checker",
              17103
            ],
            [
              "storage",
              17507
            ],
            [
              "scratch",
              17643
            ],
            [
              "work",
              17775
            ],
            [
              "runs",
              18284
            ],
            [
              "execute",
              18725
            ],
            [
              "probe",
              18916
            ],
            [
              "fetch",
              19528
            ],
            [
              "cancel",
              20107
            ],
            [
              "check_config",
              20316
            ],
            [
              "classify_error",
              20653
            ],
            [
              "poke",
              21147
            ],
            [
              "check_config",
              21327
            ],
            [
              "classify_error",
              21664
            ],
            [
              "configured",
              22019
            ],
            [
              "open_read",
              22449
            ],
            [
              "open_write",
              22856
            ],
            [
              "stat",
              23014
            ],
            [
              "list",
              23187
            ],
            [
              "delete",
              23349
            ],
            [
              "send",
              23631
            ],
            [
              "check",
              23996
            ],
            [
              "_check_api_version",
              25255
            ],
            [
              "_check_ids",
              25585
            ],
            [
              "block_ids",
              26184
            ],
            [
              "_require_unique",
              26411
            ],
            [
              "merge_contributions",
              26721
            ]
          ],
          "metrics": {
            "ast": {
              "op.bor": 24,
              "op.div": 1,
              "op.lor": 1,
              "max_depth": 14,
              "call_count": 77,
              "node_count": 4774,
              "member_count": 46,
              "max_array_len": 4,
              "op_density.bor": 0.01,
              "op_density.div": 0,
              "op_density.lor": 0,
              "member_depth_max": 3
            },
            "file": {
              "size": 27527,
              "entropy": 4.72
            },
            "text": {
              "lines": 719,
              "top_char": 101,
              "max_ws_run": 1,
              "digit_ratio": 0,
              "space_count": 5578,
              "char_entropy": 4.72,
              "unique_chars": 86,
              "top_char_null": 0,
              "string_density": 0.21,
              "top_char_ratio": 0.08,
              "avg_line_length": 37.29,
              "max_line_length": 116,
              "empty_line_ratio": 0.26,
              "last_line_length": 75,
              "whitespace_ratio": 0.23,
              "identifier_density": 1.37,
              "line_length_stddev": 33.76,
              "encoded_string_ratio": 0.01,
              "normalized_string_count": 5.56,
              "repeated_char_sequences": 13,
              "suspicious_string_ratio": 0.12,
              "suspicious_identifier_ratio": 0,
              "normalized_unique_identifiers": 27.82
            },
            "binds": {
              "count": 77
            },
            "binary": {
              "peak_region_bytes": 7168,
              "peak_region_entropy": 5.2
            },
            "source": {
              "class_count": 26,
              "function_count": 47
            },
            "imports": {
              "count": 43,
              "stdlib_count": 7,
              "stdlib_ratio": 0.16,
              "third_party_count": 36,
              "third_party_ratio": 0.84
            },
            "strings": {
              "sql": 7,
              "bytes": 13439,
              "count": 149,
              "shell": 8,
              "very_long": 1,
              "avg_length": 90.19,
              "max_length": 1419,
              "avg_entropy": 3.68,
              "empty_count": 3,
              "entropy_stddev": 0.82,
              "base64_candidates": 1,
              "embedded_code_candidates": 3
            },
            "comments": {
              "chars": 414,
              "count": 6,
              "lines": 6,
              "to_code_ratio": 0.01
            },
            "functions": {
              "count": 73,
              "density": 7.93,
              "avg_params": 2.12,
              "code_ratio": 0.4,
              "max_params": 5,
              "length_stddev": 3.35,
              "avg_name_length": 8.74,
              "avg_length_lines": 5.02,
              "max_length_lines": 17,
              "min_length_lines": 3,
              "high_entropy_names": 3,
              "single_char_params": 3,
              "avg_param_name_length": 5.06
            },
            "identifiers": {
              "count": 984,
              "unique": 264,
              "avg_length": 8.52,
              "max_length": 28,
              "min_length": 1,
              "avg_entropy": 2.57,
              "reuse_ratio": 0.27,
              "length_stddev": 4.46,
              "has_digit_ratio": 0,
              "sequential_names": 1,
              "single_char_count": 1,
              "single_char_ratio": 0,
              "high_entropy_count": 15,
              "high_entropy_ratio": 0.06,
              "all_lowercase_ratio": 0.7,
              "all_uppercase_ratio": 0.07,
              "numeric_suffix_count": 1,
              "double_underscore_count": 6,
              "underscore_prefix_count": 11
            }
          }
        },
        "id": 2,
        "mol": "K(Li)H₂(OsPo₂)",
        "path": "dirigent_plugin-0.9.5-py3-none-any.whl!!dirigent_plugin/blocks.py",
        "pid": 0,
        "risk": 3,
        "sha": "ac7e42b3188ab532486f7dd5ae981b50f9761ec71029d5d11c8d2b1295f0a40a",
        "size": 27527,
        "traits": [
          {
            "id": "metadata/lang/generated::automatically-generated-source-marker",
            "conf": 0.85,
            "crit": 2,
            "desc": "Generated source provenance marker",
            "spans": [
              [
                4362,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                3,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                1012,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "spans": [
              [
                932,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                5131,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                2391,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                4126,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/os/api-resolution/dynamic::python-getattr-call",
            "conf": 0.75,
            "crit": 3,
            "desc": "Python getattr dynamic attribute lookup",
            "spans": [
              [
                27189,
                7
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/create/shell/command-string::embedded-sh-c-literal",
            "conf": 0.8,
            "crit": 3,
            "desc": "Embedded shell command string uses -c",
            "spans": [
              [
                3127,
                5
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/create/shell/pipeline::pipeline-terminates-in-shell",
            "atk": "T1027,T1059.004",
            "mbc": "B0032",
            "conf": 0.8,
            "crit": 3,
            "desc": "Pipeline terminates in a shell",
            "spans": [
              [
                3523,
                4
              ]
            ]
          },
          {
            "id": "well-known/lib/development/python-tooling::python-storage-backend-interface",
            "conf": 0.92,
            "crit": 3,
            "desc": "Python storage backend interface",
            "spans": [
              [
                10033,
                15
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/create/shell/pipeline::curl-pipe-shell-text",
            "atk": "T1059.004",
            "conf": 0.9,
            "crit": 3,
            "desc": "References a curl- or wget-to-shell pipeline",
            "spans": [
              [
                3510,
                17
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/create/shell/command-string::sh-c-exec",
            "conf": 0.8,
            "crit": 3,
            "desc": "Executes a shell command string with -c",
            "uses": [
              8
            ],
            "spans": [
              [
                3127,
                5
              ]
            ]
          }
        ],
        "type": "python"
      },
      {
        "ctx": [
          {
            "b": "a%FjgxK@rdA:-\u003cbw]zZbaA?spvJYo6vqPN%iV@uUwGUG3zGG]cv@@\u0026jwPw]pwPzlhaA8deaz2C6x(mG8AaK5jyIvV%e^.}KaARTjzGxAdA+#}dy\u0026r*0cVZzAwftPcayFOtC4CY6j$X%kx(mDBu%\u003ePfra]?=C4CY6az$R8wPF#oxK@q@z/fVqvpKy4vqYP#BzbkdB7Gh%zGGP53ug37ze165aARpdazbU5zdK\u00263zF0*cv}xZyaARpdazUXewft+#zdN=hBzbkdwO#c{zE\u003c@jxKM09yH}6@B0bgse*9S4B-FQFwPzm3az++nwGUU$A+dosu%[7%vqZc#z/PY5u[rBezxJwdvRG}8vrcSoCw7]hwI57ly\u0026%qiA+fr9vq]^2wo8ycwO@S1C{3JrAb]\u003c",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "w[=76wPzf^efGdIz/YFjz/{evB-X:uB0a)lB9g@kwPP5kw/$/fB0bgmAclmBCwhejaARpd3t13+zdNQbB0bQyzeS%0w[+*!e^.}+xK@q#A:-/@aA8EwB0b4qwPA6rxLzu%ayPdgwO#c{zE\u003c@mz/](baA8vnwPA0eB7DFmwPhi?BugK*xK#i}aARpd",
            "ln": 461,
            "col": 33,
            "line": 7
          },
          {
            "b": "AaJJ[w[+-$Bz\u0026poBs)[Aa%Ev3x(d*cA=-BsB8L}6w].*bayO.?azCXiz/P}xk%^{\u0026ayO-2BAg/1BzUPhxM4z*w].*baAR)Fx(mMax(d*cA=-A\u0026zH0=QlU{gLB5(Z\u0026efEz@zEEujay!\u00263Bp5v!A=k!qAcU#5zGGP5azCXiz/P}xlsB}Do(BMNy+cX@z/ff3xgcDzBsXL7x\u003eq9\u003eefEMaz/eP:y\u0026%quaz(4cwO+Z%vqGT*vruBd3jpx=z/3Rcx(W{2wO#P%v@Dj3z/cXize:AlBrA[^z!0MSz!9z",
            "ln": 854,
            "col": 43,
            "line": 13
          },
          {
            "b": "aA}mnazkziwO%KKvixJfz!B90z6iLmay!?$zF%Rtv@Dj6x(4uiaA8oyvix-4y\u0026%qix(\u003eFcvqY$3BrCQnB7/03wIaq%arR^HqEKoXwN(])C{3Kkaz2C6x(mG8vqYP#BAIQ",
            "ln": 1782,
            "col": 33,
            "line": 46
          },
          {
            "b": "B.(dxCw?IzxBk\u003e8arU-lC4\u003e\u0026bazC)tz/fbeBzbkdzE[6maAIToA3fgjvpTB4w].*baAITyA:-P(e*qF-3jm)#arUJfCWCf5Aclm-ax902wGTbUo*I(*nLS8Zr9@3ZmNp3Fq#",
            "ln": 3014,
            "col": 78,
            "line": 75
          },
          {
            "b": "aARpdaAz4mB.(dxCvtLnCxdztBy/tvaA}HgzxJs{B76l6uVZi]u)5)0yH}30w]zYjx(\u003e%Ka%Ev3arR^Hz/{evB-Z#1D30RsiV@cOBrC@Nph+2YauZ\u0026xz/fa[arR^Ha%Fj4z*9svvqZukvTi6bB0bWrA+cwqA+PSqwO@SjxK#i}e*qF-3jmbIy*?w",
            "ln": 4228,
            "col": 13,
            "line": 106
          },
          {
            "b": "azbUjzc{)[A=2lbiV@G=AV^H/mRMBIwgg(5x\u003c(6Cb4+\u003elz6yINze0({y?mG%Bz9/(dgdguarR\u003cLb2\u0026k!azbLjzddJeBzbkdx(m)jBrCpsazCZAaz$R8wN(](B0bNrwGQ",
            "ln": 4686,
            "col": 4,
            "line": 118
          },
          {
            "b": "txs[bt).X%arR\u003cLb2\u0026k!aA8deaz++fwGV8dwGUF\u003eByx07xcqnez*cmBw]zYjBzbxfaz2C6x(mGma%Fir3lQDlaz+$avqGpZCX7xcBzkVhiV{!avrlG\u003cvrbNYz/oC$auZ\u0026pvqH0@3lQDlar\u00260Ns7(e!xK#ibBzbxfaz2C6x(mG8wQ4=@B-.hoay/t2",
            "ln": 6064,
            "col": 22,
            "line": 153
          },
          {
            "b": "z/PS8AX5tSxLy%\u0026aAhEBB0bgsayX[}x(mD7BzbkdvqG:#CwH#mBs[:Ya{[V1arR!pz/ff3xj2H]wmYNravx%NB8$w\u003cA:9ThAaJluvrl0Oz!9A}u0ONoaw^8%xl4A$lVl\u003cOx-",
            "ln": 6222,
            "col": 50,
            "line": 157
          },
          {
            "b": "wO:yIlU{gLB5(Z\u0026txCdfwM}GfB7F6:wmYN.t{8oMrb#z+B7Puhzbkp@Aclmf3lQDlay]4}aywF\u0026zFsi1B9g@4y*?yauTCi\u003ey\u0026.cIdK]jTvrc14iV{.aC{%\u003c/j%iQszE\u003e\u003coarR^HarR^Ha%Fj0wPzHdwGV8dwGUF\u003eByx07xcp=6BAhT/aARpdazCvex(+z8v03A$zGxAdA=0A\u003eyIvV%k44:",
            "ln": 6343,
            "col": 15,
            "line": 160
          },
          {
            "b": "efFCACQS$xarR^HarR!GA^oXMarR^HarR^HarR^HA+frmy\u0026*^.aAIagw?EIhAbo!FB7Gf1e[n*pAa%c1c$vgkw[+)gAb](fA:-/lefGaAy\u0026%qr3lQDlarR^Haz2!cwPh-l",
            "ln": 7487,
            "col": 41,
            "line": 187
          },
          {
            "b": "arR^HCxdztBy/tjjS[fSvqf*auW3K8By=\u003egBA/tVv@Dl%x\u003eG5tvrMi?Bz\u0026YMyiarhe[x9wAc0BFwPJ0gBsXLQwPh6#vruBdB3g]}efVR/b03[%dk2gHv@C)?c[cOLarR^HarR^HA+funA=910A:-\u003cbw]zZbpJZ+#B-Y3IB-.OBByffhx*2%AzF0P}e]$DAwNt",
            "ln": 7791,
            "col": 5,
            "line": 194
          },
          {
            "b": "wN(]DaAIagw?ECcvq]N+vpJ$0v@Dj6x(4u\u003eefFIuwO(0@BAn(rarR^HarR^HvrlH3A=-BuwO@]kvq{f%wgnS:jS[MLzyx7jwO(0@BAn(ZasENtarR^HarR^HarR!sb71xxy?tqvAaJJix\u003ehSmAb](cBZ[#[aBv{ozyxvgAbYx0dsAsIy?mD{zGG}xw].*baBv{ozyx7jwO(0@BAn)VefFzxwNPv*zF78lxK@r6vq)udA=k/eB7DK5arR^HarR^HdgdguarR^HarUxgay/tcw[+)gB76l6uVZiex(+y(z/fbE3lQDlarR^",
            "ln": 11151,
            "col": 13,
            "line": 268
          },
          {
            "b": "3lQDlaARp9zxJvgBAhICxLzu}B8@EzB.bSox(v(iBzbkdw].r%wGVhnB.\u003eOhxKM6}aARJAwmYm+wmWw23lQDlavf(/wO#c{zE\u003c@jz/]M6wPF#izY?OIr8ta*zF{Ufx(4u6z/{eyx\u003eg=$B98tvvp%d5ayPd#az#atxLzu%azCZoBzbkdwO#W9A=k\u0026j",
            "ln": 13249,
            "col": 93,
            "line": 308
          },
          {
            "b": "arR^)ay/tcC4CYowPw]cB0a)lv@C)?v\u003en:uz/^agaz+F7xlvS}wJy@QxK#i}azC)tzF{UpA=kPhvqNRtl2E/RzF9W3wGU(0zdN=hx([zsyIvV%ed9HxarUiav@bN]wPF#oxK}",
            "ln": 17128,
            "col": 2,
            "line": 395
          },
          {
            "b": "vrlGMmriA!AZKUKB8@%imm{0or7fh73lQDlarR^HaAIEzA:@V6jS[fSvqf*auVGZ^wm5!\u003eBy/Iwv@Dl%x\u003eF$tv@#@A3lQDlarR^HaARTHiTM#LarR^HarR^HarUSzz!a02wN(]DaAIagw?EOizGYPiBsqiGB-H#6efG1LB-H#6uUjj%zddJHv@Dl%x\u003eG5gA=g",
            "ln": 19263,
            "col": 53,
            "line": 441
          },
          {
            "b": "A=2lbefG4yA+w%9uUjj%zddJnazCZoB7Gf1e]UlkA=TnGarR^HarR^HarR^HA+funA=90{z/fa[arR^HarR^Hy?W%jwN(]Dar\u0026uVa$^RGx(kthb71lCwQLXyzY\u003cyBBzblaEiG!Cz/M$szE\u003evwz//V7AV/7laAIEwBy!#hB7Gf1e]UlkA=SVU3lQDlarR^HaAIV",
            "ln": 20391,
            "col": 22,
            "line": 461
          },
          {
            "b": "AclnfB-IgEay/tcw[+)gzddV@x(m)jBsvLtarR!GA^oXMarR^HarR^HAa9^dwN)?An][]*r://!wGTbUyiarhe]kDmwofervr(WcvpQ!]arR^HwQ4Y@Ac9j6vqH6$mriA!AV!!iaz2Olz/N(CarR^HarR^HA:-W6wGTrQz!0MLvqfL2A+cTaarR^HarR^HarR^Hw*hOiz/ff3xd^[oAclnfB-IhAay]z4B0bvsBrCmny?aUXq+{dHaBvWuA=g",
            "ln": 21854,
            "col": 49,
            "line": 496
          },
          {
            "b": "n\u003c#9DmmmF9arR^HarR^QazbUjz6izgA=k$9arR^HA+funA=91svrcB2wc@UJvrlZiv\u003c2q[w/$D3wNPaRvTi6bB0$KpzF0P}iV{!dzGYPiBvf$:w[+)eay/IriV}vywPg1PzGGDmBsws:j%jrWBy/IO3lQDlar\u00260NqE%]/y\u003c6wjvix5#wmYl[wO#c{zE\u003ehpazCY",
            "ln": 22086,
            "col": 89,
            "line": 501
          },
          {
            "b": "v}Z15yJzJVy?W%jtvI(1wPIc1jS)%m3lQDlaARKzvqE5HatscBarR!nB9RUkazbLjay/8czFHwezxJChCRj5Vz/Po0wId[uwO$\u003c}wNP9$B-IgBiTM#LarR^HarU=AByw#dd)k1\u003ewO@]axMXiddgdguarR^HarUxgaARKzvqE5Iaz++ex((xyarR^HarR^HarR^HA:X",
            "ln": 22767,
            "col": 5,
            "line": 519
          },
          {
            "b": "diJ5uaAImmyDq!BarR^HarR!sz/M$wByxiiazCZoA:-\u0026#wHGk-az+Rbc#-Quy\u0026r-)dj=Penl5zTuQv){mn\u003eS@3lQDlarR^HarR^HaA}\u003cuBAz8ias/O$vrVc]BrCTszFH\u003eGA+PSbc#-Quy\u0026r-)txs){A=-A+aAITkA=-AOavwX1pd[}XsYv**t}3a6arR!pBA/AOz!yXpzF0/nb6m\u003clzGxAdA+#}twPJ0gBrCTkC4ChdefG7Qx*3PVx!gxoD30Rs",
            "ln": 23429,
            "col": 42,
            "line": 536
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "ConfigDict"
            ],
            [
              "",
              "model_validator"
            ],
            [
              "",
              "ValueError"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "super().__init_subclass__"
            ],
            [
              "",
              "super"
            ],
            [
              "",
              "cls.__dict__.get"
            ],
            [
              "",
              "OperatorSpec"
            ],
            [
              "",
              "read_value"
            ],
            [
              "",
              "self.apply"
            ],
            [
              "",
              "self.compile"
            ],
            [
              "",
              "BlockFailure"
            ],
            [
              "",
              "str"
            ],
            [
              "",
              "TransformOutput"
            ],
            [
              "",
              "write"
            ],
            [
              "",
              "json.dumps(result, separators=(\",\", \":\")).encode"
            ],
            [
              "",
              "json.dumps"
            ],
            [
              "",
              "TransformOutput"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "self.compile"
            ],
            [
              "",
              "str"
            ],
            [
              "",
              "super().__init_subclass__"
            ],
            [
              "",
              "super"
            ],
            [
              "",
              "cls.__dict__.get"
            ],
            [
              "",
              "OperatorSpec"
            ],
            [
              "",
              "elements"
            ],
            [
              "",
              "read_value"
            ],
            [
              "",
              "self.compile"
            ],
            [
              "",
              "BlockFailure"
            ],
            [
              "",
              "str"
            ],
            [
              "",
              "self._map_each"
            ],
            [
              "",
              "len"
            ],
            [
              "",
              "len"
            ],
            [
              "",
              "len"
            ],
            [
              "",
              "len"
            ],
            [
              "",
              "TransformOutput"
            ],
            [
              "",
              "write"
            ],
            [
              "",
              "json.dumps(mapped, separators=(\",\", \":\")).encode"
            ],
            [
              "",
              "json.dumps"
            ],
            [
              "",
              "TransformOutput"
            ],
            [
              "",
              "enumerate"
            ],
            [
              "",
              "mapped.append"
            ],
            [
              "",
              "self.apply"
            ],
            [
              "",
              "BlockFailure"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "self.compile"
            ],
            [
              "",
              "str"
            ],
            [
              "",
              "super().__init_subclass__"
            ],
            [
              "",
              "super"
            ],
            [
              "",
              "cls.__dict__.get"
            ],
            [
              "",
              "OperatorSpec"
            ],
            [
              "",
              "elements"
            ],
            [
              "",
              "read_value"
            ],
            [
              "",
              "self.compile"
            ],
            [
              "",
              "BlockFailure"
            ],
            [
              "",
              "str"
            ],
            [
              "",
              "enumerate"
            ],
            [
              "",
              "self._verdict"
            ],
            [
              "",
              "TransformOutput"
            ],
            [
              "",
              "write"
            ],
            [
              "",
              "json.dumps(kept, separators=(\",\", \":\")).encode"
            ],
            [
              "",
              "json.dumps"
            ],
            [
              "",
              "TransformOutput"
            ],
            [
              "",
              "cast"
            ],
            [
              "",
              "self.keep"
            ],
            [
              "",
              "BlockFailure"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "BlockFailure"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "self.compile"
            ],
            [
              "",
              "str"
            ],
            [
              "",
              "super().__init_subclass__"
            ],
            [
              "",
              "super"
            ],
            [
              "",
              "cls.__dict__.get"
            ],
            [
              "",
              "OperatorSpec"
            ],
            [
              "",
              "self._pair_refusal"
            ],
            [
              "",
              "BlockFailure"
            ],
            [
              "",
              "read_bytes"
            ],
            [
              "",
              "self.convert"
            ],
            [
              "",
              "BlockFailure"
            ],
            [
              "",
              "str"
            ],
            [
              "",
              "ConvertOutput"
            ],
            [
              "",
              "produced.decode"
            ],
            [
              "",
              "write"
            ],
            [
              "",
              "ConvertOutput"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "self._pair_refusal"
            ],
            [
              "",
              "\", \".join"
            ],
            [
              "",
              "sorted"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "BlockFailure"
            ],
            [
              "",
              "named"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "isinstance"
            ],
            [
              "",
              "read_bounded"
            ],
            [
              "",
              "json.loads"
            ],
            [
              "",
              "BlockFailure"
            ],
            [
              "",
              "(config.input or \"\").encode"
            ],
            [
              "",
              "read_bounded"
            ],
            [
              "",
              "ctx.storage.open_read"
            ],
            [
              "",
              "len"
            ],
            [
              "",
              "BlockFailure"
            ],
            [
              "",
              "chunks.append"
            ],
            [
              "",
              "b\"\".join"
            ],
            [
              "",
              "ctx.storage.open_write"
            ],
            [
              "",
              "range"
            ],
            [
              "",
              "len"
            ],
            [
              "",
              "sink.write"
            ],
            [
              "",
              "ctx.log.info"
            ],
            [
              "",
              "ABC"
            ],
            [
              "",
              "Any"
            ],
            [
              "",
              "BaseModel"
            ],
            [
              "",
              "BlockFailure"
            ],
            [
              "",
              "BlockModel"
            ],
            [
              "",
              "ClassVar"
            ],
            [
              "",
              "ConfigDict"
            ],
            [
              "",
              "ErrorClass"
            ],
            [
              "",
              "Field"
            ],
            [
              "",
              "Final"
            ],
            [
              "",
              "JsonValue"
            ],
            [
              "",
              "Operator"
            ],
            [
              "",
              "OperatorSpec"
            ],
            [
              "",
              "RemoteHandle"
            ],
            [
              "",
              "Size"
            ],
            [
              "",
              "StepContext"
            ],
            [
              "",
              "StorageUri"
            ],
            [
              "",
              "abc"
            ],
            [
              "",
              "abstractmethod"
            ],
            [
              "",
              "cast"
            ],
            [
              "",
              "dirigent_common"
            ],
            [
              "",
              "dirigent_plugin.blocks"
            ],
            [
              "",
              "json"
            ],
            [
              "",
              "model_validator"
            ],
            [
              "",
              "pydantic"
            ],
            [
              "",
              "typing"
            ]
          ],
          "mbr": [
            "ErrorClass.REJECTED",
            "chunks.append",
            "cls.__dict__",
            "cls.__dict__.get",
            "cls.local_execution",
            "cls.spec",
            "cls.summary",
            "config.from_format",
            "config.input",
            "config.input_uri",
            "config.max_input",
            "config.program",
            "config.save_to",
            "config.to_format",
            "ctx.log",
            "ctx.log.info",
            "ctx.storage",
            "ctx.storage.open_read",
            "ctx.storage.open_write",
            "json.dumps",
            "json.dumps().encode",
            "json.loads",
            "mapped.append",
            "produced.decode",
            "self._map_each",
            "self._pair_refusal",
            "self._verdict",
            "self.apply",
            "self.compile",
            "self.convert",
            "self.input",
            "self.input_uri",
            "self.keep",
            "self.pairs",
            "self.spec",
            "self.spec.id",
            "sink.write",
            "super().__init_subclass__"
          ],
          "tgt": [
            "BlockFailure",
            "ConfigDict",
            "ConvertOutput",
            "Field",
            "OperatorSpec",
            "TransformOutput",
            "ValueError",
            "_elements",
            "_named",
            "_read_bounded",
            "_read_bytes",
            "_read_value",
            "_write",
            "cast",
            "chunks.append",
            "cls.__dict__.get",
            "ctx.log.info",
            "ctx.storage.open_read",
            "ctx.storage.open_write",
            "enumerate",
            "isinstance",
            "json.dumps",
            "json.dumps().encode",
            "json.loads",
            "len",
            "mapped.append",
            "model_validator",
            "produced.decode",
            "range",
            "self._map_each",
            "self._pair_refusal",
            "self._verdict",
            "self.apply",
            "self.compile",
            "self.convert",
            "self.keep",
            "sink.write",
            "sorted",
            "str",
            "super",
            "super().__init_subclass__"
          ],
          "funcs": [
            [
              "_require_one_input",
              3384
            ],
            [
              "__init_subclass__",
              6396
            ],
            [
              "compile",
              6934
            ],
            [
              "apply",
              7115
            ],
            [
              "execute",
              7257
            ],
            [
              "check_config",
              7976
            ],
            [
              "__init_subclass__",
              9788
            ],
            [
              "compile",
              10314
            ],
            [
              "apply",
              10495
            ],
            [
              "execute",
              10673
            ],
            [
              "_map_each",
              11630
            ],
            [
              "check_config",
              12150
            ],
            [
              "__init_subclass__",
              13965
            ],
            [
              "compile",
              14497
            ],
            [
              "keep",
              14678
            ],
            [
              "execute",
              14805
            ],
            [
              "_verdict",
              15799
            ],
            [
              "check_config",
              16597
            ],
            [
              "__init_subclass__",
              18190
            ],
            [
              "convert",
              18724
            ],
            [
              "execute",
              18899
            ],
            [
              "check_config",
              19848
            ],
            [
              "_pair_refusal",
              20195
            ],
            [
              "_elements",
              20698
            ],
            [
              "_named",
              21103
            ],
            [
              "_read_value",
              21577
            ],
            [
              "_read_bytes",
              22134
            ],
            [
              "_read_bounded",
              22448
            ],
            [
              "_write",
              23218
            ]
          ],
          "metrics": {
            "ast": {
              "op.add": 3,
              "op.bor": 15,
              "op.lor": 2,
              "op.mul": 3,
              "max_depth": 17,
              "call_count": 112,
              "node_count": 4275,
              "member_count": 38,
              "max_array_len": 2,
              "op_density.add": 0,
              "op_density.bor": 0,
              "op_density.lor": 0,
              "op_density.mul": 0,
              "max_concat_chain": 2,
              "member_depth_max": 3
            },
            "file": {
              "size": 23662,
              "entropy": 4.64
            },
            "text": {
              "lines": 540,
              "top_char": 101,
              "max_ws_run": 2,
              "digit_ratio": 0,
              "space_count": 5105,
              "char_entropy": 4.64,
              "unique_chars": 82,
              "top_char_null": 0,
              "string_density": 0.22,
              "top_char_ratio": 0.08,
              "avg_line_length": 42.82,
              "max_line_length": 114,
              "empty_line_ratio": 0.21,
              "last_line_length": 18,
              "whitespace_ratio": 0.24,
              "identifier_density": 1.69,
              "line_length_stddev": 33.81,
              "normalized_string_count": 5.16,
              "repeated_char_sequences": 73,
              "suspicious_string_ratio": 0.27,
              "suspicious_comment_ratio": 0.08,
              "normalized_unique_identifiers": 17.19
            },
            "binds": {
              "count": 66
            },
            "binary": {
              "peak_region_bytes": 21614,
              "peak_region_entropy": 4.89
            },
            "source": {
              "class_count": 10,
              "function_count": 17
            },
            "imports": {
              "count": 26,
              "stdlib_count": 3,
              "stdlib_ratio": 0.12,
              "third_party_count": 23,
              "third_party_ratio": 0.88
            },
            "strings": {
              "sql": 17,
              "bytes": 10112,
              "count": 120,
              "shell": 15,
              "avg_length": 84.27,
              "max_length": 922,
              "avg_entropy": 3.47,
              "empty_count": 2,
              "entropy_stddev": 1.1
            },
            "comments": {
              "chars": 796,
              "count": 12,
              "lines": 12,
              "base64": 1,
              "to_code_ratio": 0.02
            },
            "functions": {
              "count": 27,
              "density": 5.37,
              "avg_params": 2.52,
              "code_ratio": 0.47,
              "max_params": 5,
              "length_stddev": 4.34,
              "avg_name_length": 10,
              "avg_length_lines": 8.76,
              "max_length_lines": 18,
              "min_length_lines": 3,
              "single_char_params": 1,
              "avg_param_name_length": 5.77
            },
            "identifiers": {
              "count": 914,
              "unique": 156,
              "avg_length": 7.94,
              "max_length": 24,
              "min_length": 2,
              "avg_entropy": 2.56,
              "reuse_ratio": 0.17,
              "length_stddev": 3.87,
              "high_entropy_count": 4,
              "high_entropy_ratio": 0.03,
              "all_lowercase_ratio": 0.78,
              "all_uppercase_ratio": 0.04,
              "double_underscore_count": 2,
              "underscore_prefix_count": 12
            }
          }
        },
        "id": 4,
        "mol": "H(Db)",
        "path": "dirigent_plugin-0.9.5-py3-none-any.whl!!dirigent_plugin/transforms.py",
        "pid": 0,
        "risk": 2,
        "sha": "849422da832f699acb40f6715b3e96f22b657031305928db33dc6d90e05c9668",
        "size": 23662,
        "traits": [
          {
            "id": "micro-behaviors/fs/read/file::python-pathlib-read-bytes",
            "atk": "T1005",
            "mbc": "E1005",
            "conf": 0.8,
            "crit": 2,
            "desc": "Read bytes via pathlib",
            "spans": [
              [
                22134,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/serialize/json::json-loads-call",
            "conf": 0.9,
            "crit": 3,
            "desc": "Parses JSON data with Python",
            "spans": [
              [
                21918,
                10
              ]
            ]
          }
        ],
        "type": "python"
      },
      {
        "ctx": [
          {
            "b": "o\u003ewAPwmoN*eMMC6B7]MgiV{gggZV#^zdL:Jwnc6#xjU$5ePtJGxk8k\u003cr+lq)x(v(IattAde\u0026r#mB.$#7A^oX*ra]?=wnc6#xjU$5aAhdtxk8lav@DmbA:-E1iV})Fz!0M9B8UY2B1wCMA=l5rv@Dg8efFwswft.$A+/lbB1N![x\u003e7Z(B7D{(CYmXmB8#5lzAn[lx\u003e7Z(B7FlXw?u\u00261z/x-hwPRv3C)WkVv}xL0wI3w=y?kTIoI4Pupe:N*qE%\u0026\u003cx(W^aeKTq]BugKPx(W{2wO#Pwv@Dj3z/b[WwPq\u003cbA+fqzl${Z:iV@9TBz#EWk0pUNf!$vn3q$CPB.L(cB1G^]B96C=AboVfx(mZ2BuR\u0026we\u0026tmn3q$CPB.L(cB1G^]B96C=AcU#5zGGP5k0pUNf/7Bt3q$CPB.L(cB1HjlBzbPgiV{QHgCgyr3pFDDv@=p5BzkVheKKC]By/uieMv1mwJy@QwQ5qIzddE2wn=Wf3jn12wnc6#xjU$5ePtJGxk8k\u003c3rgXIay]hbx\u003eI0{BrCKsB.tAaay/tcBAg/1BugKNy\u0026r*0aAIHkv@\u003cgzAb](sz!0Z4B1wCxzE:(bvrcc{A=S\u0026u",
            "ln": 0,
            "col": 1,
            "line": 1
          }
        ],
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 476,
              "entropy": 5.02
            },
            "binary": {
              "peak_region_bytes": 476,
              "peak_region_entropy": 5.02
            }
          }
        },
        "id": 6,
        "mol": "Md(Pa)",
        "path": "dirigent_plugin-0.9.5-py3-none-any.whl!!dirigent_plugin-0.9.5.dist-info/METADATA",
        "pid": 0,
        "risk": 2,
        "sha": "5688c4cb89f84b1c8d542daaad248a2698128ec9fb6d7ffaa34f023d65e82ca3",
        "size": 476,
        "traits": [
          {
            "id": "metadata/package/dependencies/declaration::pypi-http-client-dependency",
            "conf": 0.9,
            "crit": 3,
            "desc": "PyPI metadata declares an HTTP client dependency"
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-core-metadata",
            "conf": 1.0,
            "crit": 1,
            "desc": "Declares Python Core Metadata version",
            "spans": [
              [
                0,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-license-expression",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python license expression",
            "spans": [
              [
                135,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-license-file",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python package license file",
            "spans": [
              [
                178,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-markdown-description",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Markdown package description",
            "spans": [
              [
                349,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-name-field",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python package name",
            "spans": [
              [
                22,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-requires-dist",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python runtime dependencies",
            "spans": [
              [
                200,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-requires-python",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares supported Python versions",
            "spans": [
              [
                325,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-summary-field",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python package summary",
            "spans": [
              [
                59,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pkginfo-version-field",
            "conf": 0.9,
            "crit": 1,
            "desc": "Declares Python package version",
            "spans": [
              [
                44,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pypi-basic-metadata",
            "conf": 0.95,
            "crit": 2,
            "desc": "PyPI package declares name, version, summary",
            "uses": [
              1,
              5,
              8,
              9
            ],
            "spans": [
              [
                0,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pypi-license-metadata",
            "conf": 0.94,
            "crit": 2,
            "desc": "PyPI package declares license information",
            "uses": [
              1,
              2,
              3
            ],
            "spans": [
              [
                135,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::pypi-runtime-metadata",
            "conf": 0.94,
            "crit": 2,
            "desc": "PyPI package declares Python and dependencies",
            "uses": [
              1,
              6,
              7
            ],
            "spans": [
              [
                0,
                0
              ]
            ]
          }
        ],
        "type": "pkg_info"
      },
      {
        "ctx": [
          {
            "b": "DM)3hz/ZhBBy/qkiWeJ*Aa{HEb5Q?awG\u003ceVwnc6#xjU$5ePtJGxk8lcefYmGA=U@kzx.a=fFkvrh6KN}AckSax(^%0wm5+!b04Cqi5\u0026]Rgb7QzefXInwNw$RD2\u003ee\u003cfF1z:vru74Byfi5A=U@kzx.a=fFkvrh6KN}vrDW9z/N3.zGP=iefYgIBzLIji=o7Ry+c=vwPIv4",
            "ln": 0,
            "col": 1,
            "line": 1
          }
        ],
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 813,
              "entropy": 4.68
            },
            "binary": {
              "peak_region_bytes": 813,
              "peak_region_entropy": 4.68
            },
            "registry": {
              "age_days": 0,
              "published_at": 1788962065,
              "releases_24h": 6,
              "releases_48h": 6,
              "is_deprecated": 0,
              "release_count": 6,
              "package_age_days": 0,
              "first_published_at": 1788906356,
              "vulnerability_count": 0,
              "previous_published_at": 1788957581,
              "days_since_previous_release": 0
            }
          }
        },
        "id": 7,
        "mol": "Md(Re)",
        "path": "dirigent-plugin@0.9.5.registry.json",
        "pid": 0,
        "rel": "registry",
        "risk": 1,
        "role": "sidecar",
        "sha": "a252807b0fc7fc5ffa8924d7eba9b28545e73d7daa7cbe9b9dc89e4ffdce7e1c",
        "size": 813,
        "traits": [
          {
            "id": "metadata/registry::brand-new-package",
            "conf": 1.0,
            "crit": 3,
            "desc": "Package first published within seven days",
            "spans": [
              [
                0,
                32
              ]
            ]
          },
          {
            "id": "metadata/registry::publish-burst-24h",
            "conf": 1.0,
            "crit": 3,
            "desc": "Three releases published within 24 hours",
            "spans": [
              [
                0,
                28
              ]
            ]
          },
          {
            "id": "metadata/registry::freshly-published",
            "conf": 1.0,
            "crit": 3,
            "desc": "Release published within seven days",
            "spans": [
              [
                0,
                24
              ]
            ]
          },
          {
            "id": "metadata/registry::new-package-publish-burst",
            "conf": 0.6,
            "crit": 3,
            "desc": "Brand-new package with publish burst",
            "uses": [
              0,
              1
            ],
            "spans": [
              [
                0,
                28
              ]
            ]
          }
        ],
        "type": "registry"
      }
    ],
    "rev": "b3dc8",
    "v": "8"
  }
}