




'''simple docstring'''



import warnings

from ...utils import is_sklearn_available, requires_backends


if is_sklearn_available():
 from scipy.stats import pearsonr, spearmanr
 from sklearn.metrics import fa_score, matthews_corrcoef


lowerCamelCase_			=						(
    'This metric will be removed from the library soon, metrics should be handled with the 🤗 Evaluate '
    'library. You can have a look at this example script for pointers: '
    'https://github.com/huggingface/transformers/blob/main/examples/pytorch/text-classification/run_glue.py'
)
def 			SCREAMING_SNAKE_CASE_			(							__A    :			Tuple	,					__A    :			Dict  )			->			Union[str, Any]:
   warnings.warn(__A	,					__A  )
   requires_backends(__A	,					"sklearn"  )
   return (preds == labels).mean()
def 			SCREAMING_SNAKE_CASE_			(							__A    :			Union[str, Any]	,					__A    :			List[str]  )			->			Dict:
   warnings.warn(__A	,					__A  )
   requires_backends(__A	,					"sklearn"  )
   _SCREAMING_SNAKE_CASE	=				simple_accuracy(__A	,					__A  )
   _SCREAMING_SNAKE_CASE	=				fa_score(y_true=__A	,					y_pred=__A  )
   return {
       "acc": acc,
       "f1": fa,
       "acc_and_f1": (acc + fa) / 2,
   }
def 			SCREAMING_SNAKE_CASE_			(							__A    :			Optional[Any]	,					__A    :			Optional[Any]  )			->			Union[str, Any]:
   warnings.warn(__A	,					__A  )
   requires_backends(__A	,					"sklearn"  )
   _SCREAMING_SNAKE_CASE	=				pearsonr(__A	,					__A  )[0]
   _SCREAMING_SNAKE_CASE	=				spearmanr(__A	,					__A  )[0]
   return {
       "pearson": pearson_corr,
       "spearmanr": spearman_corr,
       "corr": (pearson_corr + spearman_corr) / 2,
   }
def 			SCREAMING_SNAKE_CASE_			(							__A    :			Any	,					__A    :			Optional[Any]	,					__A    :			List[Any]  )			->			List[str]:
   warnings.warn(__A	,					__A  )
   requires_backends(__A	,					"sklearn"  )
   assert len(__A  ) == len(__A  ), f"""Predictions and labels have mismatched lengths {len(__A  )} and {len(__A  )}"""
   if task_name == "cola":
      return {"mcc": matthews_corrcoef(__A	,					__A  )}
   elif task_name == "sst-2":
      return {"acc": simple_accuracy(__A	,					__A  )}
   elif task_name == "mrpc":
      return acc_and_fa(__A	,					__A  )
   elif task_name == "sts-b":
      return pearson_and_spearman(__A	,					__A  )
   elif task_name == "qqp":
      return acc_and_fa(__A	,					__A  )
   elif task_name == "mnli":
      return {"mnli/acc": simple_accuracy(__A	,					__A  )}
   elif task_name == "mnli-mm":
      return {"mnli-mm/acc": simple_accuracy(__A	,					__A  )}
   elif task_name == "qnli":
      return {"acc": simple_accuracy(__A	,					__A  )}
   elif task_name == "rte":
      return {"acc": simple_accuracy(__A	,					__A  )}
   elif task_name == "wnli":
      return {"acc": simple_accuracy(__A	,					__A  )}
   elif task_name == "hans":
      return {"acc": simple_accuracy(__A	,					__A  )}
   else:
      raise KeyError(__A  )






def 			SCREAMING_SNAKE_CASE_			(							__A    :			str	,					__A    :			Optional[int]	,					__A    :			Tuple  )			->			int:
   warnings.warn(__A	,					__A  )
   requires_backends(__A	,					"sklearn"  )
   if len(__A  ) != len(__A  ):
      raise ValueError(f"""Predictions and labels have mismatched lengths {len(__A  )} and {len(__A  )}"""  )
   if task_name == "xnli":
      return {"acc": simple_accuracy(__A	,					__A  )}
   else:
      raise KeyError(__A  )







'''simple docstring'''



def 			SCREAMING_SNAKE_CASE_			(							__A    :			int  )			->			int:
   if n == 1 or not isinstance(__A	,					__A  ):
      return 0
   elif n == 2:
      return 1
   else:
      _SCREAMING_SNAKE_CASE	=				[0, 1]
      for i in range(2	,					n + 1  ):
         sequence.append(sequence[i - 1] + sequence[i - 2]  )

      return sequence[n]
def 			SCREAMING_SNAKE_CASE_			(							__A    :			int  )			->			int:
   _SCREAMING_SNAKE_CASE	=				0
   _SCREAMING_SNAKE_CASE	=				2

   while digits < n:
      index += 1
      _SCREAMING_SNAKE_CASE	=				len(str(fibonacci(__A  )  )  )

   return index
def 			SCREAMING_SNAKE_CASE_			(							__A    :			int = 10_00  )			->			int:
   return fibonacci_digits_index(__A  )


if __name__ == "__main__":
 print(solution(int(str(input()).strip())))

