시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 128 MB 2 1 1 50.000%

문제

김동규 수학 선생님은 매주 토요일마다 학생들에게 수학을 가르쳐준다. 2주 전에는 1변수 다항식(변수가 x 하나)을 설명했고, 지난주에는 다항식의 최대공약수를 구하는 법을 설명하고 두 다항식의 최대공약수를 구하는 숙제를 내주었다.

동규는 FM2013을 하느라 숙제를 채점할 시간이 없었으므로, 자동으로 채점을 해주는 프로그램을 만드려고 한다.

동규가 숙제로 내준 다항식의 계수는 모두 정수이고, 이를 정수 다항식이라고 부른다.

두 정수 다항식 A와 B가 있을 때, 임의의 정수 다항식 X, Y에 대해서, A=CX, B=CY를 만족하는 정수 다항식 C를 A와 B의 공약수라고 부른다.

두 다항식의 최대공약수는 공약수중 다항식의 차수가 가장 큰 것을 말한다. 또, 상수항을 무시하다면, 두 다항식의 최대공약수는 유일하다. 즉, C와 D가 다항식 A와 B의 최대공약수일 때, p×C = q×D를 만족하는 음이아닌 정수 p와 q가 있다는 뜻이다.

입력

첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 두 줄로 이루어져 있고, 다음과 같은 다항식이 입력으로 주어진다.

  1. 다항식의 기본항은 변수 x, 상수(0-9), 또는 괄호로 감싸진 식이다. 예)x, 99, (x+1)
  2. 다항식의 인수는 기본항 뒤에 ^를 붙이고 숫자(0-9)로 나타낸다. 예) x^05, 1^15, (x+1)^3
  3. 다항식의 항은 여러 인수의 곱으로 나타낸다. 예) 4x, (x+1)(x-2), 3(x+1)^2
  4. 다항식은 하나 또는 그 이상의 항을 + 또는 -로 연결한다. 첫 항은 -로 시작할 수 있다. 예) -x+1, 3(x+1)^2-x(x-1)^2

상수 여러개가 붙여져서 주어지는 경우, 이를 그대로 상수로 이용하면 된다. 즉, 99는 9*9가 아니고 99이다.

입력으로 받은 다항식을 모두 펼쳤을 때, 다항식의 계수는 100보다 작거나 같고, x의 차수는 10보다 작거나 같다. 제곱에 나타나는 상수는 항상 음이 아닌 값이다.

올바르게 계산했을 때, 32비트 정수로 계산할 수 있는 데이터만 주어진다. (overflow가 없음)

출력

각각의 테스트 케이스에 대해서 입력으로 주어진 두 다항식의 최대공약수를 다음과 같은 형식으로 출력한다.

c0x^p0±c1x^p1...±cnx^pn

ci와 pi(i=0,...,n)는 양의 정수이고, p0>p1>...>pn을 만족한다. {ci|i=0,...n}의 최대공약수는 1이다.

또한 다음과 같은 규칙을 지켜야 한다.

  1. ci가 1일 때, pi가 0이 아니면 생략해야 한다.
  2. x^0은 생략해야 한다.
  3. x^1은 x로 출력해야 한다.

예제 입력 1

3
-(x^3-3x^2+3x-1)
(x-1)^2
x^2+10x+25
x^2+6x+5
x^3+1
x-1

예제 출력 1

x^2-2x+1
x+5
1
W3sicHJvYmxlbV9pZCI6IjM4OTMiLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJcdWFjZjVcdWQxYjUgXHViMmU0XHVkNTZkXHVjMmRkIiwiZGVzY3JpcHRpb24iOiI8cD5cdWFlNDBcdWIzZDlcdWFkZGMgXHVjMjE4XHVkNTU5IFx1YzEyMFx1YzBkZFx1YjJkOFx1Yzc0MCBcdWI5ZTRcdWM4ZmMgXHVkMWEwXHVjNjk0XHVjNzdjXHViOWM4XHViMmU0IFx1ZDU1OVx1YzBkZFx1YjRlNFx1YzVkMFx1YWM4YyBcdWMyMThcdWQ1NTlcdWM3NDQgXHVhYzAwXHViOTc0XHVjY2QwXHVjOTAwXHViMmU0LiAyXHVjOGZjIFx1YzgwNFx1YzVkMFx1YjI5NCAxXHViY2MwXHVjMjE4IFx1YjJlNFx1ZDU2ZFx1YzJkZChcdWJjYzBcdWMyMThcdWFjMDAgeCBcdWQ1NThcdWIwOTgpXHVjNzQ0IFx1YzEyNFx1YmE4NVx1ZDU4OFx1YWNlMCwgXHVjOWMwXHViMDljXHVjOGZjXHVjNWQwXHViMjk0IFx1YjJlNFx1ZDU2ZFx1YzJkZFx1Yzc1OCBcdWNkNWNcdWIzMDBcdWFjZjVcdWM1N2RcdWMyMThcdWI5N2MgXHVhZDZjXHVkNTU4XHViMjk0IFx1YmM5NVx1Yzc0NCBcdWMxMjRcdWJhODVcdWQ1NThcdWFjZTAgXHViNDUwIFx1YjJlNFx1ZDU2ZFx1YzJkZFx1Yzc1OCBcdWNkNWNcdWIzMDBcdWFjZjVcdWM1N2RcdWMyMThcdWI5N2MgXHVhZDZjXHVkNTU4XHViMjk0IFx1YzIxOVx1YzgxY1x1Yjk3YyBcdWIwYjRcdWM4ZmNcdWM1YzhcdWIyZTQuPFwvcD5cclxuXHJcblxyXG5cclxuPHA+XHViM2Q5XHVhZGRjXHViMjk0IEZNMjAxM1x1Yzc0NCBcdWQ1NThcdWIyOTBcdWI3N2MgXHVjMjE5XHVjODFjXHViOTdjIFx1Y2M0NFx1YzgxMFx1ZDU2MCBcdWMyZGNcdWFjMDRcdWM3NzQgXHVjNWM2XHVjNWM4XHVjNzNjXHViYmMwXHViODVjLCBcdWM3OTBcdWIzZDlcdWM3M2NcdWI4NWMgXHVjYzQ0XHVjODEwXHVjNzQ0IFx1ZDU3NFx1YzhmY1x1YjI5NCBcdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NDQgXHViOWNjXHViNGRjXHViODI0XHVhY2UwIFx1ZDU1Y1x1YjJlNC48XC9wPlxyXG5cclxuXHJcblxyXG48cD5cdWIzZDlcdWFkZGNcdWFjMDAgXHVjMjE5XHVjODFjXHViODVjIFx1YjBiNFx1YzkwMCBcdWIyZTRcdWQ1NmRcdWMyZGRcdWM3NTggXHVhY2M0XHVjMjE4XHViMjk0IFx1YmFhOFx1YjQ1MCBcdWM4MTVcdWMyMThcdWM3NzRcdWFjZTAsIFx1Yzc3NFx1Yjk3YyBcdWM4MTVcdWMyMTggXHViMmU0XHVkNTZkXHVjMmRkXHVjNzc0XHViNzdjXHVhY2UwIFx1YmQ4MFx1Yjk3OFx1YjJlNC48XC9wPlxyXG5cclxuXHJcblxyXG48cD5cdWI0NTAgXHVjODE1XHVjMjE4IFx1YjJlNFx1ZDU2ZFx1YzJkZCBBXHVjNjQwIEJcdWFjMDAgXHVjNzg4XHVjNzQ0IFx1YjU0YywgXHVjNzg0XHVjNzU4XHVjNzU4IFx1YzgxNVx1YzIxOCBcdWIyZTRcdWQ1NmRcdWMyZGQgWCwgWVx1YzVkMCBcdWIzMDBcdWQ1NzRcdWMxMWMsIEE9Q1gsIEI9Q1lcdWI5N2MgXHViOWNjXHVjODcxXHVkNTU4XHViMjk0IFx1YzgxNVx1YzIxOCBcdWIyZTRcdWQ1NmRcdWMyZGQgQ1x1Yjk3YyBBXHVjNjQwIEJcdWM3NTggXHVhY2Y1XHVjNTdkXHVjMjE4XHViNzdjXHVhY2UwIFx1YmQ4MFx1Yjk3OFx1YjJlNC48XC9wPlxyXG5cclxuXHJcblxyXG48cD5cdWI0NTAgXHViMmU0XHVkNTZkXHVjMmRkXHVjNzU4IFx1Y2Q1Y1x1YjMwMFx1YWNmNVx1YzU3ZFx1YzIxOFx1YjI5NCBcdWFjZjVcdWM1N2RcdWMyMThcdWM5MTEgXHViMmU0XHVkNTZkXHVjMmRkXHVjNzU4IFx1Y2MyOFx1YzIxOFx1YWMwMCBcdWFjMDBcdWM3YTUgXHVkMDcwIFx1YWM4M1x1Yzc0NCBcdWI5ZDBcdWQ1NWNcdWIyZTQuIFx1YjYxMCwgXHVjMGMxXHVjMjE4XHVkNTZkXHVjNzQ0IFx1YmIzNFx1YzJkY1x1ZDU1OFx1YjJlNFx1YmE3NCwgXHViNDUwIFx1YjJlNFx1ZDU2ZFx1YzJkZFx1Yzc1OCBcdWNkNWNcdWIzMDBcdWFjZjVcdWM1N2RcdWMyMThcdWIyOTQgXHVjNzIwXHVjNzdjXHVkNTU4XHViMmU0LiBcdWM5ODksIENcdWM2NDAgRFx1YWMwMCBcdWIyZTRcdWQ1NmRcdWMyZGQgQVx1YzY0MCBCXHVjNzU4IFx1Y2Q1Y1x1YjMwMFx1YWNmNVx1YzU3ZFx1YzIxOFx1Yzc3YyBcdWI1NGMsIHAmdGltZXM7QyA9IHEmdGltZXM7RFx1Yjk3YyBcdWI5Y2NcdWM4NzFcdWQ1NThcdWIyOTQgXHVjNzRjXHVjNzc0XHVjNTQ0XHViMmNjIFx1YzgxNVx1YzIxOCBwXHVjNjQwIHFcdWFjMDAgXHVjNzg4XHViMmU0XHViMjk0IFx1YjczYlx1Yzc3NFx1YjJlNC48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlx1Y2NhYlx1YzlmOCBcdWM5MDRcdWM1ZDAgXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1Yzc1OCBcdWFjMWNcdWMyMTggVFx1YWMwMCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuIFx1YWMwMSBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0XHViMjk0IFx1YjQ1MCBcdWM5MDRcdWI4NWMgXHVjNzc0XHViOGU4XHVjNWI0XHVjODM4IFx1Yzc4OFx1YWNlMCwgXHViMmU0XHVjNzRjXHVhY2ZjIFx1YWMxOVx1Yzc0MCBcdWIyZTRcdWQ1NmRcdWMyZGRcdWM3NzQgXHVjNzg1XHViODI1XHVjNzNjXHViODVjIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC48XC9wPlxyXG5cclxuPG9sPlxyXG5cdDxsaT5cdWIyZTRcdWQ1NmRcdWMyZGRcdWM3NTggXHVhZTMwXHViY2Y4XHVkNTZkXHVjNzQwIFx1YmNjMFx1YzIxOCB4LCBcdWMwYzFcdWMyMTgoMC05KSwgXHViNjEwXHViMjk0IFx1YWQwNFx1ZDYzOFx1Yjg1YyBcdWFjMTBcdWMyZjhcdWM5YzQgXHVjMmRkXHVjNzc0XHViMmU0LiBcdWM2MDgpeCwgOTksICh4KzEpPFwvbGk+XHJcblx0PGxpPlx1YjJlNFx1ZDU2ZFx1YzJkZFx1Yzc1OCBcdWM3NzhcdWMyMThcdWIyOTQgXHVhZTMwXHViY2Y4XHVkNTZkIFx1YjRhNFx1YzVkMCBeXHViOTdjIFx1YmQ5OVx1Yzc3NFx1YWNlMCBcdWMyMmJcdWM3OTAoMC05KVx1Yjg1YyBcdWIwOThcdWQwYzBcdWIwYjhcdWIyZTQuIFx1YzYwOCkgeF4wNSwgMV4xNSwgKHgrMSleMzxcL2xpPlxyXG5cdDxsaT5cdWIyZTRcdWQ1NmRcdWMyZGRcdWM3NTggXHVkNTZkXHVjNzQwIFx1YzVlY1x1YjdlYyBcdWM3NzhcdWMyMThcdWM3NTggXHVhY2YxXHVjNzNjXHViODVjIFx1YjA5OFx1ZDBjMFx1YjBiOFx1YjJlNC4gXHVjNjA4KSA0eCwgKHgrMSkoeC0yKSwgMyh4KzEpXjI8XC9saT5cclxuXHQ8bGk+XHViMmU0XHVkNTZkXHVjMmRkXHVjNzQwIFx1ZDU1OFx1YjA5OCBcdWI2MTBcdWIyOTQgXHVhZGY4IFx1Yzc3NFx1YzBjMVx1Yzc1OCBcdWQ1NmRcdWM3NDQgKyBcdWI2MTBcdWIyOTQgLVx1Yjg1YyBcdWM1ZjBcdWFjYjBcdWQ1NWNcdWIyZTQuIFx1Y2NhYiBcdWQ1NmRcdWM3NDAgLVx1Yjg1YyBcdWMyZGNcdWM3OTFcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjJlNC4gXHVjNjA4KSAteCsxLCAzKHgrMSleMi14KHgtMSleMjxcL2xpPlxyXG48XC9vbD5cclxuXHJcbjxwPlx1YzBjMVx1YzIxOCBcdWM1ZWNcdWI3ZWNcdWFjMWNcdWFjMDAgXHViZDk5XHVjNWVjXHVjODM4XHVjMTFjIFx1YzhmY1x1YzViNFx1YzljMFx1YjI5NCBcdWFjYmRcdWM2YjAsIFx1Yzc3NFx1Yjk3YyBcdWFkZjhcdWIzMDBcdWI4NWMgXHVjMGMxXHVjMjE4XHViODVjIFx1Yzc3NFx1YzZhOVx1ZDU1OFx1YmE3NCBcdWI0MWNcdWIyZTQuIFx1Yzk4OSwgOTlcdWIyOTQgOSo5XHVhYzAwIFx1YzU0NFx1YjJjOFx1YWNlMCA5OVx1Yzc3NFx1YjJlNC48XC9wPlxyXG5cclxuXHJcblxyXG48cD5cdWM3ODVcdWI4MjVcdWM3M2NcdWI4NWMgXHViYzFiXHVjNzQwIFx1YjJlNFx1ZDU2ZFx1YzJkZFx1Yzc0NCBcdWJhYThcdWI0NTAgXHVkM2JjXHVjY2U0XHVjNzQ0IFx1YjU0YywgXHViMmU0XHVkNTZkXHVjMmRkXHVjNzU4IFx1YWNjNFx1YzIxOFx1YjI5NCAxMDBcdWJjZjRcdWIyZTQgXHVjNzkxXHVhYzcwXHViMDk4IFx1YWMxOVx1YWNlMCwgeFx1Yzc1OCBcdWNjMjhcdWMyMThcdWIyOTQgMTBcdWJjZjRcdWIyZTQgXHVjNzkxXHVhYzcwXHViMDk4IFx1YWMxOVx1YjJlNC4gXHVjODFjXHVhY2YxXHVjNWQwIFx1YjA5OFx1ZDBjMFx1YjA5OFx1YjI5NCBcdWMwYzFcdWMyMThcdWIyOTQgXHVkNTZkXHVjMGMxIFx1Yzc0Y1x1Yzc3NCBcdWM1NDRcdWIyY2MgXHVhYzEyXHVjNzc0XHViMmU0LjxcL3A+XHJcblxyXG5cclxuXHJcbjxwPlx1YzYyY1x1YmMxNFx1Yjk3NFx1YWM4YyBcdWFjYzRcdWMwYjBcdWQ1ODhcdWM3NDQgXHViNTRjLCAzMlx1YmU0NFx1ZDJiOCBcdWM4MTVcdWMyMThcdWI4NWMgXHVhY2M0XHVjMGIwXHVkNTYwIFx1YzIxOCBcdWM3ODhcdWIyOTQgXHViMzcwXHVjNzc0XHVkMTMwXHViOWNjIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC4gKG92ZXJmbG93XHVhYzAwIFx1YzVjNlx1Yzc0Yyk8XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5cdWFjMDFcdWFjMDFcdWM3NTggXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1YzVkMCBcdWIzMDBcdWQ1NzRcdWMxMWMgXHVjNzg1XHViODI1XHVjNzNjXHViODVjIFx1YzhmY1x1YzViNFx1YzljNCBcdWI0NTAgXHViMmU0XHVkNTZkXHVjMmRkXHVjNzU4IFx1Y2Q1Y1x1YjMwMFx1YWNmNVx1YzU3ZFx1YzIxOFx1Yjk3YyBcdWIyZTRcdWM3NGNcdWFjZmMgXHVhYzE5XHVjNzQwIFx1ZDYxNVx1YzJkZFx1YzczY1x1Yjg1YyBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuPFwvcD5cclxuXHJcbjxwcmU+XHJcbmM8c3ViPjA8XC9zdWI+eF5wPHN1Yj4wPFwvc3ViPiZwbHVzbW47YzxzdWI+MTxcL3N1Yj54XnA8c3ViPjE8XC9zdWI+Li4uJnBsdXNtbjtjPHN1Yj5uPFwvc3ViPnhecDxzdWI+bjxcL3N1Yj48XC9wcmU+XHJcblxyXG48cD5jPHN1Yj5pPFwvc3ViPlx1YzY0MCBwPHN1Yj5pPFwvc3ViPihpPTAsLi4uLG4pXHViMjk0IFx1YzU5MVx1Yzc1OCBcdWM4MTVcdWMyMThcdWM3NzRcdWFjZTAsIHA8c3ViPjA8XC9zdWI+Jmd0O3A8c3ViPjE8XC9zdWI+Jmd0Oy4uLiZndDtwPHN1Yj5uPFwvc3ViPlx1Yzc0NCBcdWI5Y2NcdWM4NzFcdWQ1NWNcdWIyZTQuIHtjPHN1Yj5pPFwvc3ViPnxpPTAsLi4ubn1cdWM3NTggXHVjZDVjXHViMzAwXHVhY2Y1XHVjNTdkXHVjMjE4XHViMjk0IDFcdWM3NzRcdWIyZTQuPFwvcD5cclxuXHJcblxyXG5cclxuPHA+XHViNjEwXHVkNTVjIFx1YjJlNFx1Yzc0Y1x1YWNmYyBcdWFjMTlcdWM3NDAgXHVhZGRjXHVjZTU5XHVjNzQ0IFx1YzljMFx1Y2YxY1x1YzU3YyBcdWQ1NWNcdWIyZTQuPFwvcD5cclxuXHJcbjxvbD5cclxuXHQ8bGk+YzxzdWI+aTxcL3N1Yj5cdWFjMDAgMVx1Yzc3YyBcdWI1NGMsIHA8c3ViPmk8XC9zdWI+XHVhYzAwIDBcdWM3NzQgXHVjNTQ0XHViMmM4XHViYTc0IFx1YzBkZFx1YjdiNVx1ZDU3NFx1YzU3YyBcdWQ1NWNcdWIyZTQuPFwvbGk+XHJcblx0PGxpPnheMFx1Yzc0MCBcdWMwZGRcdWI3YjVcdWQ1NzRcdWM1N2MgXHVkNTVjXHViMmU0LjxcL2xpPlxyXG5cdDxsaT54XjFcdWM3NDAgeFx1Yjg1YyBcdWNkOWNcdWI4MjVcdWQ1NzRcdWM1N2MgXHVkNTVjXHViMmU0LjxcL2xpPlxyXG48XC9vbD5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMCIsInByb2JsZW1fbGFuZ19jb2RlIjoiXHVkNTVjXHVhZDZkXHVjNWI0In0seyJwcm9ibGVtX2lkIjoiMzg5MyIsInByb2JsZW1fbGFuZyI6IjEiLCJ0aXRsZSI6IkNvbW1vbiBQb2x5bm9taWFsIiwiZGVzY3JpcHRpb24iOiI8cD5NYXRoIHRlYWNoZXIgTXIuIE1hdHN1ZGFpcmEgaXMgdGVhY2hpbmcgZXhwYW5zaW9uIGFuZCBmYWN0b3Jpbmcgb2YgcG9seW5vbWlhbHMgdG8gaGlzIHN0dWRlbnRzLiBMYXN0IHdlZWsgaGUgaW5zdHJ1Y3RlZCB0aGUgc3R1ZGVudHMgdG8gd3JpdGUgdHdvIHBvbHlub21pYWxzICh3aXRoIGEgc2luZ2xlIHZhcmlhYmxlIHgpLCBhbmQgdG8gcmVwb3J0IEdDTSAoZ3JlYXRlc3QgY29tbW9uIG1lYXN1cmUpIG9mIHRoZW0gYXMgYSBob21ld29yaywgYnV0IGhlIGZvdW5kIGl0IGJvcmluZyB0byBjaGVjayB0aGVpciBhbnN3ZXJzIG1hbnVhbGx5LiBTbyB5b3UgYXJlIGFza2VkIHRvIHdyaXRlIGEgcHJvZ3JhbSB0byBjaGVjayB0aGUgYW5zd2Vycy48XC9wPlxyXG5cclxuPHA+SGVyZWluYWZ0ZXIsIG9ubHkgdGhvc2UgcG9seW5vbWlhbHMgd2l0aCBpbnRlZ3JhbCBjb2VmZmljaWVudHMsIGNhbGxlZCBpbnRlZ3JhbCBwb2x5bm9taWFscywgYXJlIGNvbnNpZGVyZWQuPFwvcD5cclxuXHJcbjxwPldoZW4gdHdvIGludGVncmFsIHBvbHlub21pYWxzIEEgYW5kIEIgYXJlIGdpdmVuLCBhbiBpbnRlZ3JhbCBwb2x5bm9taWFsIEMgaXMgYSBjb21tb24gZmFjdG9yIG9mIEEgYW5kIEIgaWYgdGhlcmUgYXJlIHNvbWUgaW50ZWdyYWwgcG9seW5vbWlhbHMgWCBhbmQgWSBzdWNoIHRoYXQgQSA9IENYIGFuZCBCID0gQ1kgLjxcL3A+XHJcblxyXG48cD5HQ00gb2YgdHdvIGludGVncmFsIHBvbHlub21pYWxzIGlzIGEgY29tbW9uIGZhY3RvciB3aGljaCBoYXMgdGhlIGhpZ2hlc3QgZGVncmVlIChmb3IgeCwgaGVyZSk7IHlvdSBoYXZlIHRvIHdyaXRlIGEgcHJvZ3JhbSB3aGljaCBjYWxjdWxhdGVzIHRoZSBHQ00gb2YgdHdvIHBvbHlub21pYWxzLjxcL3A+XHJcblxyXG48cD5JdCBpcyBrbm93biB0aGF0IEdDTSBvZiBnaXZlbiB0d28gcG9seW5vbWlhbHMgaXMgdW5pcXVlIHdoZW4gY29uc3RhbnQgbXVsdGlwbGljYXRpb24gZmFjdG9yIGlzIGlnbm9yZWQuIFRoYXQgaXMsIHdoZW4gQyBhbmQgRCBhcmUgYm90aCBHQ00gb2Ygc29tZSB0d28gcG9seW5vbWlhbHMgQSBhbmQgQiwgcCZ0aW1lcztDID0gcSZ0aW1lcztEIGZvciBzb21lIG5vbnplcm8gaW50ZWdlcnMgcCBhbmQgcS48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlRoZSBpbnB1dCBjb25zaXN0cyBvZiBtdWx0aXBsZSBkYXRhc2V0cy4gRWFjaCBkYXRhc2V0IGNvbnN0aXR1dGVzIGEgcGFpciBvZiBpbnB1dCBsaW5lcywgZWFjaCByZXByZXNlbnRpbmcgYSBwb2x5bm9taWFsIGFzIGFuIGV4cHJlc3Npb24gZGVmaW5lZCBiZWxvdy48XC9wPlxyXG5cclxuPG9sPlxyXG5cdDxsaT5BIHByaW1hcnkgaXMgYSB2YXJpYWJsZSB4LCBhIHNlcXVlbmNlIG9mIGRpZ2l0cyAwICZuZGFzaDsgOSwgb3IgYW4gZXhwcmVzc2lvbiBlbmNsb3NlZCB3aXRoaW4gKCAmbWlkZG90OyAmbWlkZG90OyAmbWlkZG90OyApLiBFeGFtcGxlczogeCwgOTksICh4KzEpLjxcL2xpPlxyXG5cdDxsaT5BIGZhY3RvciBpcyBhIHByaW1hcnkgYnkgaXRzZWxmIG9yIGEgcHJpbWFyeSBmb2xsb3dlZCBieSBhbiBleHBvbmVudC4gQW4gZXhwb25lbnQgY29uc2lzdHMgb2YgYSBzeW1ib2wgXiBmb2xsb3dlZCBieSBhIHNlcXVlbmNlIG9mIGRpZ2l0cyAwICZuZGFzaDsgOS4gRXhhbXBsZXM6IHheMDUsIDFeMTUsICh4KzEpXjMuPFwvbGk+XHJcblx0PGxpPkEgdGVybSBjb25zaXN0cyBvZiBvbmUgb3IgbW9yZSBhZGpvaW5pbmcgZmFjdG9ycy4gRXhhbXBsZXM6IDR4LCAoeCsxKSh4LTIpLCAzKHgrMSleMi48XC9saT5cclxuXHQ8bGk+QW4gZXhwcmVzc2lvbiBpcyBvbmUgb3IgbW9yZSB0ZXJtcyBjb25uZWN0ZWQgYnkgZWl0aGVyICsgb3IgLS4gQWRkaXRpb25hbGx5LCB0aGUgZmlyc3QgdGVybSBvZiBhbiBleHByZXNzaW9uIG1heSBvcHRpb25hbGx5IGJlIHByZWNlZGVkIHdpdGggYSBtaW51cyBzaWduIC0uIEV4YW1wbGVzOiAteCsxLCAzKHgrMSleMi14KHgtMSleMi48XC9saT5cclxuPFwvb2w+XHJcblxyXG48cD5JbnRlZ2VyIGNvbnN0YW50cywgZXhwb25lbnRzLCBtdWx0aXBsaWNhdGlvbnMgKGFkam9pbmluZyksIGFkZGl0aW9ucyAoKykgYW5kIHN1YnRyYWN0aW9uc1wvbmVnYXRpb25zICgtKSBoYXZlIHRoZWlyIG9yZGluYXJ5IG1lYW5pbmdzLiBBIHNlcXVlbmNlIG9mIGRpZ2l0cyBpcyBhbHdheXMgaW50ZXJwcmV0ZWQgYXMgYW4gaW50ZWdlciBjb25zdGFudC4gRm9yIGV4YW1wbGUsIDk5IG1lYW5zIDk5LCBub3QgOSAmdGltZXM7IDkuPFwvcD5cclxuXHJcbjxwPkFueSBzdWJleHByZXNzaW9ucyBvZiB0aGUgaW5wdXQsIHdoZW4gZnVsbHkgZXhwYW5kZWQgbm9ybWFsaXplZCwgaGF2ZSBjb2VmZmljaWVudHMgbGVzcyB0aGFuIDEwMCBhbmQgZGVncmVlcyBvZiB4IGxlc3MgdGhhbiAxMC4gRGlnaXQgc2VxdWVuY2VzIGluIGV4cG9uZW50cyByZXByZXNlbnQgbm9uLXplcm8gdmFsdWVzLjxcL3A+XHJcblxyXG48cD5BbGwgdGhlIGRhdGFzZXRzIGFyZSBkZXNpZ25lZCBzbyB0aGF0IGEgc3RhbmRhcmQgYWxnb3JpdGhtIHdpdGggMzItYml0IHR3byZyc3F1bztzIGNvbXBsZW1lbnQgaW50ZWdlcnMgY2FuIHNvbHZlIHRoZSBwcm9ibGVtIHdpdGhvdXQgb3ZlcmZsb3dzLjxcL3A+XHJcblxyXG48cD5UaGUgZW5kIG9mIHRoZSBpbnB1dCBpcyBpbmRpY2F0ZWQgYnkgYSBsaW5lIGNvbnRhaW5pbmcgYSBwZXJpb2Q8XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5Gb3IgZWFjaCBvZiB0aGUgZGF0YXNldCwgb3V0cHV0IEdDTSBwb2x5bm9taWFsIGV4cHJlc3Npb24gaW4gYSBsaW5lLCBpbiB0aGUgZm9ybWF0IGJlbG93LjxcL3A+XHJcblxyXG48cHJlPlxyXG5jPHN1Yj4wPFwvc3ViPnhecDxzdWI+MDxcL3N1Yj4mcGx1c21uO2M8c3ViPjE8XC9zdWI+eF5wPHN1Yj4xPFwvc3ViPi4uLiZwbHVzbW47YzxzdWI+bjxcL3N1Yj54XnA8c3ViPm48XC9zdWI+PFwvcHJlPlxyXG5cclxuPHA+V2hlcmUgYzxzdWI+aTxcL3N1Yj4gYW5kIHA8c3ViPmk8XC9zdWI+IChpID0gMCwgLiAuIC4gLCBuKSBhcmUgcG9zaXRpdmUgaW50ZWdlcnMgd2l0aCBwPHN1Yj4wPFwvc3ViPiAmZ3Q7IHA8c3ViPjE8XC9zdWI+ICZndDsgJm1pZGRvdDsgJm1pZGRvdDsgJm1pZGRvdDsgJmd0OyBwPHN1Yj5uPFwvc3ViPiwgYW5kIHRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvciBvZiB7YzxzdWI+aTxcL3N1Yj58IGkgPSAwOyAmbWlkZG90OyAmbWlkZG90OyAmbWlkZG90OyA7IG59IGlzIDEuPFwvcD5cclxuXHJcbjxwPkFkZGl0aW9uYWxseTo8XC9wPlxyXG5cclxuPG9sPlxyXG5cdDxsaT5XaGVuIGM8c3ViPmk8XC9zdWI+IGlzIGVxdWFsIHRvIDEsIGl0IHNob3VsZCBiZSBvbWl0dGVkIHVubGVzcyBjb3JyZXNwb25kaW5nIHA8c3ViPmk8XC9zdWI+IGlzIDAsPFwvbGk+XHJcblx0PGxpPnheMCBzaG91bGQgYmUgb21pdHRlZCBhcyBhIHdob2xlLCBhbmQ8XC9saT5cclxuXHQ8bGk+eF4xIHNob3VsZCBiZSB3cml0dGVuIGFzIHg8XC9saT5cclxuPFwvb2w+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjEiLCJwcm9ibGVtX2xhbmdfY29kZSI6Ilx1YzYwMVx1YzViNCJ9XQ==