{
  "llm": {
    "conf": 0.32508844,
    "grade": "benign",
    "model": "Qwen/Qwen3.6-27B",
    "outcome": "benign",
    "interpretation": "Standard to-do list app code"
  },
  "ml": {
    "v": "7",
    "eng": "2.3.0-beta.0",
    "lvl": -1,
    "conf": 0,
    "mods": [
      {
        "cls": 0,
        "raw": 0.03584063,
        "rte": "az",
        "prob": 0.03584063
      }
    ],
    "prob": 0.03584063,
    "skip": [
      {
        "rte": "az/zip",
        "why": "unavailable"
      },
      {
        "rte": "az/zip",
        "why": "unavailable"
      }
    ],
    "files": [
      {
        "id": 0,
        "lvl": -1,
        "conf": 0,
        "prob": 0.035840630531311035,
        "type": "crx"
      },
      {
        "id": 1,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000033408403396606445,
        "type": "text"
      },
      {
        "id": 2,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00006663799285888672,
        "type": "png"
      },
      {
        "id": 3,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00006663799285888672,
        "type": "png"
      },
      {
        "id": 4,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00006663799285888672,
        "type": "png"
      },
      {
        "id": 5,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00006663799285888672,
        "type": "png"
      },
      {
        "id": 6,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000012218952178955078,
        "type": "json"
      },
      {
        "id": 7,
        "lvl": -1,
        "conf": 0,
        "prob": 0.015938162803649902,
        "type": "javascript"
      },
      {
        "id": 8,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00006663799285888672,
        "type": "json"
      },
      {
        "id": 9,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000033408403396606445,
        "type": "registry"
      }
    ],
    "version": "v18.18",
    "analyzed_at": "2026-07-09T03:22:00Z"
  },
  "path": "eeedfjlcoebddkobfhjcabeoeengijje.crx",
  "raw": {
    "files": [
      {
        "id": 0,
        "ctx": [
          {
            "b": "lVK}s0@@r39r=Ay608iyRueD60u%ib1{(=lnqu\u003cF0r",
            "n": [
              {
                "c": 2,
                "d": "Chrome Web Store extension archive",
                "i": "metadata/permission/manifest::chrome-webstore-extension",
                "o": 0,
                "z": 1,
                "cf": 0.949999988079071
              }
            ],
            "ln": 0
          }
        ],
        "mol": "H₂(FU)",
        "sha": "36f1dc98204507d6deb239648306cbbbd4022346881de0353139abe165a04376",
        "path": "eeedfjlcoebddkobfhjcabeoeengijje.crx",
        "risk": 2,
        "size": 16941,
        "type": "crx",
        "facts": {
          "metrics": {
            "file": {
              "size": 16941.0,
              "entropy": 7.93,
              "size_bytes": 16941.0
            },
            "binary": {
              "overall_entropy": 7.93,
              "peak_region_bytes": 16384.0,
              "peak_region_entropy": 7.82
            },
            "archive": {
              "file_count": 9.0,
              "member_count": 10.0,
              "prefix_bytes": 1321.0,
              "script_count": 1.0,
              "zip_bomb_ratio": 4.21,
              "directory_count": 1.0,
              "executable_count": 0.0,
              "extra_field_size": 0.0,
              "noise_file_count": 0.0,
              "total_compressed": 14440.0,
              "compression.ratio": 0.66,
              "hidden_file_count": 0.0,
              "total_uncompressed": 21960.0,
              "crc_collision_count": 0.0,
              "entry_comment_count": 0.0,
              "max_filename_length": 32.0,
              "rtlo_filename_count": 0.0,
              "format.regular_count": 9.0,
              "nested_archive_count": 0.0,
              "path_traversal_count": 0.0,
              "symlink_escape_count": 0.0,
              "security.setgid_count": 0.0,
              "security.setuid_count": 0.0,
              "security.sticky_count": 0.0,
              "double_extension_count": 0.0,
              "duplicate_member_count": 0.0,
              "format.directory_count": 1.0,
              "security.symlink_count": 0.0,
              "unicode_filename_count": 0.0,
              "homoglyph_filename_count": 0.0,
              "security.encrypted_count": 0.0,
              "timing.mtime_unique_count": 6.0,
              "timing.mtime_unique_ratio": 0.6,
              "misplaced_executable_count": 0.0,
              "timing.mtime_dominant_count": 3.0,
              "timing.mtime_spread_seconds": 9729120.0,
              "timing.sentinel_mtime_count": 0.0,
              "security.world_writable_count": 0.0,
              "timing.mtime_dominant_fraction": 0.3,
              "compression.method_counts.deflate": 10.0
            }
          }
        },
        "ident": {
          "trust": "self_signed",
          "identifier": {
            "value": "lfoeajgcchlidpicbabpmckkejpckcfb",
            "source": "crx.extension_id",
            "verified": true
          },
          "unique_ids": {
            "crx_id": "lfoeajgcchlidpicbabpmckkejpckcfb",
            "public_key_sha256": "b5e4096227b83f82101fc2aa49f2a251accde3d98471464dd17d1819b43786b0"
          }
        },
        "traits": [
          {
            "id": "micro-behaviors/fs/path/sensitive/browser::browser-storage-getitem",
            "conf": 0.800000011920929,
            "crit": 3,
            "desc": "Browser storage getItem call",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "micro-behaviors/ui/window/manage/dom::dom-element-value-read",
            "conf": 0.8999999761581421,
            "crit": 1,
            "desc": "Reads .value property of a DOM element",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/path/sensitive/browser::browser-storage-persistence",
            "conf": 0.800000011920929,
            "crit": 3,
            "desc": "Persists data in browser storage",
            "from": [
              {
                "off": 3096,
                "file": 7,
                "line": 96
              }
            ]
          },
          {
            "id": "micro-behaviors/ui/window/manage/dom::dom-element-lookup",
            "conf": 0.8999999761581421,
            "crit": 1,
            "desc": "getElementById/querySelector DOM lookup",
            "from": [
              {
                "off": 78,
                "file": 7,
                "line": 5
              }
            ]
          },
          {
            "id": "objectives/impact/destroy/keywords::delete-verb--delete",
            "conf": 0.8999999761581421,
            "crit": 1,
            "desc": "Destructive-action word: delete",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "micro-behaviors/ui/window/manage/dom::dom-element-lookup--getelementbyid",
            "conf": 0.8999999761581421,
            "crit": 1,
            "desc": "getElementById/querySelector (getElementById)",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "micro-behaviors/ui/window/manage/dom::browser-innerhtml-assignment",
            "conf": 0.800000011920929,
            "crit": 3,
            "desc": "Assigns DOM innerHTML",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/path/sensitive/browser::browser-local-storage-access",
            "conf": 0.699999988079071,
            "crit": 3,
            "desc": "Browser localStorage access",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/path/sensitive/browser::browser-storage-setitem",
            "conf": 0.800000011920929,
            "crit": 3,
            "desc": "Browser storage setItem call",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/path/sensitive/browser::localstorage-get",
            "conf": 0.699999988079071,
            "crit": 3,
            "desc": "Browser localStorage read access",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "micro-behaviors/ui/window/manage/dom::browser-node-remove",
            "conf": 0.800000011920929,
            "crit": 3,
            "desc": "Removes DOM node from page",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/path/sensitive/browser::localstorage-set",
            "conf": 0.6000000238418579,
            "crit": 3,
            "desc": "Browser localStorage write access",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/signed/platform::web-extension-manifest",
            "conf": 1.0,
            "crit": 1,
            "desc": "Web-extension manifest.json at archive root"
          },
          {
            "id": "metadata/permission/manifest::chrome-webstore-verified-contents",
            "conf": 0.949999988079071,
            "crit": 1,
            "desc": "Chrome Web Store verified contents"
          }
        ]
      },
      {
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 1808,
              "entropy": 4.85
            },
            "binary": {
              "peak_region_bytes": 1808,
              "peak_region_entropy": 4.86
            }
          }
        },
        "id": 1,
        "path": "eeedfjlcoebddkobfhjcabeoeengijje.crx!!index.css",
        "pid": 0,
        "risk": 1,
        "sha": "4a900b2267aa705c04f6567e1928017be89e5f6b9fe3c816df80ad30db3c6739",
        "size": 1808,
        "traits": [
          {
            "id": "metadata/file/format/markup::css-selector-rule-block",
            "conf": 0.95,
            "crit": 2,
            "desc": "CSS class or id selector rule blocks",
            "spans": [
              [
                327,
                0
              ]
            ]
          }
        ],
        "type": "text"
      },
      {
        "depth": 1,
        "facts": {
          "metrics": {
            "png": {
              "a_entropy": 0.0,
              "chunk_count": 7.0,
              "trailing_bytes": 0.0,
              "idat_chunk_count": 1.0,
              "text_chunk_bytes": 1195.0,
              "chunks_after_iend": 0.0,
              "compression_ratio": 1.61,
              "unknown_chunk_count": 0.0
            },
            "file": {
              "size": 1648.0,
              "entropy": 6.42,
              "size_bytes": 1648.0
            },
            "image": {
              "width": 16.0,
              "height": 16.0,
              "channels": 4.0,
              "b_entropy": 4.95,
              "g_entropy": 5.21,
              "r_entropy": 0.0,
              "edge_density": 0.0,
              "pixel_entropy": 3.9,
              "histogram_flatness": 0.49
            },
            "binary": {
              "overall_entropy": 6.42,
              "peak_region_bytes": 624.0,
              "peak_region_entropy": 7.13
            }
          }
        },
        "id": 2,
        "path": "eeedfjlcoebddkobfhjcabeoeengijje.crx!!logo1.png",
        "sha": "9e6237f6f6929127582e7fad66b2b45346cbc9271d3062e6b0039ab063b4184c",
        "size": 1648,
        "traits": [
          {
            "id": "metadata/package/files/included::png-extension-basename",
            "conf": 0.8999999761581421,
            "crit": 1,
            "desc": "Filename ends with .png",
            "spans": [
              [
                0,
                9
              ]
            ]
          }
        ],
        "type": "png"
      },
      {
        "id": 3,
        "sha": "26ec2e68defbd58d5e102ddf783972de5e60f71ee08fa34e7ee39ad0a5b3cf7a",
        "path": "eeedfjlcoebddkobfhjcabeoeengijje.crx!!logo2.png",
        "size": 2106,
        "type": "png",
        "depth": 1
      },
      {
        "id": 4,
        "sha": "b0e087e01f482f5d44b9bcbc762786f6561b4e5202926515c9fabd0d6f7526e2",
        "path": "eeedfjlcoebddkobfhjcabeoeengijje.crx!!logo3.png",
        "size": 2749,
        "type": "png",
        "depth": 1
      },
      {
        "id": 5,
        "sha": "eb3f8d769d7e5dc33159ae3ca4ed1ecdbdac8f782f739ebfb964bc097a56b33a",
        "path": "eeedfjlcoebddkobfhjcabeoeengijje.crx!!logo4.png",
        "size": 6620,
        "type": "png",
        "depth": 1
      },
      {
        "ctx": [
          {
            "b": "DJ",
            "n": [
              {
                "c": 2,
                "d": "JSON data format",
                "i": "metadata/file/format::valid",
                "o": 0,
                "z": 13,
                "cf": 0.6000000238418579
              }
            ],
            "ln": 1,
            "addr": 0
          },
          {
            "b": "b6v\u003cnvru6/B-IpxiV]RWBAzFyiXJc@y?WD#BAoh\u0026xk.Z3y?kkez/4dGwPz%dv}vroAaAy0wIL]GA^e=V",
            "ln": 2,
            "addr": 2
          },
          {
            "b": "",
            "ln": 3,
            "addr": 67
          }
        ],
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 487.0,
              "entropy": 4.48,
              "size_bytes": 487.0
            },
            "json": {
              "parsed_bytes": 487.0,
              "parse_limit_bytes": 76800.0
            },
            "binary": {
              "overall_entropy": 4.48,
              "peak_region_bytes": 487.0,
              "peak_region_entropy": 4.48
            }
          }
        },
        "id": 6,
        "path": "eeedfjlcoebddkobfhjcabeoeengijje.crx!!manifest.json",
        "risk": 1,
        "sha": "575ad48bf0e2587034ceb9b700ab7606f5b8d4b3dce84e01ea30f1c55f789688",
        "size": 487,
        "traits": [
          {
            "id": "metadata/file/extension/identity::web-asset-extension",
            "conf": 1.0,
            "crit": 1,
            "desc": "Web asset file extension (css/html/js/json)",
            "spans": [
              [
                0,
                13
              ]
            ]
          },
          {
            "id": "metadata/file/format::valid",
            "conf": 0.6000000238418579,
            "crit": 2,
            "desc": "JSON data format",
            "spans": [
              [
                0,
                13
              ]
            ]
          },
          {
            "id": "metadata/package/manifest/ecosystem::conda-about-description-field",
            "conf": 0.9200000166893005,
            "crit": 1,
            "desc": "Conda about long description",
            "spans": [
              [
                150,
                90
              ]
            ]
          }
        ],
        "type": "json"
      },
      {
        "ctx": [
          {
            "b": "wMAIRCox3\u003ec[co4j%kgV3lQDlay/tcB95KDvrlj9oLFM\u0026auZ\u0026Tz!0{bwO#PxxjVfNy?mD{zGFi\u003cnN%j[ByxlaB4*p?BrSd}3jm)#arU\u0026oAV!\u003e9x(4r5jS[\u0026PB8b?\u003cx(!wGy*?yblUHgIwigbvarR!JxLzo]c$u}8y?a$qDKp(rarR^HarU=mB8b?\u003cx(!wGA+f9aC4B3Ox(4rdv}YN)wgoOEarR^HarR^Hv}YN)wfs2TByxlaB4*p?Bs}xrB96=.x(4rw3lQDlaBKO7arR^HByxlal2{##w]zYUvpJ$0c}d@-zdNQbefFUAwmZ0mau.[hDKp95arR^HarR!pz/fSraz$+mraf\u0026-auZ\u0026Tz!0{bwO#Pxv@=c?By^)SwO(0@Bsntzx)7WHi%)8MarR^HarUMkCt@0(yC6WtBu$1\u003cA+P09By=\u003cAv@bN{B0rdTb6mmmyB%7hB%nv%3jm)#arR^HarUfjzGx[xByxlaraQq@auZ\u0026Tz!0{bwO#Pxv@=c?By^)SwO(0@Bsntzx)7WHi%)8MarR^HarU=mB8a-^CYUMVwPQjWBAh88B-.gyb4CB$B8@JRavQ9TzdNQbe[]w{z/fbekoId(vrlioBy/YsaAR4kyB%4mze:r5By!#bauyR?ByxlaeP+MGBrSd}3lQDlarR^HaAR4kyGa\u003e\u0026Bs}oBzE)\u0026Vr834ejS(d!zE^s6as!M?diHb-a$:#Zas!N6y?mD{zGEHMvrliC3jm)#arR^HarUfjzGx[xByxlalVl\u003c:A=k=nauZ\u0026Tz!0{bwO#Pxv@=c?By^)SwO(0@Bsntzx)7WHi%)8MarR^HarU=mB8acYzGG]qy\u0026.jIwPQjWBAh88B-.gyb4CB$B8@JRar\u003e]oB89vqz/fVqz!%Fsdlv\u003ezarR^HarR^Hv@DmaBrCWlB8aiPx(\u003eEXay]z2B.$YcBs}6zwNPW(mqMKLwO#Prb4tXpBz(4vdlv\u003eVarR^HarR!GvrliMwnccrx(m*1A.6e7oDVFvb1l3RBrS^NarR^HarR^HByxlampZaOe]$PCl3di?x\u003c#jbwHF:pwfJMEx(mD)CPXHVb4Uq0BrSd}3lQDlarR^HaAR4kyEI=FBs}SCBu$1\u003cA+P09By=\u003cAv@bN{B0rdTb6mmmyB%1qzxK4fB89vpBz-Wwwnccfdlv\u003eVarR^HarR!GvrliMwnccrvpS[qC4CMkoLFM\u0026wO#71c)Aeqx\u003e7{5efDuLC4CMkdiH=qaz27$Bw#W\u0026yBA+qwO#PxByxi5wPPLswgn@?3jm)#arR^HarUfjzGx[xByxlal$HgCBy=NTay]z2B.$YcBs}6zwNPW(mqMKLwO#Prb4tXpBz(4vdlv\u003eVarR^HarR!GvrliLwO+}1wIdXmzE)\u0026Vr834ejS\u003e}pwO+}1wG\u003chyarR^HarR^HByxlal$HgCBy^7CwPQjWBAh88B-.gyb57NiefFUAwmZ0dd\u003cc3DwO+}1wG\u0026M+3lQDlarR^HaAR4kyEz-IwPRGoB7GCVBAzLqvS=^7c)AeqvrlGlefDcUvrliovSVGgByxlaeN\u0026*teO5BewPRGcdlv\u003eVarR^HarR!GvrliLwO+}1wIdz4wjpVMzGFM^B97#hwPxgyv@b\u003c?yA+qLc$NNkzGErIjW700wO+}1wMi8VyBA+qwO#PxByxi5wPPLswgn@?3jm)#arR^HarUfjzGx[xByxlal#Khhay]z2B.$YcBs}6zwNPW(mqMKLwO#Prb4tXpBz(4vdlv\u003eVarR^HarR!GvrliLz.t:wzE)\u0026Vr834ejS)gfwO(0@Bs}oGl#M%Oau{$)rC(t=a%n]?b1cu!wG\u003chyarR^HarR^HByxlal#KY0wPQjWBAh88B-.gyb57NiefFUAwmZ0dd\u003cc3DzZ3R(3lQDlarR^HaAR4kyEA7[B7GCVBAzLqvS=^7c)AeqvrlGlefDcUvrliovSVGgByxlaeN\u0026*teO5=zdlv\u003eVarR^HarR!GvrliLz.tEewjpVMzGFM^B97#hwPxgyv@b\u003c?yA+qLc$NNkzGErIjW700z=yd^yBA+qwO#PxByxi5wPPLswgn@?3jm)#arR^HarU=mB8acYzGG]qy\u0026.jqAbYxawj73Ay?a@ovrliMwnccmi%)8MarR^HarU=mB8acYzGG]qy\u0026.jqAbYxawj73Ay?a@ovrliLwO+}1wHPXFarR^HarR^HByxlalVl\u003c:A=k=ne[5ZrwO#3CxLzo[d0e)syEA7\u0026i%(rqarR^HarR!AwP}9ZB89ypAbYxawj73Ay?a@ovrli-wQ5qCi%)8MarR^HarUMkCt@0(yC64mAaJ]$lUHgIwghLdB8acYzGG]qy\u0026.3!3jm)#arR^HarU=mB8b?\u003cx(!wGvq{f%zE=aFx(4rdzE[2\u003evrliki%)8MarV7Yi%{xy3s!0(B95KkwmOUFB88)YasH@Bl#M%OdiH=qaBsC5arR^Hv@DmaBrCWlB88)Yay]z2B.$YcBs}iqBvy1SzdNQblu#dkc)A+wB89vwzG6-ua$kc/vqH6$i%)8MarUxgd0e)syAL=6jS[S+y?$kwD)0JtB89yIA+PwsdiH=pjS\u003e{)diJUxBAIRwi%)8MarU=mB8a6ZAXqrNB7=$GByxlaefFUFl#M%OEjmk+arR^Hy\u0026r/(y/tB]A:-P(e]$PCnPXJXc)A.vC4Ch-vrlj9a$K\u003ceq+{dvB98CpzF9V}C{)=yB8a6ZAW-C03lQDlaA.Tlvru6Yx\u003eqGpdlv\u003ezarR^Hv@DmaBrCWlB8au+AclmBjS[oNv%8T1zGEHzwPQvSwO(0@Bv7mAwgeTzvrliox(m)jBrSd}3lQDlaAR4kyE@z.B-YlVvqH6$auZ?\u003eb0ccW3jpoYzGx[xwD",
            "ln": 30,
            "col": 12,
            "line": 3
          },
          {
            "b": "j%kgV3lQDlay/tcB95KDvrliQzE^s6auZ\u0026^vrcB2nP5R#x\u003egB4t}4\u0026xarR^Hv@DmaBrCWlB8a-^CYU5\u003eaAR4kyE8#YtxBp{yE@zOwQ4GkByxlai%)8MarU=mB8a6ZAXqALy?Wx\u003cd0e)syE@zOwQ2:Gf!2f\u003earR^Hy\u0026r/(y/tB]A:-P(e]$PCnPXJXc)A.vC4Ch-vrlj9a$K\u003ceq+{dvB98CpzF9V}C{)+",
            "ln": 2303,
            "col": 24,
            "line": 66
          },
          {
            "b": "wO#PxxjVfNy?mD{zGFi\u003cnN%j[ByxlaeOP9wB-X/Ri%)8MarU=mB8au+AclmPC42ifwGTbUByxlaraQq@i%{xy3s!0(B95KnwO+}1wMi8VyAL+.c#0ivau.[hDKp95arR!pz/fSraAR4kyE@zOwQ2sXaAg+fB7E{XBsp\u003cltqftii%)8MarU=mB8a6ZAXqALy?Wx\u003cd0e)syx",
            "ln": 2538,
            "col": 28,
            "line": 74
          },
          {
            "b": "c)z5Po*-\u0026pBy/uioMauIwN(#oasFVYjW70n3jm)#arUfjzGx[xB76l6wk(#UyJyQYawbNdpa*G]A=U!uy\u0026r/(y/tB]A:-P(e[X:qnPXJXc)A.vC4Ch-vrlj9a$j%53lQDlazCBoB76l6wk(#UyJyQwjV%{9B.\u003e\u003eyaAR4kyE8#YauZ\u0026Ke?O+$vrMi)raf\u0026-B6Q\u003cmarR^HB-p(1By!G!wP]KKi%{x+3jprZv%8T1zGEHzwPQvSwO(0@Bv7mAwgeTzvrlioB9g@e",
            "ln": 3032,
            "col": 26,
            "line": 94
          },
          {
            "b": "zGFi\u003cnN%j[ByxlaeN@Qdvr9@eBz-oKe[5p3mrSlWBwcy\u0026By/u3AWSbwy?Wx{a$K\u0026+diH=qaBsC5arR^Hy\u0026r/(y/tB]A:-P(e[nZevr9+Bi%)8MarU=mB8a6ZAV^H/tu%q$arR^HB-p(1By!G!wP]KKi%{x+3jl",
            "ln": 3320,
            "col": 18,
            "line": 103
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "document.getElementById"
            ],
            [
              "",
              "tasksList.removeChild"
            ],
            [
              "",
              "taskArr.forEach"
            ],
            [
              "",
              "document.createElement"
            ],
            [
              "",
              "newTask.setAttribute"
            ],
            [
              "",
              "document.createElement"
            ],
            [
              "",
              "taskText.setAttribute"
            ],
            [
              "",
              "document.createElement"
            ],
            [
              "",
              "taskControls.setAttribute"
            ],
            [
              "",
              "document.createElement"
            ],
            [
              "",
              "taskEdit.setAttribute"
            ],
            [
              "",
              "taskEdit.setAttribute"
            ],
            [
              "",
              "taskEdit.addEventListener"
            ],
            [
              "",
              "editTask"
            ],
            [
              "",
              "document.createElement"
            ],
            [
              "",
              "taskDelete.setAttribute"
            ],
            [
              "",
              "taskDelete.setAttribute"
            ],
            [
              "",
              "taskDelete.addEventListener"
            ],
            [
              "",
              "deleteTask"
            ],
            [
              "",
              "document.createElement"
            ],
            [
              "",
              "taskDo.setAttribute"
            ],
            [
              "",
              "taskDo.setAttribute"
            ],
            [
              "",
              "taskDo.addEventListener"
            ],
            [
              "",
              "doTask"
            ],
            [
              "",
              "taskControls.appendChild"
            ],
            [
              "",
              "taskControls.appendChild"
            ],
            [
              "",
              "taskControls.appendChild"
            ],
            [
              "",
              "newTask.appendChild"
            ],
            [
              "",
              "newTask.appendChild"
            ],
            [
              "",
              "tasksList.appendChild"
            ],
            [
              "",
              "document.getElementById"
            ],
            [
              "",
              "task.trim"
            ],
            [
              "",
              "taskArr.push"
            ],
            [
              "",
              "localStorage.setItem"
            ],
            [
              "",
              "JSON.stringify"
            ],
            [
              "",
              "updateView"
            ],
            [
              "",
              "document.getElementById"
            ],
            [
              "",
              "parseInt"
            ],
            [
              "",
              "taskArr.splice"
            ],
            [
              "",
              "localStorage.setItem"
            ],
            [
              "",
              "JSON.stringify"
            ],
            [
              "",
              "updateView"
            ],
            [
              "",
              "document.getElementById"
            ],
            [
              "",
              "parseInt"
            ],
            [
              "",
              "taskArr.splice"
            ],
            [
              "",
              "localStorage.setItem"
            ],
            [
              "",
              "JSON.stringify"
            ],
            [
              "",
              "updateView"
            ],
            [
              "",
              "parseInt"
            ],
            [
              "",
              "localStorage.setItem"
            ],
            [
              "",
              "JSON.stringify"
            ],
            [
              "",
              "updateView"
            ],
            [
              "",
              "document.addEventListener"
            ],
            [
              "",
              "JSON.parse"
            ],
            [
              "",
              "localStorage.getItem"
            ],
            [
              "",
              "updateView"
            ],
            [
              "",
              "document.getElementById.addEventListener"
            ],
            [
              "",
              "document.getElementById"
            ],
            [
              "",
              "addTask"
            ],
            [
              "",
              "document.getElementById.addEventListener"
            ],
            [
              "",
              "document.getElementById"
            ],
            [
              "",
              "localStorage.clear"
            ],
            [
              "",
              "updateView"
            ]
          ],
          "mbr": [
            "Element.isDone",
            "Element.task",
            "JSON.parse",
            "JSON.stringify",
            "document.addEventListener",
            "document.createElement",
            "document.getElementById",
            "document.getElementById.addEventListener",
            "document.getElementById.value",
            "event.target",
            "event.target.id",
            "localStorage.clear",
            "localStorage.getItem",
            "localStorage.setItem",
            "newTask.appendChild",
            "newTask.setAttribute",
            "task.trim",
            "taskArr.forEach",
            "taskArr.push",
            "taskArr.splice",
            "taskControls.appendChild",
            "taskControls.setAttribute",
            "taskDelete.addEventListener",
            "taskDelete.innerHTML",
            "taskDelete.setAttribute",
            "taskDo.addEventListener",
            "taskDo.innerHTML",
            "taskDo.setAttribute",
            "taskEdit.addEventListener",
            "taskEdit.innerHTML",
            "taskEdit.setAttribute",
            "taskInput.value",
            "taskText.innerHTML",
            "taskText.setAttribute",
            "tasksList.appendChild",
            "tasksList.lastChild",
            "tasksList.removeChild"
          ],
          "tgt": [
            "JSON.parse",
            "JSON.stringify",
            "addTask",
            "deleteTask",
            "doTask",
            "document.addEventListener",
            "document.createElement",
            "document.getElementById",
            "document.getElementById.addEventListener",
            "editTask",
            "localStorage.clear",
            "localStorage.getItem",
            "localStorage.setItem",
            "newTask.appendChild",
            "newTask.setAttribute",
            "parseInt",
            "task.trim",
            "taskArr.forEach",
            "taskArr.push",
            "taskArr.splice",
            "taskControls.appendChild",
            "taskControls.setAttribute",
            "taskDelete.addEventListener",
            "taskDelete.setAttribute",
            "taskDo.addEventListener",
            "taskDo.setAttribute",
            "taskEdit.addEventListener",
            "taskEdit.setAttribute",
            "taskText.setAttribute",
            "tasksList.appendChild",
            "tasksList.removeChild",
            "updateView"
          ],
          "funcs": [
            [
              "anonymous",
              38
            ],
            [
              "anonymous",
              266
            ],
            [
              "anonymous",
              996
            ],
            [
              "anonymous",
              1310
            ],
            [
              "anonymous",
              1622
            ],
            [
              "anonymous",
              1943
            ],
            [
              "anonymous",
              2297
            ],
            [
              "anonymous",
              2626
            ],
            [
              "anonymous",
              2811
            ],
            [
              "anonymous",
              3053
            ],
            [
              "anonymous",
              3279
            ],
            [
              "anonymous",
              3371
            ]
          ],
          "metrics": {
            "ast": {
              "op.eq": 2,
              "op.ne": 1,
              "op.add": 6,
              "op.lor": 1,
              "op.lnot": 1,
              "max_depth": 18,
              "call_count": 63,
              "node_count": 1219,
              "member_count": 37,
              "op_density.eq": 0,
              "op_density.ne": 0,
              "op_density.add": 0,
              "op_density.lor": 0,
              "op_density.lnot": 0,
              "max_array_length": 1,
              "max_concat_chain": 3,
              "max_member_depth": 3
            },
            "file": {
              "size": 3446,
              "entropy": 4.81
            },
            "text": {
              "lines": 109,
              "top_char": 116,
              "digit_ratio": 0,
              "space_count": 545,
              "char_entropy": 4.81,
              "unique_chars": 61,
              "top_char_null": 0,
              "string_density": 0.45,
              "top_char_ratio": 0.09,
              "avg_line_length": 30.61,
              "max_line_length": 98,
              "empty_line_ratio": 0.27,
              "last_line_length": 2,
              "whitespace_ratio": 0.19,
              "identifier_density": 1.95,
              "line_length_stddev": 27.01,
              "max_whitespace_run": 1,
              "encoded_string_ratio": 0.02,
              "normalized_string_count": 4.69,
              "anonymous_function_ratio": 1,
              "normalized_function_count": 1.15,
              "strings_to_functions_ratio": 4.08,
              "normalized_unique_identifiers": 6.8,
              "identifiers_to_functions_ratio": 3.83
            },
            "binds": {
              "count": 31
            },
            "binary": {
              "peak_region_bytes": 3446,
              "peak_region_entropy": 4.97
            },
            "strings": {
              "bytes": 374,
              "count": 49,
              "avg_length": 7.63,
              "max_length": 24,
              "avg_entropy": 2.26,
              "empty_count": 2,
              "entropy_stddev": 0.71,
              "base64_candidates": 1
            },
            "functions": {
              "nested": 2,
              "density": 11.01,
              "anonymous": 12,
              "avg_params": 0.75,
              "code_ratio": 1.29,
              "max_params": 2,
              "one_liners": 4,
              "length_stddev": 15.22,
              "no_params_count": 4,
              "avg_length_lines": 11.75,
              "max_length_lines": 50,
              "min_length_lines": 1,
              "avg_nesting_depth": 0.58,
              "max_nesting_depth": 2,
              "avg_param_name_length": 4.33
            },
            "identifiers": {
              "count": 213,
              "unique": 46,
              "avg_length": 7.87,
              "max_length": 16,
              "min_length": 2,
              "avg_entropy": 2.62,
              "reuse_ratio": 0.22,
              "length_stddev": 2.92,
              "all_lowercase_ratio": 0.3,
              "all_uppercase_ratio": 0.02
            }
          }
        },
        "id": 7,
        "mol": "H₂(Db₂U₂)",
        "path": "eeedfjlcoebddkobfhjcabeoeengijje.crx!!script.js",
        "pid": 0,
        "risk": 4,
        "sha": "e1870525e2eb76f84b1f9a414e5019954d185f57dfc950be7c1bec8bb7d5341e",
        "size": 3446,
        "traits": [
          {
            "id": "micro-behaviors/data/collection/dom::append-child-reference",
            "conf": 0.8,
            "crit": 3,
            "desc": "References DOM appendChild method",
            "spans": [
              [
                1668,
                24
              ],
              [
                1801,
                19
              ],
              [
                1884,
                21
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/collection/dom::document-create-element",
            "conf": 0.96,
            "crit": 3,
            "desc": "Creates DOM element",
            "spans": [
              [
                313,
                22
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/collection/dom::node-mutation-method-reference",
            "conf": 0.85,
            "crit": 3,
            "desc": "References a DOM insertion or mutation method",
            "spans": [
              [
                360,
                12
              ],
              [
                1681,
                11
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/collection/dom::node-remove-call",
            "conf": 0.8,
            "crit": 3,
            "desc": "Removes a child node from the DOM",
            "spans": [
              [
                181,
                13
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/collection/dom::source-append-child-call",
            "conf": 0.9,
            "crit": 3,
            "desc": "Appends a node to a DOM parent",
            "spans": [
              [
                1681,
                12
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/db/web-storage::browser-storage-persistence",
            "conf": 0.8,
            "crit": 3,
            "desc": "Persists data in browser storage",
            "uses": [
              7,
              9
            ],
            "spans": [
              [
                2110,
                20
              ],
              [
                3096,
                20
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/db/web-storage::dom-localstorage-clear-call",
            "conf": 0.9,
            "crit": 3,
            "desc": "Clears all browser local storage",
            "spans": [
              [
                3384,
                18
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/db/web-storage::dom-storage-getitem",
            "conf": 0.9,
            "crit": 3,
            "desc": "Reads browser storage with getItem",
            "spans": [
              [
                3096,
                20
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/db/web-storage::dom-storage-getitem-call",
            "conf": 0.9,
            "crit": 3,
            "desc": "Calls localStorage or sessionStorage getItem",
            "spans": [
              [
                3096,
                20
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/db/web-storage::dom-storage-setitem",
            "conf": 0.9,
            "crit": 3,
            "desc": "Writes browser storage with setItem",
            "spans": [
              [
                2110,
                20
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/db/web-storage::dom-storage-setitem-call",
            "conf": 0.9,
            "crit": 3,
            "desc": "Calls localStorage or sessionStorage setItem",
            "spans": [
              [
                2110,
                20
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/serialize/json::json-stringify-call",
            "conf": 0.5,
            "crit": 3,
            "desc": "Calls JSON.stringify()",
            "spans": [
              [
                2145,
                14
              ]
            ]
          },
          {
            "id": "micro-behaviors/ui/window/click::browser-click-listener",
            "conf": 0.88,
            "crit": 3,
            "desc": "Registers browser click event listener",
            "spans": [
              [
                961,
                25
              ],
              [
                1273,
                27
              ],
              [
                1589,
                23
              ]
            ]
          },
          {
            "id": "micro-behaviors/ui/window/insert-html::browser-innerhtml-assignment",
            "conf": 0.8,
            "crit": 3,
            "desc": "Writes HTML into the DOM with innerHTML",
            "spans": [
              [
                559,
                54
              ],
              [
                805,
                27
              ],
              [
                1105,
                31
              ],
              [
                1417,
                51
              ]
            ]
          }
        ],
        "type": "javascript"
      },
      {
        "ctx": [
          {
            "b": "tydM8wPIv4x(Ffdz/c:Wb6m\u003cpwOtH[xDRn9AV!$dy?j!wb6dEhzE)u=v@DmbwO#Pli^S5\u0026vr(WcvpQMyb4V3(ygn}QfJ}KnfJZ8z",
            "n": [
              {
                "c": 2,
                "d": "JSON data format",
                "i": "metadata/file/format::valid",
                "o": 0,
                "z": 22,
                "cf": 0.6000000238418579
              }
            ],
            "ln": 0
          }
        ],
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 2043.0,
              "entropy": 5.97,
              "size_bytes": 2043.0
            },
            "json": {
              "parsed_bytes": 2043.0,
              "parse_limit_bytes": 76800.0
            },
            "binary": {
              "overall_entropy": 5.97,
              "peak_region_bytes": 2043.0,
              "peak_region_entropy": 6.01
            }
          }
        },
        "id": 8,
        "path": "eeedfjlcoebddkobfhjcabeoeengijje.crx!!_metadata/verified_contents.json",
        "risk": 1,
        "sha": "df38fb593cc258cdb9dbab8ba47d0951c429727dde8d6935c8aa2ebd1f790154",
        "size": 2043,
        "traits": [
          {
            "id": "metadata/file/extension/identity::web-asset-extension",
            "conf": 1.0,
            "crit": 1,
            "desc": "Web asset file extension (css/html/js/json)",
            "spans": [
              [
                0,
                22
              ]
            ]
          },
          {
            "id": "metadata/file/format::valid",
            "conf": 0.6000000238418579,
            "crit": 2,
            "desc": "JSON data format",
            "spans": [
              [
                0,
                22
              ]
            ]
          }
        ],
        "type": "json"
      },
      {
        "id": 9,
        "sha": "1b4aef80c0cae661aa5ce27e0a5e48a28b72b9fe0e113584de5398dde95b5dd5",
        "path": "eeedfjlcoebddkobfhjcabeoeengijje.registry.json",
        "size": 903,
        "type": "registry",
        "depth": 1
      }
    ],
    "omitted_files": 4,
    "v": "8"
  }
}