#include <bits/stdc++.h>
using namespace std;
int INF = 0x3f3f3f3f;
int main() {
  int tt;
  scanf("%d", &tt);
  for (int jj = 0; jj < tt; jj++) {
    int n;
    scanf("%d", &n);
    int x, y, d;
    scanf("%d%d%d", &x, &y, &d);
    if (abs(y - x) % d == 0) {
      printf("%d\n", abs(y - x) / d);
    } else {
      if ((y - 1) % d && (n - y) % d) {
        printf("-1\n");
      } else {
        int num1 = INF;
        int num2 = INF;
        if ((y - 1) % d == 0) {
          num1 = (y - 1) / d + (x - 1) / d;
          if ((x - 1) % d) {
            num1++;
          }
        }
        if ((n - y) % d == 0) {
          num2 = (n - y) / d + (n - x) / d;
          if ((n - x) % d) {
            num2++;
          }
        }
        num1 = min(num1, num2);
        printf("%d\n", num1);
      }
    }
  }
}
