Scale refactoring complete for now - inefficient, but works