Example #1
0
N_NIMCALL(void, parseline_218149)(Ttmplparser218020* p) {
	NI d;
	NI j;
	NI curly;
	NimStringDesc* keyw;
	d = 0;
	j = 0;
	curly = 0;
	keyw = 0;
	j = ((NI) 0);
	{
		while (1) {
			if (!((NU8)((*p).x->data[j]) == (NU8)(32))) goto LA2;
			j += ((NI) 1);
		} LA2: ;
	}
	{
		NIM_BOOL LOC5;
		LOC5 = 0;
		LOC5 = ((NU8)((*p).x->data[((NI) 0)]) == (NU8)((*p).nimdirective));
		if (!(LOC5)) goto LA6;
		LOC5 = ((NU8)((*p).x->data[((NI) 1)]) == (NU8)(33));
		LA6: ;
		if (!LOC5) goto LA7;
		newline_218047(p);
	}
	goto LA3;
	LA7: ;
	{
		NIM_BOOL LOC16;
		NU16 LOC18;
		if (!((NU8)((*p).x->data[j]) == (NU8)((*p).nimdirective))) goto LA10;
		newline_218047(p);
		j += ((NI) 1);
		{
			while (1) {
				if (!((NU8)((*p).x->data[j]) == (NU8)(32))) goto LA13;
				j += ((NI) 1);
			} LA13: ;
		}
		d = j;
		keyw = copyString(((NimStringDesc*) &TMP1401));
		{
			while (1) {
				if (!(((NU8)((*p).x->data[j])) >= ((NU8)(97)) && ((NU8)((*p).x->data[j])) <= ((NU8)(122)) || ((NU8)((*p).x->data[j])) >= ((NU8)(65)) && ((NU8)((*p).x->data[j])) <= ((NU8)(90)) || ((NU8)((*p).x->data[j])) >= ((NU8)(48)) && ((NU8)((*p).x->data[j])) <= ((NU8)(57)) || ((NU8)((*p).x->data[j])) >= ((NU8)(128)) && ((NU8)((*p).x->data[j])) <= ((NU8)(255)) || ((NU8)((*p).x->data[j])) == ((NU8)(46)) || ((NU8)((*p).x->data[j])) == ((NU8)(95)))) goto LA15;
				keyw = addChar(keyw, (*p).x->data[j]);
				j += ((NI) 1);
			} LA15: ;
		}
		scanpar_218057(p, j);
		LOC16 = 0;
		LOC16 = withinexpr_218139((&(*p)));
		if (LOC16) goto LA17;
		LOC16 = endswithopr_178450((*p).x);
		LA17: ;
		(*p).pendingexprline = LOC16;
		LOC18 = 0;
		LOC18 = whichkeyword_172396(keyw);
		switch (LOC18) {
		case ((NU16) 22):
		{
			NimStringDesc* LOC25;
			{
				if (!(((NI) 2) <= (*p).indent)) goto LA22;
				(*p).indent -= ((NI) 2);
			}
			goto LA20;
			LA22: ;
			{
				(*p).info.col = ((NI16) (j));
				localerror_165171((*p).info, ((NU16) 163), ((NimStringDesc*) &TMP1412));
			}
			LA20: ;
			LOC25 = 0;
			LOC25 = nsuRepeatChar(32, ((NI) ((*p).indent)));
			llstreamwrite_178665((*p).outp, LOC25);
			llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP1413));
		}
		break;
		case ((NU16) 31):
		case ((NU16) 65):
		case ((NU16) 60):
		case ((NU16) 66):
		case ((NU16) 27):
		case ((NU16) 7):
		case ((NU16) 9):
		case ((NU16) 51):
		case ((NU16) 38):
		case ((NU16) 14):
		case ((NU16) 40):
		case ((NU16) 59):
		case ((NU16) 41):
		{
			NimStringDesc* LOC27;
			NimStringDesc* LOC28;
			LOC27 = 0;
			LOC27 = nsuRepeatChar(32, ((NI) ((*p).indent)));
			llstreamwrite_178665((*p).outp, LOC27);
			LOC28 = 0;
			LOC28 = copyStr((*p).x, d);
			llstreamwrite_178665((*p).outp, LOC28);
			(*p).indent += ((NI) 2);
		}
		break;
		case ((NU16) 20):
		case ((NU16) 48):
		case ((NU16) 21):
		case ((NU16) 24):
		case ((NU16) 26):
		{
			NimStringDesc* LOC30;
			NimStringDesc* LOC31;
			LOC30 = 0;
			LOC30 = nsuRepeatChar(32, ((NI) ((NI)((*p).indent - ((NI) 2)))));
			llstreamwrite_178665((*p).outp, LOC30);
			LOC31 = 0;
			LOC31 = copyStr((*p).x, d);
			llstreamwrite_178665((*p).outp, LOC31);
		}
		break;
		case ((NU16) 39):
		case ((NU16) 64):
		case ((NU16) 12):
		case ((NU16) 62):
		{
			NimStringDesc* LOC33;
			NimStringDesc* LOC34;
			LOC33 = 0;
			LOC33 = nsuRepeatChar(32, ((NI) ((*p).indent)));
			llstreamwrite_178665((*p).outp, LOC33);
			LOC34 = 0;
			LOC34 = copyStr((*p).x, d);
			llstreamwrite_178665((*p).outp, LOC34);
			{
				NIM_BOOL LOC37;
				LOC37 = 0;
				LOC37 = contains_99373((*p).x, TMP1414);
				if (!!(LOC37)) goto LA38;
				(*p).indent += ((NI) 2);
			}
			LA38: ;
		}
		break;
		default:
		{
			NimStringDesc* LOC41;
			NimStringDesc* LOC42;
			LOC41 = 0;
			LOC41 = nsuRepeatChar(32, ((NI) ((*p).indent)));
			llstreamwrite_178665((*p).outp, LOC41);
			LOC42 = 0;
			LOC42 = copyStr((*p).x, d);
			llstreamwrite_178665((*p).outp, LOC42);
		}
		break;
		}
		(*p).state = ((NU8) 0);
	}
	goto LA3;
	LA10: ;
	{
		(*p).par = ((NI) 0);
		(*p).curly = ((NI) 0);
		(*p).bracket = ((NI) 0);
		j = ((NI) 0);
		switch ((*p).state) {
		case ((NU8) 1):
		{
			NimStringDesc* LOC45;
			llstreamwrite_178665((*p).outp, (*p).conc);
			llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP1410));
			LOC45 = 0;
			LOC45 = nsuRepeatChar(32, ((NI) ((NI)((*p).indent + ((NI) 2)))));
			llstreamwrite_178665((*p).outp, LOC45);
			llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP1415));
		}
		break;
		case ((NU8) 0):
		{
			NimStringDesc* LOC47;
			newline_218047(p);
			LOC47 = 0;
			LOC47 = nsuRepeatChar(32, ((NI) ((*p).indent)));
			llstreamwrite_178665((*p).outp, LOC47);
			llstreamwrite_178665((*p).outp, (*p).emit);
			llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP1416));
			(*p).emitpar += ((NI) 1);
		}
		break;
		}
		(*p).state = ((NU8) 1);
		{
			while (1) {
				switch (((NU8)((*p).x->data[j]))) {
				case 0:
				{
					goto LA48;
				}
				break;
				case 1 ... 31:
				case 128 ... 255:
				{
					NimStringDesc* LOC52;
					llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP1417));
					LOC52 = 0;
					LOC52 = nsuToHex(((NI64) (((NU8)((*p).x->data[j])))), ((NI) 2));
					llstreamwrite_178665((*p).outp, LOC52);
					j += ((NI) 1);
				}
				break;
				case 92:
				{
					llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP1418));
					j += ((NI) 1);
				}
				break;
				case 39:
				{
					llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP1419));
					j += ((NI) 1);
				}
				break;
				case 34:
				{
					llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP1420));
					j += ((NI) 1);
				}
				break;
				default:
				{
					{
						if (!((NU8)((*p).x->data[j]) == (NU8)((*p).subschar))) goto LA59;
						j += ((NI) 1);
						switch (((NU8)((*p).x->data[j]))) {
						case 123:
						{
							(*p).info.col = ((NI16) (j));
							llstreamwrite_178696((*p).outp, 34);
							llstreamwrite_178665((*p).outp, (*p).conc);
							llstreamwrite_178665((*p).outp, (*p).tostr);
							llstreamwrite_178696((*p).outp, 40);
							j += ((NI) 1);
							curly = ((NI) 0);
							{
								while (1) {
									switch (((NU8)((*p).x->data[j]))) {
									case 0:
									{
										localerror_165171((*p).info, ((NU16) 188), ((NimStringDesc*) &TMP1421));
										goto LA62;
									}
									break;
									case 123:
									{
										j += ((NI) 1);
										curly += ((NI) 1);
										llstreamwrite_178696((*p).outp, 123);
									}
									break;
									case 125:
									{
										j += ((NI) 1);
										{
											if (!(curly == ((NI) 0))) goto LA69;
											goto LA62;
										}
										LA69: ;
										{
											if (!(((NI) 0) < curly)) goto LA73;
											curly -= ((NI) 1);
										}
										LA73: ;
										llstreamwrite_178696((*p).outp, 125);
									}
									break;
									default:
									{
										llstreamwrite_178696((*p).outp, (*p).x->data[j]);
										j += ((NI) 1);
									}
									break;
									}
								}
							} LA62: ;
							llstreamwrite_178696((*p).outp, 41);
							llstreamwrite_178665((*p).outp, (*p).conc);
							llstreamwrite_178696((*p).outp, 34);
						}
						break;
						case 97 ... 122:
						case 65 ... 90:
						case 128 ... 255:
						{
							llstreamwrite_178696((*p).outp, 34);
							llstreamwrite_178665((*p).outp, (*p).conc);
							llstreamwrite_178665((*p).outp, (*p).tostr);
							llstreamwrite_178696((*p).outp, 40);
							{
								while (1) {
									if (!(((NU8)((*p).x->data[j])) >= ((NU8)(97)) && ((NU8)((*p).x->data[j])) <= ((NU8)(122)) || ((NU8)((*p).x->data[j])) >= ((NU8)(65)) && ((NU8)((*p).x->data[j])) <= ((NU8)(90)) || ((NU8)((*p).x->data[j])) >= ((NU8)(48)) && ((NU8)((*p).x->data[j])) <= ((NU8)(57)) || ((NU8)((*p).x->data[j])) >= ((NU8)(128)) && ((NU8)((*p).x->data[j])) <= ((NU8)(255)) || ((NU8)((*p).x->data[j])) == ((NU8)(46)) || ((NU8)((*p).x->data[j])) == ((NU8)(95)))) goto LA78;
									llstreamwrite_178696((*p).outp, (*p).x->data[j]);
									j += ((NI) 1);
								} LA78: ;
							}
							llstreamwrite_178696((*p).outp, 41);
							llstreamwrite_178665((*p).outp, (*p).conc);
							llstreamwrite_178696((*p).outp, 34);
						}
						break;
						default:
						{
							{
								if (!((NU8)((*p).x->data[j]) == (NU8)((*p).subschar))) goto LA82;
								llstreamwrite_178696((*p).outp, (*p).subschar);
								j += ((NI) 1);
							}
							goto LA80;
							LA82: ;
							{
								(*p).info.col = ((NI16) (j));
								localerror_165171((*p).info, ((NU16) 167), ((NimStringDesc*) &TMP1409));
							}
							LA80: ;
						}
						break;
						}
					}
					goto LA57;
					LA59: ;
					{
						llstreamwrite_178696((*p).outp, (*p).x->data[j]);
						j += ((NI) 1);
					}
					LA57: ;
				}
				break;
				}
			}
		} LA48: ;
		llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP1422));
	}
	LA3: ;
}
N_NIMCALL(void, parseline_218149)(Ttmplparser218020* p) {
	NI d;
	NI j;
	NI curly;
	NimStringDesc* keyw;
	nimfr("parseLine", "filter_tmpl.nim")
	d = 0;
	j = 0;
	curly = 0;
	keyw = 0;
	nimln(68, "filter_tmpl.nim");
	j = ((NI) 0);
	{
		nimln(69, "filter_tmpl.nim");
		while (1) {
			NI TMP3359;
			if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
			if (!((NU8)((*p).x->data[j]) == (NU8)(32))) goto LA2;
			TMP3359 = addInt(j, ((NI) 1));
			j = (NI)(TMP3359);
		} LA2: ;
	}
	nimln(70, "filter_tmpl.nim");
	{
		NIM_BOOL LOC5;
		LOC5 = 0;
		if ((NU)(((NI) 0)) > (NU)((*p).x->Sup.len)) raiseIndexError();
		LOC5 = ((NU8)((*p).x->data[((NI) 0)]) == (NU8)((*p).nimdirective));
		if (!(LOC5)) goto LA6;
		if ((NU)(((NI) 1)) > (NU)((*p).x->Sup.len)) raiseIndexError();
		LOC5 = ((NU8)((*p).x->data[((NI) 1)]) == (NU8)(33));
		LA6: ;
		if (!LOC5) goto LA7;
		nimln(71, "filter_tmpl.nim");
		newline_218047(p);
	}
	goto LA3;
	LA7: ;
	{
		NI TMP3360;
		NIM_BOOL LOC16;
		NU16 LOC18;
		nimln(72, "filter_tmpl.nim");
		if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
		if (!((NU8)((*p).x->data[j]) == (NU8)((*p).nimdirective))) goto LA10;
		nimln(73, "filter_tmpl.nim");
		newline_218047(p);
		nimln(74, "filter_tmpl.nim");
		TMP3360 = addInt(j, ((NI) 1));
		j = (NI)(TMP3360);
		{
			nimln(75, "filter_tmpl.nim");
			while (1) {
				NI TMP3361;
				if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
				if (!((NU8)((*p).x->data[j]) == (NU8)(32))) goto LA13;
				TMP3361 = addInt(j, ((NI) 1));
				j = (NI)(TMP3361);
			} LA13: ;
		}
		nimln(76, "filter_tmpl.nim");
		d = j;
		nimln(77, "filter_tmpl.nim");
		keyw = copyString(((NimStringDesc*) &TMP3362));
		{
			nimln(78, "filter_tmpl.nim");
			while (1) {
				NI TMP3363;
				if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
				if (!(((NU8)((*p).x->data[j])) >= ((NU8)(97)) && ((NU8)((*p).x->data[j])) <= ((NU8)(122)) || ((NU8)((*p).x->data[j])) >= ((NU8)(65)) && ((NU8)((*p).x->data[j])) <= ((NU8)(90)) || ((NU8)((*p).x->data[j])) >= ((NU8)(48)) && ((NU8)((*p).x->data[j])) <= ((NU8)(57)) || ((NU8)((*p).x->data[j])) >= ((NU8)(128)) && ((NU8)((*p).x->data[j])) <= ((NU8)(255)) || ((NU8)((*p).x->data[j])) == ((NU8)(46)) || ((NU8)((*p).x->data[j])) == ((NU8)(95)))) goto LA15;
				nimln(79, "filter_tmpl.nim");
				if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
				keyw = addChar(keyw, (*p).x->data[j]);
				nimln(80, "filter_tmpl.nim");
				TMP3363 = addInt(j, ((NI) 1));
				j = (NI)(TMP3363);
			} LA15: ;
		}
		nimln(82, "filter_tmpl.nim");
		scanpar_218057(p, j);
		nimln(83, "filter_tmpl.nim");
		LOC16 = 0;
		LOC16 = withinexpr_218139((&(*p)));
		if (LOC16) goto LA17;
		LOC16 = endswithopr_178450((*p).x);
		LA17: ;
		(*p).pendingexprline = LOC16;
		nimln(84, "filter_tmpl.nim");
		LOC18 = 0;
		LOC18 = whichkeyword_172396(keyw);
		switch (LOC18) {
		case ((NU16) 22):
		{
			NimStringDesc* LOC25;
			nimln(86, "filter_tmpl.nim");
			{
				NI TMP3364;
				if (!(((NI) 2) <= (*p).indent)) goto LA22;
				nimln(87, "filter_tmpl.nim");
				TMP3364 = subInt((*p).indent, ((NI) 2));
				(*p).indent = (NI)(TMP3364);
			}
			goto LA20;
			LA22: ;
			{
				nimln(89, "filter_tmpl.nim");
				(*p).info.col = ((NI16)chckRange(j, ((NI16) -32768), ((NI16) 32767)));
				nimln(90, "filter_tmpl.nim");
				localerror_165155((*p).info, ((NU16) 163), ((NimStringDesc*) &TMP3365));
			}
			LA20: ;
			nimln(91, "filter_tmpl.nim");
			LOC25 = 0;
			LOC25 = nsuRepeatChar(32, ((NI)chckRange((*p).indent, ((NI) 0), ((NI) 2147483647))));
			llstreamwrite_178665((*p).outp, LOC25);
			nimln(92, "filter_tmpl.nim");
			llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP3366));
		}
		break;
		case ((NU16) 31):
		case ((NU16) 65):
		case ((NU16) 60):
		case ((NU16) 66):
		case ((NU16) 27):
		case ((NU16) 7):
		case ((NU16) 9):
		case ((NU16) 51):
		case ((NU16) 38):
		case ((NU16) 14):
		case ((NU16) 40):
		case ((NU16) 59):
		case ((NU16) 41):
		{
			NimStringDesc* LOC27;
			NimStringDesc* LOC28;
			NI TMP3367;
			nimln(95, "filter_tmpl.nim");
			LOC27 = 0;
			LOC27 = nsuRepeatChar(32, ((NI)chckRange((*p).indent, ((NI) 0), ((NI) 2147483647))));
			llstreamwrite_178665((*p).outp, LOC27);
			nimln(96, "filter_tmpl.nim");
			LOC28 = 0;
			LOC28 = copyStr((*p).x, d);
			llstreamwrite_178665((*p).outp, LOC28);
			nimln(97, "filter_tmpl.nim");
			TMP3367 = addInt((*p).indent, ((NI) 2));
			(*p).indent = (NI)(TMP3367);
		}
		break;
		case ((NU16) 20):
		case ((NU16) 48):
		case ((NU16) 21):
		case ((NU16) 24):
		case ((NU16) 26):
		{
			NI TMP3368;
			NimStringDesc* LOC30;
			NimStringDesc* LOC31;
			nimln(99, "filter_tmpl.nim");
			TMP3368 = subInt((*p).indent, ((NI) 2));
			LOC30 = 0;
			LOC30 = nsuRepeatChar(32, ((NI)chckRange((NI)(TMP3368), ((NI) 0), ((NI) 2147483647))));
			llstreamwrite_178665((*p).outp, LOC30);
			nimln(100, "filter_tmpl.nim");
			LOC31 = 0;
			LOC31 = copyStr((*p).x, d);
			llstreamwrite_178665((*p).outp, LOC31);
		}
		break;
		case ((NU16) 39):
		case ((NU16) 64):
		case ((NU16) 12):
		case ((NU16) 62):
		{
			NimStringDesc* LOC33;
			NimStringDesc* LOC34;
			nimln(102, "filter_tmpl.nim");
			LOC33 = 0;
			LOC33 = nsuRepeatChar(32, ((NI)chckRange((*p).indent, ((NI) 0), ((NI) 2147483647))));
			llstreamwrite_178665((*p).outp, LOC33);
			nimln(103, "filter_tmpl.nim");
			LOC34 = 0;
			LOC34 = copyStr((*p).x, d);
			llstreamwrite_178665((*p).outp, LOC34);
			nimln(104, "filter_tmpl.nim");
			{
				NIM_BOOL LOC37;
				NI TMP3370;
				LOC37 = 0;
				LOC37 = contains_99373((*p).x, TMP3369);
				if (!!(LOC37)) goto LA38;
				nimln(106, "filter_tmpl.nim");
				TMP3370 = addInt((*p).indent, ((NI) 2));
				(*p).indent = (NI)(TMP3370);
			}
			LA38: ;
		}
		break;
		default:
		{
			NimStringDesc* LOC41;
			NimStringDesc* LOC42;
			nimln(108, "filter_tmpl.nim");
			LOC41 = 0;
			LOC41 = nsuRepeatChar(32, ((NI)chckRange((*p).indent, ((NI) 0), ((NI) 2147483647))));
			llstreamwrite_178665((*p).outp, LOC41);
			nimln(109, "filter_tmpl.nim");
			LOC42 = 0;
			LOC42 = copyStr((*p).x, d);
			llstreamwrite_178665((*p).outp, LOC42);
		}
		break;
		}
		nimln(110, "filter_tmpl.nim");
		(*p).state = ((NU8) 0);
	}
	goto LA3;
	LA10: ;
	{
		nimln(114, "filter_tmpl.nim");
		(*p).par = ((NI) 0);
		nimln(115, "filter_tmpl.nim");
		(*p).curly = ((NI) 0);
		nimln(116, "filter_tmpl.nim");
		(*p).bracket = ((NI) 0);
		nimln(117, "filter_tmpl.nim");
		j = ((NI) 0);
		nimln(118, "filter_tmpl.nim");
		switch ((*p).state) {
		case ((NU8) 1):
		{
			NI TMP3371;
			NimStringDesc* LOC45;
			nimln(121, "filter_tmpl.nim");
			llstreamwrite_178665((*p).outp, (*p).conc);
			nimln(122, "filter_tmpl.nim");
			llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP3351));
			nimln(123, "filter_tmpl.nim");
			TMP3371 = addInt((*p).indent, ((NI) 2));
			LOC45 = 0;
			LOC45 = nsuRepeatChar(32, ((NI)chckRange((NI)(TMP3371), ((NI) 0), ((NI) 2147483647))));
			llstreamwrite_178665((*p).outp, LOC45);
			nimln(124, "filter_tmpl.nim");
			llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP3372));
		}
		break;
		case ((NU8) 0):
		{
			NimStringDesc* LOC47;
			NI TMP3374;
			nimln(126, "filter_tmpl.nim");
			newline_218047(p);
			nimln(127, "filter_tmpl.nim");
			LOC47 = 0;
			LOC47 = nsuRepeatChar(32, ((NI)chckRange((*p).indent, ((NI) 0), ((NI) 2147483647))));
			llstreamwrite_178665((*p).outp, LOC47);
			nimln(128, "filter_tmpl.nim");
			llstreamwrite_178665((*p).outp, (*p).emit);
			nimln(129, "filter_tmpl.nim");
			llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP3373));
			nimln(130, "filter_tmpl.nim");
			TMP3374 = addInt((*p).emitpar, ((NI) 1));
			(*p).emitpar = (NI)(TMP3374);
		}
		break;
		}
		nimln(131, "filter_tmpl.nim");
		(*p).state = ((NU8) 1);
		{
			nimln(132, "filter_tmpl.nim");
			while (1) {
				nimln(133, "filter_tmpl.nim");
				if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
				switch (((NU8)((*p).x->data[j]))) {
				case 0:
				{
					nimln(135, "filter_tmpl.nim");
					goto LA48;
				}
				break;
				case 1 ... 31:
				case 128 ... 255:
				{
					NimStringDesc* LOC52;
					NI TMP3376;
					nimln(137, "filter_tmpl.nim");
					llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP3375));
					nimln(138, "filter_tmpl.nim");
					if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
					LOC52 = 0;
					LOC52 = nsuToHex(((NI64) (((NU8)((*p).x->data[j])))), ((NI) 2));
					llstreamwrite_178665((*p).outp, LOC52);
					nimln(139, "filter_tmpl.nim");
					TMP3376 = addInt(j, ((NI) 1));
					j = (NI)(TMP3376);
				}
				break;
				case 92:
				{
					NI TMP3378;
					nimln(141, "filter_tmpl.nim");
					llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP3377));
					nimln(142, "filter_tmpl.nim");
					TMP3378 = addInt(j, ((NI) 1));
					j = (NI)(TMP3378);
				}
				break;
				case 39:
				{
					NI TMP3380;
					nimln(144, "filter_tmpl.nim");
					llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP3379));
					nimln(145, "filter_tmpl.nim");
					TMP3380 = addInt(j, ((NI) 1));
					j = (NI)(TMP3380);
				}
				break;
				case 34:
				{
					NI TMP3382;
					nimln(147, "filter_tmpl.nim");
					llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP3381));
					nimln(148, "filter_tmpl.nim");
					TMP3382 = addInt(j, ((NI) 1));
					j = (NI)(TMP3382);
				}
				break;
				default:
				{
					nimln(150, "filter_tmpl.nim");
					{
						NI TMP3383;
						if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
						if (!((NU8)((*p).x->data[j]) == (NU8)((*p).subschar))) goto LA59;
						nimln(152, "filter_tmpl.nim");
						TMP3383 = addInt(j, ((NI) 1));
						j = (NI)(TMP3383);
						nimln(153, "filter_tmpl.nim");
						if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
						switch (((NU8)((*p).x->data[j]))) {
						case 123:
						{
							NI TMP3384;
							nimln(155, "filter_tmpl.nim");
							(*p).info.col = ((NI16)chckRange(j, ((NI16) -32768), ((NI16) 32767)));
							nimln(156, "filter_tmpl.nim");
							llstreamwrite_178696((*p).outp, 34);
							nimln(157, "filter_tmpl.nim");
							llstreamwrite_178665((*p).outp, (*p).conc);
							nimln(158, "filter_tmpl.nim");
							llstreamwrite_178665((*p).outp, (*p).tostr);
							nimln(159, "filter_tmpl.nim");
							llstreamwrite_178696((*p).outp, 40);
							nimln(160, "filter_tmpl.nim");
							TMP3384 = addInt(j, ((NI) 1));
							j = (NI)(TMP3384);
							nimln(161, "filter_tmpl.nim");
							curly = ((NI) 0);
							{
								nimln(162, "filter_tmpl.nim");
								while (1) {
									nimln(163, "filter_tmpl.nim");
									if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
									switch (((NU8)((*p).x->data[j]))) {
									case 0:
									{
										nimln(165, "filter_tmpl.nim");
										localerror_165155((*p).info, ((NU16) 188), ((NimStringDesc*) &TMP3385));
										nimln(166, "filter_tmpl.nim");
										goto LA62;
									}
									break;
									case 123:
									{
										NI TMP3386;
										NI TMP3387;
										nimln(168, "filter_tmpl.nim");
										TMP3386 = addInt(j, ((NI) 1));
										j = (NI)(TMP3386);
										nimln(169, "filter_tmpl.nim");
										TMP3387 = addInt(curly, ((NI) 1));
										curly = (NI)(TMP3387);
										nimln(170, "filter_tmpl.nim");
										llstreamwrite_178696((*p).outp, 123);
									}
									break;
									case 125:
									{
										NI TMP3388;
										nimln(172, "filter_tmpl.nim");
										TMP3388 = addInt(j, ((NI) 1));
										j = (NI)(TMP3388);
										nimln(173, "filter_tmpl.nim");
										{
											if (!(curly == ((NI) 0))) goto LA69;
											goto LA62;
										}
										LA69: ;
										nimln(174, "filter_tmpl.nim");
										{
											NI TMP3389;
											if (!(((NI) 0) < curly)) goto LA73;
											TMP3389 = subInt(curly, ((NI) 1));
											curly = (NI)(TMP3389);
										}
										LA73: ;
										nimln(175, "filter_tmpl.nim");
										llstreamwrite_178696((*p).outp, 125);
									}
									break;
									default:
									{
										NI TMP3390;
										nimln(177, "filter_tmpl.nim");
										if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
										llstreamwrite_178696((*p).outp, (*p).x->data[j]);
										nimln(178, "filter_tmpl.nim");
										TMP3390 = addInt(j, ((NI) 1));
										j = (NI)(TMP3390);
									}
									break;
									}
								}
							} LA62: ;
							nimln(179, "filter_tmpl.nim");
							llstreamwrite_178696((*p).outp, 41);
							nimln(180, "filter_tmpl.nim");
							llstreamwrite_178665((*p).outp, (*p).conc);
							nimln(181, "filter_tmpl.nim");
							llstreamwrite_178696((*p).outp, 34);
						}
						break;
						case 97 ... 122:
						case 65 ... 90:
						case 128 ... 255:
						{
							nimln(183, "filter_tmpl.nim");
							llstreamwrite_178696((*p).outp, 34);
							nimln(184, "filter_tmpl.nim");
							llstreamwrite_178665((*p).outp, (*p).conc);
							nimln(185, "filter_tmpl.nim");
							llstreamwrite_178665((*p).outp, (*p).tostr);
							nimln(186, "filter_tmpl.nim");
							llstreamwrite_178696((*p).outp, 40);
							{
								nimln(187, "filter_tmpl.nim");
								while (1) {
									NI TMP3391;
									if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
									if (!(((NU8)((*p).x->data[j])) >= ((NU8)(97)) && ((NU8)((*p).x->data[j])) <= ((NU8)(122)) || ((NU8)((*p).x->data[j])) >= ((NU8)(65)) && ((NU8)((*p).x->data[j])) <= ((NU8)(90)) || ((NU8)((*p).x->data[j])) >= ((NU8)(48)) && ((NU8)((*p).x->data[j])) <= ((NU8)(57)) || ((NU8)((*p).x->data[j])) >= ((NU8)(128)) && ((NU8)((*p).x->data[j])) <= ((NU8)(255)) || ((NU8)((*p).x->data[j])) == ((NU8)(46)) || ((NU8)((*p).x->data[j])) == ((NU8)(95)))) goto LA78;
									nimln(188, "filter_tmpl.nim");
									if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
									llstreamwrite_178696((*p).outp, (*p).x->data[j]);
									nimln(189, "filter_tmpl.nim");
									TMP3391 = addInt(j, ((NI) 1));
									j = (NI)(TMP3391);
								} LA78: ;
							}
							nimln(190, "filter_tmpl.nim");
							llstreamwrite_178696((*p).outp, 41);
							nimln(191, "filter_tmpl.nim");
							llstreamwrite_178665((*p).outp, (*p).conc);
							nimln(192, "filter_tmpl.nim");
							llstreamwrite_178696((*p).outp, 34);
						}
						break;
						default:
						{
							nimln(194, "filter_tmpl.nim");
							{
								NI TMP3392;
								if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
								if (!((NU8)((*p).x->data[j]) == (NU8)((*p).subschar))) goto LA82;
								nimln(195, "filter_tmpl.nim");
								llstreamwrite_178696((*p).outp, (*p).subschar);
								nimln(196, "filter_tmpl.nim");
								TMP3392 = addInt(j, ((NI) 1));
								j = (NI)(TMP3392);
							}
							goto LA80;
							LA82: ;
							{
								nimln(198, "filter_tmpl.nim");
								(*p).info.col = ((NI16)chckRange(j, ((NI16) -32768), ((NI16) 32767)));
								nimln(199, "filter_tmpl.nim");
								localerror_165155((*p).info, ((NU16) 167), ((NimStringDesc*) &TMP3393));
							}
							LA80: ;
						}
						break;
						}
					}
					goto LA57;
					LA59: ;
					{
						NI TMP3394;
						nimln(201, "filter_tmpl.nim");
						if ((NU)(j) > (NU)((*p).x->Sup.len)) raiseIndexError();
						llstreamwrite_178696((*p).outp, (*p).x->data[j]);
						nimln(202, "filter_tmpl.nim");
						TMP3394 = addInt(j, ((NI) 1));
						j = (NI)(TMP3394);
					}
					LA57: ;
				}
				break;
				}
			}
		} LA48: ;
		nimln(203, "filter_tmpl.nim");
		llstreamwrite_178665((*p).outp, ((NimStringDesc*) &TMP3395));
	}
	LA3: ;
	popFrame();
}