//*****************************
//*???????? **
//*?????? 1300012991 **
//*???2013.12.7 **
//*****************************

int app = 0; //??app??????
int see(double mon, int n, int k); //????see

int main() //???
{
	int mon, k; //mon??????k????????
	cin >> mon >> k; //??
	cout << see(mon, mon, k)-(mon-1)*k << endl; //??????see?????
	return 0;
}

//???????????mon-1?*k??????????????????see???mon???????????????????mon-1???????????mon-1?*k????
int see(double mon, int n, int k)
{
	if(n == 1) //n?????n???
		return ((pow((mon-1), (mon-1)))*mon);
	else
		app = see(mon, n-1, k) / (mon-1) * mon;
	return app;
}
