пытаюсь сделать красивый вывод задачи "Разбираем пирамиду бокалов" в выводе должна быть пирамидка и перевернутая пирамидка (запустите мой код чтобы понять).
package com.javarush.task.pro.task12.task1215;

import java.util.ArrayList;
import java.util.concurrent.TimeUnit;

/*
Разбираем пирамиду бокалов
*/

public class Solution {

    private static ArrayList<String> initList() {
        String glassTop = "       🍷       ";
        String glassSecond = "      🍷🍷      ";
        String glassThird = "     🍷🍷🍷     ";
        String glassFourth = "    🍷🍷🍷🍷    ";
        String glassFifth = "   🍷🍷🍷🍷🍷   ";
        String glassSixth = "  🍷🍷🍷🍷🍷🍷  ";
        String glassSeventh = " 🍷🍷🍷🍷🍷🍷🍷 ";
        String glassEighth = "🍷🍷🍷🍷🍷🍷🍷🍷";
        ArrayList<String> list = new ArrayList<>();
        list.add(glassEighth);
        list.add(glassSeventh);
        list.add(glassSixth);
        list.add(glassFifth);
        list.add(glassFourth);
        list.add(glassThird);
        list.add(glassSecond);
        list.add(glassTop);
        return list;
    }

    public static void print(ArrayList<String> glasses) {
        for (int i = glasses.size() - 1; i >= 0; i--) {
            System.out.println(glasses.get(i));
        }
    }

    public static void removeGlassesReverse(ArrayList<String> glasses) throws InterruptedException {
        System.out.println("Начинаем разбирать пирамиду...");

        int size = glasses.size();
        int deductible = 1;

        do {
            for (int i = 0; i < size; i++) {
                glasses.remove(glasses.size() - deductible);
                deductible++;
                for (int j = 0; j < glasses.size(); j++) {
                    for (int k = 0; k < glasses.get(j).length(); k++) {
                        System.out.println(glasses.get(k));
                        TimeUnit.SECONDS.sleep(1);
                    }
                }
            }
        } while (glasses.size() != 0);

        System.out.println("Пирамида разобрана!");
    }

    public static void main(String[] args) throws InterruptedException {
        ArrayList<String> glasses = initList();
        print(glasses);

        removeGlassesReverse(glasses);
        print(glasses);
    }
}