For the filling:
3 pounds sweet potatoes
1 teaspoon salt
¼ cup heavy cream
½ cup brown sugar
½ teaspoon garlic powder
½ teaspoon onion powder
½ teaspoon cinnamon
¼ teaspoon ground clove
1 teaspoon lemon zest
¼ cup unsalted butter, soften to room temperature
2 eggs, beaten
For the streusel topping:
1½ tablespoon unsalted butter, cold, cut into ½ inch cubes
¼ cup brown sugar
2 tablespoons all purpose flour
Final ingredients:
½ cup walnuts, roughly chopped
1½ cups mini marshmallows
Preheat oven to 350°F. Butter/grease a casserole dish.
Poke the sweet potatoes with a fork before baking them.
Bake sweet potatoes for 60-90 minutes or until fork tender. Let them cool down enough to handle but they should not be cold.
For the filling: Using a spoon, scoop out flesh of sweet potatoes into a large bowl. With a potato masher, mash the sweet potato flesh until smooth (a bit chunky is ok). Mix in salt, sugar, garlic powder, onion powder, cinnamon, ground clove, lemon zest, cream and soft butter. Stir in eggs but only once the mixture reaches below 140°F.
For the streusel topping: in a bowl, using a fork or pastry cutter, break up the butter and combine the brown sugar, flour and cold butter.
Add the sweet potato mixture into the greased baking dish. Top with the streusel topping and the walnuts. Bake for 30 minutes or until the top is golden brown and starts to bubble.
Arrange the mini marshmallows in a single layer over top. Bake for 5 more minutes or until the marshmallows puff up and turn golden brown. Serve immediately.