Consumer confidence at a three-year high