Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Annotation of /branches/vis12/test/square-detect/square_score-25.log
ViewVC logotype

Annotation of /branches/vis12/test/square-detect/square_score-25.log

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1928 - (view) (download)

1 : nseltzer 1817 /* Program start */
2 :     field#2(2)[] T = ⊛<#2; %2; $[]> (bspln3, load<%2; $[]> ("square-template.nrrd"));
3 :     field#2(2)[] F = ⊛<#2; %2; $[]> (bspln3, load<%2; $[]> ("square-rotate.nrrd"));
4 :     vec2 v00 = [0.0, 0.0];
5 :     vec2 v01 = [0.0, 0.25e0];
6 :     vec2 v02 = [0.0, 0.5e0];
7 :     vec2 v03 = [0.0, unary -<$[]> (0.25e0)];
8 :     vec2 v04 = [0.0, unary -<$[]> (0.5e0)];
9 :     vec2 v05 = [0.25e0, 0.0];
10 :     vec2 v06 = [0.25e0, 0.25e0];
11 :     vec2 v07 = [0.25e0, 0.5e0];
12 :     vec2 v08 = [0.25e0, unary -<$[]> (0.25e0)];
13 :     vec2 v09 = [0.25e0, unary -<$[]> (0.5e0)];
14 :     vec2 v10 = [0.5e0, 0.0];
15 :     vec2 v11 = [0.5e0, 0.25e0];
16 :     vec2 v12 = [0.5e0, 0.5e0];
17 :     vec2 v13 = [0.5e0, unary -<$[]> (0.25e0)];
18 :     vec2 v14 = [0.5e0, unary -<$[]> (0.5e0)];
19 :     vec2 v15 = [unary -<$[]> (0.25e0), 0.0];
20 :     vec2 v16 = [unary -<$[]> (0.25e0), 0.25e0];
21 :     vec2 v17 = [unary -<$[]> (0.25e0), 0.5e0];
22 :     vec2 v18 = [unary -<$[]> (0.25e0), unary -<$[]> (0.25e0)];
23 :     vec2 v19 = [unary -<$[]> (0.25e0), unary -<$[]> (0.5e0)];
24 :     vec2 v20 = [unary -<$[]> (0.5e0), 0.0];
25 :     vec2 v21 = [unary -<$[]> (0.5e0), 0.25e0];
26 :     vec2 v22 = [unary -<$[]> (0.5e0), 0.5e0];
27 :     vec2 v23 = [unary -<$[]> (0.5e0), unary -<$[]> (0.25e0)];
28 :     vec2 v24 = [unary -<$[]> (0.5e0), unary -<$[]> (0.5e0)];
29 :     strand R (int i, int j, int k)
30 :     {
31 :     vec3 t = [-<$[]> (/ ($i2r (i), 0.60e2), 0.5e0), -<$[]> (/ ($i2r (j), 0.60e2), 0.5e0), -<$[]> (/ ($i2r (k), 0.60e2), 0.5e0)];
32 :     output real score = 0.0;
33 :     vec2 r0 = [0.0, 0.0];
34 :     vec2 r1 = [0.0, 0.0];
35 :     vec2 pos = [0.0, 0.0];
36 :     Update
37 :     {
38 :     r0 = [-<$[]> (0.1e1, * (* (0.2e1, t[2]), t[2])), * (* (unary -<$[]> (0.2e1), sqrt (-<$[]> (0.1e1, * (t[2], t[2])))), t[2])];
39 :     r1 = [* (* (0.2e1, sqrt (-<$[]> (0.1e1, * (t[2], t[2])))), t[2]), -<$[]> (0.1e1, * (* (0.2e1, t[2]), t[2]))];
40 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v00), •<$[2]; $[2]; $[]> (r1, v00)], [t[0], t[1]]);
41 :     if inside<#2; %2; $[]> (v00, T) if inside<#2; %2; $[]> (pos, F) else false {
42 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v00)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v00))));
43 :     }
44 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v01), •<$[2]; $[2]; $[]> (r1, v01)], [t[0], t[1]]);
45 :     if inside<#2; %2; $[]> (v01, T) if inside<#2; %2; $[]> (pos, F) else false {
46 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v01)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v01))));
47 :     }
48 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v02), •<$[2]; $[2]; $[]> (r1, v02)], [t[0], t[1]]);
49 :     if inside<#2; %2; $[]> (v02, T) if inside<#2; %2; $[]> (pos, F) else false {
50 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v02)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v02))));
51 :     }
52 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v03), •<$[2]; $[2]; $[]> (r1, v03)], [t[0], t[1]]);
53 :     if inside<#2; %2; $[]> (v03, T) if inside<#2; %2; $[]> (pos, F) else false {
54 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v03)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v03))));
55 :     }
56 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v04), •<$[2]; $[2]; $[]> (r1, v04)], [t[0], t[1]]);
57 :     if inside<#2; %2; $[]> (v04, T) if inside<#2; %2; $[]> (pos, F) else false {
58 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v04)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v04))));
59 :     }
60 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v05), •<$[2]; $[2]; $[]> (r1, v05)], [t[0], t[1]]);
61 :     if inside<#2; %2; $[]> (v05, T) if inside<#2; %2; $[]> (pos, F) else false {
62 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v05)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v05))));
63 :     }
64 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v06), •<$[2]; $[2]; $[]> (r1, v06)], [t[0], t[1]]);
65 :     if inside<#2; %2; $[]> (v06, T) if inside<#2; %2; $[]> (pos, F) else false {
66 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v06)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v06))));
67 :     }
68 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v07), •<$[2]; $[2]; $[]> (r1, v07)], [t[0], t[1]]);
69 :     if inside<#2; %2; $[]> (v07, T) if inside<#2; %2; $[]> (pos, F) else false {
70 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v07)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v07))));
71 :     }
72 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v08), •<$[2]; $[2]; $[]> (r1, v08)], [t[0], t[1]]);
73 :     if inside<#2; %2; $[]> (v08, T) if inside<#2; %2; $[]> (pos, F) else false {
74 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v08)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v08))));
75 :     }
76 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v09), •<$[2]; $[2]; $[]> (r1, v09)], [t[0], t[1]]);
77 :     if inside<#2; %2; $[]> (v09, T) if inside<#2; %2; $[]> (pos, F) else false {
78 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v09)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v09))));
79 :     }
80 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v10), •<$[2]; $[2]; $[]> (r1, v10)], [t[0], t[1]]);
81 :     if inside<#2; %2; $[]> (v10, T) if inside<#2; %2; $[]> (pos, F) else false {
82 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v10)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v10))));
83 :     }
84 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v11), •<$[2]; $[2]; $[]> (r1, v11)], [t[0], t[1]]);
85 :     if inside<#2; %2; $[]> (v11, T) if inside<#2; %2; $[]> (pos, F) else false {
86 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v11)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v11))));
87 :     }
88 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v12), •<$[2]; $[2]; $[]> (r1, v12)], [t[0], t[1]]);
89 :     if inside<#2; %2; $[]> (v12, T) if inside<#2; %2; $[]> (pos, F) else false {
90 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v12)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v12))));
91 :     }
92 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v13), •<$[2]; $[2]; $[]> (r1, v13)], [t[0], t[1]]);
93 :     if inside<#2; %2; $[]> (v13, T) if inside<#2; %2; $[]> (pos, F) else false {
94 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v13)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v13))));
95 :     }
96 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v14), •<$[2]; $[2]; $[]> (r1, v14)], [t[0], t[1]]);
97 :     if inside<#2; %2; $[]> (v14, T) if inside<#2; %2; $[]> (pos, F) else false {
98 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v14)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v14))));
99 :     }
100 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v15), •<$[2]; $[2]; $[]> (r1, v15)], [t[0], t[1]]);
101 :     if inside<#2; %2; $[]> (v15, T) if inside<#2; %2; $[]> (pos, F) else false {
102 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v15)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v15))));
103 :     }
104 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v16), •<$[2]; $[2]; $[]> (r1, v16)], [t[0], t[1]]);
105 :     if inside<#2; %2; $[]> (v16, T) if inside<#2; %2; $[]> (pos, F) else false {
106 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v16)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v16))));
107 :     }
108 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v17), •<$[2]; $[2]; $[]> (r1, v17)], [t[0], t[1]]);
109 :     if inside<#2; %2; $[]> (v17, T) if inside<#2; %2; $[]> (pos, F) else false {
110 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v17)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v17))));
111 :     }
112 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v18), •<$[2]; $[2]; $[]> (r1, v18)], [t[0], t[1]]);
113 :     if inside<#2; %2; $[]> (v18, T) if inside<#2; %2; $[]> (pos, F) else false {
114 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v18)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v18))));
115 :     }
116 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v19), •<$[2]; $[2]; $[]> (r1, v19)], [t[0], t[1]]);
117 :     if inside<#2; %2; $[]> (v19, T) if inside<#2; %2; $[]> (pos, F) else false {
118 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v19)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v19))));
119 :     }
120 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v20), •<$[2]; $[2]; $[]> (r1, v20)], [t[0], t[1]]);
121 :     if inside<#2; %2; $[]> (v20, T) if inside<#2; %2; $[]> (pos, F) else false {
122 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v20)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v20))));
123 :     }
124 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v21), •<$[2]; $[2]; $[]> (r1, v21)], [t[0], t[1]]);
125 :     if inside<#2; %2; $[]> (v21, T) if inside<#2; %2; $[]> (pos, F) else false {
126 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v21)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v21))));
127 :     }
128 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v22), •<$[2]; $[2]; $[]> (r1, v22)], [t[0], t[1]]);
129 :     if inside<#2; %2; $[]> (v22, T) if inside<#2; %2; $[]> (pos, F) else false {
130 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v22)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v22))));
131 :     }
132 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v23), •<$[2]; $[2]; $[]> (r1, v23)], [t[0], t[1]]);
133 :     if inside<#2; %2; $[]> (v23, T) if inside<#2; %2; $[]> (pos, F) else false {
134 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v23)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v23))));
135 :     }
136 :     pos = +<$[2]> ([•<$[2]; $[2]; $[]> (r0, v24), •<$[2]; $[2]; $[]> (r1, v24)], [t[0], t[1]]);
137 :     if inside<#2; %2; $[]> (v24, T) if inside<#2; %2; $[]> (pos, F) else false {
138 :     score = +<$[]> (score, * (-<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v24)), -<$[]> (@<#2; %2; $[]> (F, pos), @<#2; %2; $[]> (T, v24))));
139 :     }
140 :     stabilize;
141 :     }
142 :    
143 :     Stabilize
144 :     {
145 :     }
146 :    
147 :     }
148 :     /* Program end */
149 :     /* Simplified Program start */
150 :     {
151 :     field#2(2)[] T00A3;
152 :     field#2(2)[] F00AC;
153 :     vec2 v0000B5;
154 :     vec2 v0100B6;
155 :     vec2 v0200B7;
156 :     vec2 v0300B8;
157 :     vec2 v0400BA;
158 :     vec2 v0500BC;
159 :     vec2 v0600BD;
160 :     vec2 v0700BE;
161 :     vec2 v0800BF;
162 :     vec2 v0900C1;
163 :     vec2 v1000C3;
164 :     vec2 v1100C4;
165 :     vec2 v1200C5;
166 :     vec2 v1300C6;
167 :     vec2 v1400C8;
168 :     vec2 v1500CA;
169 :     vec2 v1600CC;
170 :     vec2 v1700CE;
171 :     vec2 v1800D0;
172 :     vec2 v1900D3;
173 :     vec2 v2000D6;
174 :     vec2 v2100D8;
175 :     vec2 v2200DA;
176 :     vec2 v2300DC;
177 :     vec2 v2400DF;
178 :     _t03ED = bspln30095 ();
179 :     _t03EE = "square-template.nrrd";
180 :     _t03EF = load0080<%2; $[]> (_t03EE);
181 :     T00A3 = ⊛003A<#2; %2; $[]> (_t03ED, _t03EF);
182 :     _t03F0 = bspln30095 ();
183 :     _t03F1 = "square-rotate.nrrd";
184 :     _t03F2 = load0080<%2; $[]> (_t03F1);
185 :     F00AC = ⊛003A<#2; %2; $[]> (_t03F0, _t03F2);
186 :     _t03F3 = 0.0;
187 :     _t03F4 = 0.0;
188 :     v0000B5 = [_t03F3, _t03F4];
189 :     _t03F5 = 0.0;
190 :     _t03F6 = 0.25e0;
191 :     v0100B6 = [_t03F5, _t03F6];
192 :     _t03F7 = 0.0;
193 :     _t03F8 = 0.5e0;
194 :     v0200B7 = [_t03F7, _t03F8];
195 :     _t03F9 = 0.0;
196 :     _t03FA = 0.25e0;
197 :     _t03FB = unary -004D<$[]> (_t03FA);
198 :     v0300B8 = [_t03F9, _t03FB];
199 :     _t03FC = 0.0;
200 :     _t03FD = 0.5e0;
201 :     _t03FE = unary -004D<$[]> (_t03FD);
202 :     v0400BA = [_t03FC, _t03FE];
203 :     _t03FF = 0.25e0;
204 :     _t0400 = 0.0;
205 :     v0500BC = [_t03FF, _t0400];
206 :     _t0401 = 0.25e0;
207 :     _t0402 = 0.25e0;
208 :     v0600BD = [_t0401, _t0402];
209 :     _t0403 = 0.25e0;
210 :     _t0404 = 0.5e0;
211 :     v0700BE = [_t0403, _t0404];
212 :     _t0405 = 0.25e0;
213 :     _t0406 = 0.25e0;
214 :     _t0407 = unary -004D<$[]> (_t0406);
215 :     v0800BF = [_t0405, _t0407];
216 :     _t0408 = 0.25e0;
217 :     _t0409 = 0.5e0;
218 :     _t040A = unary -004D<$[]> (_t0409);
219 :     v0900C1 = [_t0408, _t040A];
220 :     _t040B = 0.5e0;
221 :     _t040C = 0.0;
222 :     v1000C3 = [_t040B, _t040C];
223 :     _t040D = 0.5e0;
224 :     _t040E = 0.25e0;
225 :     v1100C4 = [_t040D, _t040E];
226 :     _t040F = 0.5e0;
227 :     _t0410 = 0.5e0;
228 :     v1200C5 = [_t040F, _t0410];
229 :     _t0411 = 0.5e0;
230 :     _t0412 = 0.25e0;
231 :     _t0413 = unary -004D<$[]> (_t0412);
232 :     v1300C6 = [_t0411, _t0413];
233 :     _t0414 = 0.5e0;
234 :     _t0415 = 0.5e0;
235 :     _t0416 = unary -004D<$[]> (_t0415);
236 :     v1400C8 = [_t0414, _t0416];
237 :     _t0417 = 0.25e0;
238 :     _t0418 = unary -004D<$[]> (_t0417);
239 :     _t0419 = 0.0;
240 :     v1500CA = [_t0418, _t0419];
241 :     _t041A = 0.25e0;
242 :     _t041B = unary -004D<$[]> (_t041A);
243 :     _t041C = 0.25e0;
244 :     v1600CC = [_t041B, _t041C];
245 :     _t041D = 0.25e0;
246 :     _t041E = unary -004D<$[]> (_t041D);
247 :     _t041F = 0.5e0;
248 :     v1700CE = [_t041E, _t041F];
249 :     _t0420 = 0.25e0;
250 :     _t0421 = unary -004D<$[]> (_t0420);
251 :     _t0422 = 0.25e0;
252 :     _t0423 = unary -004D<$[]> (_t0422);
253 :     v1800D0 = [_t0421, _t0423];
254 :     _t0424 = 0.25e0;
255 :     _t0425 = unary -004D<$[]> (_t0424);
256 :     _t0426 = 0.5e0;
257 :     _t0427 = unary -004D<$[]> (_t0426);
258 :     v1900D3 = [_t0425, _t0427];
259 :     _t0428 = 0.5e0;
260 :     _t0429 = unary -004D<$[]> (_t0428);
261 :     _t042A = 0.0;
262 :     v2000D6 = [_t0429, _t042A];
263 :     _t042B = 0.5e0;
264 :     _t042C = unary -004D<$[]> (_t042B);
265 :     _t042D = 0.25e0;
266 :     v2100D8 = [_t042C, _t042D];
267 :     _t042E = 0.5e0;
268 :     _t042F = unary -004D<$[]> (_t042E);
269 :     _t0430 = 0.5e0;
270 :     v2200DA = [_t042F, _t0430];
271 :     _t0431 = 0.5e0;
272 :     _t0432 = unary -004D<$[]> (_t0431);
273 :     _t0433 = 0.25e0;
274 :     _t0434 = unary -004D<$[]> (_t0433);
275 :     v2300DC = [_t0432, _t0434];
276 :     _t0435 = 0.5e0;
277 :     _t0436 = unary -004D<$[]> (_t0435);
278 :     _t0437 = 0.5e0;
279 :     _t0438 = unary -004D<$[]> (_t0437);
280 :     v2400DF = [_t0436, _t0438];
281 :     }
282 :     Array
283 :     {
284 :     _t0624 = 0;
285 :     _t0625 = 60;
286 :     _t0626 = 0;
287 :     _t0627 = 60;
288 :     _t0628 = 0;
289 :     _t0629 = 60;
290 :     }
291 :     for int i03EA = _t0624 .. _t0625
292 :     for int j03EB = _t0626 .. _t0627
293 :     for int k03EC = _t0628 .. _t0629
294 :     { }
295 :     new R(i03EA, j03EB, k03EC);
296 :     strand R (int i00E4, int j00E3, int k00E2)
297 :     {{
298 :     vec3 t00E5;
299 :     output real score00E9;
300 :     vec2 r000EA;
301 :     vec2 r100EB;
302 :     vec2 pos00EC;
303 :     _t0439 = $i2r009B (i00E4);
304 :     _t043A = 0.60e2;
305 :     _t043B = /002A (_t0439, _t043A);
306 :     _t043C = 0.5e0;
307 :     _t043D = -0016<$[]> (_t043B, _t043C);
308 :     _t043E = $i2r009B (j00E3);
309 :     _t043F = 0.60e2;
310 :     _t0440 = /002A (_t043E, _t043F);
311 :     _t0441 = 0.5e0;
312 :     _t0442 = -0016<$[]> (_t0440, _t0441);
313 :     _t0443 = $i2r009B (k00E2);
314 :     _t0444 = 0.60e2;
315 :     _t0445 = /002A (_t0443, _t0444);
316 :     _t0446 = 0.5e0;
317 :     _t0447 = -0016<$[]> (_t0445, _t0446);
318 :     t00E5 = [_t043D, _t0442, _t0447];
319 :     score00E9 = 0.0;
320 :     _t0448 = 0.0;
321 :     _t0449 = 0.0;
322 :     r000EA = [_t0448, _t0449];
323 :     _t044A = 0.0;
324 :     _t044B = 0.0;
325 :     r100EB = [_t044A, _t044B];
326 :     _t044C = 0.0;
327 :     _t044D = 0.0;
328 :     pos00EC = [_t044C, _t044D];
329 :     }
330 :     Update
331 :     {
332 :     _t044E = 0.1e1;
333 :     _t044F = 0.2e1;
334 :     _t0450 = 2;
335 :     _t0451 = t00E5[_t0450];
336 :     _t0452 = *001C (_t044F, _t0451);
337 :     _t0453 = 2;
338 :     _t0454 = t00E5[_t0453];
339 :     _t0455 = *001C (_t0452, _t0454);
340 :     _t0456 = -0016<$[]> (_t044E, _t0455);
341 :     _t0457 = 0.2e1;
342 :     _t0458 = unary -004D<$[]> (_t0457);
343 :     _t0459 = 0.1e1;
344 :     _t045A = 2;
345 :     _t045B = t00E5[_t045A];
346 :     _t045C = 2;
347 :     _t045D = t00E5[_t045C];
348 :     _t045E = *001C (_t045B, _t045D);
349 :     _t045F = -0016<$[]> (_t0459, _t045E);
350 :     _t0460 = sqrt0091 (_t045F);
351 :     _t0461 = *001C (_t0458, _t0460);
352 :     _t0462 = 2;
353 :     _t0463 = t00E5[_t0462];
354 :     _t0464 = *001C (_t0461, _t0463);
355 :     r000EA = [_t0456, _t0464];
356 :     _t0465 = 0.2e1;
357 :     _t0466 = 0.1e1;
358 :     _t0467 = 2;
359 :     _t0468 = t00E5[_t0467];
360 :     _t0469 = 2;
361 :     _t046A = t00E5[_t0469];
362 :     _t046B = *001C (_t0468, _t046A);
363 :     _t046C = -0016<$[]> (_t0466, _t046B);
364 :     _t046D = sqrt0091 (_t046C);
365 :     _t046E = *001C (_t0465, _t046D);
366 :     _t046F = 2;
367 :     _t0470 = t00E5[_t046F];
368 :     _t0471 = *001C (_t046E, _t0470);
369 :     _t0472 = 0.1e1;
370 :     _t0473 = 0.2e1;
371 :     _t0474 = 2;
372 :     _t0475 = t00E5[_t0474];
373 :     _t0476 = *001C (_t0473, _t0475);
374 :     _t0477 = 2;
375 :     _t0478 = t00E5[_t0477];
376 :     _t0479 = *001C (_t0476, _t0478);
377 :     _t047A = -0016<$[]> (_t0472, _t0479);
378 :     r100EB = [_t0471, _t047A];
379 :     _t047B = •0079<$[2]; $[2]; $[]> (r000EA, v0000B5);
380 :     _t047C = •0079<$[2]; $[2]; $[]> (r100EB, v0000B5);
381 :     _t047D = [_t047B, _t047C];
382 :     _t047E = 0;
383 :     _t047F = t00E5[_t047E];
384 :     _t0480 = 1;
385 :     _t0481 = t00E5[_t0480];
386 :     _t0482 = [_t047F, _t0481];
387 :     pos00EC = +000F<$[2]> (_t047D, _t0482);
388 :     bool _t0483;
389 :     _t0484 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
390 :     if _t0484
391 :     _t0483 = inside007D<#2; %2; $[]> (v0000B5, T00A3);
392 :     else
393 :     _t0483 = false;
394 :     if _t0483 {
395 :     _t0485 = @0060<#2; %2; $[]> (F00AC, pos00EC);
396 :     _t0486 = @0060<#2; %2; $[]> (T00A3, v0000B5);
397 :     _t0487 = -0016<$[]> (_t0485, _t0486);
398 :     _t0488 = @0060<#2; %2; $[]> (F00AC, pos00EC);
399 :     _t0489 = @0060<#2; %2; $[]> (T00A3, v0000B5);
400 :     _t048A = -0016<$[]> (_t0488, _t0489);
401 :     _t048B = *001C (_t0487, _t048A);
402 :     score00E9 = +000F<$[]> (score00E9, _t048B);
403 :     }
404 :     _t048C = •0079<$[2]; $[2]; $[]> (r000EA, v0100B6);
405 :     _t048D = •0079<$[2]; $[2]; $[]> (r100EB, v0100B6);
406 :     _t048E = [_t048C, _t048D];
407 :     _t048F = 0;
408 :     _t0490 = t00E5[_t048F];
409 :     _t0491 = 1;
410 :     _t0492 = t00E5[_t0491];
411 :     _t0493 = [_t0490, _t0492];
412 :     pos00EC = +000F<$[2]> (_t048E, _t0493);
413 :     bool _t0494;
414 :     _t0495 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
415 :     if _t0495
416 :     _t0494 = inside007D<#2; %2; $[]> (v0100B6, T00A3);
417 :     else
418 :     _t0494 = false;
419 :     if _t0494 {
420 :     _t0496 = @0060<#2; %2; $[]> (F00AC, pos00EC);
421 :     _t0497 = @0060<#2; %2; $[]> (T00A3, v0100B6);
422 :     _t0498 = -0016<$[]> (_t0496, _t0497);
423 :     _t0499 = @0060<#2; %2; $[]> (F00AC, pos00EC);
424 :     _t049A = @0060<#2; %2; $[]> (T00A3, v0100B6);
425 :     _t049B = -0016<$[]> (_t0499, _t049A);
426 :     _t049C = *001C (_t0498, _t049B);
427 :     score00E9 = +000F<$[]> (score00E9, _t049C);
428 :     }
429 :     _t049D = •0079<$[2]; $[2]; $[]> (r000EA, v0200B7);
430 :     _t049E = •0079<$[2]; $[2]; $[]> (r100EB, v0200B7);
431 :     _t049F = [_t049D, _t049E];
432 :     _t04A0 = 0;
433 :     _t04A1 = t00E5[_t04A0];
434 :     _t04A2 = 1;
435 :     _t04A3 = t00E5[_t04A2];
436 :     _t04A4 = [_t04A1, _t04A3];
437 :     pos00EC = +000F<$[2]> (_t049F, _t04A4);
438 :     bool _t04A5;
439 :     _t04A6 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
440 :     if _t04A6
441 :     _t04A5 = inside007D<#2; %2; $[]> (v0200B7, T00A3);
442 :     else
443 :     _t04A5 = false;
444 :     if _t04A5 {
445 :     _t04A7 = @0060<#2; %2; $[]> (F00AC, pos00EC);
446 :     _t04A8 = @0060<#2; %2; $[]> (T00A3, v0200B7);
447 :     _t04A9 = -0016<$[]> (_t04A7, _t04A8);
448 :     _t04AA = @0060<#2; %2; $[]> (F00AC, pos00EC);
449 :     _t04AB = @0060<#2; %2; $[]> (T00A3, v0200B7);
450 :     _t04AC = -0016<$[]> (_t04AA, _t04AB);
451 :     _t04AD = *001C (_t04A9, _t04AC);
452 :     score00E9 = +000F<$[]> (score00E9, _t04AD);
453 :     }
454 :     _t04AE = •0079<$[2]; $[2]; $[]> (r000EA, v0300B8);
455 :     _t04AF = •0079<$[2]; $[2]; $[]> (r100EB, v0300B8);
456 :     _t04B0 = [_t04AE, _t04AF];
457 :     _t04B1 = 0;
458 :     _t04B2 = t00E5[_t04B1];
459 :     _t04B3 = 1;
460 :     _t04B4 = t00E5[_t04B3];
461 :     _t04B5 = [_t04B2, _t04B4];
462 :     pos00EC = +000F<$[2]> (_t04B0, _t04B5);
463 :     bool _t04B6;
464 :     _t04B7 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
465 :     if _t04B7
466 :     _t04B6 = inside007D<#2; %2; $[]> (v0300B8, T00A3);
467 :     else
468 :     _t04B6 = false;
469 :     if _t04B6 {
470 :     _t04B8 = @0060<#2; %2; $[]> (F00AC, pos00EC);
471 :     _t04B9 = @0060<#2; %2; $[]> (T00A3, v0300B8);
472 :     _t04BA = -0016<$[]> (_t04B8, _t04B9);
473 :     _t04BB = @0060<#2; %2; $[]> (F00AC, pos00EC);
474 :     _t04BC = @0060<#2; %2; $[]> (T00A3, v0300B8);
475 :     _t04BD = -0016<$[]> (_t04BB, _t04BC);
476 :     _t04BE = *001C (_t04BA, _t04BD);
477 :     score00E9 = +000F<$[]> (score00E9, _t04BE);
478 :     }
479 :     _t04BF = •0079<$[2]; $[2]; $[]> (r000EA, v0400BA);
480 :     _t04C0 = •0079<$[2]; $[2]; $[]> (r100EB, v0400BA);
481 :     _t04C1 = [_t04BF, _t04C0];
482 :     _t04C2 = 0;
483 :     _t04C3 = t00E5[_t04C2];
484 :     _t04C4 = 1;
485 :     _t04C5 = t00E5[_t04C4];
486 :     _t04C6 = [_t04C3, _t04C5];
487 :     pos00EC = +000F<$[2]> (_t04C1, _t04C6);
488 :     bool _t04C7;
489 :     _t04C8 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
490 :     if _t04C8
491 :     _t04C7 = inside007D<#2; %2; $[]> (v0400BA, T00A3);
492 :     else
493 :     _t04C7 = false;
494 :     if _t04C7 {
495 :     _t04C9 = @0060<#2; %2; $[]> (F00AC, pos00EC);
496 :     _t04CA = @0060<#2; %2; $[]> (T00A3, v0400BA);
497 :     _t04CB = -0016<$[]> (_t04C9, _t04CA);
498 :     _t04CC = @0060<#2; %2; $[]> (F00AC, pos00EC);
499 :     _t04CD = @0060<#2; %2; $[]> (T00A3, v0400BA);
500 :     _t04CE = -0016<$[]> (_t04CC, _t04CD);
501 :     _t04CF = *001C (_t04CB, _t04CE);
502 :     score00E9 = +000F<$[]> (score00E9, _t04CF);
503 :     }
504 :     _t04D0 = •0079<$[2]; $[2]; $[]> (r000EA, v0500BC);
505 :     _t04D1 = •0079<$[2]; $[2]; $[]> (r100EB, v0500BC);
506 :     _t04D2 = [_t04D0, _t04D1];
507 :     _t04D3 = 0;
508 :     _t04D4 = t00E5[_t04D3];
509 :     _t04D5 = 1;
510 :     _t04D6 = t00E5[_t04D5];
511 :     _t04D7 = [_t04D4, _t04D6];
512 :     pos00EC = +000F<$[2]> (_t04D2, _t04D7);
513 :     bool _t04D8;
514 :     _t04D9 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
515 :     if _t04D9
516 :     _t04D8 = inside007D<#2; %2; $[]> (v0500BC, T00A3);
517 :     else
518 :     _t04D8 = false;
519 :     if _t04D8 {
520 :     _t04DA = @0060<#2; %2; $[]> (F00AC, pos00EC);
521 :     _t04DB = @0060<#2; %2; $[]> (T00A3, v0500BC);
522 :     _t04DC = -0016<$[]> (_t04DA, _t04DB);
523 :     _t04DD = @0060<#2; %2; $[]> (F00AC, pos00EC);
524 :     _t04DE = @0060<#2; %2; $[]> (T00A3, v0500BC);
525 :     _t04DF = -0016<$[]> (_t04DD, _t04DE);
526 :     _t04E0 = *001C (_t04DC, _t04DF);
527 :     score00E9 = +000F<$[]> (score00E9, _t04E0);
528 :     }
529 :     _t04E1 = •0079<$[2]; $[2]; $[]> (r000EA, v0600BD);
530 :     _t04E2 = •0079<$[2]; $[2]; $[]> (r100EB, v0600BD);
531 :     _t04E3 = [_t04E1, _t04E2];
532 :     _t04E4 = 0;
533 :     _t04E5 = t00E5[_t04E4];
534 :     _t04E6 = 1;
535 :     _t04E7 = t00E5[_t04E6];
536 :     _t04E8 = [_t04E5, _t04E7];
537 :     pos00EC = +000F<$[2]> (_t04E3, _t04E8);
538 :     bool _t04E9;
539 :     _t04EA = inside007D<#2; %2; $[]> (pos00EC, F00AC);
540 :     if _t04EA
541 :     _t04E9 = inside007D<#2; %2; $[]> (v0600BD, T00A3);
542 :     else
543 :     _t04E9 = false;
544 :     if _t04E9 {
545 :     _t04EB = @0060<#2; %2; $[]> (F00AC, pos00EC);
546 :     _t04EC = @0060<#2; %2; $[]> (T00A3, v0600BD);
547 :     _t04ED = -0016<$[]> (_t04EB, _t04EC);
548 :     _t04EE = @0060<#2; %2; $[]> (F00AC, pos00EC);
549 :     _t04EF = @0060<#2; %2; $[]> (T00A3, v0600BD);
550 :     _t04F0 = -0016<$[]> (_t04EE, _t04EF);
551 :     _t04F1 = *001C (_t04ED, _t04F0);
552 :     score00E9 = +000F<$[]> (score00E9, _t04F1);
553 :     }
554 :     _t04F2 = •0079<$[2]; $[2]; $[]> (r000EA, v0700BE);
555 :     _t04F3 = •0079<$[2]; $[2]; $[]> (r100EB, v0700BE);
556 :     _t04F4 = [_t04F2, _t04F3];
557 :     _t04F5 = 0;
558 :     _t04F6 = t00E5[_t04F5];
559 :     _t04F7 = 1;
560 :     _t04F8 = t00E5[_t04F7];
561 :     _t04F9 = [_t04F6, _t04F8];
562 :     pos00EC = +000F<$[2]> (_t04F4, _t04F9);
563 :     bool _t04FA;
564 :     _t04FB = inside007D<#2; %2; $[]> (pos00EC, F00AC);
565 :     if _t04FB
566 :     _t04FA = inside007D<#2; %2; $[]> (v0700BE, T00A3);
567 :     else
568 :     _t04FA = false;
569 :     if _t04FA {
570 :     _t04FC = @0060<#2; %2; $[]> (F00AC, pos00EC);
571 :     _t04FD = @0060<#2; %2; $[]> (T00A3, v0700BE);
572 :     _t04FE = -0016<$[]> (_t04FC, _t04FD);
573 :     _t04FF = @0060<#2; %2; $[]> (F00AC, pos00EC);
574 :     _t0500 = @0060<#2; %2; $[]> (T00A3, v0700BE);
575 :     _t0501 = -0016<$[]> (_t04FF, _t0500);
576 :     _t0502 = *001C (_t04FE, _t0501);
577 :     score00E9 = +000F<$[]> (score00E9, _t0502);
578 :     }
579 :     _t0503 = •0079<$[2]; $[2]; $[]> (r000EA, v0800BF);
580 :     _t0504 = •0079<$[2]; $[2]; $[]> (r100EB, v0800BF);
581 :     _t0505 = [_t0503, _t0504];
582 :     _t0506 = 0;
583 :     _t0507 = t00E5[_t0506];
584 :     _t0508 = 1;
585 :     _t0509 = t00E5[_t0508];
586 :     _t050A = [_t0507, _t0509];
587 :     pos00EC = +000F<$[2]> (_t0505, _t050A);
588 :     bool _t050B;
589 :     _t050C = inside007D<#2; %2; $[]> (pos00EC, F00AC);
590 :     if _t050C
591 :     _t050B = inside007D<#2; %2; $[]> (v0800BF, T00A3);
592 :     else
593 :     _t050B = false;
594 :     if _t050B {
595 :     _t050D = @0060<#2; %2; $[]> (F00AC, pos00EC);
596 :     _t050E = @0060<#2; %2; $[]> (T00A3, v0800BF);
597 :     _t050F = -0016<$[]> (_t050D, _t050E);
598 :     _t0510 = @0060<#2; %2; $[]> (F00AC, pos00EC);
599 :     _t0511 = @0060<#2; %2; $[]> (T00A3, v0800BF);
600 :     _t0512 = -0016<$[]> (_t0510, _t0511);
601 :     _t0513 = *001C (_t050F, _t0512);
602 :     score00E9 = +000F<$[]> (score00E9, _t0513);
603 :     }
604 :     _t0514 = •0079<$[2]; $[2]; $[]> (r000EA, v0900C1);
605 :     _t0515 = •0079<$[2]; $[2]; $[]> (r100EB, v0900C1);
606 :     _t0516 = [_t0514, _t0515];
607 :     _t0517 = 0;
608 :     _t0518 = t00E5[_t0517];
609 :     _t0519 = 1;
610 :     _t051A = t00E5[_t0519];
611 :     _t051B = [_t0518, _t051A];
612 :     pos00EC = +000F<$[2]> (_t0516, _t051B);
613 :     bool _t051C;
614 :     _t051D = inside007D<#2; %2; $[]> (pos00EC, F00AC);
615 :     if _t051D
616 :     _t051C = inside007D<#2; %2; $[]> (v0900C1, T00A3);
617 :     else
618 :     _t051C = false;
619 :     if _t051C {
620 :     _t051E = @0060<#2; %2; $[]> (F00AC, pos00EC);
621 :     _t051F = @0060<#2; %2; $[]> (T00A3, v0900C1);
622 :     _t0520 = -0016<$[]> (_t051E, _t051F);
623 :     _t0521 = @0060<#2; %2; $[]> (F00AC, pos00EC);
624 :     _t0522 = @0060<#2; %2; $[]> (T00A3, v0900C1);
625 :     _t0523 = -0016<$[]> (_t0521, _t0522);
626 :     _t0524 = *001C (_t0520, _t0523);
627 :     score00E9 = +000F<$[]> (score00E9, _t0524);
628 :     }
629 :     _t0525 = •0079<$[2]; $[2]; $[]> (r000EA, v1000C3);
630 :     _t0526 = •0079<$[2]; $[2]; $[]> (r100EB, v1000C3);
631 :     _t0527 = [_t0525, _t0526];
632 :     _t0528 = 0;
633 :     _t0529 = t00E5[_t0528];
634 :     _t052A = 1;
635 :     _t052B = t00E5[_t052A];
636 :     _t052C = [_t0529, _t052B];
637 :     pos00EC = +000F<$[2]> (_t0527, _t052C);
638 :     bool _t052D;
639 :     _t052E = inside007D<#2; %2; $[]> (pos00EC, F00AC);
640 :     if _t052E
641 :     _t052D = inside007D<#2; %2; $[]> (v1000C3, T00A3);
642 :     else
643 :     _t052D = false;
644 :     if _t052D {
645 :     _t052F = @0060<#2; %2; $[]> (F00AC, pos00EC);
646 :     _t0530 = @0060<#2; %2; $[]> (T00A3, v1000C3);
647 :     _t0531 = -0016<$[]> (_t052F, _t0530);
648 :     _t0532 = @0060<#2; %2; $[]> (F00AC, pos00EC);
649 :     _t0533 = @0060<#2; %2; $[]> (T00A3, v1000C3);
650 :     _t0534 = -0016<$[]> (_t0532, _t0533);
651 :     _t0535 = *001C (_t0531, _t0534);
652 :     score00E9 = +000F<$[]> (score00E9, _t0535);
653 :     }
654 :     _t0536 = •0079<$[2]; $[2]; $[]> (r000EA, v1100C4);
655 :     _t0537 = •0079<$[2]; $[2]; $[]> (r100EB, v1100C4);
656 :     _t0538 = [_t0536, _t0537];
657 :     _t0539 = 0;
658 :     _t053A = t00E5[_t0539];
659 :     _t053B = 1;
660 :     _t053C = t00E5[_t053B];
661 :     _t053D = [_t053A, _t053C];
662 :     pos00EC = +000F<$[2]> (_t0538, _t053D);
663 :     bool _t053E;
664 :     _t053F = inside007D<#2; %2; $[]> (pos00EC, F00AC);
665 :     if _t053F
666 :     _t053E = inside007D<#2; %2; $[]> (v1100C4, T00A3);
667 :     else
668 :     _t053E = false;
669 :     if _t053E {
670 :     _t0540 = @0060<#2; %2; $[]> (F00AC, pos00EC);
671 :     _t0541 = @0060<#2; %2; $[]> (T00A3, v1100C4);
672 :     _t0542 = -0016<$[]> (_t0540, _t0541);
673 :     _t0543 = @0060<#2; %2; $[]> (F00AC, pos00EC);
674 :     _t0544 = @0060<#2; %2; $[]> (T00A3, v1100C4);
675 :     _t0545 = -0016<$[]> (_t0543, _t0544);
676 :     _t0546 = *001C (_t0542, _t0545);
677 :     score00E9 = +000F<$[]> (score00E9, _t0546);
678 :     }
679 :     _t0547 = •0079<$[2]; $[2]; $[]> (r000EA, v1200C5);
680 :     _t0548 = •0079<$[2]; $[2]; $[]> (r100EB, v1200C5);
681 :     _t0549 = [_t0547, _t0548];
682 :     _t054A = 0;
683 :     _t054B = t00E5[_t054A];
684 :     _t054C = 1;
685 :     _t054D = t00E5[_t054C];
686 :     _t054E = [_t054B, _t054D];
687 :     pos00EC = +000F<$[2]> (_t0549, _t054E);
688 :     bool _t054F;
689 :     _t0550 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
690 :     if _t0550
691 :     _t054F = inside007D<#2; %2; $[]> (v1200C5, T00A3);
692 :     else
693 :     _t054F = false;
694 :     if _t054F {
695 :     _t0551 = @0060<#2; %2; $[]> (F00AC, pos00EC);
696 :     _t0552 = @0060<#2; %2; $[]> (T00A3, v1200C5);
697 :     _t0553 = -0016<$[]> (_t0551, _t0552);
698 :     _t0554 = @0060<#2; %2; $[]> (F00AC, pos00EC);
699 :     _t0555 = @0060<#2; %2; $[]> (T00A3, v1200C5);
700 :     _t0556 = -0016<$[]> (_t0554, _t0555);
701 :     _t0557 = *001C (_t0553, _t0556);
702 :     score00E9 = +000F<$[]> (score00E9, _t0557);
703 :     }
704 :     _t0558 = •0079<$[2]; $[2]; $[]> (r000EA, v1300C6);
705 :     _t0559 = •0079<$[2]; $[2]; $[]> (r100EB, v1300C6);
706 :     _t055A = [_t0558, _t0559];
707 :     _t055B = 0;
708 :     _t055C = t00E5[_t055B];
709 :     _t055D = 1;
710 :     _t055E = t00E5[_t055D];
711 :     _t055F = [_t055C, _t055E];
712 :     pos00EC = +000F<$[2]> (_t055A, _t055F);
713 :     bool _t0560;
714 :     _t0561 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
715 :     if _t0561
716 :     _t0560 = inside007D<#2; %2; $[]> (v1300C6, T00A3);
717 :     else
718 :     _t0560 = false;
719 :     if _t0560 {
720 :     _t0562 = @0060<#2; %2; $[]> (F00AC, pos00EC);
721 :     _t0563 = @0060<#2; %2; $[]> (T00A3, v1300C6);
722 :     _t0564 = -0016<$[]> (_t0562, _t0563);
723 :     _t0565 = @0060<#2; %2; $[]> (F00AC, pos00EC);
724 :     _t0566 = @0060<#2; %2; $[]> (T00A3, v1300C6);
725 :     _t0567 = -0016<$[]> (_t0565, _t0566);
726 :     _t0568 = *001C (_t0564, _t0567);
727 :     score00E9 = +000F<$[]> (score00E9, _t0568);
728 :     }
729 :     _t0569 = •0079<$[2]; $[2]; $[]> (r000EA, v1400C8);
730 :     _t056A = •0079<$[2]; $[2]; $[]> (r100EB, v1400C8);
731 :     _t056B = [_t0569, _t056A];
732 :     _t056C = 0;
733 :     _t056D = t00E5[_t056C];
734 :     _t056E = 1;
735 :     _t056F = t00E5[_t056E];
736 :     _t0570 = [_t056D, _t056F];
737 :     pos00EC = +000F<$[2]> (_t056B, _t0570);
738 :     bool _t0571;
739 :     _t0572 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
740 :     if _t0572
741 :     _t0571 = inside007D<#2; %2; $[]> (v1400C8, T00A3);
742 :     else
743 :     _t0571 = false;
744 :     if _t0571 {
745 :     _t0573 = @0060<#2; %2; $[]> (F00AC, pos00EC);
746 :     _t0574 = @0060<#2; %2; $[]> (T00A3, v1400C8);
747 :     _t0575 = -0016<$[]> (_t0573, _t0574);
748 :     _t0576 = @0060<#2; %2; $[]> (F00AC, pos00EC);
749 :     _t0577 = @0060<#2; %2; $[]> (T00A3, v1400C8);
750 :     _t0578 = -0016<$[]> (_t0576, _t0577);
751 :     _t0579 = *001C (_t0575, _t0578);
752 :     score00E9 = +000F<$[]> (score00E9, _t0579);
753 :     }
754 :     _t057A = •0079<$[2]; $[2]; $[]> (r000EA, v1500CA);
755 :     _t057B = •0079<$[2]; $[2]; $[]> (r100EB, v1500CA);
756 :     _t057C = [_t057A, _t057B];
757 :     _t057D = 0;
758 :     _t057E = t00E5[_t057D];
759 :     _t057F = 1;
760 :     _t0580 = t00E5[_t057F];
761 :     _t0581 = [_t057E, _t0580];
762 :     pos00EC = +000F<$[2]> (_t057C, _t0581);
763 :     bool _t0582;
764 :     _t0583 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
765 :     if _t0583
766 :     _t0582 = inside007D<#2; %2; $[]> (v1500CA, T00A3);
767 :     else
768 :     _t0582 = false;
769 :     if _t0582 {
770 :     _t0584 = @0060<#2; %2; $[]> (F00AC, pos00EC);
771 :     _t0585 = @0060<#2; %2; $[]> (T00A3, v1500CA);
772 :     _t0586 = -0016<$[]> (_t0584, _t0585);
773 :     _t0587 = @0060<#2; %2; $[]> (F00AC, pos00EC);
774 :     _t0588 = @0060<#2; %2; $[]> (T00A3, v1500CA);
775 :     _t0589 = -0016<$[]> (_t0587, _t0588);
776 :     _t058A = *001C (_t0586, _t0589);
777 :     score00E9 = +000F<$[]> (score00E9, _t058A);
778 :     }
779 :     _t058B = •0079<$[2]; $[2]; $[]> (r000EA, v1600CC);
780 :     _t058C = •0079<$[2]; $[2]; $[]> (r100EB, v1600CC);
781 :     _t058D = [_t058B, _t058C];
782 :     _t058E = 0;
783 :     _t058F = t00E5[_t058E];
784 :     _t0590 = 1;
785 :     _t0591 = t00E5[_t0590];
786 :     _t0592 = [_t058F, _t0591];
787 :     pos00EC = +000F<$[2]> (_t058D, _t0592);
788 :     bool _t0593;
789 :     _t0594 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
790 :     if _t0594
791 :     _t0593 = inside007D<#2; %2; $[]> (v1600CC, T00A3);
792 :     else
793 :     _t0593 = false;
794 :     if _t0593 {
795 :     _t0595 = @0060<#2; %2; $[]> (F00AC, pos00EC);
796 :     _t0596 = @0060<#2; %2; $[]> (T00A3, v1600CC);
797 :     _t0597 = -0016<$[]> (_t0595, _t0596);
798 :     _t0598 = @0060<#2; %2; $[]> (F00AC, pos00EC);
799 :     _t0599 = @0060<#2; %2; $[]> (T00A3, v1600CC);
800 :     _t059A = -0016<$[]> (_t0598, _t0599);
801 :     _t059B = *001C (_t0597, _t059A);
802 :     score00E9 = +000F<$[]> (score00E9, _t059B);
803 :     }
804 :     _t059C = •0079<$[2]; $[2]; $[]> (r000EA, v1700CE);
805 :     _t059D = •0079<$[2]; $[2]; $[]> (r100EB, v1700CE);
806 :     _t059E = [_t059C, _t059D];
807 :     _t059F = 0;
808 :     _t05A0 = t00E5[_t059F];
809 :     _t05A1 = 1;
810 :     _t05A2 = t00E5[_t05A1];
811 :     _t05A3 = [_t05A0, _t05A2];
812 :     pos00EC = +000F<$[2]> (_t059E, _t05A3);
813 :     bool _t05A4;
814 :     _t05A5 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
815 :     if _t05A5
816 :     _t05A4 = inside007D<#2; %2; $[]> (v1700CE, T00A3);
817 :     else
818 :     _t05A4 = false;
819 :     if _t05A4 {
820 :     _t05A6 = @0060<#2; %2; $[]> (F00AC, pos00EC);
821 :     _t05A7 = @0060<#2; %2; $[]> (T00A3, v1700CE);
822 :     _t05A8 = -0016<$[]> (_t05A6, _t05A7);
823 :     _t05A9 = @0060<#2; %2; $[]> (F00AC, pos00EC);
824 :     _t05AA = @0060<#2; %2; $[]> (T00A3, v1700CE);
825 :     _t05AB = -0016<$[]> (_t05A9, _t05AA);
826 :     _t05AC = *001C (_t05A8, _t05AB);
827 :     score00E9 = +000F<$[]> (score00E9, _t05AC);
828 :     }
829 :     _t05AD = •0079<$[2]; $[2]; $[]> (r000EA, v1800D0);
830 :     _t05AE = •0079<$[2]; $[2]; $[]> (r100EB, v1800D0);
831 :     _t05AF = [_t05AD, _t05AE];
832 :     _t05B0 = 0;
833 :     _t05B1 = t00E5[_t05B0];
834 :     _t05B2 = 1;
835 :     _t05B3 = t00E5[_t05B2];
836 :     _t05B4 = [_t05B1, _t05B3];
837 :     pos00EC = +000F<$[2]> (_t05AF, _t05B4);
838 :     bool _t05B5;
839 :     _t05B6 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
840 :     if _t05B6
841 :     _t05B5 = inside007D<#2; %2; $[]> (v1800D0, T00A3);
842 :     else
843 :     _t05B5 = false;
844 :     if _t05B5 {
845 :     _t05B7 = @0060<#2; %2; $[]> (F00AC, pos00EC);
846 :     _t05B8 = @0060<#2; %2; $[]> (T00A3, v1800D0);
847 :     _t05B9 = -0016<$[]> (_t05B7, _t05B8);
848 :     _t05BA = @0060<#2; %2; $[]> (F00AC, pos00EC);
849 :     _t05BB = @0060<#2; %2; $[]> (T00A3, v1800D0);
850 :     _t05BC = -0016<$[]> (_t05BA, _t05BB);
851 :     _t05BD = *001C (_t05B9, _t05BC);
852 :     score00E9 = +000F<$[]> (score00E9, _t05BD);
853 :     }
854 :     _t05BE = •0079<$[2]; $[2]; $[]> (r000EA, v1900D3);
855 :     _t05BF = •0079<$[2]; $[2]; $[]> (r100EB, v1900D3);
856 :     _t05C0 = [_t05BE, _t05BF];
857 :     _t05C1 = 0;
858 :     _t05C2 = t00E5[_t05C1];
859 :     _t05C3 = 1;
860 :     _t05C4 = t00E5[_t05C3];
861 :     _t05C5 = [_t05C2, _t05C4];
862 :     pos00EC = +000F<$[2]> (_t05C0, _t05C5);
863 :     bool _t05C6;
864 :     _t05C7 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
865 :     if _t05C7
866 :     _t05C6 = inside007D<#2; %2; $[]> (v1900D3, T00A3);
867 :     else
868 :     _t05C6 = false;
869 :     if _t05C6 {
870 :     _t05C8 = @0060<#2; %2; $[]> (F00AC, pos00EC);
871 :     _t05C9 = @0060<#2; %2; $[]> (T00A3, v1900D3);
872 :     _t05CA = -0016<$[]> (_t05C8, _t05C9);
873 :     _t05CB = @0060<#2; %2; $[]> (F00AC, pos00EC);
874 :     _t05CC = @0060<#2; %2; $[]> (T00A3, v1900D3);
875 :     _t05CD = -0016<$[]> (_t05CB, _t05CC);
876 :     _t05CE = *001C (_t05CA, _t05CD);
877 :     score00E9 = +000F<$[]> (score00E9, _t05CE);
878 :     }
879 :     _t05CF = •0079<$[2]; $[2]; $[]> (r000EA, v2000D6);
880 :     _t05D0 = •0079<$[2]; $[2]; $[]> (r100EB, v2000D6);
881 :     _t05D1 = [_t05CF, _t05D0];
882 :     _t05D2 = 0;
883 :     _t05D3 = t00E5[_t05D2];
884 :     _t05D4 = 1;
885 :     _t05D5 = t00E5[_t05D4];
886 :     _t05D6 = [_t05D3, _t05D5];
887 :     pos00EC = +000F<$[2]> (_t05D1, _t05D6);
888 :     bool _t05D7;
889 :     _t05D8 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
890 :     if _t05D8
891 :     _t05D7 = inside007D<#2; %2; $[]> (v2000D6, T00A3);
892 :     else
893 :     _t05D7 = false;
894 :     if _t05D7 {
895 :     _t05D9 = @0060<#2; %2; $[]> (F00AC, pos00EC);
896 :     _t05DA = @0060<#2; %2; $[]> (T00A3, v2000D6);
897 :     _t05DB = -0016<$[]> (_t05D9, _t05DA);
898 :     _t05DC = @0060<#2; %2; $[]> (F00AC, pos00EC);
899 :     _t05DD = @0060<#2; %2; $[]> (T00A3, v2000D6);
900 :     _t05DE = -0016<$[]> (_t05DC, _t05DD);
901 :     _t05DF = *001C (_t05DB, _t05DE);
902 :     score00E9 = +000F<$[]> (score00E9, _t05DF);
903 :     }
904 :     _t05E0 = •0079<$[2]; $[2]; $[]> (r000EA, v2100D8);
905 :     _t05E1 = •0079<$[2]; $[2]; $[]> (r100EB, v2100D8);
906 :     _t05E2 = [_t05E0, _t05E1];
907 :     _t05E3 = 0;
908 :     _t05E4 = t00E5[_t05E3];
909 :     _t05E5 = 1;
910 :     _t05E6 = t00E5[_t05E5];
911 :     _t05E7 = [_t05E4, _t05E6];
912 :     pos00EC = +000F<$[2]> (_t05E2, _t05E7);
913 :     bool _t05E8;
914 :     _t05E9 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
915 :     if _t05E9
916 :     _t05E8 = inside007D<#2; %2; $[]> (v2100D8, T00A3);
917 :     else
918 :     _t05E8 = false;
919 :     if _t05E8 {
920 :     _t05EA = @0060<#2; %2; $[]> (F00AC, pos00EC);
921 :     _t05EB = @0060<#2; %2; $[]> (T00A3, v2100D8);
922 :     _t05EC = -0016<$[]> (_t05EA, _t05EB);
923 :     _t05ED = @0060<#2; %2; $[]> (F00AC, pos00EC);
924 :     _t05EE = @0060<#2; %2; $[]> (T00A3, v2100D8);
925 :     _t05EF = -0016<$[]> (_t05ED, _t05EE);
926 :     _t05F0 = *001C (_t05EC, _t05EF);
927 :     score00E9 = +000F<$[]> (score00E9, _t05F0);
928 :     }
929 :     _t05F1 = •0079<$[2]; $[2]; $[]> (r000EA, v2200DA);
930 :     _t05F2 = •0079<$[2]; $[2]; $[]> (r100EB, v2200DA);
931 :     _t05F3 = [_t05F1, _t05F2];
932 :     _t05F4 = 0;
933 :     _t05F5 = t00E5[_t05F4];
934 :     _t05F6 = 1;
935 :     _t05F7 = t00E5[_t05F6];
936 :     _t05F8 = [_t05F5, _t05F7];
937 :     pos00EC = +000F<$[2]> (_t05F3, _t05F8);
938 :     bool _t05F9;
939 :     _t05FA = inside007D<#2; %2; $[]> (pos00EC, F00AC);
940 :     if _t05FA
941 :     _t05F9 = inside007D<#2; %2; $[]> (v2200DA, T00A3);
942 :     else
943 :     _t05F9 = false;
944 :     if _t05F9 {
945 :     _t05FB = @0060<#2; %2; $[]> (F00AC, pos00EC);
946 :     _t05FC = @0060<#2; %2; $[]> (T00A3, v2200DA);
947 :     _t05FD = -0016<$[]> (_t05FB, _t05FC);
948 :     _t05FE = @0060<#2; %2; $[]> (F00AC, pos00EC);
949 :     _t05FF = @0060<#2; %2; $[]> (T00A3, v2200DA);
950 :     _t0600 = -0016<$[]> (_t05FE, _t05FF);
951 :     _t0601 = *001C (_t05FD, _t0600);
952 :     score00E9 = +000F<$[]> (score00E9, _t0601);
953 :     }
954 :     _t0602 = •0079<$[2]; $[2]; $[]> (r000EA, v2300DC);
955 :     _t0603 = •0079<$[2]; $[2]; $[]> (r100EB, v2300DC);
956 :     _t0604 = [_t0602, _t0603];
957 :     _t0605 = 0;
958 :     _t0606 = t00E5[_t0605];
959 :     _t0607 = 1;
960 :     _t0608 = t00E5[_t0607];
961 :     _t0609 = [_t0606, _t0608];
962 :     pos00EC = +000F<$[2]> (_t0604, _t0609);
963 :     bool _t060A;
964 :     _t060B = inside007D<#2; %2; $[]> (pos00EC, F00AC);
965 :     if _t060B
966 :     _t060A = inside007D<#2; %2; $[]> (v2300DC, T00A3);
967 :     else
968 :     _t060A = false;
969 :     if _t060A {
970 :     _t060C = @0060<#2; %2; $[]> (F00AC, pos00EC);
971 :     _t060D = @0060<#2; %2; $[]> (T00A3, v2300DC);
972 :     _t060E = -0016<$[]> (_t060C, _t060D);
973 :     _t060F = @0060<#2; %2; $[]> (F00AC, pos00EC);
974 :     _t0610 = @0060<#2; %2; $[]> (T00A3, v2300DC);
975 :     _t0611 = -0016<$[]> (_t060F, _t0610);
976 :     _t0612 = *001C (_t060E, _t0611);
977 :     score00E9 = +000F<$[]> (score00E9, _t0612);
978 :     }
979 :     _t0613 = •0079<$[2]; $[2]; $[]> (r000EA, v2400DF);
980 :     _t0614 = •0079<$[2]; $[2]; $[]> (r100EB, v2400DF);
981 :     _t0615 = [_t0613, _t0614];
982 :     _t0616 = 0;
983 :     _t0617 = t00E5[_t0616];
984 :     _t0618 = 1;
985 :     _t0619 = t00E5[_t0618];
986 :     _t061A = [_t0617, _t0619];
987 :     pos00EC = +000F<$[2]> (_t0615, _t061A);
988 :     bool _t061B;
989 :     _t061C = inside007D<#2; %2; $[]> (pos00EC, F00AC);
990 :     if _t061C
991 :     _t061B = inside007D<#2; %2; $[]> (v2400DF, T00A3);
992 :     else
993 :     _t061B = false;
994 :     if _t061B {
995 :     _t061D = @0060<#2; %2; $[]> (F00AC, pos00EC);
996 :     _t061E = @0060<#2; %2; $[]> (T00A3, v2400DF);
997 :     _t061F = -0016<$[]> (_t061D, _t061E);
998 :     _t0620 = @0060<#2; %2; $[]> (F00AC, pos00EC);
999 :     _t0621 = @0060<#2; %2; $[]> (T00A3, v2400DF);
1000 :     _t0622 = -0016<$[]> (_t0620, _t0621);
1001 :     _t0623 = *001C (_t061F, _t0622);
1002 :     score00E9 = +000F<$[]> (score00E9, _t0623);
1003 :     }
1004 :     stabilize;
1005 :     }
1006 :     Stabilize
1007 :     { }
1008 :     }
1009 :     /* Program end */
1010 :     **** static variables: _t03EE _t03EF _t03F1 _t03F2
1011 :     eval assignment: _t03EE = "square-template.nrrd"
1012 :     square-template.nrrd file header:
1013 :     type: int
1014 :     dimension: 2
1015 :     space dimension: 2
1016 :     sizes: 21 21
1017 :     space directions: (0.050000000000000003,0) (0,0.050000000000000003)
1018 :     kinds: space space
1019 :     endian: little
1020 :     encoding: raw
1021 :     space origin: (-0.5,-0.5)
1022 :     eval assignment: _t03EF = IMAGE2D<int>
1023 :     eval assignment: _t03F1 = "square-rotate.nrrd"
1024 :     square-rotate.nrrd file header:
1025 :     type: float
1026 :     dimension: 2
1027 :     space dimension: 2
1028 :     sizes: 21 21
1029 :     space directions: (0.050000000000000003,0) (0,0.050000000000000003)
1030 :     kinds: space space
1031 :     endian: little
1032 :     encoding: raw
1033 :     space origin: (-0.5,-0.5)
1034 :     eval assignment: _t03F2 = IMAGE2D<float>
1035 :     eval assignment: _t03F3 = 0.0
1036 :     eval assignment: _t03F4 = 0.0
1037 :     eval assignment: v0000B5 = tensor
1038 :     eval assignment: _t03F5 = 0.0
1039 :     eval assignment: _t03F6 = 0.25
1040 :     eval assignment: v0100B6 = tensor
1041 :     eval assignment: _t03F7 = 0.0
1042 :     eval assignment: _t03F8 = 0.5
1043 :     eval assignment: v0200B7 = tensor
1044 :     eval assignment: _t03F9 = 0.0
1045 :     eval assignment: _t03FA = 0.25
1046 :     eval assignment: _t03FC = 0.0
1047 :     eval assignment: _t03FD = 0.5
1048 :     eval assignment: _t03FF = 0.25
1049 :     eval assignment: _t0400 = 0.0
1050 :     eval assignment: v0500BC = tensor
1051 :     eval assignment: _t0401 = 0.25
1052 :     eval assignment: _t0402 = 0.25
1053 :     eval assignment: v0600BD = tensor
1054 :     eval assignment: _t0403 = 0.25
1055 :     eval assignment: _t0404 = 0.5
1056 :     eval assignment: v0700BE = tensor
1057 :     eval assignment: _t0405 = 0.25
1058 :     eval assignment: _t0406 = 0.25
1059 :     eval assignment: _t0408 = 0.25
1060 :     eval assignment: _t0409 = 0.5
1061 :     eval assignment: _t040B = 0.5
1062 :     eval assignment: _t040C = 0.0
1063 :     eval assignment: v1000C3 = tensor
1064 :     eval assignment: _t040D = 0.5
1065 :     eval assignment: _t040E = 0.25
1066 :     eval assignment: v1100C4 = tensor
1067 :     eval assignment: _t040F = 0.5
1068 :     eval assignment: _t0410 = 0.5
1069 :     eval assignment: v1200C5 = tensor
1070 :     eval assignment: _t0411 = 0.5
1071 :     eval assignment: _t0412 = 0.25
1072 :     eval assignment: _t0414 = 0.5
1073 :     eval assignment: _t0415 = 0.5
1074 :     eval assignment: _t0417 = 0.25
1075 :     eval assignment: _t0419 = 0.0
1076 :     eval assignment: _t041A = 0.25
1077 :     eval assignment: _t041C = 0.25
1078 :     eval assignment: _t041D = 0.25
1079 :     eval assignment: _t041F = 0.5
1080 :     eval assignment: _t0420 = 0.25
1081 :     eval assignment: _t0422 = 0.25
1082 :     eval assignment: _t0424 = 0.25
1083 :     eval assignment: _t0426 = 0.5
1084 :     eval assignment: _t0428 = 0.5
1085 :     eval assignment: _t042A = 0.0
1086 :     eval assignment: _t042B = 0.5
1087 :     eval assignment: _t042D = 0.25
1088 :     eval assignment: _t042E = 0.5
1089 :     eval assignment: _t0430 = 0.5
1090 :     eval assignment: _t0431 = 0.5
1091 :     eval assignment: _t0433 = 0.25
1092 :     eval assignment: _t0435 = 0.5
1093 :     eval assignment: _t0437 = 0.5
1094 :     /* Simplified Program start */
1095 :     {
1096 :     field#2(2)[] T00A3;
1097 :     field#2(2)[] F00AC;
1098 :     vec2 v0000B5;
1099 :     vec2 v0100B6;
1100 :     vec2 v0200B7;
1101 :     vec2 v0300B8;
1102 :     vec2 v0400BA;
1103 :     vec2 v0500BC;
1104 :     vec2 v0600BD;
1105 :     vec2 v0700BE;
1106 :     vec2 v0800BF;
1107 :     vec2 v0900C1;
1108 :     vec2 v1000C3;
1109 :     vec2 v1100C4;
1110 :     vec2 v1200C5;
1111 :     vec2 v1300C6;
1112 :     vec2 v1400C8;
1113 :     vec2 v1500CA;
1114 :     vec2 v1600CC;
1115 :     vec2 v1700CE;
1116 :     vec2 v1800D0;
1117 :     vec2 v1900D3;
1118 :     vec2 v2000D6;
1119 :     vec2 v2100D8;
1120 :     vec2 v2200DA;
1121 :     vec2 v2300DC;
1122 :     vec2 v2400DF;
1123 :     _t03ED = bspln30095 ();
1124 :     _t03EE = "square-template.nrrd";
1125 :     _t03EF = load (IMAGE2D<int> ,_t03EE);
1126 :     T00A3 = ⊛003A<#2; %2; $[]> (_t03ED, _t03EF);
1127 :     _t03F0 = bspln30095 ();
1128 :     _t03F1 = "square-rotate.nrrd";
1129 :     _t03F2 = load (IMAGE2D<float> ,_t03F1);
1130 :     F00AC = ⊛003A<#2; %2; $[]> (_t03F0, _t03F2);
1131 :     _t03F3 = 0.0;
1132 :     _t03F4 = 0.0;
1133 :     v0000B5 = [_t03F3, _t03F4];
1134 :     _t03F5 = 0.0;
1135 :     _t03F6 = 0.25e0;
1136 :     v0100B6 = [_t03F5, _t03F6];
1137 :     _t03F7 = 0.0;
1138 :     _t03F8 = 0.5e0;
1139 :     v0200B7 = [_t03F7, _t03F8];
1140 :     _t03F9 = 0.0;
1141 :     _t03FA = 0.25e0;
1142 :     _t03FB = unary -004D<$[]> (_t03FA);
1143 :     v0300B8 = [_t03F9, _t03FB];
1144 :     _t03FC = 0.0;
1145 :     _t03FD = 0.5e0;
1146 :     _t03FE = unary -004D<$[]> (_t03FD);
1147 :     v0400BA = [_t03FC, _t03FE];
1148 :     _t03FF = 0.25e0;
1149 :     _t0400 = 0.0;
1150 :     v0500BC = [_t03FF, _t0400];
1151 :     _t0401 = 0.25e0;
1152 :     _t0402 = 0.25e0;
1153 :     v0600BD = [_t0401, _t0402];
1154 :     _t0403 = 0.25e0;
1155 :     _t0404 = 0.5e0;
1156 :     v0700BE = [_t0403, _t0404];
1157 :     _t0405 = 0.25e0;
1158 :     _t0406 = 0.25e0;
1159 :     _t0407 = unary -004D<$[]> (_t0406);
1160 :     v0800BF = [_t0405, _t0407];
1161 :     _t0408 = 0.25e0;
1162 :     _t0409 = 0.5e0;
1163 :     _t040A = unary -004D<$[]> (_t0409);
1164 :     v0900C1 = [_t0408, _t040A];
1165 :     _t040B = 0.5e0;
1166 :     _t040C = 0.0;
1167 :     v1000C3 = [_t040B, _t040C];
1168 :     _t040D = 0.5e0;
1169 :     _t040E = 0.25e0;
1170 :     v1100C4 = [_t040D, _t040E];
1171 :     _t040F = 0.5e0;
1172 :     _t0410 = 0.5e0;
1173 :     v1200C5 = [_t040F, _t0410];
1174 :     _t0411 = 0.5e0;
1175 :     _t0412 = 0.25e0;
1176 :     _t0413 = unary -004D<$[]> (_t0412);
1177 :     v1300C6 = [_t0411, _t0413];
1178 :     _t0414 = 0.5e0;
1179 :     _t0415 = 0.5e0;
1180 :     _t0416 = unary -004D<$[]> (_t0415);
1181 :     v1400C8 = [_t0414, _t0416];
1182 :     _t0417 = 0.25e0;
1183 :     _t0418 = unary -004D<$[]> (_t0417);
1184 :     _t0419 = 0.0;
1185 :     v1500CA = [_t0418, _t0419];
1186 :     _t041A = 0.25e0;
1187 :     _t041B = unary -004D<$[]> (_t041A);
1188 :     _t041C = 0.25e0;
1189 :     v1600CC = [_t041B, _t041C];
1190 :     _t041D = 0.25e0;
1191 :     _t041E = unary -004D<$[]> (_t041D);
1192 :     _t041F = 0.5e0;
1193 :     v1700CE = [_t041E, _t041F];
1194 :     _t0420 = 0.25e0;
1195 :     _t0421 = unary -004D<$[]> (_t0420);
1196 :     _t0422 = 0.25e0;
1197 :     _t0423 = unary -004D<$[]> (_t0422);
1198 :     v1800D0 = [_t0421, _t0423];
1199 :     _t0424 = 0.25e0;
1200 :     _t0425 = unary -004D<$[]> (_t0424);
1201 :     _t0426 = 0.5e0;
1202 :     _t0427 = unary -004D<$[]> (_t0426);
1203 :     v1900D3 = [_t0425, _t0427];
1204 :     _t0428 = 0.5e0;
1205 :     _t0429 = unary -004D<$[]> (_t0428);
1206 :     _t042A = 0.0;
1207 :     v2000D6 = [_t0429, _t042A];
1208 :     _t042B = 0.5e0;
1209 :     _t042C = unary -004D<$[]> (_t042B);
1210 :     _t042D = 0.25e0;
1211 :     v2100D8 = [_t042C, _t042D];
1212 :     _t042E = 0.5e0;
1213 :     _t042F = unary -004D<$[]> (_t042E);
1214 :     _t0430 = 0.5e0;
1215 :     v2200DA = [_t042F, _t0430];
1216 :     _t0431 = 0.5e0;
1217 :     _t0432 = unary -004D<$[]> (_t0431);
1218 :     _t0433 = 0.25e0;
1219 :     _t0434 = unary -004D<$[]> (_t0433);
1220 :     v2300DC = [_t0432, _t0434];
1221 :     _t0435 = 0.5e0;
1222 :     _t0436 = unary -004D<$[]> (_t0435);
1223 :     _t0437 = 0.5e0;
1224 :     _t0438 = unary -004D<$[]> (_t0437);
1225 :     v2400DF = [_t0436, _t0438];
1226 :     }
1227 :     Array
1228 :     {
1229 :     _t0624 = 0;
1230 :     _t0625 = 60;
1231 :     _t0626 = 0;
1232 :     _t0627 = 60;
1233 :     _t0628 = 0;
1234 :     _t0629 = 60;
1235 :     }
1236 :     for int i03EA = _t0624 .. _t0625
1237 :     for int j03EB = _t0626 .. _t0627
1238 :     for int k03EC = _t0628 .. _t0629
1239 :     { }
1240 :     new R(i03EA, j03EB, k03EC);
1241 :     strand R (int i00E4, int j00E3, int k00E2)
1242 :     {{
1243 :     vec3 t00E5;
1244 :     output real score00E9;
1245 :     vec2 r000EA;
1246 :     vec2 r100EB;
1247 :     vec2 pos00EC;
1248 :     _t0439 = $i2r009B (i00E4);
1249 :     _t043A = 0.60e2;
1250 :     _t043B = /002A (_t0439, _t043A);
1251 :     _t043C = 0.5e0;
1252 :     _t043D = -0016<$[]> (_t043B, _t043C);
1253 :     _t043E = $i2r009B (j00E3);
1254 :     _t043F = 0.60e2;
1255 :     _t0440 = /002A (_t043E, _t043F);
1256 :     _t0441 = 0.5e0;
1257 :     _t0442 = -0016<$[]> (_t0440, _t0441);
1258 :     _t0443 = $i2r009B (k00E2);
1259 :     _t0444 = 0.60e2;
1260 :     _t0445 = /002A (_t0443, _t0444);
1261 :     _t0446 = 0.5e0;
1262 :     _t0447 = -0016<$[]> (_t0445, _t0446);
1263 :     t00E5 = [_t043D, _t0442, _t0447];
1264 :     score00E9 = 0.0;
1265 :     _t0448 = 0.0;
1266 :     _t0449 = 0.0;
1267 :     r000EA = [_t0448, _t0449];
1268 :     _t044A = 0.0;
1269 :     _t044B = 0.0;
1270 :     r100EB = [_t044A, _t044B];
1271 :     _t044C = 0.0;
1272 :     _t044D = 0.0;
1273 :     pos00EC = [_t044C, _t044D];
1274 :     }
1275 :     Update
1276 :     {
1277 :     _t044E = 0.1e1;
1278 :     _t044F = 0.2e1;
1279 :     _t0450 = 2;
1280 :     _t0451 = t00E5[_t0450];
1281 :     _t0452 = *001C (_t044F, _t0451);
1282 :     _t0453 = 2;
1283 :     _t0454 = t00E5[_t0453];
1284 :     _t0455 = *001C (_t0452, _t0454);
1285 :     _t0456 = -0016<$[]> (_t044E, _t0455);
1286 :     _t0457 = 0.2e1;
1287 :     _t0458 = unary -004D<$[]> (_t0457);
1288 :     _t0459 = 0.1e1;
1289 :     _t045A = 2;
1290 :     _t045B = t00E5[_t045A];
1291 :     _t045C = 2;
1292 :     _t045D = t00E5[_t045C];
1293 :     _t045E = *001C (_t045B, _t045D);
1294 :     _t045F = -0016<$[]> (_t0459, _t045E);
1295 :     _t0460 = sqrt0091 (_t045F);
1296 :     _t0461 = *001C (_t0458, _t0460);
1297 :     _t0462 = 2;
1298 :     _t0463 = t00E5[_t0462];
1299 :     _t0464 = *001C (_t0461, _t0463);
1300 :     r000EA = [_t0456, _t0464];
1301 :     _t0465 = 0.2e1;
1302 :     _t0466 = 0.1e1;
1303 :     _t0467 = 2;
1304 :     _t0468 = t00E5[_t0467];
1305 :     _t0469 = 2;
1306 :     _t046A = t00E5[_t0469];
1307 :     _t046B = *001C (_t0468, _t046A);
1308 :     _t046C = -0016<$[]> (_t0466, _t046B);
1309 :     _t046D = sqrt0091 (_t046C);
1310 :     _t046E = *001C (_t0465, _t046D);
1311 :     _t046F = 2;
1312 :     _t0470 = t00E5[_t046F];
1313 :     _t0471 = *001C (_t046E, _t0470);
1314 :     _t0472 = 0.1e1;
1315 :     _t0473 = 0.2e1;
1316 :     _t0474 = 2;
1317 :     _t0475 = t00E5[_t0474];
1318 :     _t0476 = *001C (_t0473, _t0475);
1319 :     _t0477 = 2;
1320 :     _t0478 = t00E5[_t0477];
1321 :     _t0479 = *001C (_t0476, _t0478);
1322 :     _t047A = -0016<$[]> (_t0472, _t0479);
1323 :     r100EB = [_t0471, _t047A];
1324 :     _t047B = •0079<$[2]; $[2]; $[]> (r000EA, v0000B5);
1325 :     _t047C = •0079<$[2]; $[2]; $[]> (r100EB, v0000B5);
1326 :     _t047D = [_t047B, _t047C];
1327 :     _t047E = 0;
1328 :     _t047F = t00E5[_t047E];
1329 :     _t0480 = 1;
1330 :     _t0481 = t00E5[_t0480];
1331 :     _t0482 = [_t047F, _t0481];
1332 :     pos00EC = +000F<$[2]> (_t047D, _t0482);
1333 :     bool _t0483;
1334 :     _t0484 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1335 :     if _t0484
1336 :     _t0483 = inside007D<#2; %2; $[]> (v0000B5, T00A3);
1337 :     else
1338 :     _t0483 = false;
1339 :     if _t0483 {
1340 :     _t0485 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1341 :     _t0486 = @0060<#2; %2; $[]> (T00A3, v0000B5);
1342 :     _t0487 = -0016<$[]> (_t0485, _t0486);
1343 :     _t0488 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1344 :     _t0489 = @0060<#2; %2; $[]> (T00A3, v0000B5);
1345 :     _t048A = -0016<$[]> (_t0488, _t0489);
1346 :     _t048B = *001C (_t0487, _t048A);
1347 :     score00E9 = +000F<$[]> (score00E9, _t048B);
1348 :     }
1349 :     _t048C = •0079<$[2]; $[2]; $[]> (r000EA, v0100B6);
1350 :     _t048D = •0079<$[2]; $[2]; $[]> (r100EB, v0100B6);
1351 :     _t048E = [_t048C, _t048D];
1352 :     _t048F = 0;
1353 :     _t0490 = t00E5[_t048F];
1354 :     _t0491 = 1;
1355 :     _t0492 = t00E5[_t0491];
1356 :     _t0493 = [_t0490, _t0492];
1357 :     pos00EC = +000F<$[2]> (_t048E, _t0493);
1358 :     bool _t0494;
1359 :     _t0495 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1360 :     if _t0495
1361 :     _t0494 = inside007D<#2; %2; $[]> (v0100B6, T00A3);
1362 :     else
1363 :     _t0494 = false;
1364 :     if _t0494 {
1365 :     _t0496 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1366 :     _t0497 = @0060<#2; %2; $[]> (T00A3, v0100B6);
1367 :     _t0498 = -0016<$[]> (_t0496, _t0497);
1368 :     _t0499 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1369 :     _t049A = @0060<#2; %2; $[]> (T00A3, v0100B6);
1370 :     _t049B = -0016<$[]> (_t0499, _t049A);
1371 :     _t049C = *001C (_t0498, _t049B);
1372 :     score00E9 = +000F<$[]> (score00E9, _t049C);
1373 :     }
1374 :     _t049D = •0079<$[2]; $[2]; $[]> (r000EA, v0200B7);
1375 :     _t049E = •0079<$[2]; $[2]; $[]> (r100EB, v0200B7);
1376 :     _t049F = [_t049D, _t049E];
1377 :     _t04A0 = 0;
1378 :     _t04A1 = t00E5[_t04A0];
1379 :     _t04A2 = 1;
1380 :     _t04A3 = t00E5[_t04A2];
1381 :     _t04A4 = [_t04A1, _t04A3];
1382 :     pos00EC = +000F<$[2]> (_t049F, _t04A4);
1383 :     bool _t04A5;
1384 :     _t04A6 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1385 :     if _t04A6
1386 :     _t04A5 = inside007D<#2; %2; $[]> (v0200B7, T00A3);
1387 :     else
1388 :     _t04A5 = false;
1389 :     if _t04A5 {
1390 :     _t04A7 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1391 :     _t04A8 = @0060<#2; %2; $[]> (T00A3, v0200B7);
1392 :     _t04A9 = -0016<$[]> (_t04A7, _t04A8);
1393 :     _t04AA = @0060<#2; %2; $[]> (F00AC, pos00EC);
1394 :     _t04AB = @0060<#2; %2; $[]> (T00A3, v0200B7);
1395 :     _t04AC = -0016<$[]> (_t04AA, _t04AB);
1396 :     _t04AD = *001C (_t04A9, _t04AC);
1397 :     score00E9 = +000F<$[]> (score00E9, _t04AD);
1398 :     }
1399 :     _t04AE = •0079<$[2]; $[2]; $[]> (r000EA, v0300B8);
1400 :     _t04AF = •0079<$[2]; $[2]; $[]> (r100EB, v0300B8);
1401 :     _t04B0 = [_t04AE, _t04AF];
1402 :     _t04B1 = 0;
1403 :     _t04B2 = t00E5[_t04B1];
1404 :     _t04B3 = 1;
1405 :     _t04B4 = t00E5[_t04B3];
1406 :     _t04B5 = [_t04B2, _t04B4];
1407 :     pos00EC = +000F<$[2]> (_t04B0, _t04B5);
1408 :     bool _t04B6;
1409 :     _t04B7 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1410 :     if _t04B7
1411 :     _t04B6 = inside007D<#2; %2; $[]> (v0300B8, T00A3);
1412 :     else
1413 :     _t04B6 = false;
1414 :     if _t04B6 {
1415 :     _t04B8 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1416 :     _t04B9 = @0060<#2; %2; $[]> (T00A3, v0300B8);
1417 :     _t04BA = -0016<$[]> (_t04B8, _t04B9);
1418 :     _t04BB = @0060<#2; %2; $[]> (F00AC, pos00EC);
1419 :     _t04BC = @0060<#2; %2; $[]> (T00A3, v0300B8);
1420 :     _t04BD = -0016<$[]> (_t04BB, _t04BC);
1421 :     _t04BE = *001C (_t04BA, _t04BD);
1422 :     score00E9 = +000F<$[]> (score00E9, _t04BE);
1423 :     }
1424 :     _t04BF = •0079<$[2]; $[2]; $[]> (r000EA, v0400BA);
1425 :     _t04C0 = •0079<$[2]; $[2]; $[]> (r100EB, v0400BA);
1426 :     _t04C1 = [_t04BF, _t04C0];
1427 :     _t04C2 = 0;
1428 :     _t04C3 = t00E5[_t04C2];
1429 :     _t04C4 = 1;
1430 :     _t04C5 = t00E5[_t04C4];
1431 :     _t04C6 = [_t04C3, _t04C5];
1432 :     pos00EC = +000F<$[2]> (_t04C1, _t04C6);
1433 :     bool _t04C7;
1434 :     _t04C8 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1435 :     if _t04C8
1436 :     _t04C7 = inside007D<#2; %2; $[]> (v0400BA, T00A3);
1437 :     else
1438 :     _t04C7 = false;
1439 :     if _t04C7 {
1440 :     _t04C9 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1441 :     _t04CA = @0060<#2; %2; $[]> (T00A3, v0400BA);
1442 :     _t04CB = -0016<$[]> (_t04C9, _t04CA);
1443 :     _t04CC = @0060<#2; %2; $[]> (F00AC, pos00EC);
1444 :     _t04CD = @0060<#2; %2; $[]> (T00A3, v0400BA);
1445 :     _t04CE = -0016<$[]> (_t04CC, _t04CD);
1446 :     _t04CF = *001C (_t04CB, _t04CE);
1447 :     score00E9 = +000F<$[]> (score00E9, _t04CF);
1448 :     }
1449 :     _t04D0 = •0079<$[2]; $[2]; $[]> (r000EA, v0500BC);
1450 :     _t04D1 = •0079<$[2]; $[2]; $[]> (r100EB, v0500BC);
1451 :     _t04D2 = [_t04D0, _t04D1];
1452 :     _t04D3 = 0;
1453 :     _t04D4 = t00E5[_t04D3];
1454 :     _t04D5 = 1;
1455 :     _t04D6 = t00E5[_t04D5];
1456 :     _t04D7 = [_t04D4, _t04D6];
1457 :     pos00EC = +000F<$[2]> (_t04D2, _t04D7);
1458 :     bool _t04D8;
1459 :     _t04D9 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1460 :     if _t04D9
1461 :     _t04D8 = inside007D<#2; %2; $[]> (v0500BC, T00A3);
1462 :     else
1463 :     _t04D8 = false;
1464 :     if _t04D8 {
1465 :     _t04DA = @0060<#2; %2; $[]> (F00AC, pos00EC);
1466 :     _t04DB = @0060<#2; %2; $[]> (T00A3, v0500BC);
1467 :     _t04DC = -0016<$[]> (_t04DA, _t04DB);
1468 :     _t04DD = @0060<#2; %2; $[]> (F00AC, pos00EC);
1469 :     _t04DE = @0060<#2; %2; $[]> (T00A3, v0500BC);
1470 :     _t04DF = -0016<$[]> (_t04DD, _t04DE);
1471 :     _t04E0 = *001C (_t04DC, _t04DF);
1472 :     score00E9 = +000F<$[]> (score00E9, _t04E0);
1473 :     }
1474 :     _t04E1 = •0079<$[2]; $[2]; $[]> (r000EA, v0600BD);
1475 :     _t04E2 = •0079<$[2]; $[2]; $[]> (r100EB, v0600BD);
1476 :     _t04E3 = [_t04E1, _t04E2];
1477 :     _t04E4 = 0;
1478 :     _t04E5 = t00E5[_t04E4];
1479 :     _t04E6 = 1;
1480 :     _t04E7 = t00E5[_t04E6];
1481 :     _t04E8 = [_t04E5, _t04E7];
1482 :     pos00EC = +000F<$[2]> (_t04E3, _t04E8);
1483 :     bool _t04E9;
1484 :     _t04EA = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1485 :     if _t04EA
1486 :     _t04E9 = inside007D<#2; %2; $[]> (v0600BD, T00A3);
1487 :     else
1488 :     _t04E9 = false;
1489 :     if _t04E9 {
1490 :     _t04EB = @0060<#2; %2; $[]> (F00AC, pos00EC);
1491 :     _t04EC = @0060<#2; %2; $[]> (T00A3, v0600BD);
1492 :     _t04ED = -0016<$[]> (_t04EB, _t04EC);
1493 :     _t04EE = @0060<#2; %2; $[]> (F00AC, pos00EC);
1494 :     _t04EF = @0060<#2; %2; $[]> (T00A3, v0600BD);
1495 :     _t04F0 = -0016<$[]> (_t04EE, _t04EF);
1496 :     _t04F1 = *001C (_t04ED, _t04F0);
1497 :     score00E9 = +000F<$[]> (score00E9, _t04F1);
1498 :     }
1499 :     _t04F2 = •0079<$[2]; $[2]; $[]> (r000EA, v0700BE);
1500 :     _t04F3 = •0079<$[2]; $[2]; $[]> (r100EB, v0700BE);
1501 :     _t04F4 = [_t04F2, _t04F3];
1502 :     _t04F5 = 0;
1503 :     _t04F6 = t00E5[_t04F5];
1504 :     _t04F7 = 1;
1505 :     _t04F8 = t00E5[_t04F7];
1506 :     _t04F9 = [_t04F6, _t04F8];
1507 :     pos00EC = +000F<$[2]> (_t04F4, _t04F9);
1508 :     bool _t04FA;
1509 :     _t04FB = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1510 :     if _t04FB
1511 :     _t04FA = inside007D<#2; %2; $[]> (v0700BE, T00A3);
1512 :     else
1513 :     _t04FA = false;
1514 :     if _t04FA {
1515 :     _t04FC = @0060<#2; %2; $[]> (F00AC, pos00EC);
1516 :     _t04FD = @0060<#2; %2; $[]> (T00A3, v0700BE);
1517 :     _t04FE = -0016<$[]> (_t04FC, _t04FD);
1518 :     _t04FF = @0060<#2; %2; $[]> (F00AC, pos00EC);
1519 :     _t0500 = @0060<#2; %2; $[]> (T00A3, v0700BE);
1520 :     _t0501 = -0016<$[]> (_t04FF, _t0500);
1521 :     _t0502 = *001C (_t04FE, _t0501);
1522 :     score00E9 = +000F<$[]> (score00E9, _t0502);
1523 :     }
1524 :     _t0503 = •0079<$[2]; $[2]; $[]> (r000EA, v0800BF);
1525 :     _t0504 = •0079<$[2]; $[2]; $[]> (r100EB, v0800BF);
1526 :     _t0505 = [_t0503, _t0504];
1527 :     _t0506 = 0;
1528 :     _t0507 = t00E5[_t0506];
1529 :     _t0508 = 1;
1530 :     _t0509 = t00E5[_t0508];
1531 :     _t050A = [_t0507, _t0509];
1532 :     pos00EC = +000F<$[2]> (_t0505, _t050A);
1533 :     bool _t050B;
1534 :     _t050C = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1535 :     if _t050C
1536 :     _t050B = inside007D<#2; %2; $[]> (v0800BF, T00A3);
1537 :     else
1538 :     _t050B = false;
1539 :     if _t050B {
1540 :     _t050D = @0060<#2; %2; $[]> (F00AC, pos00EC);
1541 :     _t050E = @0060<#2; %2; $[]> (T00A3, v0800BF);
1542 :     _t050F = -0016<$[]> (_t050D, _t050E);
1543 :     _t0510 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1544 :     _t0511 = @0060<#2; %2; $[]> (T00A3, v0800BF);
1545 :     _t0512 = -0016<$[]> (_t0510, _t0511);
1546 :     _t0513 = *001C (_t050F, _t0512);
1547 :     score00E9 = +000F<$[]> (score00E9, _t0513);
1548 :     }
1549 :     _t0514 = •0079<$[2]; $[2]; $[]> (r000EA, v0900C1);
1550 :     _t0515 = •0079<$[2]; $[2]; $[]> (r100EB, v0900C1);
1551 :     _t0516 = [_t0514, _t0515];
1552 :     _t0517 = 0;
1553 :     _t0518 = t00E5[_t0517];
1554 :     _t0519 = 1;
1555 :     _t051A = t00E5[_t0519];
1556 :     _t051B = [_t0518, _t051A];
1557 :     pos00EC = +000F<$[2]> (_t0516, _t051B);
1558 :     bool _t051C;
1559 :     _t051D = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1560 :     if _t051D
1561 :     _t051C = inside007D<#2; %2; $[]> (v0900C1, T00A3);
1562 :     else
1563 :     _t051C = false;
1564 :     if _t051C {
1565 :     _t051E = @0060<#2; %2; $[]> (F00AC, pos00EC);
1566 :     _t051F = @0060<#2; %2; $[]> (T00A3, v0900C1);
1567 :     _t0520 = -0016<$[]> (_t051E, _t051F);
1568 :     _t0521 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1569 :     _t0522 = @0060<#2; %2; $[]> (T00A3, v0900C1);
1570 :     _t0523 = -0016<$[]> (_t0521, _t0522);
1571 :     _t0524 = *001C (_t0520, _t0523);
1572 :     score00E9 = +000F<$[]> (score00E9, _t0524);
1573 :     }
1574 :     _t0525 = •0079<$[2]; $[2]; $[]> (r000EA, v1000C3);
1575 :     _t0526 = •0079<$[2]; $[2]; $[]> (r100EB, v1000C3);
1576 :     _t0527 = [_t0525, _t0526];
1577 :     _t0528 = 0;
1578 :     _t0529 = t00E5[_t0528];
1579 :     _t052A = 1;
1580 :     _t052B = t00E5[_t052A];
1581 :     _t052C = [_t0529, _t052B];
1582 :     pos00EC = +000F<$[2]> (_t0527, _t052C);
1583 :     bool _t052D;
1584 :     _t052E = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1585 :     if _t052E
1586 :     _t052D = inside007D<#2; %2; $[]> (v1000C3, T00A3);
1587 :     else
1588 :     _t052D = false;
1589 :     if _t052D {
1590 :     _t052F = @0060<#2; %2; $[]> (F00AC, pos00EC);
1591 :     _t0530 = @0060<#2; %2; $[]> (T00A3, v1000C3);
1592 :     _t0531 = -0016<$[]> (_t052F, _t0530);
1593 :     _t0532 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1594 :     _t0533 = @0060<#2; %2; $[]> (T00A3, v1000C3);
1595 :     _t0534 = -0016<$[]> (_t0532, _t0533);
1596 :     _t0535 = *001C (_t0531, _t0534);
1597 :     score00E9 = +000F<$[]> (score00E9, _t0535);
1598 :     }
1599 :     _t0536 = •0079<$[2]; $[2]; $[]> (r000EA, v1100C4);
1600 :     _t0537 = •0079<$[2]; $[2]; $[]> (r100EB, v1100C4);
1601 :     _t0538 = [_t0536, _t0537];
1602 :     _t0539 = 0;
1603 :     _t053A = t00E5[_t0539];
1604 :     _t053B = 1;
1605 :     _t053C = t00E5[_t053B];
1606 :     _t053D = [_t053A, _t053C];
1607 :     pos00EC = +000F<$[2]> (_t0538, _t053D);
1608 :     bool _t053E;
1609 :     _t053F = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1610 :     if _t053F
1611 :     _t053E = inside007D<#2; %2; $[]> (v1100C4, T00A3);
1612 :     else
1613 :     _t053E = false;
1614 :     if _t053E {
1615 :     _t0540 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1616 :     _t0541 = @0060<#2; %2; $[]> (T00A3, v1100C4);
1617 :     _t0542 = -0016<$[]> (_t0540, _t0541);
1618 :     _t0543 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1619 :     _t0544 = @0060<#2; %2; $[]> (T00A3, v1100C4);
1620 :     _t0545 = -0016<$[]> (_t0543, _t0544);
1621 :     _t0546 = *001C (_t0542, _t0545);
1622 :     score00E9 = +000F<$[]> (score00E9, _t0546);
1623 :     }
1624 :     _t0547 = •0079<$[2]; $[2]; $[]> (r000EA, v1200C5);
1625 :     _t0548 = •0079<$[2]; $[2]; $[]> (r100EB, v1200C5);
1626 :     _t0549 = [_t0547, _t0548];
1627 :     _t054A = 0;
1628 :     _t054B = t00E5[_t054A];
1629 :     _t054C = 1;
1630 :     _t054D = t00E5[_t054C];
1631 :     _t054E = [_t054B, _t054D];
1632 :     pos00EC = +000F<$[2]> (_t0549, _t054E);
1633 :     bool _t054F;
1634 :     _t0550 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1635 :     if _t0550
1636 :     _t054F = inside007D<#2; %2; $[]> (v1200C5, T00A3);
1637 :     else
1638 :     _t054F = false;
1639 :     if _t054F {
1640 :     _t0551 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1641 :     _t0552 = @0060<#2; %2; $[]> (T00A3, v1200C5);
1642 :     _t0553 = -0016<$[]> (_t0551, _t0552);
1643 :     _t0554 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1644 :     _t0555 = @0060<#2; %2; $[]> (T00A3, v1200C5);
1645 :     _t0556 = -0016<$[]> (_t0554, _t0555);
1646 :     _t0557 = *001C (_t0553, _t0556);
1647 :     score00E9 = +000F<$[]> (score00E9, _t0557);
1648 :     }
1649 :     _t0558 = •0079<$[2]; $[2]; $[]> (r000EA, v1300C6);
1650 :     _t0559 = •0079<$[2]; $[2]; $[]> (r100EB, v1300C6);
1651 :     _t055A = [_t0558, _t0559];
1652 :     _t055B = 0;
1653 :     _t055C = t00E5[_t055B];
1654 :     _t055D = 1;
1655 :     _t055E = t00E5[_t055D];
1656 :     _t055F = [_t055C, _t055E];
1657 :     pos00EC = +000F<$[2]> (_t055A, _t055F);
1658 :     bool _t0560;
1659 :     _t0561 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1660 :     if _t0561
1661 :     _t0560 = inside007D<#2; %2; $[]> (v1300C6, T00A3);
1662 :     else
1663 :     _t0560 = false;
1664 :     if _t0560 {
1665 :     _t0562 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1666 :     _t0563 = @0060<#2; %2; $[]> (T00A3, v1300C6);
1667 :     _t0564 = -0016<$[]> (_t0562, _t0563);
1668 :     _t0565 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1669 :     _t0566 = @0060<#2; %2; $[]> (T00A3, v1300C6);
1670 :     _t0567 = -0016<$[]> (_t0565, _t0566);
1671 :     _t0568 = *001C (_t0564, _t0567);
1672 :     score00E9 = +000F<$[]> (score00E9, _t0568);
1673 :     }
1674 :     _t0569 = •0079<$[2]; $[2]; $[]> (r000EA, v1400C8);
1675 :     _t056A = •0079<$[2]; $[2]; $[]> (r100EB, v1400C8);
1676 :     _t056B = [_t0569, _t056A];
1677 :     _t056C = 0;
1678 :     _t056D = t00E5[_t056C];
1679 :     _t056E = 1;
1680 :     _t056F = t00E5[_t056E];
1681 :     _t0570 = [_t056D, _t056F];
1682 :     pos00EC = +000F<$[2]> (_t056B, _t0570);
1683 :     bool _t0571;
1684 :     _t0572 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1685 :     if _t0572
1686 :     _t0571 = inside007D<#2; %2; $[]> (v1400C8, T00A3);
1687 :     else
1688 :     _t0571 = false;
1689 :     if _t0571 {
1690 :     _t0573 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1691 :     _t0574 = @0060<#2; %2; $[]> (T00A3, v1400C8);
1692 :     _t0575 = -0016<$[]> (_t0573, _t0574);
1693 :     _t0576 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1694 :     _t0577 = @0060<#2; %2; $[]> (T00A3, v1400C8);
1695 :     _t0578 = -0016<$[]> (_t0576, _t0577);
1696 :     _t0579 = *001C (_t0575, _t0578);
1697 :     score00E9 = +000F<$[]> (score00E9, _t0579);
1698 :     }
1699 :     _t057A = •0079<$[2]; $[2]; $[]> (r000EA, v1500CA);
1700 :     _t057B = •0079<$[2]; $[2]; $[]> (r100EB, v1500CA);
1701 :     _t057C = [_t057A, _t057B];
1702 :     _t057D = 0;
1703 :     _t057E = t00E5[_t057D];
1704 :     _t057F = 1;
1705 :     _t0580 = t00E5[_t057F];
1706 :     _t0581 = [_t057E, _t0580];
1707 :     pos00EC = +000F<$[2]> (_t057C, _t0581);
1708 :     bool _t0582;
1709 :     _t0583 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1710 :     if _t0583
1711 :     _t0582 = inside007D<#2; %2; $[]> (v1500CA, T00A3);
1712 :     else
1713 :     _t0582 = false;
1714 :     if _t0582 {
1715 :     _t0584 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1716 :     _t0585 = @0060<#2; %2; $[]> (T00A3, v1500CA);
1717 :     _t0586 = -0016<$[]> (_t0584, _t0585);
1718 :     _t0587 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1719 :     _t0588 = @0060<#2; %2; $[]> (T00A3, v1500CA);
1720 :     _t0589 = -0016<$[]> (_t0587, _t0588);
1721 :     _t058A = *001C (_t0586, _t0589);
1722 :     score00E9 = +000F<$[]> (score00E9, _t058A);
1723 :     }
1724 :     _t058B = •0079<$[2]; $[2]; $[]> (r000EA, v1600CC);
1725 :     _t058C = •0079<$[2]; $[2]; $[]> (r100EB, v1600CC);
1726 :     _t058D = [_t058B, _t058C];
1727 :     _t058E = 0;
1728 :     _t058F = t00E5[_t058E];
1729 :     _t0590 = 1;
1730 :     _t0591 = t00E5[_t0590];
1731 :     _t0592 = [_t058F, _t0591];
1732 :     pos00EC = +000F<$[2]> (_t058D, _t0592);
1733 :     bool _t0593;
1734 :     _t0594 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1735 :     if _t0594
1736 :     _t0593 = inside007D<#2; %2; $[]> (v1600CC, T00A3);
1737 :     else
1738 :     _t0593 = false;
1739 :     if _t0593 {
1740 :     _t0595 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1741 :     _t0596 = @0060<#2; %2; $[]> (T00A3, v1600CC);
1742 :     _t0597 = -0016<$[]> (_t0595, _t0596);
1743 :     _t0598 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1744 :     _t0599 = @0060<#2; %2; $[]> (T00A3, v1600CC);
1745 :     _t059A = -0016<$[]> (_t0598, _t0599);
1746 :     _t059B = *001C (_t0597, _t059A);
1747 :     score00E9 = +000F<$[]> (score00E9, _t059B);
1748 :     }
1749 :     _t059C = •0079<$[2]; $[2]; $[]> (r000EA, v1700CE);
1750 :     _t059D = •0079<$[2]; $[2]; $[]> (r100EB, v1700CE);
1751 :     _t059E = [_t059C, _t059D];
1752 :     _t059F = 0;
1753 :     _t05A0 = t00E5[_t059F];
1754 :     _t05A1 = 1;
1755 :     _t05A2 = t00E5[_t05A1];
1756 :     _t05A3 = [_t05A0, _t05A2];
1757 :     pos00EC = +000F<$[2]> (_t059E, _t05A3);
1758 :     bool _t05A4;
1759 :     _t05A5 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1760 :     if _t05A5
1761 :     _t05A4 = inside007D<#2; %2; $[]> (v1700CE, T00A3);
1762 :     else
1763 :     _t05A4 = false;
1764 :     if _t05A4 {
1765 :     _t05A6 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1766 :     _t05A7 = @0060<#2; %2; $[]> (T00A3, v1700CE);
1767 :     _t05A8 = -0016<$[]> (_t05A6, _t05A7);
1768 :     _t05A9 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1769 :     _t05AA = @0060<#2; %2; $[]> (T00A3, v1700CE);
1770 :     _t05AB = -0016<$[]> (_t05A9, _t05AA);
1771 :     _t05AC = *001C (_t05A8, _t05AB);
1772 :     score00E9 = +000F<$[]> (score00E9, _t05AC);
1773 :     }
1774 :     _t05AD = •0079<$[2]; $[2]; $[]> (r000EA, v1800D0);
1775 :     _t05AE = •0079<$[2]; $[2]; $[]> (r100EB, v1800D0);
1776 :     _t05AF = [_t05AD, _t05AE];
1777 :     _t05B0 = 0;
1778 :     _t05B1 = t00E5[_t05B0];
1779 :     _t05B2 = 1;
1780 :     _t05B3 = t00E5[_t05B2];
1781 :     _t05B4 = [_t05B1, _t05B3];
1782 :     pos00EC = +000F<$[2]> (_t05AF, _t05B4);
1783 :     bool _t05B5;
1784 :     _t05B6 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1785 :     if _t05B6
1786 :     _t05B5 = inside007D<#2; %2; $[]> (v1800D0, T00A3);
1787 :     else
1788 :     _t05B5 = false;
1789 :     if _t05B5 {
1790 :     _t05B7 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1791 :     _t05B8 = @0060<#2; %2; $[]> (T00A3, v1800D0);
1792 :     _t05B9 = -0016<$[]> (_t05B7, _t05B8);
1793 :     _t05BA = @0060<#2; %2; $[]> (F00AC, pos00EC);
1794 :     _t05BB = @0060<#2; %2; $[]> (T00A3, v1800D0);
1795 :     _t05BC = -0016<$[]> (_t05BA, _t05BB);
1796 :     _t05BD = *001C (_t05B9, _t05BC);
1797 :     score00E9 = +000F<$[]> (score00E9, _t05BD);
1798 :     }
1799 :     _t05BE = •0079<$[2]; $[2]; $[]> (r000EA, v1900D3);
1800 :     _t05BF = •0079<$[2]; $[2]; $[]> (r100EB, v1900D3);
1801 :     _t05C0 = [_t05BE, _t05BF];
1802 :     _t05C1 = 0;
1803 :     _t05C2 = t00E5[_t05C1];
1804 :     _t05C3 = 1;
1805 :     _t05C4 = t00E5[_t05C3];
1806 :     _t05C5 = [_t05C2, _t05C4];
1807 :     pos00EC = +000F<$[2]> (_t05C0, _t05C5);
1808 :     bool _t05C6;
1809 :     _t05C7 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1810 :     if _t05C7
1811 :     _t05C6 = inside007D<#2; %2; $[]> (v1900D3, T00A3);
1812 :     else
1813 :     _t05C6 = false;
1814 :     if _t05C6 {
1815 :     _t05C8 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1816 :     _t05C9 = @0060<#2; %2; $[]> (T00A3, v1900D3);
1817 :     _t05CA = -0016<$[]> (_t05C8, _t05C9);
1818 :     _t05CB = @0060<#2; %2; $[]> (F00AC, pos00EC);
1819 :     _t05CC = @0060<#2; %2; $[]> (T00A3, v1900D3);
1820 :     _t05CD = -0016<$[]> (_t05CB, _t05CC);
1821 :     _t05CE = *001C (_t05CA, _t05CD);
1822 :     score00E9 = +000F<$[]> (score00E9, _t05CE);
1823 :     }
1824 :     _t05CF = •0079<$[2]; $[2]; $[]> (r000EA, v2000D6);
1825 :     _t05D0 = •0079<$[2]; $[2]; $[]> (r100EB, v2000D6);
1826 :     _t05D1 = [_t05CF, _t05D0];
1827 :     _t05D2 = 0;
1828 :     _t05D3 = t00E5[_t05D2];
1829 :     _t05D4 = 1;
1830 :     _t05D5 = t00E5[_t05D4];
1831 :     _t05D6 = [_t05D3, _t05D5];
1832 :     pos00EC = +000F<$[2]> (_t05D1, _t05D6);
1833 :     bool _t05D7;
1834 :     _t05D8 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1835 :     if _t05D8
1836 :     _t05D7 = inside007D<#2; %2; $[]> (v2000D6, T00A3);
1837 :     else
1838 :     _t05D7 = false;
1839 :     if _t05D7 {
1840 :     _t05D9 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1841 :     _t05DA = @0060<#2; %2; $[]> (T00A3, v2000D6);
1842 :     _t05DB = -0016<$[]> (_t05D9, _t05DA);
1843 :     _t05DC = @0060<#2; %2; $[]> (F00AC, pos00EC);
1844 :     _t05DD = @0060<#2; %2; $[]> (T00A3, v2000D6);
1845 :     _t05DE = -0016<$[]> (_t05DC, _t05DD);
1846 :     _t05DF = *001C (_t05DB, _t05DE);
1847 :     score00E9 = +000F<$[]> (score00E9, _t05DF);
1848 :     }
1849 :     _t05E0 = •0079<$[2]; $[2]; $[]> (r000EA, v2100D8);
1850 :     _t05E1 = •0079<$[2]; $[2]; $[]> (r100EB, v2100D8);
1851 :     _t05E2 = [_t05E0, _t05E1];
1852 :     _t05E3 = 0;
1853 :     _t05E4 = t00E5[_t05E3];
1854 :     _t05E5 = 1;
1855 :     _t05E6 = t00E5[_t05E5];
1856 :     _t05E7 = [_t05E4, _t05E6];
1857 :     pos00EC = +000F<$[2]> (_t05E2, _t05E7);
1858 :     bool _t05E8;
1859 :     _t05E9 = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1860 :     if _t05E9
1861 :     _t05E8 = inside007D<#2; %2; $[]> (v2100D8, T00A3);
1862 :     else
1863 :     _t05E8 = false;
1864 :     if _t05E8 {
1865 :     _t05EA = @0060<#2; %2; $[]> (F00AC, pos00EC);
1866 :     _t05EB = @0060<#2; %2; $[]> (T00A3, v2100D8);
1867 :     _t05EC = -0016<$[]> (_t05EA, _t05EB);
1868 :     _t05ED = @0060<#2; %2; $[]> (F00AC, pos00EC);
1869 :     _t05EE = @0060<#2; %2; $[]> (T00A3, v2100D8);
1870 :     _t05EF = -0016<$[]> (_t05ED, _t05EE);
1871 :     _t05F0 = *001C (_t05EC, _t05EF);
1872 :     score00E9 = +000F<$[]> (score00E9, _t05F0);
1873 :     }
1874 :     _t05F1 = •0079<$[2]; $[2]; $[]> (r000EA, v2200DA);
1875 :     _t05F2 = •0079<$[2]; $[2]; $[]> (r100EB, v2200DA);
1876 :     _t05F3 = [_t05F1, _t05F2];
1877 :     _t05F4 = 0;
1878 :     _t05F5 = t00E5[_t05F4];
1879 :     _t05F6 = 1;
1880 :     _t05F7 = t00E5[_t05F6];
1881 :     _t05F8 = [_t05F5, _t05F7];
1882 :     pos00EC = +000F<$[2]> (_t05F3, _t05F8);
1883 :     bool _t05F9;
1884 :     _t05FA = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1885 :     if _t05FA
1886 :     _t05F9 = inside007D<#2; %2; $[]> (v2200DA, T00A3);
1887 :     else
1888 :     _t05F9 = false;
1889 :     if _t05F9 {
1890 :     _t05FB = @0060<#2; %2; $[]> (F00AC, pos00EC);
1891 :     _t05FC = @0060<#2; %2; $[]> (T00A3, v2200DA);
1892 :     _t05FD = -0016<$[]> (_t05FB, _t05FC);
1893 :     _t05FE = @0060<#2; %2; $[]> (F00AC, pos00EC);
1894 :     _t05FF = @0060<#2; %2; $[]> (T00A3, v2200DA);
1895 :     _t0600 = -0016<$[]> (_t05FE, _t05FF);
1896 :     _t0601 = *001C (_t05FD, _t0600);
1897 :     score00E9 = +000F<$[]> (score00E9, _t0601);
1898 :     }
1899 :     _t0602 = •0079<$[2]; $[2]; $[]> (r000EA, v2300DC);
1900 :     _t0603 = •0079<$[2]; $[2]; $[]> (r100EB, v2300DC);
1901 :     _t0604 = [_t0602, _t0603];
1902 :     _t0605 = 0;
1903 :     _t0606 = t00E5[_t0605];
1904 :     _t0607 = 1;
1905 :     _t0608 = t00E5[_t0607];
1906 :     _t0609 = [_t0606, _t0608];
1907 :     pos00EC = +000F<$[2]> (_t0604, _t0609);
1908 :     bool _t060A;
1909 :     _t060B = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1910 :     if _t060B
1911 :     _t060A = inside007D<#2; %2; $[]> (v2300DC, T00A3);
1912 :     else
1913 :     _t060A = false;
1914 :     if _t060A {
1915 :     _t060C = @0060<#2; %2; $[]> (F00AC, pos00EC);
1916 :     _t060D = @0060<#2; %2; $[]> (T00A3, v2300DC);
1917 :     _t060E = -0016<$[]> (_t060C, _t060D);
1918 :     _t060F = @0060<#2; %2; $[]> (F00AC, pos00EC);
1919 :     _t0610 = @0060<#2; %2; $[]> (T00A3, v2300DC);
1920 :     _t0611 = -0016<$[]> (_t060F, _t0610);
1921 :     _t0612 = *001C (_t060E, _t0611);
1922 :     score00E9 = +000F<$[]> (score00E9, _t0612);
1923 :     }
1924 :     _t0613 = •0079<$[2]; $[2]; $[]> (r000EA, v2400DF);
1925 :     _t0614 = •0079<$[2]; $[2]; $[]> (r100EB, v2400DF);
1926 :     _t0615 = [_t0613, _t0614];
1927 :     _t0616 = 0;
1928 :     _t0617 = t00E5[_t0616];
1929 :     _t0618 = 1;
1930 :     _t0619 = t00E5[_t0618];
1931 :     _t061A = [_t0617, _t0619];
1932 :     pos00EC = +000F<$[2]> (_t0615, _t061A);
1933 :     bool _t061B;
1934 :     _t061C = inside007D<#2; %2; $[]> (pos00EC, F00AC);
1935 :     if _t061C
1936 :     _t061B = inside007D<#2; %2; $[]> (v2400DF, T00A3);
1937 :     else
1938 :     _t061B = false;
1939 :     if _t061B {
1940 :     _t061D = @0060<#2; %2; $[]> (F00AC, pos00EC);
1941 :     _t061E = @0060<#2; %2; $[]> (T00A3, v2400DF);
1942 :     _t061F = -0016<$[]> (_t061D, _t061E);
1943 :     _t0620 = @0060<#2; %2; $[]> (F00AC, pos00EC);
1944 :     _t0621 = @0060<#2; %2; $[]> (T00A3, v2400DF);
1945 :     _t0622 = -0016<$[]> (_t0620, _t0621);
1946 :     _t0623 = *001C (_t061F, _t0622);
1947 :     score00E9 = +000F<$[]> (score00E9, _t0623);
1948 :     }
1949 :     stabilize;
1950 :     }
1951 :     Stabilize
1952 :     { }
1953 :     }
1954 :     /* Program end */
1955 :     ##### HighIL after translation to HighIL ####
1956 :     ## properties
1957 :     none
1958 :     ## globals
1959 :     global field T0630#75
1960 :     global field F0638#75
1961 :     global tensor[2] v00063E#5
1962 :     global tensor[2] v010644#5
1963 :     global tensor[2] v02064A#5
1964 :     global tensor[2] v030652#5
1965 :     global tensor[2] v04065A#5
1966 :     global tensor[2] v050660#5
1967 :     global tensor[2] v060666#5
1968 :     global tensor[2] v07066C#5
1969 :     global tensor[2] v080674#5
1970 :     global tensor[2] v09067C#5
1971 :     global tensor[2] v100682#5
1972 :     global tensor[2] v110688#5
1973 :     global tensor[2] v12068E#5
1974 :     global tensor[2] v130696#5
1975 :     global tensor[2] v14069E#5
1976 :     global tensor[2] v1506A6#5
1977 :     global tensor[2] v1606AE#5
1978 :     global tensor[2] v1706B6#5
1979 :     global tensor[2] v1806C0#5
1980 :     global tensor[2] v1906CA#5
1981 :     global tensor[2] v2006D2#5
1982 :     global tensor[2] v2106DA#5
1983 :     global tensor[2] v2206E2#5
1984 :     global tensor[2] v2306EC#5
1985 :     global tensor[2] v2406F6#5
1986 :     global kernel _t062A#1
1987 :     global string _t062C#1
1988 :     global image2D _t062E#1
1989 :     global kernel _t0632#1
1990 :     global string _t0634#1
1991 :     global image2D _t0636#1
1992 :     global real _t063A#1
1993 :     global real _t063C#1
1994 :     global real _t0640#1
1995 :     global real _t0642#1
1996 :     global real _t0646#1
1997 :     global real _t0648#1
1998 :     global real _t064C#1
1999 :     global real _t064E#1
2000 :     global real _t0650#1
2001 :     global real _t0654#1
2002 :     global real _t0656#1
2003 :     global real _t0658#1
2004 :     global real _t065C#1
2005 :     global real _t065E#1
2006 :     global real _t0662#1
2007 :     global real _t0664#1
2008 :     global real _t0668#1
2009 :     global real _t066A#1
2010 :     global real _t066E#1
2011 :     global real _t0670#1
2012 :     global real _t0672#1
2013 :     global real _t0676#1
2014 :     global real _t0678#1
2015 :     global real _t067A#1
2016 :     global real _t067E#1
2017 :     global real _t0680#1
2018 :     global real _t0684#1
2019 :     global real _t0686#1
2020 :     global real _t068A#1
2021 :     global real _t068C#1
2022 :     global real _t0690#1
2023 :     global real _t0692#1
2024 :     global real _t0694#1
2025 :     global real _t0698#1
2026 :     global real _t069A#1
2027 :     global real _t069C#1
2028 :     global real _t06A0#1
2029 :     global real _t06A2#1
2030 :     global real _t06A4#1
2031 :     global real _t06A8#1
2032 :     global real _t06AA#1
2033 :     global real _t06AC#1
2034 :     global real _t06B0#1
2035 :     global real _t06B2#1
2036 :     global real _t06B4#1
2037 :     global real _t06B8#1
2038 :     global real _t06BA#1
2039 :     global real _t06BC#1
2040 :     global real _t06BE#1
2041 :     global real _t06C2#1
2042 :     global real _t06C4#1
2043 :     global real _t06C6#1
2044 :     global real _t06C8#1
2045 :     global real _t06CC#1
2046 :     global real _t06CE#1
2047 :     global real _t06D0#1
2048 :     global real _t06D4#1
2049 :     global real _t06D6#1
2050 :     global real _t06D8#1
2051 :     global real _t06DC#1
2052 :     global real _t06DE#1
2053 :     global real _t06E0#1
2054 :     global real _t06E4#1
2055 :     global real _t06E6#1
2056 :     global real _t06E8#1
2057 :     global real _t06EA#1
2058 :     global real _t06EE#1
2059 :     global real _t06F0#1
2060 :     global real _t06F2#1
2061 :     global real _t06F4#1
2062 :     ## global initialization
2063 :     ENTRY06F8: preds = []
2064 :     kernel _t062A#1 = Kernel<bspln3,0>;
2065 :     string _t062C#1 = "square-template.nrrd";
2066 :     image2D _t062E#1 = LoadImage<IMAGE2D<int>>(_t062C);
2067 :     field T0630#75 = Field<2>(_t062E,_t062A);
2068 :     kernel _t0632#1 = Kernel<bspln3,0>;
2069 :     string _t0634#1 = "square-rotate.nrrd";
2070 :     image2D _t0636#1 = LoadImage<IMAGE2D<float>>(_t0634);
2071 :     field F0638#75 = Field<2>(_t0636,_t0632);
2072 :     real _t063A#1 = 0.0;
2073 :     real _t063C#1 = 0.0;
2074 :     tensor[2] v00063E#5 = <tensor[2]>[_t063A,_t063C];
2075 :     real _t0640#1 = 0.0;
2076 :     real _t0642#1 = 0.25e0;
2077 :     tensor[2] v010644#5 = <tensor[2]>[_t0640,_t0642];
2078 :     real _t0646#1 = 0.0;
2079 :     real _t0648#1 = 0.5e0;
2080 :     tensor[2] v02064A#5 = <tensor[2]>[_t0646,_t0648];
2081 :     real _t064C#1 = 0.0;
2082 :     real _t064E#1 = 0.25e0;
2083 :     real _t0650#1 = Neg<real>(_t064E);
2084 :     tensor[2] v030652#5 = <tensor[2]>[_t064C,_t0650];
2085 :     real _t0654#1 = 0.0;
2086 :     real _t0656#1 = 0.5e0;
2087 :     real _t0658#1 = Neg<real>(_t0656);
2088 :     tensor[2] v04065A#5 = <tensor[2]>[_t0654,_t0658];
2089 :     real _t065C#1 = 0.25e0;
2090 :     real _t065E#1 = 0.0;
2091 :     tensor[2] v050660#5 = <tensor[2]>[_t065C,_t065E];
2092 :     real _t0662#1 = 0.25e0;
2093 :     real _t0664#1 = 0.25e0;
2094 :     tensor[2] v060666#5 = <tensor[2]>[_t0662,_t0664];
2095 :     real _t0668#1 = 0.25e0;
2096 :     real _t066A#1 = 0.5e0;
2097 :     tensor[2] v07066C#5 = <tensor[2]>[_t0668,_t066A];
2098 :     real _t066E#1 = 0.25e0;
2099 :     real _t0670#1 = 0.25e0;
2100 :     real _t0672#1 = Neg<real>(_t0670);
2101 :     tensor[2] v080674#5 = <tensor[2]>[_t066E,_t0672];
2102 :     real _t0676#1 = 0.25e0;
2103 :     real _t0678#1 = 0.5e0;
2104 :     real _t067A#1 = Neg<real>(_t0678);
2105 :     tensor[2] v09067C#5 = <tensor[2]>[_t0676,_t067A];
2106 :     real _t067E#1 = 0.5e0;
2107 :     real _t0680#1 = 0.0;
2108 :     tensor[2] v100682#5 = <tensor[2]>[_t067E,_t0680];
2109 :     real _t0684#1 = 0.5e0;
2110 :     real _t0686#1 = 0.25e0;
2111 :     tensor[2] v110688#5 = <tensor[2]>[_t0684,_t0686];
2112 :     real _t068A#1 = 0.5e0;
2113 :     real _t068C#1 = 0.5e0;
2114 :     tensor[2] v12068E#5 = <tensor[2]>[_t068A,_t068C];
2115 :     real _t0690#1 = 0.5e0;
2116 :     real _t0692#1 = 0.25e0;
2117 :     real _t0694#1 = Neg<real>(_t0692);
2118 :     tensor[2] v130696#5 = <tensor[2]>[_t0690,_t0694];
2119 :     real _t0698#1 = 0.5e0;
2120 :     real _t069A#1 = 0.5e0;
2121 :     real _t069C#1 = Neg<real>(_t069A);
2122 :     tensor[2] v14069E#5 = <tensor[2]>[_t0698,_t069C];
2123 :     real _t06A0#1 = 0.25e0;
2124 :     real _t06A2#1 = Neg<real>(_t06A0);
2125 :     real _t06A4#1 = 0.0;
2126 :     tensor[2] v1506A6#5 = <tensor[2]>[_t06A2,_t06A4];
2127 :     real _t06A8#1 = 0.25e0;
2128 :     real _t06AA#1 = Neg<real>(_t06A8);
2129 :     real _t06AC#1 = 0.25e0;
2130 :     tensor[2] v1606AE#5 = <tensor[2]>[_t06AA,_t06AC];
2131 :     real _t06B0#1 = 0.25e0;
2132 :     real _t06B2#1 = Neg<real>(_t06B0);
2133 :     real _t06B4#1 = 0.5e0;
2134 :     tensor[2] v1706B6#5 = <tensor[2]>[_t06B2,_t06B4];
2135 :     real _t06B8#1 = 0.25e0;
2136 :     real _t06BA#1 = Neg<real>(_t06B8);
2137 :     real _t06BC#1 = 0.25e0;
2138 :     real _t06BE#1 = Neg<real>(_t06BC);
2139 :     tensor[2] v1806C0#5 = <tensor[2]>[_t06BA,_t06BE];
2140 :     real _t06C2#1 = 0.25e0;
2141 :     real _t06C4#1 = Neg<real>(_t06C2);
2142 :     real _t06C6#1 = 0.5e0;
2143 :     real _t06C8#1 = Neg<real>(_t06C6);
2144 :     tensor[2] v1906CA#5 = <tensor[2]>[_t06C4,_t06C8];
2145 :     real _t06CC#1 = 0.5e0;
2146 :     real _t06CE#1 = Neg<real>(_t06CC);
2147 :     real _t06D0#1 = 0.0;
2148 :     tensor[2] v2006D2#5 = <tensor[2]>[_t06CE,_t06D0];
2149 :     real _t06D4#1 = 0.5e0;
2150 :     real _t06D6#1 = Neg<real>(_t06D4);
2151 :     real _t06D8#1 = 0.25e0;
2152 :     tensor[2] v2106DA#5 = <tensor[2]>[_t06D6,_t06D8];
2153 :     real _t06DC#1 = 0.5e0;
2154 :     real _t06DE#1 = Neg<real>(_t06DC);
2155 :     real _t06E0#1 = 0.5e0;
2156 :     tensor[2] v2206E2#5 = <tensor[2]>[_t06DE,_t06E0];
2157 :     real _t06E4#1 = 0.5e0;
2158 :     real _t06E6#1 = Neg<real>(_t06E4);
2159 :     real _t06E8#1 = 0.25e0;
2160 :     real _t06EA#1 = Neg<real>(_t06E8);
2161 :     tensor[2] v2306EC#5 = <tensor[2]>[_t06E6,_t06EA];
2162 :     real _t06EE#1 = 0.5e0;
2163 :     real _t06F0#1 = Neg<real>(_t06EE);
2164 :     real _t06F2#1 = 0.5e0;
2165 :     real _t06F4#1 = Neg<real>(_t06F2);
2166 :     tensor[2] v2406F6#5 = <tensor[2]>[_t06F0,_t06F4];
2167 :     return (T0630,F0638,v00063E,v010644,v02064A,v030652,v04065A,v050660,v060666,v07066C,v080674,v09067C,v100682,v110688,v12068E,v130696,v14069E,v1506A6,v1606AE,v1706B6,v1806C0,v1906CA,v2006D2,v2106DA,v2206E2,v2306EC,v2406F6,_t062A,_t062C,_t062E,_t0632,_t0634,_t0636,_t063A,_t063C,_t0640,_t0642,_t0646,_t0648,_t064C,_t064E,_t0650,_t0654,_t0656,_t0658,_t065C,_t065E,_t0662,_t0664,_t0668,_t066A,_t066E,_t0670,_t0672,_t0676,_t0678,_t067A,_t067E,_t0680,_t0684,_t0686,_t068A,_t068C,_t0690,_t0692,_t0694,_t0698,_t069A,_t069C,_t06A0,_t06A2,_t06A4,_t06A8,_t06AA,_t06AC,_t06B0,_t06B2,_t06B4,_t06B8,_t06BA,_t06BC,_t06BE,_t06C2,_t06C4,_t06C6,_t06C8,_t06CC,_t06CE,_t06D0,_t06D4,_t06D6,_t06D8,_t06DC,_t06DE,_t06E0,_t06E4,_t06E6,_t06E8,_t06EA,_t06EE,_t06F0,_t06F2,_t06F4)
2168 :     ## initially
2169 :     ARRAY
2170 :     ENTRY0706: preds = []
2171 :     int _t06FA#2 = 0;
2172 :     int _t06FC#2 = 60;
2173 :     int _t06FE#2 = 0;
2174 :     int _t0700#2 = 60;
2175 :     int _t0702#2 = 0;
2176 :     int _t0704#2 = 60;
2177 :     live vars = (_t0704,_t0702,_t0700,_t06FE,_t06FC,_t06FA)
2178 :     for int i0708#1 = _t06FA .. _t06FC
2179 :     for int j0709#1 = _t06FE .. _t0700
2180 :     for int k070A#1 = _t0702 .. _t0704
2181 :     ENTRY070B: preds = []
2182 :     live vars = ()
2183 :     new R(i0708,j0709,k070A);
2184 :     ## strands
2185 :     strand R (int i070D#1, int j070E#1, int k070F#1)
2186 :     state: tensor[3] self.t;output real self.score;tensor[2] self.r0;tensor[2] self.r1;tensor[2] self.pos;
2187 :     ENTRY0749: preds = []
2188 :     real _t0715#1 = IntToReal(i070D);
2189 :     real _t0717#1 = 0.60e2;
2190 :     real _t0719#1 = Div<real>(_t0715,_t0717);
2191 :     real _t071B#1 = 0.5e0;
2192 :     real _t071D#1 = Sub<real>(_t0719,_t071B);
2193 :     real _t071F#1 = IntToReal(j070E);
2194 :     real _t0721#1 = 0.60e2;
2195 :     real _t0723#1 = Div<real>(_t071F,_t0721);
2196 :     real _t0725#1 = 0.5e0;
2197 :     real _t0727#1 = Sub<real>(_t0723,_t0725);
2198 :     real _t0729#1 = IntToReal(k070F);
2199 :     real _t072B#1 = 0.60e2;
2200 :     real _t072D#1 = Div<real>(_t0729,_t072B);
2201 :     real _t072F#1 = 0.5e0;
2202 :     real _t0731#1 = Sub<real>(_t072D,_t072F);
2203 :     tensor[3] t0733#1 = <tensor[3]>[_t071D,_t0727,_t0731];
2204 :     real score0735#1 = 0.0;
2205 :     real _t0737#1 = 0.0;
2206 :     real _t0739#1 = 0.0;
2207 :     tensor[2] r0073B#1 = <tensor[2]>[_t0737,_t0739];
2208 :     real _t073D#1 = 0.0;
2209 :     real _t073F#1 = 0.0;
2210 :     tensor[2] r10741#1 = <tensor[2]>[_t073D,_t073F];
2211 :     real _t0743#1 = 0.0;
2212 :     real _t0745#1 = 0.0;
2213 :     tensor[2] pos0747#1 = <tensor[2]>[_t0743,_t0745];
2214 :     self.t = t0733;
2215 :     self.score = score0735;
2216 :     self.r0 = r0073B;
2217 :     self.r1 = r10741;
2218 :     self.pos = pos0747;
2219 :     strand_init ()
2220 :     method Update
2221 :     ENTRY0C55: preds = []
2222 :     tensor[3] t0750#61 = self.t;
2223 :     real score0751#2 = self.score;
2224 :     tensor[2] r00752#0 = self.r0;
2225 :     tensor[2] r10753#0 = self.r1;
2226 :     tensor[2] pos0754#0 = self.pos;
2227 :     real _t075A#1 = 0.1e1;
2228 :     real _t075C#1 = 0.2e1;
2229 :     int _t075E#1 = 2;
2230 :     real _t0760#1 = TensorSub<tensor[3]>(t0750,_t075E);
2231 :     real _t0762#1 = Mul<real>(_t075C,_t0760);
2232 :     int _t0764#1 = 2;
2233 :     real _t0766#1 = TensorSub<tensor[3]>(t0750,_t0764);
2234 :     real _t0768#1 = Mul<real>(_t0762,_t0766);
2235 :     real _t076A#1 = Sub<real>(_t075A,_t0768);
2236 :     real _t076C#1 = 0.2e1;
2237 :     real _t076E#1 = Neg<real>(_t076C);
2238 :     real _t0770#1 = 0.1e1;
2239 :     int _t0772#1 = 2;
2240 :     real _t0774#1 = TensorSub<tensor[3]>(t0750,_t0772);
2241 :     int _t0776#1 = 2;
2242 :     real _t0778#1 = TensorSub<tensor[3]>(t0750,_t0776);
2243 :     real _t077A#1 = Mul<real>(_t0774,_t0778);
2244 :     real _t077C#1 = Sub<real>(_t0770,_t077A);
2245 :     real _t077E#1 = sqrt(_t077C);
2246 :     real _t0780#1 = Mul<real>(_t076E,_t077E);
2247 :     int _t0782#1 = 2;
2248 :     real _t0784#1 = TensorSub<tensor[3]>(t0750,_t0782);
2249 :     real _t0786#1 = Mul<real>(_t0780,_t0784);
2250 :     tensor[2] r00788#26 = <tensor[2]>[_t076A,_t0786];
2251 :     real _t078A#1 = 0.2e1;
2252 :     real _t078C#1 = 0.1e1;
2253 :     int _t078E#1 = 2;
2254 :     real _t0790#1 = TensorSub<tensor[3]>(t0750,_t078E);
2255 :     int _t0792#1 = 2;
2256 :     real _t0794#1 = TensorSub<tensor[3]>(t0750,_t0792);
2257 :     real _t0796#1 = Mul<real>(_t0790,_t0794);
2258 :     real _t0798#1 = Sub<real>(_t078C,_t0796);
2259 :     real _t079A#1 = sqrt(_t0798);
2260 :     real _t079C#1 = Mul<real>(_t078A,_t079A);
2261 :     int _t079E#1 = 2;
2262 :     real _t07A0#1 = TensorSub<tensor[3]>(t0750,_t079E);
2263 :     real _t07A2#1 = Mul<real>(_t079C,_t07A0);
2264 :     real _t07A4#1 = 0.1e1;
2265 :     real _t07A6#1 = 0.2e1;
2266 :     int _t07A8#1 = 2;
2267 :     real _t07AA#1 = TensorSub<tensor[3]>(t0750,_t07A8);
2268 :     real _t07AC#1 = Mul<real>(_t07A6,_t07AA);
2269 :     int _t07AE#1 = 2;
2270 :     real _t07B0#1 = TensorSub<tensor[3]>(t0750,_t07AE);
2271 :     real _t07B2#1 = Mul<real>(_t07AC,_t07B0);
2272 :     real _t07B4#1 = Sub<real>(_t07A4,_t07B2);
2273 :     tensor[2] r107B6#26 = <tensor[2]>[_t07A2,_t07B4];
2274 :     real _t07B8#1 = Dot<tensor[2]>(r00788,v00063E);
2275 :     real _t07BA#1 = Dot<tensor[2]>(r107B6,v00063E);
2276 :     tensor[2] _t07BC#1 = <tensor[2]>[_t07B8,_t07BA];
2277 :     int _t07BE#1 = 0;
2278 :     real _t07C0#1 = TensorSub<tensor[3]>(t0750,_t07BE);
2279 :     int _t07C2#1 = 1;
2280 :     real _t07C4#1 = TensorSub<tensor[3]>(t0750,_t07C2);
2281 :     tensor[2] _t07C6#1 = <tensor[2]>[_t07C0,_t07C4];
2282 :     tensor[2] pos07C8#3 = Add<tensor[2]>(_t07BC,_t07C6);
2283 :     bool _t07CB#1 = Inside<2>(pos07C8,F0638);
2284 :     if _t07CB then goto ASSIGN07D0 else goto ASSIGN07D2
2285 :     ASSIGN07D0: preds = [COND07D3]
2286 :     bool _t07CE#1 = Inside<2>(v00063E,T0630);
2287 :     goto JOIN07CD
2288 :     JOIN07CD: preds = [ASSIGN07D0,ASSIGN07D2]
2289 :     bool _t07CF#1 = phi(_t07CE,_t07D1)
2290 :     if _t07CF then goto ASSIGN07D6 else goto JOIN07D4
2291 :     ASSIGN07D6: preds = [COND07E6]
2292 :     real _t07D5#1 = Probe<tensor[2],real>(F0638,pos07C8);
2293 :     real _t07D7#1 = Probe<tensor[2],real>(T0630,v00063E);
2294 :     real _t07D9#1 = Sub<real>(_t07D5,_t07D7);
2295 :     real _t07DB#1 = Probe<tensor[2],real>(F0638,pos07C8);
2296 :     real _t07DD#1 = Probe<tensor[2],real>(T0630,v00063E);
2297 :     real _t07DF#1 = Sub<real>(_t07DB,_t07DD);
2298 :     real _t07E1#1 = Mul<real>(_t07D9,_t07DF);
2299 :     real score07E3#1 = Add<real>(score0751,_t07E1);
2300 :     goto JOIN07D4
2301 :     JOIN07D4: preds = [ASSIGN07E5,COND07E6]
2302 :     real score07E4#2 = phi(score07E3,score0751)
2303 :     real _t07E7#1 = Dot<tensor[2]>(r00788,v010644);
2304 :     real _t07E9#1 = Dot<tensor[2]>(r107B6,v010644);
2305 :     tensor[2] _t07EB#1 = <tensor[2]>[_t07E7,_t07E9];
2306 :     int _t07ED#1 = 0;
2307 :     real _t07EF#1 = TensorSub<tensor[3]>(t0750,_t07ED);
2308 :     int _t07F1#1 = 1;
2309 :     real _t07F3#1 = TensorSub<tensor[3]>(t0750,_t07F1);
2310 :     tensor[2] _t07F5#1 = <tensor[2]>[_t07EF,_t07F3];
2311 :     tensor[2] pos07F7#3 = Add<tensor[2]>(_t07EB,_t07F5);
2312 :     bool _t07FA#1 = Inside<2>(pos07F7,F0638);
2313 :     if _t07FA then goto ASSIGN07FF else goto ASSIGN0801
2314 :     ASSIGN07FF: preds = [COND0802]
2315 :     bool _t07FD#1 = Inside<2>(v010644,T0630);
2316 :     goto JOIN07FC
2317 :     JOIN07FC: preds = [ASSIGN07FF,ASSIGN0801]
2318 :     bool _t07FE#1 = phi(_t07FD,_t0800)
2319 :     if _t07FE then goto ASSIGN0805 else goto JOIN0803
2320 :     ASSIGN0805: preds = [COND0815]
2321 :     real _t0804#1 = Probe<tensor[2],real>(F0638,pos07F7);
2322 :     real _t0806#1 = Probe<tensor[2],real>(T0630,v010644);
2323 :     real _t0808#1 = Sub<real>(_t0804,_t0806);
2324 :     real _t080A#1 = Probe<tensor[2],real>(F0638,pos07F7);
2325 :     real _t080C#1 = Probe<tensor[2],real>(T0630,v010644);
2326 :     real _t080E#1 = Sub<real>(_t080A,_t080C);
2327 :     real _t0810#1 = Mul<real>(_t0808,_t080E);
2328 :     real score0812#1 = Add<real>(score07E4,_t0810);
2329 :     goto JOIN0803
2330 :     JOIN0803: preds = [ASSIGN0814,COND0815]
2331 :     real score0813#2 = phi(score0812,score07E4)
2332 :     real _t0816#1 = Dot<tensor[2]>(r00788,v02064A);
2333 :     real _t0818#1 = Dot<tensor[2]>(r107B6,v02064A);
2334 :     tensor[2] _t081A#1 = <tensor[2]>[_t0816,_t0818];
2335 :     int _t081C#1 = 0;
2336 :     real _t081E#1 = TensorSub<tensor[3]>(t0750,_t081C);
2337 :     int _t0820#1 = 1;
2338 :     real _t0822#1 = TensorSub<tensor[3]>(t0750,_t0820);
2339 :     tensor[2] _t0824#1 = <tensor[2]>[_t081E,_t0822];
2340 :     tensor[2] pos0826#3 = Add<tensor[2]>(_t081A,_t0824);
2341 :     bool _t0829#1 = Inside<2>(pos0826,F0638);
2342 :     if _t0829 then goto ASSIGN082E else goto ASSIGN0830
2343 :     ASSIGN082E: preds = [COND0831]
2344 :     bool _t082C#1 = Inside<2>(v02064A,T0630);
2345 :     goto JOIN082B
2346 :     JOIN082B: preds = [ASSIGN082E,ASSIGN0830]
2347 :     bool _t082D#1 = phi(_t082C,_t082F)
2348 :     if _t082D then goto ASSIGN0834 else goto JOIN0832
2349 :     ASSIGN0834: preds = [COND0844]
2350 :     real _t0833#1 = Probe<tensor[2],real>(F0638,pos0826);
2351 :     real _t0835#1 = Probe<tensor[2],real>(T0630,v02064A);
2352 :     real _t0837#1 = Sub<real>(_t0833,_t0835);
2353 :     real _t0839#1 = Probe<tensor[2],real>(F0638,pos0826);
2354 :     real _t083B#1 = Probe<tensor[2],real>(T0630,v02064A);
2355 :     real _t083D#1 = Sub<real>(_t0839,_t083B);
2356 :     real _t083F#1 = Mul<real>(_t0837,_t083D);
2357 :     real score0841#1 = Add<real>(score0813,_t083F);
2358 :     goto JOIN0832
2359 :     JOIN0832: preds = [ASSIGN0843,COND0844]
2360 :     real score0842#2 = phi(score0841,score0813)
2361 :     real _t0845#1 = Dot<tensor[2]>(r00788,v030652);
2362 :     real _t0847#1 = Dot<tensor[2]>(r107B6,v030652);
2363 :     tensor[2] _t0849#1 = <tensor[2]>[_t0845,_t0847];
2364 :     int _t084B#1 = 0;
2365 :     real _t084D#1 = TensorSub<tensor[3]>(t0750,_t084B);
2366 :     int _t084F#1 = 1;
2367 :     real _t0851#1 = TensorSub<tensor[3]>(t0750,_t084F);
2368 :     tensor[2] _t0853#1 = <tensor[2]>[_t084D,_t0851];
2369 :     tensor[2] pos0855#3 = Add<tensor[2]>(_t0849,_t0853);
2370 :     bool _t0858#1 = Inside<2>(pos0855,F0638);
2371 :     if _t0858 then goto ASSIGN085D else goto ASSIGN085F
2372 :     ASSIGN085D: preds = [COND0860]
2373 :     bool _t085B#1 = Inside<2>(v030652,T0630);
2374 :     goto JOIN085A
2375 :     JOIN085A: preds = [ASSIGN085D,ASSIGN085F]
2376 :     bool _t085C#1 = phi(_t085B,_t085E)
2377 :     if _t085C then goto ASSIGN0863 else goto JOIN0861
2378 :     ASSIGN0863: preds = [COND0873]
2379 :     real _t0862#1 = Probe<tensor[2],real>(F0638,pos0855);
2380 :     real _t0864#1 = Probe<tensor[2],real>(T0630,v030652);
2381 :     real _t0866#1 = Sub<real>(_t0862,_t0864);
2382 :     real _t0868#1 = Probe<tensor[2],real>(F0638,pos0855);
2383 :     real _t086A#1 = Probe<tensor[2],real>(T0630,v030652);
2384 :     real _t086C#1 = Sub<real>(_t0868,_t086A);
2385 :     real _t086E#1 = Mul<real>(_t0866,_t086C);
2386 :     real score0870#1 = Add<real>(score0842,_t086E);
2387 :     goto JOIN0861
2388 :     JOIN0861: preds = [ASSIGN0872,COND0873]
2389 :     real score0871#2 = phi(score0870,score0842)
2390 :     real _t0874#1 = Dot<tensor[2]>(r00788,v04065A);
2391 :     real _t0876#1 = Dot<tensor[2]>(r107B6,v04065A);
2392 :     tensor[2] _t0878#1 = <tensor[2]>[_t0874,_t0876];
2393 :     int _t087A#1 = 0;
2394 :     real _t087C#1 = TensorSub<tensor[3]>(t0750,_t087A);
2395 :     int _t087E#1 = 1;
2396 :     real _t0880#1 = TensorSub<tensor[3]>(t0750,_t087E);
2397 :     tensor[2] _t0882#1 = <tensor[2]>[_t087C,_t0880];
2398 :     tensor[2] pos0884#3 = Add<tensor[2]>(_t0878,_t0882);
2399 :     bool _t0887#1 = Inside<2>(pos0884,F0638);
2400 :     if _t0887 then goto ASSIGN088C else goto ASSIGN088E
2401 :     ASSIGN088C: preds = [COND088F]
2402 :     bool _t088A#1 = Inside<2>(v04065A,T0630);
2403 :     goto JOIN0889
2404 :     JOIN0889: preds = [ASSIGN088C,ASSIGN088E]
2405 :     bool _t088B#1 = phi(_t088A,_t088D)
2406 :     if _t088B then goto ASSIGN0892 else goto JOIN0890
2407 :     ASSIGN0892: preds = [COND08A2]
2408 :     real _t0891#1 = Probe<tensor[2],real>(F0638,pos0884);
2409 :     real _t0893#1 = Probe<tensor[2],real>(T0630,v04065A);
2410 :     real _t0895#1 = Sub<real>(_t0891,_t0893);
2411 :     real _t0897#1 = Probe<tensor[2],real>(F0638,pos0884);
2412 :     real _t0899#1 = Probe<tensor[2],real>(T0630,v04065A);
2413 :     real _t089B#1 = Sub<real>(_t0897,_t0899);
2414 :     real _t089D#1 = Mul<real>(_t0895,_t089B);
2415 :     real score089F#1 = Add<real>(score0871,_t089D);
2416 :     goto JOIN0890
2417 :     JOIN0890: preds = [ASSIGN08A1,COND08A2]
2418 :     real score08A0#2 = phi(score089F,score0871)
2419 :     real _t08A3#1 = Dot<tensor[2]>(r00788,v050660);
2420 :     real _t08A5#1 = Dot<tensor[2]>(r107B6,v050660);
2421 :     tensor[2] _t08A7#1 = <tensor[2]>[_t08A3,_t08A5];
2422 :     int _t08A9#1 = 0;
2423 :     real _t08AB#1 = TensorSub<tensor[3]>(t0750,_t08A9);
2424 :     int _t08AD#1 = 1;
2425 :     real _t08AF#1 = TensorSub<tensor[3]>(t0750,_t08AD);
2426 :     tensor[2] _t08B1#1 = <tensor[2]>[_t08AB,_t08AF];
2427 :     tensor[2] pos08B3#3 = Add<tensor[2]>(_t08A7,_t08B1);
2428 :     bool _t08B6#1 = Inside<2>(pos08B3,F0638);
2429 :     if _t08B6 then goto ASSIGN08BB else goto ASSIGN08BD
2430 :     ASSIGN08BB: preds = [COND08BE]
2431 :     bool _t08B9#1 = Inside<2>(v050660,T0630);
2432 :     goto JOIN08B8
2433 :     JOIN08B8: preds = [ASSIGN08BB,ASSIGN08BD]
2434 :     bool _t08BA#1 = phi(_t08B9,_t08BC)
2435 :     if _t08BA then goto ASSIGN08C1 else goto JOIN08BF
2436 :     ASSIGN08C1: preds = [COND08D1]
2437 :     real _t08C0#1 = Probe<tensor[2],real>(F0638,pos08B3);
2438 :     real _t08C2#1 = Probe<tensor[2],real>(T0630,v050660);
2439 :     real _t08C4#1 = Sub<real>(_t08C0,_t08C2);
2440 :     real _t08C6#1 = Probe<tensor[2],real>(F0638,pos08B3);
2441 :     real _t08C8#1 = Probe<tensor[2],real>(T0630,v050660);
2442 :     real _t08CA#1 = Sub<real>(_t08C6,_t08C8);
2443 :     real _t08CC#1 = Mul<real>(_t08C4,_t08CA);
2444 :     real score08CE#1 = Add<real>(score08A0,_t08CC);
2445 :     goto JOIN08BF
2446 :     JOIN08BF: preds = [ASSIGN08D0,COND08D1]
2447 :     real score08CF#2 = phi(score08CE,score08A0)
2448 :     real _t08D2#1 = Dot<tensor[2]>(r00788,v060666);
2449 :     real _t08D4#1 = Dot<tensor[2]>(r107B6,v060666);
2450 :     tensor[2] _t08D6#1 = <tensor[2]>[_t08D2,_t08D4];
2451 :     int _t08D8#1 = 0;
2452 :     real _t08DA#1 = TensorSub<tensor[3]>(t0750,_t08D8);
2453 :     int _t08DC#1 = 1;
2454 :     real _t08DE#1 = TensorSub<tensor[3]>(t0750,_t08DC);
2455 :     tensor[2] _t08E0#1 = <tensor[2]>[_t08DA,_t08DE];
2456 :     tensor[2] pos08E2#3 = Add<tensor[2]>(_t08D6,_t08E0);
2457 :     bool _t08E5#1 = Inside<2>(pos08E2,F0638);
2458 :     if _t08E5 then goto ASSIGN08EA else goto ASSIGN08EC
2459 :     ASSIGN08EA: preds = [COND08ED]
2460 :     bool _t08E8#1 = Inside<2>(v060666,T0630);
2461 :     goto JOIN08E7
2462 :     JOIN08E7: preds = [ASSIGN08EA,ASSIGN08EC]
2463 :     bool _t08E9#1 = phi(_t08E8,_t08EB)
2464 :     if _t08E9 then goto ASSIGN08F0 else goto JOIN08EE
2465 :     ASSIGN08F0: preds = [COND0900]
2466 :     real _t08EF#1 = Probe<tensor[2],real>(F0638,pos08E2);
2467 :     real _t08F1#1 = Probe<tensor[2],real>(T0630,v060666);
2468 :     real _t08F3#1 = Sub<real>(_t08EF,_t08F1);
2469 :     real _t08F5#1 = Probe<tensor[2],real>(F0638,pos08E2);
2470 :     real _t08F7#1 = Probe<tensor[2],real>(T0630,v060666);
2471 :     real _t08F9#1 = Sub<real>(_t08F5,_t08F7);
2472 :     real _t08FB#1 = Mul<real>(_t08F3,_t08F9);
2473 :     real score08FD#1 = Add<real>(score08CF,_t08FB);
2474 :     goto JOIN08EE
2475 :     JOIN08EE: preds = [ASSIGN08FF,COND0900]
2476 :     real score08FE#2 = phi(score08FD,score08CF)
2477 :     real _t0901#1 = Dot<tensor[2]>(r00788,v07066C);
2478 :     real _t0903#1 = Dot<tensor[2]>(r107B6,v07066C);
2479 :     tensor[2] _t0905#1 = <tensor[2]>[_t0901,_t0903];
2480 :     int _t0907#1 = 0;
2481 :     real _t0909#1 = TensorSub<tensor[3]>(t0750,_t0907);
2482 :     int _t090B#1 = 1;
2483 :     real _t090D#1 = TensorSub<tensor[3]>(t0750,_t090B);
2484 :     tensor[2] _t090F#1 = <tensor[2]>[_t0909,_t090D];
2485 :     tensor[2] pos0911#3 = Add<tensor[2]>(_t0905,_t090F);
2486 :     bool _t0914#1 = Inside<2>(pos0911,F0638);
2487 :     if _t0914 then goto ASSIGN0919 else goto ASSIGN091B
2488 :     ASSIGN0919: preds = [COND091C]
2489 :     bool _t0917#1 = Inside<2>(v07066C,T0630);
2490 :     goto JOIN0916
2491 :     JOIN0916: preds = [ASSIGN0919,ASSIGN091B]
2492 :     bool _t0918#1 = phi(_t0917,_t091A)
2493 :     if _t0918 then goto ASSIGN091F else goto JOIN091D
2494 :     ASSIGN091F: preds = [COND092F]
2495 :     real _t091E#1 = Probe<tensor[2],real>(F0638,pos0911);
2496 :     real _t0920#1 = Probe<tensor[2],real>(T0630,v07066C);
2497 :     real _t0922#1 = Sub<real>(_t091E,_t0920);
2498 :     real _t0924#1 = Probe<tensor[2],real>(F0638,pos0911);
2499 :     real _t0926#1 = Probe<tensor[2],real>(T0630,v07066C);
2500 :     real _t0928#1 = Sub<real>(_t0924,_t0926);
2501 :     real _t092A#1 = Mul<real>(_t0922,_t0928);
2502 :     real score092C#1 = Add<real>(score08FE,_t092A);
2503 :     goto JOIN091D
2504 :     JOIN091D: preds = [ASSIGN092E,COND092F]
2505 :     real score092D#2 = phi(score092C,score08FE)
2506 :     real _t0930#1 = Dot<tensor[2]>(r00788,v080674);
2507 :     real _t0932#1 = Dot<tensor[2]>(r107B6,v080674);
2508 :     tensor[2] _t0934#1 = <tensor[2]>[_t0930,_t0932];
2509 :     int _t0936#1 = 0;
2510 :     real _t0938#1 = TensorSub<tensor[3]>(t0750,_t0936);
2511 :     int _t093A#1 = 1;
2512 :     real _t093C#1 = TensorSub<tensor[3]>(t0750,_t093A);
2513 :     tensor[2] _t093E#1 = <tensor[2]>[_t0938,_t093C];
2514 :     tensor[2] pos0940#3 = Add<tensor[2]>(_t0934,_t093E);
2515 :     bool _t0943#1 = Inside<2>(pos0940,F0638);
2516 :     if _t0943 then goto ASSIGN0948 else goto ASSIGN094A
2517 :     ASSIGN0948: preds = [COND094B]
2518 :     bool _t0946#1 = Inside<2>(v080674,T0630);
2519 :     goto JOIN0945
2520 :     JOIN0945: preds = [ASSIGN0948,ASSIGN094A]
2521 :     bool _t0947#1 = phi(_t0946,_t0949)
2522 :     if _t0947 then goto ASSIGN094E else goto JOIN094C
2523 :     ASSIGN094E: preds = [COND095E]
2524 :     real _t094D#1 = Probe<tensor[2],real>(F0638,pos0940);
2525 :     real _t094F#1 = Probe<tensor[2],real>(T0630,v080674);
2526 :     real _t0951#1 = Sub<real>(_t094D,_t094F);
2527 :     real _t0953#1 = Probe<tensor[2],real>(F0638,pos0940);
2528 :     real _t0955#1 = Probe<tensor[2],real>(T0630,v080674);
2529 :     real _t0957#1 = Sub<real>(_t0953,_t0955);
2530 :     real _t0959#1 = Mul<real>(_t0951,_t0957);
2531 :     real score095B#1 = Add<real>(score092D,_t0959);
2532 :     goto JOIN094C
2533 :     JOIN094C: preds = [ASSIGN095D,COND095E]
2534 :     real score095C#2 = phi(score095B,score092D)
2535 :     real _t095F#1 = Dot<tensor[2]>(r00788,v09067C);
2536 :     real _t0961#1 = Dot<tensor[2]>(r107B6,v09067C);
2537 :     tensor[2] _t0963#1 = <tensor[2]>[_t095F,_t0961];
2538 :     int _t0965#1 = 0;
2539 :     real _t0967#1 = TensorSub<tensor[3]>(t0750,_t0965);
2540 :     int _t0969#1 = 1;
2541 :     real _t096B#1 = TensorSub<tensor[3]>(t0750,_t0969);
2542 :     tensor[2] _t096D#1 = <tensor[2]>[_t0967,_t096B];
2543 :     tensor[2] pos096F#3 = Add<tensor[2]>(_t0963,_t096D);
2544 :     bool _t0972#1 = Inside<2>(pos096F,F0638);
2545 :     if _t0972 then goto ASSIGN0977 else goto ASSIGN0979
2546 :     ASSIGN0977: preds = [COND097A]
2547 :     bool _t0975#1 = Inside<2>(v09067C,T0630);
2548 :     goto JOIN0974
2549 :     JOIN0974: preds = [ASSIGN0977,ASSIGN0979]
2550 :     bool _t0976#1 = phi(_t0975,_t0978)
2551 :     if _t0976 then goto ASSIGN097D else goto JOIN097B
2552 :     ASSIGN097D: preds = [COND098D]
2553 :     real _t097C#1 = Probe<tensor[2],real>(F0638,pos096F);
2554 :     real _t097E#1 = Probe<tensor[2],real>(T0630,v09067C);
2555 :     real _t0980#1 = Sub<real>(_t097C,_t097E);
2556 :     real _t0982#1 = Probe<tensor[2],real>(F0638,pos096F);
2557 :     real _t0984#1 = Probe<tensor[2],real>(T0630,v09067C);
2558 :     real _t0986#1 = Sub<real>(_t0982,_t0984);
2559 :     real _t0988#1 = Mul<real>(_t0980,_t0986);
2560 :     real score098A#1 = Add<real>(score095C,_t0988);
2561 :     goto JOIN097B
2562 :     JOIN097B: preds = [ASSIGN098C,COND098D]
2563 :     real score098B#2 = phi(score098A,score095C)
2564 :     real _t098E#1 = Dot<tensor[2]>(r00788,v100682);
2565 :     real _t0990#1 = Dot<tensor[2]>(r107B6,v100682);
2566 :     tensor[2] _t0992#1 = <tensor[2]>[_t098E,_t0990];
2567 :     int _t0994#1 = 0;
2568 :     real _t0996#1 = TensorSub<tensor[3]>(t0750,_t0994);
2569 :     int _t0998#1 = 1;
2570 :     real _t099A#1 = TensorSub<tensor[3]>(t0750,_t0998);
2571 :     tensor[2] _t099C#1 = <tensor[2]>[_t0996,_t099A];
2572 :     tensor[2] pos099E#3 = Add<tensor[2]>(_t0992,_t099C);
2573 :     bool _t09A1#1 = Inside<2>(pos099E,F0638);
2574 :     if _t09A1 then goto ASSIGN09A6 else goto ASSIGN09A8
2575 :     ASSIGN09A6: preds = [COND09A9]
2576 :     bool _t09A4#1 = Inside<2>(v100682,T0630);
2577 :     goto JOIN09A3
2578 :     JOIN09A3: preds = [ASSIGN09A6,ASSIGN09A8]
2579 :     bool _t09A5#1 = phi(_t09A4,_t09A7)
2580 :     if _t09A5 then goto ASSIGN09AC else goto JOIN09AA
2581 :     ASSIGN09AC: preds = [COND09BC]
2582 :     real _t09AB#1 = Probe<tensor[2],real>(F0638,pos099E);
2583 :     real _t09AD#1 = Probe<tensor[2],real>(T0630,v100682);
2584 :     real _t09AF#1 = Sub<real>(_t09AB,_t09AD);
2585 :     real _t09B1#1 = Probe<tensor[2],real>(F0638,pos099E);
2586 :     real _t09B3#1 = Probe<tensor[2],real>(T0630,v100682);
2587 :     real _t09B5#1 = Sub<real>(_t09B1,_t09B3);
2588 :     real _t09B7#1 = Mul<real>(_t09AF,_t09B5);
2589 :     real score09B9#1 = Add<real>(score098B,_t09B7);
2590 :     goto JOIN09AA
2591 :     JOIN09AA: preds = [ASSIGN09BB,COND09BC]
2592 :     real score09BA#2 = phi(score09B9,score098B)
2593 :     real _t09BD#1 = Dot<tensor[2]>(r00788,v110688);
2594 :     real _t09BF#1 = Dot<tensor[2]>(r107B6,v110688);
2595 :     tensor[2] _t09C1#1 = <tensor[2]>[_t09BD,_t09BF];
2596 :     int _t09C3#1 = 0;
2597 :     real _t09C5#1 = TensorSub<tensor[3]>(t0750,_t09C3);
2598 :     int _t09C7#1 = 1;
2599 :     real _t09C9#1 = TensorSub<tensor[3]>(t0750,_t09C7);
2600 :     tensor[2] _t09CB#1 = <tensor[2]>[_t09C5,_t09C9];
2601 :     tensor[2] pos09CD#3 = Add<tensor[2]>(_t09C1,_t09CB);
2602 :     bool _t09D0#1 = Inside<2>(pos09CD,F0638);
2603 :     if _t09D0 then goto ASSIGN09D5 else goto ASSIGN09D7
2604 :     ASSIGN09D5: preds = [COND09D8]
2605 :     bool _t09D3#1 = Inside<2>(v110688,T0630);
2606 :     goto JOIN09D2
2607 :     JOIN09D2: preds = [ASSIGN09D5,ASSIGN09D7]
2608 :     bool _t09D4#1 = phi(_t09D3,_t09D6)
2609 :     if _t09D4 then goto ASSIGN09DB else goto JOIN09D9
2610 :     ASSIGN09DB: preds = [COND09EB]
2611 :     real _t09DA#1 = Probe<tensor[2],real>(F0638,pos09CD);
2612 :     real _t09DC#1 = Probe<tensor[2],real>(T0630,v110688);
2613 :     real _t09DE#1 = Sub<real>(_t09DA,_t09DC);
2614 :     real _t09E0#1 = Probe<tensor[2],real>(F0638,pos09CD);
2615 :     real _t09E2#1 = Probe<tensor[2],real>(T0630,v110688);
2616 :     real _t09E4#1 = Sub<real>(_t09E0,_t09E2);
2617 :     real _t09E6#1 = Mul<real>(_t09DE,_t09E4);
2618 :     real score09E8#1 = Add<real>(score09BA,_t09E6);
2619 :     goto JOIN09D9
2620 :     JOIN09D9: preds = [ASSIGN09EA,COND09EB]
2621 :     real score09E9#2 = phi(score09E8,score09BA)
2622 :     real _t09EC#1 = Dot<tensor[2]>(r00788,v12068E);
2623 :     real _t09EE#1 = Dot<tensor[2]>(r107B6,v12068E);
2624 :     tensor[2] _t09F0#1 = <tensor[2]>[_t09EC,_t09EE];
2625 :     int _t09F2#1 = 0;
2626 :     real _t09F4#1 = TensorSub<tensor[3]>(t0750,_t09F2);
2627 :     int _t09F6#1 = 1;
2628 :     real _t09F8#1 = TensorSub<tensor[3]>(t0750,_t09F6);
2629 :     tensor[2] _t09FA#1 = <tensor[2]>[_t09F4,_t09F8];
2630 :     tensor[2] pos09FC#3 = Add<tensor[2]>(_t09F0,_t09FA);
2631 :     bool _t09FF#1 = Inside<2>(pos09FC,F0638);
2632 :     if _t09FF then goto ASSIGN0A04 else goto ASSIGN0A06
2633 :     ASSIGN0A04: preds = [COND0A07]
2634 :     bool _t0A02#1 = Inside<2>(v12068E,T0630);
2635 :     goto JOIN0A01
2636 :     JOIN0A01: preds = [ASSIGN0A04,ASSIGN0A06]
2637 :     bool _t0A03#1 = phi(_t0A02,_t0A05)
2638 :     if _t0A03 then goto ASSIGN0A0A else goto JOIN0A08
2639 :     ASSIGN0A0A: preds = [COND0A1A]
2640 :     real _t0A09#1 = Probe<tensor[2],real>(F0638,pos09FC);
2641 :     real _t0A0B#1 = Probe<tensor[2],real>(T0630,v12068E);
2642 :     real _t0A0D#1 = Sub<real>(_t0A09,_t0A0B);
2643 :     real _t0A0F#1 = Probe<tensor[2],real>(F0638,pos09FC);
2644 :     real _t0A11#1 = Probe<tensor[2],real>(T0630,v12068E);
2645 :     real _t0A13#1 = Sub<real>(_t0A0F,_t0A11);
2646 :     real _t0A15#1 = Mul<real>(_t0A0D,_t0A13);
2647 :     real score0A17#1 = Add<real>(score09E9,_t0A15);
2648 :     goto JOIN0A08
2649 :     JOIN0A08: preds = [ASSIGN0A19,COND0A1A]
2650 :     real score0A18#2 = phi(score0A17,score09E9)
2651 :     real _t0A1B#1 = Dot<tensor[2]>(r00788,v130696);
2652 :     real _t0A1D#1 = Dot<tensor[2]>(r107B6,v130696);
2653 :     tensor[2] _t0A1F#1 = <tensor[2]>[_t0A1B,_t0A1D];
2654 :     int _t0A21#1 = 0;
2655 :     real _t0A23#1 = TensorSub<tensor[3]>(t0750,_t0A21);
2656 :     int _t0A25#1 = 1;
2657 :     real _t0A27#1 = TensorSub<tensor[3]>(t0750,_t0A25);
2658 :     tensor[2] _t0A29#1 = <tensor[2]>[_t0A23,_t0A27];
2659 :     tensor[2] pos0A2B#3 = Add<tensor[2]>(_t0A1F,_t0A29);
2660 :     bool _t0A2E#1 = Inside<2>(pos0A2B,F0638);
2661 :     if _t0A2E then goto ASSIGN0A33 else goto ASSIGN0A35
2662 :     ASSIGN0A33: preds = [COND0A36]
2663 :     bool _t0A31#1 = Inside<2>(v130696,T0630);
2664 :     goto JOIN0A30
2665 :     JOIN0A30: preds = [ASSIGN0A33,ASSIGN0A35]
2666 :     bool _t0A32#1 = phi(_t0A31,_t0A34)
2667 :     if _t0A32 then goto ASSIGN0A39 else goto JOIN0A37
2668 :     ASSIGN0A39: preds = [COND0A49]
2669 :     real _t0A38#1 = Probe<tensor[2],real>(F0638,pos0A2B);
2670 :     real _t0A3A#1 = Probe<tensor[2],real>(T0630,v130696);
2671 :     real _t0A3C#1 = Sub<real>(_t0A38,_t0A3A);
2672 :     real _t0A3E#1 = Probe<tensor[2],real>(F0638,pos0A2B);
2673 :     real _t0A40#1 = Probe<tensor[2],real>(T0630,v130696);
2674 :     real _t0A42#1 = Sub<real>(_t0A3E,_t0A40);
2675 :     real _t0A44#1 = Mul<real>(_t0A3C,_t0A42);
2676 :     real score0A46#1 = Add<real>(score0A18,_t0A44);
2677 :     goto JOIN0A37
2678 :     JOIN0A37: preds = [ASSIGN0A48,COND0A49]
2679 :     real score0A47#2 = phi(score0A46,score0A18)
2680 :     real _t0A4A#1 = Dot<tensor[2]>(r00788,v14069E);
2681 :     real _t0A4C#1 = Dot<tensor[2]>(r107B6,v14069E);
2682 :     tensor[2] _t0A4E#1 = <tensor[2]>[_t0A4A,_t0A4C];
2683 :     int _t0A50#1 = 0;
2684 :     real _t0A52#1 = TensorSub<tensor[3]>(t0750,_t0A50);
2685 :     int _t0A54#1 = 1;
2686 :     real _t0A56#1 = TensorSub<tensor[3]>(t0750,_t0A54);
2687 :     tensor[2] _t0A58#1 = <tensor[2]>[_t0A52,_t0A56];
2688 :     tensor[2] pos0A5A#3 = Add<tensor[2]>(_t0A4E,_t0A58);
2689 :     bool _t0A5D#1 = Inside<2>(pos0A5A,F0638);
2690 :     if _t0A5D then goto ASSIGN0A62 else goto ASSIGN0A64
2691 :     ASSIGN0A62: preds = [COND0A65]
2692 :     bool _t0A60#1 = Inside<2>(v14069E,T0630);
2693 :     goto JOIN0A5F
2694 :     JOIN0A5F: preds = [ASSIGN0A62,ASSIGN0A64]
2695 :     bool _t0A61#1 = phi(_t0A60,_t0A63)
2696 :     if _t0A61 then goto ASSIGN0A68 else goto JOIN0A66
2697 :     ASSIGN0A68: preds = [COND0A78]
2698 :     real _t0A67#1 = Probe<tensor[2],real>(F0638,pos0A5A);
2699 :     real _t0A69#1 = Probe<tensor[2],real>(T0630,v14069E);
2700 :     real _t0A6B#1 = Sub<real>(_t0A67,_t0A69);
2701 :     real _t0A6D#1 = Probe<tensor[2],real>(F0638,pos0A5A);
2702 :     real _t0A6F#1 = Probe<tensor[2],real>(T0630,v14069E);
2703 :     real _t0A71#1 = Sub<real>(_t0A6D,_t0A6F);
2704 :     real _t0A73#1 = Mul<real>(_t0A6B,_t0A71);
2705 :     real score0A75#1 = Add<real>(score0A47,_t0A73);
2706 :     goto JOIN0A66
2707 :     JOIN0A66: preds = [ASSIGN0A77,COND0A78]
2708 :     real score0A76#2 = phi(score0A75,score0A47)
2709 :     real _t0A79#1 = Dot<tensor[2]>(r00788,v1506A6);
2710 :     real _t0A7B#1 = Dot<tensor[2]>(r107B6,v1506A6);
2711 :     tensor[2] _t0A7D#1 = <tensor[2]>[_t0A79,_t0A7B];
2712 :     int _t0A7F#1 = 0;
2713 :     real _t0A81#1 = TensorSub<tensor[3]>(t0750,_t0A7F);
2714 :     int _t0A83#1 = 1;
2715 :     real _t0A85#1 = TensorSub<tensor[3]>(t0750,_t0A83);
2716 :     tensor[2] _t0A87#1 = <tensor[2]>[_t0A81,_t0A85];
2717 :     tensor[2] pos0A89#3 = Add<tensor[2]>(_t0A7D,_t0A87);
2718 :     bool _t0A8C#1 = Inside<2>(pos0A89,F0638);
2719 :     if _t0A8C then goto ASSIGN0A91 else goto ASSIGN0A93
2720 :     ASSIGN0A91: preds = [COND0A94]
2721 :     bool _t0A8F#1 = Inside<2>(v1506A6,T0630);
2722 :     goto JOIN0A8E
2723 :     JOIN0A8E: preds = [ASSIGN0A91,ASSIGN0A93]
2724 :     bool _t0A90#1 = phi(_t0A8F,_t0A92)
2725 :     if _t0A90 then goto ASSIGN0A97 else goto JOIN0A95
2726 :     ASSIGN0A97: preds = [COND0AA7]
2727 :     real _t0A96#1 = Probe<tensor[2],real>(F0638,pos0A89);
2728 :     real _t0A98#1 = Probe<tensor[2],real>(T0630,v1506A6);
2729 :     real _t0A9A#1 = Sub<real>(_t0A96,_t0A98);
2730 :     real _t0A9C#1 = Probe<tensor[2],real>(F0638,pos0A89);
2731 :     real _t0A9E#1 = Probe<tensor[2],real>(T0630,v1506A6);
2732 :     real _t0AA0#1 = Sub<real>(_t0A9C,_t0A9E);
2733 :     real _t0AA2#1 = Mul<real>(_t0A9A,_t0AA0);
2734 :     real score0AA4#1 = Add<real>(score0A76,_t0AA2);
2735 :     goto JOIN0A95
2736 :     JOIN0A95: preds = [ASSIGN0AA6,COND0AA7]
2737 :     real score0AA5#2 = phi(score0AA4,score0A76)
2738 :     real _t0AA8#1 = Dot<tensor[2]>(r00788,v1606AE);
2739 :     real _t0AAA#1 = Dot<tensor[2]>(r107B6,v1606AE);
2740 :     tensor[2] _t0AAC#1 = <tensor[2]>[_t0AA8,_t0AAA];
2741 :     int _t0AAE#1 = 0;
2742 :     real _t0AB0#1 = TensorSub<tensor[3]>(t0750,_t0AAE);
2743 :     int _t0AB2#1 = 1;
2744 :     real _t0AB4#1 = TensorSub<tensor[3]>(t0750,_t0AB2);
2745 :     tensor[2] _t0AB6#1 = <tensor[2]>[_t0AB0,_t0AB4];
2746 :     tensor[2] pos0AB8#3 = Add<tensor[2]>(_t0AAC,_t0AB6);
2747 :     bool _t0ABB#1 = Inside<2>(pos0AB8,F0638);
2748 :     if _t0ABB then goto ASSIGN0AC0 else goto ASSIGN0AC2
2749 :     ASSIGN0AC0: preds = [COND0AC3]
2750 :     bool _t0ABE#1 = Inside<2>(v1606AE,T0630);
2751 :     goto JOIN0ABD
2752 :     JOIN0ABD: preds = [ASSIGN0AC0,ASSIGN0AC2]
2753 :     bool _t0ABF#1 = phi(_t0ABE,_t0AC1)
2754 :     if _t0ABF then goto ASSIGN0AC6 else goto JOIN0AC4
2755 :     ASSIGN0AC6: preds = [COND0AD6]
2756 :     real _t0AC5#1 = Probe<tensor[2],real>(F0638,pos0AB8);
2757 :     real _t0AC7#1 = Probe<tensor[2],real>(T0630,v1606AE);
2758 :     real _t0AC9#1 = Sub<real>(_t0AC5,_t0AC7);
2759 :     real _t0ACB#1 = Probe<tensor[2],real>(F0638,pos0AB8);
2760 :     real _t0ACD#1 = Probe<tensor[2],real>(T0630,v1606AE);
2761 :     real _t0ACF#1 = Sub<real>(_t0ACB,_t0ACD);
2762 :     real _t0AD1#1 = Mul<real>(_t0AC9,_t0ACF);
2763 :     real score0AD3#1 = Add<real>(score0AA5,_t0AD1);
2764 :     goto JOIN0AC4
2765 :     JOIN0AC4: preds = [ASSIGN0AD5,COND0AD6]
2766 :     real score0AD4#2 = phi(score0AD3,score0AA5)
2767 :     real _t0AD7#1 = Dot<tensor[2]>(r00788,v1706B6);
2768 :     real _t0AD9#1 = Dot<tensor[2]>(r107B6,v1706B6);
2769 :     tensor[2] _t0ADB#1 = <tensor[2]>[_t0AD7,_t0AD9];
2770 :     int _t0ADD#1 = 0;
2771 :     real _t0ADF#1 = TensorSub<tensor[3]>(t0750,_t0ADD);
2772 :     int _t0AE1#1 = 1;
2773 :     real _t0AE3#1 = TensorSub<tensor[3]>(t0750,_t0AE1);
2774 :     tensor[2] _t0AE5#1 = <tensor[2]>[_t0ADF,_t0AE3];
2775 :     tensor[2] pos0AE7#3 = Add<tensor[2]>(_t0ADB,_t0AE5);
2776 :     bool _t0AEA#1 = Inside<2>(pos0AE7,F0638);
2777 :     if _t0AEA then goto ASSIGN0AEF else goto ASSIGN0AF1
2778 :     ASSIGN0AEF: preds = [COND0AF2]
2779 :     bool _t0AED#1 = Inside<2>(v1706B6,T0630);
2780 :     goto JOIN0AEC
2781 :     JOIN0AEC: preds = [ASSIGN0AEF,ASSIGN0AF1]
2782 :     bool _t0AEE#1 = phi(_t0AED,_t0AF0)
2783 :     if _t0AEE then goto ASSIGN0AF5 else goto JOIN0AF3
2784 :     ASSIGN0AF5: preds = [COND0B05]
2785 :     real _t0AF4#1 = Probe<tensor[2],real>(F0638,pos0AE7);
2786 :     real _t0AF6#1 = Probe<tensor[2],real>(T0630,v1706B6);
2787 :     real _t0AF8#1 = Sub<real>(_t0AF4,_t0AF6);
2788 :     real _t0AFA#1 = Probe<tensor[2],real>(F0638,pos0AE7);
2789 :     real _t0AFC#1 = Probe<tensor[2],real>(T0630,v1706B6);
2790 :     real _t0AFE#1 = Sub<real>(_t0AFA,_t0AFC);
2791 :     real _t0B00#1 = Mul<real>(_t0AF8,_t0AFE);
2792 :     real score0B02#1 = Add<real>(score0AD4,_t0B00);
2793 :     goto JOIN0AF3
2794 :     JOIN0AF3: preds = [ASSIGN0B04,COND0B05]
2795 :     real score0B03#2 = phi(score0B02,score0AD4)
2796 :     real _t0B06#1 = Dot<tensor[2]>(r00788,v1806C0);
2797 :     real _t0B08#1 = Dot<tensor[2]>(r107B6,v1806C0);
2798 :     tensor[2] _t0B0A#1 = <tensor[2]>[_t0B06,_t0B08];
2799 :     int _t0B0C#1 = 0;
2800 :     real _t0B0E#1 = TensorSub<tensor[3]>(t0750,_t0B0C);
2801 :     int _t0B10#1 = 1;
2802 :     real _t0B12#1 = TensorSub<tensor[3]>(t0750,_t0B10);
2803 :     tensor[2] _t0B14#1 = <tensor[2]>[_t0B0E,_t0B12];
2804 :     tensor[2] pos0B16#3 = Add<tensor[2]>(_t0B0A,_t0B14);
2805 :     bool _t0B19#1 = Inside<2>(pos0B16,F0638);
2806 :     if _t0B19 then goto ASSIGN0B1E else goto ASSIGN0B20
2807 :     ASSIGN0B1E: preds = [COND0B21]
2808 :     bool _t0B1C#1 = Inside<2>(v1806C0,T0630);
2809 :     goto JOIN0B1B
2810 :     JOIN0B1B: preds = [ASSIGN0B1E,ASSIGN0B20]
2811 :     bool _t0B1D#1 = phi(_t0B1C,_t0B1F)
2812 :     if _t0B1D then goto ASSIGN0B24 else goto JOIN0B22
2813 :     ASSIGN0B24: preds = [COND0B34]
2814 :     real _t0B23#1 = Probe<tensor[2],real>(F0638,pos0B16);
2815 :     real _t0B25#1 = Probe<tensor[2],real>(T0630,v1806C0);
2816 :     real _t0B27#1 = Sub<real>(_t0B23,_t0B25);
2817 :     real _t0B29#1 = Probe<tensor[2],real>(F0638,pos0B16);
2818 :     real _t0B2B#1 = Probe<tensor[2],real>(T0630,v1806C0);
2819 :     real _t0B2D#1 = Sub<real>(_t0B29,_t0B2B);
2820 :     real _t0B2F#1 = Mul<real>(_t0B27,_t0B2D);
2821 :     real score0B31#1 = Add<real>(score0B03,_t0B2F);
2822 :     goto JOIN0B22
2823 :     JOIN0B22: preds = [ASSIGN0B33,COND0B34]
2824 :     real score0B32#2 = phi(score0B31,score0B03)
2825 :     real _t0B35#1 = Dot<tensor[2]>(r00788,v1906CA);
2826 :     real _t0B37#1 = Dot<tensor[2]>(r107B6,v1906CA);
2827 :     tensor[2] _t0B39#1 = <tensor[2]>[_t0B35,_t0B37];
2828 :     int _t0B3B#1 = 0;
2829 :     real _t0B3D#1 = TensorSub<tensor[3]>(t0750,_t0B3B);
2830 :     int _t0B3F#1 = 1;
2831 :     real _t0B41#1 = TensorSub<tensor[3]>(t0750,_t0B3F);
2832 :     tensor[2] _t0B43#1 = <tensor[2]>[_t0B3D,_t0B41];
2833 :     tensor[2] pos0B45#3 = Add<tensor[2]>(_t0B39,_t0B43);
2834 :     bool _t0B48#1 = Inside<2>(pos0B45,F0638);
2835 :     if _t0B48 then goto ASSIGN0B4D else goto ASSIGN0B4F
2836 :     ASSIGN0B4D: preds = [COND0B50]
2837 :     bool _t0B4B#1 = Inside<2>(v1906CA,T0630);
2838 :     goto JOIN0B4A
2839 :     JOIN0B4A: preds = [ASSIGN0B4D,ASSIGN0B4F]
2840 :     bool _t0B4C#1 = phi(_t0B4B,_t0B4E)
2841 :     if _t0B4C then goto ASSIGN0B53 else goto JOIN0B51
2842 :     ASSIGN0B53: preds = [COND0B63]
2843 :     real _t0B52#1 = Probe<tensor[2],real>(F0638,pos0B45);
2844 :     real _t0B54#1 = Probe<tensor[2],real>(T0630,v1906CA);
2845 :     real _t0B56#1 = Sub<real>(_t0B52,_t0B54);
2846 :     real _t0B58#1 = Probe<tensor[2],real>(F0638,pos0B45);
2847 :     real _t0B5A#1 = Probe<tensor[2],real>(T0630,v1906CA);
2848 :     real _t0B5C#1 = Sub<real>(_t0B58,_t0B5A);
2849 :     real _t0B5E#1 = Mul<real>(_t0B56,_t0B5C);
2850 :     real score0B60#1 = Add<real>(score0B32,_t0B5E);
2851 :     goto JOIN0B51
2852 :     JOIN0B51: preds = [ASSIGN0B62,COND0B63]
2853 :     real score0B61#2 = phi(score0B60,score0B32)
2854 :     real _t0B64#1 = Dot<tensor[2]>(r00788,v2006D2);
2855 :     real _t0B66#1 = Dot<tensor[2]>(r107B6,v2006D2);
2856 :     tensor[2] _t0B68#1 = <tensor[2]>[_t0B64,_t0B66];
2857 :     int _t0B6A#1 = 0;
2858 :     real _t0B6C#1 = TensorSub<tensor[3]>(t0750,_t0B6A);
2859 :     int _t0B6E#1 = 1;
2860 :     real _t0B70#1 = TensorSub<tensor[3]>(t0750,_t0B6E);
2861 :     tensor[2] _t0B72#1 = <tensor[2]>[_t0B6C,_t0B70];
2862 :     tensor[2] pos0B74#3 = Add<tensor[2]>(_t0B68,_t0B72);
2863 :     bool _t0B77#1 = Inside<2>(pos0B74,F0638);
2864 :     if _t0B77 then goto ASSIGN0B7C else goto ASSIGN0B7E
2865 :     ASSIGN0B7C: preds = [COND0B7F]
2866 :     bool _t0B7A#1 = Inside<2>(v2006D2,T0630);
2867 :     goto JOIN0B79
2868 :     JOIN0B79: preds = [ASSIGN0B7C,ASSIGN0B7E]
2869 :     bool _t0B7B#1 = phi(_t0B7A,_t0B7D)
2870 :     if _t0B7B then goto ASSIGN0B82 else goto JOIN0B80
2871 :     ASSIGN0B82: preds = [COND0B92]
2872 :     real _t0B81#1 = Probe<tensor[2],real>(F0638,pos0B74);
2873 :     real _t0B83#1 = Probe<tensor[2],real>(T0630,v2006D2);
2874 :     real _t0B85#1 = Sub<real>(_t0B81,_t0B83);
2875 :     real _t0B87#1 = Probe<tensor[2],real>(F0638,pos0B74);
2876 :     real _t0B89#1 = Probe<tensor[2],real>(T0630,v2006D2);
2877 :     real _t0B8B#1 = Sub<real>(_t0B87,_t0B89);
2878 :     real _t0B8D#1 = Mul<real>(_t0B85,_t0B8B);
2879 :     real score0B8F#1 = Add<real>(score0B61,_t0B8D);
2880 :     goto JOIN0B80
2881 :     JOIN0B80: preds = [ASSIGN0B91,COND0B92]
2882 :     real score0B90#2 = phi(score0B8F,score0B61)
2883 :     real _t0B93#1 = Dot<tensor[2]>(r00788,v2106DA);
2884 :     real _t0B95#1 = Dot<tensor[2]>(r107B6,v2106DA);
2885 :     tensor[2] _t0B97#1 = <tensor[2]>[_t0B93,_t0B95];
2886 :     int _t0B99#1 = 0;
2887 :     real _t0B9B#1 = TensorSub<tensor[3]>(t0750,_t0B99);
2888 :     int _t0B9D#1 = 1;
2889 :     real _t0B9F#1 = TensorSub<tensor[3]>(t0750,_t0B9D);
2890 :     tensor[2] _t0BA1#1 = <tensor[2]>[_t0B9B,_t0B9F];
2891 :     tensor[2] pos0BA3#3 = Add<tensor[2]>(_t0B97,_t0BA1);
2892 :     bool _t0BA6#1 = Inside<2>(pos0BA3,F0638);
2893 :     if _t0BA6 then goto ASSIGN0BAB else goto ASSIGN0BAD
2894 :     ASSIGN0BAB: preds = [COND0BAE]
2895 :     bool _t0BA9#1 = Inside<2>(v2106DA,T0630);
2896 :     goto JOIN0BA8
2897 :     JOIN0BA8: preds = [ASSIGN0BAB,ASSIGN0BAD]
2898 :     bool _t0BAA#1 = phi(_t0BA9,_t0BAC)
2899 :     if _t0BAA then goto ASSIGN0BB1 else goto JOIN0BAF
2900 :     ASSIGN0BB1: preds = [COND0BC1]
2901 :     real _t0BB0#1 = Probe<tensor[2],real>(F0638,pos0BA3);
2902 :     real _t0BB2#1 = Probe<tensor[2],real>(T0630,v2106DA);
2903 :     real _t0BB4#1 = Sub<real>(_t0BB0,_t0BB2);
2904 :     real _t0BB6#1 = Probe<tensor[2],real>(F0638,pos0BA3);
2905 :     real _t0BB8#1 = Probe<tensor[2],real>(T0630,v2106DA);
2906 :     real _t0BBA#1 = Sub<real>(_t0BB6,_t0BB8);
2907 :     real _t0BBC#1 = Mul<real>(_t0BB4,_t0BBA);
2908 :     real score0BBE#1 = Add<real>(score0B90,_t0BBC);
2909 :     goto JOIN0BAF
2910 :     JOIN0BAF: preds = [ASSIGN0BC0,COND0BC1]
2911 :     real score0BBF#2 = phi(score0BBE,score0B90)
2912 :     real _t0BC2#1 = Dot<tensor[2]>(r00788,v2206E2);
2913 :     real _t0BC4#1 = Dot<tensor[2]>(r107B6,v2206E2);
2914 :     tensor[2] _t0BC6#1 = <tensor[2]>[_t0BC2,_t0BC4];
2915 :     int _t0BC8#1 = 0;
2916 :     real _t0BCA#1 = TensorSub<tensor[3]>(t0750,_t0BC8);
2917 :     int _t0BCC#1 = 1;
2918 :     real _t0BCE#1 = TensorSub<tensor[3]>(t0750,_t0BCC);
2919 :     tensor[2] _t0BD0#1 = <tensor[2]>[_t0BCA,_t0BCE];
2920 :     tensor[2] pos0BD2#3 = Add<tensor[2]>(_t0BC6,_t0BD0);
2921 :     bool _t0BD5#1 = Inside<2>(pos0BD2,F0638);
2922 :     if _t0BD5 then goto ASSIGN0BDA else goto ASSIGN0BDC
2923 :     ASSIGN0BDA: preds = [COND0BDD]
2924 :     bool _t0BD8#1 = Inside<2>(v2206E2,T0630);
2925 :     goto JOIN0BD7
2926 :     JOIN0BD7: preds = [ASSIGN0BDA,ASSIGN0BDC]
2927 :     bool _t0BD9#1 = phi(_t0BD8,_t0BDB)
2928 :     if _t0BD9 then goto ASSIGN0BE0 else goto JOIN0BDE
2929 :     ASSIGN0BE0: preds = [COND0BF0]
2930 :     real _t0BDF#1 = Probe<tensor[2],real>(F0638,pos0BD2);
2931 :     real _t0BE1#1 = Probe<tensor[2],real>(T0630,v2206E2);
2932 :     real _t0BE3#1 = Sub<real>(_t0BDF,_t0BE1);
2933 :     real _t0BE5#1 = Probe<tensor[2],real>(F0638,pos0BD2);
2934 :     real _t0BE7#1 = Probe<tensor[2],real>(T0630,v2206E2);
2935 :     real _t0BE9#1 = Sub<real>(_t0BE5,_t0BE7);
2936 :     real _t0BEB#1 = Mul<real>(_t0BE3,_t0BE9);
2937 :     real score0BED#1 = Add<real>(score0BBF,_t0BEB);
2938 :     goto JOIN0BDE
2939 :     JOIN0BDE: preds = [ASSIGN0BEF,COND0BF0]
2940 :     real score0BEE#2 = phi(score0BED,score0BBF)
2941 :     real _t0BF1#1 = Dot<tensor[2]>(r00788,v2306EC);
2942 :     real _t0BF3#1 = Dot<tensor[2]>(r107B6,v2306EC);
2943 :     tensor[2] _t0BF5#1 = <tensor[2]>[_t0BF1,_t0BF3];
2944 :     int _t0BF7#1 = 0;
2945 :     real _t0BF9#1 = TensorSub<tensor[3]>(t0750,_t0BF7);
2946 :     int _t0BFB#1 = 1;
2947 :     real _t0BFD#1 = TensorSub<tensor[3]>(t0750,_t0BFB);
2948 :     tensor[2] _t0BFF#1 = <tensor[2]>[_t0BF9,_t0BFD];
2949 :     tensor[2] pos0C01#3 = Add<tensor[2]>(_t0BF5,_t0BFF);
2950 :     bool _t0C04#1 = Inside<2>(pos0C01,F0638);
2951 :     if _t0C04 then goto ASSIGN0C09 else goto ASSIGN0C0B
2952 :     ASSIGN0C09: preds = [COND0C0C]
2953 :     bool _t0C07#1 = Inside<2>(v2306EC,T0630);
2954 :     goto JOIN0C06
2955 :     JOIN0C06: preds = [ASSIGN0C09,ASSIGN0C0B]
2956 :     bool _t0C08#1 = phi(_t0C07,_t0C0A)
2957 :     if _t0C08 then goto ASSIGN0C0F else goto JOIN0C0D
2958 :     ASSIGN0C0F: preds = [COND0C1F]
2959 :     real _t0C0E#1 = Probe<tensor[2],real>(F0638,pos0C01);
2960 :     real _t0C10#1 = Probe<tensor[2],real>(T0630,v2306EC);
2961 :     real _t0C12#1 = Sub<real>(_t0C0E,_t0C10);
2962 :     real _t0C14#1 = Probe<tensor[2],real>(F0638,pos0C01);
2963 :     real _t0C16#1 = Probe<tensor[2],real>(T0630,v2306EC);
2964 :     real _t0C18#1 = Sub<real>(_t0C14,_t0C16);
2965 :     real _t0C1A#1 = Mul<real>(_t0C12,_t0C18);
2966 :     real score0C1C#1 = Add<real>(score0BEE,_t0C1A);
2967 :     goto JOIN0C0D
2968 :     JOIN0C0D: preds = [ASSIGN0C1E,COND0C1F]
2969 :     real score0C1D#2 = phi(score0C1C,score0BEE)
2970 :     real _t0C20#1 = Dot<tensor[2]>(r00788,v2406F6);
2971 :     real _t0C22#1 = Dot<tensor[2]>(r107B6,v2406F6);
2972 :     tensor[2] _t0C24#1 = <tensor[2]>[_t0C20,_t0C22];
2973 :     int _t0C26#1 = 0;
2974 :     real _t0C28#1 = TensorSub<tensor[3]>(t0750,_t0C26);
2975 :     int _t0C2A#1 = 1;
2976 :     real _t0C2C#1 = TensorSub<tensor[3]>(t0750,_t0C2A);
2977 :     tensor[2] _t0C2E#1 = <tensor[2]>[_t0C28,_t0C2C];
2978 :     tensor[2] pos0C30#4 = Add<tensor[2]>(_t0C24,_t0C2E);
2979 :     bool _t0C33#1 = Inside<2>(pos0C30,F0638);
2980 :     if _t0C33 then goto ASSIGN0C38 else goto ASSIGN0C3A
2981 :     ASSIGN0C38: preds = [COND0C3B]
2982 :     bool _t0C36#1 = Inside<2>(v2406F6,T0630);
2983 :     goto JOIN0C35
2984 :     JOIN0C35: preds = [ASSIGN0C38,ASSIGN0C3A]
2985 :     bool _t0C37#1 = phi(_t0C36,_t0C39)
2986 :     if _t0C37 then goto ASSIGN0C3E else goto JOIN0C3C
2987 :     ASSIGN0C3E: preds = [COND0C4E]
2988 :     real _t0C3D#1 = Probe<tensor[2],real>(F0638,pos0C30);
2989 :     real _t0C3F#1 = Probe<tensor[2],real>(T0630,v2406F6);
2990 :     real _t0C41#1 = Sub<real>(_t0C3D,_t0C3F);
2991 :     real _t0C43#1 = Probe<tensor[2],real>(F0638,pos0C30);
2992 :     real _t0C45#1 = Probe<tensor[2],real>(T0630,v2406F6);
2993 :     real _t0C47#1 = Sub<real>(_t0C43,_t0C45);
2994 :     real _t0C49#1 = Mul<real>(_t0C41,_t0C47);
2995 :     real score0C4B#1 = Add<real>(score0C1D,_t0C49);
2996 :     goto JOIN0C3C
2997 :     JOIN0C3C: preds = [ASSIGN0C4D,COND0C4E]
2998 :     real score0C4C#1 = phi(score0C4B,score0C1D)
2999 :     self.t = t0750;
3000 :     self.score = score0C4C;
3001 :     self.r0 = r00788;
3002 :     self.r1 = r107B6;
3003 :     self.pos = pos0C30;
3004 :     stabilize ()
3005 :     ASSIGN0C3A: preds = [COND0C3B]
3006 :     bool _t0C39#1 = false;
3007 :     goto JOIN0C35
3008 :     ASSIGN0C0B: preds = [COND0C0C]
3009 :     bool _t0C0A#1 = false;
3010 :     goto JOIN0C06
3011 :     ASSIGN0BDC: preds = [COND0BDD]
3012 :     bool _t0BDB#1 = false;
3013 :     goto JOIN0BD7
3014 :     ASSIGN0BAD: preds = [COND0BAE]
3015 :     bool _t0BAC#1 = false;
3016 :     goto JOIN0BA8
3017 :     ASSIGN0B7E: preds = [COND0B7F]
3018 :     bool _t0B7D#1 = false;
3019 :     goto JOIN0B79
3020 :     ASSIGN0B4F: preds = [COND0B50]
3021 :     bool _t0B4E#1 = false;
3022 :     goto JOIN0B4A
3023 :     ASSIGN0B20: preds = [COND0B21]
3024 :     bool _t0B1F#1 = false;
3025 :     goto JOIN0B1B
3026 :     ASSIGN0AF1: preds = [COND0AF2]
3027 :     bool _t0AF0#1 = false;
3028 :     goto JOIN0AEC
3029 :     ASSIGN0AC2: preds = [COND0AC3]
3030 :     bool _t0AC1#1 = false;
3031 :     goto JOIN0ABD
3032 :     ASSIGN0A93: preds = [COND0A94]
3033 :     bool _t0A92#1 = false;
3034 :     goto JOIN0A8E
3035 :     ASSIGN0A64: preds = [COND0A65]
3036 :     bool _t0A63#1 = false;
3037 :     goto JOIN0A5F
3038 :     ASSIGN0A35: preds = [COND0A36]
3039 :     bool _t0A34#1 = false;
3040 :     goto JOIN0A30
3041 :     ASSIGN0A06: preds = [COND0A07]
3042 :     bool _t0A05#1 = false;
3043 :     goto JOIN0A01
3044 :     ASSIGN09D7: preds = [COND09D8]
3045 :     bool _t09D6#1 = false;
3046 :     goto JOIN09D2
3047 :     ASSIGN09A8: preds = [COND09A9]
3048 :     bool _t09A7#1 = false;
3049 :     goto JOIN09A3
3050 :     ASSIGN0979: preds = [COND097A]
3051 :     bool _t0978#1 = false;
3052 :     goto JOIN0974
3053 :     ASSIGN094A: preds = [COND094B]
3054 :     bool _t0949#1 = false;
3055 :     goto JOIN0945
3056 :     ASSIGN091B: preds = [COND091C]
3057 :     bool _t091A#1 = false;
3058 :     goto JOIN0916
3059 :     ASSIGN08EC: preds = [COND08ED]
3060 :     bool _t08EB#1 = false;
3061 :     goto JOIN08E7
3062 :     ASSIGN08BD: preds = [COND08BE]
3063 :     bool _t08BC#1 = false;
3064 :     goto JOIN08B8
3065 :     ASSIGN088E: preds = [COND088F]
3066 :     bool _t088D#1 = false;
3067 :     goto JOIN0889
3068 :     ASSIGN085F: preds = [COND0860]
3069 :     bool _t085E#1 = false;
3070 :     goto JOIN085A
3071 :     ASSIGN0830: preds = [COND0831]
3072 :     bool _t082F#1 = false;
3073 :     goto JOIN082B
3074 :     ASSIGN0801: preds = [COND0802]
3075 :     bool _t0800#1 = false;
3076 :     goto JOIN07FC
3077 :     ASSIGN07D2: preds = [COND07D3]
3078 :     bool _t07D1#1 = false;
3079 :     goto JOIN07CD
3080 :     end Update
3081 :     method Stabilize
3082 :     ENTRY0C61: preds = []
3083 :     tensor[3] t0C57#1 = self.t;
3084 :     real score0C58#1 = self.score;
3085 :     tensor[2] r00C59#1 = self.r0;
3086 :     tensor[2] r10C5A#1 = self.r1;
3087 :     tensor[2] pos0C5B#1 = self.pos;
3088 :     self.t = t0C57;
3089 :     self.score = score0C58;
3090 :     self.r0 = r00C59;
3091 :     self.r1 = r10C5A;
3092 :     self.pos = pos0C5B;
3093 :     return ()
3094 :     end Stabilize
3095 :     end R
3096 :     #### end program ####
3097 :     ++ high-il:redundant-assign
3098 :     ++ high-il:redundant-assign
3099 :     ++ high-il:redundant-assign
3100 :     ++ high-il:redundant-assign
3101 :     ++ high-il:redundant-assign
3102 :     ++ high-il:redundant-assign
3103 :     ++ high-il:redundant-assign
3104 :     ++ high-il:redundant-assign
3105 :     ++ high-il:redundant-assign
3106 :     ++ high-il:redundant-assign
3107 :     ++ high-il:redundant-assign
3108 :     ++ high-il:redundant-assign
3109 :     ++ high-il:redundant-assign
3110 :     ++ high-il:redundant-assign
3111 :     ++ high-il:redundant-assign
3112 :     ++ high-il:redundant-assign
3113 :     ++ high-il:redundant-assign
3114 :     ++ high-il:redundant-assign
3115 :     ++ high-il:redundant-assign
3116 :     ++ high-il:redundant-assign
3117 :     ++ high-il:redundant-assign
3118 :     ++ high-il:redundant-assign
3119 :     ++ high-il:redundant-assign
3120 :     ++ high-il:redundant-assign
3121 :     ++ high-il:redundant-assign
3122 :     ++ high-il:redundant-assign
3123 :     ++ high-il:redundant-assign
3124 :     ++ high-il:redundant-assign
3125 :     ++ high-il:redundant-assign
3126 :     ++ high-il:redundant-assign
3127 :     ++ high-il:redundant-assign
3128 :     ++ high-il:redundant-assign
3129 :     ++ high-il:redundant-assign
3130 :     ++ high-il:redundant-assign
3131 :     ++ high-il:redundant-assign
3132 :     ++ high-il:redundant-assign
3133 :     ++ high-il:redundant-assign
3134 :     ++ high-il:redundant-assign
3135 :     ++ high-il:redundant-assign
3136 :     ++ high-il:redundant-assign
3137 :     ++ high-il:redundant-assign
3138 :     ++ high-il:redundant-assign
3139 :     ++ high-il:redundant-assign
3140 :     ++ high-il:redundant-assign
3141 :     ++ high-il:redundant-assign
3142 :     ++ high-il:redundant-assign
3143 :     ++ high-il:redundant-assign
3144 :     ++ high-il:redundant-assign
3145 :     ++ high-il:redundant-assign
3146 :     ++ high-il:redundant-assign
3147 :     ++ high-il:redundant-assign
3148 :     ++ high-il:redundant-assign
3149 :     ++ high-il:redundant-assign
3150 :     ++ high-il:redundant-assign
3151 :     ++ high-il:redundant-assign
3152 :     ++ high-il:redundant-assign
3153 :     ++ high-il:redundant-assign
3154 :     ++ high-il:redundant-assign
3155 :     ++ high-il:redundant-assign
3156 :     ++ high-il:redundant-assign
3157 :     ++ high-il:redundant-assign
3158 :     ++ high-il:redundant-assign
3159 :     ++ high-il:redundant-assign
3160 :     ++ high-il:redundant-assign
3161 :     ++ high-il:redundant-assign
3162 :     ++ high-il:redundant-assign
3163 :     ++ high-il:redundant-assign
3164 :     ++ high-il:redundant-assign
3165 :     ++ high-il:redundant-assign
3166 :     ++ high-il:redundant-assign
3167 :     ++ high-il:redundant-assign
3168 :     ++ high-il:redundant-assign
3169 :     ++ high-il:redundant-assign
3170 :     ++ high-il:redundant-assign
3171 :     ++ high-il:redundant-assign
3172 :     ++ high-il:redundant-assign
3173 :     ++ high-il:redundant-assign
3174 :     ++ high-il:redundant-assign
3175 :     ++ high-il:redundant-assign
3176 :     ++ high-il:redundant-assign
3177 :     ++ high-il:redundant-assign
3178 :     ++ high-il:redundant-assign
3179 :     ++ high-il:redundant-assign
3180 :     ++ high-il:redundant-assign
3181 :     ++ high-il:redundant-assign
3182 :     ++ high-il:redundant-assign
3183 :     ++ high-il:redundant-assign
3184 :     ++ high-il:redundant-assign
3185 :     ++ high-il:redundant-assign
3186 :     ++ high-il:redundant-assign
3187 :     ++ high-il:redundant-assign
3188 :     ++ high-il:redundant-assign
3189 :     ++ high-il:redundant-assign
3190 :     ++ high-il:redundant-assign
3191 :     ++ high-il:redundant-assign
3192 :     ++ high-il:redundant-assign
3193 :     ++ high-il:redundant-assign
3194 :     ++ high-il:redundant-assign
3195 :     ++ high-il:redundant-assign
3196 :     ++ high-il:redundant-assign
3197 :     ++ high-il:redundant-assign
3198 :     ++ high-il:redundant-assign
3199 :     ++ high-il:redundant-assign
3200 :     ++ high-il:redundant-assign
3201 :     ++ high-il:redundant-assign
3202 :     ++ high-il:redundant-assign
3203 :     ++ high-il:redundant-assign
3204 :     ++ high-il:redundant-assign
3205 :     ++ high-il:redundant-assign
3206 :     ++ high-il:redundant-assign
3207 :     ++ high-il:redundant-assign
3208 :     ++ high-il:redundant-assign
3209 :     ++ high-il:redundant-assign
3210 :     ++ high-il:redundant-assign
3211 :     ++ high-il:redundant-assign
3212 :     ++ high-il:redundant-assign
3213 :     ++ high-il:redundant-assign
3214 :     ++ high-il:redundant-assign
3215 :     ++ high-il:redundant-assign
3216 :     ++ high-il:redundant-assign
3217 :     ++ high-il:redundant-assign
3218 :     ++ high-il:redundant-assign
3219 :     ++ high-il:redundant-assign
3220 :     ++ high-il:redundant-assign
3221 :     ++ high-il:redundant-assign
3222 :     ++ high-il:redundant-assign
3223 :     ++ high-il:redundant-assign
3224 :     ++ high-il:redundant-assign
3225 :     ++ high-il:redundant-assign
3226 :     ++ high-il:redundant-assign
3227 :     ++ high-il:redundant-assign
3228 :     ++ high-il:redundant-assign
3229 :     ++ high-il:redundant-assign
3230 :     ++ high-il:redundant-assign
3231 :     ++ high-il:redundant-assign
3232 :     ++ high-il:redundant-assign
3233 :     ++ high-il:redundant-assign
3234 :     ++ high-il:redundant-assign
3235 :     ++ high-il:redundant-assign
3236 :     ++ high-il:redundant-assign
3237 :     ++ high-il:redundant-assign
3238 :     ++ high-il:redundant-assign
3239 :     ++ high-il:redundant-assign
3240 :     ++ high-il:redundant-assign
3241 :     ++ high-il:redundant-assign
3242 :     ++ high-il:redundant-assign
3243 :     ++ high-il:redundant-assign
3244 :     ++ high-il:redundant-assign
3245 :     ++ high-il:redundant-assign
3246 :     ++ high-il:redundant-assign
3247 :     ++ high-il:redundant-assign
3248 :     ++ high-il:redundant-assign
3249 :     ++ high-il:redundant-assign
3250 :     ++ high-il:redundant-assign
3251 :     ++ high-il:redundant-assign
3252 :     ++ high-il:redundant-assign
3253 :     ++ high-il:redundant-assign
3254 :     ++ high-il:redundant-assign
3255 :     ++ high-il:redundant-assign
3256 :     ++ high-il:redundant-assign
3257 :     ++ high-il:redundant-assign
3258 :     ++ high-il:redundant-assign
3259 :     ++ high-il:redundant-assign
3260 :     ++ high-il:redundant-assign
3261 :     ++ high-il:redundant-assign
3262 :     ++ high-il:redundant-assign
3263 :     ++ high-il:redundant-assign
3264 :     ++ high-il:redundant-assign
3265 :     ++ high-il:redundant-assign
3266 :     ++ high-il:redundant-assign
3267 :     ++ high-il:redundant-assign
3268 :     ++ high-il:redundant-assign
3269 :     ++ high-il:redundant-assign
3270 :     ++ high-il:redundant-assign
3271 :     ++ high-il:redundant-assign
3272 :     ++ high-il:redundant-assign
3273 :     ++ high-il:redundant-assign
3274 :     ++ high-il:redundant-assign
3275 :     ++ high-il:redundant-assign
3276 :     ++ high-il:redundant-assign
3277 :     ++ high-il:redundant-assign
3278 :     ++ high-il:redundant-assign
3279 :     ++ high-il:redundant-assign
3280 :     ++ high-il:redundant-assign
3281 :     ++ high-il:redundant-assign
3282 :     ++ high-il:redundant-assign
3283 :     ++ high-il:redundant-assign
3284 :     ++ high-il:redundant-assign
3285 :     ++ high-il:redundant-assign
3286 :     ++ high-il:redundant-assign
3287 :     ++ high-il:redundant-assign
3288 :     ++ high-il:redundant-assign
3289 :     ++ high-il:redundant-assign
3290 :     ++ high-il:redundant-assign
3291 :     ++ high-il:redundant-assign
3292 :     ++ high-il:redundant-assign
3293 :     ++ high-il:redundant-assign
3294 :     ++ high-il:redundant-assign
3295 :     ++ high-il:redundant-assign
3296 :     ++ high-il:redundant-assign
3297 :     ++ high-il:redundant-assign
3298 :     ++ high-il:redundant-assign
3299 :     ++ high-il:redundant-assign
3300 :     ++ high-il:redundant-assign
3301 :     ++ high-il:redundant-assign
3302 :     ++ high-il:redundant-assign
3303 :     ++ high-il:redundant-assign
3304 :     ++ high-il:redundant-assign
3305 :     ++ high-il:redundant-assign
3306 :     ++ high-il:redundant-assign
3307 :     ++ high-il:redundant-assign
3308 :     ++ high-il:redundant-assign
3309 :     ++ high-il:redundant-assign
3310 :     ++ high-il:redundant-assign
3311 :     ++ high-il:redundant-assign
3312 :     ++ high-il:redundant-assign
3313 :     ++ high-il:redundant-assign
3314 :     ++ high-il:redundant-assign
3315 :     ++ high-il:redundant-assign
3316 :     ++ high-il:redundant-assign
3317 :     ++ high-il:redundant-assign
3318 :     ++ high-il:redundant-assign
3319 :     ++ high-il:redundant-assign
3320 :     ++ high-il:redundant-assign
3321 :     ++ high-il:redundant-assign
3322 :     ++ high-il:redundant-assign
3323 :     ++ high-il:redundant-assign
3324 :     ++ high-il:redundant-assign
3325 :     ++ high-il:redundant-assign
3326 :     ++ high-il:redundant-assign
3327 :     ++ high-il:redundant-assign
3328 :     ++ high-il:redundant-assign
3329 :     ++ high-il:redundant-assign
3330 :     ++ high-il:redundant-assign
3331 :     ++ high-il:redundant-assign
3332 :     ++ high-il:redundant-assign
3333 :     ++ high-il:redundant-assign
3334 :     ++ high-il:redundant-assign
3335 :     ++ high-il:redundant-assign
3336 :     ++ high-il:redundant-assign
3337 :     ++ high-il:redundant-assign
3338 :     ++ high-il:redundant-assign
3339 :     ++ high-il:redundant-assign
3340 :     ++ high-il:redundant-assign
3341 :     ++ high-il:redundant-assign
3342 :     ++ high-il:redundant-assign
3343 :     ++ high-il:redundant-assign
3344 :     ++ high-il:redundant-assign
3345 :     ++ high-il:redundant-assign
3346 :     ++ high-il:redundant-assign
3347 :     ++ high-il:redundant-assign
3348 :     ++ high-il:redundant-assign
3349 :     ++ high-il:redundant-assign
3350 :     ++ high-il:redundant-assign
3351 :     ++ high-il:redundant-assign
3352 :     ++ high-il:redundant-assign
3353 :     ++ high-il:redundant-assign
3354 :     ++ high-il:redundant-assign
3355 :     ++ high-il:redundant-assign
3356 :     ++ high-il:redundant-assign
3357 :     ++ high-il:redundant-assign
3358 :     ++ high-il:redundant-assign
3359 :     ++ high-il:redundant-assign
3360 :     ++ high-il:redundant-assign
3361 :     ++ high-il:redundant-assign
3362 :     ++ high-il:redundant-assign
3363 :     ++ high-il:redundant-assign
3364 :     ++ high-il:redundant-assign
3365 :     ++ high-il:redundant-assign
3366 :     ++ high-il:redundant-assign
3367 :     ++ high-il:redundant-assign
3368 :     ++ high-il:redundant-assign
3369 :     ++ high-il:redundant-assign
3370 :     ++ high-il:redundant-assign
3371 :     ++ high-il:redundant-assign
3372 :     ++ high-il:redundant-assign
3373 :     ++ high-il:redundant-assign
3374 :     ++ high-il:redundant-assign
3375 :     ++ high-il:redundant-assign
3376 :     ++ high-il:redundant-assign
3377 :     ++ high-il:redundant-assign
3378 :     ++ high-il:redundant-assign
3379 :     ++ high-il:redundant-assign
3380 :     ++ high-il:redundant-assign
3381 :     ++ high-il:redundant-assign
3382 :     ++ high-il:redundant-assign
3383 :     ++ high-il:redundant-assign
3384 :     ++ high-il:redundant-assign
3385 :     ++ high-il:redundant-assign
3386 :     ++ high-il:redundant-assign
3387 :     ++ high-il:redundant-assign
3388 :     ++ high-il:redundant-assign
3389 :     ++ high-il:redundant-assign
3390 :     ++ high-il:redundant-assign
3391 :     ++ high-il:redundant-assign
3392 :     ++ high-il:redundant-assign
3393 :     ++ high-il:redundant-assign
3394 :     ++ high-il:redundant-assign
3395 :     ++ high-il:redundant-assign
3396 :     ++ high-il:redundant-assign
3397 :     ++ high-il:redundant-assign
3398 :     ++ high-il:redundant-assign
3399 :     ++ high-il:redundant-assign
3400 :     ++ high-il:redundant-assign
3401 :     ++ high-il:redundant-assign
3402 :     ++ high-il:redundant-assign
3403 :     ++ high-il:redundant-assign
3404 :     ##### HighIL after value numbering ####
3405 :     ## properties
3406 :     none
3407 :     ## globals
3408 :     global field T0630#75
3409 :     global field F0638#75
3410 :     global tensor[2] v00063E#5
3411 :     global tensor[2] v010644#5
3412 :     global tensor[2] v02064A#5
3413 :     global tensor[2] v030652#5
3414 :     global tensor[2] v04065A#5
3415 :     global tensor[2] v050660#5
3416 :     global tensor[2] v060666#5
3417 :     global tensor[2] v07066C#5
3418 :     global tensor[2] v080674#5
3419 :     global tensor[2] v09067C#5
3420 :     global tensor[2] v100682#5
3421 :     global tensor[2] v110688#5
3422 :     global tensor[2] v12068E#5
3423 :     global tensor[2] v130696#5
3424 :     global tensor[2] v14069E#5
3425 :     global tensor[2] v1506A6#5
3426 :     global tensor[2] v1606AE#5
3427 :     global tensor[2] v1706B6#5
3428 :     global tensor[2] v1806C0#5
3429 :     global tensor[2] v1906CA#5
3430 :     global tensor[2] v2006D2#5
3431 :     global tensor[2] v2106DA#5
3432 :     global tensor[2] v2206E2#5
3433 :     global tensor[2] v2306EC#5
3434 :     global tensor[2] v2406F6#5
3435 :     global string _t062C#1
3436 :     global image2D _t062E#1
3437 :     global kernel _t062A#3
3438 :     global string _t0634#1
3439 :     global image2D _t0636#1
3440 :     global real _t063A#19
3441 :     global real _t0642#30
3442 :     global real _t0650#19
3443 :     global real _t0648#30
3444 :     global real _t0658#19
3445 :     ## global initialization
3446 :     ENTRY06F8: preds = []
3447 :     kernel _t062A#3 = Kernel<bspln3,0>;
3448 :     string _t062C#1 = "square-template.nrrd";
3449 :     image2D _t062E#1 = LoadImage<IMAGE2D<int>>(_t062C);
3450 :     field T0630#75 = Field<2>(_t062E,_t062A);
3451 :     string _t0634#1 = "square-rotate.nrrd";
3452 :     image2D _t0636#1 = LoadImage<IMAGE2D<float>>(_t0634);
3453 :     field F0638#75 = Field<2>(_t0636,_t062A);
3454 :     real _t063A#19 = 0.0;
3455 :     tensor[2] v00063E#5 = <tensor[2]>[_t063A,_t063A];
3456 :     real _t0642#30 = 0.25e0;
3457 :     tensor[2] v010644#5 = <tensor[2]>[_t063A,_t0642];
3458 :     real _t0648#30 = 0.5e0;
3459 :     tensor[2] v02064A#5 = <tensor[2]>[_t063A,_t0648];
3460 :     real _t0650#19 = Neg<real>(_t0642);
3461 :     tensor[2] v030652#5 = <tensor[2]>[_t063A,_t0650];
3462 :     real _t0658#19 = Neg<real>(_t0648);
3463 :     tensor[2] v04065A#5 = <tensor[2]>[_t063A,_t0658];
3464 :     tensor[2] v050660#5 = <tensor[2]>[_t0642,_t063A];
3465 :     tensor[2] v060666#5 = <tensor[2]>[_t0642,_t0642];
3466 :     tensor[2] v07066C#5 = <tensor[2]>[_t0642,_t0648];
3467 :     tensor[2] v080674#5 = <tensor[2]>[_t0642,_t0650];
3468 :     tensor[2] v09067C#5 = <tensor[2]>[_t0642,_t0658];
3469 :     tensor[2] v100682#5 = <tensor[2]>[_t0648,_t063A];
3470 :     tensor[2] v110688#5 = <tensor[2]>[_t0648,_t0642];
3471 :     tensor[2] v12068E#5 = <tensor[2]>[_t0648,_t0648];
3472 :     tensor[2] v130696#5 = <tensor[2]>[_t0648,_t0650];
3473 :     tensor[2] v14069E#5 = <tensor[2]>[_t0648,_t0658];
3474 :     tensor[2] v1506A6#5 = <tensor[2]>[_t0650,_t063A];
3475 :     tensor[2] v1606AE#5 = <tensor[2]>[_t0650,_t0642];
3476 :     tensor[2] v1706B6#5 = <tensor[2]>[_t0650,_t0648];
3477 :     tensor[2] v1806C0#5 = <tensor[2]>[_t0650,_t0650];
3478 :     tensor[2] v1906CA#5 = <tensor[2]>[_t0650,_t0658];
3479 :     tensor[2] v2006D2#5 = <tensor[2]>[_t0658,_t063A];
3480 :     tensor[2] v2106DA#5 = <tensor[2]>[_t0658,_t0642];
3481 :     tensor[2] v2206E2#5 = <tensor[2]>[_t0658,_t0648];
3482 :     tensor[2] v2306EC#5 = <tensor[2]>[_t0658,_t0650];
3483 :     tensor[2] v2406F6#5 = <tensor[2]>[_t0658,_t0658];
3484 :     return (T0630,F0638,v00063E,v010644,v02064A,v030652,v04065A,v050660,v060666,v07066C,v080674,v09067C,v100682,v110688,v12068E,v130696,v14069E,v1506A6,v1606AE,v1706B6,v1806C0,v1906CA,v2006D2,v2106DA,v2206E2,v2306EC,v2406F6,_t062C,_t062E,_t062A,_t0634,_t0636,_t063A,_t0642,_t0650,_t0648,_t0658)
3485 :     ## initially
3486 :     ARRAY
3487 :     ENTRY0706: preds = []
3488 :     int _t06FA#4 = 0;
3489 :     int _t06FC#4 = 60;
3490 :     live vars = (_t06FC,_t06FA)
3491 :     for int i0708#1 = _t06FA .. _t06FC
3492 :     for int j0709#1 = _t06FA .. _t06FC
3493 :     for int k070A#1 = _t06FA .. _t06FC
3494 :     ENTRY070B: preds = []
3495 :     live vars = ()
3496 :     new R(i0708,j0709,k070A);
3497 :     ## strands
3498 :     strand R (int i070D#1, int j070E#1, int k070F#1)
3499 :     state: tensor[3] self.t;output real self.score;tensor[2] self.r0;tensor[2] self.r1;tensor[2] self.pos;
3500 :     ENTRY0749: preds = []
3501 :     real _t0715#1 = IntToReal(i070D);
3502 :     real _t0717#3 = 0.60e2;
3503 :     real _t0719#1 = Div<real>(_t0715,_t0717);
3504 :     real _t071B#3 = 0.5e0;
3505 :     real _t071D#1 = Sub<real>(_t0719,_t071B);
3506 :     real _t071F#1 = IntToReal(j070E);
3507 :     real _t0723#1 = Div<real>(_t071F,_t0717);
3508 :     real _t0727#1 = Sub<real>(_t0723,_t071B);
3509 :     real _t0729#1 = IntToReal(k070F);
3510 :     real _t072D#1 = Div<real>(_t0729,_t0717);
3511 :     real _t0731#1 = Sub<real>(_t072D,_t071B);
3512 :     tensor[3] t0733#1 = <tensor[3]>[_t071D,_t0727,_t0731];
3513 :     real score0735#3 = 0.0;
3514 :     tensor[2] r0073B#3 = <tensor[2]>[score0735,score0735];
3515 :     self.t = t0733;
3516 :     self.score = score0735;
3517 :     self.r0 = r0073B;
3518 :     self.r1 = r0073B;
3519 :     self.pos = r0073B;
3520 :     strand_init ()
3521 :     method Update
3522 :     ENTRY0C55: preds = []
3523 :     tensor[3] t0750#61 = self.t;
3524 :     real score0751#2 = self.score;
3525 :     tensor[2] r00752#0 = self.r0;
3526 :     tensor[2] r10753#0 = self.r1;
3527 :     tensor[2] pos0754#0 = self.pos;
3528 :     real _t075A#2 = 0.1e1;
3529 :     real _t075C#3 = 0.2e1;
3530 :     int _t075E#1 = 2;
3531 :     real _t0760#6 = TensorSub<tensor[3]>(t0750,_t075E);
3532 :     real _t0762#1 = Mul<real>(_t075C,_t0760);
3533 :     real _t0768#1 = Mul<real>(_t0762,_t0760);
3534 :     real _t076A#2 = Sub<real>(_t075A,_t0768);
3535 :     real _t076E#1 = Neg<real>(_t075C);
3536 :     real _t077A#1 = Mul<real>(_t0760,_t0760);
3537 :     real _t077C#1 = Sub<real>(_t075A,_t077A);
3538 :     real _t077E#2 = sqrt(_t077C);
3539 :     real _t0780#1 = Mul<real>(_t076E,_t077E);
3540 :     real _t0786#1 = Mul<real>(_t0780,_t0760);
3541 :     tensor[2] r00788#26 = <tensor[2]>[_t076A,_t0786];
3542 :     real _t079C#1 = Mul<real>(_t075C,_t077E);
3543 :     real _t07A2#1 = Mul<real>(_t079C,_t0760);
3544 :     tensor[2] r107B6#26 = <tensor[2]>[_t07A2,_t076A];
3545 :     real _t07B8#1 = Dot<tensor[2]>(r00788,v00063E);
3546 :     real _t07BA#1 = Dot<tensor[2]>(r107B6,v00063E);
3547 :     tensor[2] _t07BC#1 = <tensor[2]>[_t07B8,_t07BA];
3548 :     int _t07BE#1 = 0;
3549 :     real _t07C0#1 = TensorSub<tensor[3]>(t0750,_t07BE);
3550 :     int _t07C2#1 = 1;
3551 :     real _t07C4#1 = TensorSub<tensor[3]>(t0750,_t07C2);
3552 :     tensor[2] _t07C6#25 = <tensor[2]>[_t07C0,_t07C4];
3553 :     tensor[2] pos07C8#3 = Add<tensor[2]>(_t07BC,_t07C6);
3554 :     bool _t07CB#1 = Inside<2>(pos07C8,F0638);
3555 :     if _t07CB then goto ASSIGN07D0 else goto ASSIGN07D2
3556 :     ASSIGN07D0: preds = [COND07D3]
3557 :     bool _t07CE#1 = Inside<2>(v00063E,T0630);
3558 :     goto JOIN07CD
3559 :     JOIN07CD: preds = [ASSIGN07D0,ASSIGN07D2]
3560 :     bool _t07CF#1 = phi(_t07CE,_t07D1)
3561 :     if _t07CF then goto ASSIGN07D6 else goto JOIN07D4
3562 :     ASSIGN07D6: preds = [COND07E6]
3563 :     real _t07D5#1 = Probe<tensor[2],real>(F0638,pos07C8);
3564 :     real _t07D7#1 = Probe<tensor[2],real>(T0630,v00063E);
3565 :     real _t07D9#2 = Sub<real>(_t07D5,_t07D7);
3566 :     real _t07E1#1 = Mul<real>(_t07D9,_t07D9);
3567 :     real score07E3#1 = Add<real>(score0751,_t07E1);
3568 :     goto JOIN07D4
3569 :     JOIN07D4: preds = [ASSIGN07E5,COND07E6]
3570 :     real score07E4#2 = phi(score07E3,score0751)
3571 :     real _t07E7#1 = Dot<tensor[2]>(r00788,v010644);
3572 :     real _t07E9#1 = Dot<tensor[2]>(r107B6,v010644);
3573 :     tensor[2] _t07EB#1 = <tensor[2]>[_t07E7,_t07E9];
3574 :     tensor[2] pos07F7#3 = Add<tensor[2]>(_t07EB,_t07C6);
3575 :     bool _t07FA#1 = Inside<2>(pos07F7,F0638);
3576 :     if _t07FA then goto ASSIGN07FF else goto ASSIGN0801
3577 :     ASSIGN07FF: preds = [COND0802]
3578 :     bool _t07FD#1 = Inside<2>(v010644,T0630);
3579 :     goto JOIN07FC
3580 :     JOIN07FC: preds = [ASSIGN07FF,ASSIGN0801]
3581 :     bool _t07FE#1 = phi(_t07FD,_t0800)
3582 :     if _t07FE then goto ASSIGN0805 else goto JOIN0803
3583 :     ASSIGN0805: preds = [COND0815]
3584 :     real _t0804#1 = Probe<tensor[2],real>(F0638,pos07F7);
3585 :     real _t0806#1 = Probe<tensor[2],real>(T0630,v010644);
3586 :     real _t0808#2 = Sub<real>(_t0804,_t0806);
3587 :     real _t0810#1 = Mul<real>(_t0808,_t0808);
3588 :     real score0812#1 = Add<real>(score07E4,_t0810);
3589 :     goto JOIN0803
3590 :     JOIN0803: preds = [ASSIGN0814,COND0815]
3591 :     real score0813#2 = phi(score0812,score07E4)
3592 :     real _t0816#1 = Dot<tensor[2]>(r00788,v02064A);
3593 :     real _t0818#1 = Dot<tensor[2]>(r107B6,v02064A);
3594 :     tensor[2] _t081A#1 = <tensor[2]>[_t0816,_t0818];
3595 :     tensor[2] pos0826#3 = Add<tensor[2]>(_t081A,_t07C6);
3596 :     bool _t0829#1 = Inside<2>(pos0826,F0638);
3597 :     if _t0829 then goto ASSIGN082E else goto ASSIGN0830
3598 :     ASSIGN082E: preds = [COND0831]
3599 :     bool _t082C#1 = Inside<2>(v02064A,T0630);
3600 :     goto JOIN082B
3601 :     JOIN082B: preds = [ASSIGN082E,ASSIGN0830]
3602 :     bool _t082D#1 = phi(_t082C,_t082F)
3603 :     if _t082D then goto ASSIGN0834 else goto JOIN0832
3604 :     ASSIGN0834: preds = [COND0844]
3605 :     real _t0833#1 = Probe<tensor[2],real>(F0638,pos0826);
3606 :     real _t0835#1 = Probe<tensor[2],real>(T0630,v02064A);
3607 :     real _t0837#2 = Sub<real>(_t0833,_t0835);
3608 :     real _t083F#1 = Mul<real>(_t0837,_t0837);
3609 :     real score0841#1 = Add<real>(score0813,_t083F);
3610 :     goto JOIN0832
3611 :     JOIN0832: preds = [ASSIGN0843,COND0844]
3612 :     real score0842#2 = phi(score0841,score0813)
3613 :     real _t0845#1 = Dot<tensor[2]>(r00788,v030652);
3614 :     real _t0847#1 = Dot<tensor[2]>(r107B6,v030652);
3615 :     tensor[2] _t0849#1 = <tensor[2]>[_t0845,_t0847];
3616 :     tensor[2] pos0855#3 = Add<tensor[2]>(_t0849,_t07C6);
3617 :     bool _t0858#1 = Inside<2>(pos0855,F0638);
3618 :     if _t0858 then goto ASSIGN085D else goto ASSIGN085F
3619 :     ASSIGN085D: preds = [COND0860]
3620 :     bool _t085B#1 = Inside<2>(v030652,T0630);
3621 :     goto JOIN085A
3622 :     JOIN085A: preds = [ASSIGN085D,ASSIGN085F]
3623 :     bool _t085C#1 = phi(_t085B,_t085E)
3624 :     if _t085C then goto ASSIGN0863 else goto JOIN0861
3625 :     ASSIGN0863: preds = [COND0873]
3626 :     real _t0862#1 = Probe<tensor[2],real>(F0638,pos0855);
3627 :     real _t0864#1 = Probe<tensor[2],real>(T0630,v030652);
3628 :     real _t0866#2 = Sub<real>(_t0862,_t0864);
3629 :     real _t086E#1 = Mul<real>(_t0866,_t0866);
3630 :     real score0870#1 = Add<real>(score0842,_t086E);
3631 :     goto JOIN0861
3632 :     JOIN0861: preds = [ASSIGN0872,COND0873]
3633 :     real score0871#2 = phi(score0870,score0842)
3634 :     real _t0874#1 = Dot<tensor[2]>(r00788,v04065A);
3635 :     real _t0876#1 = Dot<tensor[2]>(r107B6,v04065A);
3636 :     tensor[2] _t0878#1 = <tensor[2]>[_t0874,_t0876];
3637 :     tensor[2] pos0884#3 = Add<tensor[2]>(_t0878,_t07C6);
3638 :     bool _t0887#1 = Inside<2>(pos0884,F0638);
3639 :     if _t0887 then goto ASSIGN088C else goto ASSIGN088E
3640 :     ASSIGN088C: preds = [COND088F]
3641 :     bool _t088A#1 = Inside<2>(v04065A,T0630);
3642 :     goto JOIN0889
3643 :     JOIN0889: preds = [ASSIGN088C,ASSIGN088E]
3644 :     bool _t088B#1 = phi(_t088A,_t088D)
3645 :     if _t088B then goto ASSIGN0892 else goto JOIN0890
3646 :     ASSIGN0892: preds = [COND08A2]
3647 :     real _t0891#1 = Probe<tensor[2],real>(F0638,pos0884);
3648 :     real _t0893#1 = Probe<tensor[2],real>(T0630,v04065A);
3649 :     real _t0895#2 = Sub<real>(_t0891,_t0893);
3650 :     real _t089D#1 = Mul<real>(_t0895,_t0895);
3651 :     real score089F#1 = Add<real>(score0871,_t089D);
3652 :     goto JOIN0890
3653 :     JOIN0890: preds = [ASSIGN08A1,COND08A2]
3654 :     real score08A0#2 = phi(score089F,score0871)
3655 :     real _t08A3#1 = Dot<tensor[2]>(r00788,v050660);
3656 :     real _t08A5#1 = Dot<tensor[2]>(r107B6,v050660);
3657 :     tensor[2] _t08A7#1 = <tensor[2]>[_t08A3,_t08A5];
3658 :     tensor[2] pos08B3#3 = Add<tensor[2]>(_t08A7,_t07C6);
3659 :     bool _t08B6#1 = Inside<2>(pos08B3,F0638);
3660 :     if _t08B6 then goto ASSIGN08BB else goto ASSIGN08BD
3661 :     ASSIGN08BB: preds = [COND08BE]
3662 :     bool _t08B9#1 = Inside<2>(v050660,T0630);
3663 :     goto JOIN08B8
3664 :     JOIN08B8: preds = [ASSIGN08BB,ASSIGN08BD]
3665 :     bool _t08BA#1 = phi(_t08B9,_t08BC)
3666 :     if _t08BA then goto ASSIGN08C1 else goto JOIN08BF
3667 :     ASSIGN08C1: preds = [COND08D1]
3668 :     real _t08C0#1 = Probe<tensor[2],real>(F0638,pos08B3);
3669 :     real _t08C2#1 = Probe<tensor[2],real>(T0630,v050660);
3670 :     real _t08C4#2 = Sub<real>(_t08C0,_t08C2);
3671 :     real _t08CC#1 = Mul<real>(_t08C4,_t08C4);
3672 :     real score08CE#1 = Add<real>(score08A0,_t08CC);
3673 :     goto JOIN08BF
3674 :     JOIN08BF: preds = [ASSIGN08D0,COND08D1]
3675 :     real score08CF#2 = phi(score08CE,score08A0)
3676 :     real _t08D2#1 = Dot<tensor[2]>(r00788,v060666);
3677 :     real _t08D4#1 = Dot<tensor[2]>(r107B6,v060666);
3678 :     tensor[2] _t08D6#1 = <tensor[2]>[_t08D2,_t08D4];
3679 :     tensor[2] pos08E2#3 = Add<tensor[2]>(_t08D6,_t07C6);
3680 :     bool _t08E5#1 = Inside<2>(pos08E2,F0638);
3681 :     if _t08E5 then goto ASSIGN08EA else goto ASSIGN08EC
3682 :     ASSIGN08EA: preds = [COND08ED]
3683 :     bool _t08E8#1 = Inside<2>(v060666,T0630);
3684 :     goto JOIN08E7
3685 :     JOIN08E7: preds = [ASSIGN08EA,ASSIGN08EC]
3686 :     bool _t08E9#1 = phi(_t08E8,_t08EB)
3687 :     if _t08E9 then goto ASSIGN08F0 else goto JOIN08EE
3688 :     ASSIGN08F0: preds = [COND0900]
3689 :     real _t08EF#1 = Probe<tensor[2],real>(F0638,pos08E2);
3690 :     real _t08F1#1 = Probe<tensor[2],real>(T0630,v060666);
3691 :     real _t08F3#2 = Sub<real>(_t08EF,_t08F1);
3692 :     real _t08FB#1 = Mul<real>(_t08F3,_t08F3);
3693 :     real score08FD#1 = Add<real>(score08CF,_t08FB);
3694 :     goto JOIN08EE
3695 :     JOIN08EE: preds = [ASSIGN08FF,COND0900]
3696 :     real score08FE#2 = phi(score08FD,score08CF)
3697 :     real _t0901#1 = Dot<tensor[2]>(r00788,v07066C);
3698 :     real _t0903#1 = Dot<tensor[2]>(r107B6,v07066C);
3699 :     tensor[2] _t0905#1 = <tensor[2]>[_t0901,_t0903];
3700 :     tensor[2] pos0911#3 = Add<tensor[2]>(_t0905,_t07C6);
3701 :     bool _t0914#1 = Inside<2>(pos0911,F0638);
3702 :     if _t0914 then goto ASSIGN0919 else goto ASSIGN091B
3703 :     ASSIGN0919: preds = [COND091C]
3704 :     bool _t0917#1 = Inside<2>(v07066C,T0630);
3705 :     goto JOIN0916
3706 :     JOIN0916: preds = [ASSIGN0919,ASSIGN091B]
3707 :     bool _t0918#1 = phi(_t0917,_t091A)
3708 :     if _t0918 then goto ASSIGN091F else goto JOIN091D
3709 :     ASSIGN091F: preds = [COND092F]
3710 :     real _t091E#1 = Probe<tensor[2],real>(F0638,pos0911);
3711 :     real _t0920#1 = Probe<tensor[2],real>(T0630,v07066C);
3712 :     real _t0922#2 = Sub<real>(_t091E,_t0920);
3713 :     real _t092A#1 = Mul<real>(_t0922,_t0922);
3714 :     real score092C#1 = Add<real>(score08FE,_t092A);
3715 :     goto JOIN091D
3716 :     JOIN091D: preds = [ASSIGN092E,COND092F]
3717 :     real score092D#2 = phi(score092C,score08FE)
3718 :     real _t0930#1 = Dot<tensor[2]>(r00788,v080674);
3719 :     real _t0932#1 = Dot<tensor[2]>(r107B6,v080674);
3720 :     tensor[2] _t0934#1 = <tensor[2]>[_t0930,_t0932];
3721 :     tensor[2] pos0940#3 = Add<tensor[2]>(_t0934,_t07C6);
3722 :     bool _t0943#1 = Inside<2>(pos0940,F0638);
3723 :     if _t0943 then goto ASSIGN0948 else goto ASSIGN094A
3724 :     ASSIGN0948: preds = [COND094B]
3725 :     bool _t0946#1 = Inside<2>(v080674,T0630);
3726 :     goto JOIN0945
3727 :     JOIN0945: preds = [ASSIGN0948,ASSIGN094A]
3728 :     bool _t0947#1 = phi(_t0946,_t0949)
3729 :     if _t0947 then goto ASSIGN094E else goto JOIN094C
3730 :     ASSIGN094E: preds = [COND095E]
3731 :     real _t094D#1 = Probe<tensor[2],real>(F0638,pos0940);
3732 :     real _t094F#1 = Probe<tensor[2],real>(T0630,v080674);
3733 :     real _t0951#2 = Sub<real>(_t094D,_t094F);
3734 :     real _t0959#1 = Mul<real>(_t0951,_t0951);
3735 :     real score095B#1 = Add<real>(score092D,_t0959);
3736 :     goto JOIN094C
3737 :     JOIN094C: preds = [ASSIGN095D,COND095E]
3738 :     real score095C#2 = phi(score095B,score092D)
3739 :     real _t095F#1 = Dot<tensor[2]>(r00788,v09067C);
3740 :     real _t0961#1 = Dot<tensor[2]>(r107B6,v09067C);
3741 :     tensor[2] _t0963#1 = <tensor[2]>[_t095F,_t0961];
3742 :     tensor[2] pos096F#3 = Add<tensor[2]>(_t0963,_t07C6);
3743 :     bool _t0972#1 = Inside<2>(pos096F,F0638);
3744 :     if _t0972 then goto ASSIGN0977 else goto ASSIGN0979
3745 :     ASSIGN0977: preds = [COND097A]
3746 :     bool _t0975#1 = Inside<2>(v09067C,T0630);
3747 :     goto JOIN0974
3748 :     JOIN0974: preds = [ASSIGN0977,ASSIGN0979]
3749 :     bool _t0976#1 = phi(_t0975,_t0978)
3750 :     if _t0976 then goto ASSIGN097D else goto JOIN097B
3751 :     ASSIGN097D: preds = [COND098D]
3752 :     real _t097C#1 = Probe<tensor[2],real>(F0638,pos096F);
3753 :     real _t097E#1 = Probe<tensor[2],real>(T0630,v09067C);
3754 :     real _t0980#2 = Sub<real>(_t097C,_t097E);
3755 :     real _t0988#1 = Mul<real>(_t0980,_t0980);
3756 :     real score098A#1 = Add<real>(score095C,_t0988);
3757 :     goto JOIN097B
3758 :     JOIN097B: preds = [ASSIGN098C,COND098D]
3759 :     real score098B#2 = phi(score098A,score095C)
3760 :     real _t098E#1 = Dot<tensor[2]>(r00788,v100682);
3761 :     real _t0990#1 = Dot<tensor[2]>(r107B6,v100682);
3762 :     tensor[2] _t0992#1 = <tensor[2]>[_t098E,_t0990];
3763 :     tensor[2] pos099E#3 = Add<tensor[2]>(_t0992,_t07C6);
3764 :     bool _t09A1#1 = Inside<2>(pos099E,F0638);
3765 :     if _t09A1 then goto ASSIGN09A6 else goto ASSIGN09A8
3766 :     ASSIGN09A6: preds = [COND09A9]
3767 :     bool _t09A4#1 = Inside<2>(v100682,T0630);
3768 :     goto JOIN09A3
3769 :     JOIN09A3: preds = [ASSIGN09A6,ASSIGN09A8]
3770 :     bool _t09A5#1 = phi(_t09A4,_t09A7)
3771 :     if _t09A5 then goto ASSIGN09AC else goto JOIN09AA
3772 :     ASSIGN09AC: preds = [COND09BC]
3773 :     real _t09AB#1 = Probe<tensor[2],real>(F0638,pos099E);
3774 :     real _t09AD#1 = Probe<tensor[2],real>(T0630,v100682);
3775 :     real _t09AF#2 = Sub<real>(_t09AB,_t09AD);
3776 :     real _t09B7#1 = Mul<real>(_t09AF,_t09AF);
3777 :     real score09B9#1 = Add<real>(score098B,_t09B7);
3778 :     goto JOIN09AA
3779 :     JOIN09AA: preds = [ASSIGN09BB,COND09BC]
3780 :     real score09BA#2 = phi(score09B9,score098B)
3781 :     real _t09BD#1 = Dot<tensor[2]>(r00788,v110688);
3782 :     real _t09BF#1 = Dot<tensor[2]>(r107B6,v110688);
3783 :     tensor[2] _t09C1#1 = <tensor[2]>[_t09BD,_t09BF];
3784 :     tensor[2] pos09CD#3 = Add<tensor[2]>(_t09C1,_t07C6);
3785 :     bool _t09D0#1 = Inside<2>(pos09CD,F0638);
3786 :     if _t09D0 then goto ASSIGN09D5 else goto ASSIGN09D7
3787 :     ASSIGN09D5: preds = [COND09D8]
3788 :     bool _t09D3#1 = Inside<2>(v110688,T0630);
3789 :     goto JOIN09D2
3790 :     JOIN09D2: preds = [ASSIGN09D5,ASSIGN09D7]
3791 :     bool _t09D4#1 = phi(_t09D3,_t09D6)
3792 :     if _t09D4 then goto ASSIGN09DB else goto JOIN09D9
3793 :     ASSIGN09DB: preds = [COND09EB]
3794 :     real _t09DA#1 = Probe<tensor[2],real>(F0638,pos09CD);
3795 :     real _t09DC#1 = Probe<tensor[2],real>(T0630,v110688);
3796 :     real _t09DE#2 = Sub<real>(_t09DA,_t09DC);
3797 :     real _t09E6#1 = Mul<real>(_t09DE,_t09DE);
3798 :     real score09E8#1 = Add<real>(score09BA,_t09E6);
3799 :     goto JOIN09D9
3800 :     JOIN09D9: preds = [ASSIGN09EA,COND09EB]
3801 :     real score09E9#2 = phi(score09E8,score09BA)
3802 :     real _t09EC#1 = Dot<tensor[2]>(r00788,v12068E);
3803 :     real _t09EE#1 = Dot<tensor[2]>(r107B6,v12068E);
3804 :     tensor[2] _t09F0#1 = <tensor[2]>[_t09EC,_t09EE];
3805 :     tensor[2] pos09FC#3 = Add<tensor[2]>(_t09F0,_t07C6);
3806 :     bool _t09FF#1 = Inside<2>(pos09FC,F0638);
3807 :     if _t09FF then goto ASSIGN0A04 else goto ASSIGN0A06
3808 :     ASSIGN0A04: preds = [COND0A07]
3809 :     bool _t0A02#1 = Inside<2>(v12068E,T0630);
3810 :     goto JOIN0A01
3811 :     JOIN0A01: preds = [ASSIGN0A04,ASSIGN0A06]
3812 :     bool _t0A03#1 = phi(_t0A02,_t0A05)
3813 :     if _t0A03 then goto ASSIGN0A0A else goto JOIN0A08
3814 :     ASSIGN0A0A: preds = [COND0A1A]
3815 :     real _t0A09#1 = Probe<tensor[2],real>(F0638,pos09FC);
3816 :     real _t0A0B#1 = Probe<tensor[2],real>(T0630,v12068E);
3817 :     real _t0A0D#2 = Sub<real>(_t0A09,_t0A0B);
3818 :     real _t0A15#1 = Mul<real>(_t0A0D,_t0A0D);
3819 :     real score0A17#1 = Add<real>(score09E9,_t0A15);
3820 :     goto JOIN0A08
3821 :     JOIN0A08: preds = [ASSIGN0A19,COND0A1A]
3822 :     real score0A18#2 = phi(score0A17,score09E9)
3823 :     real _t0A1B#1 = Dot<tensor[2]>(r00788,v130696);
3824 :     real _t0A1D#1 = Dot<tensor[2]>(r107B6,v130696);
3825 :     tensor[2] _t0A1F#1 = <tensor[2]>[_t0A1B,_t0A1D];
3826 :     tensor[2] pos0A2B#3 = Add<tensor[2]>(_t0A1F,_t07C6);
3827 :     bool _t0A2E#1 = Inside<2>(pos0A2B,F0638);
3828 :     if _t0A2E then goto ASSIGN0A33 else goto ASSIGN0A35
3829 :     ASSIGN0A33: preds = [COND0A36]
3830 :     bool _t0A31#1 = Inside<2>(v130696,T0630);
3831 :     goto JOIN0A30
3832 :     JOIN0A30: preds = [ASSIGN0A33,ASSIGN0A35]
3833 :     bool _t0A32#1 = phi(_t0A31,_t0A34)
3834 :     if _t0A32 then goto ASSIGN0A39 else goto JOIN0A37
3835 :     ASSIGN0A39: preds = [COND0A49]
3836 :     real _t0A38#1 = Probe<tensor[2],real>(F0638,pos0A2B);
3837 :     real _t0A3A#1 = Probe<tensor[2],real>(T0630,v130696);
3838 :     real _t0A3C#2 = Sub<real>(_t0A38,_t0A3A);
3839 :     real _t0A44#1 = Mul<real>(_t0A3C,_t0A3C);
3840 :     real score0A46#1 = Add<real>(score0A18,_t0A44);
3841 :     goto JOIN0A37
3842 :     JOIN0A37: preds = [ASSIGN0A48,COND0A49]
3843 :     real score0A47#2 = phi(score0A46,score0A18)
3844 :     real _t0A4A#1 = Dot<tensor[2]>(r00788,v14069E);
3845 :     real _t0A4C#1 = Dot<tensor[2]>(r107B6,v14069E);
3846 :     tensor[2] _t0A4E#1 = <tensor[2]>[_t0A4A,_t0A4C];
3847 :     tensor[2] pos0A5A#3 = Add<tensor[2]>(_t0A4E,_t07C6);
3848 :     bool _t0A5D#1 = Inside<2>(pos0A5A,F0638);
3849 :     if _t0A5D then goto ASSIGN0A62 else goto ASSIGN0A64
3850 :     ASSIGN0A62: preds = [COND0A65]
3851 :     bool _t0A60#1 = Inside<2>(v14069E,T0630);
3852 :     goto JOIN0A5F
3853 :     JOIN0A5F: preds = [ASSIGN0A62,ASSIGN0A64]
3854 :     bool _t0A61#1 = phi(_t0A60,_t0A63)
3855 :     if _t0A61 then goto ASSIGN0A68 else goto JOIN0A66
3856 :     ASSIGN0A68: preds = [COND0A78]
3857 :     real _t0A67#1 = Probe<tensor[2],real>(F0638,pos0A5A);
3858 :     real _t0A69#1 = Probe<tensor[2],real>(T0630,v14069E);
3859 :     real _t0A6B#2 = Sub<real>(_t0A67,_t0A69);
3860 :     real _t0A73#1 = Mul<real>(_t0A6B,_t0A6B);
3861 :     real score0A75#1 = Add<real>(score0A47,_t0A73);
3862 :     goto JOIN0A66
3863 :     JOIN0A66: preds = [ASSIGN0A77,COND0A78]
3864 :     real score0A76#2 = phi(score0A75,score0A47)
3865 :     real _t0A79#1 = Dot<tensor[2]>(r00788,v1506A6);
3866 :     real _t0A7B#1 = Dot<tensor[2]>(r107B6,v1506A6);
3867 :     tensor[2] _t0A7D#1 = <tensor[2]>[_t0A79,_t0A7B];
3868 :     tensor[2] pos0A89#3 = Add<tensor[2]>(_t0A7D,_t07C6);
3869 :     bool _t0A8C#1 = Inside<2>(pos0A89,F0638);
3870 :     if _t0A8C then goto ASSIGN0A91 else goto ASSIGN0A93
3871 :     ASSIGN0A91: preds = [COND0A94]
3872 :     bool _t0A8F#1 = Inside<2>(v1506A6,T0630);
3873 :     goto JOIN0A8E
3874 :     JOIN0A8E: preds = [ASSIGN0A91,ASSIGN0A93]
3875 :     bool _t0A90#1 = phi(_t0A8F,_t0A92)
3876 :     if _t0A90 then goto ASSIGN0A97 else goto JOIN0A95
3877 :     ASSIGN0A97: preds = [COND0AA7]
3878 :     real _t0A96#1 = Probe<tensor[2],real>(F0638,pos0A89);
3879 :     real _t0A98#1 = Probe<tensor[2],real>(T0630,v1506A6);
3880 :     real _t0A9A#2 = Sub<real>(_t0A96,_t0A98);
3881 :     real _t0AA2#1 = Mul<real>(_t0A9A,_t0A9A);
3882 :     real score0AA4#1 = Add<real>(score0A76,_t0AA2);
3883 :     goto JOIN0A95
3884 :     JOIN0A95: preds = [ASSIGN0AA6,COND0AA7]
3885 :     real score0AA5#2 = phi(score0AA4,score0A76)
3886 :     real _t0AA8#1 = Dot<tensor[2]>(r00788,v1606AE);
3887 :     real _t0AAA#1 = Dot<tensor[2]>(r107B6,v1606AE);
3888 :     tensor[2] _t0AAC#1 = <tensor[2]>[_t0AA8,_t0AAA];
3889 :     tensor[2] pos0AB8#3 = Add<tensor[2]>(_t0AAC,_t07C6);
3890 :     bool _t0ABB#1 = Inside<2>(pos0AB8,F0638);
3891 :     if _t0ABB then goto ASSIGN0AC0 else goto ASSIGN0AC2
3892 :     ASSIGN0AC0: preds = [COND0AC3]
3893 :     bool _t0ABE#1 = Inside<2>(v1606AE,T0630);
3894 :     goto JOIN0ABD
3895 :     JOIN0ABD: preds = [ASSIGN0AC0,ASSIGN0AC2]
3896 :     bool _t0ABF#1 = phi(_t0ABE,_t0AC1)
3897 :     if _t0ABF then goto ASSIGN0AC6 else goto JOIN0AC4
3898 :     ASSIGN0AC6: preds = [COND0AD6]
3899 :     real _t0AC5#1 = Probe<tensor[2],real>(F0638,pos0AB8);
3900 :     real _t0AC7#1 = Probe<tensor[2],real>(T0630,v1606AE);
3901 :     real _t0AC9#2 = Sub<real>(_t0AC5,_t0AC7);
3902 :     real _t0AD1#1 = Mul<real>(_t0AC9,_t0AC9);
3903 :     real score0AD3#1 = Add<real>(score0AA5,_t0AD1);
3904 :     goto JOIN0AC4
3905 :     JOIN0AC4: preds = [ASSIGN0AD5,COND0AD6]
3906 :     real score0AD4#2 = phi(score0AD3,score0AA5)
3907 :     real _t0AD7#1 = Dot<tensor[2]>(r00788,v1706B6);
3908 :     real _t0AD9#1 = Dot<tensor[2]>(r107B6,v1706B6);
3909 :     tensor[2] _t0ADB#1 = <tensor[2]>[_t0AD7,_t0AD9];
3910 :     tensor[2] pos0AE7#3 = Add<tensor[2]>(_t0ADB,_t07C6);
3911 :     bool _t0AEA#1 = Inside<2>(pos0AE7,F0638);
3912 :     if _t0AEA then goto ASSIGN0AEF else goto ASSIGN0AF1
3913 :     ASSIGN0AEF: preds = [COND0AF2]
3914 :     bool _t0AED#1 = Inside<2>(v1706B6,T0630);
3915 :     goto JOIN0AEC
3916 :     JOIN0AEC: preds = [ASSIGN0AEF,ASSIGN0AF1]
3917 :     bool _t0AEE#1 = phi(_t0AED,_t0AF0)
3918 :     if _t0AEE then goto ASSIGN0AF5 else goto JOIN0AF3
3919 :     ASSIGN0AF5: preds = [COND0B05]
3920 :     real _t0AF4#1 = Probe<tensor[2],real>(F0638,pos0AE7);
3921 :     real _t0AF6#1 = Probe<tensor[2],real>(T0630,v1706B6);
3922 :     real _t0AF8#2 = Sub<real>(_t0AF4,_t0AF6);
3923 :     real _t0B00#1 = Mul<real>(_t0AF8,_t0AF8);
3924 :     real score0B02#1 = Add<real>(score0AD4,_t0B00);
3925 :     goto JOIN0AF3
3926 :     JOIN0AF3: preds = [ASSIGN0B04,COND0B05]
3927 :     real score0B03#2 = phi(score0B02,score0AD4)
3928 :     real _t0B06#1 = Dot<tensor[2]>(r00788,v1806C0);
3929 :     real _t0B08#1 = Dot<tensor[2]>(r107B6,v1806C0);
3930 :     tensor[2] _t0B0A#1 = <tensor[2]>[_t0B06,_t0B08];
3931 :     tensor[2] pos0B16#3 = Add<tensor[2]>(_t0B0A,_t07C6);
3932 :     bool _t0B19#1 = Inside<2>(pos0B16,F0638);
3933 :     if _t0B19 then goto ASSIGN0B1E else goto ASSIGN0B20
3934 :     ASSIGN0B1E: preds = [COND0B21]
3935 :     bool _t0B1C#1 = Inside<2>(v1806C0,T0630);
3936 :     goto JOIN0B1B
3937 :     JOIN0B1B: preds = [ASSIGN0B1E,ASSIGN0B20]
3938 :     bool _t0B1D#1 = phi(_t0B1C,_t0B1F)
3939 :     if _t0B1D then goto ASSIGN0B24 else goto JOIN0B22
3940 :     ASSIGN0B24: preds = [COND0B34]
3941 :     real _t0B23#1 = Probe<tensor[2],real>(F0638,pos0B16);
3942 :     real _t0B25#1 = Probe<tensor[2],real>(T0630,v1806C0);
3943 :     real _t0B27#2 = Sub<real>(_t0B23,_t0B25);
3944 :     real _t0B2F#1 = Mul<real>(_t0B27,_t0B27);
3945 :     real score0B31#1 = Add<real>(score0B03,_t0B2F);
3946 :     goto JOIN0B22
3947 :     JOIN0B22: preds = [ASSIGN0B33,COND0B34]
3948 :     real score0B32#2 = phi(score0B31,score0B03)
3949 :     real _t0B35#1 = Dot<tensor[2]>(r00788,v1906CA);
3950 :     real _t0B37#1 = Dot<tensor[2]>(r107B6,v1906CA);
3951 :     tensor[2] _t0B39#1 = <tensor[2]>[_t0B35,_t0B37];
3952 :     tensor[2] pos0B45#3 = Add<tensor[2]>(_t0B39,_t07C6);
3953 :     bool _t0B48#1 = Inside<2>(pos0B45,F0638);
3954 :     if _t0B48 then goto ASSIGN0B4D else goto ASSIGN0B4F
3955 :     ASSIGN0B4D: preds = [COND0B50]
3956 :     bool _t0B4B#1 = Inside<2>(v1906CA,T0630);
3957 :     goto JOIN0B4A
3958 :     JOIN0B4A: preds = [ASSIGN0B4D,ASSIGN0B4F]
3959 :     bool _t0B4C#1 = phi(_t0B4B,_t0B4E)
3960 :     if _t0B4C then goto ASSIGN0B53 else goto JOIN0B51
3961 :     ASSIGN0B53: preds = [COND0B63]
3962 :     real _t0B52#1 = Probe<tensor[2],real>(F0638,pos0B45);
3963 :     real _t0B54#1 = Probe<tensor[2],real>(T0630,v1906CA);
3964 :     real _t0B56#2 = Sub<real>(_t0B52,_t0B54);
3965 :     real _t0B5E#1 = Mul<real>(_t0B56,_t0B56);
3966 :     real score0B60#1 = Add<real>(score0B32,_t0B5E);
3967 :     goto JOIN0B51
3968 :     JOIN0B51: preds = [ASSIGN0B62,COND0B63]
3969 :     real score0B61#2 = phi(score0B60,score0B32)
3970 :     real _t0B64#1 = Dot<tensor[2]>(r00788,v2006D2);
3971 :     real _t0B66#1 = Dot<tensor[2]>(r107B6,v2006D2);
3972 :     tensor[2] _t0B68#1 = <tensor[2]>[_t0B64,_t0B66];
3973 :     tensor[2] pos0B74#3 = Add<tensor[2]>(_t0B68,_t07C6);
3974 :     bool _t0B77#1 = Inside<2>(pos0B74,F0638);
3975 :     if _t0B77 then goto ASSIGN0B7C else goto ASSIGN0B7E
3976 :     ASSIGN0B7C: preds = [COND0B7F]
3977 :     bool _t0B7A#1 = Inside<2>(v2006D2,T0630);
3978 :     goto JOIN0B79
3979 :     JOIN0B79: preds = [ASSIGN0B7C,ASSIGN0B7E]
3980 :     bool _t0B7B#1 = phi(_t0B7A,_t0B7D)
3981 :     if _t0B7B then goto ASSIGN0B82 else goto JOIN0B80
3982 :     ASSIGN0B82: preds = [COND0B92]
3983 :     real _t0B81#1 = Probe<tensor[2],real>(F0638,pos0B74);
3984 :     real _t0B83#1 = Probe<tensor[2],real>(T0630,v2006D2);
3985 :     real _t0B85#2 = Sub<real>(_t0B81,_t0B83);
3986 :     real _t0B8D#1 = Mul<real>(_t0B85,_t0B85);
3987 :     real score0B8F#1 = Add<real>(score0B61,_t0B8D);
3988 :     goto JOIN0B80
3989 :     JOIN0B80: preds = [ASSIGN0B91,COND0B92]
3990 :     real score0B90#2 = phi(score0B8F,score0B61)
3991 :     real _t0B93#1 = Dot<tensor[2]>(r00788,v2106DA);
3992 :     real _t0B95#1 = Dot<tensor[2]>(r107B6,v2106DA);
3993 :     tensor[2] _t0B97#1 = <tensor[2]>[_t0B93,_t0B95];
3994 :     tensor[2] pos0BA3#3 = Add<tensor[2]>(_t0B97,_t07C6);
3995 :     bool _t0BA6#1 = Inside<2>(pos0BA3,F0638);
3996 :     if _t0BA6 then goto ASSIGN0BAB else goto ASSIGN0BAD
3997 :     ASSIGN0BAB: preds = [COND0BAE]
3998 :     bool _t0BA9#1 = Inside<2>(v2106DA,T0630);
3999 :     goto JOIN0BA8
4000 :     JOIN0BA8: preds = [ASSIGN0BAB,ASSIGN0BAD]
4001 :     bool _t0BAA#1 = phi(_t0BA9,_t0BAC)
4002 :     if _t0BAA then goto ASSIGN0BB1 else goto JOIN0BAF
4003 :     ASSIGN0BB1: preds = [COND0BC1]
4004 :     real _t0BB0#1 = Probe<tensor[2],real>(F0638,pos0BA3);
4005 :     real _t0BB2#1 = Probe<tensor[2],real>(T0630,v2106DA);
4006 :     real _t0BB4#2 = Sub<real>(_t0BB0,_t0BB2);
4007 :     real _t0BBC#1 = Mul<real>(_t0BB4,_t0BB4);
4008 :     real score0BBE#1 = Add<real>(score0B90,_t0BBC);
4009 :     goto JOIN0BAF
4010 :     JOIN0BAF: preds = [ASSIGN0BC0,COND0BC1]
4011 :     real score0BBF#2 = phi(score0BBE,score0B90)
4012 :     real _t0BC2#1 = Dot<tensor[2]>(r00788,v2206E2);
4013 :     real _t0BC4#1 = Dot<tensor[2]>(r107B6,v2206E2);
4014 :     tensor[2] _t0BC6#1 = <tensor[2]>[_t0BC2,_t0BC4];
4015 :     tensor[2] pos0BD2#3 = Add<tensor[2]>(_t0BC6,_t07C6);
4016 :     bool _t0BD5#1 = Inside<2>(pos0BD2,F0638);
4017 :     if _t0BD5 then goto ASSIGN0BDA else goto ASSIGN0BDC
4018 :     ASSIGN0BDA: preds = [COND0BDD]
4019 :     bool _t0BD8#1 = Inside<2>(v2206E2,T0630);
4020 :     goto JOIN0BD7
4021 :     JOIN0BD7: preds = [ASSIGN0BDA,ASSIGN0BDC]
4022 :     bool _t0BD9#1 = phi(_t0BD8,_t0BDB)
4023 :     if _t0BD9 then goto ASSIGN0BE0 else goto JOIN0BDE
4024 :     ASSIGN0BE0: preds = [COND0BF0]
4025 :     real _t0BDF#1 = Probe<tensor[2],real>(F0638,pos0BD2);
4026 :     real _t0BE1#1 = Probe<tensor[2],real>(T0630,v2206E2);
4027 :     real _t0BE3#2 = Sub<real>(_t0BDF,_t0BE1);
4028 :     real _t0BEB#1 = Mul<real>(_t0BE3,_t0BE3);
4029 :     real score0BED#1 = Add<real>(score0BBF,_t0BEB);
4030 :     goto JOIN0BDE
4031 :     JOIN0BDE: preds = [ASSIGN0BEF,COND0BF0]
4032 :     real score0BEE#2 = phi(score0BED,score0BBF)
4033 :     real _t0BF1#1 = Dot<tensor[2]>(r00788,v2306EC);
4034 :     real _t0BF3#1 = Dot<tensor[2]>(r107B6,v2306EC);
4035 :     tensor[2] _t0BF5#1 = <tensor[2]>[_t0BF1,_t0BF3];
4036 :     tensor[2] pos0C01#3 = Add<tensor[2]>(_t0BF5,_t07C6);
4037 :     bool _t0C04#1 = Inside<2>(pos0C01,F0638);
4038 :     if _t0C04 then goto ASSIGN0C09 else goto ASSIGN0C0B
4039 :     ASSIGN0C09: preds = [COND0C0C]
4040 :     bool _t0C07#1 = Inside<2>(v2306EC,T0630);
4041 :     goto JOIN0C06
4042 :     JOIN0C06: preds = [ASSIGN0C09,ASSIGN0C0B]
4043 :     bool _t0C08#1 = phi(_t0C07,_t0C0A)
4044 :     if _t0C08 then goto ASSIGN0C0F else goto JOIN0C0D
4045 :     ASSIGN0C0F: preds = [COND0C1F]
4046 :     real _t0C0E#1 = Probe<tensor[2],real>(F0638,pos0C01);
4047 :     real _t0C10#1 = Probe<tensor[2],real>(T0630,v2306EC);
4048 :     real _t0C12#2 = Sub<real>(_t0C0E,_t0C10);
4049 :     real _t0C1A#1 = Mul<real>(_t0C12,_t0C12);
4050 :     real score0C1C#1 = Add<real>(score0BEE,_t0C1A);
4051 :     goto JOIN0C0D
4052 :     JOIN0C0D: preds = [ASSIGN0C1E,COND0C1F]
4053 :     real score0C1D#2 = phi(score0C1C,score0BEE)
4054 :     real _t0C20#1 = Dot<tensor[2]>(r00788,v2406F6);
4055 :     real _t0C22#1 = Dot<tensor[2]>(r107B6,v2406F6);
4056 :     tensor[2] _t0C24#1 = <tensor[2]>[_t0C20,_t0C22];
4057 :     tensor[2] pos0C30#4 = Add<tensor[2]>(_t0C24,_t07C6);
4058 :     bool _t0C33#1 = Inside<2>(pos0C30,F0638);
4059 :     if _t0C33 then goto ASSIGN0C38 else goto ASSIGN0C3A
4060 :     ASSIGN0C38: preds = [COND0C3B]
4061 :     bool _t0C36#1 = Inside<2>(v2406F6,T0630);
4062 :     goto JOIN0C35
4063 :     JOIN0C35: preds = [ASSIGN0C38,ASSIGN0C3A]
4064 :     bool _t0C37#1 = phi(_t0C36,_t0C39)
4065 :     if _t0C37 then goto ASSIGN0C3E else goto JOIN0C3C
4066 :     ASSIGN0C3E: preds = [COND0C4E]
4067 :     real _t0C3D#1 = Probe<tensor[2],real>(F0638,pos0C30);
4068 :     real _t0C3F#1 = Probe<tensor[2],real>(T0630,v2406F6);
4069 :     real _t0C41#2 = Sub<real>(_t0C3D,_t0C3F);
4070 :     real _t0C49#1 = Mul<real>(_t0C41,_t0C41);
4071 :     real score0C4B#1 = Add<real>(score0C1D,_t0C49);
4072 :     goto JOIN0C3C
4073 :     JOIN0C3C: preds = [ASSIGN0C4D,COND0C4E]
4074 :     real score0C4C#1 = phi(score0C4B,score0C1D)
4075 :     self.t = t0750;
4076 :     self.score = score0C4C;
4077 :     self.r0 = r00788;
4078 :     self.r1 = r107B6;
4079 :     self.pos = pos0C30;
4080 :     stabilize ()
4081 :     ASSIGN0C3A: preds = [COND0C3B]
4082 :     bool _t0C39#1 = false;
4083 :     goto JOIN0C35
4084 :     ASSIGN0C0B: preds = [COND0C0C]
4085 :     bool _t0C0A#1 = false;
4086 :     goto JOIN0C06
4087 :     ASSIGN0BDC: preds = [COND0BDD]
4088 :     bool _t0BDB#1 = false;
4089 :     goto JOIN0BD7
4090 :     ASSIGN0BAD: preds = [COND0BAE]
4091 :     bool _t0BAC#1 = false;
4092 :     goto JOIN0BA8
4093 :     ASSIGN0B7E: preds = [COND0B7F]
4094 :     bool _t0B7D#1 = false;
4095 :     goto JOIN0B79
4096 :     ASSIGN0B4F: preds = [COND0B50]
4097 :     bool _t0B4E#1 = false;
4098 :     goto JOIN0B4A
4099 :     ASSIGN0B20: preds = [COND0B21]
4100 :     bool _t0B1F#1 = false;
4101 :     goto JOIN0B1B
4102 :     ASSIGN0AF1: preds = [COND0AF2]
4103 :     bool _t0AF0#1 = false;
4104 :     goto JOIN0AEC
4105 :     ASSIGN0AC2: preds = [COND0AC3]
4106 :     bool _t0AC1#1 = false;
4107 :     goto JOIN0ABD
4108 :     ASSIGN0A93: preds = [COND0A94]
4109 :     bool _t0A92#1 = false;
4110 :     goto JOIN0A8E
4111 :     ASSIGN0A64: preds = [COND0A65]
4112 :     bool _t0A63#1 = false;
4113 :     goto JOIN0A5F
4114 :     ASSIGN0A35: preds = [COND0A36]
4115 :     bool _t0A34#1 = false;
4116 :     goto JOIN0A30
4117 :     ASSIGN0A06: preds = [COND0A07]
4118 :     bool _t0A05#1 = false;
4119 :     goto JOIN0A01
4120 :     ASSIGN09D7: preds = [COND09D8]
4121 :     bool _t09D6#1 = false;
4122 :     goto JOIN09D2
4123 :     ASSIGN09A8: preds = [COND09A9]
4124 :     bool _t09A7#1 = false;
4125 :     goto JOIN09A3
4126 :     ASSIGN0979: preds = [COND097A]
4127 :     bool _t0978#1 = false;
4128 :     goto JOIN0974
4129 :     ASSIGN094A: preds = [COND094B]
4130 :     bool _t0949#1 = false;
4131 :     goto JOIN0945
4132 :     ASSIGN091B: preds = [COND091C]
4133 :     bool _t091A#1 = false;
4134 :     goto JOIN0916
4135 :     ASSIGN08EC: preds = [COND08ED]
4136 :     bool _t08EB#1 = false;
4137 :     goto JOIN08E7
4138 :     ASSIGN08BD: preds = [COND08BE]
4139 :     bool _t08BC#1 = false;
4140 :     goto JOIN08B8
4141 :     ASSIGN088E: preds = [COND088F]
4142 :     bool _t088D#1 = false;
4143 :     goto JOIN0889
4144 :     ASSIGN085F: preds = [COND0860]
4145 :     bool _t085E#1 = false;
4146 :     goto JOIN085A
4147 :     ASSIGN0830: preds = [COND0831]
4148 :     bool _t082F#1 = false;
4149 :     goto JOIN082B
4150 :     ASSIGN0801: preds = [COND0802]
4151 :     bool _t0800#1 = false;
4152 :     goto JOIN07FC
4153 :     ASSIGN07D2: preds = [COND07D3]
4154 :     bool _t07D1#1 = false;
4155 :     goto JOIN07CD
4156 :     end Update
4157 :     method Stabilize
4158 :     ENTRY0C61: preds = []
4159 :     tensor[3] t0C57#1 = self.t;
4160 :     real score0C58#1 = self.score;
4161 :     tensor[2] r00C59#1 = self.r0;
4162 :     tensor[2] r10C5A#1 = self.r1;
4163 :     tensor[2] pos0C5B#1 = self.pos;
4164 :     self.t = t0C57;
4165 :     self.score = score0C58;
4166 :     self.r0 = r00C59;
4167 :     self.r1 = r10C5A;
4168 :     self.pos = pos0C5B;
4169 :     return ()
4170 :     end Stabilize
4171 :     end R
4172 :     #### end program ####
4173 :     ++ high-opt:unused
4174 :     ++ high-opt:unused
4175 :     ++ high-opt:unused
4176 :     ##### HighIL after normalization ####
4177 :     ## properties
4178 :     none
4179 :     ## globals
4180 :     global field T0630#75
4181 :     global field F0638#75
4182 :     global tensor[2] v00063E#5
4183 :     global tensor[2] v010644#5
4184 :     global tensor[2] v02064A#5
4185 :     global tensor[2] v030652#5
4186 :     global tensor[2] v04065A#5
4187 :     global tensor[2] v050660#5
4188 :     global tensor[2] v060666#5
4189 :     global tensor[2] v07066C#5
4190 :     global tensor[2] v080674#5
4191 :     global tensor[2] v09067C#5
4192 :     global tensor[2] v100682#5
4193 :     global tensor[2] v110688#5
4194 :     global tensor[2] v12068E#5
4195 :     global tensor[2] v130696#5
4196 :     global tensor[2] v14069E#5
4197 :     global tensor[2] v1506A6#5
4198 :     global tensor[2] v1606AE#5
4199 :     global tensor[2] v1706B6#5
4200 :     global tensor[2] v1806C0#5
4201 :     global tensor[2] v1906CA#5
4202 :     global tensor[2] v2006D2#5
4203 :     global tensor[2] v2106DA#5
4204 :     global tensor[2] v2206E2#5
4205 :     global tensor[2] v2306EC#5
4206 :     global tensor[2] v2406F6#5
4207 :     global string _t062C#1
4208 :     global image2D _t062E#1
4209 :     global kernel _t062A#3
4210 :     global string _t0634#1
4211 :     global image2D _t0636#1
4212 :     global real _t063A#19
4213 :     global real _t0642#30
4214 :     global real _t0650#19
4215 :     global real _t0648#30
4216 :     global real _t0658#19
4217 :     ## global initialization
4218 :     ENTRY06F8: preds = []
4219 :     kernel _t062A#3 = Kernel<bspln3,0>;
4220 :     string _t062C#1 = "square-template.nrrd";
4221 :     image2D _t062E#1 = LoadImage<IMAGE2D<int>>(_t062C);
4222 :     field T0630#75 = Field<2>(_t062E,_t062A);
4223 :     string _t0634#1 = "square-rotate.nrrd";
4224 :     image2D _t0636#1 = LoadImage<IMAGE2D<float>>(_t0634);
4225 :     field F0638#75 = Field<2>(_t0636,_t062A);
4226 :     real _t063A#19 = 0.0;
4227 :     tensor[2] v00063E#5 = <tensor[2]>[_t063A,_t063A];
4228 :     real _t0642#30 = 0.25e0;
4229 :     tensor[2] v010644#5 = <tensor[2]>[_t063A,_t0642];
4230 :     real _t0648#30 = 0.5e0;
4231 :     tensor[2] v02064A#5 = <tensor[2]>[_t063A,_t0648];
4232 :     real _t0650#19 = Neg<real>(_t0642);
4233 :     tensor[2] v030652#5 = <tensor[2]>[_t063A,_t0650];
4234 :     real _t0658#19 = Neg<real>(_t0648);
4235 :     tensor[2] v04065A#5 = <tensor[2]>[_t063A,_t0658];
4236 :     tensor[2] v050660#5 = <tensor[2]>[_t0642,_t063A];
4237 :     tensor[2] v060666#5 = <tensor[2]>[_t0642,_t0642];
4238 :     tensor[2] v07066C#5 = <tensor[2]>[_t0642,_t0648];
4239 :     tensor[2] v080674#5 = <tensor[2]>[_t0642,_t0650];
4240 :     tensor[2] v09067C#5 = <tensor[2]>[_t0642,_t0658];
4241 :     tensor[2] v100682#5 = <tensor[2]>[_t0648,_t063A];
4242 :     tensor[2] v110688#5 = <tensor[2]>[_t0648,_t0642];
4243 :     tensor[2] v12068E#5 = <tensor[2]>[_t0648,_t0648];
4244 :     tensor[2] v130696#5 = <tensor[2]>[_t0648,_t0650];
4245 :     tensor[2] v14069E#5 = <tensor[2]>[_t0648,_t0658];
4246 :     tensor[2] v1506A6#5 = <tensor[2]>[_t0650,_t063A];
4247 :     tensor[2] v1606AE#5 = <tensor[2]>[_t0650,_t0642];
4248 :     tensor[2] v1706B6#5 = <tensor[2]>[_t0650,_t0648];
4249 :     tensor[2] v1806C0#5 = <tensor[2]>[_t0650,_t0650];
4250 :     tensor[2] v1906CA#5 = <tensor[2]>[_t0650,_t0658];
4251 :     tensor[2] v2006D2#5 = <tensor[2]>[_t0658,_t063A];
4252 :     tensor[2] v2106DA#5 = <tensor[2]>[_t0658,_t0642];
4253 :     tensor[2] v2206E2#5 = <tensor[2]>[_t0658,_t0648];
4254 :     tensor[2] v2306EC#5 = <tensor[2]>[_t0658,_t0650];
4255 :     tensor[2] v2406F6#5 = <tensor[2]>[_t0658,_t0658];
4256 :     return (T0630,F0638,v00063E,v010644,v02064A,v030652,v04065A,v050660,v060666,v07066C,v080674,v09067C,v100682,v110688,v12068E,v130696,v14069E,v1506A6,v1606AE,v1706B6,v1806C0,v1906CA,v2006D2,v2106DA,v2206E2,v2306EC,v2406F6,_t062C,_t062E,_t062A,_t0634,_t0636,_t063A,_t0642,_t0650,_t0648,_t0658)
4257 :     ## initially
4258 :     ARRAY
4259 :     ENTRY0706: preds = []
4260 :     int _t06FA#4 = 0;
4261 :     int _t06FC#4 = 60;
4262 :     live vars = (_t06FC,_t06FA)
4263 :     for int i0708#1 = _t06FA .. _t06FC
4264 :     for int j0709#1 = _t06FA .. _t06FC
4265 :     for int k070A#1 = _t06FA .. _t06FC
4266 :     ENTRY070B: preds = []
4267 :     live vars = ()
4268 :     new R(i0708,j0709,k070A);
4269 :     ## strands
4270 :     strand R (int i070D#1, int j070E#1, int k070F#1)
4271 :     state: tensor[3] self.t;output real self.score;tensor[2] self.r0;tensor[2] self.r1;tensor[2] self.pos;
4272 :     ENTRY0749: preds = []
4273 :     real _t0715#1 = IntToReal(i070D);
4274 :     real _t0717#3 = 0.60e2;
4275 :     real _t0719#1 = Div<real>(_t0715,_t0717);
4276 :     real _t071B#3 = 0.5e0;
4277 :     real _t071D#1 = Sub<real>(_t0719,_t071B);
4278 :     real _t071F#1 = IntToReal(j070E);
4279 :     real _t0723#1 = Div<real>(_t071F,_t0717);
4280 :     real _t0727#1 = Sub<real>(_t0723,_t071B);
4281 :     real _t0729#1 = IntToReal(k070F);
4282 :     real _t072D#1 = Div<real>(_t0729,_t0717);
4283 :     real _t0731#1 = Sub<real>(_t072D,_t071B);
4284 :     tensor[3] t0733#1 = <tensor[3]>[_t071D,_t0727,_t0731];
4285 :     real score0735#3 = 0.0;
4286 :     tensor[2] r0073B#3 = <tensor[2]>[score0735,score0735];
4287 :     self.t = t0733;
4288 :     self.score = score0735;
4289 :     self.r0 = r0073B;
4290 :     self.r1 = r0073B;
4291 :     self.pos = r0073B;
4292 :     strand_init ()
4293 :     method Update
4294 :     ENTRY0C55: preds = []
4295 :     tensor[3] t0750#61 = self.t;
4296 :     real score0751#2 = self.score;
4297 :     real _t075A#2 = 0.1e1;
4298 :     real _t075C#3 = 0.2e1;
4299 :     int _t075E#1 = 2;
4300 :     real _t0760#6 = TensorSub<tensor[3]>(t0750,_t075E);
4301 :     real _t0762#1 = Mul<real>(_t075C,_t0760);
4302 :     real _t0768#1 = Mul<real>(_t0762,_t0760);
4303 :     real _t076A#2 = Sub<real>(_t075A,_t0768);
4304 :     real _t076E#1 = Neg<real>(_t075C);
4305 :     real _t077A#1 = Mul<real>(_t0760,_t0760);
4306 :     real _t077C#1 = Sub<real>(_t075A,_t077A);
4307 :     real _t077E#2 = sqrt(_t077C);
4308 :     real _t0780#1 = Mul<real>(_t076E,_t077E);
4309 :     real _t0786#1 = Mul<real>(_t0780,_t0760);
4310 :     tensor[2] r00788#26 = <tensor[2]>[_t076A,_t0786];
4311 :     real _t079C#1 = Mul<real>(_t075C,_t077E);
4312 :     real _t07A2#1 = Mul<real>(_t079C,_t0760);
4313 :     tensor[2] r107B6#26 = <tensor[2]>[_t07A2,_t076A];
4314 :     real _t07B8#1 = Dot<tensor[2]>(r00788,v00063E);
4315 :     real _t07BA#1 = Dot<tensor[2]>(r107B6,v00063E);
4316 :     tensor[2] _t07BC#1 = <tensor[2]>[_t07B8,_t07BA];
4317 :     int _t07BE#1 = 0;
4318 :     real _t07C0#1 = TensorSub<tensor[3]>(t0750,_t07BE);
4319 :     int _t07C2#1 = 1;
4320 :     real _t07C4#1 = TensorSub<tensor[3]>(t0750,_t07C2);
4321 :     tensor[2] _t07C6#25 = <tensor[2]>[_t07C0,_t07C4];
4322 :     tensor[2] pos07C8#3 = Add<tensor[2]>(_t07BC,_t07C6);
4323 :     bool _t07CB#1 = Inside<2>(pos07C8,F0638);
4324 :     if _t07CB then goto ASSIGN07D0 else goto ASSIGN07D2
4325 :     ASSIGN07D0: preds = [COND07D3]
4326 :     bool _t07CE#1 = Inside<2>(v00063E,T0630);
4327 :     goto JOIN07CD
4328 :     JOIN07CD: preds = [ASSIGN07D0,ASSIGN07D2]
4329 :     bool _t07CF#1 = phi(_t07CE,_t07D1)
4330 :     if _t07CF then goto ASSIGN07D6 else goto JOIN07D4
4331 :     ASSIGN07D6: preds = [COND07E6]
4332 :     real _t07D5#1 = Probe<tensor[2],real>(F0638,pos07C8);
4333 :     real _t07D7#1 = Probe<tensor[2],real>(T0630,v00063E);
4334 :     real _t07D9#2 = Sub<real>(_t07D5,_t07D7);
4335 :     real _t07E1#1 = Mul<real>(_t07D9,_t07D9);
4336 :     real score07E3#1 = Add<real>(score0751,_t07E1);
4337 :     goto JOIN07D4
4338 :     JOIN07D4: preds = [ASSIGN07E5,COND07E6]
4339 :     real score07E4#2 = phi(score07E3,score0751)
4340 :     real _t07E7#1 = Dot<tensor[2]>(r00788,v010644);
4341 :     real _t07E9#1 = Dot<tensor[2]>(r107B6,v010644);
4342 :     tensor[2] _t07EB#1 = <tensor[2]>[_t07E7,_t07E9];
4343 :     tensor[2] pos07F7#3 = Add<tensor[2]>(_t07EB,_t07C6);
4344 :     bool _t07FA#1 = Inside<2>(pos07F7,F0638);
4345 :     if _t07FA then goto ASSIGN07FF else goto ASSIGN0801
4346 :     ASSIGN07FF: preds = [COND0802]
4347 :     bool _t07FD#1 = Inside<2>(v010644,T0630);
4348 :     goto JOIN07FC
4349 :     JOIN07FC: preds = [ASSIGN07FF,ASSIGN0801]
4350 :     bool _t07FE#1 = phi(_t07FD,_t0800)
4351 :     if _t07FE then goto ASSIGN0805 else goto JOIN0803
4352 :     ASSIGN0805: preds = [COND0815]
4353 :     real _t0804#1 = Probe<tensor[2],real>(F0638,pos07F7);
4354 :     real _t0806#1 = Probe<tensor[2],real>(T0630,v010644);
4355 :     real _t0808#2 = Sub<real>(_t0804,_t0806);
4356 :     real _t0810#1 = Mul<real>(_t0808,_t0808);
4357 :     real score0812#1 = Add<real>(score07E4,_t0810);
4358 :     goto JOIN0803
4359 :     JOIN0803: preds = [ASSIGN0814,COND0815]
4360 :     real score0813#2 = phi(score0812,score07E4)
4361 :     real _t0816#1 = Dot<tensor[2]>(r00788,v02064A);
4362 :     real _t0818#1 = Dot<tensor[2]>(r107B6,v02064A);
4363 :     tensor[2] _t081A#1 = <tensor[2]>[_t0816,_t0818];
4364 :     tensor[2] pos0826#3 = Add<tensor[2]>(_t081A,_t07C6);
4365 :     bool _t0829#1 = Inside<2>(pos0826,F0638);
4366 :     if _t0829 then goto ASSIGN082E else goto ASSIGN0830
4367 :     ASSIGN082E: preds = [COND0831]
4368 :     bool _t082C#1 = Inside<2>(v02064A,T0630);
4369 :     goto JOIN082B
4370 :     JOIN082B: preds = [ASSIGN082E,ASSIGN0830]
4371 :     bool _t082D#1 = phi(_t082C,_t082F)
4372 :     if _t082D then goto ASSIGN0834 else goto JOIN0832
4373 :     ASSIGN0834: preds = [COND0844]
4374 :     real _t0833#1 = Probe<tensor[2],real>(F0638,pos0826);
4375 :     real _t0835#1 = Probe<tensor[2],real>(T0630,v02064A);
4376 :     real _t0837#2 = Sub<real>(_t0833,_t0835);
4377 :     real _t083F#1 = Mul<real>(_t0837,_t0837);
4378 :     real score0841#1 = Add<real>(score0813,_t083F);
4379 :     goto JOIN0832
4380 :     JOIN0832: preds = [ASSIGN0843,COND0844]
4381 :     real score0842#2 = phi(score0841,score0813)
4382 :     real _t0845#1 = Dot<tensor[2]>(r00788,v030652);
4383 :     real _t0847#1 = Dot<tensor[2]>(r107B6,v030652);
4384 :     tensor[2] _t0849#1 = <tensor[2]>[_t0845,_t0847];
4385 :     tensor[2] pos0855#3 = Add<tensor[2]>(_t0849,_t07C6);
4386 :     bool _t0858#1 = Inside<2>(pos0855,F0638);
4387 :     if _t0858 then goto ASSIGN085D else goto ASSIGN085F
4388 :     ASSIGN085D: preds = [COND0860]
4389 :     bool _t085B#1 = Inside<2>(v030652,T0630);
4390 :     goto JOIN085A
4391 :     JOIN085A: preds = [ASSIGN085D,ASSIGN085F]
4392 :     bool _t085C#1 = phi(_t085B,_t085E)
4393 :     if _t085C then goto ASSIGN0863 else goto JOIN0861
4394 :     ASSIGN0863: preds = [COND0873]
4395 :     real _t0862#1 = Probe<tensor[2],real>(F0638,pos0855);
4396 :     real _t0864#1 = Probe<tensor[2],real>(T0630,v030652);
4397 :     real _t0866#2 = Sub<real>(_t0862,_t0864);
4398 :     real _t086E#1 = Mul<real>(_t0866,_t0866);
4399 :     real score0870#1 = Add<real>(score0842,_t086E);
4400 :     goto JOIN0861
4401 :     JOIN0861: preds = [ASSIGN0872,COND0873]
4402 :     real score0871#2 = phi(score0870,score0842)
4403 :     real _t0874#1 = Dot<tensor[2]>(r00788,v04065A);
4404 :     real _t0876#1 = Dot<tensor[2]>(r107B6,v04065A);
4405 :     tensor[2] _t0878#1 = <tensor[2]>[_t0874,_t0876];
4406 :     tensor[2] pos0884#3 = Add<tensor[2]>(_t0878,_t07C6);
4407 :     bool _t0887#1 = Inside<2>(pos0884,F0638);
4408 :     if _t0887 then goto ASSIGN088C else goto ASSIGN088E
4409 :     ASSIGN088C: preds = [COND088F]
4410 :     bool _t088A#1 = Inside<2>(v04065A,T0630);
4411 :     goto JOIN0889
4412 :     JOIN0889: preds = [ASSIGN088C,ASSIGN088E]
4413 :     bool _t088B#1 = phi(_t088A,_t088D)
4414 :     if _t088B then goto ASSIGN0892 else goto JOIN0890
4415 :     ASSIGN0892: preds = [COND08A2]
4416 :     real _t0891#1 = Probe<tensor[2],real>(F0638,pos0884);
4417 :     real _t0893#1 = Probe<tensor[2],real>(T0630,v04065A);
4418 :     real _t0895#2 = Sub<real>(_t0891,_t0893);
4419 :     real _t089D#1 = Mul<real>(_t0895,_t0895);
4420 :     real score089F#1 = Add<real>(score0871,_t089D);
4421 :     goto JOIN0890
4422 :     JOIN0890: preds = [ASSIGN08A1,COND08A2]
4423 :     real score08A0#2 = phi(score089F,score0871)
4424 :     real _t08A3#1 = Dot<tensor[2]>(r00788,v050660);
4425 :     real _t08A5#1 = Dot<tensor[2]>(r107B6,v050660);
4426 :     tensor[2] _t08A7#1 = <tensor[2]>[_t08A3,_t08A5];
4427 :     tensor[2] pos08B3#3 = Add<tensor[2]>(_t08A7,_t07C6);
4428 :     bool _t08B6#1 = Inside<2>(pos08B3,F0638);
4429 :