refactor. includes config file