Sampling configurations from software product lines via probability-aware diversification and SAT solving