import java.math.BigInteger; class BigNatural { private BigInteger value; /* invariant: value >= 0 */ public BigNatural() { value = new BigInteger("0"); } public BigNatural(int init) { value = new BigInteger(String.valueOf(init)); } public BigNatural(BigNatural b) { value = new BigInteger(b.toString()); } public String toString() { return value.toString(); } public void increment() { value = value.add(BigInteger.ONE); } public void decrement() { if (!value.equals(BigInteger.ZERO)) { value = value.subtract(BigInteger.ONE); } } }