Which country ruled Mexico for 300 years?