Ham and bean soup can be a little bland and requires a lot of salt to be palatable, but not so with this version. It is bursting with flavor.
Place the beans into a large container and cover with several inches of cool water; let stand 8 hours to overnight. Drain and rinse before using.
Combine the soaked beans, 4 cups of water, celery, onion, bay leaves, cumin, garlic powder, and parsley into a slow cooker.
Melt the butter with the olive oil in a skillet over medium heat; cook and stir the leeks in the butter mixture until tender and the smaller pieces start to brown, 8 to 10 minutes. Transfer the leeks to the slow cooker. In the same pan, cook and stir the ham until the edges start to brown; stir into the soup. Place the bacon into the hot skillet, and pan-fry until the bacon is crisp, about 10 minutes. Cut the bacon into bite-size pieces and stir into the soup. Pour the chicken stock into the hot skillet, and stir to dissolve any brown flavor bits from the skillet; pour the chicken stock into the soup. Season with sea salt and pepper.
Set the cooker to Low cook the soup until the beans are very tender, 6 to 8 hours. Roughly mash about half the beans with a potato masher to thicken the soup.
Per Serving: 459 calories; protein 25.5g; carbohydrates 39.9g; fat 22.3g; cholesterol 47.5mg; sodium 944.6mg.