Files
csources-nimble/nimble-linux/@m..@s..@s..@s..@s.choosenim@stoolchains@snim-@hversion-1-6@slib@spure@salgorithm.nim.c
T

1174 lines
59 KiB
C

/* Generated by Nim Compiler v1.6.11 */
#define NIM_INTBITS 64
#include "nimbase.h"
#include <string.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
# define nimfr_(proc, file) \
TFrame FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = 0; nimFrame(&FR_);
# define nimfrs_(proc, file, slots, length) \
struct {TFrame* prev;NCSTRING procname;NI line;NCSTRING filename; NI len; VarSlot s[slots];} FR_; \
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = length; nimFrame((TFrame*)&FR_);
# define nimln_(n, file) \
FR_.line = n; FR_.filename = file;
typedef struct NimStringDesc NimStringDesc;
typedef struct TGenericSeq TGenericSeq;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__fhDBBEpmMT58akJuEEHXxQ tySequence__fhDBBEpmMT58akJuEEHXxQ;
typedef struct tyTuple__xNm5d5jOgkHsR74FkVoLcA tyTuple__xNm5d5jOgkHsR74FkVoLcA;
typedef struct tyObject_Version__9bU0a4Oqtl9aJmGyzYi8ZnBA tyObject_Version__9bU0a4Oqtl9aJmGyzYi8ZnBA;
typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
typedef struct TNimType TNimType;
typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
typedef struct tyTuple__LCURwohbLBusrL8hdCnvng tyTuple__LCURwohbLBusrL8hdCnvng;
typedef struct tySequence__HhwRVSXQRFCCEUo2zMKJVg tySequence__HhwRVSXQRFCCEUo2zMKJVg;
struct TGenericSeq {
NI len;
NI reserved;
};
struct NimStringDesc {
TGenericSeq Sup;
NIM_CHAR data[SEQ_DECL_SIZE];
};
typedef NU8 tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA;
typedef struct {
N_NIMCALL_PTR(NI, ClP_0) (NimStringDesc* x, NimStringDesc* y, void* ClE_0);
void* ClE_0;
} tyProc__3pmh9bG9bLpdxUjFu9cDtbZaA;
typedef N_CLOSURE_PTR(NI, TM__JdC9c6SaUkvO1XjYuWP1JWQ_8) (NimStringDesc* x, NimStringDesc* y);
typedef N_CLOSURE_PTR(NI, TM__JdC9c6SaUkvO1XjYuWP1JWQ_12) (NimStringDesc* x, NimStringDesc* y);
typedef N_CLOSURE_PTR(NI, TM__JdC9c6SaUkvO1XjYuWP1JWQ_24) (NimStringDesc* x, NimStringDesc* y, void* ClE_0);
struct tyObject_Version__9bU0a4Oqtl9aJmGyzYi8ZnBA {
NimStringDesc* version;
};
struct tyTuple__xNm5d5jOgkHsR74FkVoLcA {
tyObject_Version__9bU0a4Oqtl9aJmGyzYi8ZnBA Field0;
NimStringDesc* Field1;
};
typedef struct {
N_NIMCALL_PTR(NI, ClP_0) (tyTuple__xNm5d5jOgkHsR74FkVoLcA x, tyTuple__xNm5d5jOgkHsR74FkVoLcA y, void* ClE_0);
void* ClE_0;
} tyProc__kYjuROKBDUg9c9angssQauQA;
struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
NI refcount;
TNimType* typ;
};
struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
void* bottom;
};
struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
NI len;
NI cap;
tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
};
typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
};
typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
tyArray__0aOLqZchNi8nWtMTi8ND8w link;
NI key;
NI upperBound;
NI level;
};
struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
NI Field1;
};
typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
NI len;
tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
};
struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
NI minLargeObj;
NI maxLargeObj;
tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
NU32 flBitmap;
tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
NI currMem;
NI maxMem;
NI freeMem;
NI occ;
NI lastSize;
tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
NIM_BOOL locked;
NIM_BOOL blockChunkSizeIncrease;
NI nextChunkSize;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
};
struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
NI stackScans;
NI cycleCollections;
NI maxThreshold;
NI maxStackSize;
NI maxStackCells;
NI cycleTableSize;
NI64 maxPause;
};
struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
NI counter;
NI max;
tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
};
struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
NI cycleThreshold;
NI zctThreshold;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
NI recGcLock;
tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
NI gcThreadId;
};
typedef N_CLOSURE_PTR(NI, TM__JdC9c6SaUkvO1XjYuWP1JWQ_29) (tyTuple__xNm5d5jOgkHsR74FkVoLcA x, tyTuple__xNm5d5jOgkHsR74FkVoLcA y);
typedef N_CLOSURE_PTR(NI, TM__JdC9c6SaUkvO1XjYuWP1JWQ_32) (tyTuple__xNm5d5jOgkHsR74FkVoLcA x, tyTuple__xNm5d5jOgkHsR74FkVoLcA y);
typedef N_CLOSURE_PTR(NI, TM__JdC9c6SaUkvO1XjYuWP1JWQ_47) (tyTuple__xNm5d5jOgkHsR74FkVoLcA x, tyTuple__xNm5d5jOgkHsR74FkVoLcA y);
typedef N_CLOSURE_PTR(NI, TM__JdC9c6SaUkvO1XjYuWP1JWQ_50) (tyTuple__xNm5d5jOgkHsR74FkVoLcA x, tyTuple__xNm5d5jOgkHsR74FkVoLcA y);
typedef struct {
N_NIMCALL_PTR(NI, ClP_0) (tyTuple__LCURwohbLBusrL8hdCnvng x, tyTuple__LCURwohbLBusrL8hdCnvng y, void* ClE_0);
void* ClE_0;
} tyProc__9bFkAsJczwkLbIsHS9cPg0Jw;
typedef NU8 tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg;
struct tyTuple__LCURwohbLBusrL8hdCnvng {
tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg Field0;
NimStringDesc* Field1;
};
typedef N_CLOSURE_PTR(NI, TM__JdC9c6SaUkvO1XjYuWP1JWQ_67) (tyTuple__LCURwohbLBusrL8hdCnvng x, tyTuple__LCURwohbLBusrL8hdCnvng y);
typedef N_CLOSURE_PTR(NI, TM__JdC9c6SaUkvO1XjYuWP1JWQ_70) (tyTuple__LCURwohbLBusrL8hdCnvng x, tyTuple__LCURwohbLBusrL8hdCnvng y);
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
TGenericSeq Sup;
NimStringDesc* data[SEQ_DECL_SIZE];
};
struct tySequence__fhDBBEpmMT58akJuEEHXxQ {
TGenericSeq Sup;
tyTuple__xNm5d5jOgkHsR74FkVoLcA data[SEQ_DECL_SIZE];
};
struct tySequence__HhwRVSXQRFCCEUo2zMKJVg {
TGenericSeq Sup;
tyTuple__LCURwohbLBusrL8hdCnvng data[SEQ_DECL_SIZE];
};
N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError2)(NI i, NI n);
N_LIB_PRIVATE N_NOINLINE(void, raiseOverflow)(void);
static N_INLINE(void, nimFrame)(TFrame* s);
N_LIB_PRIVATE N_NOINLINE(void, callDepthLimitReached__system_2997)(void);
static N_INLINE(void, popFrame)(void);
N_LIB_PRIVATE N_NIMCALL(void, sort__nimblepkgZchecksums_91)(NimStringDesc** a, NI aLen_0, tyProc__3pmh9bG9bLpdxUjFu9cDtbZaA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, newSeq__systemZio_504)(NI len);
N_LIB_PRIVATE N_NOINLINE(void, raiseRangeErrorI)(NI64 i, NI64 a, NI64 b);
N_LIB_PRIVATE N_NIMCALL(void, mergeAlt__nimblepkgZchecksums_108)(NimStringDesc** a, NI aLen_0, NimStringDesc** b, NI bLen_0, NI lo, NI m, NI hi, tyProc__3pmh9bG9bLpdxUjFu9cDtbZaA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
static N_INLINE(NI, star___pureZalgorithm_8)(NI x, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__systemZassertions_56)(NimStringDesc* msg);
N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
N_LIB_PRIVATE N_NIMCALL(NI, cmp__nimblepkgZchecksums_84)(NimStringDesc* x, NimStringDesc* y);
static N_INLINE(void, nimZeroMem)(void* p, NI size);
static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
N_LIB_PRIVATE N_NIMCALL(tySequence__fhDBBEpmMT58akJuEEHXxQ*, newSeq__nimblepkgZdownload_215)(NI len);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyStringRC1)(NimStringDesc* src);
static N_INLINE(void, nimGCunrefNoCycle)(void* p);
static N_INLINE(void, decRef__system_5344)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
static N_INLINE(void, rtlAddZCT__system_5342)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5293)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5299)(void* usr);
N_LIB_PRIVATE N_NIMCALL(void, sort__nimblepkgZdownload_231)(tyTuple__xNm5d5jOgkHsR74FkVoLcA* a, NI aLen_0, tyProc__kYjuROKBDUg9c9angssQauQA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
N_LIB_PRIVATE N_NIMCALL(void, mergeAlt__nimblepkgZdownload_248)(tyTuple__xNm5d5jOgkHsR74FkVoLcA* a, NI aLen_0, tyTuple__xNm5d5jOgkHsR74FkVoLcA* b, NI bLen_0, NI lo, NI m, NI hi, tyProc__kYjuROKBDUg9c9angssQauQA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
N_LIB_PRIVATE N_NIMCALL(tySequence__fhDBBEpmMT58akJuEEHXxQ*, newSeq__nimble_17526)(NI len);
N_LIB_PRIVATE N_NIMCALL(void, mergeAlt__nimble_17537)(tyTuple__xNm5d5jOgkHsR74FkVoLcA* a, NI aLen_0, tyTuple__xNm5d5jOgkHsR74FkVoLcA* b, NI bLen_0, NI lo, NI m, NI hi, tyProc__kYjuROKBDUg9c9angssQauQA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
N_LIB_PRIVATE N_NIMCALL(void, reverse__pureZstrutils_561)(NimStringDesc** a, NI aLen_0, NI first, NI last);
N_LIB_PRIVATE N_NIMCALL(tySequence__HhwRVSXQRFCCEUo2zMKJVg*, newSeq__nimble_19093)(NI len);
N_LIB_PRIVATE N_NIMCALL(void, mergeAlt__nimble_19104)(tyTuple__LCURwohbLBusrL8hdCnvng* a, NI aLen_0, tyTuple__LCURwohbLBusrL8hdCnvng* b, NI bLen_0, NI lo, NI m, NI hi, tyProc__9bFkAsJczwkLbIsHS9cPg0Jw cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
STRING_LITERAL(TM__JdC9c6SaUkvO1XjYuWP1JWQ_9, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim(334, 10) `j <= m` ", 94);
extern TFrame* framePtr__system_2564;
extern TFrame* framePtr__system_2564;
extern TFrame* framePtr__system_2564;
extern TFrame* framePtr__system_2564;
extern TFrame* framePtr__system_2564;
extern TFrame* framePtr__system_2564;
extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5246;
static N_INLINE(void, nimFrame)(TFrame* s) {
{
if (!(framePtr__system_2564 == ((TFrame*) NIM_NIL))) goto LA3_;
(*s).calldepth = ((NI16) 0);
}
goto LA1_;
LA3_: ;
{
(*s).calldepth = (NI16)((*framePtr__system_2564).calldepth + ((NI16) 1));
}
LA1_: ;
(*s).prev = framePtr__system_2564;
framePtr__system_2564 = s;
{
if (!((*s).calldepth == ((NI16) 2000))) goto LA8_;
callDepthLimitReached__system_2997();
}
LA8_: ;
}
static N_INLINE(void, popFrame)(void) {
framePtr__system_2564 = (*framePtr__system_2564).prev;
}
N_LIB_PRIVATE N_NIMCALL(void, fill__pureZstrutils_1466)(NI* a, NI aLen_0, NI value) {
NI xX60gensym166_;
nimfr_("fill", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
nimln_(68, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
xX60gensym166_ = ((NI) 0);
{
nimln_(94, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_2;
nimln_(69, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
nimln_(94, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (!(xX60gensym166_ <= (aLen_0-1))) goto LA2;
if (xX60gensym166_ < 0 || xX60gensym166_ >= aLen_0){ raiseIndexError2(xX60gensym166_,aLen_0-1); }
a[xX60gensym166_] = value;
nimln_(71, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(xX60gensym166_, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_2)) { raiseOverflow(); };
xX60gensym166_ = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_2);
} LA2: ;
}
popFrame();
}
static N_INLINE(NI, star___pureZalgorithm_8)(NI x, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
NI result;
NI y;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_5;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_6;
nimfr_("*", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
result = (NI)0;
nimln_(64, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimSubInt(order, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_5)) { raiseOverflow(); };
y = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_5);
nimln_(65, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimSubInt((NI)(x ^ y), y, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_6)) { raiseOverflow(); };
result = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_6);
popFrame();
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, mergeAlt__nimblepkgZchecksums_108)(NimStringDesc** a, NI aLen_0, NimStringDesc** b, NI bLen_0, NI lo, NI m, NI hi, tyProc__3pmh9bG9bLpdxUjFu9cDtbZaA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
NI j;
NI bb;
NI i;
NI k;
nimfr_("mergeAlt", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{ nimln_(331, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_7;
NI T3_;
NI T4_;
if (m < 0 || m >= aLen_0){ raiseIndexError2(m,aLen_0-1); }
if (nimAddInt(m, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_7)) { raiseOverflow(); };
if ((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_7) < 0 || (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_7) >= aLen_0){ raiseIndexError2((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_7),aLen_0-1); }
T3_ = (NI)0;
T3_ = cmp.ClE_0? cmp.ClP_0(a[m], a[(NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_7)], cmp.ClE_0):((TM__JdC9c6SaUkvO1XjYuWP1JWQ_8)(cmp.ClP_0))(a[m], a[(NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_7)]);
T4_ = (NI)0;
T4_ = star___pureZalgorithm_8(T3_, order);
if (!(T4_ <= ((NI) 0))) goto LA5_;
goto BeforeRet_;
}
LA5_: ;
nimln_(332, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
j = lo;
nimln_(334, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{
if (!!((j <= m))) goto LA9_;
failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__JdC9c6SaUkvO1XjYuWP1JWQ_9));
}
LA9_: ;
nimln_(336, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
bb = ((NI) 0);
{
nimln_(337, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_10;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_11;
if (!(j <= m)) goto LA12;
if (bb < 0 || bb >= bLen_0){ raiseIndexError2(bb,bLen_0-1); }
nimln_(338, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (j < 0 || j >= aLen_0){ raiseIndexError2(j,aLen_0-1); }
unsureAsgnRef((void**) (&b[bb]), a[j]);
nimln_(339, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(bb, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_10)) { raiseOverflow(); };
bb = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_10);
nimln_(340, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(j, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_11)) { raiseOverflow(); };
j = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_11);
} LA12: ;
}
nimln_(344, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
i = ((NI) 0);
nimln_(345, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
k = lo;
{
nimln_(347, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NIM_BOOL T15_;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_15;
T15_ = (NIM_BOOL)0;
T15_ = (k < j);
if (!(T15_)) goto LA16_;
T15_ = (j <= hi);
LA16_: ;
if (!T15_) goto LA14;
nimln_(348, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{
NI T19_;
NI T20_;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_13;
if (i < 0 || i >= bLen_0){ raiseIndexError2(i,bLen_0-1); }
if (j < 0 || j >= aLen_0){ raiseIndexError2(j,aLen_0-1); }
T19_ = (NI)0;
T19_ = cmp.ClE_0? cmp.ClP_0(b[i], a[j], cmp.ClE_0):((TM__JdC9c6SaUkvO1XjYuWP1JWQ_12)(cmp.ClP_0))(b[i], a[j]);
T20_ = (NI)0;
T20_ = star___pureZalgorithm_8(T19_, order);
if (!(T20_ <= ((NI) 0))) goto LA21_;
if (k < 0 || k >= aLen_0){ raiseIndexError2(k,aLen_0-1); }
nimln_(349, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (i < 0 || i >= bLen_0){ raiseIndexError2(i,bLen_0-1); }
unsureAsgnRef((void**) (&a[k]), b[i]);
nimln_(350, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(i, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_13)) { raiseOverflow(); };
i = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_13);
}
goto LA17_;
LA21_: ;
{
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_14;
if (k < 0 || k >= aLen_0){ raiseIndexError2(k,aLen_0-1); }
nimln_(352, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (j < 0 || j >= aLen_0){ raiseIndexError2(j,aLen_0-1); }
unsureAsgnRef((void**) (&a[k]), a[j]);
nimln_(353, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(j, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_14)) { raiseOverflow(); };
j = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_14);
}
LA17_: ;
nimln_(354, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(k, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_15)) { raiseOverflow(); };
k = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_15);
} LA14: ;
}
{
nimln_(357, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_16;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_17;
if (!(k < j)) goto LA25;
if (k < 0 || k >= aLen_0){ raiseIndexError2(k,aLen_0-1); }
nimln_(358, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (i < 0 || i >= bLen_0){ raiseIndexError2(i,bLen_0-1); }
unsureAsgnRef((void**) (&a[k]), b[i]);
nimln_(359, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(k, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_16)) { raiseOverflow(); };
k = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_16);
nimln_(360, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(i, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_17)) { raiseOverflow(); };
i = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_17);
} LA25: ;
}
}BeforeRet_: ;
popFrame();
}
N_LIB_PRIVATE N_NIMCALL(void, sort__nimblepkgZchecksums_91)(NimStringDesc** a, NI aLen_0, tyProc__3pmh9bG9bLpdxUjFu9cDtbZaA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
NI n;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* b;
NI s;
nimfr_("sort", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
nimln_(407, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
n = aLen_0;
nimln_(408, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (((NI)(n / ((NI) 2))) < ((NI) 0) || ((NI)(n / ((NI) 2))) > ((NI) IL64(9223372036854775807))){ raiseRangeErrorI((NI)(n / ((NI) 2)), ((NI) 0), ((NI) IL64(9223372036854775807))); }
b = newSeq__systemZio_504(((NI) ((NI)(n / ((NI) 2)))));
nimln_(409, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
s = ((NI) 1);
{
nimln_(410, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI m;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_3;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_4;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_23;
if (!(s < n)) goto LA2;
nimln_(411, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimSubInt(n, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_3)) { raiseOverflow(); };
if (nimSubInt((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_3), s, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_4)) { raiseOverflow(); };
m = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_4);
{
nimln_(412, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_18;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_19;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_20;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_21;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_22;
if (!(((NI) 0) <= m)) goto LA4;
nimln_(413, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimSubInt(m, s, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_18)) { raiseOverflow(); };
if (nimAddInt((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_18), ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_19)) { raiseOverflow(); };
if (nimAddInt(m, s, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_20)) { raiseOverflow(); };
mergeAlt__nimblepkgZchecksums_108(a, aLen_0, (b) ? (b->data) : NIM_NIL, (b ? b->Sup.len : 0), (((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_19) >= ((NI) 0)) ? (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_19) : ((NI) 0)), m, (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_20), cmp, order);
nimln_(414, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimMulInt(s, ((NI) 2), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_21)) { raiseOverflow(); };
if (nimSubInt(m, (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_21), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_22)) { raiseOverflow(); };
m = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_22);
} LA4: ;
}
nimln_(415, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimMulInt(s, ((NI) 2), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_23)) { raiseOverflow(); };
s = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_23);
} LA2: ;
}
popFrame();
}
static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
void* T1_;
T1_ = (void*)0;
T1_ = memset(a, v, ((size_t) (size)));
}
static N_INLINE(void, nimZeroMem)(void* p, NI size) {
nimSetMem__systemZmemory_7(p, ((int) 0), size);
}
N_LIB_PRIVATE N_NIMCALL(void, sort__nimblepkgZchecksums_80)(NimStringDesc** a, NI aLen_0, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
tyProc__3pmh9bG9bLpdxUjFu9cDtbZaA T1_;
nimfr_("sort", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
nimln_(417, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
nimZeroMem((void*)(&T1_), sizeof(tyProc__3pmh9bG9bLpdxUjFu9cDtbZaA));
T1_.ClP_0 = ((TM__JdC9c6SaUkvO1XjYuWP1JWQ_24) (cmp__nimblepkgZchecksums_84)); T1_.ClE_0 = NIM_NIL;
sort__nimblepkgZchecksums_91(a, aLen_0, T1_, order);
popFrame();
}
static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
NI result;
nimfr_("-%", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/arithmetics.nim");
result = (NI)0;
nimln_(414, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/arithmetics.nim");
nimln_(418, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/arithmetics.nim");
result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
popFrame();
return result;
}
static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
NIM_BOOL result;
nimfr_("<%", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/comparisons.nim");
result = (NIM_BOOL)0;
nimln_(186, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/comparisons.nim");
nimln_(188, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/comparisons.nim");
result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y))));
popFrame();
return result;
}
static N_INLINE(void, rtlAddZCT__system_5342)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
nimfr_("rtlAddZCT", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/gc.nim");
nimln_(243, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/gc.nim");
addZCT__system_5293((&gch__system_5246.zct), c);
popFrame();
}
static N_INLINE(void, decRef__system_5344)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
nimfr_("decRef", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/gc.nim");
nimln_(248, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/gc.nim");
(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
nimln_(249, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/gc.nim");
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
if (!T3_) goto LA4_;
nimln_(250, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/gc.nim");
rtlAddZCT__system_5342(c);
}
LA4_: ;
popFrame();
}
static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5299)(void* usr) {
tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
NI T1_;
nimfr_("usrToCell", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/gc.nim");
result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
nimln_(177, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/gc.nim");
T1_ = (NI)0;
T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16));
result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
popFrame();
return result;
}
static N_INLINE(void, nimGCunrefNoCycle)(void* p) {
tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
nimfr_("nimGCunrefNoCycle", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/gc.nim");
nimln_(276, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/gc.nim");
T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
T1_ = usrToCell__system_5299(p);
decRef__system_5344(T1_);
popFrame();
}
N_LIB_PRIVATE N_NIMCALL(void, mergeAlt__nimblepkgZdownload_248)(tyTuple__xNm5d5jOgkHsR74FkVoLcA* a, NI aLen_0, tyTuple__xNm5d5jOgkHsR74FkVoLcA* b, NI bLen_0, NI lo, NI m, NI hi, tyProc__kYjuROKBDUg9c9angssQauQA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
NI j;
NI bb;
NI i;
NI k;
nimfr_("mergeAlt", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{ nimln_(331, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_28;
NI T3_;
NI T4_;
if (m < 0 || m >= aLen_0){ raiseIndexError2(m,aLen_0-1); }
if (nimAddInt(m, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_28)) { raiseOverflow(); };
if ((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_28) < 0 || (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_28) >= aLen_0){ raiseIndexError2((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_28),aLen_0-1); }
T3_ = (NI)0;
T3_ = cmp.ClE_0? cmp.ClP_0(a[m], a[(NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_28)], cmp.ClE_0):((TM__JdC9c6SaUkvO1XjYuWP1JWQ_29)(cmp.ClP_0))(a[m], a[(NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_28)]);
T4_ = (NI)0;
T4_ = star___pureZalgorithm_8(T3_, order);
if (!(T4_ <= ((NI) 0))) goto LA5_;
goto BeforeRet_;
}
LA5_: ;
nimln_(332, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
j = lo;
nimln_(334, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{
if (!!((j <= m))) goto LA9_;
failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__JdC9c6SaUkvO1XjYuWP1JWQ_9));
}
LA9_: ;
nimln_(336, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
bb = ((NI) 0);
{
nimln_(337, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_30;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_31;
if (!(j <= m)) goto LA12;
if (bb < 0 || bb >= bLen_0){ raiseIndexError2(bb,bLen_0-1); }
nimln_(338, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (j < 0 || j >= aLen_0){ raiseIndexError2(j,aLen_0-1); }
unsureAsgnRef((void**) (&b[bb].Field0.version), a[j].Field0.version);
unsureAsgnRef((void**) (&b[bb].Field1), a[j].Field1);
nimln_(339, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(bb, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_30)) { raiseOverflow(); };
bb = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_30);
nimln_(340, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(j, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_31)) { raiseOverflow(); };
j = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_31);
} LA12: ;
}
nimln_(344, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
i = ((NI) 0);
nimln_(345, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
k = lo;
{
nimln_(347, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NIM_BOOL T15_;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_35;
T15_ = (NIM_BOOL)0;
T15_ = (k < j);
if (!(T15_)) goto LA16_;
T15_ = (j <= hi);
LA16_: ;
if (!T15_) goto LA14;
nimln_(348, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{
NI T19_;
NI T20_;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_33;
if (i < 0 || i >= bLen_0){ raiseIndexError2(i,bLen_0-1); }
if (j < 0 || j >= aLen_0){ raiseIndexError2(j,aLen_0-1); }
T19_ = (NI)0;
T19_ = cmp.ClE_0? cmp.ClP_0(b[i], a[j], cmp.ClE_0):((TM__JdC9c6SaUkvO1XjYuWP1JWQ_32)(cmp.ClP_0))(b[i], a[j]);
T20_ = (NI)0;
T20_ = star___pureZalgorithm_8(T19_, order);
if (!(T20_ <= ((NI) 0))) goto LA21_;
if (k < 0 || k >= aLen_0){ raiseIndexError2(k,aLen_0-1); }
nimln_(349, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (i < 0 || i >= bLen_0){ raiseIndexError2(i,bLen_0-1); }
unsureAsgnRef((void**) (&a[k].Field0.version), b[i].Field0.version);
unsureAsgnRef((void**) (&a[k].Field1), b[i].Field1);
nimln_(350, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(i, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_33)) { raiseOverflow(); };
i = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_33);
}
goto LA17_;
LA21_: ;
{
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_34;
if (k < 0 || k >= aLen_0){ raiseIndexError2(k,aLen_0-1); }
nimln_(352, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (j < 0 || j >= aLen_0){ raiseIndexError2(j,aLen_0-1); }
unsureAsgnRef((void**) (&a[k].Field0.version), a[j].Field0.version);
unsureAsgnRef((void**) (&a[k].Field1), a[j].Field1);
nimln_(353, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(j, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_34)) { raiseOverflow(); };
j = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_34);
}
LA17_: ;
nimln_(354, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(k, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_35)) { raiseOverflow(); };
k = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_35);
} LA14: ;
}
{
nimln_(357, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_36;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_37;
if (!(k < j)) goto LA25;
if (k < 0 || k >= aLen_0){ raiseIndexError2(k,aLen_0-1); }
nimln_(358, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (i < 0 || i >= bLen_0){ raiseIndexError2(i,bLen_0-1); }
unsureAsgnRef((void**) (&a[k].Field0.version), b[i].Field0.version);
unsureAsgnRef((void**) (&a[k].Field1), b[i].Field1);
nimln_(359, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(k, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_36)) { raiseOverflow(); };
k = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_36);
nimln_(360, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(i, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_37)) { raiseOverflow(); };
i = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_37);
} LA25: ;
}
}BeforeRet_: ;
popFrame();
}
N_LIB_PRIVATE N_NIMCALL(void, sort__nimblepkgZdownload_231)(tyTuple__xNm5d5jOgkHsR74FkVoLcA* a, NI aLen_0, tyProc__kYjuROKBDUg9c9angssQauQA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
NI n;
tySequence__fhDBBEpmMT58akJuEEHXxQ* b;
NI s;
nimfr_("sort", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
nimln_(407, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
n = aLen_0;
nimln_(408, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (((NI)(n / ((NI) 2))) < ((NI) 0) || ((NI)(n / ((NI) 2))) > ((NI) IL64(9223372036854775807))){ raiseRangeErrorI((NI)(n / ((NI) 2)), ((NI) 0), ((NI) IL64(9223372036854775807))); }
b = newSeq__nimblepkgZdownload_215(((NI) ((NI)(n / ((NI) 2)))));
nimln_(409, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
s = ((NI) 1);
{
nimln_(410, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI m;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_26;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_27;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_43;
if (!(s < n)) goto LA2;
nimln_(411, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimSubInt(n, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_26)) { raiseOverflow(); };
if (nimSubInt((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_26), s, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_27)) { raiseOverflow(); };
m = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_27);
{
nimln_(412, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_38;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_39;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_40;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_41;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_42;
if (!(((NI) 0) <= m)) goto LA4;
nimln_(413, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimSubInt(m, s, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_38)) { raiseOverflow(); };
if (nimAddInt((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_38), ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_39)) { raiseOverflow(); };
if (nimAddInt(m, s, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_40)) { raiseOverflow(); };
mergeAlt__nimblepkgZdownload_248(a, aLen_0, (b) ? (b->data) : NIM_NIL, (b ? b->Sup.len : 0), (((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_39) >= ((NI) 0)) ? (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_39) : ((NI) 0)), m, (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_40), cmp, order);
nimln_(414, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimMulInt(s, ((NI) 2), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_41)) { raiseOverflow(); };
if (nimSubInt(m, (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_41), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_42)) { raiseOverflow(); };
m = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_42);
} LA4: ;
}
nimln_(415, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimMulInt(s, ((NI) 2), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_43)) { raiseOverflow(); };
s = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_43);
} LA2: ;
}
popFrame();
}
N_LIB_PRIVATE N_NIMCALL(tySequence__fhDBBEpmMT58akJuEEHXxQ*, sorted__nimblepkgZdownload_203)(tyTuple__xNm5d5jOgkHsR74FkVoLcA* a, NI aLen_0, tyProc__kYjuROKBDUg9c9angssQauQA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
tySequence__fhDBBEpmMT58akJuEEHXxQ* result;
nimfr_("sorted", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
result = NIM_NIL;
nimln_(444, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if ((aLen_0) < ((NI) 0) || (aLen_0) > ((NI) IL64(9223372036854775807))){ raiseRangeErrorI(aLen_0, ((NI) 0), ((NI) IL64(9223372036854775807))); }
result = newSeq__nimblepkgZdownload_215(((NI) (aLen_0)));
{
NI i;
NI colontmp_;
NI res;
i = (NI)0;
colontmp_ = (NI)0;
nimln_(445, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
colontmp_ = (aLen_0-1);
nimln_(90, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/iterators_1.nim");
res = ((NI) 0);
{
nimln_(91, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/iterators_1.nim");
while (1) {
NimStringDesc* T4_;
NimStringDesc* T5_;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_25;
if (!(res <= colontmp_)) goto LA3;
nimln_(445, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
i = res;
if (i < 0 || i >= (result ? result->Sup.len : 0)){ raiseIndexError2(i,(result ? result->Sup.len : 0)-1); }
if (i < 0 || i >= aLen_0){ raiseIndexError2(i,aLen_0-1); }
T4_ = NIM_NIL;
T4_ = result->data[i].Field0.version; result->data[i].Field0.version = copyStringRC1(a[i].Field0.version);
if (T4_) nimGCunrefNoCycle(T4_);
T5_ = NIM_NIL;
T5_ = result->data[i].Field1; result->data[i].Field1 = copyStringRC1(a[i].Field1);
if (T5_) nimGCunrefNoCycle(T5_);
nimln_(93, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/iterators_1.nim");
if (nimAddInt(res, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_25)) { raiseOverflow(); };
res = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_25);
} LA3: ;
}
}
nimln_(447, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
sort__nimblepkgZdownload_231((result) ? (result->data) : NIM_NIL, (result ? result->Sup.len : 0), cmp, order);
popFrame();
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, mergeAlt__nimble_17537)(tyTuple__xNm5d5jOgkHsR74FkVoLcA* a, NI aLen_0, tyTuple__xNm5d5jOgkHsR74FkVoLcA* b, NI bLen_0, NI lo, NI m, NI hi, tyProc__kYjuROKBDUg9c9angssQauQA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
NI j;
NI bb;
NI i;
NI k;
nimfr_("mergeAlt", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{ nimln_(331, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_46;
NI T3_;
NI T4_;
if (m < 0 || m >= aLen_0){ raiseIndexError2(m,aLen_0-1); }
if (nimAddInt(m, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_46)) { raiseOverflow(); };
if ((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_46) < 0 || (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_46) >= aLen_0){ raiseIndexError2((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_46),aLen_0-1); }
T3_ = (NI)0;
T3_ = cmp.ClE_0? cmp.ClP_0(a[m], a[(NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_46)], cmp.ClE_0):((TM__JdC9c6SaUkvO1XjYuWP1JWQ_47)(cmp.ClP_0))(a[m], a[(NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_46)]);
T4_ = (NI)0;
T4_ = star___pureZalgorithm_8(T3_, order);
if (!(T4_ <= ((NI) 0))) goto LA5_;
goto BeforeRet_;
}
LA5_: ;
nimln_(332, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
j = lo;
nimln_(334, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{
if (!!((j <= m))) goto LA9_;
failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__JdC9c6SaUkvO1XjYuWP1JWQ_9));
}
LA9_: ;
nimln_(336, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
bb = ((NI) 0);
{
nimln_(337, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_48;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_49;
if (!(j <= m)) goto LA12;
if (bb < 0 || bb >= bLen_0){ raiseIndexError2(bb,bLen_0-1); }
nimln_(338, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (j < 0 || j >= aLen_0){ raiseIndexError2(j,aLen_0-1); }
unsureAsgnRef((void**) (&b[bb].Field0.version), a[j].Field0.version);
unsureAsgnRef((void**) (&b[bb].Field1), a[j].Field1);
nimln_(339, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(bb, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_48)) { raiseOverflow(); };
bb = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_48);
nimln_(340, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(j, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_49)) { raiseOverflow(); };
j = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_49);
} LA12: ;
}
nimln_(344, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
i = ((NI) 0);
nimln_(345, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
k = lo;
{
nimln_(347, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NIM_BOOL T15_;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_53;
T15_ = (NIM_BOOL)0;
T15_ = (k < j);
if (!(T15_)) goto LA16_;
T15_ = (j <= hi);
LA16_: ;
if (!T15_) goto LA14;
nimln_(348, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{
NI T19_;
NI T20_;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_51;
if (i < 0 || i >= bLen_0){ raiseIndexError2(i,bLen_0-1); }
if (j < 0 || j >= aLen_0){ raiseIndexError2(j,aLen_0-1); }
T19_ = (NI)0;
T19_ = cmp.ClE_0? cmp.ClP_0(b[i], a[j], cmp.ClE_0):((TM__JdC9c6SaUkvO1XjYuWP1JWQ_50)(cmp.ClP_0))(b[i], a[j]);
T20_ = (NI)0;
T20_ = star___pureZalgorithm_8(T19_, order);
if (!(T20_ <= ((NI) 0))) goto LA21_;
if (k < 0 || k >= aLen_0){ raiseIndexError2(k,aLen_0-1); }
nimln_(349, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (i < 0 || i >= bLen_0){ raiseIndexError2(i,bLen_0-1); }
unsureAsgnRef((void**) (&a[k].Field0.version), b[i].Field0.version);
unsureAsgnRef((void**) (&a[k].Field1), b[i].Field1);
nimln_(350, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(i, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_51)) { raiseOverflow(); };
i = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_51);
}
goto LA17_;
LA21_: ;
{
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_52;
if (k < 0 || k >= aLen_0){ raiseIndexError2(k,aLen_0-1); }
nimln_(352, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (j < 0 || j >= aLen_0){ raiseIndexError2(j,aLen_0-1); }
unsureAsgnRef((void**) (&a[k].Field0.version), a[j].Field0.version);
unsureAsgnRef((void**) (&a[k].Field1), a[j].Field1);
nimln_(353, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(j, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_52)) { raiseOverflow(); };
j = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_52);
}
LA17_: ;
nimln_(354, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(k, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_53)) { raiseOverflow(); };
k = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_53);
} LA14: ;
}
{
nimln_(357, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_54;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_55;
if (!(k < j)) goto LA25;
if (k < 0 || k >= aLen_0){ raiseIndexError2(k,aLen_0-1); }
nimln_(358, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (i < 0 || i >= bLen_0){ raiseIndexError2(i,bLen_0-1); }
unsureAsgnRef((void**) (&a[k].Field0.version), b[i].Field0.version);
unsureAsgnRef((void**) (&a[k].Field1), b[i].Field1);
nimln_(359, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(k, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_54)) { raiseOverflow(); };
k = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_54);
nimln_(360, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(i, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_55)) { raiseOverflow(); };
i = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_55);
} LA25: ;
}
}BeforeRet_: ;
popFrame();
}
N_LIB_PRIVATE N_NIMCALL(void, sort__nimble_17514)(tyTuple__xNm5d5jOgkHsR74FkVoLcA* a, NI aLen_0, tyProc__kYjuROKBDUg9c9angssQauQA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
NI n;
tySequence__fhDBBEpmMT58akJuEEHXxQ* b;
NI s;
nimfr_("sort", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
nimln_(407, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
n = aLen_0;
nimln_(408, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (((NI)(n / ((NI) 2))) < ((NI) 0) || ((NI)(n / ((NI) 2))) > ((NI) IL64(9223372036854775807))){ raiseRangeErrorI((NI)(n / ((NI) 2)), ((NI) 0), ((NI) IL64(9223372036854775807))); }
b = newSeq__nimble_17526(((NI) ((NI)(n / ((NI) 2)))));
nimln_(409, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
s = ((NI) 1);
{
nimln_(410, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI m;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_44;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_45;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_61;
if (!(s < n)) goto LA2;
nimln_(411, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimSubInt(n, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_44)) { raiseOverflow(); };
if (nimSubInt((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_44), s, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_45)) { raiseOverflow(); };
m = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_45);
{
nimln_(412, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_56;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_57;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_58;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_59;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_60;
if (!(((NI) 0) <= m)) goto LA4;
nimln_(413, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimSubInt(m, s, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_56)) { raiseOverflow(); };
if (nimAddInt((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_56), ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_57)) { raiseOverflow(); };
if (nimAddInt(m, s, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_58)) { raiseOverflow(); };
mergeAlt__nimble_17537(a, aLen_0, (b) ? (b->data) : NIM_NIL, (b ? b->Sup.len : 0), (((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_57) >= ((NI) 0)) ? (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_57) : ((NI) 0)), m, (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_58), cmp, order);
nimln_(414, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimMulInt(s, ((NI) 2), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_59)) { raiseOverflow(); };
if (nimSubInt(m, (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_59), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_60)) { raiseOverflow(); };
m = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_60);
} LA4: ;
}
nimln_(415, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimMulInt(s, ((NI) 2), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_61)) { raiseOverflow(); };
s = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_61);
} LA2: ;
}
popFrame();
}
N_LIB_PRIVATE N_NIMCALL(void, reverse__pureZstrutils_561)(NimStringDesc** a, NI aLen_0, NI first, NI last) {
NI x;
NI y;
nimfr_("reverse", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
nimln_(112, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
x = first;
nimln_(113, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
y = last;
{
nimln_(114, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NimStringDesc* T3_;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_62;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_63;
if (!(((NI) (x)) < ((NI) (y)))) goto LA2;
nimln_(115, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
T3_ = NIM_NIL;
if (x < 0 || x >= aLen_0){ raiseIndexError2(x,aLen_0-1); }
if (y < 0 || y >= aLen_0){ raiseIndexError2(y,aLen_0-1); }
T3_ = a[x];
unsureAsgnRef((void**) (&a[x]), a[y]);
unsureAsgnRef((void**) (&a[y]), T3_);
nimln_(116, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimSubInt(y, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_62)) { raiseOverflow(); };
if (TM__JdC9c6SaUkvO1XjYuWP1JWQ_62 < 0 || TM__JdC9c6SaUkvO1XjYuWP1JWQ_62 > IL64(9223372036854775807)){ raiseOverflow(); }
y = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_62);
nimln_(117, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(x, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_63)) { raiseOverflow(); };
if (TM__JdC9c6SaUkvO1XjYuWP1JWQ_63 < 0 || TM__JdC9c6SaUkvO1XjYuWP1JWQ_63 > IL64(9223372036854775807)){ raiseOverflow(); }
x = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_63);
} LA2: ;
}
popFrame();
}
N_LIB_PRIVATE N_NIMCALL(void, reverse__pureZstrutils_555)(NimStringDesc** a, NI aLen_0) {
nimfr_("reverse", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
nimln_(132, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if ((((((NI) 0) >= (aLen_0-1)) ? ((NI) 0) : (aLen_0-1))) < ((NI) 0) || (((((NI) 0) >= (aLen_0-1)) ? ((NI) 0) : (aLen_0-1))) > ((NI) IL64(9223372036854775807))){ raiseRangeErrorI(((((NI) 0) >= (aLen_0-1)) ? ((NI) 0) : (aLen_0-1)), ((NI) 0), ((NI) IL64(9223372036854775807))); }
reverse__pureZstrutils_561(a, aLen_0, ((NI) 0), ((NI) (((((NI) 0) >= (aLen_0-1)) ? ((NI) 0) : (aLen_0-1)))));
popFrame();
}
N_LIB_PRIVATE N_NIMCALL(void, mergeAlt__nimble_19104)(tyTuple__LCURwohbLBusrL8hdCnvng* a, NI aLen_0, tyTuple__LCURwohbLBusrL8hdCnvng* b, NI bLen_0, NI lo, NI m, NI hi, tyProc__9bFkAsJczwkLbIsHS9cPg0Jw cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
NI j;
NI bb;
NI i;
NI k;
nimfr_("mergeAlt", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{ nimln_(331, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_66;
NI T3_;
NI T4_;
if (m < 0 || m >= aLen_0){ raiseIndexError2(m,aLen_0-1); }
if (nimAddInt(m, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_66)) { raiseOverflow(); };
if ((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_66) < 0 || (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_66) >= aLen_0){ raiseIndexError2((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_66),aLen_0-1); }
T3_ = (NI)0;
T3_ = cmp.ClE_0? cmp.ClP_0(a[m], a[(NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_66)], cmp.ClE_0):((TM__JdC9c6SaUkvO1XjYuWP1JWQ_67)(cmp.ClP_0))(a[m], a[(NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_66)]);
T4_ = (NI)0;
T4_ = star___pureZalgorithm_8(T3_, order);
if (!(T4_ <= ((NI) 0))) goto LA5_;
goto BeforeRet_;
}
LA5_: ;
nimln_(332, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
j = lo;
nimln_(334, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{
if (!!((j <= m))) goto LA9_;
failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__JdC9c6SaUkvO1XjYuWP1JWQ_9));
}
LA9_: ;
nimln_(336, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
bb = ((NI) 0);
{
nimln_(337, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_68;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_69;
if (!(j <= m)) goto LA12;
if (bb < 0 || bb >= bLen_0){ raiseIndexError2(bb,bLen_0-1); }
nimln_(338, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (j < 0 || j >= aLen_0){ raiseIndexError2(j,aLen_0-1); }
b[bb].Field0 = a[j].Field0;
unsureAsgnRef((void**) (&b[bb].Field1), a[j].Field1);
nimln_(339, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(bb, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_68)) { raiseOverflow(); };
bb = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_68);
nimln_(340, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(j, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_69)) { raiseOverflow(); };
j = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_69);
} LA12: ;
}
nimln_(344, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
i = ((NI) 0);
nimln_(345, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
k = lo;
{
nimln_(347, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NIM_BOOL T15_;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_73;
T15_ = (NIM_BOOL)0;
T15_ = (k < j);
if (!(T15_)) goto LA16_;
T15_ = (j <= hi);
LA16_: ;
if (!T15_) goto LA14;
nimln_(348, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
{
NI T19_;
NI T20_;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_71;
if (i < 0 || i >= bLen_0){ raiseIndexError2(i,bLen_0-1); }
if (j < 0 || j >= aLen_0){ raiseIndexError2(j,aLen_0-1); }
T19_ = (NI)0;
T19_ = cmp.ClE_0? cmp.ClP_0(b[i], a[j], cmp.ClE_0):((TM__JdC9c6SaUkvO1XjYuWP1JWQ_70)(cmp.ClP_0))(b[i], a[j]);
T20_ = (NI)0;
T20_ = star___pureZalgorithm_8(T19_, order);
if (!(T20_ <= ((NI) 0))) goto LA21_;
if (k < 0 || k >= aLen_0){ raiseIndexError2(k,aLen_0-1); }
nimln_(349, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (i < 0 || i >= bLen_0){ raiseIndexError2(i,bLen_0-1); }
a[k].Field0 = b[i].Field0;
unsureAsgnRef((void**) (&a[k].Field1), b[i].Field1);
nimln_(350, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(i, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_71)) { raiseOverflow(); };
i = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_71);
}
goto LA17_;
LA21_: ;
{
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_72;
if (k < 0 || k >= aLen_0){ raiseIndexError2(k,aLen_0-1); }
nimln_(352, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (j < 0 || j >= aLen_0){ raiseIndexError2(j,aLen_0-1); }
a[k].Field0 = a[j].Field0;
unsureAsgnRef((void**) (&a[k].Field1), a[j].Field1);
nimln_(353, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(j, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_72)) { raiseOverflow(); };
j = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_72);
}
LA17_: ;
nimln_(354, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(k, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_73)) { raiseOverflow(); };
k = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_73);
} LA14: ;
}
{
nimln_(357, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_74;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_75;
if (!(k < j)) goto LA25;
if (k < 0 || k >= aLen_0){ raiseIndexError2(k,aLen_0-1); }
nimln_(358, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (i < 0 || i >= bLen_0){ raiseIndexError2(i,bLen_0-1); }
a[k].Field0 = b[i].Field0;
unsureAsgnRef((void**) (&a[k].Field1), b[i].Field1);
nimln_(359, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(k, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_74)) { raiseOverflow(); };
k = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_74);
nimln_(360, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimAddInt(i, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_75)) { raiseOverflow(); };
i = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_75);
} LA25: ;
}
}BeforeRet_: ;
popFrame();
}
N_LIB_PRIVATE N_NIMCALL(void, sort__nimble_19081)(tyTuple__LCURwohbLBusrL8hdCnvng* a, NI aLen_0, tyProc__9bFkAsJczwkLbIsHS9cPg0Jw cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
NI n;
tySequence__HhwRVSXQRFCCEUo2zMKJVg* b;
NI s;
nimfr_("sort", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
nimln_(407, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
n = aLen_0;
nimln_(408, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (((NI)(n / ((NI) 2))) < ((NI) 0) || ((NI)(n / ((NI) 2))) > ((NI) IL64(9223372036854775807))){ raiseRangeErrorI((NI)(n / ((NI) 2)), ((NI) 0), ((NI) IL64(9223372036854775807))); }
b = newSeq__nimble_19093(((NI) ((NI)(n / ((NI) 2)))));
nimln_(409, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
s = ((NI) 1);
{
nimln_(410, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI m;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_64;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_65;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_81;
if (!(s < n)) goto LA2;
nimln_(411, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimSubInt(n, ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_64)) { raiseOverflow(); };
if (nimSubInt((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_64), s, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_65)) { raiseOverflow(); };
m = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_65);
{
nimln_(412, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
while (1) {
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_76;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_77;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_78;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_79;
NI TM__JdC9c6SaUkvO1XjYuWP1JWQ_80;
if (!(((NI) 0) <= m)) goto LA4;
nimln_(413, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimSubInt(m, s, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_76)) { raiseOverflow(); };
if (nimAddInt((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_76), ((NI) 1), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_77)) { raiseOverflow(); };
if (nimAddInt(m, s, &TM__JdC9c6SaUkvO1XjYuWP1JWQ_78)) { raiseOverflow(); };
mergeAlt__nimble_19104(a, aLen_0, (b) ? (b->data) : NIM_NIL, (b ? b->Sup.len : 0), (((NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_77) >= ((NI) 0)) ? (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_77) : ((NI) 0)), m, (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_78), cmp, order);
nimln_(414, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimMulInt(s, ((NI) 2), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_79)) { raiseOverflow(); };
if (nimSubInt(m, (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_79), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_80)) { raiseOverflow(); };
m = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_80);
} LA4: ;
}
nimln_(415, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/pure/algorithm.nim");
if (nimMulInt(s, ((NI) 2), &TM__JdC9c6SaUkvO1XjYuWP1JWQ_81)) { raiseOverflow(); };
s = (NI)(TM__JdC9c6SaUkvO1XjYuWP1JWQ_81);
} LA2: ;
}
popFrame();
}