시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 (하단 참고)512 MB42201343.333%

문제

Albert는 등산을 즐겨한다.

Albert의 집 근처에는 동쪽과 서쪽에 각각 큰 산이 있고, 다양한 길이의 등산로가 마련되어있다.

동쪽 산에는 n개의 등산로가 있고 (편의상 이들의 길이를 A[1], ..., A[n]이라 하자) 서쪽 산에는 m개의 등산로가 있다 (편의상 이들의 길이를 B[1], ..., B[m]이라 하자).

동쪽 산의 n개의 등산로는 모두 같은 곳 (동쪽 산 출입구) 에서 시작하여 같은 곳에서 끝나고, 마찬가지로 서쪽 산의 m개의 등산로도 모두 같은 곳 (서쪽 산 출입구)에서 시작하여 같은 곳에서 끝난다.

동쪽 산과 서쪽 산의 입구는 길이가 x인 별도의 "동서 다리"를 통해 연결되어있다. 아래 그림에서 동쪽 산의 출입구는 정사각형으로, 서쪽 산의 출입구는 원으로 표시되어있고 두 출입구를 잇는 동서 다리의 길이는 x = 10 이다. 동쪽 산의 두 등산로의 길이는 각각 40과 45이고 서쪽 산의 두 등산로의 길이는 42로 동일하다.

Albert는 아래와 같은 규칙에 따라 총 길이가 C이상 D이하가 되도록 등산 계획을 세우고 싶다: (등산 계획은 어떤 등산로를 어떤 순서로 이용하는지 나타낸다)

  1. 같은 등산로는 최대 한 번만 이용한다.
  2. 같은 산의 등산로는 연속으로 이용하지 않는다 (즉, 동쪽 산과 서쪽 산의 등산로를 번갈아 이용한다).
  3. 어떤 산에서 다른 산으로 이동할 때에는 반드시 길이가 x인 동서 다리를 이용하며, 다른 길은 없다 (동서 다리는 여러 번 이용해도 된다).
  4. 동서 다리는 등산 계획의 맨 처음이나 맨 끝에 올 수 없고, 동서 다리는 연속으로 이용할 수 없다. 따라서 동서 다리를 이용할 경우 반드시 전/후에 동쪽 산 혹은 서쪽 산의 등산로를 이용해야 한다.

예를 들어, 위의 그림의 경우 n = m = 2, x = 10, A = [40, 45] 그리고 B = [42, 42] 이다. 이 때, C = 1, D = 100 이라 하자. 상기한 모든 규칙을 만족하며 길이가 1이상 100이하인 등산 계획은 총 12가지 있다:

  • 총 길이가 40이상 45이하인 등산 계획은 4가지 존재한다 (네개의 등산로 중 하나를 이용하면 된다).
  • 총 길이가 92이상 97이하인 등산 계획은 8가지 존재한다 (각 산에서 등산로 하나씩을 택한 후, 등산할 순서를 정하면 된다).

입력으로 n, m, x, C, D, 그리고 A, B가 주어졌을 때, Albert를 도와 총 몇가지 방법으로 등산 계획을 세울 수 있는지 구해보자.

입력

입력 첫 줄에 테스트 케이스의 수 T가 주어진다.

각 테스트 케이스는 세줄에 걸쳐 주어진다.

첫 줄에는 n, m, x, C, D가 공백으로 구분되어 주어진다.

둘째 줄에는 동쪽 하이킹 코스 길이를 나타내는 n개의 정수가 공백으로 구분되어 주어진다.

셋째 줄에는 서쪽 하이킹 코스 길이를 나타내는 m개의 정수가 공백으로 구분되어 주어진다.

출력

각 테스트 케이스의 정답을 각 줄에 출력한다. 단, 정답이 매우 클 수 있으므로 109+7로 나눈 나머지를 출력한다.

제한

  • 1 ≤ T ≤ 5
  • 1 ≤ n, m ≤ 18
  • 1 ≤ x ≤ 108
  • ​1 ​≤ C ≤ D ≤ 109
  • 1 ​​≤ 각 등산로의 길이 ≤ 108

예제 입력 1

3
3 5 100 245 245
10 20 30
1 2 3 4 5
5 5 1 39 39
1 2 3 4 5
5 4 3 2 1
5 5 1 1 3
1 1 1 1 1
1 1 1 1 1

예제 출력 1

2
28800
60

예제 1: 위 규칙을 만족하며 길이가 245인 등산 계획은 두 가지가 있다:

  • 방법 1: (등산로 A1) - (다리) - (등산로 B5) - (다리) - (등산로 A3)
  • 방법 2: (등산로 A3) - (다리) - (등산로 B5) - (다리) - (등산로 A1)

예제 2: 모든 10개의 등산로를 한 번씩 다 이용하면 (따라서 다리를 9번 지나면) 총 길이가 39가 된다.
위 규칙을 따르면서 10개의 등산로를 한 번씩 이용하는 방법은 총 28800가지가 있다.

예제 3: 

  • 총 길이가 1인 등산 계획은 10가지 존재한다 (아무 등산로 하나를 고르면 된다).
  • 총 길이가 2인 등산 계획은 0가지 존재한다.
  • 총 길이가 3인 등산 계획은 50가지 존재한다 (동쪽 산과 서쪽 산의 등산로 하나씩을 고르면 된다).

따라서 답은 60이다.

예제 입력 2

3
2 2 10 1 100
45 40
42 42
16 16 10 100 100
10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10
10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10
18 18 100000000 900000000 900000000
100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000
100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000 100000000

예제 출력 2

12
0
2996352

예제 1: 본문에서 다루었다.

예제 2-3: 추가 설명 없음.

W3sicHJvYmxlbV9pZCI6IjIzMDIxIiwicHJvYmxlbV9sYW5nIjoiMCIsInRpdGxlIjoiXHViNGYxXHVjMGIwXHViODVjIiwiZGVzY3JpcHRpb24iOiI8cD5BbGJlcnRcdWIyOTQgXHViNGYxXHVjMGIwXHVjNzQ0IFx1Yzk5MFx1YWNhOFx1ZDU1Y1x1YjJlNC48XC9wPlxyXG5cclxuPHA+QWxiZXJ0XHVjNzU4IFx1YzlkMSBcdWFkZmNcdWNjOThcdWM1ZDBcdWIyOTQgXHViM2Q5XHVjYWJkXHVhY2ZjIFx1YzExY1x1Y2FiZFx1YzVkMCBcdWFjMDFcdWFjMDEgXHVkMDcwIFx1YzBiMFx1Yzc3NCBcdWM3ODhcdWFjZTAsIFx1YjJlNFx1YzU5MVx1ZDU1YyBcdWFlMzhcdWM3NzRcdWM3NTggXHViNGYxXHVjMGIwXHViODVjXHVhYzAwJm5ic3A7XHViOWM4XHViODI4XHViNDE4XHVjNWI0XHVjNzg4XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWIzZDlcdWNhYmQgXHVjMGIwXHVjNWQwXHViMjk0IG5cdWFjMWNcdWM3NTggXHViNGYxXHVjMGIwXHViODVjXHVhYzAwIFx1Yzc4OFx1YWNlMCAoXHVkM2I4XHVjNzU4XHVjMGMxIFx1Yzc3NFx1YjRlNFx1Yzc1OCBcdWFlMzhcdWM3NzRcdWI5N2MgQVsxXSwgLi4uLCBBW25dXHVjNzc0XHViNzdjIFx1ZDU1OFx1Yzc5MCkgXHVjMTFjXHVjYWJkIFx1YzBiMFx1YzVkMFx1YjI5NCBtXHVhYzFjXHVjNzU4IFx1YjRmMVx1YzBiMFx1Yjg1Y1x1YWMwMCBcdWM3ODhcdWIyZTQgKFx1ZDNiOFx1Yzc1OFx1YzBjMSBcdWM3NzRcdWI0ZTRcdWM3NTggXHVhZTM4XHVjNzc0XHViOTdjIEJbMV0sIC4uLiwgQlttXVx1Yzc3NFx1Yjc3YyBcdWQ1NThcdWM3OTApLjxcL3A+XHJcblxyXG48cD5cdWIzZDlcdWNhYmQgXHVjMGIwXHVjNzU4IG5cdWFjMWNcdWM3NTggXHViNGYxXHVjMGIwXHViODVjXHViMjk0IFx1YmFhOFx1YjQ1MCBcdWFjMTlcdWM3NDAgXHVhY2YzIChcdWIzZDlcdWNhYmQgXHVjMGIwIFx1Y2Q5Y1x1Yzc4NVx1YWQ2YykgXHVjNWQwXHVjMTFjIFx1YzJkY1x1Yzc5MVx1ZDU1OFx1YzVlYyBcdWFjMTlcdWM3NDAgXHVhY2YzXHVjNWQwXHVjMTFjIFx1YjA1ZFx1YjA5OFx1YWNlMCwmbmJzcDtcdWI5YzhcdWNjMmNcdWFjMDBcdWM5YzBcdWI4NWMgXHVjMTFjXHVjYWJkIFx1YzBiMFx1Yzc1OCBtXHVhYzFjXHVjNzU4IFx1YjRmMVx1YzBiMFx1Yjg1Y1x1YjNjNCZuYnNwO1x1YmFhOFx1YjQ1MCBcdWFjMTlcdWM3NDAgXHVhY2YzIChcdWMxMWNcdWNhYmQgXHVjMGIwIFx1Y2Q5Y1x1Yzc4NVx1YWQ2YylcdWM1ZDBcdWMxMWMgXHVjMmRjXHVjNzkxXHVkNTU4XHVjNWVjIFx1YWMxOVx1Yzc0MCBcdWFjZjNcdWM1ZDBcdWMxMWMgXHViMDVkXHViMDljXHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWIzZDlcdWNhYmQgXHVjMGIwXHVhY2ZjIFx1YzExY1x1Y2FiZCBcdWMwYjBcdWM3NTggXHVjNzg1XHVhZDZjXHViMjk0IFx1YWUzOFx1Yzc3NFx1YWMwMCB4XHVjNzc4IFx1YmNjNFx1YjNjNFx1Yzc1OCAmcXVvdDtcdWIzZDlcdWMxMWMmbmJzcDtcdWIyZTRcdWI5YWMmcXVvdDtcdWI5N2MgXHVkMWI1XHVkNTc0IFx1YzVmMFx1YWNiMFx1YjQxOFx1YzViNFx1Yzc4OFx1YjJlNC4gXHVjNTQ0XHViNzk4IFx1YWRmOFx1YjliY1x1YzVkMFx1YzExYyBcdWIzZDlcdWNhYmQgXHVjMGIwXHVjNzU4IFx1Y2Q5Y1x1Yzc4NVx1YWQ2Y1x1YjI5NCBcdWM4MTVcdWMwYWNcdWFjMDFcdWQ2MTVcdWM3M2NcdWI4NWMsIFx1YzExY1x1Y2FiZCBcdWMwYjBcdWM3NTggXHVjZDljXHVjNzg1XHVhZDZjXHViMjk0IFx1YzZkMFx1YzczY1x1Yjg1YyBcdWQ0NWNcdWMyZGNcdWI0MThcdWM1YjRcdWM3ODhcdWFjZTAgXHViNDUwIFx1Y2Q5Y1x1Yzc4NVx1YWQ2Y1x1Yjk3YyBcdWM3ODdcdWIyOTQgXHViM2Q5XHVjMTFjIFx1YjJlNFx1YjlhY1x1Yzc1OCBcdWFlMzhcdWM3NzRcdWIyOTQgeCA9IDEwIFx1Yzc3NFx1YjJlNC4gXHViM2Q5XHVjYWJkIFx1YzBiMFx1Yzc1OCZuYnNwO1x1YjQ1MCBcdWI0ZjFcdWMwYjBcdWI4NWNcdWM3NTggXHVhZTM4XHVjNzc0XHViMjk0IFx1YWMwMVx1YWMwMSA0MFx1YWNmYyA0NVx1Yzc3NFx1YWNlMCBcdWMxMWNcdWNhYmQgXHVjMGIwXHVjNzU4IFx1YjQ1MCBcdWI0ZjFcdWMwYjBcdWI4NWNcdWM3NTggXHVhZTM4XHVjNzc0XHViMjk0IDQyXHViODVjIFx1YjNkOVx1Yzc3Y1x1ZDU1OFx1YjJlNC48XC9wPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+PGltZyBhbHQ9XCJcIiBzcmM9XCJodHRwczpcL1wvdXBsb2FkLmFjbWljcGMubmV0XC8wNDJjYTU4Mi0xYzlmLTRjYjctYTQyZC03YzRmYzU1MGU2NzBcLy1cL3ByZXZpZXdcL1wiIFwvPjxcL3A+XHJcblxyXG48cD5BbGJlcnRcdWIyOTQgXHVjNTQ0XHViNzk4XHVjNjQwIFx1YWMxOVx1Yzc0MCBcdWFkZGNcdWNlNTlcdWM1ZDAgXHViNTMwXHViNzdjIFx1Y2QxZCBcdWFlMzhcdWM3NzRcdWFjMDAgQ1x1Yzc3NFx1YzBjMSBEXHVjNzc0XHVkNTU4XHVhYzAwIFx1YjQxOFx1YjNjNFx1Yjg1ZCBcdWI0ZjFcdWMwYjAgXHVhY2M0XHVkNjhkXHVjNzQ0IFx1YzEzOFx1YzZiMFx1YWNlMCBcdWMyZjZcdWIyZTQ6IChcdWI0ZjFcdWMwYjAgXHVhY2M0XHVkNjhkXHVjNzQwIFx1YzViNFx1YjVhNCBcdWI0ZjFcdWMwYjBcdWI4NWNcdWI5N2MgXHVjNWI0XHViNWE0IFx1YzIxY1x1YzExY1x1Yjg1YyBcdWM3NzRcdWM2YTlcdWQ1NThcdWIyOTRcdWM5YzAgXHViMDk4XHVkMGMwXHViMGI4XHViMmU0KTxcL3A+XHJcblxyXG48b2w+XHJcblx0PGxpPlx1YWMxOVx1Yzc0MCBcdWI0ZjFcdWMwYjBcdWI4NWNcdWIyOTQgXHVjZDVjXHViMzAwIFx1ZDU1YyBcdWJjODhcdWI5Y2MgXHVjNzc0XHVjNmE5XHVkNTVjXHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWFjMTlcdWM3NDAgXHVjMGIwXHVjNzU4IFx1YjRmMVx1YzBiMFx1Yjg1Y1x1YjI5NCBcdWM1ZjBcdWMxOGRcdWM3M2NcdWI4NWMgXHVjNzc0XHVjNmE5XHVkNTU4XHVjOWMwIFx1YzU0YVx1YjI5NFx1YjJlNCAoXHVjOTg5LCBcdWIzZDlcdWNhYmQgXHVjMGIwXHVhY2ZjIFx1YzExY1x1Y2FiZCBcdWMwYjBcdWM3NTggXHViNGYxXHVjMGIwXHViODVjXHViOTdjIFx1YmM4OFx1YWMwOFx1YzU0NCBcdWM3NzRcdWM2YTlcdWQ1NWNcdWIyZTQpLjxcL2xpPlxyXG5cdDxsaT5cdWM1YjRcdWI1YTQgXHVjMGIwXHVjNWQwXHVjMTFjIFx1YjJlNFx1Yjk3OCBcdWMwYjBcdWM3M2NcdWI4NWMgXHVjNzc0XHViM2Q5XHVkNTYwIFx1YjU0Y1x1YzVkMFx1YjI5NCBcdWJjMThcdWI0ZGNcdWMyZGMgXHVhZTM4XHVjNzc0XHVhYzAwIHhcdWM3NzggXHViM2Q5XHVjMTFjJm5ic3A7XHViMmU0XHViOWFjXHViOTdjIFx1Yzc3NFx1YzZhOVx1ZDU1OFx1YmE3MCwgXHViMmU0XHViOTc4IFx1YWUzOFx1Yzc0MCBcdWM1YzZcdWIyZTQmbmJzcDsoXHViM2Q5XHVjMTFjJm5ic3A7XHViMmU0XHViOWFjXHViMjk0IFx1YzVlY1x1YjdlYyBcdWJjODggXHVjNzc0XHVjNmE5XHVkNTc0XHViM2M0IFx1YjQxY1x1YjJlNCkuPFwvbGk+XHJcblx0PGxpPlx1YjNkOVx1YzExYyBcdWIyZTRcdWI5YWNcdWIyOTQgXHViNGYxXHVjMGIwIFx1YWNjNFx1ZDY4ZFx1Yzc1OCBcdWI5ZTggXHVjYzk4XHVjNzRjXHVjNzc0XHViMDk4IFx1YjllOCZuYnNwO1x1YjA1ZFx1YzVkMCBcdWM2MmMgXHVjMjE4IFx1YzVjNlx1YWNlMCwgXHViM2Q5XHVjMTFjIFx1YjJlNFx1YjlhY1x1YjI5NCBcdWM1ZjBcdWMxOGRcdWM3M2NcdWI4NWMgXHVjNzc0XHVjNmE5XHVkNTYwIFx1YzIxOCBcdWM1YzZcdWIyZTQuIFx1YjUzMFx1Yjc3Y1x1YzExYyBcdWIzZDlcdWMxMWMgXHViMmU0XHViOWFjXHViOTdjIFx1Yzc3NFx1YzZhOVx1ZDU2MCBcdWFjYmRcdWM2YjAmbmJzcDtcdWJjMThcdWI0ZGNcdWMyZGMgXHVjODA0XC9cdWQ2YzRcdWM1ZDAgXHViM2Q5XHVjYWJkIFx1YzBiMCBcdWQ2MzlcdWM3NDAgXHVjMTFjXHVjYWJkIFx1YzBiMFx1Yzc1OCBcdWI0ZjFcdWMwYjBcdWI4NWNcdWI5N2MgXHVjNzc0XHVjNmE5XHVkNTc0XHVjNTdjIFx1ZDU1Y1x1YjJlNC48XC9saT5cclxuPFwvb2w+XHJcblxyXG48cD5cdWM2MDhcdWI5N2MgXHViNGU0XHVjNWI0LCBcdWM3MDRcdWM3NTggXHVhZGY4XHViOWJjXHVjNzU4IFx1YWNiZFx1YzZiMCBuID0gbSA9IDIsIHggPSAxMCwgQSA9IFs0MCwgNDVdIFx1YWRmOFx1YjlhY1x1YWNlMCBCID0gWzQyLCA0Ml0gXHVjNzc0XHViMmU0LiBcdWM3NzQgXHViNTRjLCBDID0gMSwgRCA9IDEwMCBcdWM3NzRcdWI3N2MgXHVkNTU4XHVjNzkwLiBcdWMwYzFcdWFlMzBcdWQ1NWMgXHViYWE4XHViNGUwIFx1YWRkY1x1Y2U1OVx1Yzc0NCBcdWI5Y2NcdWM4NzFcdWQ1NThcdWJhNzAgXHVhZTM4XHVjNzc0XHVhYzAwIDFcdWM3NzRcdWMwYzEgMTAwXHVjNzc0XHVkNTU4XHVjNzc4IFx1YjRmMVx1YzBiMCBcdWFjYzRcdWQ2OGRcdWM3NDAgXHVjZDFkIDEyXHVhYzAwXHVjOWMwIFx1Yzc4OFx1YjJlNDo8XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5cdWNkMWQgXHVhZTM4XHVjNzc0XHVhYzAwIDQwXHVjNzc0XHVjMGMxIDQ1XHVjNzc0XHVkNTU4XHVjNzc4IFx1YjRmMVx1YzBiMCBcdWFjYzRcdWQ2OGRcdWM3NDAgNFx1YWMwMFx1YzljMCBcdWM4NzRcdWM3YWNcdWQ1NWNcdWIyZTQgKFx1YjEyNFx1YWMxY1x1Yzc1OCBcdWI0ZjFcdWMwYjBcdWI4NWMgXHVjOTExIFx1ZDU1OFx1YjA5OFx1Yjk3YyBcdWM3NzRcdWM2YTlcdWQ1NThcdWJhNzQgXHViNDFjXHViMmU0KS48XC9saT5cclxuXHQ8bGk+XHVjZDFkIFx1YWUzOFx1Yzc3NFx1YWMwMCA5Mlx1Yzc3NFx1YzBjMSA5N1x1Yzc3NFx1ZDU1OFx1Yzc3OCZuYnNwO1x1YjRmMVx1YzBiMCBcdWFjYzRcdWQ2OGRcdWM3NDAgOFx1YWMwMFx1YzljMCBcdWM4NzRcdWM3YWNcdWQ1NWNcdWIyZTQgKFx1YWMwMSBcdWMwYjBcdWM1ZDBcdWMxMWMgXHViNGYxXHVjMGIwXHViODVjIFx1ZDU1OFx1YjA5OFx1YzUyOVx1Yzc0NCBcdWQwZGRcdWQ1NWMgXHVkNmM0LCBcdWI0ZjFcdWMwYjBcdWQ1NjAgXHVjMjFjXHVjMTFjXHViOTdjIFx1YzgxNVx1ZDU1OFx1YmE3NCBcdWI0MWNcdWIyZTQpLjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1Yzc4NVx1YjgyNVx1YzczY1x1Yjg1YyBuLCBtLCB4LCBDLCBELCBcdWFkZjhcdWI5YWNcdWFjZTAgQSwgQlx1YWMwMCBcdWM4ZmNcdWM1YjRcdWM4NGNcdWM3NDQgXHViNTRjLCBBbGJlcnRcdWI5N2MgXHViM2M0XHVjNjQwIFx1Y2QxZCBcdWJhODdcdWFjMDBcdWM5YzAgXHViYzI5XHViYzk1XHVjNzNjXHViODVjIFx1YjRmMVx1YzBiMCBcdWFjYzRcdWQ2OGRcdWM3NDQgXHVjMTM4XHVjNmI4IFx1YzIxOCBcdWM3ODhcdWIyOTRcdWM5YzAgXHVhZDZjXHVkNTc0XHViY2Y0XHVjNzkwLjxcL3A+XHJcbiIsImlucHV0IjoiPHA+XHVjNzg1XHViODI1IFx1Y2NhYiBcdWM5MDRcdWM1ZDAgXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1Yzc1OCBcdWMyMTggVFx1YWMwMCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YWMwMSBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0XHViMjk0IFx1YzEzOFx1YzkwNFx1YzVkMCBcdWFjNzhcdWNjZDAgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWNjYWIgXHVjOTA0XHVjNWQwXHViMjk0IG4sIG0sIHgsIEMsIERcdWFjMDAgXHVhY2Y1XHViYzMxXHVjNzNjXHViODVjIFx1YWQ2Y1x1YmQ4NFx1YjQxOFx1YzViNCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YjQ1OFx1YzlmOCBcdWM5MDRcdWM1ZDBcdWIyOTQgXHViM2Q5XHVjYWJkIFx1ZDU1OFx1Yzc3NFx1ZDBiOSBcdWNmNTRcdWMyYTQgXHVhZTM4XHVjNzc0XHViOTdjIFx1YjA5OFx1ZDBjMFx1YjBiNFx1YjI5NCBuXHVhYzFjXHVjNzU4IFx1YzgxNVx1YzIxOFx1YWMwMCBcdWFjZjVcdWJjMzFcdWM3M2NcdWI4NWMgXHVhZDZjXHViZDg0XHViNDE4XHVjNWI0IFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVjMTRiXHVjOWY4IFx1YzkwNFx1YzVkMFx1YjI5NCBcdWMxMWNcdWNhYmQgXHVkNTU4XHVjNzc0XHVkMGI5IFx1Y2Y1NFx1YzJhNCBcdWFlMzhcdWM3NzRcdWI5N2MgXHViMDk4XHVkMGMwXHViMGI0XHViMjk0IG1cdWFjMWNcdWM3NTggXHVjODE1XHVjMjE4XHVhYzAwIFx1YWNmNVx1YmMzMVx1YzczY1x1Yjg1YyBcdWFkNmNcdWJkODRcdWI0MThcdWM1YjQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LjxcL3A+XHJcbiIsIm91dHB1dCI6IjxwPlx1YWMwMSBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0XHVjNzU4IFx1YzgxNVx1YjJmNVx1Yzc0NCBcdWFjMDEgXHVjOTA0XHVjNWQwIFx1Y2Q5Y1x1YjgyNVx1ZDU1Y1x1YjJlNC4gXHViMmU4LCBcdWM4MTVcdWIyZjVcdWM3NzQgXHViOWU0XHVjNmIwIFx1ZDA3NCBcdWMyMTggXHVjNzg4XHVjNzNjXHViYmMwXHViODVjJm5ic3A7MTA8c3VwPjk8XC9zdXA+KzdcdWI4NWMgXHViMDk4XHViMjA4IFx1YjA5OFx1YmEzOFx1YzljMFx1Yjk3YyBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuPFwvcD5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMSIsImh0bWxfdGl0bGUiOiIwIiwicHJvYmxlbV9sYW5nX3Rjb2RlIjoiS29yZWFuIiwibGltaXQiOiI8dWw+XHJcblx0PGxpPjEgJmxlOyBUICZsZTsgNTxcL2xpPlxyXG5cdDxsaT4xICZsZTsgbiwgbSAmbGU7IDE4PFwvbGk+XHJcblx0PGxpPjEgJmxlOyB4ICZsZTsgMTA8c3VwPjg8XC9zdXA+PFwvbGk+XHJcblx0PGxpPlx1MjAwYjEgXHUyMDBiJmxlOyBDICZsZTsgRCAmbGU7IDEwPHN1cD45PFwvc3VwPjxcL2xpPlxyXG5cdDxsaT4xIFx1MjAwYlx1MjAwYiZsZTsgXHVhYzAxIFx1YjRmMVx1YzBiMFx1Yjg1Y1x1Yzc1OCBcdWFlMzhcdWM3NzQgJmxlOyZuYnNwOzEwPHN1cD44PFwvc3VwPjxcL2xpPlxyXG48XC91bD5cclxuIiwic2FtcGxlX2V4cGxhaW5fMSI6IjxwPlx1YzYwOFx1YzgxYyAxOiZuYnNwO1x1YzcwNCBcdWFkZGNcdWNlNTlcdWM3NDQgXHViOWNjXHVjODcxXHVkNTU4XHViYTcwIFx1YWUzOFx1Yzc3NFx1YWMwMCAyNDVcdWM3NzggXHViNGYxXHVjMGIwIFx1YWNjNFx1ZDY4ZFx1Yzc0MCBcdWI0NTAgXHVhYzAwXHVjOWMwXHVhYzAwIFx1Yzc4OFx1YjJlNDo8XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5cdWJjMjlcdWJjOTUgMTogKFx1YjRmMVx1YzBiMFx1Yjg1YyBBMSkgLSAoXHViMmU0XHViOWFjKSAtIChcdWI0ZjFcdWMwYjBcdWI4NWMgQjUpIC0gKFx1YjJlNFx1YjlhYykgLSAoXHViNGYxXHVjMGIwXHViODVjIEEzKTxcL2xpPlxyXG5cdDxsaT5cdWJjMjlcdWJjOTUgMjogKFx1YjRmMVx1YzBiMFx1Yjg1YyBBMykgLSAoXHViMmU0XHViOWFjKSAtIChcdWI0ZjFcdWMwYjBcdWI4NWMgQjUpIC0gKFx1YjJlNFx1YjlhYykgLSAoXHViNGYxXHVjMGIwXHViODVjIEExKTxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1YzYwOFx1YzgxYyAyOiZuYnNwO1x1YmFhOFx1YjRlMCAxMFx1YWMxY1x1Yzc1OCBcdWI0ZjFcdWMwYjBcdWI4NWNcdWI5N2MgXHVkNTVjIFx1YmM4OFx1YzUyOSBcdWIyZTQgXHVjNzc0XHVjNmE5XHVkNTU4XHViYTc0IChcdWI1MzBcdWI3N2NcdWMxMWMgXHViMmU0XHViOWFjXHViOTdjJm5ic3A7OVx1YmM4OCBcdWM5YzBcdWIwOThcdWJhNzQpIFx1Y2QxZCBcdWFlMzhcdWM3NzRcdWFjMDAgMzlcdWFjMDAgXHViNDFjXHViMmU0LjxiciBcLz5cclxuXHVjNzA0IFx1YWRkY1x1Y2U1OVx1Yzc0NCBcdWI1MzBcdWI5NzRcdWJhNzRcdWMxMWMgMTBcdWFjMWNcdWM3NTggXHViNGYxXHVjMGIwXHViODVjXHViOTdjIFx1ZDU1YyBcdWJjODhcdWM1MjkgXHVjNzc0XHVjNmE5XHVkNTU4XHViMjk0IFx1YmMyOVx1YmM5NVx1Yzc0MCBcdWNkMWQmbmJzcDsyODgwMFx1YWMwMFx1YzljMFx1YWMwMCBcdWM3ODhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YzYwOFx1YzgxYyAzOiZuYnNwOzxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPlx1Y2QxZCBcdWFlMzhcdWM3NzRcdWFjMDAgMVx1Yzc3OCBcdWI0ZjFcdWMwYjAgXHVhY2M0XHVkNjhkXHVjNzQwIDEwXHVhYzAwXHVjOWMwIFx1Yzg3NFx1YzdhY1x1ZDU1Y1x1YjJlNCAoXHVjNTQ0XHViYjM0IFx1YjRmMVx1YzBiMFx1Yjg1YyBcdWQ1NThcdWIwOThcdWI5N2MgXHVhY2UwXHViOTc0XHViYTc0IFx1YjQxY1x1YjJlNCkuPFwvbGk+XHJcblx0PGxpPlx1Y2QxZCBcdWFlMzhcdWM3NzRcdWFjMDAgMlx1Yzc3OCBcdWI0ZjFcdWMwYjAgXHVhY2M0XHVkNjhkXHVjNzQwIDBcdWFjMDBcdWM5YzAgXHVjODc0XHVjN2FjXHVkNTVjXHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWNkMWQgXHVhZTM4XHVjNzc0XHVhYzAwIDNcdWM3NzggXHViNGYxXHVjMGIwIFx1YWNjNFx1ZDY4ZFx1Yzc0MCA1MFx1YWMwMFx1YzljMCBcdWM4NzRcdWM3YWNcdWQ1NWNcdWIyZTQgKFx1YjNkOVx1Y2FiZCBcdWMwYjBcdWFjZmMgXHVjMTFjXHVjYWJkIFx1YzBiMFx1Yzc1OCBcdWI0ZjFcdWMwYjBcdWI4NWMgXHVkNTU4XHViMDk4XHVjNTI5XHVjNzQ0IFx1YWNlMFx1Yjk3NFx1YmE3NCBcdWI0MWNcdWIyZTQpLjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1YjUzMFx1Yjc3Y1x1YzExYyBcdWIyZjVcdWM3NDAgNjBcdWM3NzRcdWIyZTQuPFwvcD5cclxuIiwic2FtcGxlX2V4cGxhaW5fMiI6IjxwPlx1YzYwOFx1YzgxYyAxOiBcdWJjZjhcdWJiMzhcdWM1ZDBcdWMxMWMgXHViMmU0XHViOGU4XHVjNWM4XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWM2MDhcdWM4MWMgMi0zOiBcdWNkOTRcdWFjMDAgXHVjMTI0XHViYTg1IFx1YzVjNlx1Yzc0Yy48XC9wPlxyXG4ifSx7InByb2JsZW1faWQiOiIyMzAyMSIsInByb2JsZW1fbGFuZyI6IjEiLCJ0aXRsZSI6Ikhpa2luZyIsImRlc2NyaXB0aW9uIjoiPHA+QWxiZXJ0IGxvdmVzIGhpa2luZy48XC9wPlxyXG5cclxuPHA+VGhlcmUgYXJlIHR3byBuZWFyYnkgbW91bnRhaW5zIChNdC4gRWFzdCBhbmQgTXQuIFdlc3QpLCBhbmQgdGhlcmUgYXJlIGhpa2luZyB0cmFpbHMgb2YgdmFyaW91cyBsZW5ndGhzLjxcL3A+XHJcblxyXG48cD5NdC4gRWFzdCBoYXMgbiB0cmFpbHMgKHdob3NlIGxlbmd0aHMgYXJlIEFbMV0sIC4uLiwgQVtuXSkuIE10LiBXZXN0IGhhcyBtIHRyYWlscyAod2hvc2UgbGVuZ3RocyBhcmUgQlsxXSwgLi4uLCBCW21dKS48XC9wPlxyXG5cclxuPHA+RXZlcnkgdHJhaWwgaW4gTXQuIEVhc3QgYmVnaW5zIGFuZCBlbmRzIGF0IHRoZSBzYW1lIHBsYWNlICh0aGUgZW50cmFuY2Ugb2YgTXQuIEVhc3QpLCBhbmQgbGlrZXdpc2UgZXZlcnkgdHJhaWwgaW4gTXQuIFdlc3QgYmVnaW5zIGFuZCBlbmRzIGF0IHRoZSBzYW1lIGxvY2F0aW9uICh0aGUgZW50cmFuY2Ugb2YgTXQuIFdlc3QpLjxcL3A+XHJcblxyXG48cD5UaGUgZW50cmFuY2VzIG9mIHRoZSB0d28gbW91bnRhaW5zIGFyZSBjb25uZWN0ZWQgYnkgdGhlIEVhc3QtV2VzdCBicmlkZ2Ugb2YgbGVuZ3RoIHguIEluIHRoZSBpbWFnZSBiZWxvdywgdGhlIHNxdWFyZSByZXByZXNlbnRzIHRoZSBlbnRyYW5jZSBvZiBNdC4gRWFzdCBhbmQmbmJzcDt0aGUgY2lyY2xlIHRoZSBlbnRyYW5jZSBvZiBNdC4gV2VzdCwgd2hlcmUgdGhlIEVhc3QtV2VzdCBicmlkZ2UgaGFzIGxlbmd0aCB4ID0gMTAuIFRoZSB0d28gdHJhaWxzIG9mJm5ic3A7TXQuIEVhc3QgaGFzIGxlbmd0aHMgNDAgYW5kIDQ1IHdoZXJlYXMgdGhlIHR3byB0cmFpbHMgb2YgTXQuIFdlc3QgaGFzIHRoZSBzYW1lIGxlbmd0aCBvZiA0Mi48XC9wPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+PGltZyBhbHQ9XCJcIiBzcmM9XCJodHRwczpcL1wvdXBsb2FkLmFjbWljcGMubmV0XC8wNDJjYTU4Mi0xYzlmLTRjYjctYTQyZC03YzRmYzU1MGU2NzBcLy1cL3ByZXZpZXdcL1wiIFwvPjxcL3A+XHJcblxyXG48cD5BbGJlcnQgd2FudHMgdG8gcGxhbiBhIGhpa2luZyByb3V0ZSB3aG9zZSB0b3RhbCBsZW5ndGggaXMgYXQgbGVhc3QgQyBhbmQgYXQgbW9zdCBELCBhY2NvcmRpbmcgdG8gdGhlIHJ1bGVzIGJlbG93LiAoQSBoaWtpbmcgcm91dGUgaXMgdG8gZGVzY3JpYmUgd2hpY2ggdHJhaWxzIGFyZSB1c2VkIGluIHdoYXQgb3JkZXIuKTxcL3A+XHJcblxyXG48b2w+XHJcblx0PGxpPlRoZSBzYW1lIHRyYWlsIGNhbm5vdCBiZSB1c2VkIG1vcmUgdGhhbiBvbmNlLjxcL2xpPlxyXG5cdDxsaT5Ud28gdHJhaWxzIG9mIHRoZSBzYW1lIG1vdW50YWluIGNhbm5vdCBiZSB1c2VkIGJhY2stdG8tYmFjayAoaGVuY2UsIGVhY2ggbW91bnRhaW4mIzM5O3MgdHJhaWwgbXVzdCBiZSB1c2VkIGFsdGVybmF0aXZlbHkpLjxcL2xpPlxyXG5cdDxsaT5XaGVuIG1vdmluZyBmcm9tIG9uZSBtb3VudGFpbiB0byB0aGUgb3RoZXIsIHRoZSBFYXN0LVdlc3QgYnJpZGdlIChvZiBsZW5ndGggeCkgbXVzdCBiZSB1c2VkIC0tIHRoaXMgaXMgdGhlIG9ubHkgd2F5LiBUaGUgYnJpZGdlIGNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzLjxcL2xpPlxyXG5cdDxsaT5UaGUgYnJpZGdlIGNhbm5vdCBiZSB1c2VkIGFzIHRoZSBmaXJzdCBvciB0aGUgbGFzdCB0cmFpbCwgYW5kIHRoZSBicmlkZ2UgY2Fubm90IGJlIHVzZWQgY29uc2VjdXRpdmVseS4gSGVuY2UsIHdoZW4gdGhlIGJyaWRnZSBpcyB1c2VkLCBpdCBtdXN0IGJlIGJlZm9yZSBhbmQgYWZ0ZXIgdXNpbmcgYSB0cmFpbCBmcm9tIGVpdGhlciBvZiB0aGUgbW91bnRhaW5zLjxcL2xpPlxyXG48XC9vbD5cclxuXHJcbjxwPkluIHRoZSBleGFtcGxlIGFib3ZlLCB3ZSBoYXZlJm5ic3A7IG4gPSBtID0gMiwgeCA9IDEwLCBBID0gWzQwLCA0NV0gYW5kIEIgPSBbNDIsIDQyXS4gU3VwcG9zZSBDID0gMSBhbmQgRCA9IDEwMC4gVGhlcmUgYXJlIDEyIGhpa2luZyByb3V0ZXMgQWxiZXJ0IGNhbiB1c2Ugd2hvc2UgbmV0IGxlbmd0aCBpcyBiZXR3ZWVuIDEgYW5kIDEwMCwgaW5jbHVzaXZlOjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPjQgaGlraW5nIHJvdXRlcyB3aG9zZSBsZW5ndGggaXMgYmV0d2VlbiA0MCBhbmQgNDUsIGluY2x1c2l2ZSAoQWxiZXJ0IGNhbiB1c2Ugb25lIG9mIHRoZSBmb3VyIHRyYWlscyBhbG9uZSkuPFwvbGk+XHJcblx0PGxpPjggaGlraW5nIHJvdXRlcyB3aG9zZSBsZW5ndGggaXMgYmV0d2VlbiA5MiBhbmQgOTcsIGluY2x1c2l2ZSAoQWxiZXJ0IGNhbiB1c2Ugb25lIHRyYWlsIGZyb20gZWFjaCBtb3VudGFpbiwgYW5kIHRoZW4gZGVjaWRlIHRoZSBvcmRlciBpbiB3aGljaCBoZSYjMzk7bGwgdXNlIHRoZW0pLjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPkdpdmVuIG4sIG0sIHgsIEMsIEQsIEEsIGFuZCBCLCBoZWxwIEFsYmVydCBmaWd1cmUgb3V0IGhvdyBtYW55IGhpa2luZyByb3V0ZXMgaGUgY2FuIGNvbWUgdXAgd2l0aC4mbmJzcDs8XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBpbnB1dCB3aWxsIGNvbnRhaW4gYW4gaW50ZWdlciBULCB0aGUgbnVtYmVyIG9mIHRlc3QgY2FzZXMuPFwvcD5cclxuXHJcbjxwPkVhY2ggdGVzdCBjYXNlIHdpbGwgY29uc2lzdCBvZiB0aHJlZSBsaW5lcy4gVGhlIGZpcnN0IGxpbmUgd2lsbCBjb250YWluIG4sIG0sIHgsIEMsIGFuZCBELCBzZXBhcmF0ZWQgYnkgd2hpdGVzcGFjZS4gVGhlIHNlY29uZCBsaW5lIHdpbGwgY29udGFpbiBuIGludGVnZXJzICh0aGUgbGVuZ3RocyBvZiB0aGUgdHJhaWxzIGluIE10LiBFYXN0KSwgc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UuIFRoZSB0aGlyZCBsaW5lIHdpbGwgY29udGFpbiBtIGludGVnZXJzICh0aGUgbGVuZ3RocyBvZiB0aGUgdHJhaWxzIGluIE10LiBXZXN0KSwgc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UuPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+T3V0cHV0IHRoZSBhbnN3ZXIgaW4gYSBzaW5nbGUgbGluZSBmb3IgZWFjaCB0ZXN0IGNhc2UuPFwvcD5cclxuXHJcbjxwPlNpbmNlIHRoZSBhbnN3ZXIgY2FuIGJlIHZlcnkgbGFyZ2UsIG91dHB1dCB0aGUgYW5zd2VyIG1vZHVsbyAxMDxzdXA+OTxcL3N1cD4rNy48XC9wPlxyXG4iLCJoaW50IjoiIiwib3JpZ2luYWwiOiIwIiwiaHRtbF90aXRsZSI6IjAiLCJwcm9ibGVtX2xhbmdfdGNvZGUiOiJFbmdsaXNoIiwibGltaXQiOiI8dWw+XHJcblx0PGxpPjEgJmxlOyBUICZsZTsgNTxcL2xpPlxyXG5cdDxsaT4xICZsZTsgbiwgbSAmbGU7IDE4PFwvbGk+XHJcblx0PGxpPjEgJmxlOyB4ICZsZTsgMTA8c3VwPjg8XC9zdXA+PFwvbGk+XHJcblx0PGxpPlx1MjAwYjEgXHUyMDBiJmxlOyBDICZsZTsgRCAmbGU7IDEwPHN1cD45PFwvc3VwPjxcL2xpPlxyXG5cdDxsaT4xIFx1MjAwYlx1MjAwYiZsZTsgdGhlIGxlbmd0aCBvZiBlYWNoIHRyYWlsICZsZTsmbmJzcDsxMDxzdXA+ODxcL3N1cD48XC9saT5cclxuPFwvdWw+XHJcbiIsInNhbXBsZV9leHBsYWluXzEiOiI8cD5DYXNlIDE6IFRoZXJlIGFyZSB0d28gaGlraW5nIHJvdXRlcyBvZiBsZW5ndGggMjQ1OjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPlJvdXRlIDE6IChUcmFpbCBBMSkgLSAoQnJpZGdlKSAtIChUcmFpbCBCNSkgLSAoQnJpZGdlKSAtIChUcmFpbCBBMyk8XC9saT5cclxuXHQ8bGk+Um91dGUgMjogKFRyYWlsIEEzKSAtIChCcmlkZ2UpIC0gKFRyYWlsIEI1KSAtIChCcmlkZ2UpIC0gKFRyYWlsIEExKTxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPkNhc2UgMjogSWYgZXZlcnkgdHJhaWwgaXMgdXNlZCBleGFjdGx5IG9uY2UgKGFuZCB0aGUgYnJpZGdlIGlzIGNyb3NzZWQgOSB0aW1lcyksIHRoZW4gdGhlIHRvdGFsIGxlbmd0aCBpcyAzOS48YnIgXC8+XHJcblRoZXJlIGFyZSAyOCw4MDAgc3VjaCByb3V0ZXMgdGhhdCBtZWV0IHRoZSBydWxlcy48XC9wPlxyXG5cclxuPHA+Q2FzZSAzOjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPlRoZXJlIGFyZSAxMCByb3V0ZXMgb2YgbGVuZ3RoIDEgKGFueSBvbmUgdHJhaWwgY2FuIGJlIHVzZWQpLjxcL2xpPlxyXG5cdDxsaT5UaGVyZSBhcmUgMCByb3V0ZXMgb2YgbGVuZ3RoIDIuJm5ic3A7PFwvbGk+XHJcblx0PGxpPlRoZXJlIGFyZSA1MCByb3V0ZXMgb2YgbGVuZ3RoIDMgKG9uZSB0cmFpbCBmcm9tIGVhY2ggbW91bnRhaW4gY2FuIGJlIGNob3NlbikuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+SGVuY2UsIHRoZSBhbnN3ZXIgaXMgNjAuPFwvcD5cclxuIiwic2FtcGxlX2V4cGxhaW5fMiI6IjxwPkNhc2UgMTogRGlzY3Vzc2VkIGluIHRoZSBwcm9ibGVtIHN0YXRlbWVudC48XC9wPlxyXG5cclxuPHA+Q2FzZSAyLTM6IE5vJm5ic3A7ZXhwbGFuYXRpb24gcHJvdmlkZWQuPFwvcD5cclxuIn1d

시간 제한

  • PyPy3: 6 초