code 35170;
    real procedure BESS I0(X); value X; real X;
    if X= 0 then BESS I0:=1
    else if ABS(X) < = 15.0 then 
    begin real Z, DENOMINATOR, NUMERATOR;
      Z:= X*X; NUMERATOR:=
      (Z*(Z*(Z*(Z*(Z*(Z*(Z*
      (Z*(Z*(Z*(Z*(Z*(Z*(Z*
       .21058  07228  90567  "-22
      +.38071  52423  45326  "-19)
      +.47944  02575  48300  "-16)
      +.43512  59712  62668  "-13)
      +.30093  11271  12960  "-10)
      +.16022  46793  95361  "-07)
      +.65485  83700  96785  "-05)
      +.20259  10841  43397  "-02)
      +.46307  62847  21000  "+00)
      +.75433  73289  48189  "+02)
      +.83079  25418  09429  "+04)
      +.57166  11305  63785  "+06)
      +.21641  55723  61227  "+08)
      +.35664  44822  44025  "+09)
      +.14404  82982  27235  "+10);
      DENOMINATOR:= (Z*(Z*
      (Z-.30764  69126  82801  "04)
        +.34762  63324  05882  "07)
        -.14404  82982  27235  "10);
      BESS I0:= -NUMERATOR/DENOMINATOR;
    end else 
    begin 
      BESS I0:= EXP(ABS(X)) * NONEXP BESS I0(X)
    end 

        eop