/* Generated by Nim Compiler v0.16.0 */ /* (c) 2017 Andreas Rumpf */ /* The generated code is subject to the original license. */ #define NIM_INTBITS 64 #include "nimbase.h" #include #undef linux typedef struct NimStringDesc NimStringDesc; typedef struct TGenericSeq TGenericSeq; typedef struct Tsym_AXG7xcvKqaxY6koRX1xkCw Tsym_AXG7xcvKqaxY6koRX1xkCw; typedef struct Md5context_oMciKUdSdCaIeMtcxbiPOw Md5context_oMciKUdSdCaIeMtcxbiPOw; 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_DXS6mEo7PVUFJkirsQ9bNQA TY_DXS6mEo7PVUFJkirsQ9bNQA; typedef struct Tstrtable_f07aOS3dr28kGa5wcE29aFA Tstrtable_f07aOS3dr28kGa5wcE29aFA; typedef struct TY_sksVpmPRIkNR9axiwtD1Guw TY_sksVpmPRIkNR9axiwtD1Guw; typedef struct Ttype_LTUWCZolpovw9cWE3JBWSUw Ttype_LTUWCZolpovw9cWE3JBWSUw; typedef struct Tident_4umxGerWTHGPwUms7Yqu3g Tident_4umxGerWTHGPwUms7Yqu3g; typedef struct Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw; typedef struct Tnode_bROa11lyF5vxEN9aYNbHmhw Tnode_bROa11lyF5vxEN9aYNbHmhw; typedef struct Tloc_EtHNvCB0bgfu9bFjzx9cb6aA Tloc_EtHNvCB0bgfu9bFjzx9cb6aA; typedef struct Ropeobj_HF4qJnb6xiOddgPmsxodtQ Ropeobj_HF4qJnb6xiOddgPmsxodtQ; typedef struct Tlib_4f9aBgmqEuj7uWJdBBGcRgA Tlib_4f9aBgmqEuj7uWJdBBGcRgA; typedef struct TY_iGkpo9aKQdr3NWelKC4cnJA TY_iGkpo9aKQdr3NWelKC4cnJA; typedef struct TY_ehmV9bTklH2Gt9cXHV9c0HLeQ TY_ehmV9bTklH2Gt9cXHV9c0HLeQ; typedef struct Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA; typedef struct Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q Tlistentry_U4JkVlrJQaACKZ9a9cwCla3Q; typedef struct TY_a09bGTAl9ceOKTAytYdkbyKg TY_a09bGTAl9ceOKTAytYdkbyKg; struct TGenericSeq { NI len; NI reserved; }; struct NimStringDesc { TGenericSeq Sup; NIM_CHAR data[SEQ_DECL_SIZE]; }; typedef NU8 TY_qtqsWM5aXmcpMIVmvq3kAA[16]; typedef NimStringDesc* TY_TLUjAhnMfzBtYkb49czB0KA[64]; typedef NU32 TY_FleBT9cC2nxhgiXmSYYnEKA[4]; typedef NU32 TY_JlnxiR65D9cjJpwi6uBZRtA[2]; typedef NU8 TY_w5VB8h5K8DB3oWrO5U2wqg[64]; struct Md5context_oMciKUdSdCaIeMtcxbiPOw { TY_FleBT9cC2nxhgiXmSYYnEKA state; TY_JlnxiR65D9cjJpwi6uBZRtA count; TY_w5VB8h5K8DB3oWrO5U2wqg buffer; }; 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 Tsymkind_cNCW9acsSznmEccl1fgQwkw; struct Tstrtable_f07aOS3dr28kGa5wcE29aFA { NI counter; TY_sksVpmPRIkNR9axiwtD1Guw* data; }; typedef NU16 Tmagic_shZhZOdbVC5nnFvcXQAImg; struct Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw { NI16 line; NI16 col; NI32 fileindex; }; typedef NU32 Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw_Set; typedef NU32 Toption_WspMeQySXNP2XoTWR5MTgg_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 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 Considerflag_9a9az8WnKmq9bvt8EXoSUES7g_Set; typedef NU8 Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag; typedef NU8 Tcallingconvention_yjAJ8w0h1PBaSwSGJ3P7IA; typedef NU32 Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw_Set; 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; }; typedef NU8 Considerflag_9a9az8WnKmq9bvt8EXoSUES7g; typedef NU8 Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw; typedef NU16 Tnodeflag_jyh9acXHkhZANSSvPIY7ZLg_Set; typedef NU8 Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw; 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 Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw; typedef NU8 Tnimnodekind_unfNsxrcATrufDZmpBq4HQ; struct TNimNode { Tnimnodekind_unfNsxrcATrufDZmpBq4HQ kind; NI offset; TNimType* typ; NCSTRING name; NI len; TNimNode** sons; }; struct Ropeobj_HF4qJnb6xiOddgPmsxodtQ { TNimObject Sup; Ropeobj_HF4qJnb6xiOddgPmsxodtQ* left; Ropeobj_HF4qJnb6xiOddgPmsxodtQ* right; NI length; NimStringDesc* data; }; 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 TY_a09bGTAl9ceOKTAytYdkbyKg { NI Field0; Tsym_AXG7xcvKqaxY6koRX1xkCw* Field1; }; struct Tinstantiation_5LqgVn6Tq9ainQRK7TQAQxA { Tsym_AXG7xcvKqaxY6koRX1xkCw* sym; TY_zuqP4Riz26Oi5fWgPYVEgA* concretetypes; NI compilesid; }; struct TY_zuqP4Riz26Oi5fWgPYVEgA { TGenericSeq Sup; Ttype_LTUWCZolpovw9cWE3JBWSUw* 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]; }; struct TY_iGkpo9aKQdr3NWelKC4cnJA { TGenericSeq Sup; TY_a09bGTAl9ceOKTAytYdkbyKg data[SEQ_DECL_SIZE]; }; struct TY_ehmV9bTklH2Gt9cXHV9c0HLeQ { TGenericSeq Sup; Tnode_bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE]; }; N_NIMCALL(NimStringDesc*, tobase64a_I9bS350OB0kONBg3TL1X8Ag)(NCSTRING s0, NI len0); N_NIMCALL(NimStringDesc*, rawNewString)(NI space0); N_NIMCALL(NimStringDesc*, rawNewString)(NI cap0); N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s0, NIM_CHAR c0); static N_INLINE(void, appendString)(NimStringDesc* dest0, NimStringDesc* src0); static N_INLINE(void, copymem_E1xtACub5WcDa3vbrIXbwgsystem)(void* dest0, void* source0, NI size0); N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest0, NI addlen0); N_NIMCALL(void, md5init_TD1qNpCBAlKjZlVJ9cbPeVg)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0); N_NIMCALL(void, HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, NimStringDesc* s0); N_NIMCALL(void, md5update_2rxQixjUkbT0w5WdNOCwMw)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, NCSTRING input_bWAc5knnB9bBxVuO4Hm6hoA, NI len0); N_NIMCALL(void, md5final_QVR9bnyINbQRLkYQjTeezvw)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, NU8* digest0); N_NIMCALL(void, hashtype_CLZdk3vcYuqhxMN0Uzt5bQ)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, Ttype_LTUWCZolpovw9cWE3JBWSUw* t0, Considerflag_9a9az8WnKmq9bvt8EXoSUES7g_Set flags0); N_NIMCALL(NI, sonslen_gG7hUAX9cA629ahMLVL3xN4w)(Ttype_LTUWCZolpovw9cWE3JBWSUw* n0); N_NIMCALL(Ttype_LTUWCZolpovw9cWE3JBWSUw*, lastson_E41DMKHtT9c6sAMyyvhmSIw)(Ttype_LTUWCZolpovw9cWE3JBWSUw* n0); N_NIMCALL(void, hashsym_x6rLJUbCoK8BIhgPrdArYA)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0); N_NIMCALL(void, HEX26HEX3D_dBguJV2zAMoZnepRAe9a1Hw)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, NIM_CHAR ch0); N_NIMCALL(void, hashtypesym_9cYUHxwgoxGlyO3XlX3RMeg)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0); static N_INLINE(NI, len_CdME9baJhvveuPEDZE9bXoxAlambdalifting)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); static N_INLINE(Tnode_bROa11lyF5vxEN9aYNbHmhw*, HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NI i0); N_NIMCALL(void, HEX26HEX3D_pwo4RLuUt2VagzQ040GVgw)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, NI64 i0); N_NIMCALL(NI, len_gG7hUAX9cA629ahMLVL3xN4w_2)(Ttype_LTUWCZolpovw9cWE3JBWSUw* n0); N_NIMCALL(void, hashtree_Ul2QCzOnP8QLhigfcr4V8Q)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(NI, sonslen_qPWPHw7WgJeEVYUdcaRIig)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0); N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src0); static N_INLINE(NIM_BOOL, equalmem_fmeFeLBvgmAHG9bC8ETS9bYQropes)(void* a0, void* b0, NI size0); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_2, "A", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_3, "B", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_4, "C", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_5, "D", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_6, "E", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_7, "F", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_8, "G", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_9, "H", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_10, "I", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_11, "J", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_12, "K", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_13, "L", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_14, "M", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_15, "N", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_16, "O", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_17, "P", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_18, "Q", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_19, "R", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_20, "S", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_21, "T", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_22, "U", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_23, "V", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_24, "W", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_25, "X", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_26, "Y", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_27, "Z", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_28, "a", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_29, "b", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_30, "c", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_31, "d", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_32, "e", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_33, "f", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_34, "g", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_35, "h", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_36, "i", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_37, "j", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_38, "k", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_39, "l", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_40, "m", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_41, "n", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_42, "o", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_43, "p", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_44, "q", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_45, "r", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_46, "s", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_47, "t", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_48, "u", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_49, "v", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_50, "w", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_51, "x", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_52, "y", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_53, "z", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_54, "0", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_55, "1", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_56, "2", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_57, "3", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_58, "4", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_59, "5", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_60, "6", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_61, "7", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_62, "8", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_63, "9a", 2); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_64, "9b", 2); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_65, "9c", 2); NIM_CONST TY_TLUjAhnMfzBtYkb49czB0KA cb64_tkChgNv8Atob8r3BdeF9bWw = {((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_2), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_3), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_4), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_5), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_6), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_7), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_8), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_9), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_10), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_11), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_12), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_13), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_14), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_15), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_16), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_17), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_18), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_19), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_20), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_21), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_22), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_23), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_24), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_25), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_26), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_27), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_28), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_29), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_30), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_31), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_32), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_33), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_34), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_35), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_36), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_37), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_38), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_39), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_40), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_41), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_42), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_43), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_44), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_45), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_46), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_47), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_48), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_49), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_50), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_51), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_52), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_53), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_54), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_55), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_56), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_57), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_58), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_59), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_60), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_61), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_62), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_63), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_64), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_65)} ; STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_66, ".", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_67, "\376", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_68, ":anon", 5); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_69, ".varisptr", 9); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_70, "unknown typeclass", 17); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_71, "\377", 1); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_72, "iterator ", 9); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_73, "proc ", 5); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_74, ".noSideEffect", 13); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_75, ".thread", 7); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_76, ".varargs", 8); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_77, "not nil", 7); STRING_LITERAL(T_e0lkmDV64LUjE3ua6F9agUw_78, ".dispatcher", 11); static N_INLINE(void, copymem_E1xtACub5WcDa3vbrIXbwgsystem)(void* dest0, void* source0, NI size0) { void* LOC1; LOC1 = (void*)0; LOC1 = memcpy(dest0, source0, ((size_t) (size0))); } static N_INLINE(void, appendString)(NimStringDesc* dest0, NimStringDesc* src0) { copymem_E1xtACub5WcDa3vbrIXbwgsystem(((void*) ((&(*dest0).data[((*dest0).Sup.len)- 0]))), ((void*) ((*src0).data)), ((NI) ((NI)((*src0).Sup.len + ((NI) 1))))); (*dest0).Sup.len += (*src0).Sup.len; } N_NIMCALL(NimStringDesc*, tobase64a_I9bS350OB0kONBg3TL1X8Ag)(NCSTRING s0, NI len0) { NimStringDesc* result0; NI i0; result0 = (NimStringDesc*)0; result0 = rawNewString(((NI) ((NI)((NI)((NI)(len0 + ((NI) 2)) / ((NI) 3)) * ((NI) 4))))); result0 = addChar(result0, 95); i0 = ((NI) 0); { while (1) { NI a0; NI b0; NI c0; if (!(i0 < (NI)(len0 - ((NI) 2)))) goto LA2; a0 = ((NU8)(s0[i0])); b0 = ((NU8)(s0[(NI)(i0 + ((NI) 1))])); c0 = ((NU8)(s0[(NI)(i0 + ((NI) 2))])); result0 = resizeString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NU64)(((NI) (a0))) >> (NU64)(((NI) 2))))- 0]->Sup.len + 0); appendString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NU64)(((NI) (a0))) >> (NU64)(((NI) 2))))- 0]); result0 = resizeString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NI)((NU64)(((NI) ((NI)(((NI) (a0)) & ((NI) 3))))) << (NU64)(((NI) 4))) | (NI)((NU64)((NI)(((NI) (b0)) & ((NI) 240))) >> (NU64)(((NI) 4)))))- 0]->Sup.len + 0); appendString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NI)((NU64)(((NI) ((NI)(((NI) (a0)) & ((NI) 3))))) << (NU64)(((NI) 4))) | (NI)((NU64)((NI)(((NI) (b0)) & ((NI) 240))) >> (NU64)(((NI) 4)))))- 0]); result0 = resizeString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NI)((NU64)(((NI) ((NI)(((NI) (b0)) & ((NI) 15))))) << (NU64)(((NI) 2))) | (NI)((NU64)((NI)(((NI) (c0)) & ((NI) 192))) >> (NU64)(((NI) 6)))))- 0]->Sup.len + 0); appendString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NI)((NU64)(((NI) ((NI)(((NI) (b0)) & ((NI) 15))))) << (NU64)(((NI) 2))) | (NI)((NU64)((NI)(((NI) (c0)) & ((NI) 192))) >> (NU64)(((NI) 6)))))- 0]); result0 = resizeString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)(((NI) (c0)) & ((NI) 63)))- 0]->Sup.len + 0); appendString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)(((NI) (c0)) & ((NI) 63)))- 0]); i0 += ((NI) 3); } LA2: ; } { NI a0; NI b0; if (!(i0 < (NI)(len0 - ((NI) 1)))) goto LA5; a0 = ((NU8)(s0[i0])); b0 = ((NU8)(s0[(NI)(i0 + ((NI) 1))])); result0 = resizeString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NU64)(((NI) (a0))) >> (NU64)(((NI) 2))))- 0]->Sup.len + 0); appendString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NU64)(((NI) (a0))) >> (NU64)(((NI) 2))))- 0]); result0 = resizeString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NI)((NU64)(((NI) ((NI)(((NI) (a0)) & ((NI) 3))))) << (NU64)(((NI) 4))) | (NI)((NU64)((NI)(((NI) (b0)) & ((NI) 240))) >> (NU64)(((NI) 4)))))- 0]->Sup.len + 0); appendString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NI)((NU64)(((NI) ((NI)(((NI) (a0)) & ((NI) 3))))) << (NU64)(((NI) 4))) | (NI)((NU64)((NI)(((NI) (b0)) & ((NI) 240))) >> (NU64)(((NI) 4)))))- 0]); result0 = resizeString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NU64)(((NI) ((NI)(((NI) (b0)) & ((NI) 15))))) << (NU64)(((NI) 2))))- 0]->Sup.len + 0); appendString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NU64)(((NI) ((NI)(((NI) (b0)) & ((NI) 15))))) << (NU64)(((NI) 2))))- 0]); } goto LA3; LA5: ; { NI a0; if (!(i0 < len0)) goto LA8; a0 = ((NU8)(s0[i0])); result0 = resizeString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NU64)(((NI) (a0))) >> (NU64)(((NI) 2))))- 0]->Sup.len + 0); appendString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NU64)(((NI) (a0))) >> (NU64)(((NI) 2))))- 0]); result0 = resizeString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NU64)(((NI) ((NI)(((NI) (a0)) & ((NI) 3))))) << (NU64)(((NI) 4))))- 0]->Sup.len + 0); appendString(result0, cb64_tkChgNv8Atob8r3BdeF9bWw[((NI)((NU64)(((NI) ((NI)(((NI) (a0)) & ((NI) 3))))) << (NU64)(((NI) 4))))- 0]); } goto LA3; LA8: ; LA3: ; return result0; } N_NIMCALL(NimStringDesc*, HEX24_cjda4doS9ccFOjsWsGu9aa2A)(TY_qtqsWM5aXmcpMIVmvq3kAA u0) { NimStringDesc* result0; result0 = (NimStringDesc*)0; result0 = tobase64a_I9bS350OB0kONBg3TL1X8Ag(((NCSTRING) (u0)), ((NI)sizeof(TY_qtqsWM5aXmcpMIVmvq3kAA))); return result0; } N_NIMCALL(void, HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, NimStringDesc* s0) { md5update_2rxQixjUkbT0w5WdNOCwMw(c0, s0->data, (s0 ? s0->Sup.len : 0)); } N_NIMCALL(void, hashowner_NjJGUHVEg1oG10FIZSXO9cQ)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0, TY_qtqsWM5aXmcpMIVmvq3kAA Result) { Md5context_oMciKUdSdCaIeMtcxbiPOw c0; Tsym_AXG7xcvKqaxY6koRX1xkCw* m0; Tsym_AXG7xcvKqaxY6koRX1xkCw* p0; memset((void*)(&c0), 0, sizeof(c0)); md5init_TD1qNpCBAlKjZlVJ9cbPeVg((&c0)); m0 = s0; { while (1) { if (!!(((*m0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 6)))) goto LA2; m0 = (*m0).owner; } LA2: ; } p0 = (*m0).owner; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA((&c0), (*(*p0).name).s); HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA((&c0), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_66)); HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA((&c0), (*(*m0).name).s); md5final_QVR9bnyINbQRLkYQjTeezvw((&c0), Result); } N_NIMCALL(void, hashsym_x6rLJUbCoK8BIhgPrdArYA)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0) { { NIM_BOOL LOC3; LOC3 = (NIM_BOOL)0; LOC3 = (((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 29))&31U)))!=0); if (LOC3) goto LA4; LOC3 = ((*s0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 4)); LA4: ; if (!LOC3) goto LA5; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_68)); } goto LA1; LA5: ; { Tsym_AXG7xcvKqaxY6koRX1xkCw* it0; it0 = s0; { while (1) { if (!!((it0 == NIM_NIL))) goto LA9; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, (*(*it0).name).s); HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_66)); it0 = (*it0).owner; } LA9: ; } } LA1: ; } N_NIMCALL(void, HEX26HEX3D_dBguJV2zAMoZnepRAe9a1Hw)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, NIM_CHAR ch0) { md5update_2rxQixjUkbT0w5WdNOCwMw(c0, ((NCSTRING) ((&ch0))), ((NI) 1)); } N_NIMCALL(void, hashtypesym_9cYUHxwgoxGlyO3XlX3RMeg)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0) { { NIM_BOOL LOC3; LOC3 = (NIM_BOOL)0; LOC3 = (((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 29))&31U)))!=0); if (LOC3) goto LA4; LOC3 = ((*s0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 4)); LA4: ; if (!LOC3) goto LA5; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_68)); } goto LA1; LA5: ; { Tsym_AXG7xcvKqaxY6koRX1xkCw* it0; it0 = s0; { while (1) { if (!!((it0 == NIM_NIL))) goto LA9; { NIM_BOOL LOC12; NIM_BOOL LOC13; LOC12 = (NIM_BOOL)0; LOC13 = (NIM_BOOL)0; LOC13 = (((*it0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 2))&31U)))!=0); if (!(LOC13)) goto LA14; LOC13 = ((258048 &(1U<<((NU)((*it0).kind)&31U)))!=0); LA14: ; LOC12 = LOC13; if (!(LOC12)) goto LA15; LOC12 = !(((*it0).typ == NIM_NIL)); LA15: ; if (!LOC12) goto LA16; hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*it0).typ, 1); } LA16: ; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, (*(*it0).name).s); HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_66)); it0 = (*it0).owner; } LA9: ; } } LA1: ; } static N_INLINE(NI, len_CdME9baJhvveuPEDZE9bXoxAlambdalifting)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { NI result0; result0 = (NI)0; { if (!((*n0).kindU.S6.sons == 0)) goto LA3; result0 = ((NI) 0); } goto LA1; LA3: ; { result0 = ((*n0).kindU.S6.sons ? (*n0).kindU.S6.sons->Sup.len : 0); } LA1: ; return result0; } static N_INLINE(Tnode_bROa11lyF5vxEN9aYNbHmhw*, HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, NI i0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; result0 = (*n0).kindU.S6.sons->data[i0]; return result0; } N_NIMCALL(void, HEX26HEX3D_pwo4RLuUt2VagzQ040GVgw)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, NI64 i0) { md5update_2rxQixjUkbT0w5WdNOCwMw(c0, ((NCSTRING) ((&i0))), ((NI) 8)); } N_NIMCALL(void, hashtree_Ul2QCzOnP8QLhigfcr4V8Q)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) { Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw k0; { { if (!(n0 == NIM_NIL)) goto LA3; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_71)); goto BeforeRet; } LA3: ; k0 = (*n0).kind; HEX26HEX3D_dBguJV2zAMoZnepRAe9a1Hw(c0, ((NIM_CHAR) (k0))); switch ((*n0).kind) { case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 1): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 23): case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 4): { } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 2): { HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, (*(*n0).kindU.S5.ident).s); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3): { hashsym_x6rLJUbCoK8BIhgPrdArYA(c0, (*n0).kindU.S4.sym); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 15): { NI64 v0; v0 = (*n0).kindU.S1.intval; md5update_2rxQixjUkbT0w5WdNOCwMw(c0, ((NCSTRING) ((&v0))), ((NI) 8)); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 18): { NF v0; v0 = (*n0).kindU.S2.floatval; md5update_2rxQixjUkbT0w5WdNOCwMw(c0, ((NCSTRING) ((&v0))), ((NI) 8)); } break; case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 22): { HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, (*n0).kindU.S3.strval); } break; default: { { NI i_ZA2DlulKsm1n2nLdNknU2A; NI HEX3Atmp_XEVKoAP0R2G1UsUBXhgOPg; NI LOC13; NI res_Xp9aoXLc02zoaqLxMrms8ew; i_ZA2DlulKsm1n2nLdNknU2A = (NI)0; HEX3Atmp_XEVKoAP0R2G1UsUBXhgOPg = (NI)0; LOC13 = (NI)0; LOC13 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); HEX3Atmp_XEVKoAP0R2G1UsUBXhgOPg = (LOC13 - 1); res_Xp9aoXLc02zoaqLxMrms8ew = ((NI) 0); { while (1) { if (!(res_Xp9aoXLc02zoaqLxMrms8ew <= HEX3Atmp_XEVKoAP0R2G1UsUBXhgOPg)) goto LA15; i_ZA2DlulKsm1n2nLdNknU2A = res_Xp9aoXLc02zoaqLxMrms8ew; hashtree_Ul2QCzOnP8QLhigfcr4V8Q(c0, (*n0).kindU.S6.sons->data[i_ZA2DlulKsm1n2nLdNknU2A]); res_Xp9aoXLc02zoaqLxMrms8ew += ((NI) 1); } LA15: ; } } } break; } }BeforeRet: ; } N_NIMCALL(void, hashtype_CLZdk3vcYuqhxMN0Uzt5bQ)(Md5context_oMciKUdSdCaIeMtcxbiPOw* c0, Ttype_LTUWCZolpovw9cWE3JBWSUw* t0, Considerflag_9a9az8WnKmq9bvt8EXoSUES7g_Set flags0) { { { if (!(t0 == NIM_NIL)) goto LA3; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_67)); goto BeforeRet; } LA3: ; switch ((*t0).kind) { case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 9): { { NI i_Pt4Zh2ciu8EuLyJwI9cmbiA; NI HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA; NI LOC7; NI res_m5J4mUGwPHABM2PAgzqS6Q; i_Pt4Zh2ciu8EuLyJwI9cmbiA = (NI)0; HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA = (NI)0; LOC7 = (NI)0; LOC7 = sonslen_gG7hUAX9cA629ahMLVL3xN4w(t0); HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA = (NI)(LOC7 - ((NI) 1)); res_m5J4mUGwPHABM2PAgzqS6Q = ((NI) 0); { while (1) { if (!(res_m5J4mUGwPHABM2PAgzqS6Q <= HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA)) goto LA9; i_Pt4Zh2ciu8EuLyJwI9cmbiA = res_m5J4mUGwPHABM2PAgzqS6Q; hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*t0).sons->data[i_Pt4Zh2ciu8EuLyJwI9cmbiA], flags0); res_m5J4mUGwPHABM2PAgzqS6Q += ((NI) 1); } LA9: ; } } goto BeforeRet; } break; case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 13): { { Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC15; if (!((flags0 &(1U<<((NU)(((Considerflag_9a9az8WnKmq9bvt8EXoSUES7g) 1))&7U)))!=0)) goto LA13; LOC15 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC15 = lastson_E41DMKHtT9c6sAMyyvhmSIw(t0); hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, LOC15, flags0); } goto LA11; LA13: ; { hashsym_x6rLJUbCoK8BIhgPrdArYA(c0, (*t0).sym); } LA11: ; goto BeforeRet; } break; case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 4): case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 11): { Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC18; LOC18 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC18 = lastson_E41DMKHtT9c6sAMyyvhmSIw(t0); hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, LOC18, flags0); goto BeforeRet; } break; default: { } break; } HEX26HEX3D_dBguJV2zAMoZnepRAe9a1Hw(c0, ((NIM_CHAR) ((*t0).kind))); switch ((*t0).kind) { case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 1): case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 2): case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 44): { { NIM_BOOL LOC23; LOC23 = (NIM_BOOL)0; LOC23 = !(((*t0).sym == NIM_NIL)); if (!(LOC23)) goto LA24; LOC23 = !(((96 & (*(*t0).sym).flags) == 0)); LA24: ; if (!LOC23) goto LA25; hashsym_x6rLJUbCoK8BIhgPrdArYA(c0, (*t0).sym); } LA25: ; } break; case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 17): case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 14): { { if (!!(((*t0).typeinst == NIM_NIL))) goto LA30; { NI i_Pt4Zh2ciu8EuLyJwI9cmbiA_2; NI HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_2; NI LOC33; NI res_m5J4mUGwPHABM2PAgzqS6Q_2; i_Pt4Zh2ciu8EuLyJwI9cmbiA_2 = (NI)0; HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_2 = (NI)0; LOC33 = (NI)0; LOC33 = sonslen_gG7hUAX9cA629ahMLVL3xN4w((*t0).typeinst); HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_2 = (NI)(LOC33 - ((NI) 2)); res_m5J4mUGwPHABM2PAgzqS6Q_2 = ((NI) 1); { while (1) { if (!(res_m5J4mUGwPHABM2PAgzqS6Q_2 <= HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_2)) goto LA35; i_Pt4Zh2ciu8EuLyJwI9cmbiA_2 = res_m5J4mUGwPHABM2PAgzqS6Q_2; hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*(*t0).typeinst).sons->data[i_Pt4Zh2ciu8EuLyJwI9cmbiA_2], flags0); res_m5J4mUGwPHABM2PAgzqS6Q_2 += ((NI) 1); } LA35: ; } } } LA30: ; { if (!!(((*t0).sym == NIM_NIL))) goto LA38; { if (!((flags0 &(1U<<((NU)(((Considerflag_9a9az8WnKmq9bvt8EXoSUES7g) 2))&7U)))!=0)) goto LA42; hashtypesym_9cYUHxwgoxGlyO3XlX3RMeg(c0, (*t0).sym); } goto LA40; LA42: ; { hashsym_x6rLJUbCoK8BIhgPrdArYA(c0, (*t0).sym); } LA40: ; { Tnode_bROa11lyF5vxEN9aYNbHmhw* n0; if (!(((*(*t0).sym).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 29))&31U)))!=0)) goto LA47; (*(*t0).sym).flags &= ~(((NU32)1) << ((((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 29)) % (sizeof(NU32)*8))); n0 = (*t0).n; { NI i_Pt4Zh2ciu8EuLyJwI9cmbiA_3; NI HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_3; NI i_Pt4Zh2ciu8EuLyJwI9cmbiA_4; i_Pt4Zh2ciu8EuLyJwI9cmbiA_3 = (NI)0; HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_3 = (NI)0; HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_3 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0); i_Pt4Zh2ciu8EuLyJwI9cmbiA_4 = ((NI) 0); { while (1) { Tsym_AXG7xcvKqaxY6koRX1xkCw* s0; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC52; if (!(i_Pt4Zh2ciu8EuLyJwI9cmbiA_4 < HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_3)) goto LA51; i_Pt4Zh2ciu8EuLyJwI9cmbiA_3 = i_Pt4Zh2ciu8EuLyJwI9cmbiA_4; LOC52 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC52 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, i_Pt4Zh2ciu8EuLyJwI9cmbiA_3); s0 = (*LOC52).kindU.S4.sym; hashsym_x6rLJUbCoK8BIhgPrdArYA(c0, s0); hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*s0).typ, flags0); i_Pt4Zh2ciu8EuLyJwI9cmbiA_4 += ((NI) 1); } LA51: ; } } (*(*t0).sym).flags |= ((NU32)1)<<((((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 29))%(sizeof(NU32)*8)); } LA47: ; } goto LA36; LA38: ; { HEX26HEX3D_pwo4RLuUt2VagzQ040GVgw(c0, ((NI64) ((*t0).Sup.id))); } LA36: ; { NIM_BOOL LOC56; NI LOC57; LOC56 = (NIM_BOOL)0; LOC57 = (NI)0; LOC57 = len_gG7hUAX9cA629ahMLVL3xN4w_2(t0); LOC56 = (((NI) 0) < LOC57); if (!(LOC56)) goto LA58; LOC56 = !(((*t0).sons->data[((NI) 0)] == NIM_NIL)); LA58: ; if (!LOC56) goto LA59; hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*t0).sons->data[((NI) 0)], flags0); } LA59: ; } break; case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 22): case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 21): case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 10): case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 23): { Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC62; LOC62 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0; LOC62 = lastson_E41DMKHtT9c6sAMyyvhmSIw(t0); hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, LOC62, flags0); { if (!(((*t0).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 18))&31U)))!=0)) goto LA65; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_69)); } LA65: ; } break; case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 52): { { NIM_BOOL LOC70; LOC70 = (NIM_BOOL)0; LOC70 = !(((*t0).sym == NIM_NIL)); if (!(LOC70)) goto LA71; LOC70 = !(((*(*t0).sym).owner == NIM_NIL)); LA71: ; if (!LOC70) goto LA72; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, (*(*(*(*t0).sym).owner).name).s); } goto LA68; LA72: ; { HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_70)); } LA68: ; } break; case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 53): { Ttype_LTUWCZolpovw9cWE3JBWSUw* body0; body0 = (*t0).sons->data[((NI) 0)]; hashsym_x6rLJUbCoK8BIhgPrdArYA(c0, (*body0).sym); { NI i_Pt4Zh2ciu8EuLyJwI9cmbiA_5; NI HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_4; NI LOC77; NI res_m5J4mUGwPHABM2PAgzqS6Q_3; i_Pt4Zh2ciu8EuLyJwI9cmbiA_5 = (NI)0; HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_4 = (NI)0; LOC77 = (NI)0; LOC77 = sonslen_gG7hUAX9cA629ahMLVL3xN4w(t0); HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_4 = (NI)(LOC77 - ((NI) 2)); res_m5J4mUGwPHABM2PAgzqS6Q_3 = ((NI) 1); { while (1) { if (!(res_m5J4mUGwPHABM2PAgzqS6Q_3 <= HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_4)) goto LA79; i_Pt4Zh2ciu8EuLyJwI9cmbiA_5 = res_m5J4mUGwPHABM2PAgzqS6Q_3; hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*t0).sons->data[i_Pt4Zh2ciu8EuLyJwI9cmbiA_5], flags0); res_m5J4mUGwPHABM2PAgzqS6Q_3 += ((NI) 1); } LA79: ; } } } break; case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 60): case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 61): { hashtree_Ul2QCzOnP8QLhigfcr4V8Q(c0, (*t0).n); } break; case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 18): { { NIM_BOOL LOC84; LOC84 = (NIM_BOOL)0; LOC84 = !(((*t0).n == NIM_NIL)); if (!(LOC84)) goto LA85; LOC84 = !(((flags0 &(1U<<((NU)(((Considerflag_9a9az8WnKmq9bvt8EXoSUES7g) 1))&7U)))!=0)); LA85: ; if (!LOC84) goto LA86; { NI i_Pt4Zh2ciu8EuLyJwI9cmbiA_6; NI HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_5; NI LOC89; NI res_m5J4mUGwPHABM2PAgzqS6Q_4; i_Pt4Zh2ciu8EuLyJwI9cmbiA_6 = (NI)0; HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_5 = (NI)0; LOC89 = (NI)0; LOC89 = sonslen_qPWPHw7WgJeEVYUdcaRIig((*t0).n); HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_5 = (NI)(LOC89 - ((NI) 1)); res_m5J4mUGwPHABM2PAgzqS6Q_4 = ((NI) 0); { while (1) { if (!(res_m5J4mUGwPHABM2PAgzqS6Q_4 <= HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_5)) goto LA91; i_Pt4Zh2ciu8EuLyJwI9cmbiA_6 = res_m5J4mUGwPHABM2PAgzqS6Q_4; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, (*(*(*(*(*t0).n).kindU.S6.sons->data[i_Pt4Zh2ciu8EuLyJwI9cmbiA_6]).kindU.S4.sym).name).s); HEX26HEX3D_dBguJV2zAMoZnepRAe9a1Hw(c0, 58); hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*t0).sons->data[i_Pt4Zh2ciu8EuLyJwI9cmbiA_6], flags0); HEX26HEX3D_dBguJV2zAMoZnepRAe9a1Hw(c0, 44); res_m5J4mUGwPHABM2PAgzqS6Q_4 += ((NI) 1); } LA91: ; } } } goto LA82; LA86: ; { { NI i_Pt4Zh2ciu8EuLyJwI9cmbiA_7; NI HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_6; NI LOC94; NI res_m5J4mUGwPHABM2PAgzqS6Q_5; i_Pt4Zh2ciu8EuLyJwI9cmbiA_7 = (NI)0; HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_6 = (NI)0; LOC94 = (NI)0; LOC94 = sonslen_gG7hUAX9cA629ahMLVL3xN4w(t0); HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_6 = (NI)(LOC94 - ((NI) 1)); res_m5J4mUGwPHABM2PAgzqS6Q_5 = ((NI) 0); { while (1) { if (!(res_m5J4mUGwPHABM2PAgzqS6Q_5 <= HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_6)) goto LA96; i_Pt4Zh2ciu8EuLyJwI9cmbiA_7 = res_m5J4mUGwPHABM2PAgzqS6Q_5; hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*t0).sons->data[i_Pt4Zh2ciu8EuLyJwI9cmbiA_7], flags0); res_m5J4mUGwPHABM2PAgzqS6Q_5 += ((NI) 1); } LA96: ; } } } LA82: ; } break; case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 20): { hashtree_Ul2QCzOnP8QLhigfcr4V8Q(c0, (*t0).n); hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*t0).sons->data[((NI) 0)], flags0); } break; case ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 25): { NimStringDesc* LOC99; LOC99 = (NimStringDesc*)0; { if (!(((*t0).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 14))&31U)))!=0)) goto LA102; LOC99 = copyString(((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_72)); } goto LA100; LA102: ; { LOC99 = copyString(((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_73)); } LA100: ; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, LOC99); { NIM_BOOL LOC107; Tnode_bROa11lyF5vxEN9aYNbHmhw* params0; LOC107 = (NIM_BOOL)0; LOC107 = ((flags0 &(1U<<((NU)(((Considerflag_9a9az8WnKmq9bvt8EXoSUES7g) 0))&7U)))!=0); if (!(LOC107)) goto LA108; LOC107 = !(((*t0).n == NIM_NIL)); LA108: ; if (!LOC107) goto LA109; params0 = (*t0).n; { NI i_Pt4Zh2ciu8EuLyJwI9cmbiA_8; NI HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_7; NI i_Pt4Zh2ciu8EuLyJwI9cmbiA_9; i_Pt4Zh2ciu8EuLyJwI9cmbiA_8 = (NI)0; HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_7 = (NI)0; HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_7 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(params0); i_Pt4Zh2ciu8EuLyJwI9cmbiA_9 = ((NI) 1); { while (1) { Tsym_AXG7xcvKqaxY6koRX1xkCw* param0; Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC114; if (!(i_Pt4Zh2ciu8EuLyJwI9cmbiA_9 < HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_7)) goto LA113; i_Pt4Zh2ciu8EuLyJwI9cmbiA_8 = i_Pt4Zh2ciu8EuLyJwI9cmbiA_9; LOC114 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; LOC114 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(params0, i_Pt4Zh2ciu8EuLyJwI9cmbiA_8); param0 = (*LOC114).kindU.S4.sym; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, (*(*param0).name).s); HEX26HEX3D_dBguJV2zAMoZnepRAe9a1Hw(c0, 58); hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*param0).typ, flags0); HEX26HEX3D_dBguJV2zAMoZnepRAe9a1Hw(c0, 44); i_Pt4Zh2ciu8EuLyJwI9cmbiA_9 += ((NI) 1); } LA113: ; } } hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*t0).sons->data[((NI) 0)], flags0); } goto LA105; LA109: ; { { NI i_Pt4Zh2ciu8EuLyJwI9cmbiA_10; NI HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_8; NI LOC117; NI res_m5J4mUGwPHABM2PAgzqS6Q_6; i_Pt4Zh2ciu8EuLyJwI9cmbiA_10 = (NI)0; HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_8 = (NI)0; LOC117 = (NI)0; LOC117 = len_gG7hUAX9cA629ahMLVL3xN4w_2(t0); HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_8 = (LOC117 - 1); res_m5J4mUGwPHABM2PAgzqS6Q_6 = ((NI) 0); { while (1) { if (!(res_m5J4mUGwPHABM2PAgzqS6Q_6 <= HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_8)) goto LA119; i_Pt4Zh2ciu8EuLyJwI9cmbiA_10 = res_m5J4mUGwPHABM2PAgzqS6Q_6; hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*t0).sons->data[i_Pt4Zh2ciu8EuLyJwI9cmbiA_10], flags0); res_m5J4mUGwPHABM2PAgzqS6Q_6 += ((NI) 1); } LA119: ; } } } LA105: ; HEX26HEX3D_dBguJV2zAMoZnepRAe9a1Hw(c0, ((NIM_CHAR) ((*t0).callconv))); { if (!!(((flags0 &(1U<<((NU)(((Considerflag_9a9az8WnKmq9bvt8EXoSUES7g) 1))&7U)))!=0))) goto LA122; { if (!(((*t0).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 1))&31U)))!=0)) goto LA126; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_74)); } LA126: ; { if (!(((*t0).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 7))&31U)))!=0)) goto LA130; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_75)); } LA130: ; } LA122: ; { if (!(((*t0).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 0))&31U)))!=0)) goto LA134; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_76)); } LA134: ; } break; default: { { NI i_Pt4Zh2ciu8EuLyJwI9cmbiA_11; NI HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_9; NI LOC138; NI res_m5J4mUGwPHABM2PAgzqS6Q_7; i_Pt4Zh2ciu8EuLyJwI9cmbiA_11 = (NI)0; HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_9 = (NI)0; LOC138 = (NI)0; LOC138 = len_gG7hUAX9cA629ahMLVL3xN4w_2(t0); HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_9 = (LOC138 - 1); res_m5J4mUGwPHABM2PAgzqS6Q_7 = ((NI) 0); { while (1) { if (!(res_m5J4mUGwPHABM2PAgzqS6Q_7 <= HEX3Atmp_tjDfCIDWTxcBUeVmCL87VA_9)) goto LA140; i_Pt4Zh2ciu8EuLyJwI9cmbiA_11 = res_m5J4mUGwPHABM2PAgzqS6Q_7; hashtype_CLZdk3vcYuqhxMN0Uzt5bQ(c0, (*t0).sons->data[i_Pt4Zh2ciu8EuLyJwI9cmbiA_11], flags0); res_m5J4mUGwPHABM2PAgzqS6Q_7 += ((NI) 1); } LA140: ; } } } break; } { NIM_BOOL LOC143; LOC143 = (NIM_BOOL)0; LOC143 = (((*t0).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 16))&31U)))!=0); if (!(LOC143)) goto LA144; LOC143 = !(((flags0 &(1U<<((NU)(((Considerflag_9a9az8WnKmq9bvt8EXoSUES7g) 1))&7U)))!=0)); LA144: ; if (!LOC143) goto LA145; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA(c0, ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_77)); } LA145: ; }BeforeRet: ; } N_NIMCALL(void, hashproc_HmyzvfD4nXMkZxnFGqPQ5w)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0, TY_qtqsWM5aXmcpMIVmvq3kAA Result) { Md5context_oMciKUdSdCaIeMtcxbiPOw c0; Tsym_AXG7xcvKqaxY6koRX1xkCw* m0; Tsym_AXG7xcvKqaxY6koRX1xkCw* p0; memset((void*)(&c0), 0, sizeof(c0)); md5init_TD1qNpCBAlKjZlVJ9cbPeVg((&c0)); hashtype_CLZdk3vcYuqhxMN0Uzt5bQ((&c0), (*s0).typ, 1); m0 = s0; { while (1) { if (!!(((*m0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 6)))) goto LA2; m0 = (*m0).owner; } LA2: ; } p0 = (*m0).owner; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA((&c0), (*(*p0).name).s); HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA((&c0), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_66)); HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA((&c0), (*(*m0).name).s); { if (!(((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 25))&31U)))!=0)) goto LA5; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA((&c0), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_78)); } LA5: ; md5final_QVR9bnyINbQRLkYQjTeezvw((&c0), Result); } N_NIMCALL(NI, hash_GmDea9bcNl3tvgPhCgWeYfQ)(TY_qtqsWM5aXmcpMIVmvq3kAA u0) { NI result0; result0 = (NI)0; result0 = ((NI) 0); { NI x_wPm8KZXdVCqKgCg8hHXT1w; NI res_gj2XamWXU52frmB1hwKGbQ; x_wPm8KZXdVCqKgCg8hHXT1w = (NI)0; res_gj2XamWXU52frmB1hwKGbQ = ((NI) 0); { while (1) { if (!(res_gj2XamWXU52frmB1hwKGbQ <= ((NI) 3))) goto LA3; x_wPm8KZXdVCqKgCg8hHXT1w = res_gj2XamWXU52frmB1hwKGbQ; result0 = (NI)((NI)((NU64)(result0) << (NU64)(((NI) 8))) | ((NI) (u0[(x_wPm8KZXdVCqKgCg8hHXT1w)- 0]))); res_gj2XamWXU52frmB1hwKGbQ += ((NI) 1); } LA3: ; } } return result0; } static N_INLINE(NIM_BOOL, equalmem_fmeFeLBvgmAHG9bC8ETS9bYQropes)(void* a0, void* b0, NI size0) { NIM_BOOL result0; int LOC1; result0 = (NIM_BOOL)0; LOC1 = (int)0; LOC1 = memcmp(a0, b0, ((size_t) (size0))); result0 = (LOC1 == ((NI32) 0)); return result0; } N_NIMCALL(NIM_BOOL, HEX3DHEX3D_0iUwL9ajONRz2GYAZk9cgslg)(TY_qtqsWM5aXmcpMIVmvq3kAA a0, TY_qtqsWM5aXmcpMIVmvq3kAA b0) { NIM_BOOL result0; result0 = (NIM_BOOL)0; result0 = equalmem_fmeFeLBvgmAHG9bC8ETS9bYQropes(((void*) (a0)), ((void*) (b0)), ((NI) (((NI)sizeof(TY_qtqsWM5aXmcpMIVmvq3kAA))))); return result0; } N_NIMCALL(void, hashnonproc_NjJGUHVEg1oG10FIZSXO9cQ_2)(Tsym_AXG7xcvKqaxY6koRX1xkCw* s0, TY_qtqsWM5aXmcpMIVmvq3kAA Result) { Md5context_oMciKUdSdCaIeMtcxbiPOw c0; Tsym_AXG7xcvKqaxY6koRX1xkCw* it0; memset((void*)(&c0), 0, sizeof(c0)); md5init_TD1qNpCBAlKjZlVJ9cbPeVg((&c0)); hashsym_x6rLJUbCoK8BIhgPrdArYA((&c0), s0); it0 = s0; { while (1) { if (!!((it0 == NIM_NIL))) goto LA2; HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA((&c0), (*(*it0).name).s); HEX26HEX3D_8qd9ai8arYbQ4l9aoGSiETLA((&c0), ((NimStringDesc*) &T_e0lkmDV64LUjE3ua6F9agUw_66)); it0 = (*it0).owner; } LA2: ; } { if (!((*s0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 3))) goto LA5; HEX26HEX3D_pwo4RLuUt2VagzQ040GVgw((&c0), ((NI64) ((*s0).position))); } LA5: ; md5final_QVR9bnyINbQRLkYQjTeezvw((&c0), Result); } N_NIMCALL(void, hashtype_Cq9bE7w5AuevkqC3yjwXHng)(Ttype_LTUWCZolpovw9cWE3JBWSUw* t0, Considerflag_9a9az8WnKmq9bvt8EXoSUES7g_Set flags0, TY_qtqsWM5aXmcpMIVmvq3kAA Result) { Md5context_oMciKUdSdCaIeMtcxbiPOw c0; memset((void*)(&c0), 0, sizeof(c0)); md5init_TD1qNpCBAlKjZlVJ9cbPeVg((&c0)); hashtype_CLZdk3vcYuqhxMN0Uzt5bQ((&c0), t0, (flags0 | 4)); md5final_QVR9bnyINbQRLkYQjTeezvw((&c0), Result); } NIM_EXTERNC N_NOINLINE(void, compiler_sighashesInit000)(void) { } NIM_EXTERNC N_NOINLINE(void, compiler_sighashesDatInit000)(void) { }