code restructurization