add scale function