<commit_before>#ifndef BASELINE_APP_APP_H
#define BASELINE_APP_APP_H

// clang-format off
#include "glad/glad.h"
#include "GLFW/glfw3.h"
// clang-format on
#include "draw/context.h"
#include "search_paths.h"
#include <array>
#include <iostream>

namespace baseline {
namespace app {
class App {
private:
  App(GLFWwindow *window) : window_(window, glfwDestroyWindow) {}

  template <class Kernel> static Kernel *Get(GLFWwindow *window) {
    return static_cast<Kernel *>(glfwGetWindowUserPointer(window));
  }

public:
  template <class F><commit_msg>add required header<commit_after>#ifndef BASELINE_APP_APP_H
#define BASELINE_APP_APP_H

// clang-format off
#include "glad/glad.h"
#include "GLFW/glfw3.h"
// clang-format on
#include "draw/context.h"
#include "search_paths.h"
#include <array>
#include <iostream>
#include <memory>

namespace baseline {
namespace app {
class App {
private:
  App(GLFWwindow *window) : window_(window, glfwDestroyWindow) {}

  template <class Kernel> static Kernel *Get(GLFWwindow *window) {
    return static_cast<Kernel *>(glfwGetWindowUserPointer(window));
  }

public:
  template <class F>
{'fraction_non_alphanumeric': 0.12344582593250444, 'fraction_numerical': 0.0017761989342806395, 'mean_word_length': 5.668639053254438, 'pattern_counts': {'":': 0, '<': 14, '<?xml version=': 0, '>': 14, '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': '2083874', 'n_tokens_mistral': 400, 'n_tokens_neox': 397, 'n_words': 93}