import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.PriorityQueue;
import java.util.Queue;
import java.util.Scanner;
import java.util.StringTokenizer;
public class TS
{
int A;
class Heap {
int[] data;
int[] index;
int[] cost;
boolean[] eval;
int size;
public Heap(int s) {
data = new int[s];
index = new int[s];
cost = new int[s];
eval = new boolean[s];
}
public void init(int s) {
for (int i = 0; i < s; i++) {
index[i] = -1;
eval[i] = false;
}
size = 0;
}
public boolean isEmpty() {
return (size == 0);
}
private void shiftUp(int i) {
int j;
while (i > 0) {
j = (i - 1) / 2;
if (cost[data[i]] < cost[data[j]]) {
int temp = index[data[i]];
index[data[i]] = index[data[j]];
index[data[j]] = temp;
temp = data[i];
data[i] = data[j];
data[j] = temp;
i = j;
} else
break;
}
}
private void shiftDown(int i) {
int j, k;
while (2 * i + 1 < size) {
j = 2 * i + 1;
k = j + 1;
if (k < size && cost[data[k]] < cost[data[j]]
&& cost[data[k]] < cost[data[i]]) {
int temp = index[data[k]];
index[data[k]] = index[data[i]];
index[data[i]] = temp;
temp = data[k];
data[k] = data[i];
data[i] = temp;
i = k;
} else if (cost[data[j]] < cost[data[i]]) {
int temp = index[data[j]];
index[data[j]] = index[data[i]];
index[data[i]] = temp;
temp = data[j];
data[j] = data[i];
data[i] = temp;
i = j;
} else
break;
}
}
public int pop() {
int res = data[0];
data[0] = data[size - 1];
index[data[0]] = 0;
size--;
shiftDown(0);
return res;
}
public void push(int x, int c) {
if (index[x] == -1) {
cost[x] = c;
data[size] = x;
index[x] = size;
size++;
shiftUp(index[x]);
} else {
if (c < cost[x]) {
cost[x] = c;
shiftUp(index[x]);
shiftDown(index[x]);
}
}
}
}
public static void main(String[] args)
{
TS hell = new TS();
hell.go();
}
void go()
{
InputStream inputStream = System.in;
OutputStream outputStream = System.out;
InputReader in = new InputReader(inputStream);
PrintWriter out = new PrintWriter(outputStream);
int T = in.nextInt();
for (int i=0;i<T; i++)
{
HashMap<String, Integer> naming;
int N = in.nextInt();
Heap heap = new Heap(N);
heap.init(N);
String[] name = new String[N];
List list = new ArrayList<HashMap<Integer, Integer>>();
naming = new HashMap();
for(int j=0;j<N;j++)
{
name[j] = in.next();
naming.put(name[j], j);
int no = in.nextInt();
HashMap<Integer, Integer> h1 = new HashMap<>();
for(int y=0;y<no;y++)
{
int a1= in.nextInt();
int b1= in.nextInt();
h1.put(a1, b1);
}
list.add(h1);
}
int tuk = in.nextInt();
for(int james=0;james<tuk;james++)
{
String source = in.next();
String dest = in.next();
int s1 = naming.get(source);
int s2 = naming.get(dest);
heap.push(s1, 0);
while(!heap.isEmpty())
{
int u = heap.pop();
if(u==s2)
System.out.println(heap.cost[s2]);
HashMap<Integer,Integer> ha = (HashMap<Integer,Integer>) list.get(u);
for(Integer key:ha.keySet())
{
heap.push(key-1, ha.get(key)+heap.cost[u]);
}
}
heap.init(N);
/* int eag=0;
HashMap<Integer, Integer> hash = (HashMap<Integer, Integer>) list.get(eag);
for(int key : hash.keySet())
{
int alt = dis[eag] + hash.get(key);
if(alt<dis[key-1])
{dis[key-1] = alt;
list.add(key-1);
}
} */
}
}
}
}
class InputReader {
public BufferedReader reader;
public StringTokenizer tokenizer;
public InputReader(InputStream stream) {
reader = new BufferedReader(new InputStreamReader(stream), 32768);
tokenizer = null;
}
public String next() {
while (tokenizer == null || !tokenizer.hasMoreTokens()) {
try {
tokenizer = new StringTokenizer(reader.readLine());
} catch (IOException e) {
throw new RuntimeException(e);
}
}
return tokenizer.nextToken();
}
public int nextInt() {
return Integer.parseInt(next());
}
}
CmltcG9ydCBqYXZhLmlvLkJ1ZmZlcmVkUmVhZGVyOwppbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKaW1wb3J0IGphdmEuaW8uSW5wdXRTdHJlYW07CmltcG9ydCBqYXZhLmlvLklucHV0U3RyZWFtUmVhZGVyOwppbXBvcnQgamF2YS5pby5PdXRwdXRTdHJlYW07CmltcG9ydCBqYXZhLmlvLlByaW50V3JpdGVyOwppbXBvcnQgamF2YS51dGlsLkFycmF5TGlzdDsKaW1wb3J0IGphdmEudXRpbC5BcnJheXM7CmltcG9ydCBqYXZhLnV0aWwuQ29tcGFyYXRvcjsKaW1wb3J0IGphdmEudXRpbC5IYXNoTWFwOwppbXBvcnQgamF2YS51dGlsLkxpbmtlZExpc3Q7CmltcG9ydCBqYXZhLnV0aWwuTGlzdDsKaW1wb3J0IGphdmEudXRpbC5Qcmlvcml0eVF1ZXVlOwppbXBvcnQgamF2YS51dGlsLlF1ZXVlOwppbXBvcnQgamF2YS51dGlsLlNjYW5uZXI7CmltcG9ydCBqYXZhLnV0aWwuU3RyaW5nVG9rZW5pemVyOwoKcHVibGljIGNsYXNzIFRTCnsKICAgICAKICAgIGludCBBOwogICAgY2xhc3MgSGVhcCB7CiAgICAgIGludFtdIGRhdGE7CiAgICAgaW50W10gaW5kZXg7CiAgICAgaW50W10gY29zdDsKICAgIGJvb2xlYW5bXSBldmFsOwogICAgIGludCBzaXplOwoKICAgIHB1YmxpYyBIZWFwKGludCBzKSB7CiAgICAgICAgCiAgICAgICAgZGF0YSA9IG5ldyBpbnRbc107CiAgICAgICAgaW5kZXggPSBuZXcgaW50W3NdOwogICAgICAgIGNvc3QgPSBuZXcgaW50W3NdOwogICAgICAgIGV2YWwgPSBuZXcgYm9vbGVhbltzXTsKICAgIH0KCiAgICBwdWJsaWMgdm9pZCBpbml0KGludCBzKSB7CiAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBzOyBpKyspIHsKICAgICAgICAgICAgaW5kZXhbaV0gPSAtMTsKICAgICAgICAgICAgZXZhbFtpXSA9IGZhbHNlOwogICAgICAgIH0KICAgICAgICBzaXplID0gMDsKICAgIH0KCiAgICBwdWJsaWMgYm9vbGVhbiBpc0VtcHR5KCkgewogICAgICAgIHJldHVybiAoc2l6ZSA9PSAwKTsKICAgIH0KCiAgICBwcml2YXRlIHZvaWQgc2hpZnRVcChpbnQgaSkgewogICAgICAgIGludCBqOwogICAgICAgIHdoaWxlIChpID4gMCkgewogICAgICAgICAgICBqID0gKGkgLSAxKSAvIDI7CiAgICAgICAgICAgIGlmIChjb3N0W2RhdGFbaV1dIDwgY29zdFtkYXRhW2pdXSkgewoKICAgICAgICAgICAgICAgIGludCB0ZW1wID0gaW5kZXhbZGF0YVtpXV07CiAgICAgICAgICAgICAgICBpbmRleFtkYXRhW2ldXSA9IGluZGV4W2RhdGFbal1dOwogICAgICAgICAgICAgICAgaW5kZXhbZGF0YVtqXV0gPSB0ZW1wOwoKICAgICAgICAgICAgICAgIHRlbXAgPSBkYXRhW2ldOwogICAgICAgICAgICAgICAgZGF0YVtpXSA9IGRhdGFbal07CiAgICAgICAgICAgICAgICBkYXRhW2pdID0gdGVtcDsKICAgICAgICAgICAgICAgIGkgPSBqOwogICAgICAgICAgICB9IGVsc2UKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KCiAgICBwcml2YXRlIHZvaWQgc2hpZnREb3duKGludCBpKSB7CiAgICAgICAgaW50IGosIGs7CiAgICAgICAgd2hpbGUgKDIgKiBpICsgMSA8IHNpemUpIHsKICAgICAgICAgICAgaiA9IDIgKiBpICsgMTsKICAgICAgICAgICAgayA9IGogKyAxOwogICAgICAgICAgICBpZiAoayA8IHNpemUgJiYgY29zdFtkYXRhW2tdXSA8IGNvc3RbZGF0YVtqXV0KICAgICAgICAgICAgICAgICAgICAmJiBjb3N0W2RhdGFba11dIDwgY29zdFtkYXRhW2ldXSkgewoKICAgICAgICAgICAgICAgIGludCB0ZW1wID0gaW5kZXhbZGF0YVtrXV07CiAgICAgICAgICAgICAgICBpbmRleFtkYXRhW2tdXSA9IGluZGV4W2RhdGFbaV1dOwogICAgICAgICAgICAgICAgaW5kZXhbZGF0YVtpXV0gPSB0ZW1wOwoKICAgICAgICAgICAgICAgIHRlbXAgPSBkYXRhW2tdOwogICAgICAgICAgICAgICAgZGF0YVtrXSA9IGRhdGFbaV07CiAgICAgICAgICAgICAgICBkYXRhW2ldID0gdGVtcDsKCiAgICAgICAgICAgICAgICBpID0gazsKICAgICAgICAgICAgfSBlbHNlIGlmIChjb3N0W2RhdGFbal1dIDwgY29zdFtkYXRhW2ldXSkgewoKICAgICAgICAgICAgICAgIGludCB0ZW1wID0gaW5kZXhbZGF0YVtqXV07CiAgICAgICAgICAgICAgICBpbmRleFtkYXRhW2pdXSA9IGluZGV4W2RhdGFbaV1dOwogICAgICAgICAgICAgICAgaW5kZXhbZGF0YVtpXV0gPSB0ZW1wOwoKICAgICAgICAgICAgICAgIHRlbXAgPSBkYXRhW2pdOwogICAgICAgICAgICAgICAgZGF0YVtqXSA9IGRhdGFbaV07CiAgICAgICAgICAgICAgICBkYXRhW2ldID0gdGVtcDsKCiAgICAgICAgICAgICAgICBpID0gajsKICAgICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICB9CgogICAgcHVibGljIGludCBwb3AoKSB7CiAgICAgICAgaW50IHJlcyA9IGRhdGFbMF07CiAgICAgICAgZGF0YVswXSA9IGRhdGFbc2l6ZSAtIDFdOwogICAgICAgIGluZGV4W2RhdGFbMF1dID0gMDsKICAgICAgICBzaXplLS07CiAgICAgICAgc2hpZnREb3duKDApOwogICAgICAgIHJldHVybiByZXM7CiAgICB9CgogICAgcHVibGljIHZvaWQgcHVzaChpbnQgeCwgaW50IGMpIHsKICAgICAgICBpZiAoaW5kZXhbeF0gPT0gLTEpIHsgCiAgICAgICAgICAgIGNvc3RbeF0gPSBjOwogICAgICAgICAgICBkYXRhW3NpemVdID0geDsKICAgICAgICAgICAgaW5kZXhbeF0gPSBzaXplOwogICAgICAgICAgICBzaXplKys7CiAgICAgICAgICAgIHNoaWZ0VXAoaW5kZXhbeF0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmIChjIDwgY29zdFt4XSkgewogICAgICAgICAgICAgICAgY29zdFt4XSA9IGM7CiAgICAgICAgICAgICAgICBzaGlmdFVwKGluZGV4W3hdKTsKICAgICAgICAgICAgICAgIHNoaWZ0RG93bihpbmRleFt4XSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpCiAgICB7CiAgICAgICAgCiAgICAgVFMgaGVsbCA9IG5ldyBUUygpOwogICAgIGhlbGwuZ28oKTsKICAgIH0KICAgIAogICAgdm9pZCBnbygpCiAgICB7CiAgICAgICAgSW5wdXRTdHJlYW0gaW5wdXRTdHJlYW0gPSBTeXN0ZW0uaW47CgkJT3V0cHV0U3RyZWFtIG91dHB1dFN0cmVhbSA9IFN5c3RlbS5vdXQ7CgkJSW5wdXRSZWFkZXIgaW4gPSBuZXcgSW5wdXRSZWFkZXIoaW5wdXRTdHJlYW0pOwoJCVByaW50V3JpdGVyIG91dCA9IG5ldyBQcmludFdyaXRlcihvdXRwdXRTdHJlYW0pOwogICAgICAgIGludCBUID0gaW4ubmV4dEludCgpOwogICAgICAgIAogICAgICAgCiAgICAgCiAgICAgICBmb3IgKGludCBpPTA7aTxUOyBpKyspCiAgICAgICB7CiAgICAgICAgICAgICAKICAgICAgICAgICAKICAgICAgICAgICAgSGFzaE1hcDxTdHJpbmcsIEludGVnZXI+IG5hbWluZzsKICAgICAgICAgICAgaW50IE4gPSBpbi5uZXh0SW50KCk7CiAgICAgICAgIEhlYXAgaGVhcCA9IG5ldyBIZWFwKE4pOwogICAgICAgICBoZWFwLmluaXQoTik7CiAgICAgICAgICAgIFN0cmluZ1tdIG5hbWUgPSBuZXcgU3RyaW5nW05dOwogICAgICAgICAgICAKICAgICAgICAgICAgIExpc3QgbGlzdCA9IG5ldyBBcnJheUxpc3Q8SGFzaE1hcDxJbnRlZ2VyLCBJbnRlZ2VyPj4oKTsKICAgICAgICAgICAgIG5hbWluZyA9IG5ldyBIYXNoTWFwKCk7CiAgICAgICAgICAgICAKICAgICAgICAgICAgIGZvcihpbnQgaj0wO2o8TjtqKyspCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgbmFtZVtqXSA9IGluLm5leHQoKTsKICAgICAgICAgICAgICAgICBuYW1pbmcucHV0KG5hbWVbal0sIGopOwogICAgICAgICAgICAgICAgIGludCBubyA9IGluLm5leHRJbnQoKTsKICAgICAgICAgICAgICAgSGFzaE1hcDxJbnRlZ2VyLCBJbnRlZ2VyPiBoMSA9IG5ldyBIYXNoTWFwPD4oKTsKICAgICAgICAgICAgICAgICBmb3IoaW50IHk9MDt5PG5vO3krKykKICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgaW50IGExPSBpbi5uZXh0SW50KCk7CiAgICAgICAgICAgICAgICAgICAgaW50IGIxPSBpbi5uZXh0SW50KCk7CiAgICAgICAgICAgICAgICAgICAgaDEucHV0KGExLCBiMSk7CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGxpc3QuYWRkKGgxKTsKICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIAogICAgICAgICAgICAgaW50IHR1ayA9IGluLm5leHRJbnQoKTsKICAgICAgCiAgICAgICAgICAgIAoKICAgICAgICAgICAgIGZvcihpbnQgamFtZXM9MDtqYW1lczx0dWs7amFtZXMrKykKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBTdHJpbmcgc291cmNlID0gaW4ubmV4dCgpOwogICAgICAgICAgICAgICAgIFN0cmluZyBkZXN0ID0gaW4ubmV4dCgpOwogICAgICAgICAgICAgICAgIGludCBzMSA9IG5hbWluZy5nZXQoc291cmNlKTsKICAgICAgICAgICAgICAgICBpbnQgczIgPSBuYW1pbmcuZ2V0KGRlc3QpOwogICAgICAgICAgICAgICAKICAgICAgICAgICAgIAogICAgICAgICAgICAgCiAgICAgICAgICAgaGVhcC5wdXNoKHMxLCAwKTsKICAgICAgICAgICB3aGlsZSghaGVhcC5pc0VtcHR5KCkpCiAgICAgICAgICAgewogICAgICAgICAgICAgICBpbnQgdSA9IGhlYXAucG9wKCk7CiAgICAgICAgICAgICAgIGlmKHU9PXMyKQogICAgICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGhlYXAuY29zdFtzMl0pOwogICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIEhhc2hNYXA8SW50ZWdlcixJbnRlZ2VyPiBoYSA9IChIYXNoTWFwPEludGVnZXIsSW50ZWdlcj4pIGxpc3QuZ2V0KHUpOwogICAgICAgICAgICAgICAgZm9yKEludGVnZXIga2V5OmhhLmtleVNldCgpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgaGVhcC5wdXNoKGtleS0xLCBoYS5nZXQoa2V5KStoZWFwLmNvc3RbdV0pOwogICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgIAogICAgICAgICAgIH0KICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgaGVhcC5pbml0KE4pOwogICAgICAgICAgICAgIC8qICBpbnQgZWFnPTA7CiAgICAgICAgICAgICAgSGFzaE1hcDxJbnRlZ2VyLCBJbnRlZ2VyPiBoYXNoID0gICAoSGFzaE1hcDxJbnRlZ2VyLCBJbnRlZ2VyPikgbGlzdC5nZXQoZWFnKTsKICAgICAgICAgICAgICAgICBmb3IoaW50IGtleSA6IGhhc2gua2V5U2V0KCkpCiAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICBpbnQgYWx0ID0gZGlzW2VhZ10gKyBoYXNoLmdldChrZXkpOwogICAgICAgICAgICAgICAgICAgICBpZihhbHQ8ZGlzW2tleS0xXSkKICAgICAgICAgICAgICAgICAgICAge2Rpc1trZXktMV0gPSBhbHQ7CiAgICAgICAgICAgICAgICAgICAgbGlzdC5hZGQoa2V5LTEpOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIH0gKi8KICAgICAgICAgICAgICAgICB9ICAKICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICB9IAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICB9IAogICAgICAgICAgIAogICAgICAgIH0KICAgICAgICAKICAgICAgICAKICAgIAogICAgCiAgICAKCgoKCmNsYXNzIElucHV0UmVhZGVyIHsKICAgIHB1YmxpYyBCdWZmZXJlZFJlYWRlciByZWFkZXI7CiAgICBwdWJsaWMgU3RyaW5nVG9rZW5pemVyIHRva2VuaXplcjsKCiAgICBwdWJsaWMgSW5wdXRSZWFkZXIoSW5wdXRTdHJlYW0gc3RyZWFtKSB7CiAgICAgICAgcmVhZGVyID0gbmV3IEJ1ZmZlcmVkUmVhZGVyKG5ldyBJbnB1dFN0cmVhbVJlYWRlcihzdHJlYW0pLCAzMjc2OCk7CiAgICAgICAgdG9rZW5pemVyID0gbnVsbDsKICAgIH0KCiAgICBwdWJsaWMgU3RyaW5nIG5leHQoKSB7CiAgICAgICAgd2hpbGUgKHRva2VuaXplciA9PSBudWxsIHx8ICF0b2tlbml6ZXIuaGFzTW9yZVRva2VucygpKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICB0b2tlbml6ZXIgPSBuZXcgU3RyaW5nVG9rZW5pemVyKHJlYWRlci5yZWFkTGluZSgpKTsKICAgICAgICAgICAgfSBjYXRjaCAoSU9FeGNlcHRpb24gZSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFJ1bnRpbWVFeGNlcHRpb24oZSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRva2VuaXplci5uZXh0VG9rZW4oKTsKICAgIH0KCiAgICBwdWJsaWMgaW50IG5leHRJbnQoKSB7CiAgICAgICAgcmV0dXJuIEludGVnZXIucGFyc2VJbnQobmV4dCgpKTsKICAgIH0KCn0KCiA=
prog.c:2:1: error: unknown type name 'import'
import java.io.BufferedReader;
^
prog.c:2:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.io.BufferedReader;
^
prog.c:3:1: error: unknown type name 'import'
import java.io.IOException;
^
prog.c:3:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.io.IOException;
^
prog.c:4:1: error: unknown type name 'import'
import java.io.InputStream;
^
prog.c:4:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.io.InputStream;
^
prog.c:5:1: error: unknown type name 'import'
import java.io.InputStreamReader;
^
prog.c:5:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.io.InputStreamReader;
^
prog.c:6:1: error: unknown type name 'import'
import java.io.OutputStream;
^
prog.c:6:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.io.OutputStream;
^
prog.c:7:1: error: unknown type name 'import'
import java.io.PrintWriter;
^
prog.c:7:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.io.PrintWriter;
^
prog.c:8:1: error: unknown type name 'import'
import java.util.ArrayList;
^
prog.c:8:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.util.ArrayList;
^
prog.c:9:1: error: unknown type name 'import'
import java.util.Arrays;
^
prog.c:9:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.util.Arrays;
^
prog.c:10:1: error: unknown type name 'import'
import java.util.Comparator;
^
prog.c:10:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.util.Comparator;
^
prog.c:11:1: error: unknown type name 'import'
import java.util.HashMap;
^
prog.c:11:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.util.HashMap;
^
prog.c:12:1: error: unknown type name 'import'
import java.util.LinkedList;
^
prog.c:12:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.util.LinkedList;
^
prog.c:13:1: error: unknown type name 'import'
import java.util.List;
^
prog.c:13:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.util.List;
^
prog.c:14:1: error: unknown type name 'import'
import java.util.PriorityQueue;
^
prog.c:14:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.util.PriorityQueue;
^
prog.c:15:1: error: unknown type name 'import'
import java.util.Queue;
^
prog.c:15:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.util.Queue;
^
prog.c:16:1: error: unknown type name 'import'
import java.util.Scanner;
^
prog.c:16:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.util.Scanner;
^
prog.c:17:1: error: unknown type name 'import'
import java.util.StringTokenizer;
^
prog.c:17:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
import java.util.StringTokenizer;
^
prog.c:19:1: error: unknown type name 'public'
public class TS
^
prog.c:19:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'TS'
public class TS
^
prog.c:234:1: error: unknown type name 'class'
class InputReader {
^
prog.c:234:19: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
class InputReader {
^