#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */
typedef int /*<<< orphan*/ table;

/* Variables and functions */
double interpolate_symmetric_linear(int, double *, double);
double prutenic_excess_luna(double angle) {
  double table[] = {
      ((0) + (((0) + (0) / 60.)) / 60.),   ((0) + (((2) + (18) / 60.)) / 60.),
      ((0) + (((4) + (37) / 60.)) / 60.),  ((0) + (((6) + (55) / 60.)) / 60.),
      ((0) + (((9) + (13) / 60.)) / 60.),  ((0) + (((11) + (32) / 60.)) / 60.),
      ((0) + (((13) + (50) / 60.)) / 60.), ((0) + (((16) + (8) / 60.)) / 60.),
      ((0) + (((18) + (25) / 60.)) / 60.), ((0) + (((20) + (43) / 60.)) / 60.),
      ((0) + (((23) + (0) / 60.)) / 60.),  ((0) + (((25) + (17) / 60.)) / 60.),
      ((0) + (((27) + (35) / 60.)) / 60.), ((0) + (((29) + (52) / 60.)) / 60.),
      ((0) + (((32) + (8) / 60.)) / 60.),  ((0) + (((34) + (25) / 60.)) / 60.),
      ((0) + (((36) + (41) / 60.)) / 60.), ((0) + (((38) + (56) / 60.)) / 60.),
      ((0) + (((41) + (12) / 60.)) / 60.), ((0) + (((43) + (27) / 60.)) / 60.),
      ((0) + (((45) + (41) / 60.)) / 60.), ((0) + (((47) + (55) / 60.)) / 60.),
      ((0) + (((50) + (9) / 60.)) / 60.),  ((0) + (((52) + (22) / 60.)) / 60.),
      ((0) + (((54) + (35) / 60.)) / 60.), ((0) + (((56) + (48) / 60.)) / 60.),
      ((0) + (((58) + (59) / 60.)) / 60.), ((1) + (((1) + (11) / 60.)) / 60.),
      ((1) + (((3) + (21) / 60.)) / 60.),  ((1) + (((5) + (31) / 60.)) / 60.),
      ((1) + (((7) + (41) / 60.)) / 60.),  ((1) + (((9) + (50) / 60.)) / 60.),
      ((1) + (((11) + (58) / 60.)) / 60.), ((1) + (((14) + (6) / 60.)) / 60.),
      ((1) + (((16) + (12) / 60.)) / 60.), ((1) + (((18) + (18) / 60.)) / 60.),
      ((1) + (((20) + (24) / 60.)) / 60.), ((1) + (((22) + (28) / 60.)) / 60.),
      ((1) + (((24) + (32) / 60.)) / 60.), ((1) + (((26) + (35) / 60.)) / 60.),
      ((1) + (((28) + (37) / 60.)) / 60.), ((1) + (((30) + (39) / 60.)) / 60.),
      ((1) + (((32) + (39) / 60.)) / 60.), ((1) + (((34) + (38) / 60.)) / 60.),
      ((1) + (((36) + (37) / 60.)) / 60.), ((1) + (((38) + (34) / 60.)) / 60.),
      ((1) + (((40) + (30) / 60.)) / 60.), ((1) + (((42) + (26) / 60.)) / 60.),
      ((1) + (((44) + (20) / 60.)) / 60.), ((1) + (((46) + (13) / 60.)) / 60.),
      ((1) + (((48) + (5) / 60.)) / 60.),  ((1) + (((49) + (56) / 60.)) / 60.),
      ((1) + (((51) + (45) / 60.)) / 60.), ((1) + (((53) + (34) / 60.)) / 60.),
      ((1) + (((55) + (21) / 60.)) / 60.), ((1) + (((57) + (7) / 60.)) / 60.),
      ((1) + (((58) + (51) / 60.)) / 60.), ((2) + (((0) + (34) / 60.)) / 60.),
      ((2) + (((2) + (16) / 60.)) / 60.),  ((2) + (((3) + (57) / 60.)) / 60.),
      ((2) + (((5) + (35) / 60.)) / 60.),  ((2) + (((7) + (13) / 60.)) / 60.),
      ((2) + (((8) + (49) / 60.)) / 60.),  ((2) + (((10) + (23) / 60.)) / 60.),
      ((2) + (((11) + (56) / 60.)) / 60.), ((2) + (((13) + (27) / 60.)) / 60.),
      ((2) + (((14) + (56) / 60.)) / 60.), ((2) + (((16) + (24) / 60.)) / 60.),
      ((2) + (((17) + (50) / 60.)) / 60.), ((2) + (((19) + (14) / 60.)) / 60.),
      ((2) + (((20) + (36) / 60.)) / 60.), ((2) + (((21) + (57) / 60.)) / 60.),
      ((2) + (((23) + (16) / 60.)) / 60.), ((2) + (((24) + (32) / 60.)) / 60.),
      ((2) + (((25) + (47) / 60.)) / 60.), ((2) + (((27) + (0) / 60.)) / 60.),
      ((2) + (((28) + (10) / 60.)) / 60.), ((2) + (((29) + (19) / 60.)) / 60.),
      ((2) + (((30) + (25) / 60.)) / 60.), ((2) + (((31) + (30) / 60.)) / 60.),
      ((2) + (((32) + (32) / 60.)) / 60.), ((2) + (((33) + (32) / 60.)) / 60.),
      ((2) + (((34) + (29) / 60.)) / 60.), ((2) + (((35) + (24) / 60.)) / 60.),
      ((2) + (((36) + (17) / 60.)) / 60.), ((2) + (((37) + (8) / 60.)) / 60.),
      ((2) + (((37) + (56) / 60.)) / 60.), ((2) + (((38) + (41) / 60.)) / 60.),
      ((2) + (((39) + (24) / 60.)) / 60.), ((2) + (((40) + (5) / 60.)) / 60.),
      ((2) + (((40) + (42) / 60.)) / 60.), ((2) + (((41) + (17) / 60.)) / 60.),
      ((2) + (((41) + (50) / 60.)) / 60.), ((2) + (((42) + (20) / 60.)) / 60.),
      ((2) + (((42) + (47) / 60.)) / 60.), ((2) + (((43) + (11) / 60.)) / 60.),
      ((2) + (((43) + (32) / 60.)) / 60.), ((2) + (((43) + (50) / 60.)) / 60.),
      ((2) + (((44) + (6) / 60.)) / 60.),  ((2) + (((44) + (18) / 60.)) / 60.),
      ((2) + (((44) + (27) / 60.)) / 60.), ((2) + (((44) + (34) / 60.)) / 60.),
      ((2) + (((44) + (37) / 60.)) / 60.), ((2) + (((44) + (37) / 60.)) / 60.),
      ((2) + (((44) + (34) / 60.)) / 60.), ((2) + (((44) + (28) / 60.)) / 60.),
      ((2) + (((44) + (18) / 60.)) / 60.), ((2) + (((44) + (5) / 60.)) / 60.),
      ((2) + (((43) + (49) / 60.)) / 60.), ((2) + (((43) + (30) / 60.)) / 60.),
      ((2) + (((43) + (7) / 60.)) / 60.),  ((2) + (((42) + (41) / 60.)) / 60.),
      ((2) + (((42) + (11) / 60.)) / 60.), ((2) + (((41) + (38) / 60.)) / 60.),
      ((2) + (((41) + (2) / 60.)) / 60.),  ((2) + (((40) + (22) / 60.)) / 60.),
      ((2) + (((39) + (38) / 60.)) / 60.), ((2) + (((38) + (51) / 60.)) / 60.),
      ((2) + (((38) + (0) / 60.)) / 60.),  ((2) + (((37) + (5) / 60.)) / 60.),
      ((2) + (((36) + (7) / 60.)) / 60.),  ((2) + (((35) + (6) / 60.)) / 60.),
      ((2) + (((34) + (0) / 60.)) / 60.),  ((2) + (((32) + (51) / 60.)) / 60.),
      ((2) + (((31) + (39) / 60.)) / 60.), ((2) + (((30) + (22) / 60.)) / 60.),
      ((2) + (((29) + (2) / 60.)) / 60.),  ((2) + (((27) + (39) / 60.)) / 60.),
      ((2) + (((26) + (11) / 60.)) / 60.), ((2) + (((24) + (40) / 60.)) / 60.),
      ((2) + (((23) + (5) / 60.)) / 60.),  ((2) + (((21) + (27) / 60.)) / 60.),
      ((2) + (((19) + (45) / 60.)) / 60.), ((2) + (((17) + (59) / 60.)) / 60.),
      ((2) + (((16) + (9) / 60.)) / 60.),  ((2) + (((14) + (16) / 60.)) / 60.),
      ((2) + (((12) + (19) / 60.)) / 60.), ((2) + (((10) + (19) / 60.)) / 60.),
      ((2) + (((8) + (15) / 60.)) / 60.),  ((2) + (((6) + (7) / 60.)) / 60.),
      ((2) + (((3) + (56) / 60.)) / 60.),  ((2) + (((1) + (41) / 60.)) / 60.),
      ((1) + (((59) + (23) / 60.)) / 60.), ((1) + (((57) + (2) / 60.)) / 60.),
      ((1) + (((54) + (37) / 60.)) / 60.), ((1) + (((52) + (9) / 60.)) / 60.),
      ((1) + (((49) + (38) / 60.)) / 60.), ((1) + (((47) + (3) / 60.)) / 60.),
      ((1) + (((44) + (25) / 60.)) / 60.), ((1) + (((41) + (44) / 60.)) / 60.),
      ((1) + (((39) + (0) / 60.)) / 60.),  ((1) + (((36) + (12) / 60.)) / 60.),
      ((1) + (((33) + (22) / 60.)) / 60.), ((1) + (((30) + (30) / 60.)) / 60.),
      ((1) + (((27) + (34) / 60.)) / 60.), ((1) + (((24) + (35) / 60.)) / 60.),
      ((1) + (((21) + (34) / 60.)) / 60.), ((1) + (((18) + (31) / 60.)) / 60.),
      ((1) + (((15) + (25) / 60.)) / 60.), ((1) + (((12) + (16) / 60.)) / 60.),
      ((1) + (((9) + (5) / 60.)) / 60.),   ((1) + (((5) + (52) / 60.)) / 60.),
      ((1) + (((2) + (37) / 60.)) / 60.),  ((0) + (((59) + (20) / 60.)) / 60.),
      ((0) + (((56) + (1) / 60.)) / 60.),  ((0) + (((52) + (40) / 60.)) / 60.),
      ((0) + (((49) + (17) / 60.)) / 60.), ((0) + (((45) + (53) / 60.)) / 60.),
      ((0) + (((42) + (27) / 60.)) / 60.), ((0) + (((38) + (59) / 60.)) / 60.),
      ((0) + (((35) + (31) / 60.)) / 60.), ((0) + (((32) + (1) / 60.)) / 60.),
      ((0) + (((28) + (30) / 60.)) / 60.), ((0) + (((24) + (59) / 60.)) / 60.),
      ((0) + (((21) + (26) / 60.)) / 60.), ((0) + (((17) + (53) / 60.)) / 60.),
      ((0) + (((14) + (19) / 60.)) / 60.), ((0) + (((10) + (45) / 60.)) / 60.),
      ((0) + (((7) + (10) / 60.)) / 60.),  ((0) + (((3) + (35) / 60.)) / 60.),
      ((0) + (((0) + (0) / 60.)) / 60.),
  };
  return interpolate_symmetric_linear(sizeof(table) / sizeof(*table), table,
                                      angle);
}


x86 assembly (clang, -O0):
<prutenic_excess_luna>:
push   %rbp
mov    %rsp,%rbp
sub    $0x5b0,%rsp
movsd  %xmm0,-0x8(%rbp)
lea    -0x5b0(%rbp),%rdi
lea    0xec2(%rip),%rsi
mov    $0x5a8,%edx
call   1040 <memcpy@plt>
lea    -0x5b0(%rbp),%rsi
movsd  -0x8(%rbp),%xmm0
mov    $0xb5,%edi
call   1030 <interpolate_symmetric_linear@plt>
add    $0x5b0,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<prutenic_excess_luna>:
push   %rbx
sub    $0x5c0,%rsp
movsd  %xmm0,0x8(%rsp)
lea    0xecb(%rip),%rsi
lea    0x10(%rsp),%rbx
mov    $0x5a8,%edx
mov    %rbx,%rdi
call   1040 <memcpy@plt>
mov    $0xb5,%edi
mov    %rbx,%rsi
movsd  0x8(%rsp),%xmm0
call   1030 <interpolate_symmetric_linear@plt>
add    $0x5c0,%rsp
pop    %rbx
ret

LLVM IR (-O0):
@__const.prutenic_excess_luna.table = [181 x double] [double 0.000000e+00, double 0x3FA3A06D3A06D3A0, double 0x3FB3B2A1907F6E5E, double 0x3FBD82D82D82D82E, double 0x3FC3A987654320FF, double 0x3FC89ABCDF012345, double 0x3FCD82D82D82D82E, double 0x3FD13579BE02468B, double 0x3FD3A4FA4FA4FA50, double 0x3FD61907F6E5D4C3, double 0x3FD8888888888889, double 0x3FDAF8091A2B3C4E, double 0x3FDD6C16C16C16C1, double 0x3FDFDB97530ECA86, double 0x3FE123456789ABCE, double 0x3FE25B05B05B05B0, double 0x3FE3907F6E5D4C3B, double 0x3FE4C3B2A1907F6E, double 0x3FE5F92C5F92C5FA, double 0x3FE72C5F92C5F92D, double 0x3FE85D4C3B2A1907, double 0x3FE98E38E38E38E3, double 0x3FEABF258BF258BF, double 0x3FEBEDCBA9876543, double 0x3FED1C71C71C71C7, double 0x3FEE4B17E4B17E4B, double 0x3FEF7530ECA86420, double 0x3FF050C83FB72EA6, double 0x3FF0E4B17E4B17E5, double 0x3FF1789ABCDF0123, double 0x3FF20C83FB72EA62, double 0x3FF29F49F49F49F5, double 0x3FF330ECA8641FDC, double 0x3FF3C28F5C28F5C2, double 1.270000e+00, double 1.305000e+00, double 0x3FF570A3D70A3D70, double 0x3FF5FDB97530ECA8, double 0x3FF68ACF13579BE0, double 0x3FF716C16C16C16C, double 0x3FF7A1907F6E5D4C, double 0x3FF82C5F92C5F92C, double 0x3FF8B4E81B4E81B5, double 0x3FF93C4D5E6F8092, double 0x3FF9C3B2A1907F6E, double 0x3FFA48D159E26AF4, double 1.675000e+00, double 0x3FFB50C83FB72EA6, double 0x3FFBD27D27D27D28, double 0x3FFC530ECA8641FE, double 0x3FFCD27D27D27D28, double 0x3FFD50C83FB72EA6, double 1.862500e+00, double 0x3FFE48D159E26AF4, double 0x3FFEC28F5C28F5C2, double 0x3FFF3B2A1907F6E6, double 0x3FFFB17E4B17E4B2, double 0x400013579BE02469, double 0x40004D5E6F8091A3, double 0x400086D3A06D3A07, double 0x4000BE93E93E93E9, double 0x4000F654320FEDCC, double 0x40012CF13579BE02, double 0x4001626AF37C048D, double 0x400197530ECA8642, double 0x4001CB17E4B17E4B, double 0x4001FDB97530ECA8, double 0x40022FC962FC9630, double 0x400260B60B60B60B, double 0x4002907F6E5D4C3B, double 0x4002BF258BF258BF, double 0x4002ED3A06D3A06D, double 0x40031A2B3C4D5E70, double 0x4003456789ABCDF0, double 0x400370123456789B, double 2.450000e+00, double 0x4003C16C16C16C17, double 0x4003E8ACF13579BE, double 0x40040E38E38E38E4, double 2.525000e+00, double 0x400456789ABCDF01, double 0x4004789ABCDF0123, double 0x40049907F6E5D4C4, double 2.590000e+00, double 0x4004D6789ABCDF01, double 0x4004F37C048D159E, double 0x40050ECA8641FDB9, double 0x400528641FDB9753, double 0x400540DA740DA741, double 0x4005582D82D82D83, double 0x40056D3A06D3A06D, double 0x40058123456789AC, double 0x400593E93E93E93F, double 0x4005A4FA4FA4FA50, double 0x4005B456789ABCDF, double 0x4005C1FDB97530EC, double 0x4005CDF012345678, double 0x4005D82D82D82D83, double 2.735000e+00, double 0x4005E81B4E81B4E8, double 0x4005ED3A06D3A06D, double 0x4005F13579BE0247, double 0x4005F2EA61D950C8, double 0x4005F2EA61D950C8, double 0x4005F13579BE0247, double 0x4005EDCBA9876543, double 0x4005E81B4E81B4E8, double 0x4005E0B60B60B60C, double 0x4005D79BE02468AD, double 2.725000e+00, double 0x4005BFB72EA61D95, double 0x4005B0ECA8641FDC, double 0x40059FDB97530ECA, double 0x40058D159E26AF38, double 0x4005789ABCDF0123, double 0x400561D950C83FB7, double 0x400548D159E26AF4, double 2.647500e+00, double 0x4005111111111111, double 0x4004F1C71C71C71C, double 0x4004D0C83FB72EA6, double 2.585000e+00, double 0x4004888888888888, double 2.547500e+00, double 2.527500e+00, double 0x40040C83FB72EA62, double 0x4003DF012345678A, double 0x4003AFC962FC9630, double 0x40037DB97530ECA8, double 0x400349F49F49F49F, double 0x400313E93E93E93E, double 2.357500e+00, double 0x4002A22222222222, double 0x400265D4C3B2A190, double 0x40022740DA740DA7, double 0x4001E6F8091A2B3C, double 0x4001A468ACF1357A, double 0x4001602468ACF135, double 2.137500e+00, double 0x4000D0C83FB72EA6, double 0x40008641FDB97531, double 0x4000397530ECA864, double 0x3FFFD5E6F8091A2B, double 0x3FFF3579BE02468A, double 0x3FFE907F6E5D4C3B, double 0x3FFDE81B4E81B4E8, double 0x3FFD3C4D5E6F8092, double 0x3FFC8BF258BF258C, double 0x3FFBD82D82D82D82, double 0x3FFB20FEDCBA9876, double 1.650000e+00, double 0x3FF9A740DA740DA8, double 0x3FF8E5D4C3B2A190, double 0x3FF8222222222222, double 0x3FF759E26AF37C04, double 0x3FF68E38E38E38E4, double 0x3FF5C048D159E26B, double 0x3FF4F0123456789B, double 0x3FF41C71C71C71C7, double 0x3FF3456789ABCDF0, double 0x3FF26C16C16C16C2, double 0x3FF1907F6E5D4C3B, double 0x3FF0B2A1907F6E5D, double 0x3FEFA4FA4FA4FA50, double 0x3FEDE02468ACF135, double 0x3FEC16C16C16C16C, double 0x3FEA48D159E26AF3, double 0x3FE8789ABCDF0123, double 7.075000e-01, double 0x3FE4CA8641FDB975, double 0x3FE2F13579BE0246, double 0x3FE113579BE02469, double 4.750000e-01, double 0x3FDAA61D950C83FC, double 0x3FD6DCBA98765432, double 0x3FD313579BE02469, double 0x3FCE8ACF13579BE0, double 0x3FC6EEEEEEEEEEEF, double 0x3FBE93E93E93E93F, double 0x3FAE93E93E93E93F, double 0.000000e+00]
define double @prutenic_excess_luna(double %0) {
%2 = alloca double
%3 = alloca [181 x double]
store double %0, double* %2
%4 = bitcast [181 x double]* %3 to i8*
%5 = getelementptr inbounds [181 x double], [181 x double]* %3, i64 0, i64 0
%6 = load double, double* %2
%7 = call double @interpolate_symmetric_linear(i32 181, double* %5, double %6)
ret double %7
}

LLVM IR (-O2):
@__const.prutenic_excess_luna.table = [181 x double] [double 0.000000e+00, double 0x3FA3A06D3A06D3A0, double 0x3FB3B2A1907F6E5E, double 0x3FBD82D82D82D82E, double 0x3FC3A987654320FF, double 0x3FC89ABCDF012345, double 0x3FCD82D82D82D82E, double 0x3FD13579BE02468B, double 0x3FD3A4FA4FA4FA50, double 0x3FD61907F6E5D4C3, double 0x3FD8888888888889, double 0x3FDAF8091A2B3C4E, double 0x3FDD6C16C16C16C1, double 0x3FDFDB97530ECA86, double 0x3FE123456789ABCE, double 0x3FE25B05B05B05B0, double 0x3FE3907F6E5D4C3B, double 0x3FE4C3B2A1907F6E, double 0x3FE5F92C5F92C5FA, double 0x3FE72C5F92C5F92D, double 0x3FE85D4C3B2A1907, double 0x3FE98E38E38E38E3, double 0x3FEABF258BF258BF, double 0x3FEBEDCBA9876543, double 0x3FED1C71C71C71C7, double 0x3FEE4B17E4B17E4B, double 0x3FEF7530ECA86420, double 0x3FF050C83FB72EA6, double 0x3FF0E4B17E4B17E5, double 0x3FF1789ABCDF0123, double 0x3FF20C83FB72EA62, double 0x3FF29F49F49F49F5, double 0x3FF330ECA8641FDC, double 0x3FF3C28F5C28F5C2, double 1.270000e+00, double 1.305000e+00, double 0x3FF570A3D70A3D70, double 0x3FF5FDB97530ECA8, double 0x3FF68ACF13579BE0, double 0x3FF716C16C16C16C, double 0x3FF7A1907F6E5D4C, double 0x3FF82C5F92C5F92C, double 0x3FF8B4E81B4E81B5, double 0x3FF93C4D5E6F8092, double 0x3FF9C3B2A1907F6E, double 0x3FFA48D159E26AF4, double 1.675000e+00, double 0x3FFB50C83FB72EA6, double 0x3FFBD27D27D27D28, double 0x3FFC530ECA8641FE, double 0x3FFCD27D27D27D28, double 0x3FFD50C83FB72EA6, double 1.862500e+00, double 0x3FFE48D159E26AF4, double 0x3FFEC28F5C28F5C2, double 0x3FFF3B2A1907F6E6, double 0x3FFFB17E4B17E4B2, double 0x400013579BE02469, double 0x40004D5E6F8091A3, double 0x400086D3A06D3A07, double 0x4000BE93E93E93E9, double 0x4000F654320FEDCC, double 0x40012CF13579BE02, double 0x4001626AF37C048D, double 0x400197530ECA8642, double 0x4001CB17E4B17E4B, double 0x4001FDB97530ECA8, double 0x40022FC962FC9630, double 0x400260B60B60B60B, double 0x4002907F6E5D4C3B, double 0x4002BF258BF258BF, double 0x4002ED3A06D3A06D, double 0x40031A2B3C4D5E70, double 0x4003456789ABCDF0, double 0x400370123456789B, double 2.450000e+00, double 0x4003C16C16C16C17, double 0x4003E8ACF13579BE, double 0x40040E38E38E38E4, double 2.525000e+00, double 0x400456789ABCDF01, double 0x4004789ABCDF0123, double 0x40049907F6E5D4C4, double 2.590000e+00, double 0x4004D6789ABCDF01, double 0x4004F37C048D159E, double 0x40050ECA8641FDB9, double 0x400528641FDB9753, double 0x400540DA740DA741, double 0x4005582D82D82D83, double 0x40056D3A06D3A06D, double 0x40058123456789AC, double 0x400593E93E93E93F, double 0x4005A4FA4FA4FA50, double 0x4005B456789ABCDF, double 0x4005C1FDB97530EC, double 0x4005CDF012345678, double 0x4005D82D82D82D83, double 2.735000e+00, double 0x4005E81B4E81B4E8, double 0x4005ED3A06D3A06D, double 0x4005F13579BE0247, double 0x4005F2EA61D950C8, double 0x4005F2EA61D950C8, double 0x4005F13579BE0247, double 0x4005EDCBA9876543, double 0x4005E81B4E81B4E8, double 0x4005E0B60B60B60C, double 0x4005D79BE02468AD, double 2.725000e+00, double 0x4005BFB72EA61D95, double 0x4005B0ECA8641FDC, double 0x40059FDB97530ECA, double 0x40058D159E26AF38, double 0x4005789ABCDF0123, double 0x400561D950C83FB7, double 0x400548D159E26AF4, double 2.647500e+00, double 0x4005111111111111, double 0x4004F1C71C71C71C, double 0x4004D0C83FB72EA6, double 2.585000e+00, double 0x4004888888888888, double 2.547500e+00, double 2.527500e+00, double 0x40040C83FB72EA62, double 0x4003DF012345678A, double 0x4003AFC962FC9630, double 0x40037DB97530ECA8, double 0x400349F49F49F49F, double 0x400313E93E93E93E, double 2.357500e+00, double 0x4002A22222222222, double 0x400265D4C3B2A190, double 0x40022740DA740DA7, double 0x4001E6F8091A2B3C, double 0x4001A468ACF1357A, double 0x4001602468ACF135, double 2.137500e+00, double 0x4000D0C83FB72EA6, double 0x40008641FDB97531, double 0x4000397530ECA864, double 0x3FFFD5E6F8091A2B, double 0x3FFF3579BE02468A, double 0x3FFE907F6E5D4C3B, double 0x3FFDE81B4E81B4E8, double 0x3FFD3C4D5E6F8092, double 0x3FFC8BF258BF258C, double 0x3FFBD82D82D82D82, double 0x3FFB20FEDCBA9876, double 1.650000e+00, double 0x3FF9A740DA740DA8, double 0x3FF8E5D4C3B2A190, double 0x3FF8222222222222, double 0x3FF759E26AF37C04, double 0x3FF68E38E38E38E4, double 0x3FF5C048D159E26B, double 0x3FF4F0123456789B, double 0x3FF41C71C71C71C7, double 0x3FF3456789ABCDF0, double 0x3FF26C16C16C16C2, double 0x3FF1907F6E5D4C3B, double 0x3FF0B2A1907F6E5D, double 0x3FEFA4FA4FA4FA50, double 0x3FEDE02468ACF135, double 0x3FEC16C16C16C16C, double 0x3FEA48D159E26AF3, double 0x3FE8789ABCDF0123, double 7.075000e-01, double 0x3FE4CA8641FDB975, double 0x3FE2F13579BE0246, double 0x3FE113579BE02469, double 4.750000e-01, double 0x3FDAA61D950C83FC, double 0x3FD6DCBA98765432, double 0x3FD313579BE02469, double 0x3FCE8ACF13579BE0, double 0x3FC6EEEEEEEEEEEF, double 0x3FBE93E93E93E93F, double 0x3FAE93E93E93E93F, double 0.000000e+00]
define double @prutenic_excess_luna(double %0) {
%2 = alloca [181 x double]
%3 = bitcast [181 x double]* %2 to i8*
%4 = getelementptr inbounds [181 x double], [181 x double]* %2, i64 0, i64 0
%5 = call double @interpolate_symmetric_linear(i32 181, double* %4, double %0)
ret double %5
}