refactored deck building to use product method