#include<bits/stdc++.h>
using namespace std;
const int N=1e5+10;
int n,ans,pre,mod=1e9+7,x[N];
int q_pow(int x,int y){
	int res=x,ans=1;
	for(;y;y>>=1,res=1ll*res*res%mod)if(y&1)ans=1ll*ans*res%mod;
	return ans;
}
int main(){
	scanf("%d",&n);
	for(int i=1;i<=n;i++)scanf("%d",&x[i]);
	for(int i=1;i<n;i++)pre=(pre+q_pow(i,mod-2))%mod,ans+=1ll*(x[i+1]-x[i])*pre%mod,ans%=mod;
	for(int i=1;i<n;i++)ans=1ll*ans*i%mod;
	printf("%d",ans);
}