I hadn't realized the requirement was for sparse bitsets specifically. I'd be curious to know if you'd get some better performance if you put in some `cache` in that chain? I'd also be curious to see if a hand written implementation would make a big difference. Just to know.