private ImageIcon chooseRandomPicture(final String theme) {
        // задаем имя новой картинки. сначала оно пустое
        String fileName = "";
        //добавляем в имя тему, выбранную игроком (в ресурсах все по темам лежит)
        if (theme.equals("Животные")) {
            fileName += "/animals/";
        } else if (theme.equals("Марки автомобилей")) {
            fileName += "/cars/";
        } else {
            fileName += "/music/";
        }
        //берем из всех картинок интересующую нас тему
        List<Integer> currentUsedPictures = usedPictures.get(theme);
        //и если там еще есть картинки, которые можно взять, то выбираем любую
        if (currentUsedPictures.size() > 0) {
            //собственно, исключение повтора или невзятия при наличии картинки
            Integer number = (int) (Math.random() * 10);
            while (!currentUsedPictures.contains(number)) {
                number = (int) (Math.random() * 10);
            }
            //добавляем к имени номер картинки и расширение. теперь имя готово
            fileName += number.toString() + ".jpg";
            //удаляем картинку и пулла картинок, т.к. мы ее взяли
            currentUsedPictures.remove(number);
            //обновляем пулл картинок с учетом удаления текущей
            usedPictures.put(theme, currentUsedPictures);
            //говорим состоянию, какие ответы правильные
            if (state != null) {
                state.setRightAnswers(rightAnswers.get(fileName));
            } else {
                currentRightAnswers = rightAnswers.get(fileName);
            }
            //выкидаваем взятую картинку
            return new ImageIcon(getClass().getResource(fileName));
        } else {
            return null;
        }
    }