import 'dart:io';
import "dart:math";

void main() {
  int n = int.parse(stdin.readLineSync());
  List a =[];
  int ans0 =(n==1)? 1: pow(2,n)%(pow(10,9)+7);
  // print("ans0$ans0");
  int ans1 =1;
  for(int i=1;i <=n;i++){
    ans1=(ans1*i)%(pow(10,9)+7);
    // print("ans$ans1");
  }
  
  // print(ans0);
  // print(ans1);
  print(ans0-ans1);

  
}