Updated by new author.