improve design and improve add product to list