complete generators refactor of Builder