11     for (
int i = 0; i < 10000; ++i) {
    13         element[0] = 
static_cast<unsigned char>(i);
    14         element[1] = 
static_cast<unsigned char>(i >> 8);
    15         elements.insert(std::move(element));
    18     uint64_t siphash_k0 = 0;
    29     for (
int i = 0; i < 10000; ++i) {
    31         element[0] = 
static_cast<unsigned char>(i);
    32         element[1] = 
static_cast<unsigned char>(i >> 8);
    33         elements.insert(std::move(element));
 
This implements a Golomb-coded set as defined in BIP 158. 
 
std::vector< unsigned char > Element
 
BENCHMARK(ConstructGCSFilter, 1000)
 
std::set< Element > ElementSet