The mechanism of the Bouveault-Blanc reduction