#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int a[100006];

int main(){
	int t;
	int n, m;
	cin >> t;
	while(t--){
		bool flag = false;
		int x=0;
		cin>>n>>m;
		for(int i=0;i<n;i++){
			cin>>a[i];
		}
		for(int i=n-1;i>=0;i--){
			if(!flag&&a[i]!=i+1){
				flag=true;
				x=i+1;
				break;
			}
		}
		int xxx;
		double yyy;
		double ans=1;
		for(int i=0;i<m;i++){
			cin >> xxx >> yyy;
			if(xxx>=x){
				ans *= 1 - yyy;
			}
		} 
		if(x==0){
			printf("1.000000\n");
			continue;
		}
		printf("%.6lf\n",1-ans);
	}
 
	
	return 0;
}