I have a statement in a lisp routine that is supposed to scale items based on user input scale factors. The different scale factors are 1, 4, 8, 12, 16, 24, 32, 48 and 96. The statement works when scaling up (i.e. from 4 to 32, etc...). But when I try to scale down (i.e. 32 to 4, etc...) it still scales the objects up instead of down. Could someone look at this lisp to see what is wrong? Thanks, (defun c:scd ( / xfrom xto xinsert xdetail xretrieve sf) (setq xdetail (ssget)) (setq xfrom (getint " Current scale factor: ")) (setq xto (getint " New scale factor: ")) (if (> xfrom xto)(setq sf (/ xfrom xto))(setq sf (/ xto xfrom))) (setq xretrieve (getpoint " Scale from box : ")) (setq xinsert (getpoint " Scale to box : ")) (command "scale" xdetail "" xretrieve sf) (command "move" xdetail "" xretrieve xinsert) )