/**
     * Creates a new MZCondition that requires this MZCondition to be satisfied and
     * requires another {@link MZSymbol} to be obtained as well.
     *
     * @param sym   the Added symbol the player must have for the new MZCondition
     *              to be satisfied
     * @return      the new MZCondition
     */
    public MZCondition And(MZSymbol sym)
    {
        MZCondition result = new MZCondition(this);

        result.Add(sym);
        return(result);
    }
    /**
     * Creates a new MZCondition that requires this MZCondition and another
     * MZCondition to both be satisfied.
     *
     * @param other the other MZCondition that must be satisfied.
     * @return      the new MZCondition
     */
    public MZCondition And(MZCondition other)
    {
        if (other == null)
        {
            return(this);
        }
        MZCondition result = new MZCondition(this);

        result.Add(other);
        return(result);
    }