template <size_t Width_, size_t Boxes_>
struct hashLookup {
static const size_t table[Boxes_+2];
};
template <size_t Width_> const size_t hashLookup<Width_, 0>::table[ 2] = {0xdeadbeef,~1};
template <size_t Width_> const size_t hashLookup<Width_, 1>::table[ 3] = {~0xdead,0xbeef,1};
dGVtcGxhdGUgPHNpemVfdCBXaWR0aF8sIHNpemVfdCBCb3hlc18+CnN0cnVjdCBoYXNoTG9va3VwIHsKICAgIHN0YXRpYyBjb25zdCBzaXplX3QgdGFibGVbQm94ZXNfKzJdOwp9OwoKdGVtcGxhdGUgPHNpemVfdCBXaWR0aF8+IGNvbnN0IHNpemVfdCBoYXNoTG9va3VwPFdpZHRoXywgMD46OnRhYmxlWyAyXSA9IHsweGRlYWRiZWVmLH4xfTsKdGVtcGxhdGUgPHNpemVfdCBXaWR0aF8+IGNvbnN0IHNpemVfdCBoYXNoTG9va3VwPFdpZHRoXywgMT46OnRhYmxlWyAzXSA9IHt+MHhkZWFkLDB4YmVlZiwxfTsK