import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        List<int[]> data1 = loadData1();
        List<int[]> data2 = loadData2();
        
        List<int[]> joinedData = joinData(data1, data2);

        for (int[] row : joinedData) {
            System.out.println("(" + row[0] + "," + row[1] + "," + row[2] + "," + row[3] + "," + row[4] + ")");
        }
    }

    private static List<int[]> loadData1() {
        List<int[]> data1 = new ArrayList<>();
        data1.add(new int[]{1, 2, 3});
        data1.add(new int[]{4, 2, 1});
        data1.add(new int[]{8, 3, 4});
        data1.add(new int[]{4, 3, 3});
        data1.add(new int[]{7, 2, 5});
        data1.add(new int[]{8, 4, 3});
        return data1;
    }

    private static List<int[]> loadData2() {
        List<int[]> data2 = new ArrayList<>();
        data2.add(new int[]{2, 4});
        data2.add(new int[]{8, 9});
        data2.add(new int[]{1, 3});
        data2.add(new int[]{2, 7});
        data2.add(new int[]{2, 9});
        data2.add(new int[]{4, 6});
        data2.add(new int[]{4, 9});
        return data2;
    }

    private static List<int[]> joinData(List<int[]> data1, List<int[]> data2) {
        List<int[]> result = new ArrayList<>();
        
        for (int[] rowA : data1) {
            for (int[] rowB : data2) {
                if (rowA[0] == rowB[0]) {
                    result.add(new int[]{rowA[0], rowA[1], rowA[2], rowB[1], rowB[1]});
                }
            }
        }
        
        return result;
    }
}
