1. Boil 6 cups of water, 2 teaspoons and 1 tablespoon of vinegar (any works). Drop eggs into water carefully, boil on high for 6 minutes, quickly remove from water and shock with ice for 5-10 minutes, peel & reserve.
2. In a heavy-bottomed saucepan, melt the butter over medium-low heat.
3. Then stir in the flour to form a roux. Cook for 2 to 3 minutes, stirring frequently until most of the water has cooked out (it will bubble less), which also allows the raw flour taste to cook off.
4. Slowly add 2 1/2 cups of the warm milk while whisking or stirring constantly so that the liquid is incorporated into the roux without forming lumps.
5. Stick 2 of the hoja santa leaves in with the onion to the sauce along with the bay (or avocado leaf). Simmer for about 10 minutes, or until it's reduced by about 20 percent.
6. Remove the hoja santa, bay leaf and the onion and strain the sauce through a fine mesh strainer or a colander lined with cheesecloth. Make sure you retrieve all of the cloves.
7. Return the sauce to the pan. Add the Gruyère and Parmesan cheeses and stir until the cheese has melted.
8. Remove from heat, stir in the remaining 1 tablespoon butter, and adjust the consistency with some or all of the remaining 1/2 cup milk if necessary. Serve right away with pasta, chicken, or fish. Enjoy!
9. If you are making your sope cups, press a 4 oz. portion of masa until it’s ½ inch thick, heat on a dry griddle over medium heat. Once cooked to a slight brown color, remove from pan and pinch the wall around the sope.
10. In a shallow sauté pan with vegetable oil, quickly fry the sope. Fill with seasoned beans, soft egg and top with sauce. Garnish with shaved parmesan. Enjoy!