<commit_before>#if !defined PROGRAM_HPP
#define PROGRAM_HPP

#include <string>
#include <utility>
#include <vector>

class Program
{
public:

    // Argument parsing and program initialization happens here
    Program(int argc, char** argv);

    // Nothing to do on shutdown here
    virtual ~Program();

    virtual int run() = 0;

    // Returns a copy of the program name
    void getName(std::string& name) const;

    // Returns a copy of the program arguments
    void getArguments(std::vector<std::string>& arguments) const;

protected:

    // String used to launch this program at the command line
    std::string program_name;

    // Arguments given to the program at runtime
    std::vector<std::string> program_arguments;
};


#endif<commit_msg>Spurious newline<commit_after>#if !defined PROGRAM_HPP
#define PROGRAM_HPP

#include <string>
#include <utility>
#include <vector>

class Program
{
public:

    // Argument parsing and program initialization happens here
    Program(int argc, char** argv);

    // Nothing to do on shutdown here
    virtual ~Program();

    virtual int run() = 0;

    // Returns a copy of the program name
    void getName(std::string& name) const;

    // Returns a copy of the program arguments
    void getArguments(std::vector<std::string>& arguments) const;

protected:

    // String used to launch this program at the command line
    std::string program_name;

    // Arguments given to the program at runtime
    std::vector<std::string> program_arguments;
};

#endif
{'fraction_non_alphanumeric': 0.09605263157894736, 'fraction_numerical': 0.0013157894736842105, 'mean_word_length': 3.5675675675675675, 'pattern_counts': {'":': 0, '<': 13, '<?xml version=': 0, '>': 13, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5467407', 'n_tokens_mistral': 445, 'n_tokens_neox': 415, 'n_words': 164}