{
  "ml": {
    "v": "7",
    "eng": "2.8.0",
    "lvl": -1,
    "conf": 0,
    "mods": [
      {
        "cls": 0,
        "raw": 0.33692944,
        "rte": "az",
        "prob": 0.33692944
      },
      {
        "cls": 0,
        "raw": 0.057262313,
        "rte": "az/zip",
        "prob": 0.057262313
      }
    ],
    "prob": 0.33692944,
    "files": [
      {
        "id": 0,
        "lvl": -1,
        "conf": 0,
        "prob": 0.33692944049835205,
        "type": "zip"
      },
      {
        "id": 3,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009447336196899414,
        "type": "lua"
      },
      {
        "id": 9,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009149312973022461,
        "type": "lua"
      },
      {
        "id": 15,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009447336196899414,
        "type": "lua"
      },
      {
        "id": 22,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000008672475814819336,
        "type": "lua"
      },
      {
        "id": 28,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009149312973022461,
        "type": "lua"
      },
      {
        "id": 34,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009149312973022461,
        "type": "lua"
      },
      {
        "id": 37,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000010013580322265625,
        "type": "lua"
      },
      {
        "id": 40,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000008960564628068823,
        "type": "lua"
      }
    ],
    "version": "v18.18",
    "analyzed_at": "2026-08-30T03:32:27Z"
  },
  "path": "astal-0.2.5-1.src.rock",
  "raw": {
    "files": [
      {
        "id": 0,
        "ctx": [
          {
            "b": "p!H([6Awak2MK#R3%//BpKj#400317000=m8#%z*Byw#qfFkakh7ZKnA=kD6B8UY2rA6n81nB*5ywo-nyis+e009k!0@@r7\u003e(Q[=JA5X\u003e*B%5H}=A1z.!IiRtWP8evyGFyz1?u^wlA]d:DAAY7d18.k1Sg4jc4+=vVbT5K^6KVd2KSaKxa[ZFUAtSSx2s^[%9]Y3[CHl",
            "ln": 0
          }
        ],
        "mol": "H₂(Cm₂Po₂)",
        "sha": "5590ef50b21d8df8735fbd6c4c6d9b7bdc0f290c02dc7e2f5808ad914a52c5e2",
        "path": "astal-0.2.5-1.src.rock",
        "risk": 4,
        "size": 71143,
        "type": "zip",
        "facts": {
          "metrics": {
            "file": {
              "size": 71143,
              "entropy": 7.7
            },
            "binary": {
              "peak_region_bytes": 53248,
              "peak_region_entropy": 7.84
            },
            "archive": {
              "file_count": 69,
              "member_count": 91,
              "script_count": 43,
              "zip_bomb_ratio": 4.63,
              "compressed_size": 52641,
              "directory_count": 22,
              "executable_count": 0,
              "extra_field_size": 2184,
              "noise_file_count": 0,
              "compression.ratio": 0.31,
              "hidden_file_count": 2,
              "uncompressed_size": 167391,
              "crc_collision_count": 9,
              "entry_comment_count": 0,
              "max_filename_length": 74,
              "rtlo_filename_count": 0,
              "format.regular_count": 69,
              "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": 22,
              "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.01,
              "misplaced_executable_count": 0,
              "timing.mtime_dominant_count": 91,
              "timing.mtime_spread_seconds": 0,
              "timing.sentinel_mtime_count": 0,
              "security.world_writable_count": 0,
              "timing.mtime_dominant_fraction": 1,
              "compression.method_counts.stored": 25,
              "compression.method_counts.deflate": 66
            },
            "consistency": {
              "extension_content_mismatch": 1,
              "extension_content_mismatch.archive_as_unknown": 1
            }
          }
        },
        "traits": [
          {
            "id": "micro-behaviors/fs/path/temp::tmp-path-content",
            "conf": 1.0,
            "crit": 2,
            "desc": "Contains a /tmp/ or /var/tmp/ path",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/file/profile/language::lang-english--atom-5",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"for\"",
            "from": [
              {
                "file": 3
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/header/content-type::json-header",
            "conf": 0.9,
            "crit": 3,
            "desc": "References HTTP Content-Type application/json",
            "from": [
              {
                "file": 40
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/ipc/dbus::dbus-core-interface",
            "conf": 0.85,
            "crit": 3,
            "desc": "References the core D-Bus interface",
            "from": [
              {
                "file": 37
              }
            ]
          },
          {
            "id": "metadata/file/profile/language::lang-english--atom-1",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"the\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/file/profile/language::lang-english--atom-2",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"and\"",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "micro-behaviors/process/debug/symbol::lua-debug-module-access",
            "conf": 0.9,
            "crit": 3,
            "desc": "Accesses Lua debug module",
            "from": [
              {
                "file": 3
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/path/temp::unix-temp",
            "conf": 0.7,
            "crit": 2,
            "desc": "Unix /tmp/ path reference",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "micro-behaviors/process/create/shell/spawn::lua-os-execute",
            "atk": "T1059.004",
            "conf": 0.9,
            "crit": 3,
            "desc": "Lua os.execute() function call",
            "from": [
              {
                "file": 37
              }
            ]
          }
        ]
      },
      {
        "ctx": [
          {
            "b": "y\u0026r/(y-(+!A+O@\u003ey?j.LaAz4kB.L(cc)A8vByw#fdk1UfA+O@\u003ey?i}Xy\u0026r/(y-(B{jS]913jpx/zEW^5z/cW(e]#5yc#-QpxEKn{y\u0026r/(y-)!vAV^H/wmYj)xd^?dBzkS8zZWv(ar\u003c-ddk2WWB-H#6i=/BMc]9jU32BJ\u0026vqE6cA:{jPaAITBi=eqEv}Wnmc[V#5diZh-z/M$wBAfAVvru0)c)y5(dQljca$jTMAV=LUfcQ-fA+funA=91vA:{jAe*bawBz81)zE:7YeIeLtxjU%(A+P2ar4Gd\u00263i",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "B-7Yhx(v(io!Ho\u003eA42dnA::kAazb+lv\u003c}-\u003ey\u0026r/(y-)RbCva^0AV^H/DWMkcw]zYjx!gxIazCZox(EG{A=STqA=LPldiJet3jd2RwP}G\u0026A=Lw#t{8oMw{503d0vc:x^\u003cw}wO#2=336Q0B-IvxzE[30vrcw}wO#2=3qAc-vru66jS)^lA+O@\u003ey?kj",
            "ln": 306,
            "col": 2,
            "line": 15
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "require"
            ],
            [
              "",
              "debug.getinfo"
            ],
            [
              "",
              "ipairs"
            ],
            [
              "",
              "func"
            ],
            [
              "",
              "Variable.new"
            ],
            [
              "",
              "astal"
            ]
          ],
          "mbr": [
            "M.date",
            "M.map",
            "M.src",
            "Variable.new",
            "debug.getinfo",
            "debug.getinfo().source",
            "require().Variable"
          ],
          "tgt": [
            "Variable.new",
            "debug.getinfo",
            "func",
            "ipairs",
            "require"
          ],
          "funcs": [
            [
              "M.src",
              58
            ],
            [
              "M.map",
              305
            ]
          ],
          "metrics": {
            "ast": {
              "op.lor": 2,
              "max_depth": 12,
              "call_count": 9,
              "node_count": 232,
              "member_count": 7,
              "op_density.lor": 0.01,
              "member_depth_max": 3
            },
            "file": {
              "size": 490,
              "entropy": 5.02
            },
            "text": {
              "lines": 25,
              "top_char": 114,
              "tab_count": 9,
              "max_ws_run": 1,
              "digit_ratio": 0.02,
              "space_count": 49,
              "char_entropy": 5.02,
              "unique_chars": 50,
              "top_char_null": 0,
              "string_density": 0.28,
              "top_char_ratio": 0.08,
              "avg_line_length": 18.6,
              "max_line_length": 62,
              "empty_line_ratio": 0.2,
              "last_line_length": 8,
              "whitespace_ratio": 0.17,
              "identifier_density": 1.6,
              "line_length_stddev": 16.84,
              "normalized_string_count": 1.4,
              "suspicious_identifier_ratio": 0.14,
              "normalized_unique_identifiers": 4.52
            },
            "binds": {
              "count": 6
            },
            "binary": {
              "peak_region_bytes": 490,
              "peak_region_entropy": 5.02
            },
            "source": {
              "function_count": 2
            },
            "imports": {
              "count": 1,
              "third_party_count": 1,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 23,
              "count": 7,
              "avg_length": 3.29,
              "max_length": 6,
              "path_count": 1,
              "avg_entropy": 1.58,
              "empty_count": 1,
              "entropy_stddev": 0.83
            },
            "comments": {
              "chars": 77,
              "count": 4,
              "lines": 4,
              "to_code_ratio": 0.19
            },
            "functions": {
              "count": 2
            },
            "identifiers": {
              "count": 40,
              "unique": 21,
              "avg_length": 4.29,
              "max_length": 8,
              "min_length": 1,
              "avg_entropy": 1.75,
              "reuse_ratio": 0.53,
              "length_stddev": 2,
              "sequential_names": 3,
              "single_char_count": 3,
              "single_char_ratio": 0.14,
              "all_lowercase_ratio": 0.9,
              "all_uppercase_ratio": 0.05
            }
          }
        },
        "id": 3,
        "mol": "H(Po)",
        "path": "astal-0.2.5-1.src.rock!!astal-lua/examples/gtk4/simple-bar/lib.lua",
        "pid": 0,
        "risk": 2,
        "sha": "4e81b771cacfcb809352a0473d157baf53184402ab936d810a06f3db8a3f3804",
        "size": 490,
        "traits": [
          {
            "id": "metadata/file/profile/language::lang-english--atom-5",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                354,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/debug/symbol::lua-debug-module-access",
            "conf": 0.9,
            "crit": 3,
            "desc": "Accesses Lua debug module",
            "spans": [
              [
                92,
                13
              ]
            ]
          }
        ],
        "type": "lua"
      },
      {
        "ctx": [
          {
            "b": "y\u0026r/(y-(B{jS]913jpx/zEW^5z/cW(e]#5yc#-QpxEKn{y\u0026r/(y-)!vAV^H/wmYj)xd^?dBzkS8zZWv(ar\u003c-ddk2WWB-H#6i=/BMc]9jU32BJ\u0026vqE6cA:{jPaAITBi=eqEv}Wnmc[V#5diZh-z/M$wBAfAVvru0)c)y5(dQljca$jTMAV=LUfcQ-fA+funA=91vA:{jAe*bawBz81)zE:7YeIeLtxjU%(A+P2ar4Gd\u00263i",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "B-7Yhx(v(io!Ho\u003eA42dnA::kAazb+lv\u003c}-\u003ey\u0026r/(y-)RbCva^0AV^H/DWMkcw]zYjx!gxIazCZox(EG{A=STqA=LPldiJet3jd2RwP}G\u0026A=Lw#t{8oMw{503d0vc:x^\u003cw}wO#2=336Q0B-IvxzE[30vrcw}wO#2=3n0?YkXBUCwPzG{axeX1eIfi",
            "ln": 262,
            "col": 2,
            "line": 13
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "debug.getinfo"
            ],
            [
              "",
              "ipairs"
            ],
            [
              "",
              "func"
            ],
            [
              "",
              "table.insert"
            ]
          ],
          "mbr": [
            "M.map",
            "M.slice",
            "M.src",
            "debug.getinfo",
            "debug.getinfo().source",
            "table.insert"
          ],
          "tgt": [
            "debug.getinfo",
            "func",
            "ipairs",
            "table.insert"
          ],
          "funcs": [
            [
              "M.src",
              14
            ],
            [
              "M.map",
              261
            ],
            [
              "M.slice",
              488
            ]
          ],
          "metrics": {
            "ast": {
              "op.lor": 3,
              "max_depth": 12,
              "call_count": 7,
              "node_count": 263,
              "member_count": 6,
              "op_density.lor": 0.01,
              "member_depth_max": 3
            },
            "file": {
              "size": 664,
              "entropy": 4.9
            },
            "text": {
              "lines": 38,
              "top_char": 114,
              "tab_count": 16,
              "max_ws_run": 1,
              "digit_ratio": 0,
              "space_count": 68,
              "char_entropy": 4.9,
              "unique_chars": 48,
              "top_char_null": 0,
              "string_density": 0.11,
              "top_char_ratio": 0.1,
              "avg_line_length": 16.47,
              "max_line_length": 62,
              "empty_line_ratio": 0.18,
              "last_line_length": 8,
              "whitespace_ratio": 0.18,
              "identifier_density": 1.32,
              "line_length_stddev": 14.07,
              "normalized_string_count": 0.65,
              "suspicious_identifier_ratio": 0.14,
              "normalized_unique_identifiers": 4
            },
            "binds": {
              "count": 6
            },
            "binary": {
              "peak_region_bytes": 664,
              "peak_region_entropy": 4.9
            },
            "source": {
              "function_count": 3
            },
            "strings": {
              "bytes": 14,
              "count": 4,
              "avg_length": 3.5,
              "max_length": 6,
              "path_count": 1,
              "avg_entropy": 1.39,
              "entropy_stddev": 0.96
            },
            "comments": {
              "chars": 159,
              "count": 9,
              "lines": 9,
              "to_code_ratio": 0.31
            },
            "functions": {
              "count": 3
            },
            "identifiers": {
              "count": 50,
              "unique": 21,
              "avg_length": 4.24,
              "max_length": 7,
              "min_length": 1,
              "avg_entropy": 1.8,
              "reuse_ratio": 0.42,
              "length_stddev": 1.77,
              "sequential_names": 3,
              "single_char_count": 3,
              "single_char_ratio": 0.14,
              "all_lowercase_ratio": 0.95,
              "all_uppercase_ratio": 0.05
            }
          }
        },
        "id": 9,
        "mol": "H(Po)",
        "path": "astal-0.2.5-1.src.rock!!astal-lua/examples/gtk4/applauncher/lib.lua",
        "pid": 0,
        "risk": 2,
        "sha": "fad71b8c51d3fc3e74a33249eeaba5e11a3968a7cf1513469a219b2f8c646a24",
        "size": 664,
        "traits": [
          {
            "id": "metadata/file/profile/language::lang-english--atom-5",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                310,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/debug/symbol::lua-debug-module-access",
            "conf": 0.9,
            "crit": 3,
            "desc": "Accesses Lua debug module",
            "spans": [
              [
                48,
                13
              ]
            ]
          }
        ],
        "type": "lua"
      },
      {
        "ctx": [
          {
            "b": "y\u0026r/(y-(+!A+O@\u003ey?j.LaAz4kB.L(cc)A8vByw#fdk1UfA+O@\u003ey?i}Xy\u0026r/(y-(B{jS]913jpx/zEW^5z/cW(e]#5yc#-QpxEKn{y\u0026r/(y-)!vAV^H/wmYj)xd^?dBzkS8zZWv(ar\u003c-ddk2WWB-H#6i=/BMc]9jU32BJ\u0026vqE6cA:{jPaAITBi=eqEv}Wnmc[V#5diZh-z/M$wBAfAVvru0)c)y5(dQljca$jTMAV=LUfcQ-fA+funA=91vA:{jAe*bawBz81)zE:7YeIeLtxjU%(A+P2ar4Gd\u00263i",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "B-7Yhx(v(io!Ho\u003eA42dnA::kAazb+lv\u003c}-\u003ey\u0026r/(y-)RbCva^0AV^H/DWMkcw]zYjx!gxIazCZox(EG{A=STqA=LPldiJet3jd2RwP}G\u0026A=Lw#t{8oMw{503d0vc:x^\u003cw}wO#2=336Q0B-IvxzE[30vrcw}wO#2=3qAc-vru66jS)^lA+O@\u003ey?kj",
            "ln": 306,
            "col": 2,
            "line": 15
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "require"
            ],
            [
              "",
              "debug.getinfo"
            ],
            [
              "",
              "ipairs"
            ],
            [
              "",
              "func"
            ],
            [
              "",
              "Variable.new"
            ],
            [
              "",
              "astal"
            ]
          ],
          "mbr": [
            "M.date",
            "M.map",
            "M.src",
            "Variable.new",
            "debug.getinfo",
            "debug.getinfo().source",
            "require().Variable"
          ],
          "tgt": [
            "Variable.new",
            "debug.getinfo",
            "func",
            "ipairs",
            "require"
          ],
          "funcs": [
            [
              "M.src",
              58
            ],
            [
              "M.map",
              305
            ]
          ],
          "metrics": {
            "ast": {
              "op.lor": 2,
              "max_depth": 12,
              "call_count": 9,
              "node_count": 232,
              "member_count": 7,
              "op_density.lor": 0.01,
              "member_depth_max": 3
            },
            "file": {
              "size": 490,
              "entropy": 5.02
            },
            "text": {
              "lines": 25,
              "top_char": 114,
              "tab_count": 9,
              "max_ws_run": 1,
              "digit_ratio": 0.02,
              "space_count": 49,
              "char_entropy": 5.02,
              "unique_chars": 50,
              "top_char_null": 0,
              "string_density": 0.28,
              "top_char_ratio": 0.08,
              "avg_line_length": 18.6,
              "max_line_length": 62,
              "empty_line_ratio": 0.2,
              "last_line_length": 8,
              "whitespace_ratio": 0.17,
              "identifier_density": 1.6,
              "line_length_stddev": 16.84,
              "normalized_string_count": 1.4,
              "suspicious_identifier_ratio": 0.14,
              "normalized_unique_identifiers": 4.52
            },
            "binds": {
              "count": 6
            },
            "binary": {
              "peak_region_bytes": 490,
              "peak_region_entropy": 5.02
            },
            "source": {
              "function_count": 2
            },
            "imports": {
              "count": 1,
              "third_party_count": 1,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 23,
              "count": 7,
              "avg_length": 3.29,
              "max_length": 6,
              "path_count": 1,
              "avg_entropy": 1.58,
              "empty_count": 1,
              "entropy_stddev": 0.83
            },
            "comments": {
              "chars": 77,
              "count": 4,
              "lines": 4,
              "to_code_ratio": 0.19
            },
            "functions": {
              "count": 2
            },
            "identifiers": {
              "count": 40,
              "unique": 21,
              "avg_length": 4.29,
              "max_length": 8,
              "min_length": 1,
              "avg_entropy": 1.75,
              "reuse_ratio": 0.53,
              "length_stddev": 2,
              "sequential_names": 3,
              "single_char_count": 3,
              "single_char_ratio": 0.14,
              "all_lowercase_ratio": 0.9,
              "all_uppercase_ratio": 0.05
            }
          }
        },
        "id": 15,
        "mol": "H(Po)",
        "path": "astal-0.2.5-1.src.rock!!astal-lua/examples/gtk3/simple-bar/lib.lua",
        "pid": 0,
        "risk": 2,
        "sha": "4e81b771cacfcb809352a0473d157baf53184402ab936d810a06f3db8a3f3804",
        "size": 490,
        "traits": [
          {
            "id": "metadata/file/profile/language::lang-english--atom-5",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                354,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/debug/symbol::lua-debug-module-access",
            "conf": 0.9,
            "crit": 3,
            "desc": "Accesses Lua debug module",
            "spans": [
              [
                92,
                13
              ]
            ]
          }
        ],
        "type": "lua"
      },
      {
        "ctx": [
          {
            "b": "y\u0026r/(y-)ecByw#djS[=RADL#owHF:hB97\u0026ba$i\u003enz!0i(axz]\u003ex\u003c\u003eE!wGTbUA+flkx(W=kb4kLmvqEbpe((z3x\u003c\u003eE!wErl(v{%f@m%5I?jS[=RADL#owHF:hB97\u0026be[YowgA[n2m%5INy\u0026r/(y-(kwx\u003c@hFayPtkvqEMpwPq\u003cbA+cTym[^Saa$i\u003enz!0i(ayY55wfs2TvrlK0y+xghzE:7Yy\u0026r/(y-(B{jS]913jpx/zEW^5z/cW(e]#5yc#-QpxEKn{y\u0026r/(y-)!vAV^H/wmYj)xd^?dBzkS8zZWv(ar\u003c-ddk2WWB-H#6i=/BMc]9jU32BJ\u0026vqE6cA:{jPaAITBi=eqEv}Wnmc[V#5diZh-z/M$wBAfAVvru0)c)y5(dQljca$jTMAV=LUfcQ-fA+funA=91vA:{jAe*bawBz81)zE:7YeIeLtxjU%(A+P2ar4Gd\u00263i",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "B-7Yhx(v(io!Ho\u003eA42dnA::kAazb+lv\u003c}-\u003ey\u0026r/(y-)RbCva^0AV^H/DWMkcw]zYjx!gxIazCZox(EG{A=STqA=LPldiJet3jd2RwP}G\u0026A=Lw#t{8oMw{503d0vc:x^\u003cw}wO#2=336Q0B-IvxzE[30vrcw}wO#2=3n0?YkYydLvqNcavruf9B98B",
            "ln": 434,
            "col": 2,
            "line": 19
          },
          {
            "b": "az2C33jm7Czddx/yH}=%auZ\u0026+x(1a.wO#2=3jgP*Bzkujc[bGg336Q0B-IvxB7GDgwPRv5vpB4:d0(pc33fW1auZ\u0026VB-7Yhx(v(qyH}=xaA?gfB.90e2)*]GwO+}1wHIt9C{%7b2)\u003eDSA9E9?D0IKQaA?gfB.7)^2)\u003eG/Bzkujc[bGf31X0+ed8W\u0026wmYN*By=NT",
            "ln": 970,
            "col": 61,
            "line": 44
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "require"
            ],
            [
              "",
              "require"
            ],
            [
              "",
              "require"
            ],
            [
              "",
              "astal.require"
            ],
            [
              "",
              "debug.getinfo"
            ],
            [
              "",
              "ipairs"
            ],
            [
              "",
              "func"
            ],
            [
              "",
              "GLib.file_test"
            ],
            [
              "",
              "Variable.new"
            ],
            [
              "",
              "pairs"
            ],
            [
              "",
              "table.insert"
            ],
            [
              "",
              "notify"
            ],
            [
              "",
              "setmetatable"
            ],
            [
              "",
              "delete"
            ],
            [
              "",
              "notify"
            ],
            [
              "",
              "delete"
            ],
            [
              "",
              "notify"
            ],
            [
              "",
              "bind"
            ],
            [
              "",
              "GLib.DateTime.new_from_unix_local"
            ],
            [
              "",
              "astal"
            ],
            [
              "",
              "astal.gtk3"
            ]
          ],
          "mbr": [
            "GLib.DateTime",
            "GLib.DateTime.new_from_unix_local",
            "GLib.file_test",
            "Gtk.Widget",
            "M.file_exists",
            "M.map",
            "M.src",
            "M.time",
            "M.varmap",
            "Variable.new",
            "astal.bind",
            "astal.require",
            "debug.getinfo",
            "debug.getinfo().source",
            "require().Gtk",
            "require().Variable",
            "table.insert"
          ],
          "tgt": [
            "GLib.DateTime.new_from_unix_local",
            "GLib.file_test",
            "Variable.new",
            "astal.require",
            "bind",
            "debug.getinfo",
            "delete",
            "func",
            "ipairs",
            "notify",
            "pairs",
            "require",
            "setmetatable",
            "table.insert"
          ],
          "funcs": [
            [
              "M.src",
              186
            ],
            [
              "M.map",
              433
            ],
            [
              "M.file_exists",
              604
            ],
            [
              "M.varmap",
              676
            ],
            [
              "notify",
              754
            ],
            [
              "delete",
              883
            ],
            [
              "M.time",
              1391
            ]
          ],
          "metrics": {
            "ast": {
              "op.lor": 3,
              "max_depth": 15,
              "call_count": 28,
              "node_count": 644,
              "member_count": 17,
              "max_array_len": 4,
              "op_density.lor": 0,
              "member_depth_max": 3
            },
            "file": {
              "size": 1526,
              "entropy": 5.01
            },
            "text": {
              "lines": 75,
              "top_char": 101,
              "tab_count": 65,
              "max_ws_run": 1,
              "digit_ratio": 0,
              "space_count": 127,
              "char_entropy": 5.01,
              "unique_chars": 61,
              "top_char_null": 0,
              "string_density": 0.13,
              "top_char_ratio": 0.07,
              "avg_line_length": 19.35,
              "max_line_length": 70,
              "empty_line_ratio": 0.16,
              "last_line_length": 8,
              "whitespace_ratio": 0.17,
              "identifier_density": 1.65,
              "line_length_stddev": 17.34,
              "normalized_string_count": 1.15,
              "suspicious_identifier_ratio": 0.06,
              "normalized_unique_identifiers": 8.03
            },
            "binds": {
              "count": 13
            },
            "binary": {
              "peak_region_bytes": 1526,
              "peak_region_entropy": 5.02
            },
            "source": {
              "function_count": 7
            },
            "imports": {
              "count": 2,
              "third_party_count": 2,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 49,
              "count": 10,
              "avg_length": 4.9,
              "max_length": 10,
              "path_count": 1,
              "avg_entropy": 1.85,
              "entropy_stddev": 0.77
            },
            "comments": {
              "chars": 153,
              "count": 8,
              "lines": 8,
              "to_code_ratio": 0.12
            },
            "functions": {
              "count": 7
            },
            "identifiers": {
              "count": 124,
              "unique": 50,
              "avg_length": 5.5,
              "max_length": 19,
              "min_length": 1,
              "avg_entropy": 2.02,
              "reuse_ratio": 0.4,
              "length_stddev": 3.14,
              "sequential_names": 3,
              "single_char_count": 4,
              "single_char_ratio": 0.08,
              "high_entropy_count": 1,
              "high_entropy_ratio": 0.02,
              "all_lowercase_ratio": 0.88,
              "all_uppercase_ratio": 0.04,
              "underscore_prefix_count": 2
            }
          }
        },
        "id": 22,
        "mol": "H(Po)",
        "path": "astal-0.2.5-1.src.rock!!astal-lua/examples/gtk3/notifications/lib.lua",
        "pid": 0,
        "risk": 2,
        "sha": "788d9cfaa785bd8963ad92e4968a3819d8d179f132b147b688afb03e4cd0e1f2",
        "size": 1526,
        "traits": [
          {
            "id": "metadata/file/profile/language::lang-english--atom-5",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                482,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/debug/symbol::lua-debug-module-access",
            "conf": 0.9,
            "crit": 3,
            "desc": "Accesses Lua debug module",
            "spans": [
              [
                220,
                13
              ]
            ]
          }
        ],
        "type": "lua"
      },
      {
        "ctx": [
          {
            "b": "y\u0026r/(y-(B{jS]913jpx/zEW^5z/cW(e]#5yc#-QpxEKn{y\u0026r/(y-)!vAV^H/wmYj)xd^?dBzkS8zZWv(ar\u003c-ddk2WWB-H#6i=/BMc]9jU32BJ\u0026vqE6cA:{jPaAITBi=eqEv}Wnmc[V#5diZh-z/M$wBAfAVvru0)c)y5(dQljca$jTMAV=LUfcQ-fA+funA=91vA:{jAe*bawBz81)zE:7YeIeLtxjU%(A+P2ar4Gd\u00263i",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "B-7Yhx(v(io!Ho\u003eA42dnA::kAazb+lv\u003c}-\u003ey\u0026r/(y-)RbCva^0AV^H/DWMkcw]zYjx!gxIazCZox(EG{A=STqA=LPldiJet3jd2RwP}G\u0026A=Lw#t{8oMw{503d0vc:x^\u003cw}wO#2=336Q0B-IvxzE[30vrcw}wO#2=3n0?YkXBUCwPzG{axeX1eIfi",
            "ln": 262,
            "col": 2,
            "line": 13
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "debug.getinfo"
            ],
            [
              "",
              "ipairs"
            ],
            [
              "",
              "func"
            ],
            [
              "",
              "table.insert"
            ]
          ],
          "mbr": [
            "M.map",
            "M.slice",
            "M.src",
            "debug.getinfo",
            "debug.getinfo().source",
            "table.insert"
          ],
          "tgt": [
            "debug.getinfo",
            "func",
            "ipairs",
            "table.insert"
          ],
          "funcs": [
            [
              "M.src",
              14
            ],
            [
              "M.map",
              261
            ],
            [
              "M.slice",
              488
            ]
          ],
          "metrics": {
            "ast": {
              "op.lor": 3,
              "max_depth": 12,
              "call_count": 7,
              "node_count": 263,
              "member_count": 6,
              "op_density.lor": 0.01,
              "member_depth_max": 3
            },
            "file": {
              "size": 664,
              "entropy": 4.9
            },
            "text": {
              "lines": 38,
              "top_char": 114,
              "tab_count": 16,
              "max_ws_run": 1,
              "digit_ratio": 0,
              "space_count": 68,
              "char_entropy": 4.9,
              "unique_chars": 48,
              "top_char_null": 0,
              "string_density": 0.11,
              "top_char_ratio": 0.1,
              "avg_line_length": 16.47,
              "max_line_length": 62,
              "empty_line_ratio": 0.18,
              "last_line_length": 8,
              "whitespace_ratio": 0.18,
              "identifier_density": 1.32,
              "line_length_stddev": 14.07,
              "normalized_string_count": 0.65,
              "suspicious_identifier_ratio": 0.14,
              "normalized_unique_identifiers": 4
            },
            "binds": {
              "count": 6
            },
            "binary": {
              "peak_region_bytes": 664,
              "peak_region_entropy": 4.9
            },
            "source": {
              "function_count": 3
            },
            "strings": {
              "bytes": 14,
              "count": 4,
              "avg_length": 3.5,
              "max_length": 6,
              "path_count": 1,
              "avg_entropy": 1.39,
              "entropy_stddev": 0.96
            },
            "comments": {
              "chars": 159,
              "count": 9,
              "lines": 9,
              "to_code_ratio": 0.31
            },
            "functions": {
              "count": 3
            },
            "identifiers": {
              "count": 50,
              "unique": 21,
              "avg_length": 4.24,
              "max_length": 7,
              "min_length": 1,
              "avg_entropy": 1.8,
              "reuse_ratio": 0.42,
              "length_stddev": 1.77,
              "sequential_names": 3,
              "single_char_count": 3,
              "single_char_ratio": 0.14,
              "all_lowercase_ratio": 0.95,
              "all_uppercase_ratio": 0.05
            }
          }
        },
        "id": 28,
        "mol": "H(Po)",
        "path": "astal-0.2.5-1.src.rock!!astal-lua/examples/gtk3/media-player/lib.lua",
        "pid": 0,
        "risk": 2,
        "sha": "fad71b8c51d3fc3e74a33249eeaba5e11a3968a7cf1513469a219b2f8c646a24",
        "size": 664,
        "traits": [
          {
            "id": "metadata/file/profile/language::lang-english--atom-5",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                310,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/debug/symbol::lua-debug-module-access",
            "conf": 0.9,
            "crit": 3,
            "desc": "Accesses Lua debug module",
            "spans": [
              [
                48,
                13
              ]
            ]
          }
        ],
        "type": "lua"
      },
      {
        "ctx": [
          {
            "b": "y\u0026r/(y-(B{jS]913jpx/zEW^5z/cW(e]#5yc#-QpxEKn{y\u0026r/(y-)!vAV^H/wmYj)xd^?dBzkS8zZWv(ar\u003c-ddk2WWB-H#6i=/BMc]9jU32BJ\u0026vqE6cA:{jPaAITBi=eqEv}Wnmc[V#5diZh-z/M$wBAfAVvru0)c)y5(dQljca$jTMAV=LUfcQ-fA+funA=91vA:{jAe*bawBz81)zE:7YeIeLtxjU%(A+P2ar4Gd\u00263i",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "B-7Yhx(v(io!Ho\u003eA42dnA::kAazb+lv\u003c}-\u003ey\u0026r/(y-)RbCva^0AV^H/DWMkcw]zYjx!gxIazCZox(EG{A=STqA=LPldiJet3jd2RwP}G\u0026A=Lw#t{8oMw{503d0vc:x^\u003cw}wO#2=336Q0B-IvxzE[30vrcw}wO#2=3n0?YkXBUCwPzG{axeX1eIfi",
            "ln": 262,
            "col": 2,
            "line": 13
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "debug.getinfo"
            ],
            [
              "",
              "ipairs"
            ],
            [
              "",
              "func"
            ],
            [
              "",
              "table.insert"
            ]
          ],
          "mbr": [
            "M.map",
            "M.slice",
            "M.src",
            "debug.getinfo",
            "debug.getinfo().source",
            "table.insert"
          ],
          "tgt": [
            "debug.getinfo",
            "func",
            "ipairs",
            "table.insert"
          ],
          "funcs": [
            [
              "M.src",
              14
            ],
            [
              "M.map",
              261
            ],
            [
              "M.slice",
              488
            ]
          ],
          "metrics": {
            "ast": {
              "op.lor": 3,
              "max_depth": 12,
              "call_count": 7,
              "node_count": 263,
              "member_count": 6,
              "op_density.lor": 0.01,
              "member_depth_max": 3
            },
            "file": {
              "size": 664,
              "entropy": 4.9
            },
            "text": {
              "lines": 38,
              "top_char": 114,
              "tab_count": 16,
              "max_ws_run": 1,
              "digit_ratio": 0,
              "space_count": 68,
              "char_entropy": 4.9,
              "unique_chars": 48,
              "top_char_null": 0,
              "string_density": 0.11,
              "top_char_ratio": 0.1,
              "avg_line_length": 16.47,
              "max_line_length": 62,
              "empty_line_ratio": 0.18,
              "last_line_length": 8,
              "whitespace_ratio": 0.18,
              "identifier_density": 1.32,
              "line_length_stddev": 14.07,
              "normalized_string_count": 0.65,
              "suspicious_identifier_ratio": 0.14,
              "normalized_unique_identifiers": 4
            },
            "binds": {
              "count": 6
            },
            "binary": {
              "peak_region_bytes": 664,
              "peak_region_entropy": 4.9
            },
            "source": {
              "function_count": 3
            },
            "strings": {
              "bytes": 14,
              "count": 4,
              "avg_length": 3.5,
              "max_length": 6,
              "path_count": 1,
              "avg_entropy": 1.39,
              "entropy_stddev": 0.96
            },
            "comments": {
              "chars": 159,
              "count": 9,
              "lines": 9,
              "to_code_ratio": 0.31
            },
            "functions": {
              "count": 3
            },
            "identifiers": {
              "count": 50,
              "unique": 21,
              "avg_length": 4.24,
              "max_length": 7,
              "min_length": 1,
              "avg_entropy": 1.8,
              "reuse_ratio": 0.42,
              "length_stddev": 1.77,
              "sequential_names": 3,
              "single_char_count": 3,
              "single_char_ratio": 0.14,
              "all_lowercase_ratio": 0.95,
              "all_uppercase_ratio": 0.05
            }
          }
        },
        "id": 34,
        "mol": "H(Po)",
        "path": "astal-0.2.5-1.src.rock!!astal-lua/examples/gtk3/applauncher/lib.lua",
        "pid": 0,
        "risk": 2,
        "sha": "fad71b8c51d3fc3e74a33249eeaba5e11a3968a7cf1513469a219b2f8c646a24",
        "size": 664,
        "traits": [
          {
            "id": "metadata/file/profile/language::lang-english--atom-5",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                310,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/debug/symbol::lua-debug-module-access",
            "conf": 0.9,
            "crit": 3,
            "desc": "Accesses Lua debug module",
            "spans": [
              [
                48,
                13
              ]
            ]
          }
        ],
        "type": "lua"
      },
      {
        "ctx": [
          {
            "b": "boXZ.B8\u0026{yx(kOnzGWdsBZUQ:y\u0026r/(y-)Lbx=]LYA+flkx(W=kcV0BfcN/ysz!0i(av*c:auZ\u0026-xk5#swPq\u003cbA+cTDm}((?efDq}e?!U43t:S\u003cvqE5RoLE@UjS[MNx!BBqADL#owHF]@oLE@-efDq}e?!U43t:S\u003cvqE5{A+xu1A=U!mjS[=RADL#owHF{mA+xu1A=U!tdgcA5wPm",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "uVQHgv\u003c\u0026Z6mn)bRpFJn^3jm)#arUGsv{%f@A+frhz/fScauZ\u0026Sz/fCNv{%g\u0026uVQHgv\u003c?WbarR^HarR^Oz/PFyw].D]wmY*$Bz(aJl{=3qcObPEarR^HarR^Ofk\u003e(zfj]lowN]v[yJKGlfgncHB0\u0026HCarR^HarR^HcVs3re[PcnwN]v[yJKGle\u003c@3GB0\u0026HCarR^HarR^HcROk}BwumYwPGjI3lQDlarR^Hav/atvLgX\u0026A+O%1BsnH+djlU?DWNs]3lQDlarR^H",
            "ln": 301,
            "col": 29,
            "line": 15
          },
          {
            "b": "vqYN^B09Q*DWMkdarR^Hy\u0026r/(y-)XqwObU3auZ?{x(tQ\u0026B97\u0026be**#karR^Hw]zYjuO0sqvqPM#x(k5lwPI*ezGxwwC42ifwM{({i+-Lwx(XnydiJet3lQDlarR^HazCBgzEEx[i=/BMc]0m}bxdWmw[=Gsau.\u003egAb]J4x)p+xxK#5*arR^HarR^",
            "ln": 592,
            "col": 15,
            "line": 28
          },
          {
            "b": "v}vX{x(!w$x(mE1CxkeY3lQDlaAz4nB-IvxB7Gf1i+-FPz!\u0026]\u003ezdN*5z!7mzoLFM\u0026s7#L.z*cmIefECRx\u003c@X}vrc6\u003czGEoOc[cI)efECRx\u003c@X}vrc6\u003czGF\u003c6AaHBBc$dfCcN*FKarR^HarR^Hi+h/iz!9Acdo!Jj3t19=3jpx/zEW^5z/cW?zGx]dzEWlsrbVy",
            "ln": 1697,
            "col": 16,
            "line": 75
          },
          {
            "b": "x(!wzdlqJ)zeAZ4C{\u003e4lx(!wsvpKy[C4z!gzGx]dzEWm0e*\u00267P3lQDlat2e/q/(C*BAIKBpJgz\u0026z/fR6arR^Hy\u0026r/(y-)+vzxI7+Aa9^dwPx?wz/6u1zE+dyA=(mEdlqJ)zeAZ4C{\u003e4rB-5sgzxIk^Byw#dvq{g4x\u003e7N[x(v(ix(n0lvqYN^e*\u00268ewmY/",
            "ln": 2408,
            "col": 22,
            "line": 97
          },
          {
            "b": "arR^Hasy9fvrcEhayMygwP]m.B97\u0026bayPkdy?Wx/BzkVhayYQsA=(nqx(mMaBzbkdxk8K2zxIR}vixc0BAhTHAbPDdBrCgfy?kjD3lQDlasNT8arR^HA=(mXvrc16zdNQbc)@Rvy?j$BasxP}BAhTHAbPDdBrBn1vixe@y?kjDefDq)fkkrrBs}w",
            "ln": 2572,
            "col": 4,
            "line": 101
          },
          {
            "b": "azC.mByx5%wIbtV3lQDlarR^HauB4AB7ol8Acb/jzyu(1z/6ulzFrP?By/IoCwhejayPdgvqG%}vpTTaA=(nqx(mMal34cRy-)e9Abok#vruj4zxJUhB97\u0026dv}u^3C4CXpl[H-FB1O*?3jm)#arUYoADL\u0026lBui\u0026Jxlw65zGEoOvrc14cOcw/k{f#T",
            "ln": 3158,
            "col": 52,
            "line": 114
          },
          {
            "b": "x\u003c@YowPRH3B%[.dq+HE}mnultqBKFhefDr-B.\u003e\u00264zyl\u003euarR^HarR^HwO#2=3lQDlarR^HaAz4nB-Ivxz/WKxCX7xcBy=\u003ewBAh8kxd^!mA=2lbc)@?Nvi]$qc37B+ayPq6B1RoKvpag?A=U@kzy=]sA+xCCw[=6)djCPDarR!ry\u0026:f4w/$J5xlbXCwPq\u003c7B95KDxK#5*arR^HarR^Hx\u003ewG9z/^9[zGx]dzEWlsx(^T4B-88hzF7vDaARpdzvc",
            "ln": 4484,
            "col": 15,
            "line": 153
          },
          {
            "b": "arR^HarUlkwc@U^arR^HarR!EwPS6nzxHRuarR^HwO#2=wO#2=3uxZ1B-Ivxz/WKxCXImFzddc@c[cOL",
            "ln": 5788,
            "col": 3,
            "line": 194
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "require"
            ],
            [
              "",
              "lgi.require"
            ],
            [
              "",
              "lgi.require"
            ],
            [
              "",
              "require"
            ],
            [
              "",
              "require"
            ],
            [
              "",
              "Gio.bus_get_sync"
            ],
            [
              "",
              "GLib.Variant"
            ],
            [
              "",
              "GLib.VariantType"
            ],
            [
              "",
              "table.insert"
            ],
            [
              "",
              "ipairs"
            ],
            [
              "",
              "self.list_instances"
            ],
            [
              "",
              "Gio.bus_get_sync"
            ],
            [
              "",
              "string.format"
            ],
            [
              "",
              "GLib.Variant"
            ],
            [
              "",
              "GLib.VariantType"
            ],
            [
              "",
              "GLib.Variant"
            ],
            [
              "",
              "GLib.VariantType"
            ],
            [
              "",
              "GLib.Variant"
            ],
            [
              "",
              "GLib.VariantType"
            ],
            [
              "",
              "GLib.Variant"
            ],
            [
              "",
              "GLib.VariantType"
            ],
            [
              "",
              "GLib.Variant"
            ],
            [
              "",
              "GLib.VariantType"
            ],
            [
              "",
              "argparse"
            ],
            [
              "",
              "ipairs"
            ],
            [
              "",
              "Instance.list_instances"
            ],
            [
              "",
              "GLib.setenv"
            ],
            [
              "",
              "GLib.setenv"
            ],
            [
              "",
              "GLib.setenv"
            ],
            [
              "",
              "GLib.setenv"
            ],
            [
              "",
              "os.execute"
            ],
            [
              "",
              "string.format"
            ],
            [
              "",
              "string.format"
            ],
            [
              "",
              "ipairs"
            ],
            [
              "",
              "string.format"
            ],
            [
              "",
              "os.exit"
            ],
            [
              "",
              "main"
            ],
            [
              "",
              "argparse"
            ],
            [
              "",
              "astal._overrides"
            ],
            [
              "",
              "lgi"
            ]
          ],
          "mbr": [
            "GLib.Variant",
            "GLib.VariantType",
            "GLib.setenv",
            "Gio.bus_get_sync",
            "Instance.list_instances",
            "Instance.name",
            "args.args",
            "args.file",
            "args.gdk_wayland",
            "args.gtk4",
            "args.inspector",
            "args.instance",
            "args.list",
            "args.list_windows",
            "args.lua_version",
            "args.nvidia",
            "args.quit",
            "args.request",
            "args.run",
            "args.toggle_window",
            "args.vulkan",
            "io.stderr",
            "io.stdout",
            "lgi.require",
            "os.execute",
            "os.exit",
            "response.value",
            "self.list_instances",
            "self.name",
            "string.format",
            "table.insert"
          ],
          "tgt": [
            "GLib.Variant",
            "GLib.VariantType",
            "GLib.setenv",
            "Gio.bus_get_sync",
            "Instance.list_instances",
            "argparse",
            "ipairs",
            "lgi.require",
            "main",
            "os.execute",
            "os.exit",
            "require",
            "self.list_instances",
            "string.format",
            "table.insert"
          ],
          "funcs": [
            [
              "Instance.list_instances",
              238
            ],
            [
              "Instance:is_running",
              837
            ],
            [
              "Instance:invoke_method",
              1121
            ],
            [
              "Instance:Request",
              1526
            ],
            [
              "Instance:ListWindows",
              1682
            ],
            [
              "Instance:ToggleWindow",
              1831
            ],
            [
              "Instance:Inspector",
              1992
            ],
            [
              "Instance:Quit",
              2123
            ],
            [
              "main",
              2244
            ]
          ],
          "metrics": {
            "ast": {
              "op.eq": 2,
              "op.add": 1,
              "op.sub": 2,
              "op.lnot": 1,
              "max_depth": 18,
              "call_count": 94,
              "node_count": 1790,
              "member_count": 31,
              "max_array_len": 1,
              "op_density.eq": 0,
              "op_density.add": 0,
              "op_density.sub": 0,
              "op_density.lnot": 0,
              "max_concat_chain": 2,
              "member_depth_max": 2
            },
            "file": {
              "size": 5852,
              "entropy": 4.65
            },
            "text": {
              "lines": 200,
              "top_char": 110,
              "max_ws_run": 1,
              "digit_ratio": 0.01,
              "space_count": 1351,
              "char_entropy": 4.65,
              "unique_chars": 75,
              "top_char_null": 0,
              "string_density": 0.46,
              "top_char_ratio": 0.06,
              "avg_line_length": 28.26,
              "max_line_length": 100,
              "empty_line_ratio": 0.19,
              "last_line_length": 22,
              "whitespace_ratio": 0.27,
              "identifier_density": 1.42,
              "line_length_stddev": 26.21,
              "normalized_string_count": 6.51,
              "repeated_char_sequences": 34,
              "normalized_unique_identifiers": 9.55
            },
            "binds": {
              "count": 18
            },
            "binary": {
              "peak_region_bytes": 4096,
              "peak_region_entropy": 4.87
            },
            "source": {
              "function_count": 2
            },
            "imports": {
              "count": 3,
              "third_party_count": 3,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 1274,
              "count": 92,
              "avg_length": 13.85,
              "max_length": 75,
              "path_count": 4,
              "avg_entropy": 2.65,
              "entropy_stddev": 1
            },
            "comments": {
              "chars": 222,
              "count": 7,
              "lines": 7,
              "to_code_ratio": 0.04
            },
            "functions": {
              "count": 2
            },
            "identifiers": {
              "count": 283,
              "unique": 73,
              "avg_length": 6.71,
              "max_length": 14,
              "min_length": 1,
              "avg_entropy": 2.38,
              "reuse_ratio": 0.26,
              "length_stddev": 3.05,
              "has_digit_ratio": 0.01,
              "single_char_count": 1,
              "single_char_ratio": 0.01,
              "all_lowercase_ratio": 0.85,
              "all_uppercase_ratio": 0.01,
              "numeric_suffix_count": 1,
              "underscore_prefix_count": 1
            }
          }
        },
        "id": 37,
        "mol": "H₂(CmPo)",
        "path": "astal-0.2.5-1.src.rock!!astal-lua/bin/init.lua",
        "pid": 0,
        "risk": 2,
        "sha": "7845112a3e88ecd0d21bd156829eb79adaff611d9dc936fb067000383a1f5025",
        "size": 5852,
        "traits": [
          {
            "id": "micro-behaviors/communications/ipc/dbus::dbus-core-interface",
            "conf": 0.85,
            "crit": 3,
            "desc": "References the core D-Bus interface",
            "spans": [
              [
                365,
                20
              ]
            ]
          },
          {
            "id": "metadata/file/profile/language::lang-english--atom-5",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                640,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/process/create/shell/spawn::lua-os-execute",
            "atk": "T1059.004",
            "conf": 0.9,
            "crit": 3,
            "desc": "Lua os.execute() function call",
            "spans": [
              [
                4548,
                10
              ]
            ]
          },
          {
            "id": "metadata/file/profile/language::lang-english--atom-1",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                2620,
                0
              ]
            ]
          }
        ],
        "type": "lua"
      },
      {
        "ctx": [
          {
            "b": "y\u0026r/(y-)ecByw#djS[=RADL#owHF{mB97\u0026bcN/ysz!0i(ax9i3A3dp^vrlK0y+x:tADL#owHF{8z/{1DefDq@e?!U43t:S\u003cvqE5Rx(taSayPtkvqEMpwPq\u003cbA+cTDm}((?efDq}e?!U43t:S\u003cvqE5RoLE@UjS[fOByw#rA+flkx(W=kcR3\u003cAvKAYHcO^qdcJ",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "z/Oc:xlazTwPI*ezGxwwzE[2mjS[uVzEW^5z/c$iA+xCx3lQDlaAz4nB-IvxB7GDgwPRv5vpB4:d0(pzarR^HarR!HA+(\u003cYayPq6B1RPQy+b]oarR^HarR!FByxolB6\u0026A}wmV(DayPq6B1RJQvruTkuT[1+wH[fharR^HarR!ByAL+.vrc14e]LIR3lQDlarR^H",
            "ln": 863,
            "col": 35,
            "line": 26
          },
          {
            "b": "zf3*.aBwIzarR^Hy\u0026r/(y-)qbv@C)?wm6H*y+cYuzEWP}wN]d-wQaQ\u0026arR^Hw]zYjyH}=xaA?gfB.8XfzxJ[bx(XnyAa9=}zf4cGwn.!$arR^HarR!yz!0i(azb+jy*Q%?C{2l)Aa9=#zGGl3wQbzbzE:\u003erAa9=#zGGl3wQbyJe*8JCcM\u003e2]azULlatbn?cTw8GaA8oyyH}+#arR^HarR^HwO#0@wmYpUyH}=ljS)l*x\u003c@X{A+NdqB7nS$wNxI2A+PA7d0fxGBAh8kxd9",
            "ln": 1386,
            "col": 23,
            "line": 45
          },
          {
            "b": "3lQDlarR^Haz2C33lQDlaz2C33lQDlaAz4nB-IvxBywS{wIdFhzEW9%c$Npaz!9A\u0026uVoB]vqQ6paswG-dgfT7wc@U}eIfj$y*?yaaw#=\u003cB.bSoA%=-4v{%f@qE%\u0026\u003cwPI%mauZ\u0026]",
            "ln": 1910,
            "col": 76,
            "line": 56
          },
          {
            "b": "vR/QrB98CpzF7HyvqZuO3n0?YkXs.wy?aV4wNPaXA=TC/BywS{wJU3QA+PA7efG1QA+PA7j%kj}DMVJplVl\u003c:wO#Pwrc-B]b3^kLcT*$ky?Wx/BzkVhfktMDzylMOasznxCYUPTy*?3}cM)^VcT*$ky?Wx/BzkVhfl/6)CxUSJz/PXDB-IqfzEWP}wN)ehEf}LTeKi]ZwO+)1vSb!5koL2?A+PA73jnvpeKjn-A:-/czdN*5z!6$mm[3x3aBCpQp!$1?a%qmQb2zosa%qmQb1a\u003c[mn#Y1aBCpQp^F5FnfOx)eIfkbvrb^[ayPq6B0av(ADL\u0026lBApt\u003eADL\u0026lBu%}WA%:GJeKjt/BAIRwaw#=\u003cB.bSoB1Qv4B8V5nB7C",
            "ln": 2092,
            "col": 21,
            "line": 67
          },
          {
            "b": "aAz4nB-IvxqE%\u0026\u003cwPI%me[5*DzEW3]wPq\u003c7B95/Tp!$1?cOcxGA+xCx3t19=3jnvpeKjn-A:-/cvrc14aw#=\u003cB.bSoB5DN?B.bSol2{QV3q$CPB.bSoB1Q)xD2vb0",
            "ln": 4728,
            "col": 4,
            "line": 150
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "require"
            ],
            [
              "",
              "astal.require"
            ],
            [
              "",
              "astal.require"
            ],
            [
              "",
              "astal.require"
            ],
            [
              "",
              "string.format"
            ],
            [
              "",
              "setmetatable"
            ],
            [
              "",
              "pairs"
            ],
            [
              "",
              "GLib.Uri.escape_string"
            ],
            [
              "",
              "tostring"
            ],
            [
              "",
              "type"
            ],
            [
              "",
              "table.insert"
            ],
            [
              "",
              "encode_query_params"
            ],
            [
              "",
              "GLib.Uri.escape_string"
            ],
            [
              "",
              "tostring"
            ],
            [
              "",
              "table.insert"
            ],
            [
              "",
              "table.concat"
            ],
            [
              "",
              "Soup.Session.new"
            ],
            [
              "",
              "string.format"
            ],
            [
              "",
              "encode_query_params"
            ],
            [
              "",
              "Soup.Message.new_from_uri"
            ],
            [
              "",
              "GLib.Uri.parse"
            ],
            [
              "",
              "pairs"
            ],
            [
              "",
              "type"
            ],
            [
              "",
              "GLib.Bytes"
            ],
            [
              "",
              "Gio.MemoryOutputStream.new_resizable"
            ],
            [
              "",
              "Response.new"
            ],
            [
              "",
              "async"
            ],
            [
              "",
              "callback"
            ],
            [
              "",
              "Requests.async_request"
            ],
            [
              "",
              "await"
            ],
            [
              "",
              "Requests.async_request"
            ],
            [
              "",
              "Requests.async_request"
            ],
            [
              "",
              "async"
            ],
            [
              "",
              "callback"
            ],
            [
              "",
              "Requests.async_get"
            ],
            [
              "",
              "await"
            ],
            [
              "",
              "Requests.async_get"
            ],
            [
              "",
              "Requests.async_request"
            ],
            [
              "",
              "Requests.async_request"
            ],
            [
              "",
              "Requests.async_request"
            ],
            [
              "",
              "Requests.async_request"
            ],
            [
              "",
              "astal"
            ]
          ],
          "mbr": [
            "GLib.Bytes",
            "GLib.Uri",
            "GLib.Uri.escape_string",
            "GLib.Uri.parse",
            "Gio.MemoryOutputStream",
            "Gio.MemoryOutputStream.new_resizable",
            "Requests.async_delete",
            "Requests.async_get",
            "Requests.async_patch",
            "Requests.async_post",
            "Requests.async_put",
            "Requests.async_request",
            "Requests.get",
            "Requests.get_async",
            "Requests.request",
            "Requests.request_async",
            "Response.__index",
            "Response.__newindex",
            "Response.new",
            "Soup.Message",
            "Soup.Message.new_from_uri",
            "Soup.Session",
            "Soup.Session.new",
            "args.body",
            "args.bytes",
            "args.headers",
            "args.ok",
            "args.params",
            "args.reason_phrase",
            "args.status_code",
            "args.text",
            "args.url",
            "astal.async",
            "astal.await",
            "astal.require",
            "io.stderr",
            "message.reason_phrase",
            "message.status_code",
            "string.format",
            "table.concat",
            "table.insert"
          ],
          "tgt": [
            "GLib.Bytes",
            "GLib.Uri.escape_string",
            "GLib.Uri.parse",
            "Gio.MemoryOutputStream.new_resizable",
            "Requests.async_get",
            "Requests.async_request",
            "Response.new",
            "Soup.Message.new_from_uri",
            "Soup.Session.new",
            "astal.require",
            "async",
            "await",
            "callback",
            "encode_query_params",
            "pairs",
            "require",
            "setmetatable",
            "string.format",
            "table.concat",
            "table.insert",
            "tostring",
            "type"
          ],
          "funcs": [
            [
              "encode_query_params",
              1309
            ],
            [
              "Requests.async_request",
              2395
            ]
          ],
          "metrics": {
            "ast": {
              "op.eq": 3,
              "op.ge": 1,
              "op.lt": 1,
              "op.lor": 1,
              "op.land": 2,
              "max_depth": 15,
              "call_count": 50,
              "node_count": 1307,
              "member_count": 41,
              "max_array_len": 7,
              "op_density.eq": 0,
              "op_density.ge": 0,
              "op_density.lt": 0,
              "op_density.lor": 0,
              "op_density.land": 0,
              "member_depth_max": 3
            },
            "file": {
              "size": 5173,
              "entropy": 4.88
            },
            "text": {
              "lines": 168,
              "top_char": 101,
              "max_ws_run": 2,
              "digit_ratio": 0,
              "space_count": 779,
              "char_entropy": 4.88,
              "unique_chars": 72,
              "top_char_null": 0,
              "string_density": 0.15,
              "top_char_ratio": 0.09,
              "avg_line_length": 29.79,
              "max_line_length": 165,
              "empty_line_ratio": 0.18,
              "last_line_length": 15,
              "whitespace_ratio": 0.18,
              "identifier_density": 1.57,
              "line_length_stddev": 26.78,
              "normalized_string_count": 1.93,
              "repeated_char_sequences": 8,
              "suspicious_comment_ratio": 0.11,
              "suspicious_identifier_ratio": 0.01,
              "normalized_unique_identifiers": 10.82
            },
            "binds": {
              "count": 31
            },
            "binary": {
              "peak_region_bytes": 5173,
              "peak_region_entropy": 4.86
            },
            "source": {
              "function_count": 2
            },
            "imports": {
              "count": 1,
              "third_party_count": 1,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 163,
              "count": 25,
              "avg_length": 6.52,
              "max_length": 47,
              "avg_entropy": 1.84,
              "entropy_stddev": 1.04
            },
            "comments": {
              "chars": 1430,
              "count": 37,
              "lines": 37,
              "base64": 2,
              "high_entropy": 2,
              "to_code_ratio": 0.28
            },
            "functions": {
              "count": 2
            },
            "identifiers": {
              "count": 264,
              "unique": 80,
              "avg_length": 8.16,
              "max_length": 27,
              "min_length": 1,
              "avg_entropy": 2.5,
              "reuse_ratio": 0.3,
              "length_stddev": 4.53,
              "sequential_names": 1,
              "single_char_count": 2,
              "single_char_ratio": 0.03,
              "high_entropy_count": 2,
              "high_entropy_ratio": 0.03,
              "all_lowercase_ratio": 0.88,
              "all_uppercase_ratio": 0.01,
              "underscore_prefix_count": 3
            }
          }
        },
        "id": 40,
        "mol": "H(Cm)",
        "path": "astal-0.2.5-1.src.rock!!astal-lua/astal/requests.lua",
        "pid": 0,
        "risk": 2,
        "sha": "5dc01e147fe67b48d5267b8469ad971c85006f1800dd668be07e7429803d5f55",
        "size": 5173,
        "traits": [
          {
            "id": "metadata/file/profile/language::lang-english--atom-2",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                1505,
                0
              ]
            ]
          },
          {
            "id": "metadata/file/profile/language::lang-english--atom-5",
            "conf": 0.8,
            "crit": 2,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                1434,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/communications/http/header/content-type::json-header",
            "conf": 0.9,
            "crit": 3,
            "desc": "References HTTP Content-Type application/json",
            "spans": [
              [
                2156,
                33
              ]
            ]
          }
        ],
        "type": "lua"
      }
    ],
    "rev": "1e4c6",
    "v": "8"
  }
}