refactor number_of_decks