1.Cut bread into 1-inch cubes and scatter evenly in a greased 8-x-8 inch baking dish.
2.In a medium bowl, mix eggs, milk, heavy cream, vanilla, and sugar together, then pour evenly over the bread.
3.Cover the dish with plastic wrap and refrigerate for at least 4 hours, or overnight.
4.To make the topping, mix flour, brown sugar, cinnamon, and salt in a medium bowl. Cut butter into this mixture until crumbly. Place the topping in a small resealable plastic bag and refrigerate overnight as well.
5.When ready to bake, preheat the oven to 350°F. Unwrap the baking dish and sprinkle the topping evenly over the bread.
6.Bake, uncovered, for 45–60 minutes, depending on how soft you like it.