Added ArrayList implementation