diff --git a/argument.hpp b/argument.hpp
index bd3b0b2..849ccb5 100644
--- a/argument.hpp
+++ b/argument.hpp
@@ -1,27 +1,28 @@
 #ifndef __ARGUMENT_H
 #define __ARGUMENT_H
 #include <getopt.h>
+
 #include <map>
 #include <string>
 class ArgumentParser
 {
-    public:
-        ArgumentParser(int argc, char** argv);
-        const std::string& operator[](const std::string& opt);
+  public:
+    ArgumentParser(int argc, char** argv);
+    const std::string& operator[](const std::string& opt);
 
-        static void usage(char** argv);
+    static void usage(char** argv);
 
-        static const std::string true_string;
-        static const std::string empty_string;
+    static const std::string true_string;
+    static const std::string empty_string;
 
-    private:
-        std::map<const std::string, std::string> arguments;
+  private:
+    std::map<const std::string, std::string> arguments;
 
-        static const option options[];
-        static const char* optionstr;
+    static const option options[];
+    static const char* optionstr;
 
-    private:
-        ArgumentParser() {};
+  private:
+    ArgumentParser(){};
 };
 
 #endif
