"      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ G  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"!  G  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHGHHGGH2IJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz2IJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz2zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJI2IJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{{{{|  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|| f executes the computation f , ensuring B that the FPU control words are set to avoid problems from excess > precision. See the libqd documentation for further details. EThis function is unsafe in a threaded runtime as Haskell threads can F migrate between OS threads, moreover there is no checking for nested ) calls which results in race conditions. BSome steps can be taken to mitigate some of this badness; perhaps  using (for example) GHC.Conc.forkOnIO might help. |||}~}~}~}~~  |}~    !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~qd-0.2Numeric.QD.QuadDouble.RawNumeric.QD.FPU.RawNumeric.QD.DoubleDouble.RawNumeric.QD.Bits.RawNumeric.QD.FPUNumeric.QD.DoubleDoubleNumeric.QD.QuadDoubleNumeric.QD.RawNumeric.QD.Bits Numeric.QD c_qd_rand c_qd_writec_qd_pic_qd_comp_d_qdc_qd_comp_qd_d c_qd_compc_qd_neg c_qd_swrite c_qd_read c_qd_sincosh c_qd_sincos c_qd_atanh c_qd_acosh c_qd_asinh c_qd_tanh c_qd_cosh c_qd_sinh c_qd_atan2 c_qd_atan c_qd_acos c_qd_asinc_qd_tanc_qd_cosc_qd_sin c_qd_log10c_qd_logc_qd_exp c_qd_ceil c_qd_floor c_qd_aint c_qd_nint c_qd_nroot c_qd_npwrc_qd_absc_qd_sqr c_qd_sqrt c_qd_copy_d c_qd_copy_dd c_qd_copyc_qd_selfdiv_dc_qd_selfdiv_dd c_qd_selfdiv c_qd_div_qd_d c_qd_div_d_qdc_qd_div_qd_ddc_qd_div_dd_qdc_qd_divc_qd_selfmul_dc_qd_selfmul_dd c_qd_selfmul c_qd_mul_qd_d c_qd_mul_d_qdc_qd_mul_qd_ddc_qd_mul_dd_qdc_qd_mulc_qd_selfsub_dc_qd_selfsub_dd c_qd_selfsub c_qd_sub_qd_d c_qd_sub_d_qdc_qd_sub_qd_ddc_qd_sub_dd_qdc_qd_subc_qd_selfadd_dc_qd_selfadd_dd c_qd_selfadd c_qd_add_qd_d c_qd_add_d_qdc_qd_add_qd_ddc_qd_add_dd_qdc_qd_add fpu_fix_end fpu_fix_start c_dd_rand c_dd_writec_dd_pic_dd_comp_d_ddc_dd_comp_dd_d c_dd_compc_dd_neg c_dd_swrite c_dd_read c_dd_sincosh c_dd_sincos c_dd_atanh c_dd_acosh c_dd_asinh c_dd_tanh c_dd_cosh c_dd_sinh c_dd_atan2 c_dd_atan c_dd_acos c_dd_asinc_dd_tanc_dd_cosc_dd_sin c_dd_log10c_dd_logc_dd_exp c_dd_ceil c_dd_floor c_dd_aint c_dd_nint c_dd_nroot c_dd_npwrc_dd_absc_dd_sqr c_dd_sqrt c_dd_copy_d c_dd_copy c_dd_div_dd_d c_dd_div_d_ddc_dd_div c_dd_mul_dd_d c_dd_mul_d_ddc_dd_mul c_dd_sub_dd_d c_dd_sub_d_ddc_dd_sub c_dd_add_dd_d c_dd_add_d_ddc_dd_addget_double_expnunsafePreservingFPU DoubleDoubletoDouble fromDoublesqr QuadDoubletoDoubleDoublefromDoubleDouble lift_dd_dd lift_dd_dd_dd lift_qd_qd lift_qd_qd_qd