30 using View =
typename std::tuple_element_t<0, ContainerOverSubrelations>::View;
31 auto tmp =
static_cast<View
>(in.get(C::data_copy_sel)) * (
FF(1) -
static_cast<View
>(in.get(C::data_copy_sel)));
35 using View =
typename std::tuple_element_t<1, ContainerOverSubrelations>::View;
36 auto tmp =
static_cast<View
>(in.get(C::data_copy_sel_cd_copy)) *
37 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_sel_cd_copy)));
41 using View =
typename std::tuple_element_t<2, ContainerOverSubrelations>::View;
43 static_cast<View
>(in.get(C::data_copy_start)) * (
FF(1) -
static_cast<View
>(in.get(C::data_copy_start)));
47 using View =
typename std::tuple_element_t<3, ContainerOverSubrelations>::View;
48 auto tmp =
static_cast<View
>(in.get(C::data_copy_end)) * (
FF(1) -
static_cast<View
>(in.get(C::data_copy_end)));
52 using View =
typename std::tuple_element_t<4, ContainerOverSubrelations>::View;
53 auto tmp = (
static_cast<View
>(in.get(C::data_copy_start)) +
static_cast<View
>(in.get(C::data_copy_end))) *
54 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_sel)));
58 using View =
typename std::tuple_element_t<5, ContainerOverSubrelations>::View;
59 auto tmp = (
FF(1) -
CView(data_copy_LATCH_CONDITION)) *
60 (
static_cast<View
>(in.get(C::data_copy_sel)) -
static_cast<View
>(in.get(C::data_copy_sel_shift)));
64 using View =
typename std::tuple_element_t<6, ContainerOverSubrelations>::View;
65 auto tmp =
static_cast<View
>(in.get(C::data_copy_sel_shift)) *
66 (
static_cast<View
>(in.get(C::data_copy_start_shift)) -
CView(data_copy_LATCH_CONDITION));
70 using View =
typename std::tuple_element_t<7, ContainerOverSubrelations>::View;
72 (
static_cast<View
>(in.get(C::data_copy_sel_cd_copy_start)) -
73 static_cast<View
>(in.get(C::data_copy_start)) *
static_cast<View
>(in.get(C::data_copy_sel_cd_copy)));
77 using View =
typename std::tuple_element_t<8, ContainerOverSubrelations>::View;
78 auto tmp = (
static_cast<View
>(in.get(C::data_copy_sel_rd_copy_start)) -
79 static_cast<View
>(in.get(C::data_copy_start)) *
80 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_sel_cd_copy))));
84 using View =
typename std::tuple_element_t<9, ContainerOverSubrelations>::View;
86 (
static_cast<View
>(in.get(C::data_copy_offset_plus_size)) -
87 static_cast<View
>(in.get(C::data_copy_start)) *
88 (
static_cast<View
>(in.get(C::data_copy_offset)) +
static_cast<View
>(in.get(C::data_copy_copy_size))));
92 using View =
typename std::tuple_element_t<10, ContainerOverSubrelations>::View;
93 auto tmp =
static_cast<View
>(in.get(C::data_copy_start)) *
94 (
static_cast<View
>(in.get(C::data_copy_mem_size)) -
CView(constants_AVM_MEMORY_SIZE));
98 using View =
typename std::tuple_element_t<11, ContainerOverSubrelations>::View;
99 auto tmp = (
static_cast<View
>(in.get(C::data_copy_read_addr_upper_bound)) -
100 static_cast<View
>(in.get(C::data_copy_start)) *
101 (
static_cast<View
>(in.get(C::data_copy_src_addr)) +
CView(data_copy_READ_INDEX_UPPER_BOUND)));
105 using View =
typename std::tuple_element_t<12, ContainerOverSubrelations>::View;
106 auto tmp = (
static_cast<View
>(in.get(C::data_copy_clamped_read_index_upper_bound)) -
107 static_cast<View
>(in.get(C::data_copy_start)) *
108 (
CView(data_copy_READ_INDEX_UPPER_BOUND) *
109 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_src_reads_exceed_mem))) +
110 (
static_cast<View
>(in.get(C::data_copy_mem_size)) -
111 static_cast<View
>(in.get(C::data_copy_src_addr))) *
112 static_cast<View
>(in.get(C::data_copy_src_reads_exceed_mem))));
116 using View =
typename std::tuple_element_t<13, ContainerOverSubrelations>::View;
118 (
static_cast<View
>(in.get(C::data_copy_write_addr_upper_bound)) -
119 static_cast<View
>(in.get(C::data_copy_start)) * (
static_cast<View
>(in.get(C::data_copy_dst_addr)) +
120 static_cast<View
>(in.get(C::data_copy_copy_size))));
124 using View =
typename std::tuple_element_t<14, ContainerOverSubrelations>::View;
125 auto tmp = (
static_cast<View
>(in.get(C::data_copy_start_no_err)) -
126 static_cast<View
>(in.get(C::data_copy_start)) *
127 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_dst_out_of_range_err))));
131 using View =
typename std::tuple_element_t<15, ContainerOverSubrelations>::View;
132 auto tmp =
static_cast<View
>(in.get(C::data_copy_sel_write_count_is_zero)) *
133 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_sel_write_count_is_zero)));
137 using View =
typename std::tuple_element_t<16, ContainerOverSubrelations>::View;
138 auto tmp =
static_cast<View
>(in.get(C::data_copy_start_no_err)) *
139 ((
static_cast<View
>(in.get(C::data_copy_copy_size)) *
140 (
static_cast<View
>(in.get(C::data_copy_sel_write_count_is_zero)) *
141 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_write_count_zero_inv))) +
142 static_cast<View
>(in.get(C::data_copy_write_count_zero_inv))) -
144 static_cast<View
>(in.get(C::data_copy_sel_write_count_is_zero)));
148 using View =
typename std::tuple_element_t<17, ContainerOverSubrelations>::View;
149 auto tmp =
static_cast<View
>(in.get(C::data_copy_start_no_err)) *
150 static_cast<View
>(in.get(C::data_copy_sel_write_count_is_zero)) *
151 (
static_cast<View
>(in.get(C::data_copy_end)) -
FF(1));
155 using View =
typename std::tuple_element_t<18, ContainerOverSubrelations>::View;
156 auto tmp =
CView(data_copy_SEL_PERFORM_COPY) *
157 ((
CView(data_copy_WRITE_COUNT_MINUS_ONE) *
158 (
static_cast<View
>(in.get(C::data_copy_end)) *
159 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_write_count_minus_one_inv))) +
160 static_cast<View
>(in.get(C::data_copy_write_count_minus_one_inv))) -
162 static_cast<View
>(in.get(C::data_copy_end)));
166 using View =
typename std::tuple_element_t<19, ContainerOverSubrelations>::View;
167 auto tmp =
static_cast<View
>(in.get(C::data_copy_start)) *
168 static_cast<View
>(in.get(C::data_copy_dst_out_of_range_err)) *
169 (
static_cast<View
>(in.get(C::data_copy_end)) -
FF(1));
173 using View =
typename std::tuple_element_t<20, ContainerOverSubrelations>::View;
174 auto tmp =
static_cast<View
>(in.get(C::data_copy_start_no_err)) *
175 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_sel_write_count_is_zero))) *
176 (
static_cast<View
>(in.get(C::data_copy_reads_left)) -
177 (
static_cast<View
>(in.get(C::data_copy_clamped_read_index_upper_bound)) -
178 static_cast<View
>(in.get(C::data_copy_offset))) *
179 static_cast<View
>(in.get(C::data_copy_sel_has_reads)));
183 using View =
typename std::tuple_element_t<21, ContainerOverSubrelations>::View;
184 auto tmp = (
static_cast<View
>(in.get(C::data_copy_sel_mem_write)) -
CView(data_copy_SEL_PERFORM_COPY));
188 using View =
typename std::tuple_element_t<22, ContainerOverSubrelations>::View;
189 auto tmp =
static_cast<View
>(in.get(C::data_copy_sel)) * (
FF(1) -
static_cast<View
>(in.get(C::data_copy_end))) *
190 ((
static_cast<View
>(in.get(C::data_copy_copy_size_shift)) -
191 static_cast<View
>(in.get(C::data_copy_copy_size))) +
196 using View =
typename std::tuple_element_t<23, ContainerOverSubrelations>::View;
197 auto tmp =
static_cast<View
>(in.get(C::data_copy_sel)) * (
FF(1) -
static_cast<View
>(in.get(C::data_copy_end))) *
198 ((
static_cast<View
>(in.get(C::data_copy_dst_addr_shift)) -
199 static_cast<View
>(in.get(C::data_copy_dst_addr))) -
204 using View =
typename std::tuple_element_t<24, ContainerOverSubrelations>::View;
206 (
FF(1) -
CView(data_copy_LATCH_CONDITION)) * (
static_cast<View
>(in.get(C::data_copy_src_context_id_shift)) -
207 static_cast<View
>(in.get(C::data_copy_src_context_id)));
211 using View =
typename std::tuple_element_t<25, ContainerOverSubrelations>::View;
213 (
FF(1) -
CView(data_copy_LATCH_CONDITION)) * (
static_cast<View
>(in.get(C::data_copy_dst_context_id_shift)) -
214 static_cast<View
>(in.get(C::data_copy_dst_context_id)));
218 using View =
typename std::tuple_element_t<26, ContainerOverSubrelations>::View;
219 auto tmp = (
FF(1) -
CView(data_copy_LATCH_CONDITION)) *
220 (
static_cast<View
>(in.get(C::data_copy_clk_shift)) -
static_cast<View
>(in.get(C::data_copy_clk)));
224 using View =
typename std::tuple_element_t<27, ContainerOverSubrelations>::View;
226 (
FF(1) -
CView(data_copy_LATCH_CONDITION)) * (
static_cast<View
>(in.get(C::data_copy_sel_cd_copy_shift)) -
227 static_cast<View
>(in.get(C::data_copy_sel_cd_copy)));
231 using View =
typename std::tuple_element_t<28, ContainerOverSubrelations>::View;
233 static_cast<View
>(in.get(C::data_copy_start_no_err)) *
234 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_sel_write_count_is_zero))) *
235 ((
static_cast<View
>(in.get(C::data_copy_read_addr)) -
static_cast<View
>(in.get(C::data_copy_src_addr))) -
236 static_cast<View
>(in.get(C::data_copy_offset)));
240 using View =
typename std::tuple_element_t<29, ContainerOverSubrelations>::View;
241 auto tmp =
static_cast<View
>(in.get(C::data_copy_sel)) *
242 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_padding))) *
243 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_end))) *
244 ((
static_cast<View
>(in.get(C::data_copy_read_addr_shift)) -
245 static_cast<View
>(in.get(C::data_copy_read_addr))) -
250 using View =
typename std::tuple_element_t<30, ContainerOverSubrelations>::View;
251 auto tmp =
static_cast<View
>(in.get(C::data_copy_sel)) *
252 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_padding))) *
253 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_end))) *
254 ((
static_cast<View
>(in.get(C::data_copy_reads_left_shift)) -
255 static_cast<View
>(in.get(C::data_copy_reads_left))) +
260 using View =
typename std::tuple_element_t<31, ContainerOverSubrelations>::View;
262 static_cast<View
>(in.get(C::data_copy_padding)) * (
FF(1) -
static_cast<View
>(in.get(C::data_copy_padding)));
266 using View =
typename std::tuple_element_t<32, ContainerOverSubrelations>::View;
267 auto tmp =
CView(data_copy_SEL_PERFORM_COPY) *
268 ((
static_cast<View
>(in.get(C::data_copy_reads_left)) *
269 (
static_cast<View
>(in.get(C::data_copy_padding)) *
270 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_reads_left_inv))) +
271 static_cast<View
>(in.get(C::data_copy_reads_left_inv))) -
273 static_cast<View
>(in.get(C::data_copy_padding)));
277 using View =
typename std::tuple_element_t<33, ContainerOverSubrelations>::View;
278 auto tmp = (
FF(1) -
static_cast<View
>(in.get(C::data_copy_end))) *
279 static_cast<View
>(in.get(C::data_copy_padding)) *
280 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_padding_shift)));
284 using View =
typename std::tuple_element_t<34, ContainerOverSubrelations>::View;
285 auto tmp =
static_cast<View
>(in.get(C::data_copy_is_top_level)) *
286 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_is_top_level)));
290 using View =
typename std::tuple_element_t<35, ContainerOverSubrelations>::View;
291 auto tmp =
static_cast<View
>(in.get(C::data_copy_sel_cd_copy)) *
292 ((
static_cast<View
>(in.get(C::data_copy_src_context_id)) *
293 (
static_cast<View
>(in.get(C::data_copy_is_top_level)) *
294 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_parent_id_inv))) +
295 static_cast<View
>(in.get(C::data_copy_parent_id_inv))) -
297 static_cast<View
>(in.get(C::data_copy_is_top_level)));
301 using View =
typename std::tuple_element_t<36, ContainerOverSubrelations>::View;
302 auto tmp = (
static_cast<View
>(in.get(C::data_copy_sel_mem_read)) -
303 CView(data_copy_SEL_PERFORM_COPY) *
304 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_is_top_level)) *
305 static_cast<View
>(in.get(C::data_copy_sel_cd_copy))) *
306 (
FF(1) -
static_cast<View
>(in.get(C::data_copy_padding))));
310 using View =
typename std::tuple_element_t<37, ContainerOverSubrelations>::View;
311 auto tmp =
static_cast<View
>(in.get(C::data_copy_padding)) *
static_cast<View
>(in.get(C::data_copy_value));
315 using View =
typename std::tuple_element_t<38, ContainerOverSubrelations>::View;
316 auto tmp = (
static_cast<View
>(in.get(C::data_copy_cd_copy_col_read)) -
317 CView(data_copy_SEL_PERFORM_COPY) * (
FF(1) -
static_cast<View
>(in.get(C::data_copy_padding))) *
318 static_cast<View
>(in.get(C::data_copy_is_top_level)) *
319 static_cast<View
>(in.get(C::data_copy_sel_cd_copy)));
323 using View =
typename std::tuple_element_t<39, ContainerOverSubrelations>::View;
324 auto tmp = (
static_cast<View
>(in.get(C::data_copy_read_addr_plus_one)) -
325 static_cast<View
>(in.get(C::data_copy_cd_copy_col_read)) *
326 (
static_cast<View
>(in.get(C::data_copy_read_addr)) +
FF(1)));