Proteins are macromolecules responsible for a diverse set of important biological functions, such as catalyzing metabolic reactions, cell signaling and signal transduction, molecular transport and storage, structural scaffolding, molecular recognition, etc.\cite{petsko2004}