make sure collections are pre-allocated