#include <iostream>
#include "array_list.h"

int main() {
    ArrayList<int> a;
    std::cout << a.size() << "\n";
    try {
        a[0];
    } catch (std::exception& e) {
        std::cerr << e.what() << "\n";
    }
    for (std::size_t i = 0; i < 100; i++) {
        a.insert(i, i);
    }
    std::cout << a.size() << "\n";
    ArrayList<int> b;
    b = a;
    std::cout << b.size() << "\n";
    for (std::size_t i = 0; i < 15; i++) {
        b.remove(50);
    }
    std::cout << b.size() << "\n";
    b.insert(80, 100);
    a.remove(0);
    ArrayList<int> c(b);
    c.insert(14, 100000);
    c.remove(20);
    b.remove(1);
    b.insert(1, 12039812);
    std::cout << c.size() << "\n";
    a.print();
    b.print();
    c.print();
    // ArrayList<int> list;
    // list.insert(0,1);
    // list.insert(1,2);
    // list.insert(2,3);
    // list.insert(3,4);
    // list.insert(4,5);
    // list.remove(2);
    // list.print();
    // ArrayList<int> listB(list);
    // listB.insert(4,6);
    // listB.print();
    // ArrayList<int> listC(2);
    // listC.insert(0,10);
    // listC = listB;
    // listC.remove(1);
    // listC.print();
}