sample code init complete
after refactor