Generating Hard And Realistic Boolean (Un)Satisfiability Problems.