#agc023c. [agc023_c]Painting Machines

[agc023_c]Painting Machines

题目描述

NN 个方块排成一行,从左到右编号为 11NN。初始状态下,所有方块都是白色的。还有 N1N-1 台喷漆机,编号为 11N1N-1。当操作第 ii 台喷漆机时,它会将方块 iii+1i+1 涂成黑色。

Snuke 将按顺序操作这些喷漆机。他选择操作的顺序用一个排列 (1,2,...,N1)(1, 2, ..., N-1) 表示,其中第 ii 台操作的喷漆机是第 PiP_i 台。

在此,排列 PP 的_得分_定义为,当按照排列 PP 指定的顺序操作喷漆机时,为了第一次将所有方块都涂成黑色,所需要操作的喷漆机数量。Snuke 还没有决定要使用哪个排列 PP,但他对可能的排列的得分感兴趣。请计算所有可能排列的得分的总和,并取模 109+710^9+7

约束条件

  • 2N1062 \leq N \leq 10^6

输入

从标准输入读入输入数据,输入格式如下:

NN

输出

打印所有可能排列的得分的总和,取模 109+710^9+7


示例输入 1

4

示例输出 1

16

有六个可能的排列 PP。其中,P=(1,3,2)P = (1, 3, 2)P=(3,1,2)P = (3, 1, 2) 的得分为 22,其余四个排列的得分为 33。因此,答案为 2×2+3×4=162 \times 2 + 3 \times 4 = 16


示例输入 2

2

示例输出 2

1

只有一个可能的排列:P=(1)P = (1),得分为 11


示例输入 3

5

示例输出 3

84

示例输入 4

100000

示例输出 4

341429644