diff --git a/src/nlsr_conf_processor.hpp b/src/nlsr_conf_processor.hpp
index 5568010..c49e3c2 100644
--- a/src/nlsr_conf_processor.hpp
+++ b/src/nlsr_conf_processor.hpp
@@ -1,49 +1,52 @@
 #ifndef CONF_PROCESSOR_HPP
 #define CONF_PROCESSOR_HPP
 
-#include "nlsr.hpp" 
+#include "nlsr.hpp"
 
-namespace nlsr {
+namespace nlsr
+{
 
-using namespace std;
+    using namespace std;
 
-class ConfFileProcessor{
-	public:
-		ConfFileProcessor()
-			:confFileName()
-		{
-		}
-		ConfFileProcessor(const string& cfile){ 
-			confFileName=cfile;
-		}
+    class ConfFileProcessor
+    {
+    public:
+        ConfFileProcessor()
+            :confFileName()
+        {
+        }
+        ConfFileProcessor(const string& cfile)
+        {
+            confFileName=cfile;
+        }
 
-		int processConfFile(Nlsr& pnlsr);
-		int processConfCommand(Nlsr& pnlsr, string command);
-		int processConfCommandNetwork(Nlsr& pnlsr, string command);
-		int processConfCommandSiteName(Nlsr& pnlsr, string command);
-		int processConfCommandRouterName(Nlsr& pnlsr, string command);
-		int processConfCommandInterestRetryNumber(Nlsr& pnlsr, string command);
-		int processConfCommandInterestResendTime(Nlsr& pnlsr, string command);
-		int processConfCommandLsaRefreshTime(Nlsr& pnlsr, string command);
-		int processConfCommandMaxFacesPerPrefix(Nlsr& pnlsr, string command);
-		int processConfCommandTunnelType(Nlsr& pnlsr, string command);
+        int processConfFile(Nlsr& pnlsr);
+        int processConfCommand(Nlsr& pnlsr, string command);
+        int processConfCommandNetwork(Nlsr& pnlsr, string command);
+        int processConfCommandSiteName(Nlsr& pnlsr, string command);
+        int processConfCommandRouterName(Nlsr& pnlsr, string command);
+        int processConfCommandInterestRetryNumber(Nlsr& pnlsr, string command);
+        int processConfCommandInterestResendTime(Nlsr& pnlsr, string command);
+        int processConfCommandLsaRefreshTime(Nlsr& pnlsr, string command);
+        int processConfCommandMaxFacesPerPrefix(Nlsr& pnlsr, string command);
+        int processConfCommandTunnelType(Nlsr& pnlsr, string command);
 
-		int processConfCommandChronosyncSyncPrefix(Nlsr& pnlsr, string command);
-		int processConfCommandLogDir(Nlsr& pnlsr, string command);
-		int processConfCommandDebugging(Nlsr& pnlsr, string command);
-		int processConfCommandDetailedLogging(Nlsr& pnlsr, string command);
-		int processConfCommandIsHyperbolicCalc(Nlsr& pnlsr, string command);
+        int processConfCommandChronosyncSyncPrefix(Nlsr& pnlsr, string command);
+        int processConfCommandLogDir(Nlsr& pnlsr, string command);
+        int processConfCommandDebugging(Nlsr& pnlsr, string command);
+        int processConfCommandDetailedLogging(Nlsr& pnlsr, string command);
+        int processConfCommandIsHyperbolicCalc(Nlsr& pnlsr, string command);
 
-		int processConfCommandHyperbolicCordinate(Nlsr& pnlsr, string command);
+        int processConfCommandHyperbolicCordinate(Nlsr& pnlsr, string command);
 
-		int processConfCommandNdnNeighbor(Nlsr& pnlsr, string command);
-		int processConfCommandNdnName(Nlsr& pnlsr, string command);
-		int processConfCommandLinkCost(Nlsr& pnlsr, string command);
-		
+        int processConfCommandNdnNeighbor(Nlsr& pnlsr, string command);
+        int processConfCommandNdnName(Nlsr& pnlsr, string command);
+        int processConfCommandLinkCost(Nlsr& pnlsr, string command);
 
-	private:
-		string confFileName;
-};
+
+    private:
+        string confFileName;
+    };
 
 } //namespace nlsr
 #endif
