#include #include #include #include #include using namespace std; const int maxn = 110001, mod = 1e9 + 7; int f[6][6], p[6]; void init() { for (int i = 0 ; i < 6 ; i++) for (int j = 0 ; j < 6 ; j++) f[i][j] = abs(p[i] - p[j]); f[0][1] = f[1][0] = 1; f[2][3] = f[3][2] = 1; f[4][5] = f[5][4] = 1; for (int k = 0 ; k < 6 ; k++) for (int i = 0 ; i < 6 ; i++) for (int j = 0 ; j < 6 ; j++) if (f[i][j] > f[i][k] + f[k][j]) f[i][j] = f[i][k] + f[k][j]; } int main() { int t; scanf("%d", &t); while(t--) { memset(f, 0x3f, sizeof f); int n, m; scanf("%d%d", &n, &m); for (int i = 0 ; i < 3 ; i++) { int a, b; scanf("%d%d", &a, &b); p[i * 2] = a; p[i * 2 + 1] = b; } init(); long long ans = 0; for (int i = 1 ; i <= m ; i++) { int a, b; scanf("%d%d", &a, &b); long long dist = abs(a - b); for (int x = 0 ; x < 6 ; x++) for (int y = 0 ; y < 6 ; y++) dist = min(dist, (long long)abs(a - p[x]) + f[x][y] + abs(b - p[y])); (ans += (long long)i * dist) %= mod; } printf("%lld\n", ans); } return 0; }