import java.util.*;

public class MyClass {
	
	public ArrayList list = null;

	public MyClass(ArrayList list) {
		this.list = list;
	}
	
	public Enumeration enum1() {
		return new Enum1Impl(list);
	}
	
	//public Enumeration enum2() {
	//	return new Enum2Impl(list);
	//}
	
	//public Enumeration enum3() {
	//	return new Enum3Impl(list);
	//}
	
	private class  Enum1Impl implements Enumeration  {
		
		private ArrayList list = null;
		int pointer;
		
		public Enum1Impl(ArrayList list) {
			this.list = list;
			if ((list == null) || (list.isEmpty())) {
				pointer = -1;
			}
			else {
				pointer = 0;
			}
		}
		
		public boolean hasMoreElements() {
			if (pointer == -1) {
				return false;
			}
			
			if (pointer < list.size()) {
				return true;
			}
			else {
				return false;
			}
		}
 
 		public Object nextElement() throws NoSuchElementException {
 			
			if (pointer == -1) {
				throw new  NoSuchElementException("enum1");
			}
			
			if (pointer >= list.size()) {
				throw new  NoSuchElementException("enum1");
			}
			
			
			Object object = null;
			if (pointer < list.size()) {
				object = list.get(pointer);
				pointer++;
			}
			
			return object;
			
 		} 
 

	}

}