extract add method