refact structures of project