Mexicans wearing period costumes re-enact the battle of Puebla, in Mexico City May 5, 2012. [Photo/Agencies]