refactoring of scale interface and related changes