implemented several methods in List