class Widget1 {
	protected static String str = "Widget1";

	public Widget1() {
		this.shared();
	}

	protected void shared() {
		System.out.println(str);
	}

	public static void main(String[] args) {
		Widget1 test = new Widget2();
		Widget1 test2 = new Widget1();

		System.out.println("\n" + test.str);
		System.out.println(((Widget2)test).str);
	}
}

class Widget2 extends Widget1 {
	protected static String str = "Widget2";

	protected Widget2() {
		this.shared();
	}

	public void shared() {
		System.out.println(str);
	}
}
