% This must be in the first 5 lines to tell arXiv to use pdfLaTeX, which is strongly recommended.
\pdfoutput=1
% In particular, the hyperref package requires pdfLaTeX in order to break URLs across lines.

\documentclass[11pt]{article}

% Change "review" to "final" to generate the final (sometimes called camera-ready) version.
% Change to "preprint" to generate a non-anonymous version with page numbers.
%\usepackage[review]{acl}
\usepackage[preprint]{acl}

% Standard package includes
\usepackage{times}
\usepackage{latexsym}

% For proper rendering and hyphenation of words containing Latin characters (including in bib files)
\usepackage[T1]{fontenc}
% For Vietnamese characters
% \usepackage[T5]{fontenc}
% See https://www.latex-project.org/help/documentation/encguide.pdf for other character sets

% This assumes your files are encoded as UTF8
\usepackage[utf8]{inputenc}

% This is not strictly necessary, and may be commented out,
% but it will improve the layout of the manuscript,
% and will typically save some space.
\usepackage{microtype}

% This is also not strictly necessary, and may be commented out.
% However, it will improve the aesthetics of text in
% the typewriter font.
\usepackage{inconsolata}

\usepackage{svg}
\usepackage{url}
\usepackage{comment}
\usepackage{multirow}
\usepackage{soul}
\usepackage{cleveref}

% If the title and author information does not fit in the area allocated, uncomment the following
%
%\setlength\titlebox{<dim>}
%
% and set <dim> to something 5cm or larger.

\title{Snarci at SemEval-2024 Task 4: Themis Model for Binary Classification of Memes}

% Author information can be set in various styles:
% For several authors from the same institution:
% \author{Author 1 \and ... \and Author n \\
%         Address line \\ ... \\ Address line}
% if the names do not fit well on one line use
%         Author 1 \\ {\bf Author 2} \\ ... \\ {\bf Author n} \\
% For authors from different institutions:
% \author{Author 1 \\ Address line \\  ... \\ Address line
%         \And  ... \And
%         Author n \\ Address line \\ ... \\ Address line}
% To start a separate ``row'' of authors use \AND, as in
% \author{Author 1 \\ Address line \\  ... \\ Address line
%         \AND
%         Author 2 \\ Address line \\ ... \\ Address line \And
%         Author 3 \\ Address line \\ ... \\ Address line}

\author{Luca Zedda \and Alessandra Perniciano \and Andrea Loddo \and \\ {\bf Cecilia Di Ruberto} \and {\bf Manuela Sanguinetti} \and {\bf Maurizio Atzori} \\
Department of Mathematics and Computer Science, University of Cagliari \\ Via Ospedale 72, Cagliari (Italy)\\
\texttt{\{luca.zedda, alessandra.pernician, andrea.loddo},\\
\texttt{cecilia.dir, manuela.sanguinetti, atzori\}@unica.it}
} 

\begin{document}
\maketitle
\begin{abstract}
%The pervasive presence of cultural and media-influenced content on digital platforms necessitates a systematic examination to address societal challenges such as biases and discrimination. 
This paper introduces an approach developed for multimodal meme analysis, specifically targeting the identification of persuasion techniques embedded within memes. Our methodology integrates Large Language Models (LLMs) and contrastive learning image encoders to discern the presence of persuasive elements in memes across diverse platforms. By capitalizing on the contextual understanding facilitated by LLMs and the discriminative power of contrastive learning for image encoding, our framework provides a robust solution for detecting and classifying memes with persuasion techniques. The system was used in Task 4 of Semeval 2024, precisely for Substask 2b (binary classification of presence of persuasion techniques). It showed promising results overall, achieving a Macro-$F_1=0.7986$ on the English test data (i.e. the language the system was trained on) and Macro-$F_1=0.66777/0.47917/0.5554$, respectively, on the other three ``surprise'' languages proposed by the task organizers, i.e. Bulgarian, North Macedonian and Arabic. The paper provides an overview of the system, along with a discussion of the results obtained and its main limitations. 
\end{abstract}

\section{Introduction}
%NB: leggere indicazioni date qui: \url{https://docs.google.com/document/d/1cML2EklQ2ZYFPYCZnTjoJp5F4nsjBK89cnini5ltj-Q/edit#heading=h.uf31y2cvb0px}

%Promoting a healthy online debate is of crucial importance in contemporary digital communication. However, the dissemination of content that is toxic or aimed, in multiple forms, at manipulating information can deeply undermine this goal. 
In recent years, the natural language processing (NLP) community has witnessed an ever-growing number of contributions aimed at identifying and analyzing various forms of harmful language found on the Web, 
including offensive language~\cite{zampieri-etal-2020-semeval}, hate speech~\cite{basile-etal-2019-semeval,rottger-etal-2022-multilingual}---also comprising misogyny and transphobia~\cite{nozza-etal-2022-measuring,kirk-etal-2023-semeval}, and propaganda techniques~\cite{da-san-martino-etal-2019-fine}. These linguistic phenomena not only harm civil debate but can also fuel the polarization and radicalization of users' opinions. 

In an increasingly multimodal context, particular attention has also been paid to memes~\cite{dimitrov-etal-2021-detecting}, which, due to their virality and communicative immediacy, can easily become key tools in online disinformation campaigns. Therefore, the development of techniques to effectively classify possible nuances of information manipulation within these forms of content sharing assumes a central role in online disinformation research.

This motivated our participation in the SemEval 2024 Task 4\footnote{\url{https://propaganda.math.unipd.it/semeval2024task4/index.html}}~\cite{semeval2024task4}, which focuses on ``Multilingual Detection of Persuasion Techniques in Memes''. %Memes, prevalent in online disinformation campaigns, wield significant influence, particularly on social media platforms. 
The task aims to develop models capable of identifying rhetorical and psychological techniques employed in memes to influence users' opinions. %sway audiences.
Our team participated in Substask 2b, consisting of a binary classification problem to determine whether a meme contains at least one persuasion technique among the predefined set of 22 techniques. The dataset released to participants is made up of memes with textual content in English. However, to assess the robustness of the systems during the evaluation phase, the organizers made test sets available in three other languages besides English, i.e. Arabic, Bulgarian, and North Macedonian. 

For the purpose of this task, we developed a system that combines Large Language Models (LLMs) and contrastive learning image encoders to discern the presence of persuasive elements in memes across diverse platforms.% We focus this paper on subtask 2b %in which participants must address a binary classification problem: determine whether a meme, comprising both textual and visual components, contains at least one persuasion technique among the predefined set of 22 techniques. 
The following sections will thus describe the system architecture and its deployment in the task. A discussion of the results obtained and of some most recurring errors will also be proposed, aiming to highlight possible research paths for the further improvement of the approach. 

\section{System Overview} 
The proposed method, named ``Themis'', is a modular neural network architecture designed to analyze multimodal data, specifically targeting memes that often contain both textual and visual elements. %The system has beed made available in a public repository.\footnote{Code available here: \url{https://github.com/demon-prin/Themis-SEMEVAL-public}} %Themis integrates both image and language models to process and understand the semantics embedded within memes effectively. 

\begin{figure}[ht]
  \centering
  %\includesvg[width=0.75\textwidth]{res/themis2}
  %\includesvg[scale=0.4]{res/themispm}
  \includegraphics[scale=0.4]{res/themispm.png}
  \caption{Themis model architecture.}
  \label{fig:schema:arch}
\end{figure}

\subsection{Model Composition}\label{ssec:model_compos}
Our Themis model comprises various interoperating components, as outlined in~\Cref{fig:schema:arch}. In this section, we shall examine their respective roles within the architecture.

\paragraph{Image Preprocessing.} The meme image initially undergoes processing through the image processor of the Image Embedding Model, which standardizes and resizes it to conform to the model's specifications. Subsequently, the image is segmented into uniform patches of predetermined dimensions for subsequent processing. This preprocessing step guarantees that the image is adequately prepared for further analysis and feature extraction by the Image Embedding Model.

\paragraph{Image Embedding Model.} Themis integrates an image embedding model for the extraction of features from meme images. This model is responsible for processing pixel values and extracting significant representations from the images. %  %encoder (see also Table \ref{tab:list_llm_enc} for the specific model used).

\paragraph{Image Embedding Projection.}
An image embedding projection is applied to the features extracted from the image embedding model. This projection serves as a method to project image features in LLM-compatible size.

\paragraph{Large Language Model.} Themis uses a language model to handle textual and visual inputs associated with memes. The LLM serves as the core of our model sequentially aligning tokens to an embedding space related to the persuasion detection task. %The language models used in our experiments are TinyLlama\footnote{In particular \texttt{TinyLlama-1.1B-Chat-v1.0}: \url{https://huggingface.co/TinyLlama/TinyLlama-1.1B-Chat-v1.0}} \cite{TINYLLMA}, phi-1.5\footnote{\url{https://huggingface.co/microsoft/phi-1_5}} \cite{PHI} and phi-2\footnote{\url{https://huggingface.co/microsoft/phi-2}}. %This language model is trained to understand and generate text, providing a contextual understanding of the meme's content.

\paragraph{Token Merger Module.} Themis employs a Token Merger module to merge tokens representing both image and textual features, enabling the model to attend to pertinent information within the images. This functionality allows the model to focus on salient aspects during meme processing. While drawing inspiration from the Patch Merger module~\cite{Renggli2022LearningTM}, our approach distinguishes itself by integrating both modalities. The Token merger learns a weight matrix that computes token scores based on representations and normalizes them using softmax. Subsequently, these weights are used to reduce the number of tokens through matrix multiplication. 
Ideally, this module aggregates similar tokens together, regardless of their original position. To address scale mismatches, layer normalization is applied post-merging, facilitating rapid adaptation through fine-tuning.

\paragraph{Token Average.}
We employ the token averaging technique, which involves extracting tokens from the LLM, to derive our final prediction. This strategy is designed to generate a singular, semantically dense embedding, facilitating seamless processing by a Classification head for obtaining the class prediction.
%\paragraph{AGG: QUI DESCRIZ: BLOCCO LLM+Token Avg.}

\paragraph{Classification Head.} Themis incorporates a classification head to predict whether a meme contains specific persuasion techniques. This head takes the fused multimodal features and generates predictions based on the learned LLM representations.

\subsection{Model Freezing and Low-Rank Adaptation (LoRa) Weights}
The Themis model uses freezing techniques to control the training of certain parameters. Specifically, both the image embedding model and the language model are frozen during training. This ensures that the pre-trained weights of these models are not updated, preserving the learned representations.

Additionally, Themis employs LoRa~\cite{LORA} weights to enhance its capabilities. LoRa weights are incorporated into the Image Embedding Projection layer and LLM model to introduce long-range interactions between tokens and patches, facilitating the capture of global context and improving overall performance in meme analysis tasks.

\section{Experiment Setup}
The experiments were executed on a workstation featuring an Intel Core i7-12700 @ 2.1GHz CPU, 32 GB RAM, and an NVIDIA RTX3060 GPU with 12GB of memory.
Among the different experiments, one main issue is denoted by the limited availability of VRAM; this issue not only limited our approach to smaller LLM and Image encoders but also limited batch size. Our experiments aim to enable efficient prediction even in such low-end system requirements. As a result, we opted for a pre-trained Contrastive Language-Image Pre-Training (CLIP)~\cite{CLIP} encoder as our main image encoder. Specifically, we used both CLIP Base\footnote{\url{https://huggingface.co/openai/clip-vit-base-patch32}} and CLIP Large\footnote{\url{https://huggingface.co/openai/clip-vit-large-patch14}} in our experiments. For the textual part, instead, we used TinyLlama\footnote{In particular \texttt{TinyLlama-1.1B-Chat-v1.0}: \url{https://huggingface.co/TinyLlama/TinyLlama-1.1B-Chat-v1.0}} \cite{TINYLLMA}, phi-1.5\footnote{\url{https://huggingface.co/microsoft/phi-1_5}}~\cite{PHI} and phi-2\footnote{\url{https://huggingface.co/microsoft/phi-2}}. \Cref{tab:list_llm_enc} depicts the full set of selected Image encoders and LLMs that suited our requirements.

\begin{table}[ht]
    \centering
    \resizebox{0.45\textwidth}{!}{
    \begin{tabular}{lll}
    \hline
    \textbf{Tipology} &\textbf{Model}  & \textbf{\# Param.(B)}  \\
    \hline
    \multirow{2}{*}{Image Encoder } & CLIP Base 32 & 0.15 \\
    & CLIP Large 14 & 0.42 \\
    \hline
    \multirow{3}{*}{ LLM } & Phi-1.5 & 1.3 \\
    & Phi-2 & 2.7 \\
    & TinyLlama & 1.1 \\
    \hline
    \end{tabular}
    }
    \caption{List of LLMs and Image Encoders used for our experiments.}
    \label{tab:list_llm_enc}
\end{table}

For each combination of image and text models, the system was trained for 20 epochs, using a batch of 2 and a learning rate of $1e-4$, AdamW as the optimizer, and Binary Cross Entropy as the loss function. 

To train the model we solely relied on the training data provided by the organizers. 
For Subtask 2b, this dataset comprised 1200 instances, each consisting of a meme image paired with its corresponding text. The validation set contained 150 instances, while the development set included 300 instances. 
The final test sets encompassed 600 memes in English, 100 memes each in Bulgarian and North Macedonian, and 160 memes in Arabic.
The distribution of labels across the training, validation, and development sets is presented in~\Cref{tab:data_distrib}\footnote{For a comprehensive understanding of the dataset development and composition for each subtask, readers are encouraged to refer to the primary report of the task~\cite{semeval2024task4}.}.

\begin{table}
    \centering
    \begin{tabular}{llll}
    \hline
      Label   & Train & Val & Dev \\
         \hline
       propagandistic  & 800 & 100 & 200\\
       non-propagandistic  & 400  & 50 & 100 \\
         \hline
    \end{tabular}
    \caption{Label distribution on the training, validation, and development set for Subtask 2b.}
    \label{tab:data_distrib}
\end{table}

All results were evaluated using the official classification measure adopted by the task organizers for Subtask 2b, i.e. Macro-F$_1$.

\begin{comment}
\begin{table*}[ht]
    \centering 
    \begin{tabular}{lllll}
        \hline
        \textbf{Tipology} &\textbf{Name Model} &\textbf{Reference} & \textbf{Parameters(B)}  \\
        \hline
         Image Encoder   &  CLIP Base 32  & ~\cite{CLIP} & 0.15\\
         Image Encoder   &  CLIP Large 14 & ~\cite{CLIP} & 0.42\\
         \hline
         LLM   &  Phi-1.5  & ~\cite{PHI} & 1.5\\
         LLM   &  Phi-2  & ~\cite{PHI} & 2.7\\
         LLM   &  TinyLlama & ~\cite{TINYLLMA} & 1.1\\
         \hline
    \end{tabular}
    \caption{List of used LLMs and Image Encoders.}\label{tab:list_llm_enc}
\end{table*}
\end{comment}

To select our best model, we performed a search over the best set of hyperparameters. Specifically, we varied the rank of the LoRa weight matrices (LoRa R), their alpha regularization factor (LoRa Alpha), the dropout rate of the LoRa weights (LoRa Dropout), and most importantly, we controlled the number of tokens by a Token Merging strategy (see~\Cref{ssec:model_compos}).

\section{Results}
The task was organized into two main evaluation phases: a development phase, during which only training and unlabeled development data were accessible, and a test phase, wherein the gold labels for the development set were disclosed alongside the unlabeled test sets in four languages: English, Arabic, Bulgarian, and North Macedonian. In this section, we outline the results obtained by our experiments in both phases.

\paragraph{Development phase.} In this phase, we conducted tests on the unlabeled development set, employing various combinations of image encoders and LLMs. For each combination, we set LoRa R and LoRa Alpha to 8 and LoRa Dropout to 0.2. Notably, we omitted token merging during this phase based on preliminary results from the validation set, which indicated no significant performance enhancements with this setting. The results presented in~\Cref{tab:results} demonstrate that using larger Image Encoders, such as CLIP Large, yields an average increase of $0.7\%$ in terms of Macro-$F_1$ performance. This enhancement may be attributed to higher-dimensional embeddings compared to their Base counterparts, even though it also produces a larger number of tokens due to a smaller patch size.

\begin{comment}
 \begin{table}[ht]
    \centering
    \begin{tabular}{lllll}
        \hline
        \textbf{Image Encoder} &\textbf{LLM} & \textbf{F1}  \\
        \hline
         CLIP Base   & Phi-1.5  & 80.6\\
         CLIP Base   & Phi-2  & 80.6\\
         CLIP Base   & TinyLlama  & 80.8\\
        \hline
        CLIP Large   & Phi-1.5  & 80.9\\
        CLIP Large   & Phi-2  & 81.6\\
        CLIP Large   & TinyLlama  & 81.6\\
        \hline
    \end{tabular}
   \caption{F-Measure results across selected Image encoders and Large Language Models.}
    \label{tab:results}
\end{table}   
\end{comment}

\begin{table}[ht]
    \centering
    \resizebox{0.45\textwidth}{!}{
        \begin{tabular}{lll}
        \hline
        \textbf{Image Encoder} &\textbf{LLM} & \textbf{Macro-$F_1$}  \\
        \hline
        \multirow{3}{*}{ CLIP Base } & Phi-1.5 & 80.6 \\
        & Phi-2 & 80.6 \\
        & TinyLlama & 80.8 \\
        \hline
        \multirow{3}{*}{ CLIP Large } & Phi-1.5 & 80.9 \\
        & Phi-2 & 81.6 \\
        & TinyLlama & 81.6 \\
        \hline
    \end{tabular}
    }
   \caption{Macro-F$_1$ results on the development set of Subtask 2b across selected Image encoders and Large Language Models (for greater readability, F$_1$ scores are reported in percentage in all tables).}
    \label{tab:results}
\end{table}

Among the various LLMs, both TinyLlama and Phi-2 exhibited identical performance. Consequently, we opted for TinyLlama and CLIP Large as the preferred models for further examination of model performance, using slightly adjusted hyperparameter settings. Specifically, we explored different numbers of tokens, LoRA ranks of 8, 16, and 32, and LoRA dropout values of 0.2, 0.3, and 0.4."
% study depicted in Table~\ref{tab:ablation} due to its limited number of parameters compared to the even-performing counterpart.
The results show that strong token merging strategies improve the model stability but limit its performance. The increase of the LoRa R greatly increases model instability due to the improved overfitting risk, while the increase in LoRa dropout greatly improves model performance, reaching the best Macro-F$_1$ result of $0.83487$.\footnote{See the task leaderboard at~\url{https://propaganda.math.unipd.it/semeval2024task4/SemEval2024task4_dev.html}} %$83.4\%$.

\begin{comment}
\begin{table*}[ht]
    \centering
    \begin{tabular}{lllll}
        \hline
        \textbf{Number of tokens} &\textbf{LoRa R} & \textbf{LoRa Alpha} & \textbf{LoRa Dropout} & \textbf{F1}  \\
        \hline
         -   & 8  & 8 & 0.2 & 81.6\\
         -   & 16 & 8 & 0.2 & 81.7\\
         -   & 32 & 8 & 0.2 & 79.1\\
         \hline
         64  & 8  & 8 & 0.2 & 81.7\\
         96  & 8  & 8 & 0.2 & 80.0\\
         128 & 8  & 8 & 0.2 & 78.8\\
         192 & 8  & 8 & 0.2 & 77.1\\
         \hline
         -   & 8  & 8 & 0.3 & 82.8\\
         -   & 8  & 8 & 0.4 & \textbf{83.4}\\        
        \hline
    \end{tabular}
     \caption{In-depth results over the development set using CLIP Large and TinyLlama and different combinations of LoRA ranks (LoRA R) and dropouts.}\label{tab:ablation}
\end{table*}    
\end{comment}

\begin{table}[ht]
    \centering
    \resizebox{0.45\textwidth}{!}{
    \begin{tabular}{llll}
        \hline
        \textbf{\# tokens} &\textbf{LoRa R}  & \textbf{LoRa Dropout} & \textbf{Macro-$F_1$}  \\
        \hline
         -   & 8  & 0.2 & 81.6\\
         -   & 16 & 0.2 & 81.7\\
         -   & 32 & 0.2 & 79.1\\
         \hline
         64  & 8  & 0.2 & 81.7\\
         96  & 8  & 0.2 & 80.0\\
         128 & 8  & 0.2 & 78.8\\
         192 & 8  & 0.2 & 77.1\\
         \hline
         -   & 8 & 0.3 & 82.8\\
         -   & 8 & 0.4 & \textbf{83.4}\\        
        \hline
    \end{tabular}
    }
     \caption{In-depth results over the development set using CLIP Large and TinyLlama and different combinations of LoRA ranks (LoRA R) and dropouts.}\label{tab:ablation}
\end{table}

\paragraph{Test phase.} During the final evaluation phase of the campaign, we thus applied the best-performing setting described above on the test sets released by the task organizers. The results obtained are shown in~\Cref{tab:results_test}.
Overall, our team achieved reasonably good performance across both English and, albeit with a predictable decrease, in the zero-shot setting, where notable differences are observed. 
Upon comparing our performance with each top-ranked system in this subtask, we observe that the absolute difference between our system and the best-performing system in English (i.e., LMEME, which also ranks as the top system for Bulgarian) is 0.012, indicating that Themis achieved results very close to the top performer. 
For Bulgarian, the absolute difference is even smaller, at 0.003, suggesting that both systems exhibit very similar performance in this language. Conversely, for Arabic and North Macedonian, the difference is more pronounced, at 0.059 and 0.207, respectively, underscoring the limitations of our system in these languages.

\begin{table}[ht]
    \centering
    \resizebox{0.5\textwidth}{!}{
    \begin{tabular}{lllll}
        \hline
         \textbf{Language} & \textbf{Rank}  &\textbf{Macro-F$_1$} & \textbf{Micro-F$_1$}  \\
        \hline
         English & 5 & 79.8	&82.6 \\
         Bulgarian  & 2 & 66.7	&84.0 \\
         North Macedonian  & 8 & 47.9	&72.0 \\
         Arabic & 7 & 55.5	&55.6 \\
        \hline
    \end{tabular}
    }
   \caption{Official results obtained across different languages on the test set.}
    \label{tab:results_test}
\end{table}

\section{Discussion and Error Analysis}

Despite achieving promising results, in terms of Macro-$F_1$ scores, our model still occasionally misclassifies instances, particularly in cases involving the propagandistic nature of memes. Although the labeled test set was not made available by the organizers, we were still able to inspect more in detail the results obtained on the development set. \Cref{fig:fn,fig:fp} illustrate examples of false positive and false negative predictions, respectively. In both instances, we can formulate hypotheses regarding why and when our model generates errors. The false positive example may be misconstrued as employing a ``Slogan'' based persuasion technique, possibly due to hashtags present in the sign. The false negative could stem from the model's inability to recognize inherent sarcasm. The confusion matrix depicted in~\Cref{fig:schema:cm} reveals an uneven distribution of errors across both classes, indicating a bias towards the propagandistic class. This bias could be attributed to the imbalance in the training set.

\begin{figure}[ht]
  \centering
  %\includesvg[width=0.5\textwidth]{res/confusion_matrix.svg}
  \includegraphics[scale=0.4]{res/output.png}
  \caption{Confusion matrix of Themis predictions on the development set.}
  \label{fig:schema:cm}
\end{figure}

%fp and fn examples
\begin{figure}[ht]
  \centering
  \includegraphics[scale=0.11]{res/fp.png}
  \caption{Example of false positive from the development set.}
  \label{fig:fp}
\end{figure}

\begin{figure}[ht]
  \centering
  \includegraphics[scale=0.15]{res/fn.png}
  \caption{Example of false negative from the development set.}
  \label{fig:fn}
\end{figure}


\section{Conclusions}
In this study, we introduced Themis, a novel model for analyzing multimodal memes by integrating LLMs and contrastive learning image encoders. Through comprehensive experiments, Themis demonstrated remarkable efficacy in detecting persuasion techniques within memes, achieving a notable F1 score of up to 83.4\%. Our findings underscore the critical role of meticulous model architecture design and hyperparameter optimization in meme analysis tasks. Notably, Themis presents a robust solution to combat societal challenges posed by biased content online, offering a promising avenue for mitigating the spread of misinformation and promoting digital discourse integrity.

\section*{Code availability}
The code for our Themis model and train strategy is available on GitHub at: \href{https://github.com/demon-prin/Themis-SEMEVAL-public}{https://github.com/demon-prin/Themis-SEMEVAL-public}

\section*{Acknowledgements}
The work has been partially supported by the project DEMON ``Detect and Evaluate Manipulation of ONline information'' funded by MIUR under the PRIN 2022 grant 2022BAXSPY (CUP F53D23004270006, NextGenerationEU), by project SERICS (PE00000014) under the NRRP MUR program funded by the EU - NGEU (NextGenerationEU), by project eINS Ecosystem of Innovation for Next Generation Sardinia (CUP F53C22000430001) under the NRRP MUR program funded by the EU - NGEU (NextGenerationEU) and project NEST ``Network 4 Energy Sustainable Transition–NEST'' (CUP F53C22000770007) under the NRRP MUR program funded by the EU - NGEU (NextGenerationEU).

% Bibliography entries for the entire Anthology, followed by custom entries
%\bibliography{anthology,custom}
% Custom bibliography entries only
\bibliography{biblio}

%\appendix
%\section{Appendix}
%\label{sec:appendix}
%This is an appendix.

\end{document}
