import java.util.*;

public class App {
	public static void main(String [] args) {
		String s1 = "Hello";
		System.out.println("s1: " + s1);

		String s2 = s1;
		System.out.println("After initializing s2 from s1... s2: " + s2);
		if (s1 == s2)
			System.out.println("s2 is an alias for s1");
		else
			System.out.println("s2 is not an alias for s1");
		System.out.println();

		s2 = s2 + s2;
		System.out.println("After s2 = s2 + s2... s1: " + s1 + " s2: " + s2);
		if (s1 == s2)
			System.out.println("s2 is an alias for s1");
		else
			System.out.println("s2 is not an alias for s1");

		ArrayList<Integer> ai1 = new ArrayList<Integer>();
		System.out.println("ai1: " + ai1);
		ArrayList<Integer> ai2 = ai1;
		System.out.println("After initializing ai2 from ai1... ai2: " + s2);
		System.out.println("ai2: " + ai2);
		if (ai1 == ai2)
			System.out.println("ai2 is an alias for ai1");
		else
			System.out.println("ai2 is not an alias for ai1");
		System.out.println();

		for (int i = 0; i < 10; i++)
			ai1.add(i * 10);
		System.out.println("After populating ai1... ai1: " + ai1 + " ai2: " + ai2);
		if (ai1 == ai2)
			System.out.println("ai2 is an alias for ai1");
		else
			System.out.println("ai2 is not an alias for ai1");
		System.out.println();

		ai2.set(3, 17);
		System.out.println("After ai2.set(3, 17)... ai1: " + ai1 + " ai2: " + ai2);
		if (ai1 == ai2)
			System.out.println("ai2 is an alias for ai1");
		else
			System.out.println("ai2 is not an alias for ai1");
		System.out.println();
	}
}
