diff --git a/src/isolator/hei_isolation_chip.hpp b/src/isolator/hei_isolation_chip.hpp
index 7ba7346..7f13b47 100644
--- a/src/isolator/hei_isolation_chip.hpp
+++ b/src/isolator/hei_isolation_chip.hpp
@@ -31,7 +31,7 @@
 class IsolationChip
 {
   public: // Aliases
-    using Ptr      = std::shared_ptr<IsolationChip>;
+    using Ptr = std::shared_ptr<IsolationChip>;
     using ConstPtr = std::shared_ptr<const IsolationChip>;
 
     using Map = std::map<ChipType_t, const ConstPtr>;
diff --git a/src/isolator/hei_isolation_node.cpp b/src/isolator/hei_isolation_node.cpp
index 119c5ae..78c5b65 100644
--- a/src/isolator/hei_isolation_node.cpp
+++ b/src/isolator/hei_isolation_node.cpp
@@ -51,8 +51,8 @@
             {
                 // This bit was driven from an attention from another register.
                 // Continue down the isolation tree to look for more attentions.
-                bool attnFound =
-                    child_itr->second->analyze(i_chip, i_attnType, io_isoData);
+                bool attnFound = child_itr->second->analyze(i_chip, i_attnType,
+                                                            io_isoData);
                 if (!attnFound)
                 {
                     // It is possible the child node is only intended for FFDC.
@@ -152,8 +152,8 @@
 void IsolationNode::pushIsolationStack() const
 {
     // Ensure this node does not already exist in cv_isolationStack.
-    auto itr =
-        std::find(cv_isolationStack.begin(), cv_isolationStack.end(), this);
+    auto itr = std::find(cv_isolationStack.begin(), cv_isolationStack.end(),
+                         this);
     HEI_ASSERT(cv_isolationStack.end() == itr);
 
     // Push to node to the stack.
diff --git a/src/isolator/hei_isolation_node.hpp b/src/isolator/hei_isolation_node.hpp
index 858a8c1..d88ad02 100644
--- a/src/isolator/hei_isolation_node.hpp
+++ b/src/isolator/hei_isolation_node.hpp
@@ -40,7 +40,7 @@
 class IsolationNode
 {
   public: // Aliases
-    using Ptr      = std::shared_ptr<IsolationNode>;
+    using Ptr = std::shared_ptr<IsolationNode>;
     using ConstPtr = std::shared_ptr<const IsolationNode>;
 
     using Key = std::pair<NodeId_t, Instance_t>;
