编程题
矩阵求和
### 题目描述
经过重重笔试面试的考验,小明成功进入 Macrohard 公司工作。
今天小明的任务是填满这么一张表:
表有 $n$ 行 $n$ 列,行和列的编号都从 1 算起。
其中第 $i$ 行第 $j$ 个元素的值是 $gcd(i, j)$ 的平方,$gcd$ 表示最大公约数,以下是这个表的前四行的前四列:
1 1 1 1
1 4 1 4
1 1 9 1
1 4 1 16
小明突然冒出一个奇怪的想法,他想知道这张表中所有元素的和。
由于表过于庞大,他希望借助计算机的力量。
### 输入描述
一行一个正整数 $n\ (n \leq 10^7)$ 意义见题。
### 输出描述:
一行一个数,表示所有元素的和。由于答案比较大,请输出模 $10^9 + 7$ 后的结果。
### 输入输出样例
#### 示例
> 输入
```txt
4
```
> 输出
```txt
48
```