code: def python_mpf_mul_int(s, n, prec, rnd=round_fast):
      """Multiply by a Python integer."""
      sign, man, exp, bc = s
      if not man:
          return mpf_mul(s, from_int(n), prec, rnd)
      if not n:
          return fzero
      if n < 0:
          sign ^= 1
          n = -n
      man *= n
      # Generally n will be small
      if n < 1024:
          bc += bctable[int(n)] - 1
      else:
          bc += bitcount(n) - 1
      bc += int(man >> bc)
      return normalize(sign, man, exp, bc, prec, rnd)
  
imports: import math
  from bisect import bisect
  import sys
  from .backend import MPZ, MPZ_TYPE, MPZ_ZERO, MPZ_ONE, MPZ_TWO, MPZ_FIVE, BACKEND, STRICT, HASH_MODULUS, HASH_BITS, gmpy, sage, sage_utils
  from .libintmath import giant_steps, trailtable, bctable, lshift, rshift, bitcount, trailing, sqrt_fixed, numeral, isqrt, isqrt_fast, sqrtrem, bin_to_radix
label_desc: Use image node_id 45 for calling a global function with example usage: python_mpf_mul_int(s, n, prec, rnd) and returns: normalize, mpf_mul, fzero