def METHOD_NAME(self, question: Question) -> str:
    currentValue: str = None
    if self._secrets:
        currentValue = self._secrets.get(question['tfvar'], None)
    questionText: str = question['question']
    if currentValue:
        obfuscatedValue = self.obfuscate_secret(
            question['tfvar'],
            currentValue
        )
        questionText += f' [{obfuscatedValue}]'
    value: str = input(f'{questionText}: ') or currentValue
    if not re.match(question['regex'], value):
        print('Invalid value')
        value = self.METHOD_NAME(question)
    return value