Question regarding partfrac



Hi,

I want to make a partial fraction expansion of an expression in which 
the denominator is a higher order
polynomial which can be factorized using allroots.

(%i1) z:1/ev(allroots((x**3+2*x**2+3*x+1)),polyfactor=true);

(%o1) 
1.0/((x+0.43015970900195)*(x^2+1.569840290998053*x+2.324717957244746))

partfrac obviously rationalizes the floating point numbers, subsequent 
application of float produces unhandy
(very large or very small) numbers (setting keepfloat to true results 
in an  an error message).

(%i2) float(partfrac(z1,x));

(%o2) 
6177.795101294362/(11333.0*x+4875.0)-(5.2796308514673369*10^-16*(8.3000427432133274*10^21*x+9.4593976660316326*10^21))/(8038875.0*x^2+1.261975*10^7*x+1.8688117*10^7)

Is there a SIMPLE way (e.g. a built in function) to divide numerators 
and denominators by their leading
coefficients of the denominator polynomials each, in order to get 
handy numbers
(i.e. 11333.0 and 8038875.0 respectively)?

Thanks in advance
Wilhelm