n = B1.f0s();
out.println("... B1.f0s() = " + n);
assert (n == 30);
out.println("\ncalling a.newB1()...");
B1 b1b1 = a.newB1();
B0 b0b1 = b1b1;
out.println("... b0b1 = " + b0b1);
assert (b0b1 != null);
out.println("\ncalling b0b1.f0s()...");
n = b0b1.f0s();
out.println("... b0b1.f0s() = " + n);
assert (n == 20);
out.println("\ncalling B0.f0n(b0b1)...");
n = B0.f0n(b0b1);
out.println("... B0.f0n(b0b1) = " + n);
assert (n == 21);
out.println("\ncalling b0b1.f0v()...");
n = b0b1.f0v();
out.println("... b0b1.f0v() = " + n);
assert (n == 32);
out.println("\ncalling B1.d0sc()...");
n = B1.d0sc();
out.println("... B1.d0sc() = " + n);
assert (n == -30);
out.println("\ncalling b1b1.d0sc()...");
n = b1b1.d0sc();
out.println("... b1b1.d0sc() = " + n);
assert (n == -30);
out.println("\ncalling B1.d0s(B1.d0s() + 1)...");
B1.d0s(B1.d0s() + 1);
out.println("\n... calling B1.d0s()...");
n = B1.d0s();
out.println("... B1.d0s() = " + n);
assert (n == 31);
out.println("\ncalling b1b1.d0s(b1b1.d0s() + 1)...");
b1b1.d0s(b1b1.d0s() + 1);
out.println("\n... calling b1b1.d0s()...");
n = b1b1.d0s();
out.println("... b1b1.d0s() = " + n);
assert (n == 32);
out.println("\ncalling B1.d0c(b1b1)...");
n = B1.d0c(b1b1);