step 1: code block inside A step 2: constructor inside A step 3: code block inside B step 4: constructor inside B