German Chocolate Sheet Cake

German Chocolate Sheet Cake Recipe
Grease a sheet pan and preheat the oven to 400 degrees Fahrenheit.
Combine the flour, sugar, and cocoa powder in a large basin.
Add the water, butter, shortening, and chocolate to a small saucepan. Heat to a boil on a medium setting. Add the mixture to the dry ingredients and whisk until smooth and well blended.
Add the eggs, baking soda, buttermilk, salt, and vanilla, stirring in between each addition.
Pour batter onto the sheet pan that has been ready, and bake for 20 to 22 minutes. Before icing, let cool.
Place the butter, sugars, egg yolks, and milk in a medium-sized pot and heat. After bringing the mixture to a boil, reduce the heat to a simmer. Cook, stirring regularly, for another 10 to 12 minutes, or until mixture thickens. Take off the heat.
Add vanilla, pecans, and coconut and stir.
Spread the icing over the cake after letting it cool somewhat.
After 1 to 2 hours of chilling, serve.