/*
// Sample code to perform I/O:
cin >> name; // Reading input from STDIN
cout << "Hi, " << name << ".\n"; // Writing output to STDOUT
// Warning: Printing unwanted or ill-formatted data to output will cause the test cases to fail
*/
// Write your code here
#include<iostream>
#include<algorithm>
#include<utility>
#include<vector>
#include <bits/stdc++.h>
using namespace std;
int gcd(int a,int b)
{
if(a==0)
return b;
if(b==0)
return a;
if(a==b)
return a;
if(a>b)
return gcd(a-b,b);
else
return gcd(a,b-a);
}
int main()
{
int t,n,m,l,r;
cin>>t;
while(t--)
{
cin>>n>>m;
vector<long int>a(n),b(n),c(n);
long int count=0;
vector<pair<int,int> > v;
for(int i=0;i<n;i++)
{
cin>>a[i];
b[i]=a[i];
c[i]=b[i];
}
for(int i=0;i<m;i++)
{
int u,V;
cin>>u>>V;
if(V>u)
v.push_back(make_pair(--V,--u));
else
v.push_back(make_pair(--u,--V));
}
for(auto it:v)
{
int l=it.first;r=it.second;
reverse(b.begin() + l, b.begin() + r);
// for(int j=l;j<=(l+r)/2;j++)
// {
// swap(b[j],b[r-j]);
// }
}
// for(int i=0;i<n;i++)
// cout<<a[i]<<" ";
sort(v.begin(),v.end());
// for(auto it:v)
// cout<<it.first<<" "<<it.second<<endl;
do{
for(auto it:v)
{
int l=it.first;r=it.second;
reverse(a.begin() + l, a.begin() + r);
// for(int j=l;j<=(l+r)/2;j++)
// {
// swap(a[j],a[r-j]);
// }
}
// for(int i=0;i<n;i++)
// cout<<a[i]<<" ";
// cout<<endl;
for(int i=0;i<n;i++)
{
if(a[i]!=b[i])
break;
if(i==n-1)
count++;
}
for(int i=0;i<n;i++)
a[i]=c[i];
}while(next_permutation(v.begin(),v.end()));
int f=1;
for(int i=1;i<=m;i++)
f=f*i;
//cout<<count<<endl;
cout<<count/gcd(count,f)<<"/"<<f/gcd(count,f)<<endl;
}
return 0;
}
LyoKLy8gU2FtcGxlIGNvZGUgdG8gcGVyZm9ybSBJL086CgpjaW4gPj4gbmFtZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gUmVhZGluZyBpbnB1dCBmcm9tIFNURElOCmNvdXQgPDwgIkhpLCAiIDw8IG5hbWUgPDwgIi5cbiI7ICAgICAgICAvLyBXcml0aW5nIG91dHB1dCB0byBTVERPVVQKCi8vIFdhcm5pbmc6IFByaW50aW5nIHVud2FudGVkIG9yIGlsbC1mb3JtYXR0ZWQgZGF0YSB0byBvdXRwdXQgd2lsbCBjYXVzZSB0aGUgdGVzdCBjYXNlcyB0byBmYWlsCiovCgovLyBXcml0ZSB5b3VyIGNvZGUgaGVyZQogICAgI2luY2x1ZGU8aW9zdHJlYW0+CiAgICAjaW5jbHVkZTxhbGdvcml0aG0+CiAgICAjaW5jbHVkZTx1dGlsaXR5PgogICAgI2luY2x1ZGU8dmVjdG9yPgogICAgI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiAgICB1c2luZyBuYW1lc3BhY2Ugc3RkOwoKICAgIGludCBnY2QoaW50IGEsaW50IGIpCiAgICB7CiAgICAgICAgaWYoYT09MCkKICAgICAgICAgICAgcmV0dXJuIGI7CiAgICAgICAgaWYoYj09MCkKICAgICAgICAgICAgcmV0dXJuIGE7CiAgICAgICAgaWYoYT09YikKICAgICAgICAgICAgcmV0dXJuIGE7CiAgICAgICAgaWYoYT5iKQogICAgICAgICAgICByZXR1cm4gZ2NkKGEtYixiKTsKICAgICAgICBlbHNlCiAgICAgICAgICAgIHJldHVybiBnY2QoYSxiLWEpOwogICAgfQoKICAgIGludCBtYWluKCkKICAgIHsKICAgICAgaW50IHQsbixtLGwscjsKICAgICAgY2luPj50OwogICAgICB3aGlsZSh0LS0pCiAgICAgIHsKICAgICAgICBjaW4+Pm4+Pm07CiAgICAgICAgdmVjdG9yPGxvbmcgaW50PmEobiksYihuKSxjKG4pOwogICAgICAgIGxvbmcgaW50IGNvdW50PTA7CiAgICAgICAgdmVjdG9yPHBhaXI8aW50LGludD4gPiB2OwogICAgICAgIGZvcihpbnQgaT0wO2k8bjtpKyspCiAgICAgICAgewogICAgICAgICAgICBjaW4+PmFbaV07CiAgICAgICAgICAgIGJbaV09YVtpXTsKICAgICAgICAgICAgY1tpXT1iW2ldOwogICAgICAgIH0KICAgICAgICBmb3IoaW50IGk9MDtpPG07aSsrKQogICAgICAgIHsKICAgICAgICAgIGludCB1LFY7CiAgICAgICAgICBjaW4+PnU+PlY7CiAgICAgICAgICBpZihWPnUpCiAgICAgICAgICB2LnB1c2hfYmFjayhtYWtlX3BhaXIoLS1WLC0tdSkpOwogICAgICAgICAgZWxzZQogICAgICAgICAgdi5wdXNoX2JhY2sobWFrZV9wYWlyKC0tdSwtLVYpKTsKICAgICAgICB9CiAgICAgICAgZm9yKGF1dG8gaXQ6dikKICAgICAgICB7CiAgICAgICAgICBpbnQgbD1pdC5maXJzdDtyPWl0LnNlY29uZDsKICAgICAgICAgIHJldmVyc2UoYi5iZWdpbigpICsgbCwgYi5iZWdpbigpICsgcik7CiAgICAgICAgICAvLyBmb3IoaW50IGo9bDtqPD0obCtyKS8yO2orKykKICAgICAgICAgIC8vIHsKICAgICAgICAgIC8vICAgc3dhcChiW2pdLGJbci1qXSk7CiAgICAgICAgICAvLyB9CiAgICAgICAgfQogICAgICAgIC8vIGZvcihpbnQgaT0wO2k8bjtpKyspCiAgICAgICAgLy8gICAgIGNvdXQ8PGFbaV08PCIgIjsKICAgICAgICBzb3J0KHYuYmVnaW4oKSx2LmVuZCgpKTsKICAgICAgICAvLyBmb3IoYXV0byBpdDp2KQogICAgICAgIC8vICAgY291dDw8aXQuZmlyc3Q8PCIgIjw8aXQuc2Vjb25kPDxlbmRsOwogICAgICAgIGRvewogICAgICAgICAgZm9yKGF1dG8gaXQ6dikKICAgICAgICAgIHsKICAgICAgICAgICAgaW50IGw9aXQuZmlyc3Q7cj1pdC5zZWNvbmQ7CiAgICAgICAgICAgIHJldmVyc2UoYS5iZWdpbigpICsgbCwgYS5iZWdpbigpICsgcik7CiAgICAgICAgICAgIC8vIGZvcihpbnQgaj1sO2o8PShsK3IpLzI7aisrKQogICAgICAgICAgICAvLyB7CiAgICAgICAgICAgIC8vICAgc3dhcChhW2pdLGFbci1qXSk7CiAgICAgICAgICAgIC8vIH0KICAgICAgICAgIH0KICAgICAgICAvLyAgIGZvcihpbnQgaT0wO2k8bjtpKyspCiAgICAgICAgLy8gICAgICAgY291dDw8YVtpXTw8IiAiOwogICAgICAgIC8vICAgICBjb3V0PDxlbmRsOwogICAgICAgICAgZm9yKGludCBpPTA7aTxuO2krKykKICAgICAgICAgIHsKICAgICAgICAgICAgaWYoYVtpXSE9YltpXSkKICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGlmKGk9PW4tMSkKICAgICAgICAgICAgICAgY291bnQrKzsKICAgICAgICAgIH0KICAgICAgICAgIGZvcihpbnQgaT0wO2k8bjtpKyspCiAgICAgICAgICAgIGFbaV09Y1tpXTsKICAgICAgICB9d2hpbGUobmV4dF9wZXJtdXRhdGlvbih2LmJlZ2luKCksdi5lbmQoKSkpOwogICAgICAgIGludCBmPTE7CiAgICAgICAgZm9yKGludCBpPTE7aTw9bTtpKyspCiAgICAgICAgICAgIGY9ZippOwogICAgICAgIC8vY291dDw8Y291bnQ8PGVuZGw7CgogICAgICAgIGNvdXQ8PGNvdW50L2djZChjb3VudCxmKTw8Ii8iPDxmL2djZChjb3VudCxmKTw8ZW5kbDsKICAgICAgfQogICAgICByZXR1cm4gMDsKICAgIH0K