Magnesium perchlorate as efficient Lewis acid for the Knoevenagel condensation between β-diketones and aldehydes