input: from typing import Callable
  
  def is_armstrong_number(num: int) -> bool:
      """
      Check if a given number is an Armstrong number. An Armstrong number is a number that is 
      equal to the sum of its own digits each raised to the power of the number of digits.
      
      >>> is_armstrong_number(153)
      True
      >>> is_armstrong_number(9474)
      True
      >>> is_armstrong_number(123)
      False
      """
      n = len(str(num))
      temp = num
      sum_of_digits = 0
    
      while temp > 0:
          digit = temp % 10
          sum_of_digits += digit ** n
          temp //= 10
    
      return num == sum_of_digits
output:     n = len(str(num))
      temp = num
      sum_of_digits = 0
    
      while temp > 0:
          digit = temp % 10
          sum_of_digits += digit ** n
          temp //= 10
    
      return num == sum_of_digits