write a go solution for Description: You have an array of integers (initially empty). You have to perform q queries. Each query is of one of two types: - "1 x" — add the element x to the end of the array; - "2 x y" — replace all occurrences of x in the array with y. Find the resulting array after performing all the queries. Input Format: The first line contains a single integer q (1<=q<=5*10^5) — the number of queries. Next q lines contain queries (one per line). Each query is of one of two types: - "1 x" (1<=x<=5*10^5); - "2 x y" (1<=x,y<=5*10^5). It's guaranteed that there is at least one query of the first type. Output Format: In a single line, print k integers — the resulting array after performing all the queries, where k is the number of queries of the first type. Note: In the first example, the array changes as follows: [] arrow [3] arrow [3,1] arrow [3,2] arrow [3,2,2] arrow [3,2,2,1] arrow [3,2,2,1,2] arrow [3,2,2,3,2]. In the second example, the array changes as follows: [] arrow [1] arrow [1,2] arrow [1,2,1] arrow [1,2,1]. In the third example, the array changes as follows: [] arrow [] arrow [1] arrow [1,4] arrow [1,4,2] arrow [1,4,4] arrow [1,3,3] arrow [1,3,3,2] arrow [1,3,3,7].. Output only the code with no comments, explanation, or additional text.