adding 2 approaches for products list implementation