Generic Array implemented