Refactored Add.