diff --git a/include/cpu.hpp b/include/cpu.hpp
index 20ff0cf..2cdc161 100644
--- a/include/cpu.hpp
+++ b/include/cpu.hpp
@@ -289,22 +289,23 @@
 
 // Definition follow smbios spec DSP0134 3.0.0
 static const std::array<std::optional<processor::Capability>, 16>
-    characteristicsTable{std::nullopt,
-                         std::nullopt,
-                         processor::Capability::Capable64bit,
-                         processor::Capability::MultiCore,
-                         processor::Capability::HardwareThread,
-                         processor::Capability::ExecuteProtection,
-                         processor::Capability::EnhancedVirtualization,
-                         processor::Capability::PowerPerformanceControl,
-                         std::nullopt,
-                         std::nullopt,
-                         std::nullopt,
-                         std::nullopt,
-                         std::nullopt,
-                         std::nullopt,
-                         std::nullopt,
-                         std::nullopt};
+    characteristicsTable{
+        std::nullopt,
+        std::nullopt,
+        processor::Capability::Capable64bit,
+        processor::Capability::MultiCore,
+        processor::Capability::HardwareThread,
+        processor::Capability::ExecuteProtection,
+        processor::Capability::EnhancedVirtualization,
+        processor::Capability::PowerPerformanceControl,
+        std::nullopt,
+        std::nullopt,
+        std::nullopt,
+        std::nullopt,
+        std::nullopt,
+        std::nullopt,
+        std::nullopt,
+        std::nullopt};
 
 class Cpu :
     sdbusplus::server::object_t<processor, asset, location, connector, rev,
