refactor settings populate