#include <iostream>
#include <vector>
#include <algorithm>
#include <limits>
#include <iomanip>
int main() {
int n;
std::cin >> n;
std::vector<double> maxProbabilities(n);
std::vector<double> minProbabilities(n);
for (int i = 0; i < n; i++) {
int m;
std::cin >> m;
std::vector<double> probabilities(m);
for (int j = 0; j < m; j++) {
std::cin >> probabilities[j];
}
// 计算最大概率
double maxProbability = *std::max_element(probabilities.begin(), probabilities.end());
maxProbabilities[i] = maxProbability; // 使用索引赋值
// std::cout <<"maxProbabilities[i]"<<maxProbabilities[i];
// 计算最小概率
double minProbability = 1.0;
for (int j = 0; j < m; j++) {
minProbability *= (1.0 - prob