settings added + another refactor