diff --git a/node/src/command.rs b/node/src/command.rs
index 86b2e523366077acdac0b050fafb64d52340b69b..4008229eefaf488e1887f7e6d63b186b21a2c7f4 100644
--- a/node/src/command.rs
+++ b/node/src/command.rs
@@ -310,20 +310,20 @@ pub fn run() -> sc_cli::Result<()> {
             let chain_spec = &runner.config().chain_spec;
 
             match &**cmd {
-                BenchmarkCmd::Storage(cmd) => runner.sync_run(|mut config| {
-                    let (client, backend, _, _) = service::new_chain_ops(&mut config, false)?;
+                BenchmarkCmd::Storage(cmd) => runner.sync_run(|config| {
+                    let (client, backend, _, _) = service::new_chain_ops(&config, false)?;
                     let db = backend.expose_db();
                     let storage = backend.expose_storage();
 
                     unwrap_client!(client, cmd.run(config, client.clone(), db, storage))
                 }),
-                BenchmarkCmd::Block(cmd) => runner.sync_run(|mut config| {
-                    let (client, _, _, _) = service::new_chain_ops(&mut config, false)?;
+                BenchmarkCmd::Block(cmd) => runner.sync_run(|config| {
+                    let (client, _, _, _) = service::new_chain_ops(&config, false)?;
 
                     unwrap_client!(client, cmd.run(client.clone()))
                 }),
-                BenchmarkCmd::Overhead(cmd) => runner.sync_run(|mut config| {
-                    let (client, _, _, _) = service::new_chain_ops(&mut config, false)?;
+                BenchmarkCmd::Overhead(cmd) => runner.sync_run(|config| {
+                    let (client, _, _, _) = service::new_chain_ops(&config, false)?;
                     let wrapped = client.clone();
 
                     let inherent_data = crate::service::client::benchmark_inherent_data()
diff --git a/pallets/authority-members/src/benchmarking.rs b/pallets/authority-members/src/benchmarking.rs
index 18e6472f8b096d07cf53282337aa67a3d5b482be..893d89ba867bb56f5d9f209536f2df6fccb428e4 100644
--- a/pallets/authority-members/src/benchmarking.rs
+++ b/pallets/authority-members/src/benchmarking.rs
@@ -59,12 +59,12 @@ benchmarks! {
         let caller: T::AccountId = Members::<T>::get(id).unwrap().owner_key;
         let caller_origin: <T as frame_system::Config>::RuntimeOrigin = RawOrigin::Signed(caller.clone()).into();
             let validator_id = T::ValidatorIdOf::convert(caller.clone()).unwrap();
-            let session_keys: T::Keys = pallet_session::NextKeys::<T>::get(validator_id).unwrap().into();
+            let session_keys: T::Keys = pallet_session::NextKeys::<T>::get(validator_id).unwrap();
         }: _<T::RuntimeOrigin>(caller_origin, session_keys)
      remove_member {
         let id: T::MemberId = OnlineAuthorities::<T>::get()[0];
         let caller_origin = RawOrigin::Root.into();
-        }: _<T::RuntimeOrigin>(caller_origin, id.clone())
+        }: _<T::RuntimeOrigin>(caller_origin, id)
     verify {
         assert_has_event::<T>(Event::<T>::MemberRemoved{member: id}.into());
     }
diff --git a/pallets/certification/src/benchmarking.rs b/pallets/certification/src/benchmarking.rs
index f265a95f7e1d06fa6edbb7c00f67a7a99c063290..4a4b61a8e812d97c676ae190d43aa5512a0ccfab 100644
--- a/pallets/certification/src/benchmarking.rs
+++ b/pallets/certification/src/benchmarking.rs
@@ -60,7 +60,7 @@ benchmarks_instance_pallet! {
         frame_system::pallet::Pallet::<T>::set_block_number(T::CertPeriod::get());
     }: _<T::RuntimeOrigin>(caller_origin, issuer, receiver)
     verify {
-        assert_has_event::<T, I>(Event::<T, I>::CertAdded{ issuer: issuer, receiver: receiver }.into());
+        assert_has_event::<T, I>(Event::<T, I>::CertAdded{ issuer, receiver }.into());
     }
     del_cert {
         let issuer: T::IdtyIndex = 1.into();
@@ -70,14 +70,14 @@ benchmarks_instance_pallet! {
         let issuer_cert: u32 = StorageIdtyCertMeta::<T, I>::get(issuer).issued_count;
     }: _<T::RuntimeOrigin>(RawOrigin::Root.into(), issuer, receiver)
     verify {
-        assert_has_event::<T, I>(Event::<T, I>::CertRemoved{ issuer: issuer, receiver: receiver, expiration: false }.into());
+        assert_has_event::<T, I>(Event::<T, I>::CertRemoved{ issuer,  receiver, expiration: false }.into());
     }
     remove_all_certs_received_by {
         let receiver: T::IdtyIndex = 0.into();
         let i in 2..1000 => add_certs::<T, I>(i, receiver)?;
     }: _<T::RuntimeOrigin>(RawOrigin::Root.into(),  receiver)
     verify {
-        assert!(CertsByReceiver::<T, I>::get(receiver).len() == 0 );
+        assert!(CertsByReceiver::<T, I>::get(receiver).is_empty() );
     }
     on_initialize {
         assert!(StorageCertsRemovableOn::<T, I>::try_get(T::BlockNumber::zero()).is_err());
@@ -94,7 +94,7 @@ benchmarks_instance_pallet! {
         frame_system::pallet::Pallet::<T>::set_block_number(block_number);
     }: {Pallet::<T, I>::do_remove_cert(issuer, receiver, Some(block_number));}
     verify {
-        assert_has_event::<T, I>(Event::<T, I>::CertRemoved{ issuer: issuer, receiver: receiver, expiration: true }.into());
+        assert_has_event::<T, I>(Event::<T, I>::CertRemoved{ issuer,  receiver, expiration: true }.into());
     }
 
     impl_benchmark_test_suite!(
diff --git a/pallets/distance/src/benchmarking.rs b/pallets/distance/src/benchmarking.rs
index 9fbbd324274ef3d9eea757fee398d190bf909fbb..33ba9419b1f9aeb7b4837948bf47e1ce166742a0 100644
--- a/pallets/distance/src/benchmarking.rs
+++ b/pallets/distance/src/benchmarking.rs
@@ -37,7 +37,7 @@ fn populate_pool<T: Config>(i: u32) -> Result<(), &'static str> {
         for j in 0..i {
             current_pool
                 .evaluations
-                .try_push((j.into(), median::MedianAcc::new()))
+                .try_push((j, median::MedianAcc::new()))
                 .map_err(|_| Error::<T>::QueueFull)?;
         }
         Ok(())
@@ -57,7 +57,7 @@ benchmarks! {
             let _ = <Balances<T> as Currency<_>>::make_free_balance_be(&caller, T::Balance::max_value());
     }: _<T::RuntimeOrigin>(caller_origin.clone())
     verify {
-        assert!(IdentityDistanceStatus::<T>::get(&idty) == Some((caller.clone(), DistanceStatus::Pending)), "Request not added");
+        assert!(IdentityDistanceStatus::<T>::get(idty) == Some((caller.clone(), DistanceStatus::Pending)), "Request not added");
         assert_has_event::<T>(Event::<T>::EvaluationRequested { idty_index: idty, who: caller }.into());
     }
     update_evaluation {
@@ -89,7 +89,7 @@ benchmarks! {
             let status = Some((caller.clone(), DistanceStatus::Valid));
     }: _<T::RuntimeOrigin>(RawOrigin::Root.into(), idty, status.clone())
     verify {
-        assert!(IdentityDistanceStatus::<T>::get(&idty) == Some((caller, DistanceStatus::Valid)), "Status not set");
+        assert!(IdentityDistanceStatus::<T>::get(idty) == Some((caller, DistanceStatus::Valid)), "Status not set");
         assert_has_event::<T>(Event::<T>::EvaluationStatusForced { idty_index: idty, status }.into());
     }
     on_finalize {
diff --git a/pallets/duniter-account/src/benchmarking.rs b/pallets/duniter-account/src/benchmarking.rs
index e0e300d0f6e57e5e09146cf76cbab56fe092d8cd..6c99b55323dd91dea63eb4bc124de7e6434ac4bc 100644
--- a/pallets/duniter-account/src/benchmarking.rs
+++ b/pallets/duniter-account/src/benchmarking.rs
@@ -40,8 +40,7 @@ fn create_pending_accounts<T: Config>(
             let existential_deposit = T::ExistentialDeposit::get();
             let balance = existential_deposit.saturating_mul((200u32).into());
             let _ = <pallet_balances::Pallet<T> as Currency<T::AccountId>>::make_free_balance_be(
-                &caller,
-                balance.into(),
+                &caller, balance,
             );
         } else {
             assert!(
diff --git a/pallets/identity/src/benchmarking.rs b/pallets/identity/src/benchmarking.rs
index fb5950a66fe25045bff9789f760bb3c49bc8bdab..f7ba053f612ba4e3b905f34dbe2ddc2b3d1f445a 100644
--- a/pallets/identity/src/benchmarking.rs
+++ b/pallets/identity/src/benchmarking.rs
@@ -61,7 +61,7 @@ fn create_one_identity<T: Config>(owner_key: T::AccountId) -> Result<Account<T>,
     Pallet::<T>::confirm_identity(owner_key_origin.clone(), name.clone())?;
     let idty_index = IdentityIndexOf::<T>::get(&owner_key).unwrap();
     // make identity member
-    <Identities<T>>::mutate_exists(T::IdtyIndex::from(idty_index), |idty_val_opt| {
+    <Identities<T>>::mutate_exists(idty_index, |idty_val_opt| {
         if let Some(ref mut idty_val) = idty_val_opt {
             idty_val.status = IdtyStatus::Member;
         }
@@ -133,7 +133,7 @@ benchmarks! {
     verify {
         let idty_index = IdentityIndexOf::<T>::get(&owner_key);
         assert!(idty_index.is_some(), "Identity not added");
-        assert_has_event::<T>(Event::<T>::IdtyCreated { idty_index: idty_index.unwrap(), owner_key: owner_key }.into());
+        assert_has_event::<T>(Event::<T>::IdtyCreated { idty_index: idty_index.unwrap(), owner_key }.into());
     }
 
     // confirm identity
@@ -146,7 +146,7 @@ benchmarks! {
     }: _<T::RuntimeOrigin>(owner_key_origin.clone(), IdtyName("new_identity".into()))
     verify {
         let idty_index = IdentityIndexOf::<T>::get(&owner_key);
-        assert_has_event::<T>(Event::<T>::IdtyConfirmed { idty_index: idty_index.unwrap(), owner_key: owner_key, name: IdtyName("new_identity".into()) }.into());
+        assert_has_event::<T>(Event::<T>::IdtyConfirmed { idty_index: idty_index.unwrap(), owner_key, name: IdtyName("new_identity".into()) }.into());
     }
 
     // change owner key
@@ -163,7 +163,7 @@ benchmarks! {
         };
         let message = (NEW_OWNER_KEY_PAYLOAD_PREFIX, new_key_payload).encode();
         let caller_public = sr25519_generate(0.into(), None);
-        let caller: T::AccountId = MultiSigner::Sr25519(caller_public.clone()).into_account().into();
+        let caller: T::AccountId = MultiSigner::Sr25519(caller_public).into_account().into();
         let signature = sr25519_sign(0.into(), &caller_public, &message).unwrap().into();
         Pallet::<T>::change_owner_key(account.origin.clone(), caller.clone(), signature)?;
 
@@ -178,7 +178,7 @@ benchmarks! {
         };
         let message = (NEW_OWNER_KEY_PAYLOAD_PREFIX, new_key_payload).encode();
         let caller_public = sr25519_generate(0.into(), None);
-        let caller: T::AccountId = MultiSigner::Sr25519(caller_public.clone()).into_account().into();
+        let caller: T::AccountId = MultiSigner::Sr25519(caller_public).into_account().into();
         let signature = sr25519_sign(0.into(), &caller_public, &message).unwrap().into();
         <frame_system::Pallet<T>>::set_block_number(<frame_system::Pallet<T>>::block_number() + T::ChangeOwnerKeyPeriod::get());
     }: _<T::RuntimeOrigin>(caller_origin.clone(), caller.clone(), signature)
@@ -202,18 +202,18 @@ benchmarks! {
         };
         let message = (NEW_OWNER_KEY_PAYLOAD_PREFIX, new_key_payload).encode();
         let caller_public = sr25519_generate(0.into(), None);
-        let caller: T::AccountId = MultiSigner::Sr25519(caller_public.clone()).into_account().into();
+        let caller: T::AccountId = MultiSigner::Sr25519(caller_public).into_account().into();
         let signature = sr25519_sign(0.into(), &caller_public, &message).unwrap().into();
         Pallet::<T>::change_owner_key(account.origin.clone(), caller.clone(), signature)?;
 
         let genesis_hash = frame_system::Pallet::<T>::block_hash(T::BlockNumber::zero());
         let revocation_payload = RevocationPayload {
             genesis_hash: &genesis_hash,
-            idty_index: account.index.clone(),
+            idty_index: account.index,
         };
         let message = (REVOCATION_PAYLOAD_PREFIX, revocation_payload).encode();
         let signature = sr25519_sign(0.into(), &caller_public, &message).unwrap().into();
-    }: _<T::RuntimeOrigin>(account.origin.clone(), account.index.clone().into(), caller.clone(), signature)
+    }: _<T::RuntimeOrigin>(account.origin, account.index, caller.clone(), signature)
     verify {
         assert_has_event::<T>(Event::<T>::IdtyRevoked { idty_index: account.index, reason: RevocationReason::User }.into());
         // revocation does not mean deletion anymore
diff --git a/pallets/membership/src/benchmarking.rs b/pallets/membership/src/benchmarking.rs
index 48849bd51e2adee83a09740d3ed6143478cfdd9d..531bd3e13f8b4815a4df65d12f4be83864d3cee4 100644
--- a/pallets/membership/src/benchmarking.rs
+++ b/pallets/membership/src/benchmarking.rs
@@ -42,7 +42,7 @@ benchmarks_instance_pallet! {
     claim_membership {
         let idty: T::IdtyId = 3.into();
         Membership::<T, I>::take(idty);
-        let caller: T::AccountId = T::AccountIdOf::convert(idty.clone()).unwrap();
+        let caller: T::AccountId = T::AccountIdOf::convert(idty).unwrap();
         let caller_origin: <T as frame_system::Config>::RuntimeOrigin = RawOrigin::Signed(caller.clone()).into();
         T::BenchmarkSetupHandler::force_status_ok(&idty, &caller);
     }: _<T::RuntimeOrigin>(caller_origin)
@@ -53,7 +53,7 @@ benchmarks_instance_pallet! {
     // renew membership
     renew_membership {
         let idty: T::IdtyId = 3.into();
-        let caller: T::AccountId = T::AccountIdOf::convert(idty.clone()).unwrap();
+        let caller: T::AccountId = T::AccountIdOf::convert(idty).unwrap();
         let caller_origin: <T as frame_system::Config>::RuntimeOrigin = RawOrigin::Signed(caller.clone()).into();
         T::BenchmarkSetupHandler::force_status_ok(&idty, &caller);
     }: _<T::RuntimeOrigin>(caller_origin)
@@ -64,7 +64,7 @@ benchmarks_instance_pallet! {
     // revoke membership
     revoke_membership {
         let idty: T::IdtyId = 3.into();
-        let caller: T::AccountId = T::AccountIdOf::convert(idty.clone()).unwrap();
+        let caller: T::AccountId = T::AccountIdOf::convert(idty).unwrap();
         let caller_origin: <T as frame_system::Config>::RuntimeOrigin = RawOrigin::Signed(caller.clone()).into();
     }: _<T::RuntimeOrigin>(caller_origin)
     verify {
@@ -87,7 +87,7 @@ benchmarks_instance_pallet! {
         assert_eq!(MembershipsExpireOn::<T, I>::get(BlockNumberFor::<T>::zero()).len(), i as usize);
     }: {Pallet::<T, I>::expire_memberships(BlockNumberFor::<T>::zero());}
     verify {
-        assert_eq!(MembershipsExpireOn::<T, I>::get(BlockNumberFor::<T>::zero()).len(), 0 as usize);
+        assert_eq!(MembershipsExpireOn::<T, I>::get(BlockNumberFor::<T>::zero()).len(), 0_usize);
     }
 
     impl_benchmark_test_suite!(
diff --git a/pallets/membership/src/lib.rs b/pallets/membership/src/lib.rs
index 4f44e11dce4bdee1559422732cf30d2309c47f37..284a03244170fa20dc4029b9b1112d843aceca89 100644
--- a/pallets/membership/src/lib.rs
+++ b/pallets/membership/src/lib.rs
@@ -44,14 +44,14 @@ use std::collections::BTreeMap;
 
 #[cfg(feature = "runtime-benchmarks")]
 pub trait SetupBenchmark<IdtyId, AccountId> {
-    fn force_status_ok(idty_index: &IdtyId, account: &AccountId) -> ();
-    fn add_cert(_issuer: &IdtyId, _receiver: &IdtyId) -> ();
+    fn force_status_ok(idty_index: &IdtyId, account: &AccountId);
+    fn add_cert(_issuer: &IdtyId, _receiver: &IdtyId);
 }
 
 #[cfg(feature = "runtime-benchmarks")]
 impl<IdtyId, AccountId> SetupBenchmark<IdtyId, AccountId> for () {
-    fn force_status_ok(_idty_id: &IdtyId, _account: &AccountId) -> () {}
-    fn add_cert(_issuer: &IdtyId, _receiver: &IdtyId) -> () {}
+    fn force_status_ok(_idty_id: &IdtyId, _account: &AccountId) {}
+    fn add_cert(_issuer: &IdtyId, _receiver: &IdtyId) {}
 }
 
 #[derive(Encode, Decode, Clone, PartialEq, Eq, RuntimeDebug, TypeInfo)]
diff --git a/pallets/provide-randomness/src/benchmarking.rs b/pallets/provide-randomness/src/benchmarking.rs
index 4562461eef743de897ebec43ee2dcd682b2ec2cf..cbbf0f685865f8549c85e87573ea2fbcb528a984 100644
--- a/pallets/provide-randomness/src/benchmarking.rs
+++ b/pallets/provide-randomness/src/benchmarking.rs
@@ -80,11 +80,11 @@ benchmarks! {
         // Set randomness parameters
         let random = RandomnessType::RandomnessFromOneEpochAgo;
         let salt: H256 = H256([1; 32]);
-    }: _<T::RuntimeOrigin>(caller_origin.clone(), random, salt.clone())
+    }: _<T::RuntimeOrigin>(caller_origin.clone(), random, salt)
     verify {
         let request_id = RequestIdProvider::<T>::get() - 1;
         assert_has_event::<T>(Event::RequestedRandomness {
-              request_id: request_id, salt: salt, r#type: random }.into() );
+              request_id, salt, r#type: random }.into() );
     }
     on_initialize {
         let i in 1 .. T::MaxRequests::get() => add_requests_next_block::<T>(i)?;
@@ -97,11 +97,11 @@ benchmarks! {
     }: { Pallet::<T>::on_initialize(T::BlockNumber::one()); }
     verify {
         ensure!(RequestsIds::<T>::count() == 0, "List not processed.");
-        ensure!(RequestsReadyAtNextBlock::<T>::get().len() == 0, "List not processed.");
+        ensure!(RequestsReadyAtNextBlock::<T>::get().is_empty(), "List not processed.");
     }
     on_initialize_epoch {
         let i in 1 .. T::MaxRequests::get() => add_requests_next_epoch::<T>(i)?;
-        ensure!(RequestsReadyAtNextBlock::<T>::get().len() == 0, "List not filled properly.");
+        ensure!(RequestsReadyAtNextBlock::<T>::get().is_empty(), "List not filled properly.");
         ensure!(RequestsIds::<T>::count() == i, "List not filled properly.");
         ensure!(RequestsReadyAtEpoch::<T>::get(T::GetCurrentEpochIndex::get()).len() == i as usize, "List not filled properly.");
         let next_epoch_hook_in = NexEpochHookIn::<T>::mutate(|next_in| {
@@ -110,6 +110,6 @@ benchmarks! {
     }: { Pallet::<T>::on_initialize(1.into()); }
     verify {
         ensure!(RequestsIds::<T>::count() == 0, "List not processed.");
-        ensure!(RequestsReadyAtEpoch::<T>::get(T::GetCurrentEpochIndex::get()).len() == 0, "List not processed properly.");
+        ensure!(RequestsReadyAtEpoch::<T>::get(T::GetCurrentEpochIndex::get()).is_empty(), "List not processed properly.");
     }
 }
diff --git a/pallets/quota/src/benchmarking.rs b/pallets/quota/src/benchmarking.rs
index 4519eea02f754bef4fff507b183148cc825ecb20..124f2e66f9bfc34147409789aa7207703bfa2051 100644
--- a/pallets/quota/src/benchmarking.rs
+++ b/pallets/quota/src/benchmarking.rs
@@ -63,7 +63,7 @@ benchmarks! {
                 amount: quota_amount.into(),
             },
         );
-    }: { Pallet::<T>::spend_quota(idty_id.into(), amount.into()) }
+    }: { Pallet::<T>::spend_quota(idty_id, amount.into()) }
     verify {
         let quota_growth = sp_runtime::Perbill::from_rational(
             T::BlockNumber::one(),