

import numpy as np




def  lowerCAmelCase(			SCREAMING_SNAKE_CASE_ ,	SCREAMING_SNAKE_CASE_ )->	Union[str, Any]:



    """simple docstring"""






    UpperCamelCase_      =	np.array(SCREAMING_SNAKE_CASE_ )
    UpperCamelCase_      =	np.array(SCREAMING_SNAKE_CASE_ )

    UpperCamelCase_      =	abs(predict - actual )
    UpperCamelCase_      =	difference.mean()

    return score




def  lowerCAmelCase(			SCREAMING_SNAKE_CASE_ ,	SCREAMING_SNAKE_CASE_ )->	Optional[int]:



    """simple docstring"""






    UpperCamelCase_      =	np.array(SCREAMING_SNAKE_CASE_ )
    UpperCamelCase_      =	np.array(SCREAMING_SNAKE_CASE_ )

    UpperCamelCase_      =	predict - actual
    UpperCamelCase_      =	np.square(SCREAMING_SNAKE_CASE_ )

    UpperCamelCase_      =	square_diff.mean()
    return score




def  lowerCAmelCase(			SCREAMING_SNAKE_CASE_ ,	SCREAMING_SNAKE_CASE_ )->	Optional[int]:



    """simple docstring"""






    UpperCamelCase_      =	np.array(SCREAMING_SNAKE_CASE_ )
    UpperCamelCase_      =	np.array(SCREAMING_SNAKE_CASE_ )

    UpperCamelCase_      =	predict - actual
    UpperCamelCase_      =	np.square(SCREAMING_SNAKE_CASE_ )
    UpperCamelCase_      =	square_diff.mean()
    UpperCamelCase_      =	np.sqrt(SCREAMING_SNAKE_CASE_ )
    return score




def  lowerCAmelCase(			SCREAMING_SNAKE_CASE_ ,	SCREAMING_SNAKE_CASE_ )->	Optional[int]:



    """simple docstring"""






    UpperCamelCase_      =	np.array(SCREAMING_SNAKE_CASE_ )
    UpperCamelCase_      =	np.array(SCREAMING_SNAKE_CASE_ )

    UpperCamelCase_      =	np.log(predict + 1 )
    UpperCamelCase_      =	np.log(actual + 1 )

    UpperCamelCase_      =	log_predict - log_actual
    UpperCamelCase_      =	np.square(SCREAMING_SNAKE_CASE_ )
    UpperCamelCase_      =	square_diff.mean()

    UpperCamelCase_      =	np.sqrt(SCREAMING_SNAKE_CASE_ )

    return score




def  lowerCAmelCase(			SCREAMING_SNAKE_CASE_ ,	SCREAMING_SNAKE_CASE_ )->	str:



    """simple docstring"""






    UpperCamelCase_      =	np.array(SCREAMING_SNAKE_CASE_ )
    UpperCamelCase_      =	np.array(SCREAMING_SNAKE_CASE_ )

    UpperCamelCase_      =	predict - actual
    UpperCamelCase_      =	np.sum(SCREAMING_SNAKE_CASE_ ) / len(SCREAMING_SNAKE_CASE_ )
    UpperCamelCase_      =	np.sum(SCREAMING_SNAKE_CASE_ ) / len(SCREAMING_SNAKE_CASE_ )
    # print(numerator, denumerator)
    UpperCamelCase_      =	float(SCREAMING_SNAKE_CASE_ ) / denumerator * 1_0_0

    return score




def  lowerCAmelCase(			SCREAMING_SNAKE_CASE_ ,	SCREAMING_SNAKE_CASE_ )->	int:



    """simple docstring"""






    return np.mean(np.array(SCREAMING_SNAKE_CASE_ ) == np.array(SCREAMING_SNAKE_CASE_ ) )



def  lowerCAmelCase(			SCREAMING_SNAKE_CASE_ ,	SCREAMING_SNAKE_CASE_ ,	SCREAMING_SNAKE_CASE_ )->	str:



    """simple docstring"""






    if power < 0:
        return -1
    base %= mod
    UpperCamelCase_      =	1

    while power > 0:
        if power & 1:
            UpperCamelCase_      =	(result * base) % mod
        UpperCamelCase_      =	power >> 1
        UpperCamelCase_      =	(base * base) % mod

    return result




def  lowerCAmelCase(			)->	Tuple:



    """simple docstring"""






    print(modular_exponential(3 ,	2_0_0 ,	1_3 ) )


if __name__ == "__main__":
 import doctest

 doctest.testmod()

 main()
