#include <string>
#include <unordered_set>
#include "stopwords/german_stopwords.h"

using namespace std;


namespace texty { namespace stopwords {

const unordered_set<string> stopwordSet {
  "aber",
  "alle",
  "allem",
  "allen",
  "aller",
  "alles",
  "als",
  "also",
  "am",
  "an",
  "ander",
  "andere",
  "anderem",
  "anderen",
  "anderer",
  "anderes",
  "anderm",
  "andern",
  "anderr",
  "anders",
  "auch",
  "auf",
  "aus",
  "bei",
  "bin",
  "bis",
  "bist",
  "da",
  "damit",
  "dann",
  "der",
  "den",
  "des",
  "dem",
  "die",
  "das",
  "da\u00df",
  "derselbe",
  "derselben",
  "denselben",
  "desselben",
  "demselben",
  "dieselbe",
  "dieselben",
  "dasselbe",
  "dazu",
  "dein",
  "deine",
  "deinem",
  "deinen",
  "deiner",
  "deines",
  "denn",
  "derer",
  "dessen",
  "dich",
  "dir",
  "du",
  "dies",
  "diese",
  "diesem",
  "diesen",
  "dieser",
  "dieses",
  "doch",
  "dort",
  "durch",
  "ein",
  "eine",
  "einem",
  "einen",
  "einer",
  "eines",
  "einig",
  "einige",
  "einigem",
  "einigen",
  "einiger",
  "einiges",
  "einmal",
  "er",
  "ihn",
  "ihm",
  "es",
  "etwas",
  "euer",
  "eure",
  "eurem",
  "euren",
  "eurer",
  "eures",
  "f\u00fcr",
  "gegen",
  "gewesen",
  "hab",
  "habe",
  "haben",
  "hat",
  "hatte",
  "hatten",
  "hier",
  "hin",
  "hinter",
  "ich",
  "mich",
  "mir",
  "ihr",
  "ihre",
  "ihrem",
  "ihren",
  "ihrer",
  "ihres",
  "euch",
  "im",
  "in",
  "indem",
  "ins",
  "ist",
  "jede",
  "jedem",
  "jeden",
  "jeder",
  "jedes",
  "jene",
  "jenem",
  "jenen",
  "jener",
  "jenes",
  "jetzt",
  "kann",
  "kein",
  "keine",
  "keinem",
  "keinen",
  "keiner",
  "keines",
  "k\u00f6nnen",
  "k\u00f6nnte",
  "machen",
  "man",
  "manche",
  "manchem",
  "manchen",
  "mancher",
  "manches",
  "mein",
  "meine",
  "meinem",
  "meinen",
  "meiner",
  "meines",
  "mit",
  "muss",
  "musste",
  "nach",
  "nicht",
  "nichts",
  "noch",
  "nun",
  "nur",
  "ob",
  "oder",
  "ohne",
  "sehr",
  "sein",
  "seine",
  "seinem",
  "seinen",
  "seiner",
  "seines",
  "selbst",
  "sich",
  "sie",
  "ihnen",
  "sind",
  "so",
  "solche",
  "solchem",
  "solchen",
  "solcher",
  "solches",
  "soll",
  "sollte",
  "sondern",
  "sonst",
  "\u00fcber",
  "um",
  "und",
  "uns",
  "unse",
  "unsem",
  "unsen",
  "unser",
  "unses",
  "unter",
  "viel",
  "vom",
  "von",
  "vor",
  "w\u00e4hrend",
  "war",
  "waren",
  "warst",
  "was",
  "weg",
  "weil",
  "weiter",
  "welche",
  "welchem",
  "welchen",
  "welcher",
  "welches",
  "wenn",
  "werde",
  "werden",
  "wie",
  "wieder",
  "will",
  "wir",
  "wird",
  "wirst",
  "wo",
  "wollen",
  "wollte",
  "w\u00fcrde",
  "w\u00fcrden",
  "zu",
  "zum",
  "zur",
  "zwar",
  "zwischen"
};

bool isGermanStopword(const string &word) {
  return stopwordSet.count(word) > 0;
}


}} // texty::stopwords
