diff --git a/examples/create_public_key.py b/examples/create_public_key.py
index 8c088a651f7155b3422abe9315785e96e1e6c21b..7ed15a28a9e24a40f6fcc548ff5611b025178591 100644
--- a/examples/create_public_key.py
+++ b/examples/create_public_key.py
@@ -20,7 +20,7 @@ from duniterpy.key import SigningKey
 
 ################################################
 
-if __name__ == "__main__":
+def create_public_key():
     # prompt hidden user entry
     salt = getpass.getpass("Enter your passphrase (salt): ")
 
@@ -32,3 +32,7 @@ if __name__ == "__main__":
 
     # Display your public key
     print("Public key for your credentials: %s" % key.pubkey)
+
+
+if __name__ == "__main__":
+    create_public_key()
diff --git a/examples/listen_ws2p.py b/examples/listen_ws2p.py
index 6a8c4f2471252af77e2fcc9f5c6580c259539c5b..2faedaee956160c576e48bc73b157f6944eda0c0 100644
--- a/examples/listen_ws2p.py
+++ b/examples/listen_ws2p.py
@@ -37,7 +37,7 @@ CURRENCY = "g1-test"
 ################################################
 
 
-def main():
+def listen_ws2p():
     """
     Main code
     """
@@ -101,4 +101,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
+    listen_ws2p()
diff --git a/examples/load_binary_encrypted_message.py b/examples/load_binary_encrypted_message.py
index 19447c271b407bfc99b2e20f69c27d1f6757465f..1853cafaf0ea2ee0e48daeea8e6cb75fc62d230f 100644
--- a/examples/load_binary_encrypted_message.py
+++ b/examples/load_binary_encrypted_message.py
@@ -20,8 +20,8 @@ import sys
 
 from duniterpy.key import SigningKey
 
-if __name__ == "__main__":
 
+def load_binary_encrypted_message():
     if len(sys.argv) < 2:
         print(
             """
@@ -54,3 +54,6 @@ if __name__ == "__main__":
         message = str(error)
 
     print(message)
+
+if __name__ == "__main__":
+    load_binary_encrypted_message()
diff --git a/examples/load_binary_signed_message.py b/examples/load_binary_signed_message.py
index 57cea48d5076dbbe2700329249c5dd0453443519..857390faed074807128d1fef3d9351a452571ece 100644
--- a/examples/load_binary_signed_message.py
+++ b/examples/load_binary_signed_message.py
@@ -19,8 +19,7 @@ import sys
 
 from duniterpy.key import VerifyingKey
 
-if __name__ == "__main__":
-
+def load_binary_signed_message():
     if len(sys.argv) < 2:
         print(
             """
@@ -48,3 +47,7 @@ if __name__ == "__main__":
         message = str(error)
 
     print(message)
+
+
+if __name__ == "__main__":
+    load_binary_signed_message()
diff --git a/examples/load_cleartext_ascii_armor_message.py b/examples/load_cleartext_ascii_armor_message.py
index 339f24ee5823a3c72ec47fedfd1d43086e5ce299..cd87bc03de31a013dc889c66a47676e663ea5684 100644
--- a/examples/load_cleartext_ascii_armor_message.py
+++ b/examples/load_cleartext_ascii_armor_message.py
@@ -23,7 +23,7 @@ CLEARTEXT_AA_MESSAGE_PATH = "/tmp/duniter_cleartext_aa_message.txt"
 
 ################################################
 
-if __name__ == "__main__":
+def load_cleartext_ascii_armor_message():
     # Ask public key of the issuer
     pubkeyBase58 = input("Enter public key of the message issuer: ")
 
@@ -44,3 +44,7 @@ if __name__ == "__main__":
         + "----------------------------------"
     )
     print(result)
+
+
+if __name__ == "__main__":
+    load_cleartext_ascii_armor_message()
diff --git a/examples/load_credentials_file.py b/examples/load_credentials_file.py
index 9942a1e9db51ef5542acae24153d141b75965dbb..70e6a49f1310fd66bbb8c7facbb32d3573253008 100644
--- a/examples/load_credentials_file.py
+++ b/examples/load_credentials_file.py
@@ -19,7 +19,7 @@ import sys
 
 from duniterpy.key import SigningKey
 
-if __name__ == "__main__":
+def load_credentials_file():
     if len(sys.argv) < 2:
         print("Usage: python load_credentials_file.py FILEPATH")
         sys.exit(1)
@@ -34,3 +34,7 @@ if __name__ == "__main__":
 
     # print pubkey
     print("Public key from credentials file: {}".format(signing_key_instance.pubkey))
+
+
+if __name__ == "__main__":
+    load_credentials_file()
diff --git a/examples/load_encrypted_ascii_armor_message.py b/examples/load_encrypted_ascii_armor_message.py
index 5e27efb185b1bc460e6ed2980f9e942a583c38ba..44234bda6f365e67fb3c2a04c9c6913561beab3a 100644
--- a/examples/load_encrypted_ascii_armor_message.py
+++ b/examples/load_encrypted_ascii_armor_message.py
@@ -25,7 +25,7 @@ ENCRYPTED_AA_MESSAGE_PATH = "/tmp/duniter_aa_encrypted_message.txt"
 
 ################################################
 
-if __name__ == "__main__":
+def load_encrypted_ascii_armor_message():
     # Ask public key of the recipient
     pubkeyBase58 = input("Enter public key of the message issuer: ")
 
@@ -49,3 +49,7 @@ if __name__ == "__main__":
     )
 
     print(AsciiArmor.parse(ascii_armor_block, signing_key, [pubkeyBase58]))
+
+
+if __name__ == "__main__":
+    load_encrypted_ascii_armor_message()
diff --git a/examples/load_local_blockchain.py b/examples/load_local_blockchain.py
index b5d727c4a9be99621cd5e5dd322331f3b0ef30a5..517b641660929f6491be1db56119d1a8d616c69e 100644
--- a/examples/load_local_blockchain.py
+++ b/examples/load_local_blockchain.py
@@ -21,10 +21,14 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 from duniterpy.helpers.blockchain import load
 
-bc = load()  # gets blockchain iterator
-b = next(bc)  # gets block
-print(f"first block number is: {b.number}")  # should return 0
-# you can access all properties of this block through it's duniterpy objects attributes
-print(f"second block number is: {next(bc).number}")  # should return 1
-print(f"third block number is: {next(bc).number}")  # should return 2
-# (and so on)
+def load_local_blockchain():
+    bc = load()  # gets blockchain iterator
+    b = next(bc)  # gets block
+    print(f"first block number is: {b.number}")  # should return 0
+    # you can access all properties of this block through it's duniterpy objects attributes
+    print(f"second block number is: {next(bc).number}")  # should return 1
+    print(f"third block number is: {next(bc).number}")  # should return 2
+    # (and so on)
+
+if __name__ == "__main__":
+    load_local_blockchain()
diff --git a/examples/load_scuttlebutt_file.py b/examples/load_scuttlebutt_file.py
index e5e557ccb8f6b204282b145f810858bd74ff1310..48cff9a8ebea9250b71224f9d4f5a2db76fa2ff3 100644
--- a/examples/load_scuttlebutt_file.py
+++ b/examples/load_scuttlebutt_file.py
@@ -19,7 +19,7 @@ import sys
 
 from duniterpy.key import SigningKey
 
-if __name__ == "__main__":
+def load_scuttlebutt_file():
     if len(sys.argv) < 2:
         print("Usage: python load_scuttlebutt_file.py FILEPATH")
         sys.exit(1)
@@ -34,3 +34,7 @@ if __name__ == "__main__":
 
     # print pubkey
     print("Public key from scuttlebutt file: {}".format(signing_key_instance.pubkey))
+
+
+if __name__ == "__main__":
+    load_scuttlebutt_file()
diff --git a/examples/request_available_nodes.py b/examples/request_available_nodes.py
index e4a394bd7e2ea350dc7f393297678c75e37db261..7b806d002c6646da2ecc520a645be2a5e9c905a4 100644
--- a/examples/request_available_nodes.py
+++ b/examples/request_available_nodes.py
@@ -29,7 +29,7 @@ BMAS_ENDPOINT = "BMAS g1-test.duniter.org 443"
 ################################################
 
 
-def main():
+def request_available_nodes():
     """
     Main code
     """
@@ -49,4 +49,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
+    request_available_nodes()
diff --git a/examples/request_data.py b/examples/request_data.py
index f86b7a4552ed5aa2c680084a14dc348295757a50..caea39bfda3558558889cd2f45ccdefbb09abcf4 100644
--- a/examples/request_data.py
+++ b/examples/request_data.py
@@ -29,7 +29,7 @@ BMAS_ENDPOINT = "BMAS g1-test.duniter.org 443"
 ################################################
 
 
-def main():
+def request_data():
     """
     Main code (synchronous requests)
     """
@@ -80,4 +80,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
+    request_data()
diff --git a/examples/request_data_async.py b/examples/request_data_async.py
index 0939f0393d24ae0093a94322b394474ff4d42b34..1633ca1a227dbce2cb42b0abf8ee98a046e79159 100644
--- a/examples/request_data_async.py
+++ b/examples/request_data_async.py
@@ -39,7 +39,7 @@ async def coroutine(function, *args, **kwargs):
     return function(*args, **kwargs)
 
 
-async def main():
+async def request_data_async():
     """
     Main code (asynchronous requests)
 
@@ -72,4 +72,5 @@ async def main():
 
 # Latest duniter-python-api is asynchronous and you have to use asyncio, an asyncio loop and a "as" on the data.
 # ( https://docs.python.org/3/library/asyncio.html )
-asyncio.get_event_loop().run_until_complete(main())
+if __name__ == "__main__":
+    asyncio.get_event_loop().run_until_complete(request_data_async())
diff --git a/examples/request_data_elasticsearch.py b/examples/request_data_elasticsearch.py
index 3e247d7a66ce52eb2ca207f20956b92e011146a7..543d8e8bab4702c1dbcdcb5e173dca92b516cdcf 100644
--- a/examples/request_data_elasticsearch.py
+++ b/examples/request_data_elasticsearch.py
@@ -32,7 +32,7 @@ ES_USER_ENDPOINT = "ES_USER_API g1-test.data.duniter.fr 443"
 ################################################
 
 
-def main():
+def request_data_elasticsearch():
     """
     Main code (synchronous requests)
     """
@@ -64,4 +64,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
+    request_data_elasticsearch()
diff --git a/examples/request_data_graphql.py b/examples/request_data_graphql.py
index e9fa5f1fd7e670a84da7db32696f1a29262cd090..5849bbf5ab9377b3457b61f138f50ec088057f01 100644
--- a/examples/request_data_graphql.py
+++ b/examples/request_data_graphql.py
@@ -16,7 +16,7 @@ GVA_ENDPOINT = "GVA S g1.librelois.fr 443 gva"
 ################################################
 
 
-def main():
+def request_data_graphql():
     client = Client(GVA_ENDPOINT)
 
     # get query to get schema from api
@@ -56,4 +56,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
+    request_data_graphql()
diff --git a/examples/request_web_socket_block.py b/examples/request_web_socket_block.py
index d52aba94096659fb8a0756475bdbc5747409e1bc..16583c367c7c19e27bbca2ca31044a40e391e6a1 100644
--- a/examples/request_web_socket_block.py
+++ b/examples/request_web_socket_block.py
@@ -33,7 +33,7 @@ BMAS_ENDPOINT = "BMAS g1-test.duniter.org 443"
 ################################################
 
 
-def main():
+def request_web_socket_block():
     """
     Main code
     """
@@ -61,4 +61,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
+    request_web_socket_block()
diff --git a/examples/request_ws2p.py b/examples/request_ws2p.py
index 73c441b061fff73811240e64fb594643852cea9c..d224c3cfaba60afcb079a74e873c1c274425adf8 100644
--- a/examples/request_ws2p.py
+++ b/examples/request_ws2p.py
@@ -79,7 +79,7 @@ def send(ws: WSConnection, request: str, request_id: str, schema: dict) -> Any:
     return response
 
 
-def main():
+def request_ws2p():
     """
     Main code
     """
@@ -169,4 +169,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
+    request_ws2p()
diff --git a/examples/save_and_load_private_key_file.py b/examples/save_and_load_private_key_file.py
index 8e3c477f8ea30950302e14577dca39d633ede48f..d135f0e579227be06042fd832c18eb72a99258b3 100644
--- a/examples/save_and_load_private_key_file.py
+++ b/examples/save_and_load_private_key_file.py
@@ -38,33 +38,35 @@ PRIVATE_KEYS_FILE_PATH = os.path.join(home_path, ".duniter_account_private_keys.
 
 ################################################
 
-# prompt hidden user entry
-salt = getpass.getpass("Enter your passphrase (salt): ")
+def save_and_load_private_key_file():
+    # prompt hidden user entry
+    salt = getpass.getpass("Enter your passphrase (salt): ")
 
-# prompt hidden user entry
-password = getpass.getpass("Enter your password: ")
+    # prompt hidden user entry
+    password = getpass.getpass("Enter your password: ")
 
-# prompt public key
-pubkey = input("Enter your public key: ")
+    # prompt public key
+    pubkey = input("Enter your public key: ")
 
-# init signer instance
-signer = SigningKey.from_credentials(salt, password)
+    # init signer instance
+    signer = SigningKey.from_credentials(salt, password)
 
-# check public key
-if signer.pubkey != pubkey:
-    print("Bad credentials!")
-    sys.exit(1)
+    # check public key
+    if signer.pubkey != pubkey:
+        print("Bad credentials!")
+        sys.exit(1)
 
-# save private keys in a file (json format)
-signer.save_private_key(PRIVATE_KEYS_FILE_PATH)
+    # save private keys in a file (json format)
+    signer.save_private_key(PRIVATE_KEYS_FILE_PATH)
 
-# document saved
-print("Private keys for public key %s saved in %s" % (pubkey, PRIVATE_KEYS_FILE_PATH))
+    # document saved
+    print("Private keys for public key %s saved in %s" % (pubkey, PRIVATE_KEYS_FILE_PATH))
 
-# load private keys from file
-loaded_signer = SigningKey.from_private_key(PRIVATE_KEYS_FILE_PATH)  # type: SigningKey
+    # load private keys from file
+    loaded_signer = SigningKey.from_private_key(PRIVATE_KEYS_FILE_PATH)  # type: SigningKey
 
-# check public key from file
-print("Public key %s loaded from file %s" % (pubkey, PRIVATE_KEYS_FILE_PATH))
+    # check public key from file
+    print("Public key %s loaded from file %s" % (loaded_signer.pubkey, PRIVATE_KEYS_FILE_PATH))
 
-sys.exit(0)
+if __name__ == "__main__":
+    save_and_load_private_key_file()
diff --git a/examples/save_and_load_private_key_file_ewif.py b/examples/save_and_load_private_key_file_ewif.py
index 135ed2026eae2708f6f13ec16db6b773c0721745..009c9172994dff8225a7371a8c18773b323daaba 100644
--- a/examples/save_and_load_private_key_file_ewif.py
+++ b/examples/save_and_load_private_key_file_ewif.py
@@ -38,49 +38,50 @@ PRIVATE_KEY_FILE_PATH = os.path.join(home_path, ".duniter_account_ewif_v1.dunite
 
 ################################################
 
-# prompt hidden user entry
-salt = getpass.getpass("Enter your passphrase (salt): ")
+def save_and_load_private_key_file_ewif():
+    # prompt hidden user entry
+    salt = getpass.getpass("Enter your passphrase (salt): ")
 
-# prompt hidden user entry
-password = getpass.getpass("Enter your password: ")
+    # prompt hidden user entry
+    password = getpass.getpass("Enter your password: ")
 
-# prompt public key
-pubkey = input("Enter your public key: ")
+    # prompt public key
+    pubkey = input("Enter your public key: ")
 
-# init signer instance
-signer = SigningKey.from_credentials(salt, password)
+    # init signer instance
+    signer = SigningKey.from_credentials(salt, password)
 
-# check public key
-if signer.pubkey != pubkey:
-    print("Bad credentials!")
-    sys.exit(1)
+    # check public key
+    if signer.pubkey != pubkey:
+        print("Bad credentials!")
+        sys.exit(1)
 
-# prompt hidden user entry
-ewif_password = getpass.getpass("Enter an encryption password: ")
+    # prompt hidden user entry
+    ewif_password = getpass.getpass("Enter an encryption password: ")
 
-# save private key in a file (EWIF v1 format)
-signer.save_ewif_file(PRIVATE_KEY_FILE_PATH, ewif_password)
+    # save private key in a file (EWIF v1 format)
+    signer.save_ewif_file(PRIVATE_KEY_FILE_PATH, ewif_password)
 
-# document saved
-print(
-    "Private key for public key %s saved in %s" % (signer.pubkey, PRIVATE_KEY_FILE_PATH)
-)
-
-try:
-    # load private keys from file
-    loaded_signer = SigningKey.from_ewif_file(
-        PRIVATE_KEY_FILE_PATH, ewif_password
-    )  # type: SigningKey
-
-    # check public key from file
+    # document saved
     print(
-        "Public key %s loaded from file %s"
-        % (loaded_signer.pubkey, PRIVATE_KEY_FILE_PATH)
+        "Private key for public key %s saved in %s" % (signer.pubkey, PRIVATE_KEY_FILE_PATH)
     )
 
-except IOError as error:
-    print(error)
-    sys.exit(1)
+    try:
+        # load private keys from file
+        loaded_signer = SigningKey.from_ewif_file(
+            PRIVATE_KEY_FILE_PATH, ewif_password
+        )  # type: SigningKey
+
+        # check public key from file
+        print(
+            "Public key %s loaded from file %s"
+            % (loaded_signer.pubkey, PRIVATE_KEY_FILE_PATH)
+        )
 
+    except IOError as error:
+        print(error)
+        sys.exit(1)
 
-sys.exit(0)
+if __name__ == "__main__":
+    save_and_load_private_key_file_ewif()
diff --git a/examples/save_and_load_private_key_file_pubsec.py b/examples/save_and_load_private_key_file_pubsec.py
index afe41a370ed61c0f56d1738e00df366fed0311c1..a42dd2ec07c22bbc603b6302fe65a22a0d9c6953 100644
--- a/examples/save_and_load_private_key_file_pubsec.py
+++ b/examples/save_and_load_private_key_file_pubsec.py
@@ -38,44 +38,46 @@ PRIVATE_KEY_FILE_PATH = os.path.join(home_path, ".duniter_account_pubsec_v1.duni
 
 ################################################
 
-# prompt hidden user entry
-salt = getpass.getpass("Enter your passphrase (salt): ")
 
-# prompt hidden user entry
-password = getpass.getpass("Enter your password: ")
+def save_and_load_private_key_file_pubsec():
+    # prompt hidden user entry
+    salt = getpass.getpass("Enter your passphrase (salt): ")
 
-# prompt public key
-pubkey = input("Enter your public key: ")
+    # prompt hidden user entry
+    password = getpass.getpass("Enter your password: ")
 
-# init signer instance
-signer = SigningKey.from_credentials(salt, password)
+    # prompt public key
+    pubkey = input("Enter your public key: ")
 
-# check public key
-if signer.pubkey != pubkey:
-    print("Bad credentials!")
-    sys.exit(1)
+    # init signer instance
+    signer = SigningKey.from_credentials(salt, password)
 
-# save private key in a file (PubSec v1 format)
-signer.save_pubsec_file(PRIVATE_KEY_FILE_PATH)
+    # check public key
+    if signer.pubkey != pubkey:
+        print("Bad credentials!")
+        sys.exit(1)
 
-# document saved
-print(
-    "Private key for public key %s saved in %s" % (signer.pubkey, PRIVATE_KEY_FILE_PATH)
-)
+    # save private key in a file (PubSec v1 format)
+    signer.save_pubsec_file(PRIVATE_KEY_FILE_PATH)
 
-try:
-    # load private keys from file
-    loaded_signer = SigningKey.from_pubsec_file(PRIVATE_KEY_FILE_PATH)
-
-    # check public key from file
+    # document saved
     print(
-        "Public key %s loaded from file %s"
-        % (loaded_signer.pubkey, PRIVATE_KEY_FILE_PATH)
+        "Private key for public key %s saved in %s" % (signer.pubkey, PRIVATE_KEY_FILE_PATH)
     )
 
-except IOError as error:
-    print(error)
-    sys.exit(1)
+    try:
+        # load private keys from file
+        loaded_signer = SigningKey.from_pubsec_file(PRIVATE_KEY_FILE_PATH)
+
+        # check public key from file
+        print(
+            "Public key %s loaded from file %s"
+            % (loaded_signer.pubkey, PRIVATE_KEY_FILE_PATH)
+        )
 
+    except IOError as error:
+        print(error)
+        sys.exit(1)
 
-sys.exit(0)
+if __name__ == "__main__":
+    save_and_load_private_key_file_pubsec()
diff --git a/examples/save_and_load_private_key_file_wif.py b/examples/save_and_load_private_key_file_wif.py
index fd78982dd24dff71ba576827877d12769bdc711c..aa9e479b3f5b1adba18ec6df6b32025e3433eb89 100644
--- a/examples/save_and_load_private_key_file_wif.py
+++ b/examples/save_and_load_private_key_file_wif.py
@@ -38,44 +38,45 @@ PRIVATE_KEY_FILE_PATH = os.path.join(home_path, ".duniter_account_wif_v1.duniter
 
 ################################################
 
-# prompt hidden user entry
-salt = getpass.getpass("Enter your passphrase (salt): ")
+def save_and_load_private_key_file_wif():
+    # prompt hidden user entry
+    salt = getpass.getpass("Enter your passphrase (salt): ")
 
-# prompt hidden user entry
-password = getpass.getpass("Enter your password: ")
+    # prompt hidden user entry
+    password = getpass.getpass("Enter your password: ")
 
-# prompt public key
-pubkey = input("Enter your public key: ")
+    # prompt public key
+    pubkey = input("Enter your public key: ")
 
-# init signer instance
-signer = SigningKey.from_credentials(salt, password)
+    # init signer instance
+    signer = SigningKey.from_credentials(salt, password)
 
-# check public key
-if signer.pubkey != pubkey:
-    print("Bad credentials!")
-    sys.exit(1)
+    # check public key
+    if signer.pubkey != pubkey:
+        print("Bad credentials!")
+        sys.exit(1)
 
-# save private key in a file (WIF v1 format)
-signer.save_wif_file(PRIVATE_KEY_FILE_PATH)
+    # save private key in a file (WIF v1 format)
+    signer.save_wif_file(PRIVATE_KEY_FILE_PATH)
 
-# document saved
-print(
-    "Private key for public key %s saved in %s" % (signer.pubkey, PRIVATE_KEY_FILE_PATH)
-)
-
-try:
-    # load private keys from file
-    loaded_signer = SigningKey.from_wif_file(PRIVATE_KEY_FILE_PATH)  # type: SigningKey
-
-    # check public key from file
+    # document saved
     print(
-        "Public key %s loaded from file %s"
-        % (loaded_signer.pubkey, PRIVATE_KEY_FILE_PATH)
+        "Private key for public key %s saved in %s" % (signer.pubkey, PRIVATE_KEY_FILE_PATH)
     )
 
-except IOError as error:
-    print(error)
-    sys.exit(1)
+    try:
+        # load private keys from file
+        loaded_signer = SigningKey.from_wif_file(PRIVATE_KEY_FILE_PATH)  # type: SigningKey
+
+        # check public key from file
+        print(
+            "Public key %s loaded from file %s"
+            % (loaded_signer.pubkey, PRIVATE_KEY_FILE_PATH)
+        )
 
+    except IOError as error:
+        print(error)
+        sys.exit(1)
 
-sys.exit(0)
+if __name__ == "__main__":
+    save_and_load_private_key_file_wif()
diff --git a/examples/save_binary_encrypted_message.py b/examples/save_binary_encrypted_message.py
index 8000256ee9a703ef78611178003f1c7ef3e18767..38c88d153fdddfc95c2cbadffe01b1aad68d8866 100644
--- a/examples/save_binary_encrypted_message.py
+++ b/examples/save_binary_encrypted_message.py
@@ -23,7 +23,7 @@ ENCRYPTED_MESSAGE_FILENAME = "/tmp/duniter_encrypted_message.bin"
 
 ################################################
 
-if __name__ == "__main__":
+def save_binary_encrypted_message():
     # Ask public key of the recipient
     pubkeyBase58 = input("Enter public key of the message recipient: ")
 
@@ -39,3 +39,6 @@ if __name__ == "__main__":
         file_handler.write(encrypted_message)
 
     print("Encrypted message saved in file ./{0}".format(ENCRYPTED_MESSAGE_FILENAME))
+
+if __name__ == "__main__":
+    save_binary_encrypted_message()
diff --git a/examples/save_binary_signed_message.py b/examples/save_binary_signed_message.py
index 094d08619ec35e03a1ca08ef4faa6029b3103f12..0b6aef70f8d5c37740ced3ea9207988e43976576 100644
--- a/examples/save_binary_signed_message.py
+++ b/examples/save_binary_signed_message.py
@@ -27,7 +27,7 @@ SIGNED_MESSAGE_FILENAME = "/tmp/duniter_signed_message.bin"
 
 ################################################
 
-if __name__ == "__main__":
+def save_binary_signed_message():
     # prompt hidden user entry
     salt = getpass.getpass("Enter your passphrase (salt): ")
 
@@ -50,9 +50,14 @@ if __name__ == "__main__":
     veri = libnacl.sign.Verifier(key.hex_vk())
     # Verify the message!
     verified = veri.verify(signed_message)
+    print(f"Message verified: {verified}")
 
     # save signed message in a file
     with open(SIGNED_MESSAGE_FILENAME, "wb") as file_handler:
         file_handler.write(signed_message)
 
     print("Signed message saved in file ./{0}".format(SIGNED_MESSAGE_FILENAME))
+
+
+if __name__ == "__main__":
+    save_binary_signed_message()
diff --git a/examples/save_cleartext_ascii_armor_message.py b/examples/save_cleartext_ascii_armor_message.py
index 2efb6c2d1ebd5eda862f969a3bca5c3618e7c247..6d26dfcb34157e4d492e25f138ac19d38ebeff6c 100644
--- a/examples/save_cleartext_ascii_armor_message.py
+++ b/examples/save_cleartext_ascii_armor_message.py
@@ -28,7 +28,7 @@ CLEARTEXT_AA_MESSAGE_PATH = "/tmp/duniter_cleartext_aa_message.txt"
 
 ################################################
 
-if __name__ == "__main__":
+def save_cleartext_ascii_armor_message():
     # prompt hidden user entry
     salt = getpass.getpass("Enter your passphrase (salt): ")
 
@@ -59,3 +59,6 @@ if __name__ == "__main__":
             CLEARTEXT_AA_MESSAGE_PATH
         )
     )
+
+if __name__ == "__main__":
+    save_cleartext_ascii_armor_message()
diff --git a/examples/save_encrypted_ascii_armor_message.py b/examples/save_encrypted_ascii_armor_message.py
index d5cc6a1b68c1fa488be2b0c6029b064092bf094b..c45cd44e8913cb9a4c96d97f0e91325f5589f43f 100644
--- a/examples/save_encrypted_ascii_armor_message.py
+++ b/examples/save_encrypted_ascii_armor_message.py
@@ -26,7 +26,7 @@ ENCRYPTED_AA_MESSAGE_PATH = "/tmp/duniter_aa_encrypted_message.txt"
 
 ################################################
 
-if __name__ == "__main__":
+def save_encrypted_ascii_armor_message():
     # Ask public key of the recipient
     pubkeyBase58 = input("Enter public key of the message recipient: ")
 
@@ -63,3 +63,6 @@ if __name__ == "__main__":
             ENCRYPTED_AA_MESSAGE_PATH
         )
     )
+
+if __name__ == "__main__":
+    save_encrypted_ascii_armor_message()
diff --git a/examples/save_revoke_document.py b/examples/save_revoke_document.py
index 6bd3b9e843d4ccaad6e156c3382af07662f07065..dcbeed87e28fb6b3f4287b905c43dfbec041eef7 100644
--- a/examples/save_revoke_document.py
+++ b/examples/save_revoke_document.py
@@ -114,7 +114,7 @@ def get_signed_raw_revocation_document(
     return revocation.signed_raw()
 
 
-def main():
+def save_revoke_document():
     """
     Main code
     """
@@ -167,4 +167,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
+    save_revoke_document()
diff --git a/examples/send_certification.py b/examples/send_certification.py
index 0d50c041dcf68e555fdc54957b264cd3538a37f1..ba1b74f38fbfc0383d1fc8a6f923107cf4138808 100644
--- a/examples/send_certification.py
+++ b/examples/send_certification.py
@@ -98,7 +98,7 @@ def get_certification_document(
     )
 
 
-def main():
+def send_certification():
     """
     Main code
     """
@@ -148,4 +148,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
+    send_certification()
diff --git a/examples/send_identity.py b/examples/send_identity.py
index b805e85b81b44f74bc2a352b84219bc254692ded..2bdc987440cefe5d01ccb42e4ba5b5abf581f157 100644
--- a/examples/send_identity.py
+++ b/examples/send_identity.py
@@ -67,7 +67,7 @@ def get_identity_document(
     return identity
 
 
-def main():
+def send_identity():
     """
     Main code
     """
@@ -105,4 +105,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
+    send_identity()
diff --git a/examples/send_membership.py b/examples/send_membership.py
index 649447b1b8365fedc2087694e1890bb4c1832c3c..2506c9f44d0fd2f31d8530ddfd9888386b7cfe96 100644
--- a/examples/send_membership.py
+++ b/examples/send_membership.py
@@ -74,7 +74,7 @@ def get_membership_document(
     return membership
 
 
-def main():
+def send_membership():
     """
     Main code
     """
@@ -115,4 +115,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
+    send_membership()
diff --git a/examples/send_transaction.py b/examples/send_transaction.py
index f841adcdea2531b130b29616b8759e529875dc82..cea1f0cd8663d07753bfba8f2d7aac27add33bd2 100644
--- a/examples/send_transaction.py
+++ b/examples/send_transaction.py
@@ -105,7 +105,7 @@ def get_transaction_document(
     return transaction
 
 
-def main():
+def send_transaction():
     """
     Main code
     """
@@ -160,4 +160,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
+    send_transaction()