refactor runtime props