diff --git a/examples/rtic_bare4.rs b/examples/rtic_bare4.rs
index 6b4284b613942ff9c8274b09e4444bb2fabb01cd..9f7f176fef8e7a9d0df1fb5173d79eb1f5dfebfb 100644
--- a/examples/rtic_bare4.rs
+++ b/examples/rtic_bare4.rs
@@ -35,8 +35,8 @@ use address::*;
 
 #[inline(always)]
 fn read_u32(addr: u32) -> u32 {
-    unsafe { core::ptr::read_volatile(addr as *const _) }
-    // core::ptr::read_volatile(addr as *const _)
+    //unsafe { core::ptr::read_volatile(addr as *const _) }
+    core::ptr::read_volatile(addr as *const _);
 }
 
 #[inline(always)]
@@ -100,12 +100,13 @@ const APP: () = {
 //
 //    What was the error message and explain why.
 //
-//    ** your answer here **
+//    This operation is unsafe and requires an unsafe function or block.
+//      The function read_volatile is declared to be unsafe.
 //
 //    Digging a bit deeper, why do you think `read_volatile` is declared `unsafe`.
 //    (https://doc.rust-lang.org/core/ptr/fn.read_volatile.html, for some food for thought )
 //
-//    ** your answer here **
+//    It is unsafe because it can't guarantee the value is the expected value.
 //
 //    Commit your answers (bare4_2)
 //