#include <iostream>
#include <numeric>
#include <iomanip>
#include <cmath>
#include <climits>
#include <vector>
#include <algorithm>
using namespace std;
const int MOD = (int)(1e9 + 7);
bool isPrime(long long n) {
for (long long i = 2;i * i <= n;i++) {
if (n % i == 0) {
return false;
}
}
return n >= 2;
}
int main() {
int t;cin >> t;
for (int q = 1;q <= t;q++) {
int n;cin >> n;
vector<int> v;
for (int i = 0;i < n;i++) {
int value;cin >> value;
v.push_back(value);
}
int current_length = 1, max_length = 1;
int sub[1000];
int numberOfSubArray = 1;
sub[0] = 0;
for (int i = 1;i < n;i++) {
if (v[i] > v[i - 1]) {
current_length++;
}
else {
current_length = 1;
}
if (current_length > max_length) {
max_length = current_length;
numberOfSubArray = 1;
sub[0] = i - max_length + 1;
}
else if (current_length == max_length) {
sub[numberOfSubArray] = i - max_length + 1;
numberOfSubArray++;
}
}
cout << "Test #" << q << " : " << endl;
cout << max_length << endl;
for (int i = 0;i < numberOfSubArray;i++) {
// In ra dãy con có max_length phần tử bắt đầu từ vị trí sub[i]
for (int j = 0;j < max_length;j++) {
cout << v[sub[i] + j] << " ";
}
cout << endl;
}
}
return 0;
}