refactoring: now load source state from base preference class