abstract class CupV implements DrinkableV {
    int amount;
    char drinker = '?';
    CupV() {             /* 同 CupU */
        fill();
    }
    CupV(char c) {       /* 同 CupU */
        drinker = c;
        fill();
    }
    void drink() {       /* 同 CupU */
        drink(5);
    }
    public void drink(int i) {  /* 同 CupU */
        amount -= i;
    }
    public String status() {    /* 同 CupU */
        String s = "amount=" + amount;
        if (drinker != '?') s += " drinker=" + drinker;
        return s;
    }
}
