add constructor for no-sparse-set use case