#include <stdio.h>
#include <string.h>

const char* test(const char* m){
	char arr[1024*8];
	int t=-1;
	const char *k=m+strlen(m);
	for (;m<k;m++){
		if (*m=='(')
		arr[++t]=1;
		else if (*m=='{')
		arr[++t]=2;
		else if (*m=='[')
		arr[++t]=3;
		else if (*m==')'){
			if (t<0 || arr[t]!=1)
				return "Err )";
			--t;
		}
		else if (*m=='}'){
			if (t<0 || arr[t]!=2)
				return "Err }";
			--t;
		}
		else if  (*m==']'){
			if (t<0 || arr[t]!=3)
				return "Err ]";
			--t;
		}
		
	}
	return "No err";
}

int main(void) {
   printf("%s\n",test("(dsfsgh{sdfsd)fsdf}"));
   printf("%s\n",test("(1(2{3}4)5)"));
   printf("%s\n",test("(1{2{3}4}5}"));
   printf("%s\n",test("({[)}]"));
	
}
