#include <bits/stdc++.h>
using namespace std;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  int T = 0;
  cin >> T;
  while (T--) {
    int n = 0;
    cin >> n;
    long int pos_max = INT_MIN;
    long int pos_min = INT_MAX;
    long int arr[n];
    for (int i = 0; i < n; i++) {
      cin >> arr[i];
    }
    for (int i = 0; i < n; i++) {
      if (arr[i] == -1) {
        if (i - 1 >= 0 && arr[i - 1] != -1) {
          pos_min = min(pos_min, arr[i - 1]);
          pos_max = max(pos_max, arr[i - 1]);
        }
        if (i + 1 < n && arr[i + 1] != -1) {
          pos_min = min(pos_min, arr[i + 1]);
          pos_max = max(pos_max, arr[i + 1]);
        }
      }
    }
    long int K = (pos_min + pos_max) / 2;
    long int max_diff = 0;
    for (int i = 0; i < n; i++) {
      if (arr[i] == -1) {
        arr[i] = K;
      }
    }
    for (int i = 0; i < n - 1; i++) {
      max_diff = max(max_diff, abs(arr[i] - arr[i + 1]));
    }
    cout << max_diff << " " << K << "\n";
  }
  return 0;
}
