1 5 [ dup 0 > ] [ [ * ] keep 1 - ] while drop