고통의 조직도

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

한 컨설팅 회사는 직원을 조직도 트리로 관리한다. 직원 한 명이 노드 하나이고, 대표가 루트이며, 각 노드에는 직함이 라벨로 붙는다.

어느 경영 잡지가 위험하다고 분류한 패턴 목록을 실었다. 예를 들어 어떤 엔지니어의 윗선 어딘가에 경제학자가 있는 구조가 그런 패턴이다. 패턴도 직함을 라벨로 갖는 루트 있는 트리다.

패턴 PP가 조직도 TT에 나타난다는 것은, PP의 노드에서 TT의 노드로 가는 함수 ff가 다음을 모두 만족한다는 뜻이다.

  • ff는 단사다. 즉 f(u)=f(v)f(u) = f(v)이면 u=vu = v이다.
  • ff는 라벨을 보존한다. 즉 모든 uu에 대해 uu의 라벨과 f(u)f(u)의 라벨이 같다.
  • ff는 조상 관계를 양방향으로 보존한다. 즉 uuvv의 진조상인 것과 f(u)f(u)f(v)f(v)의 진조상인 것이 서로 필요충분조건이다.

패턴의 간선 하나는 조직도에서 긴 경로로 늘어나도 된다. 반대로 패턴에서 조상 관계가 없는 두 노드는 조직도에서도 서로 조상이 아닌 두 노드로 가야 한다.

조직도와 패턴 목록이 주어진다. 각 패턴이 조직도에 나타나는지 판정하라.

입력

첫 줄에 조직도 TT가 공백 없는 문자열 하나로 주어진다. 노드 개수 nn1n100001 \le n \le 10000이다. 노드는 자기 라벨을 쓰고, 자식이 있으면 그 뒤 괄호 안에 자식 목록을 쉼표로 구분해 쓴다. 라벨은 길이가 1 이상 10 이하인 소문자 문자열이다.

둘째 줄에 패턴 개수 qq가 주어진다. 1q1001 \le q \le 100이다.

이어지는 qq개의 줄에 패턴 트리가 같은 형식으로 한 줄에 하나씩 주어진다. 각 패턴의 노드 개수 mm1m161 \le m \le 16이다.

출력

각 패턴마다 한 줄씩 출력한다. 패턴이 조직도에 나타나면 disaster를, 나타나지 않으면 great success를 출력한다.