Polycarp plays a well-known computer game (we won't mention its name). In this game, he can craft tools of two types — shovels and swords. To craft a shovel, Polycarp spends two sticks and one diamond; to craft a sword, Polycarp spends two diamonds and one stick.

Each tool can be sold for exactly one emerald. How many emeralds can Polycarp earn, if he has a sticks and b diamonds?

Input

The first line contains one integer t (1 ≤ t ≤ 1000) — the number of test cases.

The only line of each test case contains two integers a and b (0 ≤ a, b ≤ 10^9) — the number of sticks and the number of diamonds, respectively.

Output

For each test case print one integer — the maximum number of emeralds Polycarp can earn.

Example

Input


4
4 4
1000000000 0
7 15
8 7


Output


2
0
7
5

Note

In the first test case Polycarp can earn two emeralds as follows: craft one sword and one shovel.

In the second test case Polycarp does not have any diamonds, so he cannot craft anything.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.*;

public class Main {

    private static int testCase(int sticks, int diamonds) {
        if (sticks > diamonds) {
            if (diamonds * 2 <= sticks) {
                return diamonds;
            } else {
                return calculateIfEqual(2 * diamonds - sticks) + (sticks - diamonds);
            }
        } else if (diamonds > sticks) {
            if (sticks * 2 <= diamonds) {
                return sticks;
            } else {
                return calculateIfEqual(2 * sticks - diamonds) + (diamonds - sticks);
            }
        } else {
            return calculateIfEqual(sticks);
        }
    }

    private static int calculateIfEqual(int sticksAndDiamonds) {
        return 2 * (sticksAndDiamonds / 3) + (sticksAndDiamonds % 3 == 2 ? 1 : 0);
    }

    public static void main(String[] args) {
        Scanner in = new Scanner(new BufferedReader(new InputStreamReader(System.in)));
        int t = in.nextInt();  // Scanner has functions to read ints, longs, strings, chars, etc.
        in.nextLine();
        for (int i = 1; i <= t; ++i) {
            int a = in.nextInt(), b = in.nextInt();

            System.out.println(testCase(a, b));
        }
    }
}