code: def mpf_ellipe(x, prec, rnd=round_fast):
      # http://functions.wolfram.com/EllipticIntegrals/
      # EllipticK/20/01/0001/
      # E = (1-m)*(K'(m)*2*m + K(m))
      sign, man, exp, bc = x
      if not man:
          if x == fzero:
              return mpf_shift(mpf_pi(prec, rnd), -1)
          if x == fninf:
              return finf
          if x == fnan:
              return x
          if x == finf:
              raise ComplexResult
      if x == fone:
          return fone
      wp = prec + 20
      mag = exp + bc
      if mag < -wp:
          return mpf_shift(mpf_pi(prec, rnd), -1)
      # Compute a finite difference for K'
      p = max(mag, 0) - wp
      h = mpf_shift(fone, p)
      K = mpf_ellipk(x, 2 * wp)
      Kh = mpf_ellipk(mpf_sub(x, h), 2 * wp)
      Kdiff = mpf_shift(mpf_sub(K, Kh), -p)
      t = mpf_sub(fone, x)
      b = mpf_mul(Kdiff, mpf_shift(x, 1), wp)
      return mpf_mul(t, mpf_add(K, b), prec, rnd)
  
imports: import operator
  import math
  from .backend import MPZ_ZERO, MPZ_ONE, BACKEND, xrange, exec_
  from .libintmath import gcd
  from .libmpf import ComplexResult, round_fast, round_nearest, negative_rnd, bitcount, to_fixed, from_man_exp, from_int, to_int, from_rational, fzero, fone, fnone, ftwo, finf, fninf, fnan, mpf_sign, mpf_add, mpf_abs, mpf_pos, mpf_cmp, mpf_lt, mpf_le, mpf_gt, mpf_min_max, mpf_perturb, mpf_neg, mpf_shift, mpf_sub, mpf_mul, mpf_div, sqrt_fixed, mpf_sqrt, mpf_rdiv_int, mpf_pow_int, to_rational
  from .libelefun import mpf_pi, mpf_exp, mpf_log, pi_fixed, mpf_cos_sin, mpf_cos, mpf_sin, mpf_sqrt, agm_fixed
  from .libmpc import mpc_one, mpc_sub, mpc_mul_mpf, mpc_mul, mpc_neg, complex_int_pow, mpc_div, mpc_add_mpf, mpc_sub_mpf, mpc_log, mpc_add, mpc_pos, mpc_shift, mpc_is_infnan, mpc_zero, mpc_sqrt, mpc_abs, mpc_mpf_div, mpc_square, mpc_exp
  from .libintmath import ifac
  from .gammazeta import mpf_gamma_int, mpf_euler, euler_fixed
label_desc: Use image node_id 29 for calling a global function with example usage: mpf_ellipe(x, prec, rnd) and returns: mpf_mul, fone, mpf_shift, mpf_shift, finf, x