#include <cassert>
#include <functional> /* std::mem_fn */
#include <functional> /* std::function */