(!) :: FMPZPoly -> Int -> FMPZ
(!) a n = unsafePerformIO $
  withNewFMPZ_ $ \bptr ->
  withFMPZPoly a $ \aptr ->
    fmpz_poly_get_coeff_fmpz bptr aptr (fromIntegral n)
(!) :: FMPZPoly -> Int -> FMPZ
(!) a n = unsafePerformIO $
  withNewFMPZ_ $ \bptr ->
  withFMPZPoly a $ \aptr ->
    fmpz_poly_get_coeff_fmpz bptr aptr (fromIntegral n)
(!) a n = unsafePerformIO $
  withNewFMPZ_ $ \bptr ->
  withFMPZPoly a $ \aptr ->
    fmpz_poly_get_coeff_fmpz bptr aptr (fromIntegral n)