fromVector :: Vector FMPZ -> FMPZPoly
fromVector as = unsafePerformIO $
  withNewFMPZPoly_ $ \bptr -> do
  fmpz_poly_realloc bptr (fromIntegral $ V.length as)
  sequence_ $ flip V.imap as $ \ix a ->
     withFMPZ_ a $ \aptr ->
     fmpz_poly_set_coeff_fmpz bptr (fromIntegral ix) aptr 
fromVector :: Vector FMPZ -> FMPZPoly
fromVector as = unsafePerformIO $
  withNewFMPZPoly_ $ \bptr -> do
  fmpz_poly_realloc bptr (fromIntegral $ V.length as)
  sequence_ $ flip V.imap as $ \ix a ->
     withFMPZ_ a $ \aptr ->
     fmpz_poly_set_coeff_fmpz bptr (fromIntegral ix) aptr 
fromVector as = unsafePerformIO $
  withNewFMPZPoly_ $ \bptr -> do
  fmpz_poly_realloc bptr (fromIntegral $ V.length as)
  sequence_ $ flip V.imap as $ \ix a ->
     withFMPZ_ a $ \aptr ->
     fmpz_poly_set_coeff_fmpz bptr (fromIntegral ix) aptr 