Please solve the programming task below using a self-contained code snippet in a markdown code block.

You are given an encoded string s. To decode the string to a tape, the encoded string is read one character at a time and the following steps are taken:

If the character read is a letter, that letter is written onto the tape.
If the character read is a digit d, the entire current tape is repeatedly written d - 1 more times in total.

Given an integer k, return the kth letter (1-indexed) in the decoded string.
 
Please complete the following python code precisely:
```python
class Solution:
    def decodeAtIndex(self, s: str, k: int) -> str:
```