#include <bits/stdc++.h>
using namespace std;
int n, k;
long long Resolve() {
  long long resultado = 1;
  for (long long i = 1; i < k; i++) {
    resultado = (resultado * k) % 1000000007;
  }
  for (long long i = 1; i <= n - k; i++) {
    resultado = (resultado * (n - k)) % 1000000007;
  }
  return resultado;
}
int main() {
  cin >> n >> k;
  cout << Resolve() << endl;
  return 0;
}
