On old cell phones, users typed on a numeric keypad and the phone would provide a list of words that matched these numbers. Each digit mapped to a set of 0 - 4 letters. Implement an algo­rithm to return a list of matching words, given a sequence of digits. You are provided a list of valid words. The mapping is shown in the diagram below:

Example 1:


Input: num = "8733", words = ["tree", "used"]

Output: ["tree", "used"]

Example 2:


Input: num = "2", words = ["a", "b", "c", "d"]

Output: ["a", "b", "c"]

Note: