>>674
#include <stdio.h>
#define STACK 100
char stack[STACK];
const char left[] = "({[<";
const char right[] = ")}]>";
int main()
{
 int c; char *p; char *s = stack;
 while ((c=getchar()) != EOF) {
  if ((p = strchr(left, c)) != NULL) {
   *s++ = p - left;
   if (s - stack > STACK) {
    printf("Stack overflow\n");exit(1);
   }
  } else if ((p = strchr(right, c)) != NULL) {
   s--;
   if ((s - stack) < 0) {
    printf("NG\n");exit(1);
   }
   if (*s != p - right) {
    printf("NG\n");exit(1);
   }
  }
 }
 printf("OK\n");
 return 0;
}