input: 
  def construct_mnist_model() -> keras.Model:
      """ Constructs a neural network model using keras to classify the MNIST data set.
      The model consists of an input layer with 784 nodes, a hidden layer with 128 nodes 
      using ReLU activation, and an output layer with 10 nodes using softmax activation.
      The model is compiled using the Adam optimizer and sparse categorical crossentropy loss.
      
      Example:
      >>> model = construct_mnist_model()
      >>> model.compile.name
      'Adam'
      >>> model.loss
      'sparse_categorical_crossentropy'
      """
      input_layer = keras.layers.Input(shape=(784,))
      hidden_layer = keras.layers.Dense(128, activation='relu')(input_layer)
      output_layer = keras.layers.Dense(10, activation='softmax')(hidden_layer)
      model = keras.Model(inputs=input_layer, outputs=output_layer)
      model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])
      return model
  
output:     input_layer = keras.layers.Input(shape=(784,))
      hidden_layer = keras.layers.Dense(128, activation='relu')(input_layer)
      output_layer = keras.layers.Dense(10, activation='softmax')(hidden_layer)
      model = keras.Model(inputs=input_layer, outputs=output_layer)
      model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])
      return model