"""simple docstring"""







from math import factorial

_UpperCamelCase					      =  {str(d): factorial(d) for d in range(10)}

def _a			(		_snake_case							):







      """simple docstring"""






      return sum(DIGIT_FACTORIAL[d] for d in str(_snake_case							)							)

def _a			(		):







      """simple docstring"""






      UpperCAmelCase          =	7 * factorial(9							) + 1
      return sum(i for i in range(3				,	_snake_case							) if sum_of_digit_factorial(_snake_case							) == i							)


if __name__ == "__main__":
  print(F"""{solution() = }""")











"""simple docstring"""







import pandas as pd
from matplotlib import pyplot as plt
from sklearn.linear_model import LinearRegression

# Splitting the dataset into the Training set and Test set
from sklearn.model_selection import train_test_split

# Fitting Polynomial Regression to the dataset
from sklearn.preprocessing import PolynomialFeatures

# Importing the dataset
_UpperCamelCase					      =  pd.read_csv(
    """https://s3.us-west-2.amazonaws.com/public.gamelab.fun/dataset/"""
    """position_salaries.csv"""
)
_UpperCamelCase					      =  dataset.iloc[:, 1:2].values
_UpperCamelCase					      =  dataset.iloc[:, 2].values


_UpperCamelCase      ,  _UpperCamelCase      ,  _UpperCamelCase      ,  _UpperCamelCase					      =  train_test_split(X, y, test_size=0.2, random_state=0)


_UpperCamelCase					      =  PolynomialFeatures(degree=4)
_UpperCamelCase					      =  poly_reg.fit_transform(X)
_UpperCamelCase					      =  LinearRegression()
pol_reg.fit(X_poly, y)

def _a			(		):







      """simple docstring"""






      plt.scatter(_snake_case				,	_snake_case				,	color="""red"""							)
      plt.plot(_snake_case				,	pol_reg.predict(poly_reg.fit_transform(_snake_case							)							)				,	color="""blue"""							)
      plt.title("""Truth or Bluff (Linear Regression)"""							)
      plt.xlabel("""Position level"""							)
      plt.ylabel("""Salary"""							)
      plt.show()


if __name__ == "__main__":
  viz_polymonial()

  # Predicting a new result with Polymonial Regression
  pol_reg.predict(poly_reg.fit_transform([[5.5]]))
  # output should be 132148.43750003



