/* Generated by Nim Compiler v0.16.0 */ /* (c) 2017 Andreas Rumpf */ /* The generated code is subject to the original license. */ #define NIM_INTBITS 32 #include "nimbase.h" #undef linux typedef struct Tnode_bROa11lyF5vxEN9aYNbHmhw Tnode_bROa11lyF5vxEN9aYNbHmhw; typedef struct Ttype_LTUWCZolpovw9cWE3JBWSUw Ttype_LTUWCZolpovw9cWE3JBWSUw; typedef struct Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw; typedef struct NimStringDesc NimStringDesc; typedef struct TGenericSeq TGenericSeq; typedef struct Tsym_AXG7xcvKqaxY6koRX1xkCw Tsym_AXG7xcvKqaxY6koRX1xkCw; typedef struct Tident_4umxGerWTHGPwUms7Yqu3g Tident_4umxGerWTHGPwUms7Yqu3g; typedef struct TY_ehmV9bTklH2Gt9cXHV9c0HLeQ TY_ehmV9bTklH2Gt9cXHV9c0HLeQ; typedef struct TY_pxbIse2JUQkJU0n9blV9bY5g TY_pxbIse2JUQkJU0n9blV9bY5g; typedef struct Tidobj_raN9cHVgzmvaXisezY9aGg9cg Tidobj_raN9cHVgzmvaXisezY9aGg9cg; typedef struct TNimObject TNimObject; typedef struct TNimType TNimType; typedef struct TNimNode TNimNode; typedef struct TY_zuqP4Riz26Oi5fWgPYVEgA TY_zuqP4Riz26Oi5fWgPYVEgA; typedef struct TY_iGkpo9aKQdr3NWelKC4cnJA TY_iGkpo9aKQdr3NWelKC4cnJA; typedef struct Tloc_EtHNvCB0bgfu9bFjzx9cb6aA Tloc_EtHNvCB0bgfu9bFjzx9cb6aA; typedef struct Ropeobj_HF4qJnb6xiOddgPmsxodtQ Ropeobj_HF4qJnb6xiOddgPmsxodtQ; typedef struct Cell_1zcF9cV8XIAtbN8h5HRUB8g Cell_1zcF9cV8XIAtbN8h5HRUB8g; typedef struct Cellseq_Axo1XVm9aaQueTOldv8le5w Cellseq_Axo1XVm9aaQueTOldv8le5w; typedef struct Gcheap_1TRH1TZMaVZTnLNcIHuNFQ Gcheap_1TRH1TZMaVZTnLNcIHuNFQ; typedef struct Gcstack_7fytPA5bBsob6See21YMRA Gcstack_7fytPA5bBsob6See21YMRA; typedef struct Memregion_x81NhDv59b8ercDZ9bi85jyg Memregion_x81NhDv59b8ercDZ9bi85jyg; typedef struct Smallchunk_tXn60W2f8h3jgAYdEmy5NQ Smallchunk_tXn60W2f8h3jgAYdEmy5NQ; typedef struct Llchunk_XsENErzHIZV9bhvyJx56wGw Llchunk_XsENErzHIZV9bhvyJx56wGw; typedef struct Bigchunk_Rv9c70Uhp2TytkX7eH78qEg Bigchunk_Rv9c70Uhp2TytkX7eH78qEg; typedef struct Intset_EZObFrE3NC9bIb3YMkY9crZA Intset_EZObFrE3NC9bIb3YMkY9crZA; typedef struct Trunk_W0r8S0Y3UGke6T9bIUWnnuw Trunk_W0r8S0Y3UGke6T9bIUWnnuw; typedef struct Avlnode_IaqjtwKhxLEpvDS9bct9blEw Avlnode_IaqjtwKhxLEpvDS9bct9blEw; typedef struct Gcstat_0RwLoVBHZPfUAcLczmfQAg Gcstat_0RwLoVBHZPfUAcLczmfQAg; typedef struct Cellset_jG87P0AI9aZtss9ccTYBIISQ Cellset_jG87P0AI9aZtss9ccTYBIISQ; typedef struct Pagedesc_fublkgIY4LG3mT51LU2WHg Pagedesc_fublkgIY4LG3mT51LU2WHg; typedef struct TY_DXS6mEo7PVUFJkirsQ9bNQA TY_DXS6mEo7PVUFJkirsQ9bNQA; typedef struct Tstrtable_f07aOS3dr28kGa5wcE29aFA Tstrtable_f07aOS3dr28kGa5wcE29aFA; typedef struct TY_sksVpmPRIkNR9axiwtD1Guw TY_sksVpmPRIkNR9axiwtD1Guw; typedef struct Tlib_4f9aBgmqEuj7uWJdBBGcRgA Tlib_4f9aBgmqEuj7uWJdBBGcRgA; typedef struct TY_a09bGTAl9ceOKTAytYdkbyKg TY_a09bGTAl9ceOKTAytYdkbyKg; typedef struct Basechunk_Sdq7WpT6qAH858F5ZEdG3w Basechunk_Sdq7WpT6qAH858F5ZEdG3w; typedef struct Freecell_u6M5LHprqzkn9axr04yg9bGQ Freecell_u6M5LHprqzkn9axr04yg9bGQ; typedef struct Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA; typedef struct Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q; struct Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw { NI16 line; NI16 col; NI32 fileindex; }; typedef NU16 Tnodeflag_jyh9acXHkhZANSSvPIY7ZLg_Set; typedef NU8 Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw; struct TGenericSeq { NI len; NI reserved; }; struct NimStringDesc { TGenericSeq Sup; NIM_CHAR data[SEQ_DECL_SIZE]; }; struct Tnode_bROa11lyF5vxEN9aYNbHmhw { Ttype_LTUWCZolpovw9cWE3JBWSUw* typ; Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info; Tnodeflag_jyh9acXHkhZANSSvPIY7ZLg_Set flags; Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind; union{ struct {NI64 intval; } S1; struct {NF floatval; } S2; struct {NimStringDesc* strval; } S3; struct {Tsym_AXG7xcvKqaxY6koRX1xkCw* sym; } S4; struct {Tident_4umxGerWTHGPwUms7Yqu3g* ident; } S5; struct {TY_ehmV9bTklH2Gt9cXHV9c0HLeQ* sons; } S6; } kindU; NimStringDesc* comment; }; typedef NU8 Tnimkind_jIBKr1ejBgsfM33Kxw4j7A; typedef NU8 Tnimtypeflag_v8QUszD1sWlSIWZz7mC4bQ_Set; typedef N_NIMCALL_PTR(void, TY_ojoeKfW4VYIm36I9cpDTQIg) (void* p0, NI op0); typedef N_NIMCALL_PTR(void*, TY_WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p0); struct TNimType { NI size; Tnimkind_jIBKr1ejBgsfM33Kxw4j7A kind; Tnimtypeflag_v8QUszD1sWlSIWZz7mC4bQ_Set flags; TNimType* base; TNimNode* node; void* finalizer; TY_ojoeKfW4VYIm36I9cpDTQIg marker; TY_WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy; }; struct TNimObject { TNimType* m_type; }; struct Tidobj_raN9cHVgzmvaXisezY9aGg9cg { TNimObject Sup; NI id; }; typedef NU8 Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag; typedef NU8 Tcallingconvention_yjAJ8w0h1PBaSwSGJ3P7IA; typedef NU32 Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw_Set; typedef NU8 Tlockind_O7PRFZKuiBBWbku09cayVBg; typedef NU8 Tstorageloc_JK9cKMX3XnqHaUky9b6gkGEw; typedef NU16 Tlocflag_o2bqJgR4ceIupnUSpxiudA_Set; struct Tloc_EtHNvCB0bgfu9bFjzx9cb6aA { Tlockind_O7PRFZKuiBBWbku09cayVBg k; Tstorageloc_JK9cKMX3XnqHaUky9b6gkGEw s; Tlocflag_o2bqJgR4ceIupnUSpxiudA_Set flags; Ttype_LTUWCZolpovw9cWE3JBWSUw* t; Ropeobj_HF4qJnb6xiOddgPmsxodtQ* r; }; struct Ttype_LTUWCZolpovw9cWE3JBWSUw { Tidobj_raN9cHVgzmvaXisezY9aGg9cg Sup; Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag kind; Tcallingconvention_yjAJ8w0h1PBaSwSGJ3P7IA callconv; Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw_Set flags; TY_zuqP4Riz26Oi5fWgPYVEgA* sons; Tnode_bROa11lyF5vxEN9aYNbHmhw* n; Tsym_AXG7xcvKqaxY6koRX1xkCw* owner; Tsym_AXG7xcvKqaxY6koRX1xkCw* sym; Tsym_AXG7xcvKqaxY6koRX1xkCw* destructor; Tsym_AXG7xcvKqaxY6koRX1xkCw* deepcopy; Tsym_AXG7xcvKqaxY6koRX1xkCw* assignment; TY_iGkpo9aKQdr3NWelKC4cnJA* methods; NI64 size; NI16 align; NI16 locklevel; Tloc_EtHNvCB0bgfu9bFjzx9cb6aA loc; Ttype_LTUWCZolpovw9cWE3JBWSUw* typeinst; }; struct Cell_1zcF9cV8XIAtbN8h5HRUB8g { NI refcount; TNimType* typ; }; struct Cellseq_Axo1XVm9aaQueTOldv8le5w { NI len; NI cap; Cell_1zcF9cV8XIAtbN8h5HRUB8g** d; }; typedef Smallchunk_tXn60W2f8h3jgAYdEmy5NQ* TY_SiRwrEKZdLgxqz9a9aoVBglg[512]; typedef Trunk_W0r8S0Y3UGke6T9bIUWnnuw* TY_lh2A89ahMmYg9bCmpVaplLbA[256]; struct Intset_EZObFrE3NC9bIb3YMkY9crZA { TY_lh2A89ahMmYg9bCmpVaplLbA data; }; struct Memregion_x81NhDv59b8ercDZ9bi85jyg { NI minlargeobj; NI maxlargeobj; TY_SiRwrEKZdLgxqz9a9aoVBglg freesmallchunks; Llchunk_XsENErzHIZV9bhvyJx56wGw* llmem; NI currmem; NI maxmem; NI freemem; NI lastsize; Bigchunk_Rv9c70Uhp2TytkX7eH78qEg* freechunkslist; Intset_EZObFrE3NC9bIb3YMkY9crZA chunkstarts; Avlnode_IaqjtwKhxLEpvDS9bct9blEw* root; Avlnode_IaqjtwKhxLEpvDS9bct9blEw* deleted; Avlnode_IaqjtwKhxLEpvDS9bct9blEw* last; Avlnode_IaqjtwKhxLEpvDS9bct9blEw* freeavlnodes; NIM_BOOL locked; NIM_BOOL blockchunksizeincrease; NI nextchunksize; }; struct Gcstat_0RwLoVBHZPfUAcLczmfQAg { NI stackscans; NI cyclecollections; NI maxthreshold; NI maxstacksize; NI maxstackcells; NI cycletablesize; NI64 maxpause; }; struct Cellset_jG87P0AI9aZtss9ccTYBIISQ { NI counter; NI max; Pagedesc_fublkgIY4LG3mT51LU2WHg* head; Pagedesc_fublkgIY4LG3mT51LU2WHg** data; }; struct Gcheap_1TRH1TZMaVZTnLNcIHuNFQ { Gcstack_7fytPA5bBsob6See21YMRA* stack; void* stackbottom; NI cyclethreshold; Cellseq_Axo1XVm9aaQueTOldv8le5w zct; Cellseq_Axo1XVm9aaQueTOldv8le5w decstack; Cellseq_Axo1XVm9aaQueTOldv8le5w tempstack; NI recgclock; Memregion_x81NhDv59b8ercDZ9bi85jyg region; Gcstat_0RwLoVBHZPfUAcLczmfQAg stat; Cellset_jG87P0AI9aZtss9ccTYBIISQ marked; Cellseq_Axo1XVm9aaQueTOldv8le5w additionalroots; }; typedef NU8 Tsymkind_cNCW9acsSznmEccl1fgQwkw; struct Tstrtable_f07aOS3dr28kGa5wcE29aFA { NI counter; TY_sksVpmPRIkNR9axiwtD1Guw* data; }; typedef NU16 Tmagic_shZhZOdbVC5nnFvcXQAImg; typedef NU32 Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw_Set; typedef NU32 Toption_WspMeQySXNP2XoTWR5MTgg_Set; struct Tsym_AXG7xcvKqaxY6koRX1xkCw { Tidobj_raN9cHVgzmvaXisezY9aGg9cg Sup; Tsymkind_cNCW9acsSznmEccl1fgQwkw kind; union{ struct {TY_zuqP4Riz26Oi5fWgPYVEgA* typeinstcache; } S1; struct {TY_DXS6mEo7PVUFJkirsQ9bNQA* procinstcache; Tsym_AXG7xcvKqaxY6koRX1xkCw* gcunsafetyreason; } S2; struct {TY_DXS6mEo7PVUFJkirsQ9bNQA* usedgenerics; Tstrtable_f07aOS3dr28kGa5wcE29aFA tab; } S3; struct {Tsym_AXG7xcvKqaxY6koRX1xkCw* guard; NI bitsize; } S4; } kindU; Tmagic_shZhZOdbVC5nnFvcXQAImg magic; Ttype_LTUWCZolpovw9cWE3JBWSUw* typ; Tident_4umxGerWTHGPwUms7Yqu3g* name; Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info; Tsym_AXG7xcvKqaxY6koRX1xkCw* owner; Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw_Set flags; Tnode_bROa11lyF5vxEN9aYNbHmhw* ast; Toption_WspMeQySXNP2XoTWR5MTgg_Set options; NI position; NI offset; Tloc_EtHNvCB0bgfu9bFjzx9cb6aA loc; Tlib_4f9aBgmqEuj7uWJdBBGcRgA* annex; Tnode_bROa11lyF5vxEN9aYNbHmhw* constraint; }; struct Tident_4umxGerWTHGPwUms7Yqu3g { Tidobj_raN9cHVgzmvaXisezY9aGg9cg Sup; NimStringDesc* s; Tident_4umxGerWTHGPwUms7Yqu3g* next; NI h; }; typedef NU8 Tnimnodekind_unfNsxrcATrufDZmpBq4HQ; struct TNimNode { Tnimnodekind_unfNsxrcATrufDZmpBq4HQ kind; NI offset; TNimType* typ; NCSTRING name; NI len; TNimNode** sons; }; struct TY_a09bGTAl9ceOKTAytYdkbyKg { NI Field0; Tsym_AXG7xcvKqaxY6koRX1xkCw* Field1; }; struct Ropeobj_HF4qJnb6xiOddgPmsxodtQ { TNimObject Sup; Ropeobj_HF4qJnb6xiOddgPmsxodtQ* left; Ropeobj_HF4qJnb6xiOddgPmsxodtQ* right; NI length; NimStringDesc* data; }; struct Gcstack_7fytPA5bBsob6See21YMRA { Gcstack_7fytPA5bBsob6See21YMRA* prev; Gcstack_7fytPA5bBsob6See21YMRA* next; void* starts; void* pos; NI maxstacksize; }; struct Basechunk_Sdq7WpT6qAH858F5ZEdG3w { NI prevsize; NI size; NIM_BOOL used; }; struct Smallchunk_tXn60W2f8h3jgAYdEmy5NQ { Basechunk_Sdq7WpT6qAH858F5ZEdG3w Sup; Smallchunk_tXn60W2f8h3jgAYdEmy5NQ* next; Smallchunk_tXn60W2f8h3jgAYdEmy5NQ* prev; Freecell_u6M5LHprqzkn9axr04yg9bGQ* freelist; NI free; NI acc; NF data; }; struct Llchunk_XsENErzHIZV9bhvyJx56wGw { NI size; NI acc; Llchunk_XsENErzHIZV9bhvyJx56wGw* next; }; struct Bigchunk_Rv9c70Uhp2TytkX7eH78qEg { Basechunk_Sdq7WpT6qAH858F5ZEdG3w Sup; Bigchunk_Rv9c70Uhp2TytkX7eH78qEg* next; Bigchunk_Rv9c70Uhp2TytkX7eH78qEg* prev; NI align; NF data; }; typedef NI TY_9agrCtWKhCnWWMJpKKugJag[16]; struct Trunk_W0r8S0Y3UGke6T9bIUWnnuw { Trunk_W0r8S0Y3UGke6T9bIUWnnuw* next; NI key; TY_9agrCtWKhCnWWMJpKKugJag bits; }; typedef Avlnode_IaqjtwKhxLEpvDS9bct9blEw* TY_0aOLqZchNi8nWtMTi8ND8w[2]; struct Avlnode_IaqjtwKhxLEpvDS9bct9blEw { TY_0aOLqZchNi8nWtMTi8ND8w link; NI key; NI upperbound; NI level; }; struct Pagedesc_fublkgIY4LG3mT51LU2WHg { Pagedesc_fublkgIY4LG3mT51LU2WHg* next; NI key; TY_9agrCtWKhCnWWMJpKKugJag bits; }; struct Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q { TNimObject Sup; Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q* prev; Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q* next; }; typedef NU8 Tlibkind_9b8v60kso59bBaw9cp8B9a9apKQ; struct Tlib_4f9aBgmqEuj7uWJdBBGcRgA { Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q Sup; Tlibkind_9b8v60kso59bBaw9cp8B9a9apKQ kind; NIM_BOOL generated; NIM_BOOL isoverriden; Ropeobj_HF4qJnb6xiOddgPmsxodtQ* name; Tnode_bROa11lyF5vxEN9aYNbHmhw* path; }; struct Freecell_u6M5LHprqzkn9axr04yg9bGQ { Freecell_u6M5LHprqzkn9axr04yg9bGQ* next; NI zerofield; }; struct Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA { Tsym_AXG7xcvKqaxY6koRX1xkCw* sym; TY_zuqP4Riz26Oi5fWgPYVEgA* concretetypes; NI compilesid; }; struct TY_pxbIse2JUQkJU0n9blV9bY5g { TGenericSeq Sup; NI8 data[SEQ_DECL_SIZE]; }; struct TY_ehmV9bTklH2Gt9cXHV9c0HLeQ { TGenericSeq Sup; Tnode_bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE]; }; struct TY_zuqP4Riz26Oi5fWgPYVEgA { TGenericSeq Sup; Ttype_LTUWCZolpovw9cWE3JBWSUw* data[SEQ_DECL_SIZE]; }; struct TY_iGkpo9aKQdr3NWelKC4cnJA { TGenericSeq Sup; TY_a09bGTAl9ceOKTAytYdkbyKg data[SEQ_DECL_SIZE]; }; struct TY_DXS6mEo7PVUFJkirsQ9bNQA { TGenericSeq Sup; Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA* data[SEQ_DECL_SIZE]; }; struct TY_sksVpmPRIkNR9axiwtD1Guw { TGenericSeq Sup; Tsym_AXG7xcvKqaxY6koRX1xkCw* data[SEQ_DECL_SIZE]; }; N_NIMCALL(void, internalerror_MXmtqrCmYwtOPkDCFgUWKQ)(Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, NimStringDesc* errmsg0); N_NIMCALL(NI, sonslen_qPWPHw7WgJeEVYUdcaRIig)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(NIM_BOOL, levalue_1Qdwg1ZguEjbL3mmgPJD3w_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0); N_NIMCALL(NIM_BOOL, samevalue_1Qdwg1ZguEjbL3mmgPJD3w)(Tnode_bROa11lyF5vxEN9aYNbHmhw* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0); N_NIMCALL(void, tobitset_Bgj7mr9bCmLIhOzddHDtD0A)(Tnode_bROa11lyF5vxEN9aYNbHmhw* s0, TY_pxbIse2JUQkJU0n9blV9bY5g** b0); N_NIMCALL(NI64, firstord_HUiBYxvKiECXCv8BzQNheg)(Ttype_LTUWCZolpovw9cWE3JBWSUw* t0); N_NIMCALL(void, bitsetinit_9bKA1DbmAErHy3uIMkQY9bUQ)(TY_pxbIse2JUQkJU0n9blV9bY5g** b0, NI length0); N_NIMCALL(NI64, getsize_spMpEAO8ubfQavMigOxQdA)(Ttype_LTUWCZolpovw9cWE3JBWSUw* typ0); N_NIMCALL(NI64, getordvalue_MzTDl1zEXJLD4sql7PhCwA)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(void, bitsetincl_tznoRhsCn6M9csUzVp17S1w)(TY_pxbIse2JUQkJU0n9blV9bY5g** x0, NI64 elem0); N_NIMCALL(void, bitsetdiff_zN8mfRIlfkwl4UeelbWZPg)(TY_pxbIse2JUQkJU0n9blV9bY5g** x0, TY_pxbIse2JUQkJU0n9blV9bY5g* y0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, totreeset_T7faK845phyHxY50P3qxIQ)(TY_pxbIse2JUQkJU0n9blV9bY5g* s0, Ttype_LTUWCZolpovw9cWE3JBWSUw* settype0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newnodei_PIqgSH9b0m7nFpOyXf9cpz5w)(Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0); static N_INLINE(void, asgnRefNoCycle)(void** dest0, void* src0); static N_INLINE(Cell_1zcF9cV8XIAtbN8h5HRUB8g*, usrtocell_yB9aH5WIlwd0xkYrcdPeXrQsystem)(void* usr0); static N_INLINE(void, rtladdzct_MV4BBk6J1qu70IbBxwEn4w_2system)(Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0); N_NOINLINE(void, addzct_fCDI7oO1NNVXXURtxSzsRw)(Cellseq_Axo1XVm9aaQueTOldv8le5w* s0, Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0); N_NIMCALL(NIM_BOOL, bitsetin_Z5HI0xhB5Wx2mWRfrJc2NQ)(TY_pxbIse2JUQkJU0n9blV9bY5g* x0, NI64 e0); N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, newinttypenode_v0NY9cuqixP6ToMm9avHw5ig)(Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw kind0, NI64 intval0, Ttype_LTUWCZolpovw9cWE3JBWSUw* typ0); N_NIMCALL(void, addson_gCCf68XrWL79bKes6htzFjQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* father0, Tnode_bROa11lyF5vxEN9aYNbHmhw* son0); N_NIMCALL(NIM_BOOL, bitsetcontains_gqMsWrr3fORAvmtdSaP4rA)(TY_pxbIse2JUQkJU0n9blV9bY5g* x0, TY_pxbIse2JUQkJU0n9blV9bY5g* y0); N_NIMCALL(NIM_BOOL, bitsetequals_gqMsWrr3fORAvmtdSaP4rA_2)(TY_pxbIse2JUQkJU0n9blV9bY5g* x0, TY_pxbIse2JUQkJU0n9blV9bY5g* y0); N_NIMCALL(void, bitsetintersect_zN8mfRIlfkwl4UeelbWZPg_2)(TY_pxbIse2JUQkJU0n9blV9bY5g** x0, TY_pxbIse2JUQkJU0n9blV9bY5g* y0); N_NIMCALL(void, bitsetunion_zN8mfRIlfkwl4UeelbWZPg_3)(TY_pxbIse2JUQkJU0n9blV9bY5g** x0, TY_pxbIse2JUQkJU0n9blV9bY5g* y0); N_NIMCALL(void, bitsetsymdiff_zN8mfRIlfkwl4UeelbWZPg_4)(TY_pxbIse2JUQkJU0n9blV9bY5g** x0, TY_pxbIse2JUQkJU0n9blV9bY5g* y0); extern Gcheap_1TRH1TZMaVZTnLNcIHuNFQ gch_IcYaEuuWivYAS86vFMTS3Q; STRING_LITERAL(T_RCpa9aHGGIKsR9cKRKvszwow_2, "inSet", 5); N_NIMCALL(NIM_BOOL, inset_b4nxsJCvqXRlyalSWskgNA)(Tnode_bROa11lyF5vxEN9aYNbHmhw* s0, Tnode_bROa11lyF5vxEN9aYNbHmhw* elem0) { NIM_BOOL result0; { result0 = (NIM_BOOL)0; { if (!!(((*s0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 39)))) goto LA3; internalerror_MXmtqrCmYwtOPkDCFgUWKQ((*s0).info, ((NimStringDesc*) &T_RCpa9aHGGIKsR9cKRKvszwow_2)); result0 = NIM_FALSE; goto BeforeRet; } LA3: ; { NI i_gjmi9a3etTejC7wy08kXMyA; NI HEX3Atmp_K0yYuybb2qf8A4rUaUfrQg; NI LOC6; NI res_R62rbGcY3852wb5Sd9apOsw; i_gjmi9a3etTejC7wy08kXMyA = (NI)0; HEX3Atmp_K0yYuybb2qf8A4rUaUfrQg = (NI)0; LOC6 = (NI)0; LOC6 = sonslen_qPWPHw7WgJeEVYUdcaRIig(s0); HEX3Atmp_K0yYuybb2qf8A4rUaUfrQg = (NI)(LOC6 - ((NI) 1)); res_R62rbGcY3852wb5Sd9apOsw = ((NI) 0); { while (1) { if (!(res_R62rbGcY3852wb5Sd9apOsw <= HEX3Atmp_K0yYuybb2qf8A4rUaUfrQg)) goto LA8; i_gjmi9a3etTejC7wy08kXMyA = res_R62rbGcY3852wb5Sd9apOsw; { if (!((*(*s0).kindU.S6.sons->data[i_gjmi9a3etTejC7wy08kXMyA]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA11; { NIM_BOOL LOC15; LOC15 = (NIM_BOOL)0; LOC15 = levalue_1Qdwg1ZguEjbL3mmgPJD3w_2((*(*s0).kindU.S6.sons->data[i_gjmi9a3etTejC7wy08kXMyA]).kindU.S6.sons->data[((NI) 0)], elem0); if (!(LOC15)) goto LA16; LOC15 = levalue_1Qdwg1ZguEjbL3mmgPJD3w_2(elem0, (*(*s0).kindU.S6.sons->data[i_gjmi9a3etTejC7wy08kXMyA]).kindU.S6.sons->data[((NI) 1)]); LA16: ; if (!LOC15) goto LA17; result0 = NIM_TRUE; goto BeforeRet; } LA17: ; } goto LA9; LA11: ; { { NIM_BOOL LOC22; LOC22 = (NIM_BOOL)0; LOC22 = samevalue_1Qdwg1ZguEjbL3mmgPJD3w((*s0).kindU.S6.sons->data[i_gjmi9a3etTejC7wy08kXMyA], elem0); if (!LOC22) goto LA23; result0 = NIM_TRUE; goto BeforeRet; } LA23: ; } LA9: ; res_R62rbGcY3852wb5Sd9apOsw += ((NI) 1); } LA8: ; } } result0 = NIM_FALSE; }BeforeRet: ; return result0; } N_NIMCALL(void, tobitset_Bgj7mr9bCmLIhOzddHDtD0A)(Tnode_bROa11lyF5vxEN9aYNbHmhw* s0, TY_pxbIse2JUQkJU0n9blV9bY5g** b0) { NI64 first0; NI64 j0; NI64 LOC1; first0 = (NI64)0; j0 = (NI64)0; first0 = firstord_HUiBYxvKiECXCv8BzQNheg((*(*s0).typ).sons->data[((NI) 0)]); LOC1 = (NI64)0; LOC1 = getsize_spMpEAO8ubfQavMigOxQdA((*s0).typ); bitsetinit_9bKA1DbmAErHy3uIMkQY9bUQ(b0, ((NI) (LOC1))); { NI i_twjkJiPN1B1b9bYrFiUV8uA; NI HEX3Atmp_xCcBGsFbMxNEEQgpTAQmbw; NI LOC3; NI res_j0z9cd9bgq0z5zFFXYMg7kCQ; i_twjkJiPN1B1b9bYrFiUV8uA = (NI)0; HEX3Atmp_xCcBGsFbMxNEEQgpTAQmbw = (NI)0; LOC3 = (NI)0; LOC3 = sonslen_qPWPHw7WgJeEVYUdcaRIig(s0); HEX3Atmp_xCcBGsFbMxNEEQgpTAQmbw = (NI)(LOC3 - ((NI) 1)); res_j0z9cd9bgq0z5zFFXYMg7kCQ = ((NI) 0); { while (1) { if (!(res_j0z9cd9bgq0z5zFFXYMg7kCQ <= HEX3Atmp_xCcBGsFbMxNEEQgpTAQmbw)) goto LA5; i_twjkJiPN1B1b9bYrFiUV8uA = res_j0z9cd9bgq0z5zFFXYMg7kCQ; { if (!((*(*s0).kindU.S6.sons->data[i_twjkJiPN1B1b9bYrFiUV8uA]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA8; j0 = getordvalue_MzTDl1zEXJLD4sql7PhCwA((*(*s0).kindU.S6.sons->data[i_twjkJiPN1B1b9bYrFiUV8uA]).kindU.S6.sons->data[((NI) 0)]); { while (1) { NI64 LOC12; LOC12 = (NI64)0; LOC12 = getordvalue_MzTDl1zEXJLD4sql7PhCwA((*(*s0).kindU.S6.sons->data[i_twjkJiPN1B1b9bYrFiUV8uA]).kindU.S6.sons->data[((NI) 1)]); if (!(j0 <= LOC12)) goto LA11; bitsetincl_tznoRhsCn6M9csUzVp17S1w(b0, (NI64)(j0 - first0)); j0 += ((NI) 1); } LA11: ; } } goto LA6; LA8: ; { NI64 LOC14; LOC14 = (NI64)0; LOC14 = getordvalue_MzTDl1zEXJLD4sql7PhCwA((*s0).kindU.S6.sons->data[i_twjkJiPN1B1b9bYrFiUV8uA]); bitsetincl_tznoRhsCn6M9csUzVp17S1w(b0, (NI64)(LOC14 - first0)); } LA6: ; res_j0z9cd9bgq0z5zFFXYMg7kCQ += ((NI) 1); } LA5: ; } } } static N_INLINE(Cell_1zcF9cV8XIAtbN8h5HRUB8g*, usrtocell_yB9aH5WIlwd0xkYrcdPeXrQsystem)(void* usr0) { Cell_1zcF9cV8XIAtbN8h5HRUB8g* result0; result0 = (Cell_1zcF9cV8XIAtbN8h5HRUB8g*)0; result0 = ((Cell_1zcF9cV8XIAtbN8h5HRUB8g*) ((NI)((NU32)(((NI) (usr0))) - (NU32)(((NI)sizeof(Cell_1zcF9cV8XIAtbN8h5HRUB8g)))))); return result0; } static N_INLINE(void, rtladdzct_MV4BBk6J1qu70IbBxwEn4w_2system)(Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0) { addzct_fCDI7oO1NNVXXURtxSzsRw((&gch_IcYaEuuWivYAS86vFMTS3Q.zct), c0); } static N_INLINE(void, asgnRefNoCycle)(void** dest0, void* src0) { { Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0; if (!!((src0 == NIM_NIL))) goto LA3; c0 = usrtocell_yB9aH5WIlwd0xkYrcdPeXrQsystem(src0); (*c0).refcount += ((NI) 8); } LA3: ; { Cell_1zcF9cV8XIAtbN8h5HRUB8g* c0; if (!!(((*dest0) == NIM_NIL))) goto LA7; c0 = usrtocell_yB9aH5WIlwd0xkYrcdPeXrQsystem((*dest0)); { (*c0).refcount -= ((NI) 8); if (!((NU32)((*c0).refcount) < (NU32)(((NI) 8)))) goto LA11; rtladdzct_MV4BBk6J1qu70IbBxwEn4w_2system(c0); } LA11: ; } LA7: ; (*dest0) = src0; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, totreeset_T7faK845phyHxY50P3qxIQ)(TY_pxbIse2JUQkJU0n9blV9bY5g* s0, Ttype_LTUWCZolpovw9cWE3JBWSUw* settype0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; NI64 a0; NI64 b0; NI64 e0; NI64 first0; Ttype_LTUWCZolpovw9cWE3JBWSUw* elemtype0; Tnode_bROa11lyF5vxEN9aYNbHmhw* n0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; a0 = (NI64)0; b0 = (NI64)0; e0 = (NI64)0; first0 = (NI64)0; elemtype0 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; n0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; elemtype0 = (*settype0).sons->data[((NI) 0)]; first0 = firstord_HUiBYxvKiECXCv8BzQNheg(elemtype0); result0 = newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 39), info0); asgnRefNoCycle((void**) (&(*result0).typ), settype0); (*result0).info = info0; e0 = IL64(0); { while (1) { if (!(e0 < ((NI64) ((NI)((s0 ? s0->Sup.len : 0) * ((NI) 8)))))) goto LA2; { NIM_BOOL LOC5; Tnode_bROa11lyF5vxEN9aYNbHmhw* aa0; LOC5 = (NIM_BOOL)0; LOC5 = bitsetin_Z5HI0xhB5Wx2mWRfrJc2NQ(s0, e0); if (!LOC5) goto LA6; a0 = e0; b0 = e0; { while (1) { b0 += ((NI) 1); { NIM_BOOL LOC12; NIM_BOOL LOC14; LOC12 = (NIM_BOOL)0; LOC12 = (((NI64) ((NI)((s0 ? s0->Sup.len : 0) * ((NI) 8)))) <= b0); if (LOC12) goto LA13; LOC14 = (NIM_BOOL)0; LOC14 = bitsetin_Z5HI0xhB5Wx2mWRfrJc2NQ(s0, b0); LOC12 = !(LOC14); LA13: ; if (!LOC12) goto LA15; goto LA8; } LA15: ; } } LA8: ; b0 -= ((NI) 1); aa0 = newinttypenode_v0NY9cuqixP6ToMm9avHw5ig(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 6), (NI64)(a0 + first0), elemtype0); (*aa0).info = info0; { if (!(a0 == b0)) goto LA19; addson_gCCf68XrWL79bKes6htzFjQ(result0, aa0); } goto LA17; LA19: ; { Tnode_bROa11lyF5vxEN9aYNbHmhw* bb0; n0 = newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 44), info0); asgnRefNoCycle((void**) (&(*n0).typ), elemtype0); addson_gCCf68XrWL79bKes6htzFjQ(n0, aa0); bb0 = newinttypenode_v0NY9cuqixP6ToMm9avHw5ig(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 6), (NI64)(b0 + first0), elemtype0); (*bb0).info = info0; addson_gCCf68XrWL79bKes6htzFjQ(n0, bb0); addson_gCCf68XrWL79bKes6htzFjQ(result0, n0); } LA17: ; e0 = b0; } LA6: ; e0 += ((NI) 1); } LA2: ; } return result0; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, diffsets_E71eQfYz9b4v2qiZfNF2cdw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; TY_pxbIse2JUQkJU0n9blV9bY5g* x0; TY_pxbIse2JUQkJU0n9blV9bY5g* y0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; x0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; y0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; tobitset_Bgj7mr9bCmLIhOzddHDtD0A(a0, (&x0)); tobitset_Bgj7mr9bCmLIhOzddHDtD0A(b0, (&y0)); bitsetdiff_zN8mfRIlfkwl4UeelbWZPg((&x0), y0); result0 = totreeset_T7faK845phyHxY50P3qxIQ(x0, (*a0).typ, (*a0).info); return result0; } N_NIMCALL(NI64, cardset_q9cOPX0ih7rvjzlPoLISJTQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* s0) { NI64 result0; result0 = (NI64)0; result0 = IL64(0); { NI i_vPzhXRvdBHXMyAZ9cWeijqg; NI HEX3Atmp_G40Oav5XqGZPjlRyhdsNzg; NI LOC2; NI res_AruNVUtA1beZAiUZWrYeAw; i_vPzhXRvdBHXMyAZ9cWeijqg = (NI)0; HEX3Atmp_G40Oav5XqGZPjlRyhdsNzg = (NI)0; LOC2 = (NI)0; LOC2 = sonslen_qPWPHw7WgJeEVYUdcaRIig(s0); HEX3Atmp_G40Oav5XqGZPjlRyhdsNzg = (NI)(LOC2 - ((NI) 1)); res_AruNVUtA1beZAiUZWrYeAw = ((NI) 0); { while (1) { if (!(res_AruNVUtA1beZAiUZWrYeAw <= HEX3Atmp_G40Oav5XqGZPjlRyhdsNzg)) goto LA4; i_vPzhXRvdBHXMyAZ9cWeijqg = res_AruNVUtA1beZAiUZWrYeAw; { NI64 LOC9; NI64 LOC10; if (!((*(*s0).kindU.S6.sons->data[i_vPzhXRvdBHXMyAZ9cWeijqg]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA7; LOC9 = (NI64)0; LOC9 = getordvalue_MzTDl1zEXJLD4sql7PhCwA((*(*s0).kindU.S6.sons->data[i_vPzhXRvdBHXMyAZ9cWeijqg]).kindU.S6.sons->data[((NI) 1)]); LOC10 = (NI64)0; LOC10 = getordvalue_MzTDl1zEXJLD4sql7PhCwA((*(*s0).kindU.S6.sons->data[i_vPzhXRvdBHXMyAZ9cWeijqg]).kindU.S6.sons->data[((NI) 0)]); result0 = (NI64)((NI64)((NI64)(result0 + LOC9) - LOC10) + IL64(1)); } goto LA5; LA7: ; { result0 += ((NI) 1); } LA5: ; res_AruNVUtA1beZAiUZWrYeAw += ((NI) 1); } LA4: ; } } return result0; } N_NIMCALL(NIM_BOOL, containssets_tlIBRycg3YyKwtO2aPbGGg)(Tnode_bROa11lyF5vxEN9aYNbHmhw* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0) { NIM_BOOL result0; TY_pxbIse2JUQkJU0n9blV9bY5g* x0; TY_pxbIse2JUQkJU0n9blV9bY5g* y0; result0 = (NIM_BOOL)0; x0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; y0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; tobitset_Bgj7mr9bCmLIhOzddHDtD0A(a0, (&x0)); tobitset_Bgj7mr9bCmLIhOzddHDtD0A(b0, (&y0)); result0 = bitsetcontains_gqMsWrr3fORAvmtdSaP4rA(x0, y0); return result0; } N_NIMCALL(NIM_BOOL, equalsets_tlIBRycg3YyKwtO2aPbGGg_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0) { NIM_BOOL result0; TY_pxbIse2JUQkJU0n9blV9bY5g* x0; TY_pxbIse2JUQkJU0n9blV9bY5g* y0; result0 = (NIM_BOOL)0; x0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; y0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; tobitset_Bgj7mr9bCmLIhOzddHDtD0A(a0, (&x0)); tobitset_Bgj7mr9bCmLIhOzddHDtD0A(b0, (&y0)); result0 = bitsetequals_gqMsWrr3fORAvmtdSaP4rA_2(x0, y0); return result0; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, intersectsets_E71eQfYz9b4v2qiZfNF2cdw_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; TY_pxbIse2JUQkJU0n9blV9bY5g* x0; TY_pxbIse2JUQkJU0n9blV9bY5g* y0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; x0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; y0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; tobitset_Bgj7mr9bCmLIhOzddHDtD0A(a0, (&x0)); tobitset_Bgj7mr9bCmLIhOzddHDtD0A(b0, (&y0)); bitsetintersect_zN8mfRIlfkwl4UeelbWZPg_2((&x0), y0); result0 = totreeset_T7faK845phyHxY50P3qxIQ(x0, (*a0).typ, (*a0).info); return result0; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, unionsets_E71eQfYz9b4v2qiZfNF2cdw_3)(Tnode_bROa11lyF5vxEN9aYNbHmhw* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; TY_pxbIse2JUQkJU0n9blV9bY5g* x0; TY_pxbIse2JUQkJU0n9blV9bY5g* y0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; x0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; y0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; tobitset_Bgj7mr9bCmLIhOzddHDtD0A(a0, (&x0)); tobitset_Bgj7mr9bCmLIhOzddHDtD0A(b0, (&y0)); bitsetunion_zN8mfRIlfkwl4UeelbWZPg_3((&x0), y0); result0 = totreeset_T7faK845phyHxY50P3qxIQ(x0, (*a0).typ, (*a0).info); return result0; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, symdiffsets_E71eQfYz9b4v2qiZfNF2cdw_4)(Tnode_bROa11lyF5vxEN9aYNbHmhw* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; TY_pxbIse2JUQkJU0n9blV9bY5g* x0; TY_pxbIse2JUQkJU0n9blV9bY5g* y0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; x0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; y0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; tobitset_Bgj7mr9bCmLIhOzddHDtD0A(a0, (&x0)); tobitset_Bgj7mr9bCmLIhOzddHDtD0A(b0, (&y0)); bitsetsymdiff_zN8mfRIlfkwl4UeelbWZPg_4((&x0), y0); result0 = totreeset_T7faK845phyHxY50P3qxIQ(x0, (*a0).typ, (*a0).info); return result0; } N_NIMCALL(NIM_BOOL, overlap_GLYFox9ciWitxKuirhftGHg)(Tnode_bROa11lyF5vxEN9aYNbHmhw* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0) { NIM_BOOL result0; result0 = (NIM_BOOL)0; { if (!((*a0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA3; { NIM_BOOL LOC9; if (!((*b0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA7; LOC9 = (NIM_BOOL)0; LOC9 = levalue_1Qdwg1ZguEjbL3mmgPJD3w_2((*a0).kindU.S6.sons->data[((NI) 0)], (*b0).kindU.S6.sons->data[((NI) 1)]); if (!(LOC9)) goto LA10; LOC9 = levalue_1Qdwg1ZguEjbL3mmgPJD3w_2((*b0).kindU.S6.sons->data[((NI) 0)], (*a0).kindU.S6.sons->data[((NI) 1)]); LA10: ; result0 = LOC9; } goto LA5; LA7: ; { NIM_BOOL LOC12; LOC12 = (NIM_BOOL)0; LOC12 = levalue_1Qdwg1ZguEjbL3mmgPJD3w_2((*a0).kindU.S6.sons->data[((NI) 0)], b0); if (!(LOC12)) goto LA13; LOC12 = levalue_1Qdwg1ZguEjbL3mmgPJD3w_2(b0, (*a0).kindU.S6.sons->data[((NI) 1)]); LA13: ; result0 = LOC12; } LA5: ; } goto LA1; LA3: ; { { NIM_BOOL LOC19; if (!((*b0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA17; LOC19 = (NIM_BOOL)0; LOC19 = levalue_1Qdwg1ZguEjbL3mmgPJD3w_2((*b0).kindU.S6.sons->data[((NI) 0)], a0); if (!(LOC19)) goto LA20; LOC19 = levalue_1Qdwg1ZguEjbL3mmgPJD3w_2(a0, (*b0).kindU.S6.sons->data[((NI) 1)]); LA20: ; result0 = LOC19; } goto LA15; LA17: ; { result0 = samevalue_1Qdwg1ZguEjbL3mmgPJD3w(a0, b0); } LA15: ; } LA1: ; return result0; } N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, complement_Yi8Z7ip2BRBum7p5Po1zUQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* a0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; TY_pxbIse2JUQkJU0n9blV9bY5g* x0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; x0 = (TY_pxbIse2JUQkJU0n9blV9bY5g*)0; tobitset_Bgj7mr9bCmLIhOzddHDtD0A(a0, (&x0)); { NI i_3G1AtN5pTu8wcLEySMAsUw; NI HEX3Atmp_Resg9a3L1d0Q6VV9bPwZK8bA; NI res_IWqYE50mJ3D4tbpUI0jBHA; i_3G1AtN5pTu8wcLEySMAsUw = (NI)0; HEX3Atmp_Resg9a3L1d0Q6VV9bPwZK8bA = (NI)0; HEX3Atmp_Resg9a3L1d0Q6VV9bPwZK8bA = (x0 ? (x0->Sup.len-1) : -1); res_IWqYE50mJ3D4tbpUI0jBHA = ((NI) 0); { while (1) { if (!(res_IWqYE50mJ3D4tbpUI0jBHA <= HEX3Atmp_Resg9a3L1d0Q6VV9bPwZK8bA)) goto LA3; i_3G1AtN5pTu8wcLEySMAsUw = res_IWqYE50mJ3D4tbpUI0jBHA; x0->data[i_3G1AtN5pTu8wcLEySMAsUw] = (NI8)((NU8) ~(x0->data[i_3G1AtN5pTu8wcLEySMAsUw])); res_IWqYE50mJ3D4tbpUI0jBHA += ((NI) 1); } LA3: ; } } result0 = totreeset_T7faK845phyHxY50P3qxIQ(x0, (*a0).typ, (*a0).info); return result0; } N_NIMCALL(NIM_BOOL, emptyrange_GLYFox9ciWitxKuirhftGHg_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* a0, Tnode_bROa11lyF5vxEN9aYNbHmhw* b0) { NIM_BOOL result0; NIM_BOOL LOC1; result0 = (NIM_BOOL)0; LOC1 = (NIM_BOOL)0; LOC1 = levalue_1Qdwg1ZguEjbL3mmgPJD3w_2(a0, b0); result0 = !(LOC1); return result0; } NIM_EXTERNC N_NOINLINE(void, compiler_nimsetsInit000)(void) { } NIM_EXTERNC N_NOINLINE(void, compiler_nimsetsDatInit000)(void) { }