refactor supaya arsitekturnya rapi