Changed some of the key parts.