1 #include "simint/boys/boys.h"
2 #include "simint/ostei/gen/ostei_generated.h"
3 #include "simint/vectorization/vectorization.h"
4 #include <math.h>
5 #include <string.h>
6 
7 
ostei_i_h_i_h(struct simint_multi_shellpair const P,struct simint_multi_shellpair const Q,double screen_tol,double * const restrict work,double * const restrict INT__i_h_i_h)8 int ostei_i_h_i_h(struct simint_multi_shellpair const P,
9                   struct simint_multi_shellpair const Q,
10                   double screen_tol,
11                   double * const restrict work,
12                   double * const restrict INT__i_h_i_h)
13 {
14 
15     SIMINT_ASSUME_ALIGN_DBL(work);
16     SIMINT_ASSUME_ALIGN_DBL(INT__i_h_i_h);
17     int ab, cd, abcd;
18     int istart, jstart;
19     int iprimcd, nprim_icd, icd;
20     const int check_screen = (screen_tol > 0.0);
21     int i, j;
22     int n;
23     int not_screened;
24     int real_abcd;
25     int iket;
26     int ibra;
27 
28     // partition workspace
29     double * const INT__i_s_i_s = work + (SIMINT_NSHELL_SIMD * 0);
30     double * const INT__i_s_k_s = work + (SIMINT_NSHELL_SIMD * 784);
31     double * const INT__i_s_l_s = work + (SIMINT_NSHELL_SIMD * 1792);
32     double * const INT__i_s_m_s = work + (SIMINT_NSHELL_SIMD * 3052);
33     double * const INT__i_s_n_s = work + (SIMINT_NSHELL_SIMD * 4592);
34     double * const INT__i_s_o_s = work + (SIMINT_NSHELL_SIMD * 6440);
35     double * const INT__k_s_i_s = work + (SIMINT_NSHELL_SIMD * 8624);
36     double * const INT__k_s_k_s = work + (SIMINT_NSHELL_SIMD * 9632);
37     double * const INT__k_s_l_s = work + (SIMINT_NSHELL_SIMD * 10928);
38     double * const INT__k_s_m_s = work + (SIMINT_NSHELL_SIMD * 12548);
39     double * const INT__k_s_n_s = work + (SIMINT_NSHELL_SIMD * 14528);
40     double * const INT__k_s_o_s = work + (SIMINT_NSHELL_SIMD * 16904);
41     double * const INT__l_s_i_s = work + (SIMINT_NSHELL_SIMD * 19712);
42     double * const INT__l_s_k_s = work + (SIMINT_NSHELL_SIMD * 20972);
43     double * const INT__l_s_l_s = work + (SIMINT_NSHELL_SIMD * 22592);
44     double * const INT__l_s_m_s = work + (SIMINT_NSHELL_SIMD * 24617);
45     double * const INT__l_s_n_s = work + (SIMINT_NSHELL_SIMD * 27092);
46     double * const INT__l_s_o_s = work + (SIMINT_NSHELL_SIMD * 30062);
47     double * const INT__m_s_i_s = work + (SIMINT_NSHELL_SIMD * 33572);
48     double * const INT__m_s_k_s = work + (SIMINT_NSHELL_SIMD * 35112);
49     double * const INT__m_s_l_s = work + (SIMINT_NSHELL_SIMD * 37092);
50     double * const INT__m_s_m_s = work + (SIMINT_NSHELL_SIMD * 39567);
51     double * const INT__m_s_n_s = work + (SIMINT_NSHELL_SIMD * 42592);
52     double * const INT__m_s_o_s = work + (SIMINT_NSHELL_SIMD * 46222);
53     double * const INT__n_s_i_s = work + (SIMINT_NSHELL_SIMD * 50512);
54     double * const INT__n_s_k_s = work + (SIMINT_NSHELL_SIMD * 52360);
55     double * const INT__n_s_l_s = work + (SIMINT_NSHELL_SIMD * 54736);
56     double * const INT__n_s_m_s = work + (SIMINT_NSHELL_SIMD * 57706);
57     double * const INT__n_s_n_s = work + (SIMINT_NSHELL_SIMD * 61336);
58     double * const INT__n_s_o_s = work + (SIMINT_NSHELL_SIMD * 65692);
59     double * const INT__o_s_i_s = work + (SIMINT_NSHELL_SIMD * 70840);
60     double * const INT__o_s_k_s = work + (SIMINT_NSHELL_SIMD * 73024);
61     double * const INT__o_s_l_s = work + (SIMINT_NSHELL_SIMD * 75832);
62     double * const INT__o_s_m_s = work + (SIMINT_NSHELL_SIMD * 79342);
63     double * const INT__o_s_n_s = work + (SIMINT_NSHELL_SIMD * 83632);
64     double * const INT__o_s_o_s = work + (SIMINT_NSHELL_SIMD * 88780);
65     SIMINT_DBLTYPE * const primwork = (SIMINT_DBLTYPE *)(work + SIMINT_NSHELL_SIMD*94864);
66     SIMINT_DBLTYPE * const restrict PRIM_INT__s_s_s_s = primwork + 0;
67     SIMINT_DBLTYPE * const restrict PRIM_INT__s_s_p_s = primwork + 23;
68     SIMINT_DBLTYPE * const restrict PRIM_INT__s_s_d_s = primwork + 56;
69     SIMINT_DBLTYPE * const restrict PRIM_INT__s_s_f_s = primwork + 116;
70     SIMINT_DBLTYPE * const restrict PRIM_INT__s_s_g_s = primwork + 206;
71     SIMINT_DBLTYPE * const restrict PRIM_INT__s_s_h_s = primwork + 326;
72     SIMINT_DBLTYPE * const restrict PRIM_INT__p_s_s_s = primwork + 473;
73     SIMINT_DBLTYPE * const restrict PRIM_INT__p_s_p_s = primwork + 539;
74     SIMINT_DBLTYPE * const restrict PRIM_INT__p_s_d_s = primwork + 638;
75     SIMINT_DBLTYPE * const restrict PRIM_INT__p_s_f_s = primwork + 818;
76     SIMINT_DBLTYPE * const restrict PRIM_INT__p_s_g_s = primwork + 1088;
77     SIMINT_DBLTYPE * const restrict PRIM_INT__p_s_h_s = primwork + 1448;
78     SIMINT_DBLTYPE * const restrict PRIM_INT__p_s_i_s = primwork + 1889;
79     SIMINT_DBLTYPE * const restrict PRIM_INT__d_s_s_s = primwork + 2393;
80     SIMINT_DBLTYPE * const restrict PRIM_INT__d_s_p_s = primwork + 2519;
81     SIMINT_DBLTYPE * const restrict PRIM_INT__d_s_d_s = primwork + 2717;
82     SIMINT_DBLTYPE * const restrict PRIM_INT__d_s_f_s = primwork + 3077;
83     SIMINT_DBLTYPE * const restrict PRIM_INT__d_s_g_s = primwork + 3617;
84     SIMINT_DBLTYPE * const restrict PRIM_INT__d_s_h_s = primwork + 4337;
85     SIMINT_DBLTYPE * const restrict PRIM_INT__d_s_i_s = primwork + 5219;
86     SIMINT_DBLTYPE * const restrict PRIM_INT__d_s_k_s = primwork + 6227;
87     SIMINT_DBLTYPE * const restrict PRIM_INT__f_s_s_s = primwork + 7307;
88     SIMINT_DBLTYPE * const restrict PRIM_INT__f_s_p_s = primwork + 7507;
89     SIMINT_DBLTYPE * const restrict PRIM_INT__f_s_d_s = primwork + 7837;
90     SIMINT_DBLTYPE * const restrict PRIM_INT__f_s_f_s = primwork + 8437;
91     SIMINT_DBLTYPE * const restrict PRIM_INT__f_s_g_s = primwork + 9337;
92     SIMINT_DBLTYPE * const restrict PRIM_INT__f_s_h_s = primwork + 10537;
93     SIMINT_DBLTYPE * const restrict PRIM_INT__f_s_i_s = primwork + 12007;
94     SIMINT_DBLTYPE * const restrict PRIM_INT__f_s_k_s = primwork + 13687;
95     SIMINT_DBLTYPE * const restrict PRIM_INT__f_s_l_s = primwork + 15487;
96     SIMINT_DBLTYPE * const restrict PRIM_INT__g_s_s_s = primwork + 17287;
97     SIMINT_DBLTYPE * const restrict PRIM_INT__g_s_p_s = primwork + 17572;
98     SIMINT_DBLTYPE * const restrict PRIM_INT__g_s_d_s = primwork + 18067;
99     SIMINT_DBLTYPE * const restrict PRIM_INT__g_s_f_s = primwork + 18967;
100     SIMINT_DBLTYPE * const restrict PRIM_INT__g_s_g_s = primwork + 20317;
101     SIMINT_DBLTYPE * const restrict PRIM_INT__g_s_h_s = primwork + 22117;
102     SIMINT_DBLTYPE * const restrict PRIM_INT__g_s_i_s = primwork + 24322;
103     SIMINT_DBLTYPE * const restrict PRIM_INT__g_s_k_s = primwork + 26842;
104     SIMINT_DBLTYPE * const restrict PRIM_INT__g_s_l_s = primwork + 29542;
105     SIMINT_DBLTYPE * const restrict PRIM_INT__g_s_m_s = primwork + 32242;
106     SIMINT_DBLTYPE * const restrict PRIM_INT__h_s_s_s = primwork + 34717;
107     SIMINT_DBLTYPE * const restrict PRIM_INT__h_s_p_s = primwork + 35095;
108     SIMINT_DBLTYPE * const restrict PRIM_INT__h_s_d_s = primwork + 35788;
109     SIMINT_DBLTYPE * const restrict PRIM_INT__h_s_f_s = primwork + 37048;
110     SIMINT_DBLTYPE * const restrict PRIM_INT__h_s_g_s = primwork + 38938;
111     SIMINT_DBLTYPE * const restrict PRIM_INT__h_s_h_s = primwork + 41458;
112     SIMINT_DBLTYPE * const restrict PRIM_INT__h_s_i_s = primwork + 44545;
113     SIMINT_DBLTYPE * const restrict PRIM_INT__h_s_k_s = primwork + 48073;
114     SIMINT_DBLTYPE * const restrict PRIM_INT__h_s_l_s = primwork + 51853;
115     SIMINT_DBLTYPE * const restrict PRIM_INT__h_s_m_s = primwork + 55633;
116     SIMINT_DBLTYPE * const restrict PRIM_INT__h_s_n_s = primwork + 59098;
117     SIMINT_DBLTYPE * const restrict PRIM_INT__i_s_s_s = primwork + 61870;
118     SIMINT_DBLTYPE * const restrict PRIM_INT__i_s_p_s = primwork + 62346;
119     SIMINT_DBLTYPE * const restrict PRIM_INT__i_s_d_s = primwork + 63270;
120     SIMINT_DBLTYPE * const restrict PRIM_INT__i_s_f_s = primwork + 64950;
121     SIMINT_DBLTYPE * const restrict PRIM_INT__i_s_g_s = primwork + 67470;
122     SIMINT_DBLTYPE * const restrict PRIM_INT__i_s_h_s = primwork + 70830;
123     SIMINT_DBLTYPE * const restrict PRIM_INT__i_s_i_s = primwork + 74946;
124     SIMINT_DBLTYPE * const restrict PRIM_INT__i_s_k_s = primwork + 79650;
125     SIMINT_DBLTYPE * const restrict PRIM_INT__i_s_l_s = primwork + 84690;
126     SIMINT_DBLTYPE * const restrict PRIM_INT__i_s_m_s = primwork + 89730;
127     SIMINT_DBLTYPE * const restrict PRIM_INT__i_s_n_s = primwork + 94350;
128     SIMINT_DBLTYPE * const restrict PRIM_INT__i_s_o_s = primwork + 98046;
129     SIMINT_DBLTYPE * const restrict PRIM_INT__k_s_s_s = primwork + 100230;
130     SIMINT_DBLTYPE * const restrict PRIM_INT__k_s_p_s = primwork + 100806;
131     SIMINT_DBLTYPE * const restrict PRIM_INT__k_s_d_s = primwork + 101994;
132     SIMINT_DBLTYPE * const restrict PRIM_INT__k_s_f_s = primwork + 104154;
133     SIMINT_DBLTYPE * const restrict PRIM_INT__k_s_g_s = primwork + 107394;
134     SIMINT_DBLTYPE * const restrict PRIM_INT__k_s_h_s = primwork + 111714;
135     SIMINT_DBLTYPE * const restrict PRIM_INT__k_s_i_s = primwork + 117006;
136     SIMINT_DBLTYPE * const restrict PRIM_INT__k_s_k_s = primwork + 123054;
137     SIMINT_DBLTYPE * const restrict PRIM_INT__k_s_l_s = primwork + 129534;
138     SIMINT_DBLTYPE * const restrict PRIM_INT__k_s_m_s = primwork + 136014;
139     SIMINT_DBLTYPE * const restrict PRIM_INT__k_s_n_s = primwork + 141954;
140     SIMINT_DBLTYPE * const restrict PRIM_INT__k_s_o_s = primwork + 146706;
141     SIMINT_DBLTYPE * const restrict PRIM_INT__l_s_s_s = primwork + 149514;
142     SIMINT_DBLTYPE * const restrict PRIM_INT__l_s_p_s = primwork + 150189;
143     SIMINT_DBLTYPE * const restrict PRIM_INT__l_s_d_s = primwork + 151674;
144     SIMINT_DBLTYPE * const restrict PRIM_INT__l_s_f_s = primwork + 154374;
145     SIMINT_DBLTYPE * const restrict PRIM_INT__l_s_g_s = primwork + 158424;
146     SIMINT_DBLTYPE * const restrict PRIM_INT__l_s_h_s = primwork + 163824;
147     SIMINT_DBLTYPE * const restrict PRIM_INT__l_s_i_s = primwork + 170439;
148     SIMINT_DBLTYPE * const restrict PRIM_INT__l_s_k_s = primwork + 177999;
149     SIMINT_DBLTYPE * const restrict PRIM_INT__l_s_l_s = primwork + 186099;
150     SIMINT_DBLTYPE * const restrict PRIM_INT__l_s_m_s = primwork + 194199;
151     SIMINT_DBLTYPE * const restrict PRIM_INT__l_s_n_s = primwork + 201624;
152     SIMINT_DBLTYPE * const restrict PRIM_INT__l_s_o_s = primwork + 207564;
153     SIMINT_DBLTYPE * const restrict PRIM_INT__m_s_s_s = primwork + 211074;
154     SIMINT_DBLTYPE * const restrict PRIM_INT__m_s_p_s = primwork + 211844;
155     SIMINT_DBLTYPE * const restrict PRIM_INT__m_s_d_s = primwork + 213659;
156     SIMINT_DBLTYPE * const restrict PRIM_INT__m_s_f_s = primwork + 216959;
157     SIMINT_DBLTYPE * const restrict PRIM_INT__m_s_g_s = primwork + 221909;
158     SIMINT_DBLTYPE * const restrict PRIM_INT__m_s_h_s = primwork + 228509;
159     SIMINT_DBLTYPE * const restrict PRIM_INT__m_s_i_s = primwork + 236594;
160     SIMINT_DBLTYPE * const restrict PRIM_INT__m_s_k_s = primwork + 245834;
161     SIMINT_DBLTYPE * const restrict PRIM_INT__m_s_l_s = primwork + 255734;
162     SIMINT_DBLTYPE * const restrict PRIM_INT__m_s_m_s = primwork + 265634;
163     SIMINT_DBLTYPE * const restrict PRIM_INT__m_s_n_s = primwork + 274709;
164     SIMINT_DBLTYPE * const restrict PRIM_INT__m_s_o_s = primwork + 281969;
165     SIMINT_DBLTYPE * const restrict PRIM_INT__n_s_s_s = primwork + 286259;
166     SIMINT_DBLTYPE * const restrict PRIM_INT__n_s_p_s = primwork + 287117;
167     SIMINT_DBLTYPE * const restrict PRIM_INT__n_s_d_s = primwork + 289295;
168     SIMINT_DBLTYPE * const restrict PRIM_INT__n_s_f_s = primwork + 293255;
169     SIMINT_DBLTYPE * const restrict PRIM_INT__n_s_g_s = primwork + 299195;
170     SIMINT_DBLTYPE * const restrict PRIM_INT__n_s_h_s = primwork + 307115;
171     SIMINT_DBLTYPE * const restrict PRIM_INT__n_s_i_s = primwork + 316817;
172     SIMINT_DBLTYPE * const restrict PRIM_INT__n_s_k_s = primwork + 327905;
173     SIMINT_DBLTYPE * const restrict PRIM_INT__n_s_l_s = primwork + 339785;
174     SIMINT_DBLTYPE * const restrict PRIM_INT__n_s_m_s = primwork + 351665;
175     SIMINT_DBLTYPE * const restrict PRIM_INT__n_s_n_s = primwork + 362555;
176     SIMINT_DBLTYPE * const restrict PRIM_INT__n_s_o_s = primwork + 371267;
177     SIMINT_DBLTYPE * const restrict PRIM_INT__o_s_s_s = primwork + 376415;
178     SIMINT_DBLTYPE * const restrict PRIM_INT__o_s_p_s = primwork + 377351;
179     SIMINT_DBLTYPE * const restrict PRIM_INT__o_s_d_s = primwork + 379925;
180     SIMINT_DBLTYPE * const restrict PRIM_INT__o_s_f_s = primwork + 384605;
181     SIMINT_DBLTYPE * const restrict PRIM_INT__o_s_g_s = primwork + 391625;
182     SIMINT_DBLTYPE * const restrict PRIM_INT__o_s_h_s = primwork + 400985;
183     SIMINT_DBLTYPE * const restrict PRIM_INT__o_s_i_s = primwork + 412451;
184     SIMINT_DBLTYPE * const restrict PRIM_INT__o_s_k_s = primwork + 425555;
185     SIMINT_DBLTYPE * const restrict PRIM_INT__o_s_l_s = primwork + 439595;
186     SIMINT_DBLTYPE * const restrict PRIM_INT__o_s_m_s = primwork + 453635;
187     SIMINT_DBLTYPE * const restrict PRIM_INT__o_s_n_s = primwork + 466505;
188     SIMINT_DBLTYPE * const restrict PRIM_INT__o_s_o_s = primwork + 476801;
189     double * const hrrwork = (double *)(primwork + 482885);
190     double * const HRR_INT__i_p_i_s = hrrwork + 0;
191     double * const HRR_INT__i_p_k_s = hrrwork + 2352;
192     double * const HRR_INT__i_p_l_s = hrrwork + 5376;
193     double * const HRR_INT__i_p_m_s = hrrwork + 9156;
194     double * const HRR_INT__i_p_n_s = hrrwork + 13776;
195     double * const HRR_INT__i_p_o_s = hrrwork + 19320;
196     double * const HRR_INT__i_d_i_s = hrrwork + 25872;
197     double * const HRR_INT__i_d_k_s = hrrwork + 30576;
198     double * const HRR_INT__i_d_l_s = hrrwork + 36624;
199     double * const HRR_INT__i_d_m_s = hrrwork + 44184;
200     double * const HRR_INT__i_d_n_s = hrrwork + 53424;
201     double * const HRR_INT__i_d_o_s = hrrwork + 64512;
202     double * const HRR_INT__i_f_i_s = hrrwork + 77616;
203     double * const HRR_INT__i_f_k_s = hrrwork + 85456;
204     double * const HRR_INT__i_f_l_s = hrrwork + 95536;
205     double * const HRR_INT__i_f_m_s = hrrwork + 108136;
206     double * const HRR_INT__i_f_n_s = hrrwork + 123536;
207     double * const HRR_INT__i_f_o_s = hrrwork + 142016;
208     double * const HRR_INT__i_g_i_s = hrrwork + 163856;
209     double * const HRR_INT__i_g_k_s = hrrwork + 175616;
210     double * const HRR_INT__i_g_l_s = hrrwork + 190736;
211     double * const HRR_INT__i_g_m_s = hrrwork + 209636;
212     double * const HRR_INT__i_g_n_s = hrrwork + 232736;
213     double * const HRR_INT__i_g_o_s = hrrwork + 260456;
214     double * const HRR_INT__i_h_i_s = hrrwork + 293216;
215     double * const HRR_INT__i_h_i_p = hrrwork + 309680;
216     double * const HRR_INT__i_h_i_d = hrrwork + 359072;
217     double * const HRR_INT__i_h_i_f = hrrwork + 457856;
218     double * const HRR_INT__i_h_i_g = hrrwork + 622496;
219     double * const HRR_INT__i_h_k_s = hrrwork + 869456;
220     double * const HRR_INT__i_h_k_p = hrrwork + 890624;
221     double * const HRR_INT__i_h_k_d = hrrwork + 954128;
222     double * const HRR_INT__i_h_k_f = hrrwork + 1081136;
223     double * const HRR_INT__i_h_k_g = hrrwork + 1292816;
224     double * const HRR_INT__i_h_l_s = hrrwork + 1610336;
225     double * const HRR_INT__i_h_l_p = hrrwork + 1636796;
226     double * const HRR_INT__i_h_l_d = hrrwork + 1716176;
227     double * const HRR_INT__i_h_l_f = hrrwork + 1874936;
228     double * const HRR_INT__i_h_m_s = hrrwork + 2139536;
229     double * const HRR_INT__i_h_m_p = hrrwork + 2171876;
230     double * const HRR_INT__i_h_m_d = hrrwork + 2268896;
231     double * const HRR_INT__i_h_n_s = hrrwork + 2462936;
232     double * const HRR_INT__i_h_n_p = hrrwork + 2501744;
233     double * const HRR_INT__i_h_o_s = hrrwork + 2618168;
234     double * const HRR_INT__k_p_i_s = hrrwork + 2664032;
235     double * const HRR_INT__k_p_k_s = hrrwork + 2667056;
236     double * const HRR_INT__k_p_l_s = hrrwork + 2670944;
237     double * const HRR_INT__k_p_m_s = hrrwork + 2675804;
238     double * const HRR_INT__k_p_n_s = hrrwork + 2681744;
239     double * const HRR_INT__k_p_o_s = hrrwork + 2688872;
240     double * const HRR_INT__k_d_i_s = hrrwork + 2697296;
241     double * const HRR_INT__k_d_k_s = hrrwork + 2703344;
242     double * const HRR_INT__k_d_l_s = hrrwork + 2711120;
243     double * const HRR_INT__k_d_m_s = hrrwork + 2720840;
244     double * const HRR_INT__k_d_n_s = hrrwork + 2732720;
245     double * const HRR_INT__k_d_o_s = hrrwork + 2746976;
246     double * const HRR_INT__k_f_i_s = hrrwork + 2763824;
247     double * const HRR_INT__k_f_k_s = hrrwork + 2773904;
248     double * const HRR_INT__k_f_l_s = hrrwork + 2786864;
249     double * const HRR_INT__k_f_m_s = hrrwork + 2803064;
250     double * const HRR_INT__k_f_n_s = hrrwork + 2822864;
251     double * const HRR_INT__k_f_o_s = hrrwork + 2846624;
252     double * const HRR_INT__k_g_i_s = hrrwork + 2874704;
253     double * const HRR_INT__k_g_k_s = hrrwork + 2889824;
254     double * const HRR_INT__k_g_l_s = hrrwork + 2909264;
255     double * const HRR_INT__k_g_m_s = hrrwork + 2933564;
256     double * const HRR_INT__k_g_n_s = hrrwork + 2963264;
257     double * const HRR_INT__k_g_o_s = hrrwork + 2998904;
258     double * const HRR_INT__l_p_i_s = hrrwork + 3041024;
259     double * const HRR_INT__l_p_k_s = hrrwork + 3044804;
260     double * const HRR_INT__l_p_l_s = hrrwork + 3049664;
261     double * const HRR_INT__l_p_m_s = hrrwork + 3055739;
262     double * const HRR_INT__l_p_n_s = hrrwork + 3063164;
263     double * const HRR_INT__l_p_o_s = hrrwork + 3072074;
264     double * const HRR_INT__l_d_i_s = hrrwork + 3082604;
265     double * const HRR_INT__l_d_k_s = hrrwork + 3090164;
266     double * const HRR_INT__l_d_l_s = hrrwork + 3099884;
267     double * const HRR_INT__l_d_m_s = hrrwork + 3112034;
268     double * const HRR_INT__l_d_n_s = hrrwork + 3126884;
269     double * const HRR_INT__l_d_o_s = hrrwork + 3144704;
270     double * const HRR_INT__l_f_i_s = hrrwork + 3165764;
271     double * const HRR_INT__l_f_k_s = hrrwork + 3178364;
272     double * const HRR_INT__l_f_l_s = hrrwork + 3194564;
273     double * const HRR_INT__l_f_m_s = hrrwork + 3214814;
274     double * const HRR_INT__l_f_n_s = hrrwork + 3239564;
275     double * const HRR_INT__l_f_o_s = hrrwork + 3269264;
276     double * const HRR_INT__m_p_i_s = hrrwork + 3304364;
277     double * const HRR_INT__m_p_k_s = hrrwork + 3308984;
278     double * const HRR_INT__m_p_l_s = hrrwork + 3314924;
279     double * const HRR_INT__m_p_m_s = hrrwork + 3322349;
280     double * const HRR_INT__m_p_n_s = hrrwork + 3331424;
281     double * const HRR_INT__m_p_o_s = hrrwork + 3342314;
282     double * const HRR_INT__m_d_i_s = hrrwork + 3355184;
283     double * const HRR_INT__m_d_k_s = hrrwork + 3364424;
284     double * const HRR_INT__m_d_l_s = hrrwork + 3376304;
285     double * const HRR_INT__m_d_m_s = hrrwork + 3391154;
286     double * const HRR_INT__m_d_n_s = hrrwork + 3409304;
287     double * const HRR_INT__m_d_o_s = hrrwork + 3431084;
288     double * const HRR_INT__n_p_i_s = hrrwork + 3456824;
289     double * const HRR_INT__n_p_k_s = hrrwork + 3462368;
290     double * const HRR_INT__n_p_l_s = hrrwork + 3469496;
291     double * const HRR_INT__n_p_m_s = hrrwork + 3478406;
292     double * const HRR_INT__n_p_n_s = hrrwork + 3489296;
293     double * const HRR_INT__n_p_o_s = hrrwork + 3502364;
294 
295 
296     // Create constants
297     const SIMINT_DBLTYPE const_1 = SIMINT_DBLSET1(1);
298     const SIMINT_DBLTYPE const_10 = SIMINT_DBLSET1(10);
299     const SIMINT_DBLTYPE const_11 = SIMINT_DBLSET1(11);
300     const SIMINT_DBLTYPE const_2 = SIMINT_DBLSET1(2);
301     const SIMINT_DBLTYPE const_3 = SIMINT_DBLSET1(3);
302     const SIMINT_DBLTYPE const_4 = SIMINT_DBLSET1(4);
303     const SIMINT_DBLTYPE const_5 = SIMINT_DBLSET1(5);
304     const SIMINT_DBLTYPE const_6 = SIMINT_DBLSET1(6);
305     const SIMINT_DBLTYPE const_7 = SIMINT_DBLSET1(7);
306     const SIMINT_DBLTYPE const_8 = SIMINT_DBLSET1(8);
307     const SIMINT_DBLTYPE const_9 = SIMINT_DBLSET1(9);
308     const SIMINT_DBLTYPE one_half = SIMINT_DBLSET1(0.5);
309 
310 
311     ////////////////////////////////////////
312     // Loop over shells and primitives
313     ////////////////////////////////////////
314 
315     real_abcd = 0;
316     istart = 0;
317     for(ab = 0; ab < P.nshell12_clip; ++ab)
318     {
319         const int iend = istart + P.nprim12[ab];
320 
321         cd = 0;
322         jstart = 0;
323 
324         for(cd = 0; cd < Q.nshell12_clip; cd += SIMINT_NSHELL_SIMD)
325         {
326             const int nshellbatch = ((cd + SIMINT_NSHELL_SIMD) > Q.nshell12_clip) ? Q.nshell12_clip - cd : SIMINT_NSHELL_SIMD;
327             int jend = jstart;
328             for(i = 0; i < nshellbatch; i++)
329                 jend += Q.nprim12[cd+i];
330 
331             // Clear the beginning of the workspace (where we are accumulating integrals)
332             memset(work, 0, SIMINT_NSHELL_SIMD * 94864 * sizeof(double));
333             abcd = 0;
334 
335 
336             for(i = istart; i < iend; ++i)
337             {
338                 SIMINT_DBLTYPE bra_screen_max;  // only used if check_screen
339 
340                 if(check_screen)
341                 {
342                     // Skip this whole thing if always insignificant
343                     if((P.screen[i] * Q.screen_max) < screen_tol)
344                         continue;
345                     bra_screen_max = SIMINT_DBLSET1(P.screen[i]);
346                 }
347 
348                 icd = 0;
349                 iprimcd = 0;
350                 nprim_icd = Q.nprim12[cd];
351                 double * restrict PRIM_PTR_INT__i_s_i_s = INT__i_s_i_s + abcd * 784;
352                 double * restrict PRIM_PTR_INT__i_s_k_s = INT__i_s_k_s + abcd * 1008;
353                 double * restrict PRIM_PTR_INT__i_s_l_s = INT__i_s_l_s + abcd * 1260;
354                 double * restrict PRIM_PTR_INT__i_s_m_s = INT__i_s_m_s + abcd * 1540;
355                 double * restrict PRIM_PTR_INT__i_s_n_s = INT__i_s_n_s + abcd * 1848;
356                 double * restrict PRIM_PTR_INT__i_s_o_s = INT__i_s_o_s + abcd * 2184;
357                 double * restrict PRIM_PTR_INT__k_s_i_s = INT__k_s_i_s + abcd * 1008;
358                 double * restrict PRIM_PTR_INT__k_s_k_s = INT__k_s_k_s + abcd * 1296;
359                 double * restrict PRIM_PTR_INT__k_s_l_s = INT__k_s_l_s + abcd * 1620;
360                 double * restrict PRIM_PTR_INT__k_s_m_s = INT__k_s_m_s + abcd * 1980;
361                 double * restrict PRIM_PTR_INT__k_s_n_s = INT__k_s_n_s + abcd * 2376;
362                 double * restrict PRIM_PTR_INT__k_s_o_s = INT__k_s_o_s + abcd * 2808;
363                 double * restrict PRIM_PTR_INT__l_s_i_s = INT__l_s_i_s + abcd * 1260;
364                 double * restrict PRIM_PTR_INT__l_s_k_s = INT__l_s_k_s + abcd * 1620;
365                 double * restrict PRIM_PTR_INT__l_s_l_s = INT__l_s_l_s + abcd * 2025;
366                 double * restrict PRIM_PTR_INT__l_s_m_s = INT__l_s_m_s + abcd * 2475;
367                 double * restrict PRIM_PTR_INT__l_s_n_s = INT__l_s_n_s + abcd * 2970;
368                 double * restrict PRIM_PTR_INT__l_s_o_s = INT__l_s_o_s + abcd * 3510;
369                 double * restrict PRIM_PTR_INT__m_s_i_s = INT__m_s_i_s + abcd * 1540;
370                 double * restrict PRIM_PTR_INT__m_s_k_s = INT__m_s_k_s + abcd * 1980;
371                 double * restrict PRIM_PTR_INT__m_s_l_s = INT__m_s_l_s + abcd * 2475;
372                 double * restrict PRIM_PTR_INT__m_s_m_s = INT__m_s_m_s + abcd * 3025;
373                 double * restrict PRIM_PTR_INT__m_s_n_s = INT__m_s_n_s + abcd * 3630;
374                 double * restrict PRIM_PTR_INT__m_s_o_s = INT__m_s_o_s + abcd * 4290;
375                 double * restrict PRIM_PTR_INT__n_s_i_s = INT__n_s_i_s + abcd * 1848;
376                 double * restrict PRIM_PTR_INT__n_s_k_s = INT__n_s_k_s + abcd * 2376;
377                 double * restrict PRIM_PTR_INT__n_s_l_s = INT__n_s_l_s + abcd * 2970;
378                 double * restrict PRIM_PTR_INT__n_s_m_s = INT__n_s_m_s + abcd * 3630;
379                 double * restrict PRIM_PTR_INT__n_s_n_s = INT__n_s_n_s + abcd * 4356;
380                 double * restrict PRIM_PTR_INT__n_s_o_s = INT__n_s_o_s + abcd * 5148;
381                 double * restrict PRIM_PTR_INT__o_s_i_s = INT__o_s_i_s + abcd * 2184;
382                 double * restrict PRIM_PTR_INT__o_s_k_s = INT__o_s_k_s + abcd * 2808;
383                 double * restrict PRIM_PTR_INT__o_s_l_s = INT__o_s_l_s + abcd * 3510;
384                 double * restrict PRIM_PTR_INT__o_s_m_s = INT__o_s_m_s + abcd * 4290;
385                 double * restrict PRIM_PTR_INT__o_s_n_s = INT__o_s_n_s + abcd * 5148;
386                 double * restrict PRIM_PTR_INT__o_s_o_s = INT__o_s_o_s + abcd * 6084;
387 
388 
389 
390                 // Load these one per loop over i
391                 const SIMINT_DBLTYPE P_alpha = SIMINT_DBLSET1(P.alpha[i]);
392                 const SIMINT_DBLTYPE P_prefac = SIMINT_DBLSET1(P.prefac[i]);
393                 const SIMINT_DBLTYPE Pxyz[3] = { SIMINT_DBLSET1(P.x[i]), SIMINT_DBLSET1(P.y[i]), SIMINT_DBLSET1(P.z[i]) };
394 
395                 const SIMINT_DBLTYPE P_PA[3] = { SIMINT_DBLSET1(P.PA_x[i]), SIMINT_DBLSET1(P.PA_y[i]), SIMINT_DBLSET1(P.PA_z[i]) };
396 
397                 for(j = jstart; j < jend; j += SIMINT_SIMD_LEN)
398                 {
399                     // calculate the shell offsets
400                     // these are the offset from the shell pointed to by cd
401                     // for each element
402                     int shelloffsets[SIMINT_SIMD_LEN] = {0};
403                     int lastoffset = 0;
404                     const int nlane = ( ((j + SIMINT_SIMD_LEN) < jend) ? SIMINT_SIMD_LEN : (jend - j));
405 
406                     if((iprimcd + SIMINT_SIMD_LEN) >= nprim_icd)
407                     {
408                         // Handle if the first element of the vector is a new shell
409                         if(iprimcd >= nprim_icd && ((icd+1) < nshellbatch))
410                         {
411                             nprim_icd += Q.nprim12[cd + (++icd)];
412                             PRIM_PTR_INT__i_s_i_s += 784;
413                             PRIM_PTR_INT__i_s_k_s += 1008;
414                             PRIM_PTR_INT__i_s_l_s += 1260;
415                             PRIM_PTR_INT__i_s_m_s += 1540;
416                             PRIM_PTR_INT__i_s_n_s += 1848;
417                             PRIM_PTR_INT__i_s_o_s += 2184;
418                             PRIM_PTR_INT__k_s_i_s += 1008;
419                             PRIM_PTR_INT__k_s_k_s += 1296;
420                             PRIM_PTR_INT__k_s_l_s += 1620;
421                             PRIM_PTR_INT__k_s_m_s += 1980;
422                             PRIM_PTR_INT__k_s_n_s += 2376;
423                             PRIM_PTR_INT__k_s_o_s += 2808;
424                             PRIM_PTR_INT__l_s_i_s += 1260;
425                             PRIM_PTR_INT__l_s_k_s += 1620;
426                             PRIM_PTR_INT__l_s_l_s += 2025;
427                             PRIM_PTR_INT__l_s_m_s += 2475;
428                             PRIM_PTR_INT__l_s_n_s += 2970;
429                             PRIM_PTR_INT__l_s_o_s += 3510;
430                             PRIM_PTR_INT__m_s_i_s += 1540;
431                             PRIM_PTR_INT__m_s_k_s += 1980;
432                             PRIM_PTR_INT__m_s_l_s += 2475;
433                             PRIM_PTR_INT__m_s_m_s += 3025;
434                             PRIM_PTR_INT__m_s_n_s += 3630;
435                             PRIM_PTR_INT__m_s_o_s += 4290;
436                             PRIM_PTR_INT__n_s_i_s += 1848;
437                             PRIM_PTR_INT__n_s_k_s += 2376;
438                             PRIM_PTR_INT__n_s_l_s += 2970;
439                             PRIM_PTR_INT__n_s_m_s += 3630;
440                             PRIM_PTR_INT__n_s_n_s += 4356;
441                             PRIM_PTR_INT__n_s_o_s += 5148;
442                             PRIM_PTR_INT__o_s_i_s += 2184;
443                             PRIM_PTR_INT__o_s_k_s += 2808;
444                             PRIM_PTR_INT__o_s_l_s += 3510;
445                             PRIM_PTR_INT__o_s_m_s += 4290;
446                             PRIM_PTR_INT__o_s_n_s += 5148;
447                             PRIM_PTR_INT__o_s_o_s += 6084;
448                         }
449                         iprimcd++;
450                         for(n = 1; n < SIMINT_SIMD_LEN; ++n)
451                         {
452                             if(iprimcd >= nprim_icd && ((icd+1) < nshellbatch))
453                             {
454                                 shelloffsets[n] = shelloffsets[n-1] + 1;
455                                 lastoffset++;
456                                 nprim_icd += Q.nprim12[cd + (++icd)];
457                             }
458                             else
459                                 shelloffsets[n] = shelloffsets[n-1];
460                             iprimcd++;
461                         }
462                     }
463                     else
464                         iprimcd += SIMINT_SIMD_LEN;
465 
466                     // Do we have to compute this vector (or has it been screened out)?
467                     // (not_screened != 0 means we have to do this vector)
468                     if(check_screen)
469                     {
470                         const double vmax = vector_max(SIMINT_MUL(bra_screen_max, SIMINT_DBLLOAD(Q.screen, j)));
471                         if(vmax < screen_tol)
472                         {
473                             PRIM_PTR_INT__i_s_i_s += lastoffset*784;
474                             PRIM_PTR_INT__i_s_k_s += lastoffset*1008;
475                             PRIM_PTR_INT__i_s_l_s += lastoffset*1260;
476                             PRIM_PTR_INT__i_s_m_s += lastoffset*1540;
477                             PRIM_PTR_INT__i_s_n_s += lastoffset*1848;
478                             PRIM_PTR_INT__i_s_o_s += lastoffset*2184;
479                             PRIM_PTR_INT__k_s_i_s += lastoffset*1008;
480                             PRIM_PTR_INT__k_s_k_s += lastoffset*1296;
481                             PRIM_PTR_INT__k_s_l_s += lastoffset*1620;
482                             PRIM_PTR_INT__k_s_m_s += lastoffset*1980;
483                             PRIM_PTR_INT__k_s_n_s += lastoffset*2376;
484                             PRIM_PTR_INT__k_s_o_s += lastoffset*2808;
485                             PRIM_PTR_INT__l_s_i_s += lastoffset*1260;
486                             PRIM_PTR_INT__l_s_k_s += lastoffset*1620;
487                             PRIM_PTR_INT__l_s_l_s += lastoffset*2025;
488                             PRIM_PTR_INT__l_s_m_s += lastoffset*2475;
489                             PRIM_PTR_INT__l_s_n_s += lastoffset*2970;
490                             PRIM_PTR_INT__l_s_o_s += lastoffset*3510;
491                             PRIM_PTR_INT__m_s_i_s += lastoffset*1540;
492                             PRIM_PTR_INT__m_s_k_s += lastoffset*1980;
493                             PRIM_PTR_INT__m_s_l_s += lastoffset*2475;
494                             PRIM_PTR_INT__m_s_m_s += lastoffset*3025;
495                             PRIM_PTR_INT__m_s_n_s += lastoffset*3630;
496                             PRIM_PTR_INT__m_s_o_s += lastoffset*4290;
497                             PRIM_PTR_INT__n_s_i_s += lastoffset*1848;
498                             PRIM_PTR_INT__n_s_k_s += lastoffset*2376;
499                             PRIM_PTR_INT__n_s_l_s += lastoffset*2970;
500                             PRIM_PTR_INT__n_s_m_s += lastoffset*3630;
501                             PRIM_PTR_INT__n_s_n_s += lastoffset*4356;
502                             PRIM_PTR_INT__n_s_o_s += lastoffset*5148;
503                             PRIM_PTR_INT__o_s_i_s += lastoffset*2184;
504                             PRIM_PTR_INT__o_s_k_s += lastoffset*2808;
505                             PRIM_PTR_INT__o_s_l_s += lastoffset*3510;
506                             PRIM_PTR_INT__o_s_m_s += lastoffset*4290;
507                             PRIM_PTR_INT__o_s_n_s += lastoffset*5148;
508                             PRIM_PTR_INT__o_s_o_s += lastoffset*6084;
509                             continue;
510                         }
511                     }
512 
513                     const SIMINT_DBLTYPE Q_alpha = SIMINT_DBLLOAD(Q.alpha, j);
514                     const SIMINT_DBLTYPE PQalpha_mul = SIMINT_MUL(P_alpha, Q_alpha);
515                     const SIMINT_DBLTYPE PQalpha_sum = SIMINT_ADD(P_alpha, Q_alpha);
516                     const SIMINT_DBLTYPE one_over_PQalpha_sum = SIMINT_DIV(const_1, PQalpha_sum);
517 
518 
519                     /* construct R2 = (Px - Qx)**2 + (Py - Qy)**2 + (Pz -Qz)**2 */
520                     SIMINT_DBLTYPE PQ[3];
521                     PQ[0] = SIMINT_SUB(Pxyz[0], SIMINT_DBLLOAD(Q.x, j));
522                     PQ[1] = SIMINT_SUB(Pxyz[1], SIMINT_DBLLOAD(Q.y, j));
523                     PQ[2] = SIMINT_SUB(Pxyz[2], SIMINT_DBLLOAD(Q.z, j));
524                     SIMINT_DBLTYPE R2 = SIMINT_MUL(PQ[0], PQ[0]);
525                     R2 = SIMINT_FMADD(PQ[1], PQ[1], R2);
526                     R2 = SIMINT_FMADD(PQ[2], PQ[2], R2);
527 
528                     const SIMINT_DBLTYPE alpha = SIMINT_MUL(PQalpha_mul, one_over_PQalpha_sum); // alpha from MEST
529                     const SIMINT_DBLTYPE one_over_p = SIMINT_DIV(const_1, P_alpha);
530                     const SIMINT_DBLTYPE one_over_q = SIMINT_DIV(const_1, Q_alpha);
531                     const SIMINT_DBLTYPE one_over_2p = SIMINT_MUL(one_half, one_over_p);
532                     const SIMINT_DBLTYPE one_over_2q = SIMINT_MUL(one_half, one_over_q);
533                     const SIMINT_DBLTYPE one_over_2pq = SIMINT_MUL(one_half, one_over_PQalpha_sum);
534                     const SIMINT_DBLTYPE Q_PA[3] = { SIMINT_DBLLOAD(Q.PA_x, j), SIMINT_DBLLOAD(Q.PA_y, j), SIMINT_DBLLOAD(Q.PA_z, j) };
535 
536                     // NOTE: Minus sign!
537                     const SIMINT_DBLTYPE a_over_p = SIMINT_MUL(SIMINT_NEG(alpha), one_over_p);
538                     SIMINT_DBLTYPE aop_PQ[3];
539                     aop_PQ[0] = SIMINT_MUL(a_over_p, PQ[0]);
540                     aop_PQ[1] = SIMINT_MUL(a_over_p, PQ[1]);
541                     aop_PQ[2] = SIMINT_MUL(a_over_p, PQ[2]);
542 
543                     SIMINT_DBLTYPE a_over_q = SIMINT_MUL(alpha, one_over_q);
544                     SIMINT_DBLTYPE aoq_PQ[3];
545                     aoq_PQ[0] = SIMINT_MUL(a_over_q, PQ[0]);
546                     aoq_PQ[1] = SIMINT_MUL(a_over_q, PQ[1]);
547                     aoq_PQ[2] = SIMINT_MUL(a_over_q, PQ[2]);
548                     // Put a minus sign here so we don't have to in RR routines
549                     a_over_q = SIMINT_NEG(a_over_q);
550 
551 
552                     //////////////////////////////////////////////
553                     // Fjt function section
554                     // Maximum v value: 22
555                     //////////////////////////////////////////////
556                     // The parameter to the Fjt function
557                     const SIMINT_DBLTYPE F_x = SIMINT_MUL(R2, alpha);
558 
559 
560                     const SIMINT_DBLTYPE Q_prefac = mask_load(nlane, Q.prefac + j);
561 
562 
563                     boys_F_split(PRIM_INT__s_s_s_s, F_x, 22);
564                     SIMINT_DBLTYPE prefac = SIMINT_SQRT(one_over_PQalpha_sum);
565                     prefac = SIMINT_MUL(SIMINT_MUL(P_prefac, Q_prefac), prefac);
566                     for(n = 0; n <= 22; n++)
567                         PRIM_INT__s_s_s_s[n] = SIMINT_MUL(PRIM_INT__s_s_s_s[n], prefac);
568 
569                     //////////////////////////////////////////////
570                     // Primitive integrals: Vertical recurrance
571                     //////////////////////////////////////////////
572 
573                     const SIMINT_DBLTYPE vrr_const_1_over_2p = one_over_2p;
574                     const SIMINT_DBLTYPE vrr_const_2_over_2p = SIMINT_MUL(const_2, one_over_2p);
575                     const SIMINT_DBLTYPE vrr_const_3_over_2p = SIMINT_MUL(const_3, one_over_2p);
576                     const SIMINT_DBLTYPE vrr_const_4_over_2p = SIMINT_MUL(const_4, one_over_2p);
577                     const SIMINT_DBLTYPE vrr_const_5_over_2p = SIMINT_MUL(const_5, one_over_2p);
578                     const SIMINT_DBLTYPE vrr_const_6_over_2p = SIMINT_MUL(const_6, one_over_2p);
579                     const SIMINT_DBLTYPE vrr_const_7_over_2p = SIMINT_MUL(const_7, one_over_2p);
580                     const SIMINT_DBLTYPE vrr_const_8_over_2p = SIMINT_MUL(const_8, one_over_2p);
581                     const SIMINT_DBLTYPE vrr_const_9_over_2p = SIMINT_MUL(const_9, one_over_2p);
582                     const SIMINT_DBLTYPE vrr_const_10_over_2p = SIMINT_MUL(const_10, one_over_2p);
583                     const SIMINT_DBLTYPE vrr_const_1_over_2q = one_over_2q;
584                     const SIMINT_DBLTYPE vrr_const_2_over_2q = SIMINT_MUL(const_2, one_over_2q);
585                     const SIMINT_DBLTYPE vrr_const_3_over_2q = SIMINT_MUL(const_3, one_over_2q);
586                     const SIMINT_DBLTYPE vrr_const_4_over_2q = SIMINT_MUL(const_4, one_over_2q);
587                     const SIMINT_DBLTYPE vrr_const_5_over_2q = SIMINT_MUL(const_5, one_over_2q);
588                     const SIMINT_DBLTYPE vrr_const_6_over_2q = SIMINT_MUL(const_6, one_over_2q);
589                     const SIMINT_DBLTYPE vrr_const_7_over_2q = SIMINT_MUL(const_7, one_over_2q);
590                     const SIMINT_DBLTYPE vrr_const_8_over_2q = SIMINT_MUL(const_8, one_over_2q);
591                     const SIMINT_DBLTYPE vrr_const_9_over_2q = SIMINT_MUL(const_9, one_over_2q);
592                     const SIMINT_DBLTYPE vrr_const_10_over_2q = SIMINT_MUL(const_10, one_over_2q);
593                     const SIMINT_DBLTYPE vrr_const_1_over_2pq = one_over_2pq;
594                     const SIMINT_DBLTYPE vrr_const_2_over_2pq = SIMINT_MUL(const_2, one_over_2pq);
595                     const SIMINT_DBLTYPE vrr_const_3_over_2pq = SIMINT_MUL(const_3, one_over_2pq);
596                     const SIMINT_DBLTYPE vrr_const_4_over_2pq = SIMINT_MUL(const_4, one_over_2pq);
597                     const SIMINT_DBLTYPE vrr_const_5_over_2pq = SIMINT_MUL(const_5, one_over_2pq);
598                     const SIMINT_DBLTYPE vrr_const_6_over_2pq = SIMINT_MUL(const_6, one_over_2pq);
599                     const SIMINT_DBLTYPE vrr_const_7_over_2pq = SIMINT_MUL(const_7, one_over_2pq);
600                     const SIMINT_DBLTYPE vrr_const_8_over_2pq = SIMINT_MUL(const_8, one_over_2pq);
601                     const SIMINT_DBLTYPE vrr_const_9_over_2pq = SIMINT_MUL(const_9, one_over_2pq);
602                     const SIMINT_DBLTYPE vrr_const_10_over_2pq = SIMINT_MUL(const_10, one_over_2pq);
603                     const SIMINT_DBLTYPE vrr_const_11_over_2pq = SIMINT_MUL(const_11, one_over_2pq);
604 
605 
606 
607                     // Forming PRIM_INT__p_s_s_s[22 * 3];
608                     for(n = 0; n < 22; ++n)  // loop over orders of auxiliary function
609                     {
610 
611                         PRIM_INT__p_s_s_s[n * 3 + 0] = SIMINT_MUL(P_PA[0], PRIM_INT__s_s_s_s[n * 1 + 0]);
612                         PRIM_INT__p_s_s_s[n * 3 + 0] = SIMINT_FMADD( aop_PQ[0], PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__p_s_s_s[n * 3 + 0]);
613 
614                         PRIM_INT__p_s_s_s[n * 3 + 1] = SIMINT_MUL(P_PA[1], PRIM_INT__s_s_s_s[n * 1 + 0]);
615                         PRIM_INT__p_s_s_s[n * 3 + 1] = SIMINT_FMADD( aop_PQ[1], PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__p_s_s_s[n * 3 + 1]);
616 
617                         PRIM_INT__p_s_s_s[n * 3 + 2] = SIMINT_MUL(P_PA[2], PRIM_INT__s_s_s_s[n * 1 + 0]);
618                         PRIM_INT__p_s_s_s[n * 3 + 2] = SIMINT_FMADD( aop_PQ[2], PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__p_s_s_s[n * 3 + 2]);
619 
620                     }
621 
622 
623 
624                     // Forming PRIM_INT__d_s_s_s[21 * 6];
625                     for(n = 0; n < 21; ++n)  // loop over orders of auxiliary function
626                     {
627 
628                         PRIM_INT__d_s_s_s[n * 6 + 0] = SIMINT_MUL(P_PA[0], PRIM_INT__p_s_s_s[n * 3 + 0]);
629                         PRIM_INT__d_s_s_s[n * 6 + 0] = SIMINT_FMADD( aop_PQ[0], PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__d_s_s_s[n * 6 + 0]);
630                         PRIM_INT__d_s_s_s[n * 6 + 0] = SIMINT_FMADD( vrr_const_1_over_2p, SIMINT_FMADD(a_over_p, PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__s_s_s_s[n * 1 + 0]), PRIM_INT__d_s_s_s[n * 6 + 0]);
631 
632                         PRIM_INT__d_s_s_s[n * 6 + 1] = SIMINT_MUL(P_PA[1], PRIM_INT__p_s_s_s[n * 3 + 0]);
633                         PRIM_INT__d_s_s_s[n * 6 + 1] = SIMINT_FMADD( aop_PQ[1], PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__d_s_s_s[n * 6 + 1]);
634 
635                         PRIM_INT__d_s_s_s[n * 6 + 2] = SIMINT_MUL(P_PA[2], PRIM_INT__p_s_s_s[n * 3 + 0]);
636                         PRIM_INT__d_s_s_s[n * 6 + 2] = SIMINT_FMADD( aop_PQ[2], PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__d_s_s_s[n * 6 + 2]);
637 
638                         PRIM_INT__d_s_s_s[n * 6 + 3] = SIMINT_MUL(P_PA[1], PRIM_INT__p_s_s_s[n * 3 + 1]);
639                         PRIM_INT__d_s_s_s[n * 6 + 3] = SIMINT_FMADD( aop_PQ[1], PRIM_INT__p_s_s_s[(n+1) * 3 + 1], PRIM_INT__d_s_s_s[n * 6 + 3]);
640                         PRIM_INT__d_s_s_s[n * 6 + 3] = SIMINT_FMADD( vrr_const_1_over_2p, SIMINT_FMADD(a_over_p, PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__s_s_s_s[n * 1 + 0]), PRIM_INT__d_s_s_s[n * 6 + 3]);
641 
642                         PRIM_INT__d_s_s_s[n * 6 + 4] = SIMINT_MUL(P_PA[2], PRIM_INT__p_s_s_s[n * 3 + 1]);
643                         PRIM_INT__d_s_s_s[n * 6 + 4] = SIMINT_FMADD( aop_PQ[2], PRIM_INT__p_s_s_s[(n+1) * 3 + 1], PRIM_INT__d_s_s_s[n * 6 + 4]);
644 
645                         PRIM_INT__d_s_s_s[n * 6 + 5] = SIMINT_MUL(P_PA[2], PRIM_INT__p_s_s_s[n * 3 + 2]);
646                         PRIM_INT__d_s_s_s[n * 6 + 5] = SIMINT_FMADD( aop_PQ[2], PRIM_INT__p_s_s_s[(n+1) * 3 + 2], PRIM_INT__d_s_s_s[n * 6 + 5]);
647                         PRIM_INT__d_s_s_s[n * 6 + 5] = SIMINT_FMADD( vrr_const_1_over_2p, SIMINT_FMADD(a_over_p, PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__s_s_s_s[n * 1 + 0]), PRIM_INT__d_s_s_s[n * 6 + 5]);
648 
649                     }
650 
651 
652 
653                     // Forming PRIM_INT__f_s_s_s[20 * 10];
654                     for(n = 0; n < 20; ++n)  // loop over orders of auxiliary function
655                     {
656 
657                         PRIM_INT__f_s_s_s[n * 10 + 0] = SIMINT_MUL(P_PA[0], PRIM_INT__d_s_s_s[n * 6 + 0]);
658                         PRIM_INT__f_s_s_s[n * 10 + 0] = SIMINT_FMADD( aop_PQ[0], PRIM_INT__d_s_s_s[(n+1) * 6 + 0], PRIM_INT__f_s_s_s[n * 10 + 0]);
659                         PRIM_INT__f_s_s_s[n * 10 + 0] = SIMINT_FMADD( vrr_const_2_over_2p, SIMINT_FMADD(a_over_p, PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__p_s_s_s[n * 3 + 0]), PRIM_INT__f_s_s_s[n * 10 + 0]);
660 
661                         PRIM_INT__f_s_s_s[n * 10 + 1] = SIMINT_MUL(P_PA[1], PRIM_INT__d_s_s_s[n * 6 + 0]);
662                         PRIM_INT__f_s_s_s[n * 10 + 1] = SIMINT_FMADD( aop_PQ[1], PRIM_INT__d_s_s_s[(n+1) * 6 + 0], PRIM_INT__f_s_s_s[n * 10 + 1]);
663 
664                         PRIM_INT__f_s_s_s[n * 10 + 2] = SIMINT_MUL(P_PA[2], PRIM_INT__d_s_s_s[n * 6 + 0]);
665                         PRIM_INT__f_s_s_s[n * 10 + 2] = SIMINT_FMADD( aop_PQ[2], PRIM_INT__d_s_s_s[(n+1) * 6 + 0], PRIM_INT__f_s_s_s[n * 10 + 2]);
666 
667                         PRIM_INT__f_s_s_s[n * 10 + 3] = SIMINT_MUL(P_PA[0], PRIM_INT__d_s_s_s[n * 6 + 3]);
668                         PRIM_INT__f_s_s_s[n * 10 + 3] = SIMINT_FMADD( aop_PQ[0], PRIM_INT__d_s_s_s[(n+1) * 6 + 3], PRIM_INT__f_s_s_s[n * 10 + 3]);
669 
670                         PRIM_INT__f_s_s_s[n * 10 + 4] = SIMINT_MUL(P_PA[2], PRIM_INT__d_s_s_s[n * 6 + 1]);
671                         PRIM_INT__f_s_s_s[n * 10 + 4] = SIMINT_FMADD( aop_PQ[2], PRIM_INT__d_s_s_s[(n+1) * 6 + 1], PRIM_INT__f_s_s_s[n * 10 + 4]);
672 
673                         PRIM_INT__f_s_s_s[n * 10 + 5] = SIMINT_MUL(P_PA[0], PRIM_INT__d_s_s_s[n * 6 + 5]);
674                         PRIM_INT__f_s_s_s[n * 10 + 5] = SIMINT_FMADD( aop_PQ[0], PRIM_INT__d_s_s_s[(n+1) * 6 + 5], PRIM_INT__f_s_s_s[n * 10 + 5]);
675 
676                         PRIM_INT__f_s_s_s[n * 10 + 6] = SIMINT_MUL(P_PA[1], PRIM_INT__d_s_s_s[n * 6 + 3]);
677                         PRIM_INT__f_s_s_s[n * 10 + 6] = SIMINT_FMADD( aop_PQ[1], PRIM_INT__d_s_s_s[(n+1) * 6 + 3], PRIM_INT__f_s_s_s[n * 10 + 6]);
678                         PRIM_INT__f_s_s_s[n * 10 + 6] = SIMINT_FMADD( vrr_const_2_over_2p, SIMINT_FMADD(a_over_p, PRIM_INT__p_s_s_s[(n+1) * 3 + 1], PRIM_INT__p_s_s_s[n * 3 + 1]), PRIM_INT__f_s_s_s[n * 10 + 6]);
679 
680                         PRIM_INT__f_s_s_s[n * 10 + 7] = SIMINT_MUL(P_PA[2], PRIM_INT__d_s_s_s[n * 6 + 3]);
681                         PRIM_INT__f_s_s_s[n * 10 + 7] = SIMINT_FMADD( aop_PQ[2], PRIM_INT__d_s_s_s[(n+1) * 6 + 3], PRIM_INT__f_s_s_s[n * 10 + 7]);
682 
683                         PRIM_INT__f_s_s_s[n * 10 + 8] = SIMINT_MUL(P_PA[1], PRIM_INT__d_s_s_s[n * 6 + 5]);
684                         PRIM_INT__f_s_s_s[n * 10 + 8] = SIMINT_FMADD( aop_PQ[1], PRIM_INT__d_s_s_s[(n+1) * 6 + 5], PRIM_INT__f_s_s_s[n * 10 + 8]);
685 
686                         PRIM_INT__f_s_s_s[n * 10 + 9] = SIMINT_MUL(P_PA[2], PRIM_INT__d_s_s_s[n * 6 + 5]);
687                         PRIM_INT__f_s_s_s[n * 10 + 9] = SIMINT_FMADD( aop_PQ[2], PRIM_INT__d_s_s_s[(n+1) * 6 + 5], PRIM_INT__f_s_s_s[n * 10 + 9]);
688                         PRIM_INT__f_s_s_s[n * 10 + 9] = SIMINT_FMADD( vrr_const_2_over_2p, SIMINT_FMADD(a_over_p, PRIM_INT__p_s_s_s[(n+1) * 3 + 2], PRIM_INT__p_s_s_s[n * 3 + 2]), PRIM_INT__f_s_s_s[n * 10 + 9]);
689 
690                     }
691 
692 
693                     VRR_I_g_s_s_s(
694                             PRIM_INT__g_s_s_s,
695                             PRIM_INT__f_s_s_s,
696                             PRIM_INT__d_s_s_s,
697                             P_PA,
698                             a_over_p,
699                             aop_PQ,
700                             one_over_2p,
701                             19);
702 
703 
704                     VRR_I_h_s_s_s(
705                             PRIM_INT__h_s_s_s,
706                             PRIM_INT__g_s_s_s,
707                             PRIM_INT__f_s_s_s,
708                             P_PA,
709                             a_over_p,
710                             aop_PQ,
711                             one_over_2p,
712                             18);
713 
714 
715                     ostei_general_vrr1_I(6, 17,
716                             one_over_2p, a_over_p, aop_PQ, P_PA,
717                             PRIM_INT__h_s_s_s, PRIM_INT__g_s_s_s, PRIM_INT__i_s_s_s);
718 
719 
720                     ostei_general_vrr_K(6, 0, 1, 0, 11,
721                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
722                             PRIM_INT__i_s_s_s, NULL, NULL, PRIM_INT__h_s_s_s, NULL, PRIM_INT__i_s_p_s);
723 
724 
725                     ostei_general_vrr_K(5, 0, 1, 0, 11,
726                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
727                             PRIM_INT__h_s_s_s, NULL, NULL, PRIM_INT__g_s_s_s, NULL, PRIM_INT__h_s_p_s);
728 
729 
730                     ostei_general_vrr_K(6, 0, 2, 0, 10,
731                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
732                             PRIM_INT__i_s_p_s, PRIM_INT__i_s_s_s, NULL, PRIM_INT__h_s_p_s, NULL, PRIM_INT__i_s_d_s);
733 
734 
735                     VRR_K_g_s_p_s(
736                             PRIM_INT__g_s_p_s,
737                             PRIM_INT__g_s_s_s,
738                             PRIM_INT__f_s_s_s,
739                             Q_PA,
740                             aoq_PQ,
741                             one_over_2pq,
742                             11);
743 
744 
745                     ostei_general_vrr_K(5, 0, 2, 0, 10,
746                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
747                             PRIM_INT__h_s_p_s, PRIM_INT__h_s_s_s, NULL, PRIM_INT__g_s_p_s, NULL, PRIM_INT__h_s_d_s);
748 
749 
750                     ostei_general_vrr_K(6, 0, 3, 0, 9,
751                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
752                             PRIM_INT__i_s_d_s, PRIM_INT__i_s_p_s, NULL, PRIM_INT__h_s_d_s, NULL, PRIM_INT__i_s_f_s);
753 
754 
755                     VRR_K_f_s_p_s(
756                             PRIM_INT__f_s_p_s,
757                             PRIM_INT__f_s_s_s,
758                             PRIM_INT__d_s_s_s,
759                             Q_PA,
760                             aoq_PQ,
761                             one_over_2pq,
762                             11);
763 
764 
765                     ostei_general_vrr_K(4, 0, 2, 0, 10,
766                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
767                             PRIM_INT__g_s_p_s, PRIM_INT__g_s_s_s, NULL, PRIM_INT__f_s_p_s, NULL, PRIM_INT__g_s_d_s);
768 
769 
770                     ostei_general_vrr_K(5, 0, 3, 0, 9,
771                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
772                             PRIM_INT__h_s_d_s, PRIM_INT__h_s_p_s, NULL, PRIM_INT__g_s_d_s, NULL, PRIM_INT__h_s_f_s);
773 
774 
775                     ostei_general_vrr_K(6, 0, 4, 0, 8,
776                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
777                             PRIM_INT__i_s_f_s, PRIM_INT__i_s_d_s, NULL, PRIM_INT__h_s_f_s, NULL, PRIM_INT__i_s_g_s);
778 
779 
780 
781                     // Forming PRIM_INT__d_s_p_s[11 * 18];
782                     for(n = 0; n < 11; ++n)  // loop over orders of auxiliary function
783                     {
784 
785                         PRIM_INT__d_s_p_s[n * 18 + 0] = SIMINT_MUL(Q_PA[0], PRIM_INT__d_s_s_s[n * 6 + 0]);
786                         PRIM_INT__d_s_p_s[n * 18 + 0] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__d_s_s_s[(n+1) * 6 + 0], PRIM_INT__d_s_p_s[n * 18 + 0]);
787                         PRIM_INT__d_s_p_s[n * 18 + 0] = SIMINT_FMADD( vrr_const_2_over_2pq, PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__d_s_p_s[n * 18 + 0]);
788 
789                         PRIM_INT__d_s_p_s[n * 18 + 1] = SIMINT_MUL(Q_PA[1], PRIM_INT__d_s_s_s[n * 6 + 0]);
790                         PRIM_INT__d_s_p_s[n * 18 + 1] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__d_s_s_s[(n+1) * 6 + 0], PRIM_INT__d_s_p_s[n * 18 + 1]);
791 
792                         PRIM_INT__d_s_p_s[n * 18 + 2] = SIMINT_MUL(Q_PA[2], PRIM_INT__d_s_s_s[n * 6 + 0]);
793                         PRIM_INT__d_s_p_s[n * 18 + 2] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__d_s_s_s[(n+1) * 6 + 0], PRIM_INT__d_s_p_s[n * 18 + 2]);
794 
795                         PRIM_INT__d_s_p_s[n * 18 + 3] = SIMINT_MUL(Q_PA[0], PRIM_INT__d_s_s_s[n * 6 + 1]);
796                         PRIM_INT__d_s_p_s[n * 18 + 3] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__d_s_s_s[(n+1) * 6 + 1], PRIM_INT__d_s_p_s[n * 18 + 3]);
797                         PRIM_INT__d_s_p_s[n * 18 + 3] = SIMINT_FMADD( vrr_const_1_over_2pq, PRIM_INT__p_s_s_s[(n+1) * 3 + 1], PRIM_INT__d_s_p_s[n * 18 + 3]);
798 
799                         PRIM_INT__d_s_p_s[n * 18 + 4] = SIMINT_MUL(Q_PA[1], PRIM_INT__d_s_s_s[n * 6 + 1]);
800                         PRIM_INT__d_s_p_s[n * 18 + 4] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__d_s_s_s[(n+1) * 6 + 1], PRIM_INT__d_s_p_s[n * 18 + 4]);
801                         PRIM_INT__d_s_p_s[n * 18 + 4] = SIMINT_FMADD( vrr_const_1_over_2pq, PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__d_s_p_s[n * 18 + 4]);
802 
803                         PRIM_INT__d_s_p_s[n * 18 + 5] = SIMINT_MUL(Q_PA[2], PRIM_INT__d_s_s_s[n * 6 + 1]);
804                         PRIM_INT__d_s_p_s[n * 18 + 5] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__d_s_s_s[(n+1) * 6 + 1], PRIM_INT__d_s_p_s[n * 18 + 5]);
805 
806                         PRIM_INT__d_s_p_s[n * 18 + 6] = SIMINT_MUL(Q_PA[0], PRIM_INT__d_s_s_s[n * 6 + 2]);
807                         PRIM_INT__d_s_p_s[n * 18 + 6] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__d_s_s_s[(n+1) * 6 + 2], PRIM_INT__d_s_p_s[n * 18 + 6]);
808                         PRIM_INT__d_s_p_s[n * 18 + 6] = SIMINT_FMADD( vrr_const_1_over_2pq, PRIM_INT__p_s_s_s[(n+1) * 3 + 2], PRIM_INT__d_s_p_s[n * 18 + 6]);
809 
810                         PRIM_INT__d_s_p_s[n * 18 + 7] = SIMINT_MUL(Q_PA[1], PRIM_INT__d_s_s_s[n * 6 + 2]);
811                         PRIM_INT__d_s_p_s[n * 18 + 7] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__d_s_s_s[(n+1) * 6 + 2], PRIM_INT__d_s_p_s[n * 18 + 7]);
812 
813                         PRIM_INT__d_s_p_s[n * 18 + 8] = SIMINT_MUL(Q_PA[2], PRIM_INT__d_s_s_s[n * 6 + 2]);
814                         PRIM_INT__d_s_p_s[n * 18 + 8] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__d_s_s_s[(n+1) * 6 + 2], PRIM_INT__d_s_p_s[n * 18 + 8]);
815                         PRIM_INT__d_s_p_s[n * 18 + 8] = SIMINT_FMADD( vrr_const_1_over_2pq, PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__d_s_p_s[n * 18 + 8]);
816 
817                         PRIM_INT__d_s_p_s[n * 18 + 9] = SIMINT_MUL(Q_PA[0], PRIM_INT__d_s_s_s[n * 6 + 3]);
818                         PRIM_INT__d_s_p_s[n * 18 + 9] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__d_s_s_s[(n+1) * 6 + 3], PRIM_INT__d_s_p_s[n * 18 + 9]);
819 
820                         PRIM_INT__d_s_p_s[n * 18 + 10] = SIMINT_MUL(Q_PA[1], PRIM_INT__d_s_s_s[n * 6 + 3]);
821                         PRIM_INT__d_s_p_s[n * 18 + 10] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__d_s_s_s[(n+1) * 6 + 3], PRIM_INT__d_s_p_s[n * 18 + 10]);
822                         PRIM_INT__d_s_p_s[n * 18 + 10] = SIMINT_FMADD( vrr_const_2_over_2pq, PRIM_INT__p_s_s_s[(n+1) * 3 + 1], PRIM_INT__d_s_p_s[n * 18 + 10]);
823 
824                         PRIM_INT__d_s_p_s[n * 18 + 11] = SIMINT_MUL(Q_PA[2], PRIM_INT__d_s_s_s[n * 6 + 3]);
825                         PRIM_INT__d_s_p_s[n * 18 + 11] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__d_s_s_s[(n+1) * 6 + 3], PRIM_INT__d_s_p_s[n * 18 + 11]);
826 
827                         PRIM_INT__d_s_p_s[n * 18 + 12] = SIMINT_MUL(Q_PA[0], PRIM_INT__d_s_s_s[n * 6 + 4]);
828                         PRIM_INT__d_s_p_s[n * 18 + 12] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__d_s_s_s[(n+1) * 6 + 4], PRIM_INT__d_s_p_s[n * 18 + 12]);
829 
830                         PRIM_INT__d_s_p_s[n * 18 + 13] = SIMINT_MUL(Q_PA[1], PRIM_INT__d_s_s_s[n * 6 + 4]);
831                         PRIM_INT__d_s_p_s[n * 18 + 13] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__d_s_s_s[(n+1) * 6 + 4], PRIM_INT__d_s_p_s[n * 18 + 13]);
832                         PRIM_INT__d_s_p_s[n * 18 + 13] = SIMINT_FMADD( vrr_const_1_over_2pq, PRIM_INT__p_s_s_s[(n+1) * 3 + 2], PRIM_INT__d_s_p_s[n * 18 + 13]);
833 
834                         PRIM_INT__d_s_p_s[n * 18 + 14] = SIMINT_MUL(Q_PA[2], PRIM_INT__d_s_s_s[n * 6 + 4]);
835                         PRIM_INT__d_s_p_s[n * 18 + 14] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__d_s_s_s[(n+1) * 6 + 4], PRIM_INT__d_s_p_s[n * 18 + 14]);
836                         PRIM_INT__d_s_p_s[n * 18 + 14] = SIMINT_FMADD( vrr_const_1_over_2pq, PRIM_INT__p_s_s_s[(n+1) * 3 + 1], PRIM_INT__d_s_p_s[n * 18 + 14]);
837 
838                         PRIM_INT__d_s_p_s[n * 18 + 15] = SIMINT_MUL(Q_PA[0], PRIM_INT__d_s_s_s[n * 6 + 5]);
839                         PRIM_INT__d_s_p_s[n * 18 + 15] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__d_s_s_s[(n+1) * 6 + 5], PRIM_INT__d_s_p_s[n * 18 + 15]);
840 
841                         PRIM_INT__d_s_p_s[n * 18 + 16] = SIMINT_MUL(Q_PA[1], PRIM_INT__d_s_s_s[n * 6 + 5]);
842                         PRIM_INT__d_s_p_s[n * 18 + 16] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__d_s_s_s[(n+1) * 6 + 5], PRIM_INT__d_s_p_s[n * 18 + 16]);
843 
844                         PRIM_INT__d_s_p_s[n * 18 + 17] = SIMINT_MUL(Q_PA[2], PRIM_INT__d_s_s_s[n * 6 + 5]);
845                         PRIM_INT__d_s_p_s[n * 18 + 17] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__d_s_s_s[(n+1) * 6 + 5], PRIM_INT__d_s_p_s[n * 18 + 17]);
846                         PRIM_INT__d_s_p_s[n * 18 + 17] = SIMINT_FMADD( vrr_const_2_over_2pq, PRIM_INT__p_s_s_s[(n+1) * 3 + 2], PRIM_INT__d_s_p_s[n * 18 + 17]);
847 
848                     }
849 
850 
851                     VRR_K_f_s_d_s(
852                             PRIM_INT__f_s_d_s,
853                             PRIM_INT__f_s_p_s,
854                             PRIM_INT__f_s_s_s,
855                             PRIM_INT__d_s_p_s,
856                             Q_PA,
857                             a_over_q,
858                             aoq_PQ,
859                             one_over_2pq,
860                             one_over_2q,
861                             10);
862 
863 
864                     ostei_general_vrr_K(4, 0, 3, 0, 9,
865                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
866                             PRIM_INT__g_s_d_s, PRIM_INT__g_s_p_s, NULL, PRIM_INT__f_s_d_s, NULL, PRIM_INT__g_s_f_s);
867 
868 
869                     ostei_general_vrr_K(5, 0, 4, 0, 8,
870                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
871                             PRIM_INT__h_s_f_s, PRIM_INT__h_s_d_s, NULL, PRIM_INT__g_s_f_s, NULL, PRIM_INT__h_s_g_s);
872 
873 
874                     ostei_general_vrr_K(6, 0, 5, 0, 7,
875                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
876                             PRIM_INT__i_s_g_s, PRIM_INT__i_s_f_s, NULL, PRIM_INT__h_s_g_s, NULL, PRIM_INT__i_s_h_s);
877 
878 
879 
880                     // Forming PRIM_INT__p_s_p_s[11 * 9];
881                     for(n = 0; n < 11; ++n)  // loop over orders of auxiliary function
882                     {
883 
884                         PRIM_INT__p_s_p_s[n * 9 + 0] = SIMINT_MUL(Q_PA[0], PRIM_INT__p_s_s_s[n * 3 + 0]);
885                         PRIM_INT__p_s_p_s[n * 9 + 0] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__p_s_p_s[n * 9 + 0]);
886                         PRIM_INT__p_s_p_s[n * 9 + 0] = SIMINT_FMADD( vrr_const_1_over_2pq, PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__p_s_p_s[n * 9 + 0]);
887 
888                         PRIM_INT__p_s_p_s[n * 9 + 1] = SIMINT_MUL(Q_PA[1], PRIM_INT__p_s_s_s[n * 3 + 0]);
889                         PRIM_INT__p_s_p_s[n * 9 + 1] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__p_s_p_s[n * 9 + 1]);
890 
891                         PRIM_INT__p_s_p_s[n * 9 + 2] = SIMINT_MUL(Q_PA[2], PRIM_INT__p_s_s_s[n * 3 + 0]);
892                         PRIM_INT__p_s_p_s[n * 9 + 2] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__p_s_p_s[n * 9 + 2]);
893 
894                         PRIM_INT__p_s_p_s[n * 9 + 3] = SIMINT_MUL(Q_PA[0], PRIM_INT__p_s_s_s[n * 3 + 1]);
895                         PRIM_INT__p_s_p_s[n * 9 + 3] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__p_s_s_s[(n+1) * 3 + 1], PRIM_INT__p_s_p_s[n * 9 + 3]);
896 
897                         PRIM_INT__p_s_p_s[n * 9 + 4] = SIMINT_MUL(Q_PA[1], PRIM_INT__p_s_s_s[n * 3 + 1]);
898                         PRIM_INT__p_s_p_s[n * 9 + 4] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__p_s_s_s[(n+1) * 3 + 1], PRIM_INT__p_s_p_s[n * 9 + 4]);
899                         PRIM_INT__p_s_p_s[n * 9 + 4] = SIMINT_FMADD( vrr_const_1_over_2pq, PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__p_s_p_s[n * 9 + 4]);
900 
901                         PRIM_INT__p_s_p_s[n * 9 + 5] = SIMINT_MUL(Q_PA[2], PRIM_INT__p_s_s_s[n * 3 + 1]);
902                         PRIM_INT__p_s_p_s[n * 9 + 5] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__p_s_s_s[(n+1) * 3 + 1], PRIM_INT__p_s_p_s[n * 9 + 5]);
903 
904                         PRIM_INT__p_s_p_s[n * 9 + 6] = SIMINT_MUL(Q_PA[0], PRIM_INT__p_s_s_s[n * 3 + 2]);
905                         PRIM_INT__p_s_p_s[n * 9 + 6] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__p_s_s_s[(n+1) * 3 + 2], PRIM_INT__p_s_p_s[n * 9 + 6]);
906 
907                         PRIM_INT__p_s_p_s[n * 9 + 7] = SIMINT_MUL(Q_PA[1], PRIM_INT__p_s_s_s[n * 3 + 2]);
908                         PRIM_INT__p_s_p_s[n * 9 + 7] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__p_s_s_s[(n+1) * 3 + 2], PRIM_INT__p_s_p_s[n * 9 + 7]);
909 
910                         PRIM_INT__p_s_p_s[n * 9 + 8] = SIMINT_MUL(Q_PA[2], PRIM_INT__p_s_s_s[n * 3 + 2]);
911                         PRIM_INT__p_s_p_s[n * 9 + 8] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__p_s_s_s[(n+1) * 3 + 2], PRIM_INT__p_s_p_s[n * 9 + 8]);
912                         PRIM_INT__p_s_p_s[n * 9 + 8] = SIMINT_FMADD( vrr_const_1_over_2pq, PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__p_s_p_s[n * 9 + 8]);
913 
914                     }
915 
916 
917                     VRR_K_d_s_d_s(
918                             PRIM_INT__d_s_d_s,
919                             PRIM_INT__d_s_p_s,
920                             PRIM_INT__d_s_s_s,
921                             PRIM_INT__p_s_p_s,
922                             Q_PA,
923                             a_over_q,
924                             aoq_PQ,
925                             one_over_2pq,
926                             one_over_2q,
927                             10);
928 
929 
930                     ostei_general_vrr_K(3, 0, 3, 0, 9,
931                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
932                             PRIM_INT__f_s_d_s, PRIM_INT__f_s_p_s, NULL, PRIM_INT__d_s_d_s, NULL, PRIM_INT__f_s_f_s);
933 
934 
935                     ostei_general_vrr_K(4, 0, 4, 0, 8,
936                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
937                             PRIM_INT__g_s_f_s, PRIM_INT__g_s_d_s, NULL, PRIM_INT__f_s_f_s, NULL, PRIM_INT__g_s_g_s);
938 
939 
940                     ostei_general_vrr_K(5, 0, 5, 0, 7,
941                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
942                             PRIM_INT__h_s_g_s, PRIM_INT__h_s_f_s, NULL, PRIM_INT__g_s_g_s, NULL, PRIM_INT__h_s_h_s);
943 
944 
945                     ostei_general_vrr_K(6, 0, 6, 0, 6,
946                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
947                             PRIM_INT__i_s_h_s, PRIM_INT__i_s_g_s, NULL, PRIM_INT__h_s_h_s, NULL, PRIM_INT__i_s_i_s);
948 
949 
950 
951                     // Forming PRIM_INT__s_s_p_s[11 * 3];
952                     for(n = 0; n < 11; ++n)  // loop over orders of auxiliary function
953                     {
954 
955                         PRIM_INT__s_s_p_s[n * 3 + 0] = SIMINT_MUL(Q_PA[0], PRIM_INT__s_s_s_s[n * 1 + 0]);
956                         PRIM_INT__s_s_p_s[n * 3 + 0] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__s_s_p_s[n * 3 + 0]);
957 
958                         PRIM_INT__s_s_p_s[n * 3 + 1] = SIMINT_MUL(Q_PA[1], PRIM_INT__s_s_s_s[n * 1 + 0]);
959                         PRIM_INT__s_s_p_s[n * 3 + 1] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__s_s_p_s[n * 3 + 1]);
960 
961                         PRIM_INT__s_s_p_s[n * 3 + 2] = SIMINT_MUL(Q_PA[2], PRIM_INT__s_s_s_s[n * 1 + 0]);
962                         PRIM_INT__s_s_p_s[n * 3 + 2] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__s_s_p_s[n * 3 + 2]);
963 
964                     }
965 
966 
967 
968                     // Forming PRIM_INT__p_s_d_s[10 * 18];
969                     for(n = 0; n < 10; ++n)  // loop over orders of auxiliary function
970                     {
971 
972                         PRIM_INT__p_s_d_s[n * 18 + 0] = SIMINT_MUL(Q_PA[0], PRIM_INT__p_s_p_s[n * 9 + 0]);
973                         PRIM_INT__p_s_d_s[n * 18 + 0] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__p_s_p_s[(n+1) * 9 + 0], PRIM_INT__p_s_d_s[n * 18 + 0]);
974                         PRIM_INT__p_s_d_s[n * 18 + 0] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__p_s_s_s[n * 3 + 0]), PRIM_INT__p_s_d_s[n * 18 + 0]);
975                         PRIM_INT__p_s_d_s[n * 18 + 0] = SIMINT_FMADD( vrr_const_1_over_2pq, PRIM_INT__s_s_p_s[(n+1) * 3 + 0], PRIM_INT__p_s_d_s[n * 18 + 0]);
976 
977                         PRIM_INT__p_s_d_s[n * 18 + 3] = SIMINT_MUL(Q_PA[1], PRIM_INT__p_s_p_s[n * 9 + 1]);
978                         PRIM_INT__p_s_d_s[n * 18 + 3] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__p_s_p_s[(n+1) * 9 + 1], PRIM_INT__p_s_d_s[n * 18 + 3]);
979                         PRIM_INT__p_s_d_s[n * 18 + 3] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__p_s_s_s[n * 3 + 0]), PRIM_INT__p_s_d_s[n * 18 + 3]);
980 
981                         PRIM_INT__p_s_d_s[n * 18 + 5] = SIMINT_MUL(Q_PA[2], PRIM_INT__p_s_p_s[n * 9 + 2]);
982                         PRIM_INT__p_s_d_s[n * 18 + 5] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__p_s_p_s[(n+1) * 9 + 2], PRIM_INT__p_s_d_s[n * 18 + 5]);
983                         PRIM_INT__p_s_d_s[n * 18 + 5] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__p_s_s_s[(n+1) * 3 + 0], PRIM_INT__p_s_s_s[n * 3 + 0]), PRIM_INT__p_s_d_s[n * 18 + 5]);
984 
985                         PRIM_INT__p_s_d_s[n * 18 + 6] = SIMINT_MUL(Q_PA[0], PRIM_INT__p_s_p_s[n * 9 + 3]);
986                         PRIM_INT__p_s_d_s[n * 18 + 6] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__p_s_p_s[(n+1) * 9 + 3], PRIM_INT__p_s_d_s[n * 18 + 6]);
987                         PRIM_INT__p_s_d_s[n * 18 + 6] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__p_s_s_s[(n+1) * 3 + 1], PRIM_INT__p_s_s_s[n * 3 + 1]), PRIM_INT__p_s_d_s[n * 18 + 6]);
988 
989                         PRIM_INT__p_s_d_s[n * 18 + 9] = SIMINT_MUL(Q_PA[1], PRIM_INT__p_s_p_s[n * 9 + 4]);
990                         PRIM_INT__p_s_d_s[n * 18 + 9] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__p_s_p_s[(n+1) * 9 + 4], PRIM_INT__p_s_d_s[n * 18 + 9]);
991                         PRIM_INT__p_s_d_s[n * 18 + 9] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__p_s_s_s[(n+1) * 3 + 1], PRIM_INT__p_s_s_s[n * 3 + 1]), PRIM_INT__p_s_d_s[n * 18 + 9]);
992                         PRIM_INT__p_s_d_s[n * 18 + 9] = SIMINT_FMADD( vrr_const_1_over_2pq, PRIM_INT__s_s_p_s[(n+1) * 3 + 1], PRIM_INT__p_s_d_s[n * 18 + 9]);
993 
994                         PRIM_INT__p_s_d_s[n * 18 + 11] = SIMINT_MUL(Q_PA[2], PRIM_INT__p_s_p_s[n * 9 + 5]);
995                         PRIM_INT__p_s_d_s[n * 18 + 11] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__p_s_p_s[(n+1) * 9 + 5], PRIM_INT__p_s_d_s[n * 18 + 11]);
996                         PRIM_INT__p_s_d_s[n * 18 + 11] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__p_s_s_s[(n+1) * 3 + 1], PRIM_INT__p_s_s_s[n * 3 + 1]), PRIM_INT__p_s_d_s[n * 18 + 11]);
997 
998                         PRIM_INT__p_s_d_s[n * 18 + 12] = SIMINT_MUL(Q_PA[0], PRIM_INT__p_s_p_s[n * 9 + 6]);
999                         PRIM_INT__p_s_d_s[n * 18 + 12] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__p_s_p_s[(n+1) * 9 + 6], PRIM_INT__p_s_d_s[n * 18 + 12]);
1000                         PRIM_INT__p_s_d_s[n * 18 + 12] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__p_s_s_s[(n+1) * 3 + 2], PRIM_INT__p_s_s_s[n * 3 + 2]), PRIM_INT__p_s_d_s[n * 18 + 12]);
1001 
1002                         PRIM_INT__p_s_d_s[n * 18 + 15] = SIMINT_MUL(Q_PA[1], PRIM_INT__p_s_p_s[n * 9 + 7]);
1003                         PRIM_INT__p_s_d_s[n * 18 + 15] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__p_s_p_s[(n+1) * 9 + 7], PRIM_INT__p_s_d_s[n * 18 + 15]);
1004                         PRIM_INT__p_s_d_s[n * 18 + 15] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__p_s_s_s[(n+1) * 3 + 2], PRIM_INT__p_s_s_s[n * 3 + 2]), PRIM_INT__p_s_d_s[n * 18 + 15]);
1005 
1006                         PRIM_INT__p_s_d_s[n * 18 + 17] = SIMINT_MUL(Q_PA[2], PRIM_INT__p_s_p_s[n * 9 + 8]);
1007                         PRIM_INT__p_s_d_s[n * 18 + 17] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__p_s_p_s[(n+1) * 9 + 8], PRIM_INT__p_s_d_s[n * 18 + 17]);
1008                         PRIM_INT__p_s_d_s[n * 18 + 17] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__p_s_s_s[(n+1) * 3 + 2], PRIM_INT__p_s_s_s[n * 3 + 2]), PRIM_INT__p_s_d_s[n * 18 + 17]);
1009                         PRIM_INT__p_s_d_s[n * 18 + 17] = SIMINT_FMADD( vrr_const_1_over_2pq, PRIM_INT__s_s_p_s[(n+1) * 3 + 2], PRIM_INT__p_s_d_s[n * 18 + 17]);
1010 
1011                     }
1012 
1013 
1014                     VRR_K_d_s_f_s(
1015                             PRIM_INT__d_s_f_s,
1016                             PRIM_INT__d_s_d_s,
1017                             PRIM_INT__d_s_p_s,
1018                             PRIM_INT__p_s_d_s,
1019                             Q_PA,
1020                             a_over_q,
1021                             aoq_PQ,
1022                             one_over_2pq,
1023                             one_over_2q,
1024                             9);
1025 
1026 
1027                     ostei_general_vrr_K(3, 0, 4, 0, 8,
1028                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1029                             PRIM_INT__f_s_f_s, PRIM_INT__f_s_d_s, NULL, PRIM_INT__d_s_f_s, NULL, PRIM_INT__f_s_g_s);
1030 
1031 
1032                     ostei_general_vrr_K(4, 0, 5, 0, 7,
1033                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1034                             PRIM_INT__g_s_g_s, PRIM_INT__g_s_f_s, NULL, PRIM_INT__f_s_g_s, NULL, PRIM_INT__g_s_h_s);
1035 
1036 
1037                     ostei_general_vrr_K(5, 0, 6, 0, 6,
1038                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1039                             PRIM_INT__h_s_h_s, PRIM_INT__h_s_g_s, NULL, PRIM_INT__g_s_h_s, NULL, PRIM_INT__h_s_i_s);
1040 
1041 
1042                     ostei_general_vrr_K(6, 0, 7, 0, 5,
1043                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1044                             PRIM_INT__i_s_i_s, PRIM_INT__i_s_h_s, NULL, PRIM_INT__h_s_i_s, NULL, PRIM_INT__i_s_k_s);
1045 
1046 
1047                     ostei_general_vrr1_I(7, 16,
1048                             one_over_2p, a_over_p, aop_PQ, P_PA,
1049                             PRIM_INT__i_s_s_s, PRIM_INT__h_s_s_s, PRIM_INT__k_s_s_s);
1050 
1051 
1052                     ostei_general_vrr_K(7, 0, 1, 0, 11,
1053                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1054                             PRIM_INT__k_s_s_s, NULL, NULL, PRIM_INT__i_s_s_s, NULL, PRIM_INT__k_s_p_s);
1055 
1056 
1057                     ostei_general_vrr_K(7, 0, 2, 0, 10,
1058                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1059                             PRIM_INT__k_s_p_s, PRIM_INT__k_s_s_s, NULL, PRIM_INT__i_s_p_s, NULL, PRIM_INT__k_s_d_s);
1060 
1061 
1062                     ostei_general_vrr_K(7, 0, 3, 0, 9,
1063                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1064                             PRIM_INT__k_s_d_s, PRIM_INT__k_s_p_s, NULL, PRIM_INT__i_s_d_s, NULL, PRIM_INT__k_s_f_s);
1065 
1066 
1067                     ostei_general_vrr_K(7, 0, 4, 0, 8,
1068                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1069                             PRIM_INT__k_s_f_s, PRIM_INT__k_s_d_s, NULL, PRIM_INT__i_s_f_s, NULL, PRIM_INT__k_s_g_s);
1070 
1071 
1072                     ostei_general_vrr_K(7, 0, 5, 0, 7,
1073                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1074                             PRIM_INT__k_s_g_s, PRIM_INT__k_s_f_s, NULL, PRIM_INT__i_s_g_s, NULL, PRIM_INT__k_s_h_s);
1075 
1076 
1077                     ostei_general_vrr_K(7, 0, 6, 0, 6,
1078                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1079                             PRIM_INT__k_s_h_s, PRIM_INT__k_s_g_s, NULL, PRIM_INT__i_s_h_s, NULL, PRIM_INT__k_s_i_s);
1080 
1081 
1082 
1083                     // Forming PRIM_INT__s_s_d_s[10 * 6];
1084                     for(n = 0; n < 10; ++n)  // loop over orders of auxiliary function
1085                     {
1086 
1087                         PRIM_INT__s_s_d_s[n * 6 + 0] = SIMINT_MUL(Q_PA[0], PRIM_INT__s_s_p_s[n * 3 + 0]);
1088                         PRIM_INT__s_s_d_s[n * 6 + 0] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__s_s_p_s[(n+1) * 3 + 0], PRIM_INT__s_s_d_s[n * 6 + 0]);
1089                         PRIM_INT__s_s_d_s[n * 6 + 0] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__s_s_s_s[n * 1 + 0]), PRIM_INT__s_s_d_s[n * 6 + 0]);
1090 
1091                         PRIM_INT__s_s_d_s[n * 6 + 3] = SIMINT_MUL(Q_PA[1], PRIM_INT__s_s_p_s[n * 3 + 1]);
1092                         PRIM_INT__s_s_d_s[n * 6 + 3] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__s_s_p_s[(n+1) * 3 + 1], PRIM_INT__s_s_d_s[n * 6 + 3]);
1093                         PRIM_INT__s_s_d_s[n * 6 + 3] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__s_s_s_s[n * 1 + 0]), PRIM_INT__s_s_d_s[n * 6 + 3]);
1094 
1095                         PRIM_INT__s_s_d_s[n * 6 + 5] = SIMINT_MUL(Q_PA[2], PRIM_INT__s_s_p_s[n * 3 + 2]);
1096                         PRIM_INT__s_s_d_s[n * 6 + 5] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__s_s_p_s[(n+1) * 3 + 2], PRIM_INT__s_s_d_s[n * 6 + 5]);
1097                         PRIM_INT__s_s_d_s[n * 6 + 5] = SIMINT_FMADD( vrr_const_1_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_s_s[(n+1) * 1 + 0], PRIM_INT__s_s_s_s[n * 1 + 0]), PRIM_INT__s_s_d_s[n * 6 + 5]);
1098 
1099                     }
1100 
1101 
1102                     VRR_K_p_s_f_s(
1103                             PRIM_INT__p_s_f_s,
1104                             PRIM_INT__p_s_d_s,
1105                             PRIM_INT__p_s_p_s,
1106                             PRIM_INT__s_s_d_s,
1107                             Q_PA,
1108                             a_over_q,
1109                             aoq_PQ,
1110                             one_over_2pq,
1111                             one_over_2q,
1112                             9);
1113 
1114 
1115                     ostei_general_vrr_K(2, 0, 4, 0, 8,
1116                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1117                             PRIM_INT__d_s_f_s, PRIM_INT__d_s_d_s, NULL, PRIM_INT__p_s_f_s, NULL, PRIM_INT__d_s_g_s);
1118 
1119 
1120                     ostei_general_vrr_K(3, 0, 5, 0, 7,
1121                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1122                             PRIM_INT__f_s_g_s, PRIM_INT__f_s_f_s, NULL, PRIM_INT__d_s_g_s, NULL, PRIM_INT__f_s_h_s);
1123 
1124 
1125                     ostei_general_vrr_K(4, 0, 6, 0, 6,
1126                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1127                             PRIM_INT__g_s_h_s, PRIM_INT__g_s_g_s, NULL, PRIM_INT__f_s_h_s, NULL, PRIM_INT__g_s_i_s);
1128 
1129 
1130                     ostei_general_vrr_K(5, 0, 7, 0, 5,
1131                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1132                             PRIM_INT__h_s_i_s, PRIM_INT__h_s_h_s, NULL, PRIM_INT__g_s_i_s, NULL, PRIM_INT__h_s_k_s);
1133 
1134 
1135                     ostei_general_vrr_K(6, 0, 8, 0, 4,
1136                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1137                             PRIM_INT__i_s_k_s, PRIM_INT__i_s_i_s, NULL, PRIM_INT__h_s_k_s, NULL, PRIM_INT__i_s_l_s);
1138 
1139 
1140                     ostei_general_vrr_K(7, 0, 7, 0, 5,
1141                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1142                             PRIM_INT__k_s_i_s, PRIM_INT__k_s_h_s, NULL, PRIM_INT__i_s_i_s, NULL, PRIM_INT__k_s_k_s);
1143 
1144 
1145                     ostei_general_vrr1_I(8, 15,
1146                             one_over_2p, a_over_p, aop_PQ, P_PA,
1147                             PRIM_INT__k_s_s_s, PRIM_INT__i_s_s_s, PRIM_INT__l_s_s_s);
1148 
1149 
1150                     ostei_general_vrr_K(8, 0, 1, 0, 11,
1151                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1152                             PRIM_INT__l_s_s_s, NULL, NULL, PRIM_INT__k_s_s_s, NULL, PRIM_INT__l_s_p_s);
1153 
1154 
1155                     ostei_general_vrr_K(8, 0, 2, 0, 10,
1156                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1157                             PRIM_INT__l_s_p_s, PRIM_INT__l_s_s_s, NULL, PRIM_INT__k_s_p_s, NULL, PRIM_INT__l_s_d_s);
1158 
1159 
1160                     ostei_general_vrr_K(8, 0, 3, 0, 9,
1161                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1162                             PRIM_INT__l_s_d_s, PRIM_INT__l_s_p_s, NULL, PRIM_INT__k_s_d_s, NULL, PRIM_INT__l_s_f_s);
1163 
1164 
1165                     ostei_general_vrr_K(8, 0, 4, 0, 8,
1166                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1167                             PRIM_INT__l_s_f_s, PRIM_INT__l_s_d_s, NULL, PRIM_INT__k_s_f_s, NULL, PRIM_INT__l_s_g_s);
1168 
1169 
1170                     ostei_general_vrr_K(8, 0, 5, 0, 7,
1171                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1172                             PRIM_INT__l_s_g_s, PRIM_INT__l_s_f_s, NULL, PRIM_INT__k_s_g_s, NULL, PRIM_INT__l_s_h_s);
1173 
1174 
1175                     ostei_general_vrr_K(8, 0, 6, 0, 6,
1176                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1177                             PRIM_INT__l_s_h_s, PRIM_INT__l_s_g_s, NULL, PRIM_INT__k_s_h_s, NULL, PRIM_INT__l_s_i_s);
1178 
1179 
1180 
1181                     // Forming PRIM_INT__s_s_f_s[9 * 10];
1182                     for(n = 0; n < 9; ++n)  // loop over orders of auxiliary function
1183                     {
1184 
1185                         PRIM_INT__s_s_f_s[n * 10 + 0] = SIMINT_MUL(Q_PA[0], PRIM_INT__s_s_d_s[n * 6 + 0]);
1186                         PRIM_INT__s_s_f_s[n * 10 + 0] = SIMINT_FMADD( aoq_PQ[0], PRIM_INT__s_s_d_s[(n+1) * 6 + 0], PRIM_INT__s_s_f_s[n * 10 + 0]);
1187                         PRIM_INT__s_s_f_s[n * 10 + 0] = SIMINT_FMADD( vrr_const_2_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_p_s[(n+1) * 3 + 0], PRIM_INT__s_s_p_s[n * 3 + 0]), PRIM_INT__s_s_f_s[n * 10 + 0]);
1188 
1189                         PRIM_INT__s_s_f_s[n * 10 + 6] = SIMINT_MUL(Q_PA[1], PRIM_INT__s_s_d_s[n * 6 + 3]);
1190                         PRIM_INT__s_s_f_s[n * 10 + 6] = SIMINT_FMADD( aoq_PQ[1], PRIM_INT__s_s_d_s[(n+1) * 6 + 3], PRIM_INT__s_s_f_s[n * 10 + 6]);
1191                         PRIM_INT__s_s_f_s[n * 10 + 6] = SIMINT_FMADD( vrr_const_2_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_p_s[(n+1) * 3 + 1], PRIM_INT__s_s_p_s[n * 3 + 1]), PRIM_INT__s_s_f_s[n * 10 + 6]);
1192 
1193                         PRIM_INT__s_s_f_s[n * 10 + 9] = SIMINT_MUL(Q_PA[2], PRIM_INT__s_s_d_s[n * 6 + 5]);
1194                         PRIM_INT__s_s_f_s[n * 10 + 9] = SIMINT_FMADD( aoq_PQ[2], PRIM_INT__s_s_d_s[(n+1) * 6 + 5], PRIM_INT__s_s_f_s[n * 10 + 9]);
1195                         PRIM_INT__s_s_f_s[n * 10 + 9] = SIMINT_FMADD( vrr_const_2_over_2q, SIMINT_FMADD(a_over_q, PRIM_INT__s_s_p_s[(n+1) * 3 + 2], PRIM_INT__s_s_p_s[n * 3 + 2]), PRIM_INT__s_s_f_s[n * 10 + 9]);
1196 
1197                     }
1198 
1199 
1200                     VRR_K_p_s_g_s(
1201                             PRIM_INT__p_s_g_s,
1202                             PRIM_INT__p_s_f_s,
1203                             PRIM_INT__p_s_d_s,
1204                             PRIM_INT__s_s_f_s,
1205                             Q_PA,
1206                             a_over_q,
1207                             aoq_PQ,
1208                             one_over_2pq,
1209                             one_over_2q,
1210                             8);
1211 
1212 
1213                     ostei_general_vrr_K(2, 0, 5, 0, 7,
1214                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1215                             PRIM_INT__d_s_g_s, PRIM_INT__d_s_f_s, NULL, PRIM_INT__p_s_g_s, NULL, PRIM_INT__d_s_h_s);
1216 
1217 
1218                     ostei_general_vrr_K(3, 0, 6, 0, 6,
1219                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1220                             PRIM_INT__f_s_h_s, PRIM_INT__f_s_g_s, NULL, PRIM_INT__d_s_h_s, NULL, PRIM_INT__f_s_i_s);
1221 
1222 
1223                     ostei_general_vrr_K(4, 0, 7, 0, 5,
1224                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1225                             PRIM_INT__g_s_i_s, PRIM_INT__g_s_h_s, NULL, PRIM_INT__f_s_i_s, NULL, PRIM_INT__g_s_k_s);
1226 
1227 
1228                     ostei_general_vrr_K(5, 0, 8, 0, 4,
1229                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1230                             PRIM_INT__h_s_k_s, PRIM_INT__h_s_i_s, NULL, PRIM_INT__g_s_k_s, NULL, PRIM_INT__h_s_l_s);
1231 
1232 
1233                     ostei_general_vrr_K(6, 0, 9, 0, 3,
1234                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1235                             PRIM_INT__i_s_l_s, PRIM_INT__i_s_k_s, NULL, PRIM_INT__h_s_l_s, NULL, PRIM_INT__i_s_m_s);
1236 
1237 
1238                     ostei_general_vrr_K(7, 0, 8, 0, 4,
1239                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1240                             PRIM_INT__k_s_k_s, PRIM_INT__k_s_i_s, NULL, PRIM_INT__i_s_k_s, NULL, PRIM_INT__k_s_l_s);
1241 
1242 
1243                     ostei_general_vrr_K(8, 0, 7, 0, 5,
1244                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1245                             PRIM_INT__l_s_i_s, PRIM_INT__l_s_h_s, NULL, PRIM_INT__k_s_i_s, NULL, PRIM_INT__l_s_k_s);
1246 
1247 
1248                     ostei_general_vrr1_I(9, 14,
1249                             one_over_2p, a_over_p, aop_PQ, P_PA,
1250                             PRIM_INT__l_s_s_s, PRIM_INT__k_s_s_s, PRIM_INT__m_s_s_s);
1251 
1252 
1253                     ostei_general_vrr_K(9, 0, 1, 0, 11,
1254                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1255                             PRIM_INT__m_s_s_s, NULL, NULL, PRIM_INT__l_s_s_s, NULL, PRIM_INT__m_s_p_s);
1256 
1257 
1258                     ostei_general_vrr_K(9, 0, 2, 0, 10,
1259                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1260                             PRIM_INT__m_s_p_s, PRIM_INT__m_s_s_s, NULL, PRIM_INT__l_s_p_s, NULL, PRIM_INT__m_s_d_s);
1261 
1262 
1263                     ostei_general_vrr_K(9, 0, 3, 0, 9,
1264                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1265                             PRIM_INT__m_s_d_s, PRIM_INT__m_s_p_s, NULL, PRIM_INT__l_s_d_s, NULL, PRIM_INT__m_s_f_s);
1266 
1267 
1268                     ostei_general_vrr_K(9, 0, 4, 0, 8,
1269                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1270                             PRIM_INT__m_s_f_s, PRIM_INT__m_s_d_s, NULL, PRIM_INT__l_s_f_s, NULL, PRIM_INT__m_s_g_s);
1271 
1272 
1273                     ostei_general_vrr_K(9, 0, 5, 0, 7,
1274                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1275                             PRIM_INT__m_s_g_s, PRIM_INT__m_s_f_s, NULL, PRIM_INT__l_s_g_s, NULL, PRIM_INT__m_s_h_s);
1276 
1277 
1278                     ostei_general_vrr_K(9, 0, 6, 0, 6,
1279                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1280                             PRIM_INT__m_s_h_s, PRIM_INT__m_s_g_s, NULL, PRIM_INT__l_s_h_s, NULL, PRIM_INT__m_s_i_s);
1281 
1282 
1283                     VRR_K_s_s_g_s(
1284                             PRIM_INT__s_s_g_s,
1285                             PRIM_INT__s_s_f_s,
1286                             PRIM_INT__s_s_d_s,
1287                             Q_PA,
1288                             a_over_q,
1289                             aoq_PQ,
1290                             one_over_2q,
1291                             8);
1292 
1293 
1294                     ostei_general_vrr_K(1, 0, 5, 0, 7,
1295                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1296                             PRIM_INT__p_s_g_s, PRIM_INT__p_s_f_s, NULL, PRIM_INT__s_s_g_s, NULL, PRIM_INT__p_s_h_s);
1297 
1298 
1299                     ostei_general_vrr_K(2, 0, 6, 0, 6,
1300                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1301                             PRIM_INT__d_s_h_s, PRIM_INT__d_s_g_s, NULL, PRIM_INT__p_s_h_s, NULL, PRIM_INT__d_s_i_s);
1302 
1303 
1304                     ostei_general_vrr_K(3, 0, 7, 0, 5,
1305                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1306                             PRIM_INT__f_s_i_s, PRIM_INT__f_s_h_s, NULL, PRIM_INT__d_s_i_s, NULL, PRIM_INT__f_s_k_s);
1307 
1308 
1309                     ostei_general_vrr_K(4, 0, 8, 0, 4,
1310                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1311                             PRIM_INT__g_s_k_s, PRIM_INT__g_s_i_s, NULL, PRIM_INT__f_s_k_s, NULL, PRIM_INT__g_s_l_s);
1312 
1313 
1314                     ostei_general_vrr_K(5, 0, 9, 0, 3,
1315                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1316                             PRIM_INT__h_s_l_s, PRIM_INT__h_s_k_s, NULL, PRIM_INT__g_s_l_s, NULL, PRIM_INT__h_s_m_s);
1317 
1318 
1319                     ostei_general_vrr_K(6, 0, 10, 0, 2,
1320                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1321                             PRIM_INT__i_s_m_s, PRIM_INT__i_s_l_s, NULL, PRIM_INT__h_s_m_s, NULL, PRIM_INT__i_s_n_s);
1322 
1323 
1324                     ostei_general_vrr_K(7, 0, 9, 0, 3,
1325                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1326                             PRIM_INT__k_s_l_s, PRIM_INT__k_s_k_s, NULL, PRIM_INT__i_s_l_s, NULL, PRIM_INT__k_s_m_s);
1327 
1328 
1329                     ostei_general_vrr_K(8, 0, 8, 0, 4,
1330                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1331                             PRIM_INT__l_s_k_s, PRIM_INT__l_s_i_s, NULL, PRIM_INT__k_s_k_s, NULL, PRIM_INT__l_s_l_s);
1332 
1333 
1334                     ostei_general_vrr_K(9, 0, 7, 0, 5,
1335                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1336                             PRIM_INT__m_s_i_s, PRIM_INT__m_s_h_s, NULL, PRIM_INT__l_s_i_s, NULL, PRIM_INT__m_s_k_s);
1337 
1338 
1339                     ostei_general_vrr1_I(10, 13,
1340                             one_over_2p, a_over_p, aop_PQ, P_PA,
1341                             PRIM_INT__m_s_s_s, PRIM_INT__l_s_s_s, PRIM_INT__n_s_s_s);
1342 
1343 
1344                     ostei_general_vrr_K(10, 0, 1, 0, 11,
1345                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1346                             PRIM_INT__n_s_s_s, NULL, NULL, PRIM_INT__m_s_s_s, NULL, PRIM_INT__n_s_p_s);
1347 
1348 
1349                     ostei_general_vrr_K(10, 0, 2, 0, 10,
1350                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1351                             PRIM_INT__n_s_p_s, PRIM_INT__n_s_s_s, NULL, PRIM_INT__m_s_p_s, NULL, PRIM_INT__n_s_d_s);
1352 
1353 
1354                     ostei_general_vrr_K(10, 0, 3, 0, 9,
1355                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1356                             PRIM_INT__n_s_d_s, PRIM_INT__n_s_p_s, NULL, PRIM_INT__m_s_d_s, NULL, PRIM_INT__n_s_f_s);
1357 
1358 
1359                     ostei_general_vrr_K(10, 0, 4, 0, 8,
1360                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1361                             PRIM_INT__n_s_f_s, PRIM_INT__n_s_d_s, NULL, PRIM_INT__m_s_f_s, NULL, PRIM_INT__n_s_g_s);
1362 
1363 
1364                     ostei_general_vrr_K(10, 0, 5, 0, 7,
1365                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1366                             PRIM_INT__n_s_g_s, PRIM_INT__n_s_f_s, NULL, PRIM_INT__m_s_g_s, NULL, PRIM_INT__n_s_h_s);
1367 
1368 
1369                     ostei_general_vrr_K(10, 0, 6, 0, 6,
1370                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1371                             PRIM_INT__n_s_h_s, PRIM_INT__n_s_g_s, NULL, PRIM_INT__m_s_h_s, NULL, PRIM_INT__n_s_i_s);
1372 
1373 
1374                     VRR_K_s_s_h_s(
1375                             PRIM_INT__s_s_h_s,
1376                             PRIM_INT__s_s_g_s,
1377                             PRIM_INT__s_s_f_s,
1378                             Q_PA,
1379                             a_over_q,
1380                             aoq_PQ,
1381                             one_over_2q,
1382                             7);
1383 
1384 
1385                     ostei_general_vrr_K(1, 0, 6, 0, 6,
1386                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1387                             PRIM_INT__p_s_h_s, PRIM_INT__p_s_g_s, NULL, PRIM_INT__s_s_h_s, NULL, PRIM_INT__p_s_i_s);
1388 
1389 
1390                     ostei_general_vrr_K(2, 0, 7, 0, 5,
1391                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1392                             PRIM_INT__d_s_i_s, PRIM_INT__d_s_h_s, NULL, PRIM_INT__p_s_i_s, NULL, PRIM_INT__d_s_k_s);
1393 
1394 
1395                     ostei_general_vrr_K(3, 0, 8, 0, 4,
1396                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1397                             PRIM_INT__f_s_k_s, PRIM_INT__f_s_i_s, NULL, PRIM_INT__d_s_k_s, NULL, PRIM_INT__f_s_l_s);
1398 
1399 
1400                     ostei_general_vrr_K(4, 0, 9, 0, 3,
1401                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1402                             PRIM_INT__g_s_l_s, PRIM_INT__g_s_k_s, NULL, PRIM_INT__f_s_l_s, NULL, PRIM_INT__g_s_m_s);
1403 
1404 
1405                     ostei_general_vrr_K(5, 0, 10, 0, 2,
1406                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1407                             PRIM_INT__h_s_m_s, PRIM_INT__h_s_l_s, NULL, PRIM_INT__g_s_m_s, NULL, PRIM_INT__h_s_n_s);
1408 
1409 
1410                     ostei_general_vrr_K(6, 0, 11, 0, 1,
1411                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1412                             PRIM_INT__i_s_n_s, PRIM_INT__i_s_m_s, NULL, PRIM_INT__h_s_n_s, NULL, PRIM_INT__i_s_o_s);
1413 
1414 
1415                     ostei_general_vrr_K(7, 0, 10, 0, 2,
1416                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1417                             PRIM_INT__k_s_m_s, PRIM_INT__k_s_l_s, NULL, PRIM_INT__i_s_m_s, NULL, PRIM_INT__k_s_n_s);
1418 
1419 
1420                     ostei_general_vrr_K(8, 0, 9, 0, 3,
1421                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1422                             PRIM_INT__l_s_l_s, PRIM_INT__l_s_k_s, NULL, PRIM_INT__k_s_l_s, NULL, PRIM_INT__l_s_m_s);
1423 
1424 
1425                     ostei_general_vrr_K(9, 0, 8, 0, 4,
1426                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1427                             PRIM_INT__m_s_k_s, PRIM_INT__m_s_i_s, NULL, PRIM_INT__l_s_k_s, NULL, PRIM_INT__m_s_l_s);
1428 
1429 
1430                     ostei_general_vrr_K(10, 0, 7, 0, 5,
1431                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1432                             PRIM_INT__n_s_i_s, PRIM_INT__n_s_h_s, NULL, PRIM_INT__m_s_i_s, NULL, PRIM_INT__n_s_k_s);
1433 
1434 
1435                     ostei_general_vrr1_I(11, 12,
1436                             one_over_2p, a_over_p, aop_PQ, P_PA,
1437                             PRIM_INT__n_s_s_s, PRIM_INT__m_s_s_s, PRIM_INT__o_s_s_s);
1438 
1439 
1440                     ostei_general_vrr_K(11, 0, 1, 0, 11,
1441                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1442                             PRIM_INT__o_s_s_s, NULL, NULL, PRIM_INT__n_s_s_s, NULL, PRIM_INT__o_s_p_s);
1443 
1444 
1445                     ostei_general_vrr_K(11, 0, 2, 0, 10,
1446                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1447                             PRIM_INT__o_s_p_s, PRIM_INT__o_s_s_s, NULL, PRIM_INT__n_s_p_s, NULL, PRIM_INT__o_s_d_s);
1448 
1449 
1450                     ostei_general_vrr_K(11, 0, 3, 0, 9,
1451                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1452                             PRIM_INT__o_s_d_s, PRIM_INT__o_s_p_s, NULL, PRIM_INT__n_s_d_s, NULL, PRIM_INT__o_s_f_s);
1453 
1454 
1455                     ostei_general_vrr_K(11, 0, 4, 0, 8,
1456                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1457                             PRIM_INT__o_s_f_s, PRIM_INT__o_s_d_s, NULL, PRIM_INT__n_s_f_s, NULL, PRIM_INT__o_s_g_s);
1458 
1459 
1460                     ostei_general_vrr_K(11, 0, 5, 0, 7,
1461                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1462                             PRIM_INT__o_s_g_s, PRIM_INT__o_s_f_s, NULL, PRIM_INT__n_s_g_s, NULL, PRIM_INT__o_s_h_s);
1463 
1464 
1465                     ostei_general_vrr_K(11, 0, 6, 0, 6,
1466                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1467                             PRIM_INT__o_s_h_s, PRIM_INT__o_s_g_s, NULL, PRIM_INT__n_s_h_s, NULL, PRIM_INT__o_s_i_s);
1468 
1469 
1470                     ostei_general_vrr_K(7, 0, 11, 0, 1,
1471                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1472                             PRIM_INT__k_s_n_s, PRIM_INT__k_s_m_s, NULL, PRIM_INT__i_s_n_s, NULL, PRIM_INT__k_s_o_s);
1473 
1474 
1475                     ostei_general_vrr_K(8, 0, 10, 0, 2,
1476                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1477                             PRIM_INT__l_s_m_s, PRIM_INT__l_s_l_s, NULL, PRIM_INT__k_s_m_s, NULL, PRIM_INT__l_s_n_s);
1478 
1479 
1480                     ostei_general_vrr_K(9, 0, 9, 0, 3,
1481                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1482                             PRIM_INT__m_s_l_s, PRIM_INT__m_s_k_s, NULL, PRIM_INT__l_s_l_s, NULL, PRIM_INT__m_s_m_s);
1483 
1484 
1485                     ostei_general_vrr_K(10, 0, 8, 0, 4,
1486                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1487                             PRIM_INT__n_s_k_s, PRIM_INT__n_s_i_s, NULL, PRIM_INT__m_s_k_s, NULL, PRIM_INT__n_s_l_s);
1488 
1489 
1490                     ostei_general_vrr_K(11, 0, 7, 0, 5,
1491                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1492                             PRIM_INT__o_s_i_s, PRIM_INT__o_s_h_s, NULL, PRIM_INT__n_s_i_s, NULL, PRIM_INT__o_s_k_s);
1493 
1494 
1495                     ostei_general_vrr_K(8, 0, 11, 0, 1,
1496                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1497                             PRIM_INT__l_s_n_s, PRIM_INT__l_s_m_s, NULL, PRIM_INT__k_s_n_s, NULL, PRIM_INT__l_s_o_s);
1498 
1499 
1500                     ostei_general_vrr_K(9, 0, 10, 0, 2,
1501                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1502                             PRIM_INT__m_s_m_s, PRIM_INT__m_s_l_s, NULL, PRIM_INT__l_s_m_s, NULL, PRIM_INT__m_s_n_s);
1503 
1504 
1505                     ostei_general_vrr_K(10, 0, 9, 0, 3,
1506                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1507                             PRIM_INT__n_s_l_s, PRIM_INT__n_s_k_s, NULL, PRIM_INT__m_s_l_s, NULL, PRIM_INT__n_s_m_s);
1508 
1509 
1510                     ostei_general_vrr_K(11, 0, 8, 0, 4,
1511                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1512                             PRIM_INT__o_s_k_s, PRIM_INT__o_s_i_s, NULL, PRIM_INT__n_s_k_s, NULL, PRIM_INT__o_s_l_s);
1513 
1514 
1515                     ostei_general_vrr_K(9, 0, 11, 0, 1,
1516                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1517                             PRIM_INT__m_s_n_s, PRIM_INT__m_s_m_s, NULL, PRIM_INT__l_s_n_s, NULL, PRIM_INT__m_s_o_s);
1518 
1519 
1520                     ostei_general_vrr_K(10, 0, 10, 0, 2,
1521                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1522                             PRIM_INT__n_s_m_s, PRIM_INT__n_s_l_s, NULL, PRIM_INT__m_s_m_s, NULL, PRIM_INT__n_s_n_s);
1523 
1524 
1525                     ostei_general_vrr_K(11, 0, 9, 0, 3,
1526                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1527                             PRIM_INT__o_s_l_s, PRIM_INT__o_s_k_s, NULL, PRIM_INT__n_s_l_s, NULL, PRIM_INT__o_s_m_s);
1528 
1529 
1530                     ostei_general_vrr_K(10, 0, 11, 0, 1,
1531                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1532                             PRIM_INT__n_s_n_s, PRIM_INT__n_s_m_s, NULL, PRIM_INT__m_s_n_s, NULL, PRIM_INT__n_s_o_s);
1533 
1534 
1535                     ostei_general_vrr_K(11, 0, 10, 0, 2,
1536                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1537                             PRIM_INT__o_s_m_s, PRIM_INT__o_s_l_s, NULL, PRIM_INT__n_s_m_s, NULL, PRIM_INT__o_s_n_s);
1538 
1539 
1540                     ostei_general_vrr_K(11, 0, 11, 0, 1,
1541                             one_over_2q, a_over_q, one_over_2pq, aoq_PQ, Q_PA,
1542                             PRIM_INT__o_s_n_s, PRIM_INT__o_s_m_s, NULL, PRIM_INT__n_s_n_s, NULL, PRIM_INT__o_s_o_s);
1543 
1544 
1545 
1546 
1547                     ////////////////////////////////////
1548                     // Accumulate contracted integrals
1549                     ////////////////////////////////////
1550                     if(lastoffset == 0)
1551                     {
1552                         contract_all(784, PRIM_INT__i_s_i_s, PRIM_PTR_INT__i_s_i_s);
1553                         contract_all(1008, PRIM_INT__i_s_k_s, PRIM_PTR_INT__i_s_k_s);
1554                         contract_all(1260, PRIM_INT__i_s_l_s, PRIM_PTR_INT__i_s_l_s);
1555                         contract_all(1540, PRIM_INT__i_s_m_s, PRIM_PTR_INT__i_s_m_s);
1556                         contract_all(1848, PRIM_INT__i_s_n_s, PRIM_PTR_INT__i_s_n_s);
1557                         contract_all(2184, PRIM_INT__i_s_o_s, PRIM_PTR_INT__i_s_o_s);
1558                         contract_all(1008, PRIM_INT__k_s_i_s, PRIM_PTR_INT__k_s_i_s);
1559                         contract_all(1296, PRIM_INT__k_s_k_s, PRIM_PTR_INT__k_s_k_s);
1560                         contract_all(1620, PRIM_INT__k_s_l_s, PRIM_PTR_INT__k_s_l_s);
1561                         contract_all(1980, PRIM_INT__k_s_m_s, PRIM_PTR_INT__k_s_m_s);
1562                         contract_all(2376, PRIM_INT__k_s_n_s, PRIM_PTR_INT__k_s_n_s);
1563                         contract_all(2808, PRIM_INT__k_s_o_s, PRIM_PTR_INT__k_s_o_s);
1564                         contract_all(1260, PRIM_INT__l_s_i_s, PRIM_PTR_INT__l_s_i_s);
1565                         contract_all(1620, PRIM_INT__l_s_k_s, PRIM_PTR_INT__l_s_k_s);
1566                         contract_all(2025, PRIM_INT__l_s_l_s, PRIM_PTR_INT__l_s_l_s);
1567                         contract_all(2475, PRIM_INT__l_s_m_s, PRIM_PTR_INT__l_s_m_s);
1568                         contract_all(2970, PRIM_INT__l_s_n_s, PRIM_PTR_INT__l_s_n_s);
1569                         contract_all(3510, PRIM_INT__l_s_o_s, PRIM_PTR_INT__l_s_o_s);
1570                         contract_all(1540, PRIM_INT__m_s_i_s, PRIM_PTR_INT__m_s_i_s);
1571                         contract_all(1980, PRIM_INT__m_s_k_s, PRIM_PTR_INT__m_s_k_s);
1572                         contract_all(2475, PRIM_INT__m_s_l_s, PRIM_PTR_INT__m_s_l_s);
1573                         contract_all(3025, PRIM_INT__m_s_m_s, PRIM_PTR_INT__m_s_m_s);
1574                         contract_all(3630, PRIM_INT__m_s_n_s, PRIM_PTR_INT__m_s_n_s);
1575                         contract_all(4290, PRIM_INT__m_s_o_s, PRIM_PTR_INT__m_s_o_s);
1576                         contract_all(1848, PRIM_INT__n_s_i_s, PRIM_PTR_INT__n_s_i_s);
1577                         contract_all(2376, PRIM_INT__n_s_k_s, PRIM_PTR_INT__n_s_k_s);
1578                         contract_all(2970, PRIM_INT__n_s_l_s, PRIM_PTR_INT__n_s_l_s);
1579                         contract_all(3630, PRIM_INT__n_s_m_s, PRIM_PTR_INT__n_s_m_s);
1580                         contract_all(4356, PRIM_INT__n_s_n_s, PRIM_PTR_INT__n_s_n_s);
1581                         contract_all(5148, PRIM_INT__n_s_o_s, PRIM_PTR_INT__n_s_o_s);
1582                         contract_all(2184, PRIM_INT__o_s_i_s, PRIM_PTR_INT__o_s_i_s);
1583                         contract_all(2808, PRIM_INT__o_s_k_s, PRIM_PTR_INT__o_s_k_s);
1584                         contract_all(3510, PRIM_INT__o_s_l_s, PRIM_PTR_INT__o_s_l_s);
1585                         contract_all(4290, PRIM_INT__o_s_m_s, PRIM_PTR_INT__o_s_m_s);
1586                         contract_all(5148, PRIM_INT__o_s_n_s, PRIM_PTR_INT__o_s_n_s);
1587                         contract_all(6084, PRIM_INT__o_s_o_s, PRIM_PTR_INT__o_s_o_s);
1588                     }
1589                     else
1590                     {
1591                         contract(784, shelloffsets, PRIM_INT__i_s_i_s, PRIM_PTR_INT__i_s_i_s);
1592                         contract(1008, shelloffsets, PRIM_INT__i_s_k_s, PRIM_PTR_INT__i_s_k_s);
1593                         contract(1260, shelloffsets, PRIM_INT__i_s_l_s, PRIM_PTR_INT__i_s_l_s);
1594                         contract(1540, shelloffsets, PRIM_INT__i_s_m_s, PRIM_PTR_INT__i_s_m_s);
1595                         contract(1848, shelloffsets, PRIM_INT__i_s_n_s, PRIM_PTR_INT__i_s_n_s);
1596                         contract(2184, shelloffsets, PRIM_INT__i_s_o_s, PRIM_PTR_INT__i_s_o_s);
1597                         contract(1008, shelloffsets, PRIM_INT__k_s_i_s, PRIM_PTR_INT__k_s_i_s);
1598                         contract(1296, shelloffsets, PRIM_INT__k_s_k_s, PRIM_PTR_INT__k_s_k_s);
1599                         contract(1620, shelloffsets, PRIM_INT__k_s_l_s, PRIM_PTR_INT__k_s_l_s);
1600                         contract(1980, shelloffsets, PRIM_INT__k_s_m_s, PRIM_PTR_INT__k_s_m_s);
1601                         contract(2376, shelloffsets, PRIM_INT__k_s_n_s, PRIM_PTR_INT__k_s_n_s);
1602                         contract(2808, shelloffsets, PRIM_INT__k_s_o_s, PRIM_PTR_INT__k_s_o_s);
1603                         contract(1260, shelloffsets, PRIM_INT__l_s_i_s, PRIM_PTR_INT__l_s_i_s);
1604                         contract(1620, shelloffsets, PRIM_INT__l_s_k_s, PRIM_PTR_INT__l_s_k_s);
1605                         contract(2025, shelloffsets, PRIM_INT__l_s_l_s, PRIM_PTR_INT__l_s_l_s);
1606                         contract(2475, shelloffsets, PRIM_INT__l_s_m_s, PRIM_PTR_INT__l_s_m_s);
1607                         contract(2970, shelloffsets, PRIM_INT__l_s_n_s, PRIM_PTR_INT__l_s_n_s);
1608                         contract(3510, shelloffsets, PRIM_INT__l_s_o_s, PRIM_PTR_INT__l_s_o_s);
1609                         contract(1540, shelloffsets, PRIM_INT__m_s_i_s, PRIM_PTR_INT__m_s_i_s);
1610                         contract(1980, shelloffsets, PRIM_INT__m_s_k_s, PRIM_PTR_INT__m_s_k_s);
1611                         contract(2475, shelloffsets, PRIM_INT__m_s_l_s, PRIM_PTR_INT__m_s_l_s);
1612                         contract(3025, shelloffsets, PRIM_INT__m_s_m_s, PRIM_PTR_INT__m_s_m_s);
1613                         contract(3630, shelloffsets, PRIM_INT__m_s_n_s, PRIM_PTR_INT__m_s_n_s);
1614                         contract(4290, shelloffsets, PRIM_INT__m_s_o_s, PRIM_PTR_INT__m_s_o_s);
1615                         contract(1848, shelloffsets, PRIM_INT__n_s_i_s, PRIM_PTR_INT__n_s_i_s);
1616                         contract(2376, shelloffsets, PRIM_INT__n_s_k_s, PRIM_PTR_INT__n_s_k_s);
1617                         contract(2970, shelloffsets, PRIM_INT__n_s_l_s, PRIM_PTR_INT__n_s_l_s);
1618                         contract(3630, shelloffsets, PRIM_INT__n_s_m_s, PRIM_PTR_INT__n_s_m_s);
1619                         contract(4356, shelloffsets, PRIM_INT__n_s_n_s, PRIM_PTR_INT__n_s_n_s);
1620                         contract(5148, shelloffsets, PRIM_INT__n_s_o_s, PRIM_PTR_INT__n_s_o_s);
1621                         contract(2184, shelloffsets, PRIM_INT__o_s_i_s, PRIM_PTR_INT__o_s_i_s);
1622                         contract(2808, shelloffsets, PRIM_INT__o_s_k_s, PRIM_PTR_INT__o_s_k_s);
1623                         contract(3510, shelloffsets, PRIM_INT__o_s_l_s, PRIM_PTR_INT__o_s_l_s);
1624                         contract(4290, shelloffsets, PRIM_INT__o_s_m_s, PRIM_PTR_INT__o_s_m_s);
1625                         contract(5148, shelloffsets, PRIM_INT__o_s_n_s, PRIM_PTR_INT__o_s_n_s);
1626                         contract(6084, shelloffsets, PRIM_INT__o_s_o_s, PRIM_PTR_INT__o_s_o_s);
1627                         PRIM_PTR_INT__i_s_i_s += lastoffset*784;
1628                         PRIM_PTR_INT__i_s_k_s += lastoffset*1008;
1629                         PRIM_PTR_INT__i_s_l_s += lastoffset*1260;
1630                         PRIM_PTR_INT__i_s_m_s += lastoffset*1540;
1631                         PRIM_PTR_INT__i_s_n_s += lastoffset*1848;
1632                         PRIM_PTR_INT__i_s_o_s += lastoffset*2184;
1633                         PRIM_PTR_INT__k_s_i_s += lastoffset*1008;
1634                         PRIM_PTR_INT__k_s_k_s += lastoffset*1296;
1635                         PRIM_PTR_INT__k_s_l_s += lastoffset*1620;
1636                         PRIM_PTR_INT__k_s_m_s += lastoffset*1980;
1637                         PRIM_PTR_INT__k_s_n_s += lastoffset*2376;
1638                         PRIM_PTR_INT__k_s_o_s += lastoffset*2808;
1639                         PRIM_PTR_INT__l_s_i_s += lastoffset*1260;
1640                         PRIM_PTR_INT__l_s_k_s += lastoffset*1620;
1641                         PRIM_PTR_INT__l_s_l_s += lastoffset*2025;
1642                         PRIM_PTR_INT__l_s_m_s += lastoffset*2475;
1643                         PRIM_PTR_INT__l_s_n_s += lastoffset*2970;
1644                         PRIM_PTR_INT__l_s_o_s += lastoffset*3510;
1645                         PRIM_PTR_INT__m_s_i_s += lastoffset*1540;
1646                         PRIM_PTR_INT__m_s_k_s += lastoffset*1980;
1647                         PRIM_PTR_INT__m_s_l_s += lastoffset*2475;
1648                         PRIM_PTR_INT__m_s_m_s += lastoffset*3025;
1649                         PRIM_PTR_INT__m_s_n_s += lastoffset*3630;
1650                         PRIM_PTR_INT__m_s_o_s += lastoffset*4290;
1651                         PRIM_PTR_INT__n_s_i_s += lastoffset*1848;
1652                         PRIM_PTR_INT__n_s_k_s += lastoffset*2376;
1653                         PRIM_PTR_INT__n_s_l_s += lastoffset*2970;
1654                         PRIM_PTR_INT__n_s_m_s += lastoffset*3630;
1655                         PRIM_PTR_INT__n_s_n_s += lastoffset*4356;
1656                         PRIM_PTR_INT__n_s_o_s += lastoffset*5148;
1657                         PRIM_PTR_INT__o_s_i_s += lastoffset*2184;
1658                         PRIM_PTR_INT__o_s_k_s += lastoffset*2808;
1659                         PRIM_PTR_INT__o_s_l_s += lastoffset*3510;
1660                         PRIM_PTR_INT__o_s_m_s += lastoffset*4290;
1661                         PRIM_PTR_INT__o_s_n_s += lastoffset*5148;
1662                         PRIM_PTR_INT__o_s_o_s += lastoffset*6084;
1663                     }
1664 
1665                 }  // close loop over j
1666             }  // close loop over i
1667 
1668             //Advance to the next batch
1669             jstart = SIMINT_SIMD_ROUND(jend);
1670 
1671             //////////////////////////////////////////////
1672             // Contracted integrals: Horizontal recurrance
1673             //////////////////////////////////////////////
1674 
1675 
1676             const double hAB[3] = { P.AB_x[ab], P.AB_y[ab], P.AB_z[ab] };
1677 
1678 
1679             for(abcd = 0; abcd < nshellbatch; ++abcd, ++real_abcd)
1680             {
1681                 const double hCD[3] = { Q.AB_x[cd+abcd], Q.AB_y[cd+abcd], Q.AB_z[cd+abcd] };
1682 
1683                 // set up HRR pointers
1684                 double const * restrict HRR_INT__i_s_i_s = INT__i_s_i_s + abcd * 784;
1685                 double const * restrict HRR_INT__i_s_k_s = INT__i_s_k_s + abcd * 1008;
1686                 double const * restrict HRR_INT__i_s_l_s = INT__i_s_l_s + abcd * 1260;
1687                 double const * restrict HRR_INT__i_s_m_s = INT__i_s_m_s + abcd * 1540;
1688                 double const * restrict HRR_INT__i_s_n_s = INT__i_s_n_s + abcd * 1848;
1689                 double const * restrict HRR_INT__i_s_o_s = INT__i_s_o_s + abcd * 2184;
1690                 double const * restrict HRR_INT__k_s_i_s = INT__k_s_i_s + abcd * 1008;
1691                 double const * restrict HRR_INT__k_s_k_s = INT__k_s_k_s + abcd * 1296;
1692                 double const * restrict HRR_INT__k_s_l_s = INT__k_s_l_s + abcd * 1620;
1693                 double const * restrict HRR_INT__k_s_m_s = INT__k_s_m_s + abcd * 1980;
1694                 double const * restrict HRR_INT__k_s_n_s = INT__k_s_n_s + abcd * 2376;
1695                 double const * restrict HRR_INT__k_s_o_s = INT__k_s_o_s + abcd * 2808;
1696                 double const * restrict HRR_INT__l_s_i_s = INT__l_s_i_s + abcd * 1260;
1697                 double const * restrict HRR_INT__l_s_k_s = INT__l_s_k_s + abcd * 1620;
1698                 double const * restrict HRR_INT__l_s_l_s = INT__l_s_l_s + abcd * 2025;
1699                 double const * restrict HRR_INT__l_s_m_s = INT__l_s_m_s + abcd * 2475;
1700                 double const * restrict HRR_INT__l_s_n_s = INT__l_s_n_s + abcd * 2970;
1701                 double const * restrict HRR_INT__l_s_o_s = INT__l_s_o_s + abcd * 3510;
1702                 double const * restrict HRR_INT__m_s_i_s = INT__m_s_i_s + abcd * 1540;
1703                 double const * restrict HRR_INT__m_s_k_s = INT__m_s_k_s + abcd * 1980;
1704                 double const * restrict HRR_INT__m_s_l_s = INT__m_s_l_s + abcd * 2475;
1705                 double const * restrict HRR_INT__m_s_m_s = INT__m_s_m_s + abcd * 3025;
1706                 double const * restrict HRR_INT__m_s_n_s = INT__m_s_n_s + abcd * 3630;
1707                 double const * restrict HRR_INT__m_s_o_s = INT__m_s_o_s + abcd * 4290;
1708                 double const * restrict HRR_INT__n_s_i_s = INT__n_s_i_s + abcd * 1848;
1709                 double const * restrict HRR_INT__n_s_k_s = INT__n_s_k_s + abcd * 2376;
1710                 double const * restrict HRR_INT__n_s_l_s = INT__n_s_l_s + abcd * 2970;
1711                 double const * restrict HRR_INT__n_s_m_s = INT__n_s_m_s + abcd * 3630;
1712                 double const * restrict HRR_INT__n_s_n_s = INT__n_s_n_s + abcd * 4356;
1713                 double const * restrict HRR_INT__n_s_o_s = INT__n_s_o_s + abcd * 5148;
1714                 double const * restrict HRR_INT__o_s_i_s = INT__o_s_i_s + abcd * 2184;
1715                 double const * restrict HRR_INT__o_s_k_s = INT__o_s_k_s + abcd * 2808;
1716                 double const * restrict HRR_INT__o_s_l_s = INT__o_s_l_s + abcd * 3510;
1717                 double const * restrict HRR_INT__o_s_m_s = INT__o_s_m_s + abcd * 4290;
1718                 double const * restrict HRR_INT__o_s_n_s = INT__o_s_n_s + abcd * 5148;
1719                 double const * restrict HRR_INT__o_s_o_s = INT__o_s_o_s + abcd * 6084;
1720                 double * restrict HRR_INT__i_h_i_h = INT__i_h_i_h + real_abcd * 345744;
1721 
1722                 // form INT__i_p_i_s
1723                 ostei_general_hrr_J(6, 1, 6, 0, hAB, HRR_INT__k_s_i_s, HRR_INT__i_s_i_s, HRR_INT__i_p_i_s);
1724 
1725                 // form INT__i_p_k_s
1726                 ostei_general_hrr_J(6, 1, 7, 0, hAB, HRR_INT__k_s_k_s, HRR_INT__i_s_k_s, HRR_INT__i_p_k_s);
1727 
1728                 // form INT__i_p_l_s
1729                 ostei_general_hrr_J(6, 1, 8, 0, hAB, HRR_INT__k_s_l_s, HRR_INT__i_s_l_s, HRR_INT__i_p_l_s);
1730 
1731                 // form INT__i_p_m_s
1732                 ostei_general_hrr_J(6, 1, 9, 0, hAB, HRR_INT__k_s_m_s, HRR_INT__i_s_m_s, HRR_INT__i_p_m_s);
1733 
1734                 // form INT__i_p_n_s
1735                 ostei_general_hrr_J(6, 1, 10, 0, hAB, HRR_INT__k_s_n_s, HRR_INT__i_s_n_s, HRR_INT__i_p_n_s);
1736 
1737                 // form INT__i_p_o_s
1738                 ostei_general_hrr_J(6, 1, 11, 0, hAB, HRR_INT__k_s_o_s, HRR_INT__i_s_o_s, HRR_INT__i_p_o_s);
1739 
1740                 // form INT__k_p_i_s
1741                 ostei_general_hrr_J(7, 1, 6, 0, hAB, HRR_INT__l_s_i_s, HRR_INT__k_s_i_s, HRR_INT__k_p_i_s);
1742 
1743                 // form INT__k_p_k_s
1744                 ostei_general_hrr_J(7, 1, 7, 0, hAB, HRR_INT__l_s_k_s, HRR_INT__k_s_k_s, HRR_INT__k_p_k_s);
1745 
1746                 // form INT__k_p_l_s
1747                 ostei_general_hrr_J(7, 1, 8, 0, hAB, HRR_INT__l_s_l_s, HRR_INT__k_s_l_s, HRR_INT__k_p_l_s);
1748 
1749                 // form INT__k_p_m_s
1750                 ostei_general_hrr_J(7, 1, 9, 0, hAB, HRR_INT__l_s_m_s, HRR_INT__k_s_m_s, HRR_INT__k_p_m_s);
1751 
1752                 // form INT__k_p_n_s
1753                 ostei_general_hrr_J(7, 1, 10, 0, hAB, HRR_INT__l_s_n_s, HRR_INT__k_s_n_s, HRR_INT__k_p_n_s);
1754 
1755                 // form INT__k_p_o_s
1756                 ostei_general_hrr_J(7, 1, 11, 0, hAB, HRR_INT__l_s_o_s, HRR_INT__k_s_o_s, HRR_INT__k_p_o_s);
1757 
1758                 // form INT__l_p_i_s
1759                 ostei_general_hrr_J(8, 1, 6, 0, hAB, HRR_INT__m_s_i_s, HRR_INT__l_s_i_s, HRR_INT__l_p_i_s);
1760 
1761                 // form INT__l_p_k_s
1762                 ostei_general_hrr_J(8, 1, 7, 0, hAB, HRR_INT__m_s_k_s, HRR_INT__l_s_k_s, HRR_INT__l_p_k_s);
1763 
1764                 // form INT__l_p_l_s
1765                 ostei_general_hrr_J(8, 1, 8, 0, hAB, HRR_INT__m_s_l_s, HRR_INT__l_s_l_s, HRR_INT__l_p_l_s);
1766 
1767                 // form INT__l_p_m_s
1768                 ostei_general_hrr_J(8, 1, 9, 0, hAB, HRR_INT__m_s_m_s, HRR_INT__l_s_m_s, HRR_INT__l_p_m_s);
1769 
1770                 // form INT__l_p_n_s
1771                 ostei_general_hrr_J(8, 1, 10, 0, hAB, HRR_INT__m_s_n_s, HRR_INT__l_s_n_s, HRR_INT__l_p_n_s);
1772 
1773                 // form INT__l_p_o_s
1774                 ostei_general_hrr_J(8, 1, 11, 0, hAB, HRR_INT__m_s_o_s, HRR_INT__l_s_o_s, HRR_INT__l_p_o_s);
1775 
1776                 // form INT__m_p_i_s
1777                 ostei_general_hrr_J(9, 1, 6, 0, hAB, HRR_INT__n_s_i_s, HRR_INT__m_s_i_s, HRR_INT__m_p_i_s);
1778 
1779                 // form INT__m_p_k_s
1780                 ostei_general_hrr_J(9, 1, 7, 0, hAB, HRR_INT__n_s_k_s, HRR_INT__m_s_k_s, HRR_INT__m_p_k_s);
1781 
1782                 // form INT__m_p_l_s
1783                 ostei_general_hrr_J(9, 1, 8, 0, hAB, HRR_INT__n_s_l_s, HRR_INT__m_s_l_s, HRR_INT__m_p_l_s);
1784 
1785                 // form INT__m_p_m_s
1786                 ostei_general_hrr_J(9, 1, 9, 0, hAB, HRR_INT__n_s_m_s, HRR_INT__m_s_m_s, HRR_INT__m_p_m_s);
1787 
1788                 // form INT__m_p_n_s
1789                 ostei_general_hrr_J(9, 1, 10, 0, hAB, HRR_INT__n_s_n_s, HRR_INT__m_s_n_s, HRR_INT__m_p_n_s);
1790 
1791                 // form INT__m_p_o_s
1792                 ostei_general_hrr_J(9, 1, 11, 0, hAB, HRR_INT__n_s_o_s, HRR_INT__m_s_o_s, HRR_INT__m_p_o_s);
1793 
1794                 // form INT__n_p_i_s
1795                 ostei_general_hrr_J(10, 1, 6, 0, hAB, HRR_INT__o_s_i_s, HRR_INT__n_s_i_s, HRR_INT__n_p_i_s);
1796 
1797                 // form INT__n_p_k_s
1798                 ostei_general_hrr_J(10, 1, 7, 0, hAB, HRR_INT__o_s_k_s, HRR_INT__n_s_k_s, HRR_INT__n_p_k_s);
1799 
1800                 // form INT__n_p_l_s
1801                 ostei_general_hrr_J(10, 1, 8, 0, hAB, HRR_INT__o_s_l_s, HRR_INT__n_s_l_s, HRR_INT__n_p_l_s);
1802 
1803                 // form INT__n_p_m_s
1804                 ostei_general_hrr_J(10, 1, 9, 0, hAB, HRR_INT__o_s_m_s, HRR_INT__n_s_m_s, HRR_INT__n_p_m_s);
1805 
1806                 // form INT__n_p_n_s
1807                 ostei_general_hrr_J(10, 1, 10, 0, hAB, HRR_INT__o_s_n_s, HRR_INT__n_s_n_s, HRR_INT__n_p_n_s);
1808 
1809                 // form INT__n_p_o_s
1810                 ostei_general_hrr_J(10, 1, 11, 0, hAB, HRR_INT__o_s_o_s, HRR_INT__n_s_o_s, HRR_INT__n_p_o_s);
1811 
1812                 // form INT__i_d_i_s
1813                 ostei_general_hrr_J(6, 2, 6, 0, hAB, HRR_INT__k_p_i_s, HRR_INT__i_p_i_s, HRR_INT__i_d_i_s);
1814 
1815                 // form INT__i_d_k_s
1816                 ostei_general_hrr_J(6, 2, 7, 0, hAB, HRR_INT__k_p_k_s, HRR_INT__i_p_k_s, HRR_INT__i_d_k_s);
1817 
1818                 // form INT__i_d_l_s
1819                 ostei_general_hrr_J(6, 2, 8, 0, hAB, HRR_INT__k_p_l_s, HRR_INT__i_p_l_s, HRR_INT__i_d_l_s);
1820 
1821                 // form INT__i_d_m_s
1822                 ostei_general_hrr_J(6, 2, 9, 0, hAB, HRR_INT__k_p_m_s, HRR_INT__i_p_m_s, HRR_INT__i_d_m_s);
1823 
1824                 // form INT__i_d_n_s
1825                 ostei_general_hrr_J(6, 2, 10, 0, hAB, HRR_INT__k_p_n_s, HRR_INT__i_p_n_s, HRR_INT__i_d_n_s);
1826 
1827                 // form INT__i_d_o_s
1828                 ostei_general_hrr_J(6, 2, 11, 0, hAB, HRR_INT__k_p_o_s, HRR_INT__i_p_o_s, HRR_INT__i_d_o_s);
1829 
1830                 // form INT__k_d_i_s
1831                 ostei_general_hrr_J(7, 2, 6, 0, hAB, HRR_INT__l_p_i_s, HRR_INT__k_p_i_s, HRR_INT__k_d_i_s);
1832 
1833                 // form INT__k_d_k_s
1834                 ostei_general_hrr_J(7, 2, 7, 0, hAB, HRR_INT__l_p_k_s, HRR_INT__k_p_k_s, HRR_INT__k_d_k_s);
1835 
1836                 // form INT__k_d_l_s
1837                 ostei_general_hrr_J(7, 2, 8, 0, hAB, HRR_INT__l_p_l_s, HRR_INT__k_p_l_s, HRR_INT__k_d_l_s);
1838 
1839                 // form INT__k_d_m_s
1840                 ostei_general_hrr_J(7, 2, 9, 0, hAB, HRR_INT__l_p_m_s, HRR_INT__k_p_m_s, HRR_INT__k_d_m_s);
1841 
1842                 // form INT__k_d_n_s
1843                 ostei_general_hrr_J(7, 2, 10, 0, hAB, HRR_INT__l_p_n_s, HRR_INT__k_p_n_s, HRR_INT__k_d_n_s);
1844 
1845                 // form INT__k_d_o_s
1846                 ostei_general_hrr_J(7, 2, 11, 0, hAB, HRR_INT__l_p_o_s, HRR_INT__k_p_o_s, HRR_INT__k_d_o_s);
1847 
1848                 // form INT__l_d_i_s
1849                 ostei_general_hrr_J(8, 2, 6, 0, hAB, HRR_INT__m_p_i_s, HRR_INT__l_p_i_s, HRR_INT__l_d_i_s);
1850 
1851                 // form INT__l_d_k_s
1852                 ostei_general_hrr_J(8, 2, 7, 0, hAB, HRR_INT__m_p_k_s, HRR_INT__l_p_k_s, HRR_INT__l_d_k_s);
1853 
1854                 // form INT__l_d_l_s
1855                 ostei_general_hrr_J(8, 2, 8, 0, hAB, HRR_INT__m_p_l_s, HRR_INT__l_p_l_s, HRR_INT__l_d_l_s);
1856 
1857                 // form INT__l_d_m_s
1858                 ostei_general_hrr_J(8, 2, 9, 0, hAB, HRR_INT__m_p_m_s, HRR_INT__l_p_m_s, HRR_INT__l_d_m_s);
1859 
1860                 // form INT__l_d_n_s
1861                 ostei_general_hrr_J(8, 2, 10, 0, hAB, HRR_INT__m_p_n_s, HRR_INT__l_p_n_s, HRR_INT__l_d_n_s);
1862 
1863                 // form INT__l_d_o_s
1864                 ostei_general_hrr_J(8, 2, 11, 0, hAB, HRR_INT__m_p_o_s, HRR_INT__l_p_o_s, HRR_INT__l_d_o_s);
1865 
1866                 // form INT__m_d_i_s
1867                 ostei_general_hrr_J(9, 2, 6, 0, hAB, HRR_INT__n_p_i_s, HRR_INT__m_p_i_s, HRR_INT__m_d_i_s);
1868 
1869                 // form INT__m_d_k_s
1870                 ostei_general_hrr_J(9, 2, 7, 0, hAB, HRR_INT__n_p_k_s, HRR_INT__m_p_k_s, HRR_INT__m_d_k_s);
1871 
1872                 // form INT__m_d_l_s
1873                 ostei_general_hrr_J(9, 2, 8, 0, hAB, HRR_INT__n_p_l_s, HRR_INT__m_p_l_s, HRR_INT__m_d_l_s);
1874 
1875                 // form INT__m_d_m_s
1876                 ostei_general_hrr_J(9, 2, 9, 0, hAB, HRR_INT__n_p_m_s, HRR_INT__m_p_m_s, HRR_INT__m_d_m_s);
1877 
1878                 // form INT__m_d_n_s
1879                 ostei_general_hrr_J(9, 2, 10, 0, hAB, HRR_INT__n_p_n_s, HRR_INT__m_p_n_s, HRR_INT__m_d_n_s);
1880 
1881                 // form INT__m_d_o_s
1882                 ostei_general_hrr_J(9, 2, 11, 0, hAB, HRR_INT__n_p_o_s, HRR_INT__m_p_o_s, HRR_INT__m_d_o_s);
1883 
1884                 // form INT__i_f_i_s
1885                 ostei_general_hrr_J(6, 3, 6, 0, hAB, HRR_INT__k_d_i_s, HRR_INT__i_d_i_s, HRR_INT__i_f_i_s);
1886 
1887                 // form INT__i_f_k_s
1888                 ostei_general_hrr_J(6, 3, 7, 0, hAB, HRR_INT__k_d_k_s, HRR_INT__i_d_k_s, HRR_INT__i_f_k_s);
1889 
1890                 // form INT__i_f_l_s
1891                 ostei_general_hrr_J(6, 3, 8, 0, hAB, HRR_INT__k_d_l_s, HRR_INT__i_d_l_s, HRR_INT__i_f_l_s);
1892 
1893                 // form INT__i_f_m_s
1894                 ostei_general_hrr_J(6, 3, 9, 0, hAB, HRR_INT__k_d_m_s, HRR_INT__i_d_m_s, HRR_INT__i_f_m_s);
1895 
1896                 // form INT__i_f_n_s
1897                 ostei_general_hrr_J(6, 3, 10, 0, hAB, HRR_INT__k_d_n_s, HRR_INT__i_d_n_s, HRR_INT__i_f_n_s);
1898 
1899                 // form INT__i_f_o_s
1900                 ostei_general_hrr_J(6, 3, 11, 0, hAB, HRR_INT__k_d_o_s, HRR_INT__i_d_o_s, HRR_INT__i_f_o_s);
1901 
1902                 // form INT__k_f_i_s
1903                 ostei_general_hrr_J(7, 3, 6, 0, hAB, HRR_INT__l_d_i_s, HRR_INT__k_d_i_s, HRR_INT__k_f_i_s);
1904 
1905                 // form INT__k_f_k_s
1906                 ostei_general_hrr_J(7, 3, 7, 0, hAB, HRR_INT__l_d_k_s, HRR_INT__k_d_k_s, HRR_INT__k_f_k_s);
1907 
1908                 // form INT__k_f_l_s
1909                 ostei_general_hrr_J(7, 3, 8, 0, hAB, HRR_INT__l_d_l_s, HRR_INT__k_d_l_s, HRR_INT__k_f_l_s);
1910 
1911                 // form INT__k_f_m_s
1912                 ostei_general_hrr_J(7, 3, 9, 0, hAB, HRR_INT__l_d_m_s, HRR_INT__k_d_m_s, HRR_INT__k_f_m_s);
1913 
1914                 // form INT__k_f_n_s
1915                 ostei_general_hrr_J(7, 3, 10, 0, hAB, HRR_INT__l_d_n_s, HRR_INT__k_d_n_s, HRR_INT__k_f_n_s);
1916 
1917                 // form INT__k_f_o_s
1918                 ostei_general_hrr_J(7, 3, 11, 0, hAB, HRR_INT__l_d_o_s, HRR_INT__k_d_o_s, HRR_INT__k_f_o_s);
1919 
1920                 // form INT__l_f_i_s
1921                 ostei_general_hrr_J(8, 3, 6, 0, hAB, HRR_INT__m_d_i_s, HRR_INT__l_d_i_s, HRR_INT__l_f_i_s);
1922 
1923                 // form INT__l_f_k_s
1924                 ostei_general_hrr_J(8, 3, 7, 0, hAB, HRR_INT__m_d_k_s, HRR_INT__l_d_k_s, HRR_INT__l_f_k_s);
1925 
1926                 // form INT__l_f_l_s
1927                 ostei_general_hrr_J(8, 3, 8, 0, hAB, HRR_INT__m_d_l_s, HRR_INT__l_d_l_s, HRR_INT__l_f_l_s);
1928 
1929                 // form INT__l_f_m_s
1930                 ostei_general_hrr_J(8, 3, 9, 0, hAB, HRR_INT__m_d_m_s, HRR_INT__l_d_m_s, HRR_INT__l_f_m_s);
1931 
1932                 // form INT__l_f_n_s
1933                 ostei_general_hrr_J(8, 3, 10, 0, hAB, HRR_INT__m_d_n_s, HRR_INT__l_d_n_s, HRR_INT__l_f_n_s);
1934 
1935                 // form INT__l_f_o_s
1936                 ostei_general_hrr_J(8, 3, 11, 0, hAB, HRR_INT__m_d_o_s, HRR_INT__l_d_o_s, HRR_INT__l_f_o_s);
1937 
1938                 // form INT__i_g_i_s
1939                 ostei_general_hrr_J(6, 4, 6, 0, hAB, HRR_INT__k_f_i_s, HRR_INT__i_f_i_s, HRR_INT__i_g_i_s);
1940 
1941                 // form INT__i_g_k_s
1942                 ostei_general_hrr_J(6, 4, 7, 0, hAB, HRR_INT__k_f_k_s, HRR_INT__i_f_k_s, HRR_INT__i_g_k_s);
1943 
1944                 // form INT__i_g_l_s
1945                 ostei_general_hrr_J(6, 4, 8, 0, hAB, HRR_INT__k_f_l_s, HRR_INT__i_f_l_s, HRR_INT__i_g_l_s);
1946 
1947                 // form INT__i_g_m_s
1948                 ostei_general_hrr_J(6, 4, 9, 0, hAB, HRR_INT__k_f_m_s, HRR_INT__i_f_m_s, HRR_INT__i_g_m_s);
1949 
1950                 // form INT__i_g_n_s
1951                 ostei_general_hrr_J(6, 4, 10, 0, hAB, HRR_INT__k_f_n_s, HRR_INT__i_f_n_s, HRR_INT__i_g_n_s);
1952 
1953                 // form INT__i_g_o_s
1954                 ostei_general_hrr_J(6, 4, 11, 0, hAB, HRR_INT__k_f_o_s, HRR_INT__i_f_o_s, HRR_INT__i_g_o_s);
1955 
1956                 // form INT__k_g_i_s
1957                 ostei_general_hrr_J(7, 4, 6, 0, hAB, HRR_INT__l_f_i_s, HRR_INT__k_f_i_s, HRR_INT__k_g_i_s);
1958 
1959                 // form INT__k_g_k_s
1960                 ostei_general_hrr_J(7, 4, 7, 0, hAB, HRR_INT__l_f_k_s, HRR_INT__k_f_k_s, HRR_INT__k_g_k_s);
1961 
1962                 // form INT__k_g_l_s
1963                 ostei_general_hrr_J(7, 4, 8, 0, hAB, HRR_INT__l_f_l_s, HRR_INT__k_f_l_s, HRR_INT__k_g_l_s);
1964 
1965                 // form INT__k_g_m_s
1966                 ostei_general_hrr_J(7, 4, 9, 0, hAB, HRR_INT__l_f_m_s, HRR_INT__k_f_m_s, HRR_INT__k_g_m_s);
1967 
1968                 // form INT__k_g_n_s
1969                 ostei_general_hrr_J(7, 4, 10, 0, hAB, HRR_INT__l_f_n_s, HRR_INT__k_f_n_s, HRR_INT__k_g_n_s);
1970 
1971                 // form INT__k_g_o_s
1972                 ostei_general_hrr_J(7, 4, 11, 0, hAB, HRR_INT__l_f_o_s, HRR_INT__k_f_o_s, HRR_INT__k_g_o_s);
1973 
1974                 // form INT__i_h_i_s
1975                 ostei_general_hrr_J(6, 5, 6, 0, hAB, HRR_INT__k_g_i_s, HRR_INT__i_g_i_s, HRR_INT__i_h_i_s);
1976 
1977                 // form INT__i_h_k_s
1978                 ostei_general_hrr_J(6, 5, 7, 0, hAB, HRR_INT__k_g_k_s, HRR_INT__i_g_k_s, HRR_INT__i_h_k_s);
1979 
1980                 // form INT__i_h_l_s
1981                 ostei_general_hrr_J(6, 5, 8, 0, hAB, HRR_INT__k_g_l_s, HRR_INT__i_g_l_s, HRR_INT__i_h_l_s);
1982 
1983                 // form INT__i_h_m_s
1984                 ostei_general_hrr_J(6, 5, 9, 0, hAB, HRR_INT__k_g_m_s, HRR_INT__i_g_m_s, HRR_INT__i_h_m_s);
1985 
1986                 // form INT__i_h_n_s
1987                 ostei_general_hrr_J(6, 5, 10, 0, hAB, HRR_INT__k_g_n_s, HRR_INT__i_g_n_s, HRR_INT__i_h_n_s);
1988 
1989                 // form INT__i_h_o_s
1990                 ostei_general_hrr_J(6, 5, 11, 0, hAB, HRR_INT__k_g_o_s, HRR_INT__i_g_o_s, HRR_INT__i_h_o_s);
1991 
1992                 // form INT__i_h_i_p
1993                 ostei_general_hrr_L(6, 5, 6, 1, hCD, HRR_INT__i_h_k_s, HRR_INT__i_h_i_s, HRR_INT__i_h_i_p);
1994 
1995                 // form INT__i_h_k_p
1996                 ostei_general_hrr_L(6, 5, 7, 1, hCD, HRR_INT__i_h_l_s, HRR_INT__i_h_k_s, HRR_INT__i_h_k_p);
1997 
1998                 // form INT__i_h_l_p
1999                 ostei_general_hrr_L(6, 5, 8, 1, hCD, HRR_INT__i_h_m_s, HRR_INT__i_h_l_s, HRR_INT__i_h_l_p);
2000 
2001                 // form INT__i_h_m_p
2002                 ostei_general_hrr_L(6, 5, 9, 1, hCD, HRR_INT__i_h_n_s, HRR_INT__i_h_m_s, HRR_INT__i_h_m_p);
2003 
2004                 // form INT__i_h_n_p
2005                 ostei_general_hrr_L(6, 5, 10, 1, hCD, HRR_INT__i_h_o_s, HRR_INT__i_h_n_s, HRR_INT__i_h_n_p);
2006 
2007                 // form INT__i_h_i_d
2008                 ostei_general_hrr_L(6, 5, 6, 2, hCD, HRR_INT__i_h_k_p, HRR_INT__i_h_i_p, HRR_INT__i_h_i_d);
2009 
2010                 // form INT__i_h_k_d
2011                 ostei_general_hrr_L(6, 5, 7, 2, hCD, HRR_INT__i_h_l_p, HRR_INT__i_h_k_p, HRR_INT__i_h_k_d);
2012 
2013                 // form INT__i_h_l_d
2014                 ostei_general_hrr_L(6, 5, 8, 2, hCD, HRR_INT__i_h_m_p, HRR_INT__i_h_l_p, HRR_INT__i_h_l_d);
2015 
2016                 // form INT__i_h_m_d
2017                 ostei_general_hrr_L(6, 5, 9, 2, hCD, HRR_INT__i_h_n_p, HRR_INT__i_h_m_p, HRR_INT__i_h_m_d);
2018 
2019                 // form INT__i_h_i_f
2020                 ostei_general_hrr_L(6, 5, 6, 3, hCD, HRR_INT__i_h_k_d, HRR_INT__i_h_i_d, HRR_INT__i_h_i_f);
2021 
2022                 // form INT__i_h_k_f
2023                 ostei_general_hrr_L(6, 5, 7, 3, hCD, HRR_INT__i_h_l_d, HRR_INT__i_h_k_d, HRR_INT__i_h_k_f);
2024 
2025                 // form INT__i_h_l_f
2026                 ostei_general_hrr_L(6, 5, 8, 3, hCD, HRR_INT__i_h_m_d, HRR_INT__i_h_l_d, HRR_INT__i_h_l_f);
2027 
2028                 // form INT__i_h_i_g
2029                 ostei_general_hrr_L(6, 5, 6, 4, hCD, HRR_INT__i_h_k_f, HRR_INT__i_h_i_f, HRR_INT__i_h_i_g);
2030 
2031                 // form INT__i_h_k_g
2032                 ostei_general_hrr_L(6, 5, 7, 4, hCD, HRR_INT__i_h_l_f, HRR_INT__i_h_k_f, HRR_INT__i_h_k_g);
2033 
2034                 // form INT__i_h_i_h
2035                 ostei_general_hrr_L(6, 5, 6, 5, hCD, HRR_INT__i_h_k_g, HRR_INT__i_h_i_g, HRR_INT__i_h_i_h);
2036 
2037 
2038             }  // close HRR loop
2039 
2040 
2041         }   // close loop cdbatch
2042 
2043         istart = iend;
2044     }  // close loop over ab
2045 
2046     return P.nshell12_clip * Q.nshell12_clip;
2047 }
2048 
ostei_h_i_i_h(struct simint_multi_shellpair const P,struct simint_multi_shellpair const Q,double screen_tol,double * const restrict work,double * const restrict INT__h_i_i_h)2049 int ostei_h_i_i_h(struct simint_multi_shellpair const P,
2050                   struct simint_multi_shellpair const Q,
2051                   double screen_tol,
2052                   double * const restrict work,
2053                   double * const restrict INT__h_i_i_h)
2054 {
2055     double P_AB[3*P.nshell12];
2056     struct simint_multi_shellpair P_tmp = P;
2057     P_tmp.PA_x = P.PB_x;  P_tmp.PA_y = P.PB_y;  P_tmp.PA_z = P.PB_z;
2058     P_tmp.PB_x = P.PA_x;  P_tmp.PB_y = P.PA_y;  P_tmp.PB_z = P.PA_z;
2059     P_tmp.AB_x = P_AB;
2060     P_tmp.AB_y = P_AB + P.nshell12;
2061     P_tmp.AB_z = P_AB + 2*P.nshell12;
2062 
2063     for(int i = 0; i < P.nshell12; i++)
2064     {
2065         P_tmp.AB_x[i] = -P.AB_x[i];
2066         P_tmp.AB_y[i] = -P.AB_y[i];
2067         P_tmp.AB_z[i] = -P.AB_z[i];
2068     }
2069 
2070     int ret = ostei_i_h_i_h(P_tmp, Q, screen_tol, work, INT__h_i_i_h);
2071     double buffer[345744] SIMINT_ALIGN_ARRAY_DBL;
2072 
2073     for(int q = 0; q < ret; q++)
2074     {
2075         int idx = 0;
2076         for(int a = 0; a < 21; ++a)
2077         for(int b = 0; b < 28; ++b)
2078         for(int c = 0; c < 28; ++c)
2079         for(int d = 0; d < 21; ++d)
2080             buffer[idx++] = INT__h_i_i_h[q*345744+b*12348+a*588+c*21+d];
2081 
2082         memcpy(INT__h_i_i_h+q*345744, buffer, 345744*sizeof(double));
2083     }
2084 
2085     return ret;
2086 }
2087 
ostei_i_h_h_i(struct simint_multi_shellpair const P,struct simint_multi_shellpair const Q,double screen_tol,double * const restrict work,double * const restrict INT__i_h_h_i)2088 int ostei_i_h_h_i(struct simint_multi_shellpair const P,
2089                   struct simint_multi_shellpair const Q,
2090                   double screen_tol,
2091                   double * const restrict work,
2092                   double * const restrict INT__i_h_h_i)
2093 {
2094     double Q_AB[3*Q.nshell12];
2095     struct simint_multi_shellpair Q_tmp = Q;
2096     Q_tmp.PA_x = Q.PB_x;  Q_tmp.PA_y = Q.PB_y;  Q_tmp.PA_z = Q.PB_z;
2097     Q_tmp.PB_x = Q.PA_x;  Q_tmp.PB_y = Q.PA_y;  Q_tmp.PB_z = Q.PA_z;
2098     Q_tmp.AB_x = Q_AB;
2099     Q_tmp.AB_y = Q_AB + Q.nshell12;
2100     Q_tmp.AB_z = Q_AB + 2*Q.nshell12;
2101 
2102     for(int i = 0; i < Q.nshell12; i++)
2103     {
2104         Q_tmp.AB_x[i] = -Q.AB_x[i];
2105         Q_tmp.AB_y[i] = -Q.AB_y[i];
2106         Q_tmp.AB_z[i] = -Q.AB_z[i];
2107     }
2108 
2109     int ret = ostei_i_h_i_h(P, Q_tmp, screen_tol, work, INT__i_h_h_i);
2110     double buffer[345744] SIMINT_ALIGN_ARRAY_DBL;
2111 
2112     for(int q = 0; q < ret; q++)
2113     {
2114         int idx = 0;
2115         for(int a = 0; a < 28; ++a)
2116         for(int b = 0; b < 21; ++b)
2117         for(int c = 0; c < 21; ++c)
2118         for(int d = 0; d < 28; ++d)
2119             buffer[idx++] = INT__i_h_h_i[q*345744+a*12348+b*588+d*21+c];
2120 
2121         memcpy(INT__i_h_h_i+q*345744, buffer, 345744*sizeof(double));
2122     }
2123 
2124     return ret;
2125 }
2126 
ostei_h_i_h_i(struct simint_multi_shellpair const P,struct simint_multi_shellpair const Q,double screen_tol,double * const restrict work,double * const restrict INT__h_i_h_i)2127 int ostei_h_i_h_i(struct simint_multi_shellpair const P,
2128                   struct simint_multi_shellpair const Q,
2129                   double screen_tol,
2130                   double * const restrict work,
2131                   double * const restrict INT__h_i_h_i)
2132 {
2133     double P_AB[3*P.nshell12];
2134     struct simint_multi_shellpair P_tmp = P;
2135     P_tmp.PA_x = P.PB_x;  P_tmp.PA_y = P.PB_y;  P_tmp.PA_z = P.PB_z;
2136     P_tmp.PB_x = P.PA_x;  P_tmp.PB_y = P.PA_y;  P_tmp.PB_z = P.PA_z;
2137     P_tmp.AB_x = P_AB;
2138     P_tmp.AB_y = P_AB + P.nshell12;
2139     P_tmp.AB_z = P_AB + 2*P.nshell12;
2140 
2141     for(int i = 0; i < P.nshell12; i++)
2142     {
2143         P_tmp.AB_x[i] = -P.AB_x[i];
2144         P_tmp.AB_y[i] = -P.AB_y[i];
2145         P_tmp.AB_z[i] = -P.AB_z[i];
2146     }
2147 
2148     double Q_AB[3*Q.nshell12];
2149     struct simint_multi_shellpair Q_tmp = Q;
2150     Q_tmp.PA_x = Q.PB_x;  Q_tmp.PA_y = Q.PB_y;  Q_tmp.PA_z = Q.PB_z;
2151     Q_tmp.PB_x = Q.PA_x;  Q_tmp.PB_y = Q.PA_y;  Q_tmp.PB_z = Q.PA_z;
2152     Q_tmp.AB_x = Q_AB;
2153     Q_tmp.AB_y = Q_AB + Q.nshell12;
2154     Q_tmp.AB_z = Q_AB + 2*Q.nshell12;
2155 
2156     for(int i = 0; i < Q.nshell12; i++)
2157     {
2158         Q_tmp.AB_x[i] = -Q.AB_x[i];
2159         Q_tmp.AB_y[i] = -Q.AB_y[i];
2160         Q_tmp.AB_z[i] = -Q.AB_z[i];
2161     }
2162 
2163     int ret = ostei_i_h_i_h(P_tmp, Q_tmp, screen_tol, work, INT__h_i_h_i);
2164     double buffer[345744] SIMINT_ALIGN_ARRAY_DBL;
2165 
2166     for(int q = 0; q < ret; q++)
2167     {
2168         int idx = 0;
2169         for(int a = 0; a < 21; ++a)
2170         for(int b = 0; b < 28; ++b)
2171         for(int c = 0; c < 21; ++c)
2172         for(int d = 0; d < 28; ++d)
2173             buffer[idx++] = INT__h_i_h_i[q*345744+b*12348+a*588+d*21+c];
2174 
2175         memcpy(INT__h_i_h_i+q*345744, buffer, 345744*sizeof(double));
2176     }
2177 
2178     return ret;
2179 }
2180 
2181