#include <set>
#include <algorithm>
#include <iostream>
#include "../dist/task.hpp"
#include "semigroup.hpp"

using namespace std;
struct GTaskInput{
  Semigroup S;
};

struct GTaskOutput{
  size_t ng[MAX_GENUS+1];
};

Task* generate_gtask();
bool treat(Task& t);


