class Context extends ArrayList<Object> {

    private static final long serialVersionUID = 1L;

    public Class loadClass(String className) throws ClassNotFoundException {
        return Thread.currentThread().getContextClassLoader().loadClass(className);
    }

    public URL getResource(String name) {
        return Thread.currentThread().getContextClassLoader().getResource(name);
    }

    public Object getObject() {<FILL_FUNCTION_BODY>}

    public Object getParent() {
        int size = size();
        if (size > 1) {
            return get(size - 2);
        }
        return null;
    }

    public void push(Object object) {
        add(object);
    }

    public Object pop() {
        int size = size();
        if (size > 0) {
            return remove(size - 1);
        }
        return null;
    }

}

        int size = size();
        if (size > 0) {
            return get(size - 1);
        }
        return null;
    
<methods>public void <init>() ,public void <init>(int) ,public void <init>(Collection<? extends java.lang.Object>) ,public boolean add(java.lang.Object) ,public void add(int, java.lang.Object) ,public boolean addAll(Collection<? extends java.lang.Object>) ,public boolean addAll(int, Collection<? extends java.lang.Object>) ,public void clear() ,public java.lang.Object clone() ,public boolean contains(java.lang.Object) ,public void ensureCapacity(int) ,public boolean equals(java.lang.Object) ,public void forEach(Consumer<? super java.lang.Object>) ,public java.lang.Object get(int) ,public int hashCode() ,public int indexOf(java.lang.Object) ,public boolean isEmpty() ,public Iterator<java.lang.Object> iterator() ,public int lastIndexOf(java.lang.Object) ,public ListIterator<java.lang.Object> listIterator() ,public ListIterator<java.lang.Object> listIterator(int) ,public java.lang.Object remove(int) ,public boolean remove(java.lang.Object) ,public boolean removeAll(Collection<?>) ,public boolean removeIf(Predicate<? super java.lang.Object>) ,public void replaceAll(UnaryOperator<java.lang.Object>) ,public boolean retainAll(Collection<?>) ,public java.lang.Object set(int, java.lang.Object) ,public int size() ,public void sort(Comparator<? super java.lang.Object>) ,public Spliterator<java.lang.Object> spliterator() ,public List<java.lang.Object> subList(int, int) ,public java.lang.Object[] toArray() ,public T[] toArray(T[]) ,public void trimToSize() <variables>private static final java.lang.Object[] DEFAULTCAPACITY_EMPTY_ELEMENTDATA,private static final int DEFAULT_CAPACITY,private static final java.lang.Object[] EMPTY_ELEMENTDATA,transient java.lang.Object[] elementData,private static final long serialVersionUID,private int size