diff --git a/selutility.cpp b/selutility.cpp
index 97c2b2b..0d71a47 100644
--- a/selutility.cpp
+++ b/selutility.cpp
@@ -58,8 +58,7 @@
         elog<InternalFailure>();
     }
 
-    record.recordID = static_cast<uint16_t>(
-        sdbusplus::message::variant_ns::get<uint32_t>(iterId->second));
+    record.recordID = static_cast<uint16_t>(std::get<uint32_t>(iterId->second));
 
     // Read Timestamp from the log entry.
     static constexpr auto propTimeStamp = "Timestamp";
@@ -71,7 +70,7 @@
     }
 
     std::chrono::milliseconds chronoTimeStamp(
-        sdbusplus::message::variant_ns::get<uint64_t>(iterTimeStamp->second));
+        std::get<uint64_t>(iterTimeStamp->second));
     record.timeStamp = static_cast<uint32_t>(
         std::chrono::duration_cast<std::chrono::seconds>(chronoTimeStamp)
             .count());
@@ -100,7 +99,7 @@
     static constexpr auto deassertEvent = 0x80;
 
     // Evaluate if the event is assertion or deassertion event
-    if (sdbusplus::message::variant_ns::get<bool>(iterResolved->second))
+    if (std::get<bool>(iterResolved->second))
     {
         record.eventType = deassertEvent | iter->second.eventReadingType;
     }
@@ -142,7 +141,7 @@
     sdbusplus::message::variant<AssociationList> list;
     reply.read(list);
 
-    auto& assocs = sdbusplus::message::variant_ns::get<AssociationList>(list);
+    auto& assocs = std::get<AssociationList>(list);
 
     /*
      * Check if the log entry has any callout associations, if there is a
@@ -204,8 +203,7 @@
     sdbusplus::message::variant<uint64_t> timeStamp;
     reply.read(timeStamp);
 
-    std::chrono::milliseconds chronoTimeStamp(
-        sdbusplus::message::variant_ns::get<uint64_t>(timeStamp));
+    std::chrono::milliseconds chronoTimeStamp(std::get<uint64_t>(timeStamp));
 
     return std::chrono::duration_cast<std::chrono::seconds>(chronoTimeStamp);
 }
