Hala S. El-sayed

49 papers Journal 48Unranked 1
YearRankTypeTitle / Venue / Authors
2025 J jnl
Trans. Emerg. Telecommun. Technol.
Osama S. Faragallah, Walid El Shafai, Osama A. Elshakankiry, Ashraf Afifi, Hala S. El-sayed
2024 J jnl
J. Ambient Intell. Humaniz. Comput.
Osama S. Faragallah, M. Farouk, Hala S. El-sayed, Mohsen A. M. El-Bendary
2023 J jnl
J. Ambient Intell. Humaniz. Comput.
Osama S. Faragallah, Heba M. Elhoseny, Hala S. El-sayed
2023 J jnl
Int. J. Commun. Syst.
Osama S. Faragallah, Hala S. El-sayed, Mohamed G. El-Mashed
2023 J jnl
J. Ambient Intell. Humaniz. Comput.
Osama S. Faragallah, Heba M. Elhoseny, Hala S. El-sayed
2023 J jnl
Biomed. Signal Process. Control.
Osama S. Faragallah, Heba M. Elhoseny, Hala S. El-sayed
2023 J jnl
J. Ambient Intell. Humaniz. Comput.
Osama S. Faragallah, Hala S. El-sayed, Walid El Shafai
2023 J jnl
Multim. Tools Appl.
Osama S. Faragallah, Ahmed I. Sallam, Masoud Alajmi, Hala S. El-sayed
2023 J jnl
Trans. Emerg. Telecommun. Technol.
Osama S. Faragallah, Hala S. El-sayed, Mohamed G. El-Mashed
2022 J jnl
Neural Comput. Appl.
Ahmed Sedik, Osama S. Faragallah, Hala S. El-sayed, Ghada M. El Banby, Fathi E. Abd El-Samie, Ashraf A. M. Khalaf, Walid El Shafai
2022 J jnl
J. Ambient Intell. Humaniz. Comput.
Osama S. Faragallah, Walid El Shafai, Ahmed I. Sallam, Ibrahim F. Elashry, El-Sayed El-Rabaie, Ashraf Afifi, Mohammed Abdullatif Alzain, Jehad F. Al-Amri, Fathi E. Abd El-Samie, Hala S. El-sayed
2022 J jnl
Int. J. Commun. Syst.
Osama S. Faragallah, Hala S. El-sayed, Mohamed G. El-Mashed
2022 J jnl
IEEE Access
Wajdi Alhakami, Hala S. El-sayed, Osama S. Faragallah, Mohamed G. El-Mashed
2022 J jnl
Trans. Emerg. Telecommun. Technol.
Osama S. Faragallah, Hala S. El-sayed, Mohamed G. El-Mashed
2022 J jnl
Trans. Emerg. Telecommun. Technol.
Osama S. Faragallah, Ahmed I. Sallam, Masoud Alajmi, Hala S. El-sayed
2022 J jnl
Intell. Autom. Soft Comput.
Masoud Alajmi, Osama A. Elshakankiry, Walid El-Shafai, Hala S. El-sayed, Ahmed I. Sallam, Heba M. Elhoseny, Ahmed Sedik, Osama S. Faragallah
2022 J jnl
Intell. Autom. Soft Comput.
Osama S. Faragallah, Sultan S. Alshamrani, Heba M. Elhoseny, Mohammed A. Alzain, Emad Sami Jaha, Hala S. El-sayed
2022 J jnl
Intell. Autom. Soft Comput.
Osama S. Faragallah, Ahmed I. Sallam, Hala S. El-sayed
2021 J jnl
IEEE Access
Osama S. Faragallah, Heba M. Elhoseny, Walid El Shafai, Wael Abd El-Rahman, Hala S. El-sayed, El-Sayed M. El-Rabaie, Fathi E. Abd El-Samie, Gamal G. N. Geweid
2021 J jnl
Intell. Autom. Soft Comput.
Osama S. Faragallah, Ensherah A. Naeem, Hala S. El-sayed, Fathi E. Abd El-Samie
2021 J jnl
Intell. Autom. Soft Comput.
Osama S. Faragallah, Walid El-Shafai, Ashraf Afifi, Ibrahim F. Elashry, Mohammed A. Alzain, Jehad F. Al-Amri, Ben Soh, Heba M. Elhoseny, Hala S. El-sayed, Fathi E. Abd El-Samie
2021 J jnl
IEEE Access
Osama S. Faragallah, Hala S. El-sayed, Mohamed G. El-Mashed
2021 J jnl
Intell. Autom. Soft Comput.
Osama S. Faragallah, Ghada Abdel-Aziz, Walid El-Shafai, Hala S. El-sayed, S. F. El-Zoghdy, Gamal G. N. Geweid
2021 J jnl
Multim. Tools Appl.
Osama S. Faragallah, Mohamed A. Elaskily, Abdullah F. Alenezi, Hala S. El-sayed, Hamdy M. Kelash
2021 J jnl
IEEE Access
Osama S. Faragallah, Hala S. El-sayed
2021 J jnl
Intell. Autom. Soft Comput.
Osama S. Faragallah, Ghada Abdel-Aziz, Hala S. El-sayed, Gamal G. N. Geweid
2021 J jnl
Wirel. Pers. Commun.
Osama S. Faragallah, Hala S. El-sayed, Ashraf Afifi, S. F. El-Zoghdy
2021 J jnl
Intell. Autom. Soft Comput.
Mohammed Baz, Hatem Zaini, Hala S. El-sayed, Matokah M. Abualnaja, Heba M. Elhoseny, Osama S. Faragallah
2020 J jnl
IEEE Access
Masoud Alajmi, Ibrahim F. Elashry, Hala S. El-sayed, Osama S. Faragallah
2020 J jnl
IEEE Access
Osama S. Faragallah, Ashraf Afifi, Hala S. El-sayed, Mohammed A. Alzain, Jehad F. Al-Amri, Fathi E. Abd El-Samie, Walid El Shafai
2020 J jnl
Multim. Tools Appl.
Ibrahim F. Elashry, Walid El Shafai, Emad S. Hassan, S. El-Rabaie, Alaa M. Abbas, Fathi E. Abd El-Samie, Hala S. El-sayed, Osama S. Faragallah
2020 J jnl
IEEE Access
Osama S. Faragallah, Ashraf Afifi, Walid El Shafai, Hala S. El-sayed, Mohammed A. Alzain, Jehad F. Al-Amri, Fathi E. Abd El-Samie
2020 J jnl
IEEE Access
Osama S. Faragallah, Hala S. El-sayed, Mohamed G. El-Mashed
2020 J jnl
IEEE Access
Osama S. Faragallah, Ashraf Afifi, Walid El Shafai, Hala S. El-sayed, Ensherah A. Naeem, Mohammed A. Alzain, Jehad F. Al-Amri, Ben Soh, Fathi E. Abd El-Samie
2020 J jnl
Multim. Tools Appl.
Osama S. Faragallah, Mohammed A. Alzain, Hala S. El-sayed, Jehad F. Al-Amri, Walid El Shafai, Ashraf Afifi, Ensherah A. Naeem, Ben Soh
2020 J jnl
IEEE Access
Masoud Alajmi, Ibrahim F. Elashry, Hala S. El-sayed, Osama S. Farag Allah
2020 J jnl
Wirel. Pers. Commun.
S. F. El-Zoghdy, Hala S. El-sayed, Osama S. Faragallah
2019 J jnl
IEEE Access
Osama S. Faragallah, Mohammed A. Alzain, Hala S. El-sayed, Jehad F. Al-Amri, Walid El Shafai, Ashraf Afifi, Ensherah A. Naeem, Ben Soh
2017 J jnl
Wirel. Pers. Commun.
Hassan I. Ahmed, Nawal A. Elfeshawy, Said Fathy El-Zoghdy, Hala S. El-sayed, Osama S. Faragallah
2016 J jnl
Multim. Tools Appl.
Fatma Elgendy, Amany M. Sarhan, Tarek E. Eltobely, Said Fathy El-Zoghdy, Hala S. El-sayed, Osama S. Faragallah
2016 J jnl
Wirel. Pers. Commun.
Sabry S. Nassar, Nabil M. Ayad, Hamdy M. Kelash, Hala S. El-sayed, Mohsen A. M. El-Bendary, Fathi E. Abd El-Samie, Osama S. Faragallah
2016 J jnl
Int. J. Speech Technol.
Sabry S. Nassar, Nabil M. Ayad, Hamdy M. Kelash, Hala S. El-sayed, Mohsen A. M. El-Bendary, Fathi E. Abd El-Samie, Osama S. Faragallah
2016 J jnl
Wirel. Pers. Commun.
Sabry S. Nassar, Nabil M. Ayad, Hamdy M. Kelash, Hala S. El-sayed, Mohsen A. M. El-Bendary, Fathi E. Abd El-Samie, Osama S. Faragallah
2016 J jnl
Comput. Electr. Eng.
Ensherah A. Naeem, Mustafa M. Abd-Elnaby, Hala S. El-sayed, Fathi E. Abd El-Samie, Osama S. Faragallah
2015 J jnl
Int. J. Speech Technol.
Elsayed M. Elshamy, El-Sayed M. El-Rabaie, Osama S. Faragallah, Osama A. Elshakankiry, Fathi E. Abd El-Samie, Hala S. El-sayed, Said Fathy El-Zoghdy
2015 J jnl
Signal Image Video Process.
Ehab H. Elshazly, Osama S. Faragallah, Alaa M. Abbas, Mahmoud Ashour, El-Sayed M. El-Rabaie, Hassan B. Kazemian, Saleh A. Alshebeili, Fathi E. Abd El-Samie, Hala S. El-sayed
2015 J jnl
Int. J. Speech Technol.
Fathi E. Abd El-Samie, Amira Shafik, Hala S. El-sayed, Said M. Elhalafawy, Salaheldin M. Diab, Bassiouny M. Sallam, Osama S. Faragallah
2013 J jnl
Wirel. Pers. Commun.
Mohamed A. Elaskily, Hamdy M. Kelash, Hala S. El-sayed, Osama S. Faragallah
2013 conf
ICTC
Hamdy M. Kelash, Osama F. Abdel Wahab, Osama A. Elshakankiry, Hala S. El-sayed
notebooks/redb-clickhouse-TEST.ipynb
← Index notebooks/redb-clickhouse-TEST.ipynb plaintext
Truncated preview: showing the first 16384 bytes out of 5988848 total.
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Definitions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "import clickhouse_connect"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "\n",
    "ch_TEST_client = clickhouse_connect.get_client(host='e.rationaledge.io', port=443, username='default', password='werioubTGwvf0-dsbv_', database='redb', verify=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "ch_TEST_BETA_client = clickhouse_connect.get_client(host='k.rationaledge.io', port=443, username='default', password='werioubTGwvf0-dsbv_', database='default', verify=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<bound method HttpClient.close_connections of <clickhouse_connect.driver.httpclient.HttpClient object at 0x105fd64d0>>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ch_TEST_BETA_client.close_connections"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<clickhouse_connect.driver.summary.QuerySummary at 0x11f900810>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ch_TEST_BETA_client.command(\"\"\"\n",
    "RENAME DATABASE redb TO orig_redb;\n",
    "\"\"\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## DB Creation (schema 2025-08-02)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "ch_TEST_client.command(\"\"\"\n",
    "CREATE DATABASE IF NOT EXISTS redb;\n",
    "\"\"\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define General Tables"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "### CREATE FULL REDB DATABASE\n",
    "def create_redb_with_all_tables(client):\n",
    "    client.command(\"\"\"\n",
    "        CREATE DATABASE IF NOT EXISTS redb\n",
    "    \"\"\")\n",
    "    create_all_general_tables(client)\n",
    "    create_all_pe_tables(client)\n",
    "\n",
    "#### CREATE FULL TABLES\n",
    "def create_all_general_tables(client):\n",
    "    create_basic_properties_dbtable(client)\n",
    "    create_hashes_dbtable(client)\n",
    "    create_capa_dbtable(client)\n",
    "    create_die_dbtable(client)\n",
    "    create_extra_findings_dbtable(client)\n",
    "\n",
    "\n",
    "##################################\n",
    "#### CREATE INDIVIDUAL TABLES ####\n",
    "##################################\n",
    "\n",
    "#### GENERAL TABLES ####\n",
    "# All tables have SETTINGS index_granularity = 8192\n",
    "def create_basic_properties_dbtable(client):\n",
    "    # Create samples_metadata table\n",
    "    client.command(\"\"\"\n",
    "        CREATE TABLE IF NOT EXISTS redb_basic_properties (\n",
    "            sha256 FixedString(64), -- primary key\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            filename Nullable(String),\n",
    "            sample_name String,\n",
    "            filesize UInt64,\n",
    "            file_entropy Float64,\n",
    "            filetype LowCardinality(String),\n",
    "            filetype_mime LowCardinality(String),\n",
    "            filetype_magika LowCardinality(String),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        PRIMARY KEY (sha256)\n",
    "        ORDER BY (sha256)\n",
    "    \"\"\")\n",
    "\n",
    "def create_hashes_dbtable(client):\n",
    "    # Create hashes table\n",
    "    client.command(\"\"\"\n",
    "        CREATE TABLE IF NOT EXISTS redb_hashes (\n",
    "            sha256 FixedString(64), -- primary key\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            ssdeep_hash Nullable(String),\n",
    "            tlsh_hash Nullable(String),\n",
    "            authentihash Nullable(String),\n",
    "            imphash Nullable(String),\n",
    "            impfuzzy Nullable(String),\n",
    "            typerefhash Nullable(String),\n",
    "            richhash Nullable(String),\n",
    "            richpe_hash Nullable(String),\n",
    "            richpv_hash Nullable(String),\n",
    "            richpv_hash_sorted Nullable(String),\n",
    "            dhash Nullable(String),\n",
    "            analysis_date DateTime64(3, 'UTC')\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        PRIMARY KEY (sha256)\n",
    "        ORDER BY (sha256)\n",
    "    \"\"\")\n",
    "\n",
    "def create_capa_dbtable(client):\n",
    "    # Create sample_capabilities table\n",
    "    client.command(\"\"\"\n",
    "        SET enable_json_type = 1;\n",
    "    \"\"\")\n",
    "    client.command(\"\"\"\n",
    "        -- Base table for CAPA analysis results\n",
    "        CREATE TABLE IF NOT EXISTS redb_capa (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            -- Store full JSON dumps as strings for flexibility\n",
    "            capa_dump JSON CODEC(ZSTD(3)),\n",
    "            attack_dump JSON CODEC(ZSTD(3)),\n",
    "            mbc_dump JSON CODEC(ZSTD(3))\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY sha256;\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Normalized table for capabilities and namespaces\n",
    "        CREATE TABLE IF NOT EXISTS redb_capa_capabilities (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            namespace LowCardinality(String),\n",
    "            capability LowCardinality(String)\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY (sha256, namespace, capability);\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Materialized view for capability statistics\n",
    "        CREATE MATERIALIZED VIEW IF NOT EXISTS redb_capa_capabilities_stats (\n",
    "            namespace LowCardinality(String),\n",
    "            capability LowCardinality(String),\n",
    "            samples_bitmap AggregateFunction(groupBitmap, UInt64),\n",
    "            occurrence_count UInt64\n",
    "        ) ENGINE = AggregatingMergeTree()\n",
    "        ORDER BY (namespace, capability)\n",
    "        AS SELECT\n",
    "            namespace,\n",
    "            capability,\n",
    "            groupBitmapState(cityHash64(sha256)) as samples_bitmap,\n",
    "            count() as occurrence_count\n",
    "        FROM redb_capa_capabilities\n",
    "        GROUP BY namespace, capability;\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Normalized table for MITRE ATT&CK mappings\n",
    "        CREATE TABLE IF NOT EXISTS redb_capa_attack (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            tactic LowCardinality(String),\n",
    "            technique LowCardinality(String),\n",
    "            technique_id LowCardinality(String)\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY (sha256, tactic, technique_id);\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Materialized view for ATT&CK statistics\n",
    "        CREATE MATERIALIZED VIEW IF NOT EXISTS redb_capa_attack_stats (\n",
    "            tactic LowCardinality(String),\n",
    "            technique LowCardinality(String),\n",
    "            technique_id LowCardinality(String),\n",
    "            samples_bitmap AggregateFunction(groupBitmap, UInt64),\n",
    "            occurrence_count UInt64\n",
    "        ) ENGINE = AggregatingMergeTree()\n",
    "        ORDER BY (tactic, technique_id)\n",
    "        AS SELECT\n",
    "            tactic,\n",
    "            technique,\n",
    "            technique_id,\n",
    "            groupBitmapState(cityHash64(sha256)) as samples_bitmap,\n",
    "            count() as occurrence_count\n",
    "        FROM redb_capa_attack\n",
    "        GROUP BY tactic, technique, technique_id;\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Normalized table for MBC mappings\n",
    "        CREATE TABLE IF NOT EXISTS redb_capa_mbc (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            objective LowCardinality(String),\n",
    "            behavior LowCardinality(String),\n",
    "            behavior_id LowCardinality(String)\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY (sha256, objective, behavior_id);\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Materialized view for MBC statistics\n",
    "        CREATE MATERIALIZED VIEW IF NOT EXISTS redb_capa_mbc_stats (\n",
    "            objective LowCardinality(String),\n",
    "            behavior LowCardinality(String),\n",
    "            behavior_id LowCardinality(String),\n",
    "            samples_bitmap AggregateFunction(groupBitmap, UInt64),\n",
    "            occurrence_count UInt64\n",
    "        ) ENGINE = AggregatingMergeTree()\n",
    "        ORDER BY (objective, behavior_id)\n",
    "        AS SELECT\n",
    "            objective,\n",
    "            behavior,\n",
    "            behavior_id,\n",
    "            groupBitmapState(cityHash64(sha256)) as samples_bitmap,\n",
    "            count() as occurrence_count\n",
    "        FROM redb_capa_mbc\n",
    "        GROUP BY objective, behavior, behavior_id;\n",
    "    \"\"\")\n",
    "\n",
    "def create_die_dbtable(client):\n",
    "    # Create sample_die table\n",
    "    client.command(\"\"\"\n",
    "        SET enable_json_type = 1;\n",
    "    \"\"\")\n",
    "    client.command(\"\"\"\n",
    "        CREATE TABLE IF NOT EXISTS redb_die (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            die_info JSON CODEC(ZSTD(3)),\n",
    "            analysis_date DateTime64(3, 'UTC')\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        PRIMARY KEY (sha256)\n",
    "        ORDER BY (sha256)\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        CREATE MATERIALIZED VIEW redb_die_mv\n",
    "        (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            compiler LowCardinality(Nullable(String)),\n",
    "            compiler_full Nullable(String),\n",
    "            format LowCardinality(Nullable(String)),\n",
    "            format_full Nullable(String),\n",
    "            installer LowCardinality(Nullable(String)),\n",
    "            installer_full Nullable(String),\n",
    "            joiner LowCardinality(Nullable(String)),\n",
    "            joiner_full Nullable(String),\n",
    "            language LowCardinality(Nullable(String)),\n",
    "            language_full Nullable(String),\n",
    "            library LowCardinality(Nullable(String)),\n",
    "            library_full Nullable(String),\n",
    "            linker LowCardinality(Nullable(String)),\n",
    "            linker_full Nullable(String),\n",
    "            operation_system LowCardinality(Nullable(String)),\n",
    "            operation_system_full Nullable(String),\n",
    "            packer LowCardinality(Nullable(String)),\n",
    "            packer_full Nullable(String),\n",
    "            protector LowCardinality(Nullable(String)),\n",
    "            protector_full Nullable(String),\n",
    "            sfx LowCardinality(Nullable(String)),\n",
    "            sfx_full Nullable(String),\n",
    "            sign_tool LowCardinality(Nullable(String)),\n",
    "            sign_tool_full Nullable(String),\n",
    "            stub LowCardinality(Nullable(String)),\n",
    "            stub_full Nullable(String),\n",
    "            tool LowCardinality(Nullable(String)),\n",
    "            tool_full Nullable(String),   \n",
    "            -- overlay JSON CODEC(ZSTD(3)),\n",
    "            -- resource JSON CODEC(ZSTD(3)),\n",
    "            has_overlay UInt8,\n",
    "            has_resources UInt8,\n",
    "            is_packed UInt8\n",
    "        )\n",
    "        ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY (sha256)\n",
    "        POPULATE\n",
    "        AS SELECT\n",
    "            sha256,\n",
    "            md5,\n",
    "            sha1,\n",
    "            analysis_date,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'compiler'), '') AS compiler,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'compiler(full)'), '') AS compiler_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'format'), '') AS format,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'format(full)'), '') AS format_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'installer'), '') AS installer,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'installer(full)'), '') AS installer_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'joiner'), '') AS joiner,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'joiner(full)'), '') AS joiner_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'language'), '') AS language,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'language(full)'), '') AS language_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'library'), '') AS library,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'library(full)'), '') AS library_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'linker'), '') AS linker,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'linker(full)'), '') AS linker_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'operation_system'), '') AS operation_system,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'operation_system(full)'), '') AS operation_system_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'packer'), '') AS packer,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'packer(full)'), '') AS packer_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'protector'), '') AS protector,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'protector(full)'), '') AS protector_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'sfx'), '') AS sfx,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'sfx(full)'), '') AS sfx_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'sign_tool'), '') AS sign_tool,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'sign_tool(full)'), '') AS sign_tool_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'stub'), '') AS stub,\n",
    "            nullIf(JSONExtractString(toString(die_info),