import java.util.*;

class ListExp {
    public static void main(String[] args) {

	ArrayList<Integer> lst = new ArrayList<Integer>();
        for (int i = 0; i < 10; i ++) {
            lst.add(i*i);
        }

        int j = 0;
        while( j < lst.size() ) {
	    System.out.println( lst.get(j) );
            j ++;
        }

        ListIterator<Integer> itr = lst.listIterator(0);
        while( itr.hasNext() ) {
	    System.out.println(itr.next());
        }

        while( itr.hasPrevious() ) {
            System.out.println(itr.previous());
        }

        int total = 0;
        j = 0;
        while( j < lst.size() ) {
	    total = total + lst.get(j);
            j ++;
        }

        System.out.println(total);

        total = 0;

        while( itr.hasNext() ) {
	    total = total + itr.next();
        }

        System.out.println(total);
	
        

        while( itr.hasPrevious() ) {            

            if (itr.previous() % 2 == 0) 
		itr.set(100);
	}

        ListIterator<Integer> itr1 = lst.listIterator(0);

        while( itr1.hasNext() ) {
	    System.out.println(itr1.next());
        }

        

        itr.add(200);
        

	itr.add(205);
        System.out.println(itr.next());
        itr.set(301);
        itr.set(305);

	//        itr1.previous();

        for(Integer x: lst) System.out.println(x);

   }
}

