시간 제한메모리 제한제출정답맞힌 사람정답 비율
6 초 256 MB79243193571266020.764%

문제

네 개의 명령어 D, S, L, R 을 이용하는 간단한 계산기가 있다. 이 계산기에는 레지스터가 하나 있는데, 이 레지스터에는 0 이상 10,000 미만의 십진수를 저장할 수 있다. 각 명령어는 이 레지스터에 저장된 n을 다음과 같이 변환한다. n의 네 자릿수를 d1, d2, d3, d4라고 하자(즉 n = ((d1 × 10 + d2) × 10 + d3) × 10 + d4라고 하자)

  1. D: D 는 n을 두 배로 바꾼다. 결과 값이 9999 보다 큰 경우에는 10000 으로 나눈 나머지를 취한다. 그 결과 값(2n mod 10000)을 레지스터에 저장한다.
  2. S: S 는 n에서 1 을 뺀 결과 n-1을 레지스터에 저장한다. n이 0 이라면 9999 가 대신 레지스터에 저장된다.
  3. L: L 은 n의 각 자릿수를 왼편으로 회전시켜 그 결과를 레지스터에 저장한다. 이 연산이 끝나면 레지스터에 저장된 네 자릿수는 왼편부터 d2, d3, d4, d1이 된다.
  4. R: R 은 n의 각 자릿수를 오른편으로 회전시켜 그 결과를 레지스터에 저장한다. 이 연산이 끝나면 레지스터에 저장된 네 자릿수는 왼편부터 d4, d1, d2, d3이 된다.

위에서 언급한 것처럼, L 과 R 명령어는 십진 자릿수를 가정하고 연산을 수행한다. 예를 들어서 n = 1234 라면 여기에 L 을 적용하면 2341 이 되고 R 을 적용하면 4123 이 된다.

여러분이 작성할 프로그램은 주어진 서로 다른 두 정수 A와 B(A ≠ B)에 대하여 A를 B로 바꾸는 최소한의 명령어를 생성하는 프로그램이다. 예를 들어서 A = 1234, B = 3412 라면 다음과 같이 두 개의 명령어를 적용하면 A를 B로 변환할 수 있다.

1234 →L 2341 →L 3412
1234 →R 4123 →R 3412

따라서 여러분의 프로그램은 이 경우에 LL 이나 RR 을 출력해야 한다.

n의 자릿수로 0 이 포함된 경우에 주의해야 한다. 예를 들어서 1000 에 L 을 적용하면 0001 이 되므로 결과는 1 이 된다. 그러나 R 을 적용하면 0100 이 되므로 결과는 100 이 된다.

입력

프로그램 입력은 T 개의 테스트 케이스로 구성된다. 테스트 케이스 개수 T 는 입력의 첫 줄에 주어진다. 각 테스트 케이스로는 두 개의 정수 A와 B(A ≠ B)가 공백으로 분리되어 차례로 주어지는데 A는 레지스터의 초기 값을 나타내고 B는 최종 값을 나타낸다. A 와 B는 모두 0 이상 10,000 미만이다.

출력

A에서 B로 변환하기 위해 필요한 최소한의 명령어 나열을 출력한다. 가능한 명령어 나열이 여러가지면, 아무거나 출력한다.

예제 입력 1

3
1234 3412
1000 1
1 16

예제 출력 1

LL
L
DDDD
W3sicHJvYmxlbV9pZCI6IjkwMTkiLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJEU0xSIiwiZGVzY3JpcHRpb24iOiI8cD5cdWIxMjQgXHVhYzFjXHVjNzU4IFx1YmE4NVx1YjgzOVx1YzViNCBELCBTLCBMLCBSIFx1Yzc0NCBcdWM3NzRcdWM2YTlcdWQ1NThcdWIyOTQgXHVhYzA0XHViMmU4XHVkNTVjIFx1YWNjNFx1YzBiMFx1YWUzMFx1YWMwMCBcdWM3ODhcdWIyZTQuIFx1Yzc3NCBcdWFjYzRcdWMwYjBcdWFlMzBcdWM1ZDBcdWIyOTQgXHViODA4XHVjOWMwXHVjMmE0XHVkMTMwXHVhYzAwIFx1ZDU1OFx1YjA5OCBcdWM3ODhcdWIyOTRcdWIzNzAsIFx1Yzc3NCBcdWI4MDhcdWM5YzBcdWMyYTRcdWQxMzBcdWM1ZDBcdWIyOTQgMCBcdWM3NzRcdWMwYzEgMTAsMDAwIFx1YmJmOFx1YjljY1x1Yzc1OCBcdWMyZWRcdWM5YzRcdWMyMThcdWI5N2MgXHVjODAwXHVjN2E1XHVkNTYwIFx1YzIxOCBcdWM3ODhcdWIyZTQuIFx1YWMwMSBcdWJhODVcdWI4MzlcdWM1YjRcdWIyOTQgXHVjNzc0IFx1YjgwOFx1YzljMFx1YzJhNFx1ZDEzMFx1YzVkMCBcdWM4MDBcdWM3YTVcdWI0MWMgblx1Yzc0NCBcdWIyZTRcdWM3NGNcdWFjZmMgXHVhYzE5XHVjNzc0IFx1YmNjMFx1ZDY1OFx1ZDU1Y1x1YjJlNC4gblx1Yzc1OCBcdWIxMjQgXHVjNzkwXHViOWJmXHVjMjE4XHViOTdjIGQ8c3ViPjE8XC9zdWI+LCBkPHN1Yj4yPFwvc3ViPiwgZDxzdWI+MzxcL3N1Yj4sIGQ8c3ViPjQ8XC9zdWI+XHViNzdjXHVhY2UwIFx1ZDU1OFx1Yzc5MChcdWM5ODkgbiA9ICgoZDxzdWI+MTxcL3N1Yj4gJnRpbWVzOyAxMCArIGQ8c3ViPjI8XC9zdWI+KSAmdGltZXM7IDEwICsgZDxzdWI+MzxcL3N1Yj4pICZ0aW1lczsgMTAgKyBkPHN1Yj40PFwvc3ViPlx1Yjc3Y1x1YWNlMCBcdWQ1NThcdWM3OTApPFwvcD5cclxuXHJcbjxvbD5cclxuXHQ8bGk+RDogRCBcdWIyOTQgblx1Yzc0NCBcdWI0NTAgXHViYzMwXHViODVjIFx1YmMxNFx1YWZiY1x1YjJlNC4gXHVhY2IwXHVhY2ZjIFx1YWMxMlx1Yzc3NCA5OTk5IFx1YmNmNFx1YjJlNCBcdWQwNzAgXHVhY2JkXHVjNmIwXHVjNWQwXHViMjk0IDEwMDAwIFx1YzczY1x1Yjg1YyBcdWIwOThcdWIyMDggXHViMDk4XHViYTM4XHVjOWMwXHViOTdjIFx1Y2RlOFx1ZDU1Y1x1YjJlNC4gXHVhZGY4IFx1YWNiMFx1YWNmYyBcdWFjMTIoMm4gbW9kIDEwMDAwKVx1Yzc0NCBcdWI4MDhcdWM5YzBcdWMyYTRcdWQxMzBcdWM1ZDAgXHVjODAwXHVjN2E1XHVkNTVjXHViMmU0LjxcL2xpPlxyXG5cdDxsaT5TOiBTIFx1YjI5NCBuXHVjNWQwXHVjMTFjIDEgXHVjNzQ0IFx1YmU4MCBcdWFjYjBcdWFjZmMgbi0xXHVjNzQ0IFx1YjgwOFx1YzljMFx1YzJhNFx1ZDEzMFx1YzVkMCBcdWM4MDBcdWM3YTVcdWQ1NWNcdWIyZTQuIG5cdWM3NzQgMCBcdWM3NzRcdWI3N2NcdWJhNzQgOTk5OSBcdWFjMDAgXHViMzAwXHVjMmUwIFx1YjgwOFx1YzljMFx1YzJhNFx1ZDEzMFx1YzVkMCBcdWM4MDBcdWM3YTVcdWI0MWNcdWIyZTQuPFwvbGk+XHJcblx0PGxpPkw6IEwgXHVjNzQwIG5cdWM3NTggXHVhYzAxIFx1Yzc5MFx1YjliZlx1YzIxOFx1Yjk3YyBcdWM2N2NcdWQzYjhcdWM3M2NcdWI4NWMgXHVkNjhjXHVjODA0XHVjMmRjXHVjZjFjIFx1YWRmOCBcdWFjYjBcdWFjZmNcdWI5N2MgXHViODA4XHVjOWMwXHVjMmE0XHVkMTMwXHVjNWQwIFx1YzgwMFx1YzdhNVx1ZDU1Y1x1YjJlNC4gXHVjNzc0IFx1YzVmMFx1YzBiMFx1Yzc3NCBcdWIwNWRcdWIwOThcdWJhNzQgXHViODA4XHVjOWMwXHVjMmE0XHVkMTMwXHVjNWQwIFx1YzgwMFx1YzdhNVx1YjQxYyBcdWIxMjQgXHVjNzkwXHViOWJmXHVjMjE4XHViMjk0IFx1YzY3Y1x1ZDNiOFx1YmQ4MFx1ZDEzMCBkPHN1Yj4yPFwvc3ViPiwgZDxzdWI+MzxcL3N1Yj4sIGQ8c3ViPjQ8XC9zdWI+LCBkPHN1Yj4xPFwvc3ViPlx1Yzc3NCBcdWI0MWNcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlI6IFIgXHVjNzQwIG5cdWM3NTggXHVhYzAxIFx1Yzc5MFx1YjliZlx1YzIxOFx1Yjk3YyBcdWM2MjRcdWI5NzhcdWQzYjhcdWM3M2NcdWI4NWMgXHVkNjhjXHVjODA0XHVjMmRjXHVjZjFjIFx1YWRmOCBcdWFjYjBcdWFjZmNcdWI5N2MgXHViODA4XHVjOWMwXHVjMmE0XHVkMTMwXHVjNWQwIFx1YzgwMFx1YzdhNVx1ZDU1Y1x1YjJlNC4gXHVjNzc0IFx1YzVmMFx1YzBiMFx1Yzc3NCBcdWIwNWRcdWIwOThcdWJhNzQgXHViODA4XHVjOWMwXHVjMmE0XHVkMTMwXHVjNWQwIFx1YzgwMFx1YzdhNVx1YjQxYyBcdWIxMjQgXHVjNzkwXHViOWJmXHVjMjE4XHViMjk0IFx1YzY3Y1x1ZDNiOFx1YmQ4MFx1ZDEzMCBkPHN1Yj40PFwvc3ViPiwgZDxzdWI+MTxcL3N1Yj4sIGQ8c3ViPjI8XC9zdWI+LCBkPHN1Yj4zPFwvc3ViPlx1Yzc3NCBcdWI0MWNcdWIyZTQuPFwvbGk+XHJcbjxcL29sPlxyXG5cclxuPHA+XHVjNzA0XHVjNWQwXHVjMTFjIFx1YzViOFx1YWUwOVx1ZDU1YyBcdWFjODNcdWNjOThcdWI3ZmMsIEwgXHVhY2ZjIFIgXHViYTg1XHViODM5XHVjNWI0XHViMjk0IFx1YzJlZFx1YzljNCBcdWM3OTBcdWI5YmZcdWMyMThcdWI5N2MgXHVhYzAwXHVjODE1XHVkNTU4XHVhY2UwIFx1YzVmMFx1YzBiMFx1Yzc0NCBcdWMyMThcdWQ1ODlcdWQ1NWNcdWIyZTQuIFx1YzYwOFx1Yjk3YyBcdWI0ZTRcdWM1YjRcdWMxMWMgbiA9IDEyMzQgXHViNzdjXHViYTc0IFx1YzVlY1x1YWUzMFx1YzVkMCBMIFx1Yzc0NCBcdWM4MDFcdWM2YTlcdWQ1NThcdWJhNzQgMjM0MSBcdWM3NzQgXHViNDE4XHVhY2UwIFIgXHVjNzQ0IFx1YzgwMVx1YzZhOVx1ZDU1OFx1YmE3NCA0MTIzIFx1Yzc3NCBcdWI0MWNcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YzVlY1x1YjdlY1x1YmQ4NFx1Yzc3NCBcdWM3OTFcdWMxMzFcdWQ1NjAgXHVkNTA0XHViODVjXHVhZGY4XHViN2E4XHVjNzQwIFx1YzhmY1x1YzViNFx1YzljNCBcdWMxMWNcdWI4NWMgXHViMmU0XHViOTc4IFx1YjQ1MCBcdWM4MTVcdWMyMTggQVx1YzY0MCBCKEEgJm5lOyBCKVx1YzVkMCBcdWIzMDBcdWQ1NThcdWM1ZWMgQVx1Yjk3YyBCXHViODVjIFx1YmMxNFx1YWZiOFx1YjI5NCBcdWNkNWNcdWMxOGNcdWQ1NWNcdWM3NTggXHViYTg1XHViODM5XHVjNWI0XHViOTdjIFx1YzBkZFx1YzEzMVx1ZDU1OFx1YjI5NCBcdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NzRcdWIyZTQuIFx1YzYwOFx1Yjk3YyBcdWI0ZTRcdWM1YjRcdWMxMWMgQSA9IDEyMzQsIEIgPSAzNDEyIFx1Yjc3Y1x1YmE3NCBcdWIyZTRcdWM3NGNcdWFjZmMgXHVhYzE5XHVjNzc0IFx1YjQ1MCBcdWFjMWNcdWM3NTggXHViYTg1XHViODM5XHVjNWI0XHViOTdjIFx1YzgwMVx1YzZhOVx1ZDU1OFx1YmE3NCBBXHViOTdjIEJcdWI4NWMgXHViY2MwXHVkNjU4XHVkNTYwIFx1YzIxOCBcdWM3ODhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPjEyMzQgJnJhcnI7PHN1Yj5MPFwvc3ViPiAyMzQxICZyYXJyOzxzdWI+TDxcL3N1Yj4gMzQxMjxiciBcLz5cclxuMTIzNCAmcmFycjs8c3ViPlI8XC9zdWI+IDQxMjMgJnJhcnI7PHN1Yj5SPFwvc3ViPiAzNDEyPFwvcD5cclxuXHJcbjxwPlx1YjUzMFx1Yjc3Y1x1YzExYyBcdWM1ZWNcdWI3ZWNcdWJkODRcdWM3NTggXHVkNTA0XHViODVjXHVhZGY4XHViN2E4XHVjNzQwIFx1Yzc3NCBcdWFjYmRcdWM2YjBcdWM1ZDAgTEwgXHVjNzc0XHViMDk4IFJSIFx1Yzc0NCBcdWNkOWNcdWI4MjVcdWQ1NzRcdWM1N2MgXHVkNTVjXHViMmU0LjxcL3A+XHJcblxyXG48cD5uXHVjNzU4IFx1Yzc5MFx1YjliZlx1YzIxOFx1Yjg1YyAwIFx1Yzc3NCBcdWQzZWNcdWQ1NjhcdWI0MWMgXHVhY2JkXHVjNmIwXHVjNWQwIFx1YzhmY1x1Yzc1OFx1ZDU3NFx1YzU3YyBcdWQ1NWNcdWIyZTQuIFx1YzYwOFx1Yjk3YyBcdWI0ZTRcdWM1YjRcdWMxMWMgMTAwMCBcdWM1ZDAgTCBcdWM3NDQgXHVjODAxXHVjNmE5XHVkNTU4XHViYTc0IDAwMDEgXHVjNzc0IFx1YjQxOFx1YmJjMFx1Yjg1YyBcdWFjYjBcdWFjZmNcdWIyOTQgMSBcdWM3NzQgXHViNDFjXHViMmU0LiBcdWFkZjhcdWI3ZWNcdWIwOTggUiBcdWM3NDQgXHVjODAxXHVjNmE5XHVkNTU4XHViYTc0IDAxMDAgXHVjNzc0IFx1YjQxOFx1YmJjMFx1Yjg1YyBcdWFjYjBcdWFjZmNcdWIyOTQgMTAwIFx1Yzc3NCBcdWI0MWNcdWIyZTQuPFwvcD5cclxuIiwiaW5wdXQiOiI8cD5cdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YTggXHVjNzg1XHViODI1XHVjNzQwIFQgXHVhYzFjXHVjNzU4IFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWI4NWMgXHVhZDZjXHVjMTMxXHViNDFjXHViMmU0LiBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0IFx1YWMxY1x1YzIxOCBUIFx1YjI5NCBcdWM3ODVcdWI4MjVcdWM3NTggXHVjY2FiIFx1YzkwNFx1YzVkMCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuIFx1YWMwMSBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0XHViODVjXHViMjk0IFx1YjQ1MCBcdWFjMWNcdWM3NTggXHVjODE1XHVjMjE4IEFcdWM2NDAgQihBICZuZTsgQilcdWFjMDAgXHVhY2Y1XHViYzMxXHVjNzNjXHViODVjIFx1YmQ4NFx1YjlhY1x1YjQxOFx1YzViNCBcdWNjMjhcdWI4NDBcdWI4NWMgXHVjOGZjXHVjNWI0XHVjOWMwXHViMjk0XHViMzcwIEFcdWIyOTQgXHViODA4XHVjOWMwXHVjMmE0XHVkMTMwXHVjNzU4IFx1Y2QwOFx1YWUzMCBcdWFjMTJcdWM3NDQgXHViMDk4XHVkMGMwXHViMGI0XHVhY2UwIEJcdWIyOTQgXHVjZDVjXHVjODg1IFx1YWMxMlx1Yzc0NCBcdWIwOThcdWQwYzBcdWIwYjhcdWIyZTQuIEEgXHVjNjQwIEJcdWIyOTQgXHViYWE4XHViNDUwIDAgXHVjNzc0XHVjMGMxIDEwLDAwMCBcdWJiZjhcdWI5Y2NcdWM3NzRcdWIyZTQuPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+QVx1YzVkMFx1YzExYyBCXHViODVjIFx1YmNjMFx1ZDY1OFx1ZDU1OFx1YWUzMCBcdWM3MDRcdWQ1NzQgXHVkNTQ0XHVjNjk0XHVkNTVjIFx1Y2Q1Y1x1YzE4Y1x1ZDU1Y1x1Yzc1OCBcdWJhODVcdWI4MzlcdWM1YjQgXHViMDk4XHVjNWY0XHVjNzQ0IFx1Y2Q5Y1x1YjgyNVx1ZDU1Y1x1YjJlNC4gXHVhYzAwXHViMmE1XHVkNTVjIFx1YmE4NVx1YjgzOVx1YzViNCBcdWIwOThcdWM1ZjRcdWM3NzQgXHVjNWVjXHViN2VjXHVhYzAwXHVjOWMwXHViYTc0LCBcdWM1NDRcdWJiMzRcdWFjNzBcdWIwOTggXHVjZDljXHViODI1XHVkNTVjXHViMmU0LjxcL3A+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjAiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IktvcmVhbiJ9LHsicHJvYmxlbV9pZCI6IjkwMTkiLCJwcm9ibGVtX2xhbmciOiIxIiwidGl0bGUiOiJEU0xSIiwiZGVzY3JpcHRpb24iOiI8cD5IZXJlIGlzIGEgc2ltcGxlIGNhbGN1bGF0b3IgcHJvdmlkaW5nIG9ubHkgZm91ciBjb21tYW5kcywgRCwgUywgTCwgYW5kIFIuIFRoaXMgY2FsY3VsYXRvciBoYXMgb25seSBvbmUgcmVnaXN0ZXIgZm9yIHN0b3JpbmcgYSBub24tbmVnYXRpdmUgaW50ZWdlciBvZiBmb3VyIGRlY2ltYWwgZGlnaXRzLiBFYWNoIGNvbW1hbmQgbW9kaWZpZXMgdGhlIGludGVnZXIgbiBzdG9yZWQgaW4gdGhlIHJlZ2lzdGVyIGFzIGZvbGxvd3MuIExldCB1cyBhc3N1bWUgdGhlIGZvdXIgZGVjaW1hbCBkaWdpdHMgb2YgbiBmcm9tIGxlZnQgdG8gcmlnaHQgYXJlIGQ8c3ViPjE8XC9zdWI+LCBkPHN1Yj4yPFwvc3ViPiwgZDxzdWI+MzxcL3N1Yj4sIGQ8c3ViPjQ8XC9zdWI+IGFuZCAoaS5lLiBuID0gKChkPHN1Yj4xPFwvc3ViPiZuYnNwOyZ0aW1lczsgMTAgKyBkPHN1Yj4yPFwvc3ViPikgJnRpbWVzOyAxMCArIGQ8c3ViPjM8XC9zdWI+KSAmdGltZXM7IDEwICsgZDxzdWI+NDxcL3N1Yj4pPFwvcD5cclxuXHJcbjxwPkQ6IEQgZG91YmxlcyB1cCBuLiBJZiB0aGUgcmVzdWx0IGlzIGdyZWF0ZXIgdGhhbiA5OTk5LCBtb2R1bG8gMTAwMDAgaXMgdGFrZW4uIEFzIGEgcmVzdWx0LCB0aGUgbmV3IHZhbHVlICgybiBtb2QgMTAwMDApIGlzIHN0b3JlZCB0byB0aGUgcmVnaXN0ZXIuPGJyIFwvPlxyXG5TOiBTIHN1YnRyYWN0cyBvbmUgZnJvbSBuIGFuZCBzdG9yZXMgdGhlIHJlc3VsdCBuLTEgdG8gdGhlIHJlZ2lzdGVyLiBJZiBuIGlzIHplcm8sIDk5OTkgaXMgc3RvcmVkIHRvIHRoZSByZWdpc3RlciBpbnN0ZWFkLjxiciBcLz5cclxuTDogTCByb3RhdGVzIGVhY2ggb2YgZm91ciBkaWdpdHMgb2YgbiB0byB0aGUgbGVmdCBhbmQgc3RvcmVzIHRoZSByZXN1bHQgdG8gdGhlIHJlZ2lzdGVyLiBBZnRlciB0aGlzIG9wZXJhdGlvbiwgdGhlIGZvdXIgZGlnaXRzIG9mIHRoZSB2YWx1ZSBvZiB0aGUgcmVnaXN0ZXIgZnJvbSBsZWZ0IHRvIHJpZ2h0IGFyZSBkPHN1Yj4yPFwvc3ViPiwgZDxzdWI+MzxcL3N1Yj4sIGQ8c3ViPjQ8XC9zdWI+LCBhbmQgZDxzdWI+MTxcL3N1Yj4uPGJyIFwvPlxyXG5SOiBSIHJvdGF0ZXMgZWFjaCBvZiBmb3VyIGRpZ2l0cyBvZiBuIHRvIHRoZSByaWdodCBhbmQgc3RvcmVzIHRoZSByZXN1bHQgdG8gdGhlIHJlZ2lzdGVyLiBBZnRlciB0aGlzIG9wZXJhdGlvbiwgdGhlIGZvdXIgZGlnaXRzIG9mIHRoZSB2YWx1ZSBvZiB0aGUgcmVnaXN0ZXIgZnJvbSBsZWZ0IHRvIHJpZ2h0IGFyZSBkPHN1Yj40PFwvc3ViPiwgZDxzdWI+MTxcL3N1Yj4sIGQ8c3ViPjI8XC9zdWI+LCBhbmQgZDxzdWI+MzxcL3N1Yj4uPFwvcD5cclxuXHJcbjxwPkFzIG5vdGVkIGFib3ZlLCBMIGFuZCBSIGNvbW1hbmRzIGFzc3VtZSB0aGUgZGVjaW1hbCByZXByZXNlbnRhdGlvbi4gRm9yIGV4YW1wbGUsIGlmIG4gPSAxMjM0LCBhcHBseWluZyBMIHJlc3VsdHMgaW4gMjM0MSBhbmQgYXBwbHlpbmcgUiByZXN1bHRzIGluIDQxMjMgdG8gYmUgc3RvcmVkIGluIHRoZSByZWdpc3Rlci48XC9wPlxyXG5cclxuPHA+R2l2ZW4gdHdvIGRpZmZlcmVudCBpbnRlZ2VycyBBIGFuZCBCIChBICZuZTsgQiksIHlvdSBhcmUgdG8gd3JpdGUgYSBwcm9ncmFtIHRvIGdlbmVyYXRlIGEgbWluaW1hbCBzZXF1ZW5jZSBvZiBjb21tYW5kcyBjaGFuZ2luZyB0aGUgcmVnaXN0ZXIgY29udGVudHMgZnJvbSBBIHRvIEIuIEZvciBpbnN0YW5jZSwgaWYgQSA9IDEyMzQgYW5kIEIgPSAzNDEyLCBhcHBseWluZyB0aGUgZm9sbG93aW5nIHR3byBzZXF1ZW5jZXMgb2YgY29tbWFuZHMgaXMgY2hhbmdpbmcgdGhlIHJlZ2lzdGVyIGNvbnRlbnQgZnJvbSBBIHRvIEIuPFwvcD5cclxuXHJcbjxwPjEyMzQgJnJhcnI7PHN1Yj5MPFwvc3ViPiZuYnNwOzIzNDEgJnJhcnI7PHN1Yj5MPFwvc3ViPiZuYnNwOzM0MTI8YnIgXC8+XHJcbjEyMzQgJnJhcnI7PHN1Yj5SPFwvc3ViPiZuYnNwOzQxMjMgJnJhcnI7PHN1Yj5SPFwvc3ViPiZuYnNwOzM0MTI8XC9wPlxyXG5cclxuPHA+VGhlcmVmb3JlLCB5b3VyIHByb2dyYW0gc2hvdWxkIHByaW50IExMIG9yIFJSIGFzIGFuIG91dHB1dCBmb3IgdGhlIGFib3ZlIGlucHV0LjxcL3A+XHJcblxyXG48cD5CZXdhcmUgdGhlIGNhc2VzIHdoZXJlIG4gY29udGFpbnMgMCBhcyBhIGRlY2ltYWwgZGlnaXQuIEZvciBpbnN0YW5jZSwgYXBwbHlpbmcgTCB0byAxMDAwIHByb2R1Y2VzIDEgc2luY2Ugcm90YXRpbmcgMTAwMCB0byB0aGUgbGVmdCByZXN1bHRzIGluIDAwMDEuIEJ1dCwgYXBwbHlpbmcgUiB0byAxMDAwIHByb2R1Y2VzIDEwMCBzaW5jZSByb3RhdGluZyAxMDAwIHRvIHRoZSByaWdodCByZXN1bHRzIGluIDAxMDAuJm5ic3A7PFwvcD5cclxuIiwiaW5wdXQiOiI8cD5Zb3VyIHByb2dyYW0gaXMgdG8gcmVhZCB0aGUgaW5wdXQgZnJvbSBzdGFuZGFyZCBpbnB1dC4gVGhlIGlucHV0IGNvbnNpc3RzIG9mIFQgdGVzdCBjYXNlcy4gVGhlIG51bWJlciBvZiB0ZXN0IGNhc2VzIFQgaXMgZ2l2ZW4gaW4gdGhlIGZpcnN0IGxpbmUgb2YgdGhlIGlucHV0LiBFYWNoIHRlc3QgY2FzZSBjb25zaXN0cyBvZiB0d28gaW50ZWdlcnMsIEEgYW5kIEIgKEEgJm5lOyBCKSxzZXBhcmF0ZWQgYnkgYSBzcGFjZSwgd2hlcmUgdGhlIGZvcm1lciBkZW5vdGVzIHRoZSBpbml0aWFsIGNvbnRlbnQgb2YgdGhlIHJlZ2lzdGVyIGFuZCB0aGUgbGF0dGVyIGRlbm90ZXMgdGhlIHdhbnRlZCBmaW5hbCBjb250ZW50IG9mIGl0LiBCb3RoIEEgYW5kIEIgYXJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAwIGFuZCBsZXNzIHRoYW4gMTAsMDAwLjxcL3A+XHJcbiIsIm91dHB1dCI6IjxwPllvdXIgcHJvZ3JhbSBpcyB0byB3cml0ZSB0byBzdGFuZGFyZCBvdXRwdXQuIFByaW50IGEgbWluaW1hbCBzZXF1ZW5jZSBvZiBjb21tYW5kcyByZXF1aXJlZCB0byBjaGFuZ2UgdGhlIGNvbnRlbnQgb2YgdGhlIHJlZ2lzdGVyIGZyb20gQSB0byBCLjxcL3A+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjEiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IkVuZ2xpc2gifV0=