add method into factory, call them in program and write plans for update methods