description: Some number of people (this number is even) have stood in a circle. The people stand in the circle evenly. They are numbered clockwise starting from a person with the number 1. Each person is looking through the circle's center at the opposite person.
  
  <image> A sample of a circle of 6 persons. The orange arrows indicate who is looking at whom.
  
  You don't know the exact number of people standing in the circle (but this number is even, no doubt). It is known that the person with the number a is looking at the person with the number b (and vice versa, of course). What is the number associated with a person being looked at by the person with the number c? If, for the specified a, b, and c, no such circle exists, output -1.
  
  Input
  
  The first line contains one integer t (1 ≤ t ≤ 10^4) — the number of test cases. Then t test cases follow.
  
  Each test case consists of one line containing three distinct integers a, b, c (1 ≤ a,b,c ≤ 10^8).
  
  Output
  
  For each test case output in a separate line a single integer d — the number of the person being looked at by the person with the number c in a circle such that the person with the number a is looking at the person with the number b. If there are multiple solutions, print any of them. Output -1 if there's no circle meeting the given conditions.
  
  Example
  
  Input
  
  
  7
  6 2 4
  2 3 1
  2 4 10
  5 3 4
  1 3 2
  2 5 4
  4 3 2
  
  
  Output
  
  
  8
  -1
  -1
  -1
  4
  1
  -1
  
  Note
  
  In the first test case, there's a desired circle of 8 people. The person with the number 6 will look at the person with the number 2 and the person with the number 8 will look at the person with the number 4.
  
  In the second test case, there's no circle meeting the conditions. If the person with the number 2 is looking at the person with the number 3, the circle consists of 2 people because these persons are neighbors. But, in this case, they must have the numbers 1 and 2, but it doesn't meet the problem's conditions.
  
  In the third test case, the only circle with the persons with the numbers 2 and 4 looking at each other consists of 4 people. Therefore, the person with the number 10 doesn't occur in the circle.
solution:     import java.io.*;
      import java.util.*;
      import java.math.*;
      import java.lang.*;
       
  
  
  
       //@Manan Parmar
      public class Solution2 implements Runnable {
          public void run() {
              
          InputReader sc = new InputReader(System.in);
          PrintWriter out = new PrintWriter(System.out);
          
          
          //code
          int t1=sc.nextInt();
          while(t1--!=0)
          {
              int a=sc.nextInt(),b=sc.nextInt(),c=sc.nextInt();
              int x1=Math.min(a,b)-1;
              int x=Math.abs(a-b)-1;
              int y=x-x1;
              //out.println(Math.max(a,b)+y);
              if(x1>x)
                  out.println("-1");
              else if((Math.abs(a-b)==1)||((Math.max(a,b)+y)<c))
                  out.println("-1");
              else
              {
                  //out.println(x);
                  if((c+x+1)>Math.max(a,b)+y)
                      out.println((c+x+1)%(Math.max(a,b)+y));
                  else
                      out.println(c+x+1);
              }
          }
  
          out.close();
          }
      
      class pairComparator implements Comparator<Pair>
          {
              public int compare(Pair p1,Pair p2)
              {
                  return p1.a-p2.a;
              }
          }
              class Pair{
              int id;
              int a;
  
              public Pair(int id,int a)
              {
                  this.id=id;
                  this.a=a;
              }   
          }
        
       
  
      //========================================================================
          int gcd(int a, int b)
          {
            if (b == 0)
              return a;
            return gcd(b, a % b);
          }
          boolean isPrime(int n) 
          { 
              // Corner case 
              if (n <= 1) 
                  return false; 
        
              // Check from 2 to n-1 
              for (int i = 2; i < n; i++) 
                  if (n % i == 0) 
                      return false; 
        
              return true; 
          } 
          int lcm(int number1, int number2) {
              if (number1 == 0 || number2 == 0) {
                  return 0;
              }
              int absNumber1 = Math.abs(number1);
              int absNumber2 = Math.abs(number2);
              int absHigherNumber = Math.max(absNumber1, absNumber2);
              int absLowerNumber = Math.min(absNumber1, absNumber2);
              int lcm = absHigherNumber;
              while (lcm % absLowerNumber != 0) {
                  lcm += absHigherNumber;
              }
              return lcm;
          }
          void quickSort(int a[],int l,int r)
          {
              if(l<r)
              {
                  int pindex=partition(a,l,r);
                  quickSort(a,l,pindex-1);
                  quickSort(a,pindex+1,r);
              }
  
          }
          int partition(int a[],int l,int r)
          {
              int pivot = a[r],pindex=l;
              for(int i=l;i<r;i++)
              {
                  if(a[i]<pivot)
                  {
                      int temp=a[i];
                      a[i]=a[pindex];
                      a[pindex]=temp;
                      pindex++;
                  }
              }
              int temp1=a[r];
              a[r]=a[pindex];
              a[pindex]=temp1;
              return pindex;
          }
          int binarySearch(int arr[], int x) 
          { 
              int l = 0, r = arr.length - 1; 
              while (l <= r) { 
                  int m = l + (r - l) / 2; 
        
                  // Check if x is present at mid 
                  if (arr[m] >= x)
                      if(m!=0&&arr[m-1]<x) 
                          return m;
                      else if(m==0)
                          return m; 
        
                  // If x greater, ignore left half 
                  if (arr[m] < x) 
                      l = m + 1; 
        
                  // If x is smaller, ignore right half 
                  else
                      r = m - 1; 
              } 
        
              // if we reach here, then element was 
              // not present 
              return -1; 
          } 
          boolean check(char a,char b)
          {
              if(a==b)
                  return true;
              else
                  return false;
          }
          long binarySearch(long arr[], long x) 
          { 
              int l = 0, r = arr.length - 1,q=0; 
              while (l<=r) { 
                  int m = l + (r - l) / 2; 
                  if (arr[l] >=x) 
                  {
                      q=1;
                      return l; 
                  }
                  if (arr[m] < x) 
                      l=m+1; 
                  else
                      r=m;
              } 
              return -1;
          }
  
          static class InputReader {
              private InputStream stream;
              private byte[] buf = new byte[1024];
              private int curChar;
              private int numChars;
              private SpaceCharFilter filter;
              private BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
       
              public InputReader(InputStream stream) {
                  this.stream = stream;
              }
             
              public int read() {
                  if (numChars==-1)
                      throw new InputMismatchException();
                 
                  if (curChar >= numChars) {
                      curChar = 0;
                      try {
                          numChars = stream.read(buf);
                      }
                      catch (IOException e) {
                          throw new InputMismatchException();
                      }
                     
                      if(numChars <= 0)              
                          return -1;
                  }
                  return buf[curChar++];
              }
           
              public String nextLine() {
                  String str = "";
                  try {
                      str = br.readLine();
                  }
                  catch (IOException e) {
                      e.printStackTrace();
                  }
                  return str;
              }
              public int nextInt() {
                  int c = read();
                 
                  while(isSpaceChar(c))
                      c = read();
                 
                  int sgn = 1;
                 
                  if (c == '-') {
                      sgn = -1;
                      c = read();
                  }
                 
                  int res = 0;
                  do {
                      if(c<'0'||c>'9')
                          throw new InputMismatchException();
                      res *= 10;
                      res += c - '0';
                      c = read();
                  }
                  while (!isSpaceChar(c));
                 
                  return res * sgn;
              }
             
              public long nextLong() {
                  int c = read();
                  while (isSpaceChar(c))
                      c = read();
                  int sgn = 1;
                  if (c == '-') {
                      sgn = -1;
                      c = read();
                  }
                  long res = 0;
                 
                  do {
                      if (c < '0' || c > '9')
                          throw new InputMismatchException();
                      res *= 10;
                      res += c - '0';
                      c = read();
                  }
                  while (!isSpaceChar(c));
                      return res * sgn;
              }
             
              public double nextDouble() {
                  int c = read();
                  while (isSpaceChar(c))
                      c = read();
                  int sgn = 1;
                  if (c == '-') {
                      sgn = -1;
                      c = read();
                  }
                  double res = 0;
                  while (!isSpaceChar(c) && c != '.') {
                      if (c == 'e' || c == 'E')
                          return res * Math.pow(10, nextInt());
                      if (c < '0' || c > '9')
                          throw new InputMismatchException();
                      res *= 10;
                      res += c - '0';
                      c = read();
                  }
                  if (c == '.') {
                      c = read();
                      double m = 1;
                      while (!isSpaceChar(c)) {
                          if (c == 'e' || c == 'E')
                              return res * Math.pow(10, nextInt());
                          if (c < '0' || c > '9')
                              throw new InputMismatchException();
                          m /= 10;
                          res += (c - '0') * m;
                          c = read();
                      }
                  }
                  return res * sgn;
              }
             
              public String readString() {
                  int c = read();
                  while (isSpaceChar(c))
                      c = read();
                  StringBuilder res = new StringBuilder();
                  do {
                      res.appendCodePoint(c);
                      c = read();
                  }
                  while (!isSpaceChar(c));
                 
                  return res.toString();
              }
           
              public boolean isSpaceChar(int c) {
                  if (filter != null)
                      return filter.isSpaceChar(c);
                  return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
              }
           
              public String next() {
                  return readString();
              }
             
              public interface SpaceCharFilter {
                  public boolean isSpaceChar(int ch);
              }
          }
  
          public static void main(String args[]) throws Exception {
              new Thread(null, new Solution2(),"Main",1<<27).start();
          }
      }
  