diff --git a/src/ast_commands.hpp b/src/ast_commands.hpp
index 9c56d4f..4235af5 100644
--- a/src/ast_commands.hpp
+++ b/src/ast_commands.hpp
@@ -142,7 +142,7 @@
         /> get
         /> get /module:path)";
     bool operator==(const get_& b) const;
-    boost::optional<boost::variant<dataPath_, schemaPath_, module_>> m_path;
+    boost::optional<boost::variant<dataPath_, module_>> m_path;
 };
 
 struct describe_ : x3::position_tagged {
diff --git a/src/interpreter.cpp b/src/interpreter.cpp
index 80e7a7a..cfd0a5d 100644
--- a/src/interpreter.cpp
+++ b/src/interpreter.cpp
@@ -47,10 +47,10 @@
         if (value.type() == typeid(special_) && boost::get<special_>(value).m_value == SpecialValue::LeafList) {
             auto leafListPrefix = path;
             std::cout << path << " = " << leafDataToString(value) << std::endl;
-            ++it;
-            while (boost::starts_with(it->first, leafListPrefix)) {
-                std::cout << stripLeafListValueFromPath(it->first) << " = " << leafDataToString(it->second) << std::endl;
+
+            while (it + 1 != items.end() && boost::starts_with((it + 1) ->first, leafListPrefix)) {
                 ++it;
+                std::cout << stripLeafListValueFromPath(it->first) << " = " << leafDataToString(it->second) << std::endl;
             }
         } else {
             std::cout << path << " = " << leafDataToString(value) << std::endl;
