Principles and Practice of Constraint Programming - Helmut Simonis (Springer, 2020)