Construct SetCreation

Performance Diagrams

Construct SetCreation 001000000010000000200000002000000030000000300000004000000040000000CPython 2.7Nuitka (main)Nuitka (develop)Nuitka (factory)4335179688.95192307692307257.0CPython 2.734599520242.31730769230768306.89002185745665Nuitka (main)34599520395.6826923076923306.89002185745665Nuitka (develop)34599520549.0480769230769306.89002185745665Nuitka (factory)Construct SetCreationTicks Construct SetCreation 001000000010000000200000002000000030000000300000004000000040000000CPython 3.8Nuitka (main)Nuitka (develop)Nuitka (factory)4480055988.95192307692307257.0CPython 3.835050913242.31730769230768310.77806828601956Nuitka (main)35050860395.6826923076923310.7783606286973Nuitka (develop)35050860549.0480769230769310.7783606286973Nuitka (factory)Construct SetCreationTicks

Source Code with Construct

module_value1 = 1000

def calledRepeatedly(set_value1):
    # Force frame and eliminate forward propagation (currently).
    module_value1

# construct_begin
    l = {
        set_value1,
        set_value1,
        set_value1,
        set_value1,
        set_value1
    }
# construct_alternative



    return l, set_value1

import itertools
for x in itertools.repeat(None, 50000):
    calledRepeatedly(module_value1)

print("OK.")

Source Code without Construct

module_value1 = 1000

def calledRepeatedly(set_value1):
    # Force frame and eliminate forward propagation (currently).
    module_value1

# construct_begin







# construct_alternative
    l = 1
# construct_end

    return l, set_value1

import itertools
for x in itertools.repeat(None, 50000):
    calledRepeatedly(module_value1)

print("OK.")

Context Diff of Source Code


Construct
Baseline
22 def calledRepeatedly(set_value1): 22 def calledRepeatedly(set_value1):
23     # Force frame and eliminate forward propagation (currently). 23     # Force frame and eliminate forward propagation (currently).
24     module_value1 24     module_value1
25 25
26 # construct_begin 26 # construct_begin
n 27     l = { n
28         set_value1,
29         set_value1,
30         set_value1,
31         set_value1,
32         set_value1
33     }
34 # construct_alternative
35 27
36 28
t t 29  
30  
31  
32  
33  
34 # construct_alternative
35     l = 1
36 # construct_end
37 37
38     return l, set_value1 38     return l, set_value1
39 39
40 import itertools 40 import itertools
41 for x in itertools.repeat(None, 50000): 41 for x in itertools.repeat(None, 50000):

Context Diff of Generated Code


Construct
Baseline
31 31
32 PyObject *module___main__; 32 PyObject *module___main__;
33 PyDictObject *moduledict___main__; 33 PyDictObject *moduledict___main__;
34 34
35 /* The declarations of module constants used, if any. */ 35 /* The declarations of module constants used, if any. */
n 36 static PyObject *mod_consts[17]; n 36 static PyObject *mod_consts[18];
37 #ifndef __NUITKA_NO_ASSERT__ 37 #ifndef __NUITKA_NO_ASSERT__
n 38 static Py_hash_t mod_consts_hash[17]; n 38 static Py_hash_t mod_consts_hash[18];
39 #endif 39 #endif
40 40
41 static PyObject *module_filename_obj = NULL; 41 static PyObject *module_filename_obj = NULL;
42 42
43 /* Indicator if this modules private constants were created yet. */ 43 /* Indicator if this modules private constants were created yet. */
48     if (constants_created == false) { 48     if (constants_created == false) {
49         loadConstantsBlob(&mod_consts[0], UNTRANSLATE("__main__")); 49         loadConstantsBlob(&mod_consts[0], UNTRANSLATE("__main__"));
50         constants_created = true; 50         constants_created = true;
51 51
52 #ifndef __NUITKA_NO_ASSERT__ 52 #ifndef __NUITKA_NO_ASSERT__
n 53         for(int i = 0; i < 17; i++) { n 53         for(int i = 0; i < 18; i++) {
54             mod_consts_hash[i] = DEEP_HASH(mod_consts[i]); 54             mod_consts_hash[i] = DEEP_HASH(mod_consts[i]);
55         } 55         }
56 #endif 56 #endif
57     } 57     }
58 } 58 }
68 #ifndef __NUITKA_NO_ASSERT__ 68 #ifndef __NUITKA_NO_ASSERT__
69 void checkModuleConstants___main__(void) { 69 void checkModuleConstants___main__(void) {
70     // The module may not have been used at all, then ignore this. 70     // The module may not have been used at all, then ignore this.
71     if (constants_created == false) return; 71     if (constants_created == false) return;
72 72
n 73     for(int i = 0; i < 17; i++) { n 73     for(int i = 0; i < 18; i++) {
74         assert(mod_consts_hash[i] == DEEP_HASH(mod_consts[i])); 74         assert(mod_consts_hash[i] == DEEP_HASH(mod_consts[i]));
75         CHECK_OBJECT_DEEP(mod_consts[i]); 75         CHECK_OBJECT_DEEP(mod_consts[i]);
76     } 76     }
77 } 77 }
78 #endif 78 #endif
82 static PyCodeObject *codeobj_4246f42e9352d0072fcc34ace4c84caf; 82 static PyCodeObject *codeobj_4246f42e9352d0072fcc34ace4c84caf;
83 /* For use in "MainProgram.c". */ 83 /* For use in "MainProgram.c". */
84 PyCodeObject *codeobj_main = NULL; 84 PyCodeObject *codeobj_main = NULL;
85 85
86 static void createModuleCodeObjects(void) { 86 static void createModuleCodeObjects(void) {
n 87     module_filename_obj = mod_consts[2]; CHECK_OBJECT(module_filename_obj); n 87     module_filename_obj = mod_consts[3]; CHECK_OBJECT(module_filename_obj);
88     codeobj_825f1bb60601833a9748daf72376406f = MAKE_CODEOBJECT(module_filename_obj, 1, CO_NOFREE, mod_consts[15], NULL, NULL, 0, 0, 0); 88     codeobj_825f1bb60601833a9748daf72376406f = MAKE_CODEOBJECT(module_filename_obj, 1, CO_NOFREE, mod_consts[16], NULL, NULL, 0, 0, 0);
89     codeobj_4246f42e9352d0072fcc34ace4c84caf = MAKE_CODEOBJECT(module_filename_obj, 22, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE, mod_consts[7], mod_consts[16], NULL, 1, 0, 0); 89     codeobj_4246f42e9352d0072fcc34ace4c84caf = MAKE_CODEOBJECT(module_filename_obj, 22, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE, mod_consts[8], mod_consts[17], NULL, 1, 0, 0);
90 } 90 }
91 91
92 // The module function declarations. 92 // The module function declarations.
93 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly(); 93 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly();
94 94
100     NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED(); 100     NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
101 #endif 101 #endif
102 102
103     // Local variable declarations. 103     // Local variable declarations.
104     PyObject *par_set_value1 = python_pars[0]; 104     PyObject *par_set_value1 = python_pars[0];
n 105     PyObject *var_l = NULL; n
106     struct Nuitka_FrameObject *frame_4246f42e9352d0072fcc34ace4c84caf; 105     struct Nuitka_FrameObject *frame_4246f42e9352d0072fcc34ace4c84caf;
107     NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL; 106     NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
108     NUITKA_MAY_BE_UNUSED nuitka_void tmp_unused; 107     NUITKA_MAY_BE_UNUSED nuitka_void tmp_unused;
109     PyObject *exception_type = NULL; 108     PyObject *exception_type = NULL;
110     PyObject *exception_value = NULL; 109     PyObject *exception_value = NULL;
111     PyTracebackObject *exception_tb = NULL; 110     PyTracebackObject *exception_tb = NULL;
112     NUITKA_MAY_BE_UNUSED int exception_lineno = 0; 111     NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
n 113     int tmp_res; n
114     static struct Nuitka_FrameObject *cache_frame_4246f42e9352d0072fcc34ace4c84caf = NULL; 112     static struct Nuitka_FrameObject *cache_frame_4246f42e9352d0072fcc34ace4c84caf = NULL;
115     PyObject *tmp_return_value = NULL; 113     PyObject *tmp_return_value = NULL;
n 116     PyObject *exception_keeper_type_1; n
117     PyObject *exception_keeper_value_1;
118     PyTracebackObject *exception_keeper_tb_1;
119     NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;
120 114
121     // Actual function body. 115     // Actual function body.
n 122     // Tried code: n
123     if (isFrameUnusable(cache_frame_4246f42e9352d0072fcc34ace4c84caf)) { 116     if (isFrameUnusable(cache_frame_4246f42e9352d0072fcc34ace4c84caf)) {
124         Py_XDECREF(cache_frame_4246f42e9352d0072fcc34ace4c84caf); 117         Py_XDECREF(cache_frame_4246f42e9352d0072fcc34ace4c84caf);
125 118
126 #if _DEBUG_REFCOUNTS 119 #if _DEBUG_REFCOUNTS
127         if (cache_frame_4246f42e9352d0072fcc34ace4c84caf == NULL) { 120         if (cache_frame_4246f42e9352d0072fcc34ace4c84caf == NULL) {
160 153
161             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb); 154             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
162 155
163 156
164             exception_lineno = 24; 157             exception_lineno = 24;
n 165             type_description_1 = "oo"; n 158             type_description_1 = "oN";
166             goto frame_exception_exit_1; 159             goto frame_exception_exit_1;
167         } 160         }
n 168     } n
169     {
170         PyObject *tmp_assign_source_1;
171         PyObject *tmp_set_element_1;
172         CHECK_OBJECT(par_set_value1);
173         tmp_set_element_1 = par_set_value1;
174         tmp_assign_source_1 = PySet_New(NULL);
175         assert(tmp_assign_source_1);
176         tmp_res = PySet_Add(tmp_assign_source_1, tmp_set_element_1);
177         if (tmp_res != 0) {
178             assert(ERROR_OCCURRED());
179  
180             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
181             Py_DECREF(tmp_assign_source_1);
182  
183             exception_lineno = 28;
184             type_description_1 = "oo";
185             goto frame_exception_exit_1;
186         }
187         CHECK_OBJECT(par_set_value1);
188         tmp_set_element_1 = par_set_value1;
189         tmp_res = PySet_Add(tmp_assign_source_1, tmp_set_element_1);
190         if (tmp_res != 0) {
191             assert(ERROR_OCCURRED());
192  
193             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
194             Py_DECREF(tmp_assign_source_1);
195  
196             exception_lineno = 29;
197             type_description_1 = "oo";
198             goto frame_exception_exit_1;
199         }
200         CHECK_OBJECT(par_set_value1);
201         tmp_set_element_1 = par_set_value1;
202         tmp_res = PySet_Add(tmp_assign_source_1, tmp_set_element_1);
203         if (tmp_res != 0) {
204             assert(ERROR_OCCURRED());
205  
206             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
207             Py_DECREF(tmp_assign_source_1);
208  
209             exception_lineno = 30;
210             type_description_1 = "oo";
211             goto frame_exception_exit_1;
212         }
213         CHECK_OBJECT(par_set_value1);
214         tmp_set_element_1 = par_set_value1;
215         tmp_res = PySet_Add(tmp_assign_source_1, tmp_set_element_1);
216         if (tmp_res != 0) {
217             assert(ERROR_OCCURRED());
218  
219             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
220             Py_DECREF(tmp_assign_source_1);
221  
222             exception_lineno = 31;
223             type_description_1 = "oo";
224             goto frame_exception_exit_1;
225         }
226         CHECK_OBJECT(par_set_value1);
227         tmp_set_element_1 = par_set_value1;
228         tmp_res = PySet_Add(tmp_assign_source_1, tmp_set_element_1);
229         if (tmp_res != 0) {
230             assert(ERROR_OCCURRED());
231  
232             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
233             Py_DECREF(tmp_assign_source_1);
234  
235             exception_lineno = 32;
236             type_description_1 = "oo";
237             goto frame_exception_exit_1;
238         }
239         assert(var_l == NULL);
240         var_l = tmp_assign_source_1;
241     } 161     }
242 162
243 #if 0 163 #if 0
244     RESTORE_FRAME_EXCEPTION(frame_4246f42e9352d0072fcc34ace4c84caf); 164     RESTORE_FRAME_EXCEPTION(frame_4246f42e9352d0072fcc34ace4c84caf);
245 #endif 165 #endif
264     // Attaches locals to frame if any. 184     // Attaches locals to frame if any.
265     Nuitka_Frame_AttachLocals( 185     Nuitka_Frame_AttachLocals(
266         frame_4246f42e9352d0072fcc34ace4c84caf, 186         frame_4246f42e9352d0072fcc34ace4c84caf,
267         type_description_1, 187         type_description_1,
268         par_set_value1, 188         par_set_value1,
n 269         var_l n 189         NULL
270     ); 190     );
271 191
272 192
273     // Release cached frame if used for exception. 193     // Release cached frame if used for exception.
274     if (frame_4246f42e9352d0072fcc34ace4c84caf == cache_frame_4246f42e9352d0072fcc34ace4c84caf) { 194     if (frame_4246f42e9352d0072fcc34ace4c84caf == cache_frame_4246f42e9352d0072fcc34ace4c84caf) {
285 205
286     // Put the previous frame back on top. 206     // Put the previous frame back on top.
287     popFrameStack(); 207     popFrameStack();
288 208
289     // Return the error. 209     // Return the error.
n 290     goto try_except_handler_1; n 210     goto function_exception_exit;
291 211
292     frame_no_exception_1:; 212     frame_no_exception_1:;
293     { 213     {
294         PyObject *tmp_tuple_element_1; 214         PyObject *tmp_tuple_element_1;
n 295         CHECK_OBJECT(var_l); n
296         tmp_tuple_element_1 = var_l; 215         tmp_tuple_element_1 = mod_consts[1];
297         tmp_return_value = PyTuple_New(2); 216         tmp_return_value = PyTuple_New(2);
298         PyTuple_SET_ITEM0(tmp_return_value, 0, tmp_tuple_element_1); 217         PyTuple_SET_ITEM0(tmp_return_value, 0, tmp_tuple_element_1);
299         CHECK_OBJECT(par_set_value1); 218         CHECK_OBJECT(par_set_value1);
300         tmp_tuple_element_1 = par_set_value1; 219         tmp_tuple_element_1 = par_set_value1;
301         PyTuple_SET_ITEM0(tmp_return_value, 1, tmp_tuple_element_1); 220         PyTuple_SET_ITEM0(tmp_return_value, 1, tmp_tuple_element_1);
n 302         goto try_return_handler_1; n
303     }
304     NUITKA_CANNOT_GET_HERE("tried codes exits in all cases");
305     return NULL;
306     // Return handler code:
307     try_return_handler_1:;
308     CHECK_OBJECT(var_l);
309     Py_DECREF(var_l);
310     var_l = NULL;
311     goto function_return_exit; 221         goto function_return_exit;
312     // Exception handler code: 222     }
313     try_except_handler_1:;
314     exception_keeper_type_1 = exception_type;
315     exception_keeper_value_1 = exception_value;
316     exception_keeper_tb_1 = exception_tb;
317     exception_keeper_lineno_1 = exception_lineno;
318     exception_type = NULL;
319     exception_value = NULL;
320     exception_tb = NULL;
321     exception_lineno = 0;
322  
323     // Re-raise.
324     exception_type = exception_keeper_type_1;
325     exception_value = exception_keeper_value_1;
326     exception_tb = exception_keeper_tb_1;
327     exception_lineno = exception_keeper_lineno_1;
328  
329     goto function_exception_exit;
330     // End of try:
331 223
332     NUITKA_CANNOT_GET_HERE("Return statement must have exited already."); 224     NUITKA_CANNOT_GET_HERE("Return statement must have exited already.");
333     return NULL; 225     return NULL;
334 226
335 function_exception_exit: 227 function_exception_exit:
354 246
355 247
356 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly() { 248 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly() {
357     struct Nuitka_FunctionObject *result = Nuitka_Function_New( 249     struct Nuitka_FunctionObject *result = Nuitka_Function_New(
358         impl___main__$$$function__1_calledRepeatedly, 250         impl___main__$$$function__1_calledRepeatedly,
n 359         mod_consts[7], n 251         mod_consts[8],
360 #if PYTHON_VERSION >= 0x300 252 #if PYTHON_VERSION >= 0x300
361         NULL, 253         NULL,
362 #endif 254 #endif
363         codeobj_4246f42e9352d0072fcc34ace4c84caf, 255         codeobj_4246f42e9352d0072fcc34ace4c84caf,
364         NULL, 256         NULL,
739 631
740     // Module code. 632     // Module code.
741     { 633     {
742         PyObject *tmp_assign_source_1; 634         PyObject *tmp_assign_source_1;
743         tmp_assign_source_1 = Py_None; 635         tmp_assign_source_1 = Py_None;
n 744         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[1], tmp_assign_source_1); n 636         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[2], tmp_assign_source_1);
745     } 637     }
746     { 638     {
747         PyObject *tmp_assign_source_2; 639         PyObject *tmp_assign_source_2;
n 748         tmp_assign_source_2 = mod_consts[2]; n 640         tmp_assign_source_2 = mod_consts[3];
749         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[3], tmp_assign_source_2); 641         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[4], tmp_assign_source_2);
750     } 642     }
751     { 643     {
752         PyObject *tmp_assign_source_3; 644         PyObject *tmp_assign_source_3;
753         tmp_assign_source_3 = Py_None; 645         tmp_assign_source_3 = Py_None;
n 754         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[4], tmp_assign_source_3); n 646         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[5], tmp_assign_source_3);
755     } 647     }
756     { 648     {
757         PyObject *tmp_assign_source_4; 649         PyObject *tmp_assign_source_4;
758         tmp_assign_source_4 = PyDict_New(); 650         tmp_assign_source_4 = PyDict_New();
n 759         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[5], tmp_assign_source_4); n 651         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[6], tmp_assign_source_4);
760     } 652     }
761     { 653     {
762         PyObject *tmp_assign_source_5; 654         PyObject *tmp_assign_source_5;
n 763         tmp_assign_source_5 = mod_consts[6]; n 655         tmp_assign_source_5 = mod_consts[7];
764         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[0], tmp_assign_source_5); 656         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[0], tmp_assign_source_5);
765     } 657     }
766     { 658     {
767         PyObject *tmp_assign_source_6; 659         PyObject *tmp_assign_source_6;
768 660
769 661
770         tmp_assign_source_6 = MAKE_FUNCTION___main__$$$function__1_calledRepeatedly(); 662         tmp_assign_source_6 = MAKE_FUNCTION___main__$$$function__1_calledRepeatedly();
771 663
n 772         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[7], tmp_assign_source_6); n 664         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[8], tmp_assign_source_6);
773     } 665     }
774     { 666     {
775         PyObject *tmp_assign_source_7; 667         PyObject *tmp_assign_source_7;
776         PyObject *tmp_name_value_1; 668         PyObject *tmp_name_value_1;
777         PyObject *tmp_globals_arg_value_1; 669         PyObject *tmp_globals_arg_value_1;
778         PyObject *tmp_locals_arg_value_1; 670         PyObject *tmp_locals_arg_value_1;
779         PyObject *tmp_fromlist_value_1; 671         PyObject *tmp_fromlist_value_1;
780         PyObject *tmp_level_value_1; 672         PyObject *tmp_level_value_1;
n 781         tmp_name_value_1 = mod_consts[8]; n 673         tmp_name_value_1 = mod_consts[9];
782         tmp_globals_arg_value_1 = (PyObject *)moduledict___main__; 674         tmp_globals_arg_value_1 = (PyObject *)moduledict___main__;
783         tmp_locals_arg_value_1 = Py_None; 675         tmp_locals_arg_value_1 = Py_None;
784         tmp_fromlist_value_1 = Py_None; 676         tmp_fromlist_value_1 = Py_None;
n 785         tmp_level_value_1 = mod_consts[9]; n 677         tmp_level_value_1 = mod_consts[10];
786         tmp_assign_source_7 = IMPORT_MODULE5(tmp_name_value_1, tmp_globals_arg_value_1, tmp_locals_arg_value_1, tmp_fromlist_value_1, tmp_level_value_1); 678         tmp_assign_source_7 = IMPORT_MODULE5(tmp_name_value_1, tmp_globals_arg_value_1, tmp_locals_arg_value_1, tmp_fromlist_value_1, tmp_level_value_1);
787         assert(!(tmp_assign_source_7 == NULL)); 679         assert(!(tmp_assign_source_7 == NULL));
n 788         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[8], tmp_assign_source_7); n 680         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[9], tmp_assign_source_7);
789     } 681     }
790     // Frame without reuse. 682     // Frame without reuse.
791     frame_825f1bb60601833a9748daf72376406f = MAKE_MODULE_FRAME(codeobj_825f1bb60601833a9748daf72376406f, module___main__); 683     frame_825f1bb60601833a9748daf72376406f = MAKE_MODULE_FRAME(codeobj_825f1bb60601833a9748daf72376406f, module___main__);
792 684
793     // Push the new frame as the currently active one, and we should be exclusively 685     // Push the new frame as the currently active one, and we should be exclusively
798     // Framed code: 690     // Framed code:
799     { 691     {
800         PyObject *tmp_assign_source_8; 692         PyObject *tmp_assign_source_8;
801         PyObject *tmp_iter_arg_1; 693         PyObject *tmp_iter_arg_1;
802         PyObject *tmp_called_instance_1; 694         PyObject *tmp_called_instance_1;
n 803         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[8]); n 695         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[9]);
804 696
805         if (unlikely(tmp_called_instance_1 == NULL)) { 697         if (unlikely(tmp_called_instance_1 == NULL)) {
n 806             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[8]); n 698             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[9]);
807         } 699         }
808 700
809         assert(!(tmp_called_instance_1 == NULL)); 701         assert(!(tmp_called_instance_1 == NULL));
810         frame_825f1bb60601833a9748daf72376406f->m_frame.f_lineno = 41; 702         frame_825f1bb60601833a9748daf72376406f->m_frame.f_lineno = 41;
811         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2( 703         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2(
812             tmp_called_instance_1, 704             tmp_called_instance_1,
n 813             mod_consts[10], n 705             mod_consts[11],
814             &PyTuple_GET_ITEM(mod_consts[11], 0) 706             &PyTuple_GET_ITEM(mod_consts[12], 0)
815         ); 707         );
816 708
817         if (tmp_iter_arg_1 == NULL) { 709         if (tmp_iter_arg_1 == NULL) {
818             assert(ERROR_OCCURRED()); 710             assert(ERROR_OCCURRED());
819 711
869     } 761     }
870     { 762     {
871         PyObject *tmp_assign_source_10; 763         PyObject *tmp_assign_source_10;
872         CHECK_OBJECT(tmp_for_loop_1__iter_value); 764         CHECK_OBJECT(tmp_for_loop_1__iter_value);
873         tmp_assign_source_10 = tmp_for_loop_1__iter_value; 765         tmp_assign_source_10 = tmp_for_loop_1__iter_value;
n 874         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[12], tmp_assign_source_10); n 766         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[13], tmp_assign_source_10);
875     } 767     }
876     { 768     {
877         PyObject *tmp_called_value_1; 769         PyObject *tmp_called_value_1;
878         PyObject *tmp_call_result_1; 770         PyObject *tmp_call_result_1;
879         PyObject *tmp_args_element_value_1; 771         PyObject *tmp_args_element_value_1;
n 880         tmp_called_value_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[7]); n 772         tmp_called_value_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[8]);
881 773
882         if (unlikely(tmp_called_value_1 == NULL)) { 774         if (unlikely(tmp_called_value_1 == NULL)) {
n 883             tmp_called_value_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[7]); n 775             tmp_called_value_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[8]);
884         } 776         }
885 777
886         if (tmp_called_value_1 == NULL) { 778         if (tmp_called_value_1 == NULL) {
887             assert(ERROR_OCCURRED()); 779             assert(ERROR_OCCURRED());
888 780
967     Py_DECREF(tmp_for_loop_1__for_iterator); 859     Py_DECREF(tmp_for_loop_1__for_iterator);
968     tmp_for_loop_1__for_iterator = NULL; 860     tmp_for_loop_1__for_iterator = NULL;
969     { 861     {
970         PyObject *tmp_called_value_2; 862         PyObject *tmp_called_value_2;
971         PyObject *tmp_call_result_2; 863         PyObject *tmp_call_result_2;
n 972         tmp_called_value_2 = LOOKUP_BUILTIN(mod_consts[13]); n 864         tmp_called_value_2 = LOOKUP_BUILTIN(mod_consts[14]);
973         assert(tmp_called_value_2 != NULL); 865         assert(tmp_called_value_2 != NULL);
974         frame_825f1bb60601833a9748daf72376406f->m_frame.f_lineno = 44; 866         frame_825f1bb60601833a9748daf72376406f->m_frame.f_lineno = 44;
t 975         tmp_call_result_2 = CALL_FUNCTION_WITH_POSARGS1(tmp_called_value_2, mod_consts[14]); t 867         tmp_call_result_2 = CALL_FUNCTION_WITH_POSARGS1(tmp_called_value_2, mod_consts[15]);
976 868
977         if (tmp_call_result_2 == NULL) { 869         if (tmp_call_result_2 == NULL) {
978             assert(ERROR_OCCURRED()); 870             assert(ERROR_OCCURRED());
979 871
980             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb); 872             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);