diff --git a/src/CParser.cpp b/src/CParser.cpp
index 75af7c0..618a721 100644
--- a/src/CParser.cpp
+++ b/src/CParser.cpp
@@ -1,3 +1,10 @@
+/*
+ * Copyright (C) 2018 CESNET, https://photonics.cesnet.cz/
+ * Copyright (C) 2018 FIT CVUT, https://fit.cvut.cz/
+ *
+ * Written by Václav Kubernát <kubervac@fit.cvut.cz>
+ *
+*/
 #include "CParser.hpp"
 
 TooManyArgumentsException::~TooManyArgumentsException() = default;
@@ -8,16 +15,19 @@
 }
 
 
-Cmd CParser::parseInput(const std::string& line)
+cd_ CParser::parseCommand(const std::string& line)
 {
-    Cmd args;
+    cd_ parsedCommand;
+    ParserContext ctx(m_tree);
     auto it = line.begin();
-    //bool result = x3::phrase_parse(it, line.end(), command, space, args);
-    //std::cout << "success: " << result << std::endl;
+
+    auto grammar = x3::with<parser_context_tag>(ctx)[cd];
+
+    x3::phrase_parse(it, line.end(), grammar, space, parsedCommand);
     if (it != line.end()) {
         throw TooManyArgumentsException(std::string(it, line.end()));
     }
 
 
-    return args;
+    return parsedCommand;
 }
