시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 128 MB 32 6 5 38.462%

문제

보섭이는 컴퓨터 구조와 논리 숙제로 작은 프로세서를 디자인했다. 이 프로세서는 총 N개의 레지스터를 가지고 있고, 1번부터 N번까지 번호가 매겨져 있다. 각 레지스터는 unsigned 32비트 정수를 일반적인 이진수 형태로 저장하고 있다. (0 ~ 232-1) 프로세서는 다음과 같은 두 가지 명령을 수행할 수 있다.

명령어 설명 예제
1 K M 레지스터 K에 저장되어 있는 비트를 M만큼 오른쪽으로 회전시킨다음 다시 K에 저장한다. 00000000000000000010001111111011 → (M = 1010) → 11111110110000000000000000001000
(10진법: 9211 → (M = 10) → 4273995784)
2 K L 레지스터 KL에 저장되어 있는 값을 XOR시킨 다음, 시스템 버스로 결과를 출력한다. 00000000000000000000001111000111 XOR 00000000000001111100000000000111 = 00000000000001111100001111000000
(10진법: 967 XOR 507911 = 508864)

보섭이는 이미 프로세서를 만들었다. 하지만, 가장 중요한 연산인 레지스터에 저장된 값을 읽는 명령을 만들지 않았다는 사실을 알게 되었다. 특정 레지스터에 저장된 값을 알기 위해서는 1번과 2번 연산을 적절히 수행해서 알아내는 방법밖에 없다. 보섭이가 명령을 수행시킨 순서와 2번 연산의 출력값이 주어졌을 때, 처음에 레지스터에 저장되어 있는 값을 구하는 프로그램을 작성하시오.

만약, 레지스터의 초기값이 여러 가지가 있다면, 사전순으로 가장 작은 것을 구한다.

입력

첫째 줄에 레지스터의 수 N과 프로세서가 수행한 명령의 수 E가 주어진다. (2 ≤ N ≤ 100,000, 1 ≤ E ≤ 100,000)

다음 줄에는 프로세서가 수행한 연산이 하나씩 주어진다. 모든 명령은 올바른 명령이고 1 ≤ K, L ≤ N, 0 ≤ M < 32를 만족한다. 2번 명령이 주어진 경우에 다음 줄에는 시스템 버스가 출력한 결과가 10진수로 주어진다.

출력

첫째 줄에 N개 레지스터의 초기값을 공백으로 구분하여 1번 레지스터부터 출력한다.

만약, 그러한 결과를 출력하는 레지스터의 초기값이 없는 경우에는 -1을 출력한다.

예제 입력 1

3 3
2 1 2
1
2 1 3
2
2 2 3
3

예제 출력 1

0 1 2
W3sicHJvYmxlbV9pZCI6IjMwODEiLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJcdWQ1MDRcdWI4NWNcdWMxMzhcdWMxMWMgXHViNTE0XHVjNzkwXHVjNzc4IiwiZGVzY3JpcHRpb24iOiI8cD5cdWJjZjRcdWMxMmRcdWM3NzRcdWIyOTQgXHVjZWY0XHVkNGU4XHVkMTMwIFx1YWQ2Y1x1Yzg3MFx1YzY0MCBcdWIxN2NcdWI5YWMgXHVjMjE5XHVjODFjXHViODVjIFx1Yzc5MVx1Yzc0MCBcdWQ1MDRcdWI4NWNcdWMxMzhcdWMxMWNcdWI5N2MgXHViNTE0XHVjNzkwXHVjNzc4XHVkNTg4XHViMmU0LiBcdWM3NzQgXHVkNTA0XHViODVjXHVjMTM4XHVjMTFjXHViMjk0IFx1Y2QxZCBOXHVhYzFjXHVjNzU4IFx1YjgwOFx1YzljMFx1YzJhNFx1ZDEzMFx1Yjk3YyBcdWFjMDBcdWM5YzBcdWFjZTAgXHVjNzg4XHVhY2UwLCAxXHViYzg4XHViZDgwXHVkMTMwIE5cdWJjODhcdWFlNGNcdWM5YzAgXHViYzg4XHVkNjM4XHVhYzAwIFx1YjllNFx1YWNhOFx1YzgzOCBcdWM3ODhcdWIyZTQuIFx1YWMwMSBcdWI4MDhcdWM5YzBcdWMyYTRcdWQxMzBcdWIyOTQgdW5zaWduZWQgMzJcdWJlNDRcdWQyYjggXHVjODE1XHVjMjE4XHViOTdjIFx1Yzc3Y1x1YmMxOFx1YzgwMVx1Yzc3OCBcdWM3NzRcdWM5YzRcdWMyMTggXHVkNjE1XHVkMGRjXHViODVjIFx1YzgwMFx1YzdhNVx1ZDU1OFx1YWNlMCBcdWM3ODhcdWIyZTQuICgwIH4gMjxzdXA+MzI8XC9zdXA+LTEpIFx1ZDUwNFx1Yjg1Y1x1YzEzOFx1YzExY1x1YjI5NCBcdWIyZTRcdWM3NGNcdWFjZmMgXHVhYzE5XHVjNzQwIFx1YjQ1MCBcdWFjMDBcdWM5YzAgXHViYTg1XHViODM5XHVjNzQ0IFx1YzIxOFx1ZDU4OVx1ZDU2MCBcdWMyMTggXHVjNzg4XHViMmU0LjxcL3A+XHJcblxyXG48dGFibGUgc3R5bGU9XCJ3aWR0aDoxMDAlXCIgY2xhc3MgPSBcInRhYmxlIHRhYmxlLWJvcmRlcmVkXCI+XHJcblx0PHRoZWFkPlxyXG5cdFx0PHRyPlxyXG5cdFx0XHQ8dGggc3R5bGU9XCJ3aWR0aDoxMCVcIj5cdWJhODVcdWI4MzlcdWM1YjQ8XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MjUlXCI+XHVjMTI0XHViYTg1PFwvdGg+XHJcblx0XHRcdDx0aCBzdHlsZT1cIndpZHRoOjY1JVwiPlx1YzYwOFx1YzgxYzxcL3RoPlxyXG5cdFx0PFwvdHI+XHJcblx0PFwvdGhlYWQ+XHJcblx0PHRib2R5PlxyXG5cdFx0PHRyPlxyXG5cdFx0XHQ8dGQ+MSA8c3Ryb25nPksgTTxcL3N0cm9uZz48XC90ZD5cclxuXHRcdFx0PHRkPlx1YjgwOFx1YzljMFx1YzJhNFx1ZDEzMCA8c3Ryb25nPks8XC9zdHJvbmc+XHVjNWQwIFx1YzgwMFx1YzdhNVx1YjQxOFx1YzViNCBcdWM3ODhcdWIyOTQgXHViZTQ0XHVkMmI4XHViOTdjIDxzdHJvbmc+TTxcL3N0cm9uZz5cdWI5Y2NcdWQwN2MgXHVjNjI0XHViOTc4XHVjYWJkXHVjNzNjXHViODVjIFx1ZDY4Y1x1YzgwNFx1YzJkY1x1ZDBhOFx1YjJlNFx1Yzc0YyBcdWIyZTRcdWMyZGMgPHN0cm9uZz5LPFwvc3Ryb25nPlx1YzVkMCBcdWM4MDBcdWM3YTVcdWQ1NWNcdWIyZTQuPFwvdGQ+XHJcblx0XHRcdDx0ZD4wMDAwMDAwMDAwMDAwMDAwMDAxMDAwMTExMTExMTAxMSAmcmFycjsgKDxzdHJvbmc+TTxcL3N0cm9uZz4gPSAxMDEwKSAmcmFycjsgMTExMTExMTAxMTAwMDAwMDAwMDAwMDAwMDAwMDEwMDA8YnIgXC8+XHJcblx0XHRcdCgxMFx1YzljNFx1YmM5NTogOTIxMSAmcmFycjsgKDxzdHJvbmc+TTxcL3N0cm9uZz4gPSAxMCkgJnJhcnI7IDQyNzM5OTU3ODQpPFwvdGQ+XHJcblx0XHQ8XC90cj5cclxuXHRcdDx0cj5cclxuXHRcdFx0PHRkPjIgPHN0cm9uZz4gSyBMPFwvc3Ryb25nPjxcL3RkPlxyXG5cdFx0XHQ8dGQ+XHViODA4XHVjOWMwXHVjMmE0XHVkMTMwIDxzdHJvbmc+SzxcL3N0cm9uZz5cdWM2NDAgPHN0cm9uZz5MPFwvc3Ryb25nPlx1YzVkMCBcdWM4MDBcdWM3YTVcdWI0MThcdWM1YjQgXHVjNzg4XHViMjk0IFx1YWMxMlx1Yzc0NCBYT1JcdWMyZGNcdWQwYTggXHViMmU0XHVjNzRjLCBcdWMyZGNcdWMyYTRcdWQxNWMgXHViYzg0XHVjMmE0XHViODVjIFx1YWNiMFx1YWNmY1x1Yjk3YyBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuPFwvdGQ+XHJcblx0XHRcdDx0ZD4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTExMTAwMDExMSBYT1IgMDAwMDAwMDAwMDAwMDExMTExMDAwMDAwMDAwMDAxMTEgPSAwMDAwMDAwMDAwMDAwMTExMTEwMDAwMTExMTAwMDAwMDxiciBcLz5cclxuXHRcdFx0KDEwXHVjOWM0XHViYzk1OiA5NjcgWE9SIDUwNzkxMSA9IDUwODg2NCk8XC90ZD5cclxuXHRcdDxcL3RyPlxyXG5cdDxcL3Rib2R5PlxyXG48XC90YWJsZT5cclxuXHJcbjxwPlx1YmNmNFx1YzEyZFx1Yzc3NFx1YjI5NCBcdWM3NzRcdWJiZjggXHVkNTA0XHViODVjXHVjMTM4XHVjMTFjXHViOTdjIFx1YjljY1x1YjRlNFx1YzVjOFx1YjJlNC4gXHVkNTU4XHVjOWMwXHViOWNjLCBcdWFjMDBcdWM3YTUgXHVjOTExXHVjNjk0XHVkNTVjIFx1YzVmMFx1YzBiMFx1Yzc3OCBcdWI4MDhcdWM5YzBcdWMyYTRcdWQxMzBcdWM1ZDAgXHVjODAwXHVjN2E1XHViNDFjIFx1YWMxMlx1Yzc0NCBcdWM3N2RcdWIyOTQgXHViYTg1XHViODM5XHVjNzQ0IFx1YjljY1x1YjRlNFx1YzljMCBcdWM1NGFcdWM1NThcdWIyZTRcdWIyOTQgXHVjMGFjXHVjMmU0XHVjNzQ0IFx1YzU0Y1x1YWM4YyBcdWI0MThcdWM1YzhcdWIyZTQuIFx1ZDJiOVx1YzgxNSBcdWI4MDhcdWM5YzBcdWMyYTRcdWQxMzBcdWM1ZDAgXHVjODAwXHVjN2E1XHViNDFjIFx1YWMxMlx1Yzc0NCBcdWM1NGNcdWFlMzAgXHVjNzA0XHVkNTc0XHVjMTFjXHViMjk0IDFcdWJjODhcdWFjZmMgMlx1YmM4OCBcdWM1ZjBcdWMwYjBcdWM3NDQgXHVjODAxXHVjODA4XHVkNzg4IFx1YzIxOFx1ZDU4OVx1ZDU3NFx1YzExYyBcdWM1NGNcdWM1NDRcdWIwYjRcdWIyOTQgXHViYzI5XHViYzk1XHViYzE2XHVjNWQwIFx1YzVjNlx1YjJlNC4gXHViY2Y0XHVjMTJkXHVjNzc0XHVhYzAwIFx1YmE4NVx1YjgzOVx1Yzc0NCBcdWMyMThcdWQ1ODlcdWMyZGNcdWQwYTggXHVjMjFjXHVjMTFjXHVjNjQwIDJcdWJjODggXHVjNWYwXHVjMGIwXHVjNzU4IFx1Y2Q5Y1x1YjgyNVx1YWMxMlx1Yzc3NCBcdWM4ZmNcdWM1YjRcdWM4NGNcdWM3NDQgXHViNTRjLCBcdWNjOThcdWM3NGNcdWM1ZDAgXHViODA4XHVjOWMwXHVjMmE0XHVkMTMwXHVjNWQwIFx1YzgwMFx1YzdhNVx1YjQxOFx1YzViNCBcdWM3ODhcdWIyOTQgXHVhYzEyXHVjNzQ0IFx1YWQ2Y1x1ZDU1OFx1YjI5NCBcdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NDQgXHVjNzkxXHVjMTMxXHVkNTU4XHVjMmRjXHVjNjI0LjxcL3A+XHJcblxyXG48cD5cdWI5Y2NcdWM1N2QsIFx1YjgwOFx1YzljMFx1YzJhNFx1ZDEzMFx1Yzc1OCBcdWNkMDhcdWFlMzBcdWFjMTJcdWM3NzQgXHVjNWVjXHViN2VjIFx1YWMwMFx1YzljMFx1YWMwMCBcdWM3ODhcdWIyZTRcdWJhNzQsIFx1YzBhY1x1YzgwNFx1YzIxY1x1YzczY1x1Yjg1YyBcdWFjMDBcdWM3YTUgXHVjNzkxXHVjNzQwIFx1YWM4M1x1Yzc0NCBcdWFkNmNcdWQ1NWNcdWIyZTQuPFwvcD5cclxuIiwiaW5wdXQiOiI8cD5cdWNjYWJcdWM5ZjggXHVjOTA0XHVjNWQwIFx1YjgwOFx1YzljMFx1YzJhNFx1ZDEzMFx1Yzc1OCBcdWMyMTggTlx1YWNmYyBcdWQ1MDRcdWI4NWNcdWMxMzhcdWMxMWNcdWFjMDAgXHVjMjE4XHVkNTg5XHVkNTVjIFx1YmE4NVx1YjgzOVx1Yzc1OCBcdWMyMTggRVx1YWMwMCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuICgyICZsZTsgTiAmbGU7IDEwMCwwMDAsIDEgJmxlOyBFICZsZTsgMTAwLDAwMCk8XC9wPlxyXG5cclxuPHA+XHViMmU0XHVjNzRjIFx1YzkwNFx1YzVkMFx1YjI5NCBcdWQ1MDRcdWI4NWNcdWMxMzhcdWMxMWNcdWFjMDAgXHVjMjE4XHVkNTg5XHVkNTVjIFx1YzVmMFx1YzBiMFx1Yzc3NCBcdWQ1NThcdWIwOThcdWM1MjkgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiBcdWJhYThcdWI0ZTAgXHViYTg1XHViODM5XHVjNzQwIFx1YzYyY1x1YmMxNFx1Yjk3OCBcdWJhODVcdWI4MzlcdWM3NzRcdWFjZTAgMSAmbGU7IEssIEwgJmxlOyBOLCAwICZsZTsgTSAmbHQ7IDMyXHViOTdjIFx1YjljY1x1Yzg3MVx1ZDU1Y1x1YjJlNC4gMlx1YmM4OCBcdWJhODVcdWI4MzlcdWM3NzQgXHVjOGZjXHVjNWI0XHVjOWM0IFx1YWNiZFx1YzZiMFx1YzVkMCBcdWIyZTRcdWM3NGMgXHVjOTA0XHVjNWQwXHViMjk0IFx1YzJkY1x1YzJhNFx1ZDE1YyBcdWJjODRcdWMyYTRcdWFjMDAgXHVjZDljXHViODI1XHVkNTVjIFx1YWNiMFx1YWNmY1x1YWMwMCAxMFx1YzljNFx1YzIxOFx1Yjg1YyBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+XHVjY2FiXHVjOWY4IFx1YzkwNFx1YzVkMCBOXHVhYzFjIFx1YjgwOFx1YzljMFx1YzJhNFx1ZDEzMFx1Yzc1OCBcdWNkMDhcdWFlMzBcdWFjMTJcdWM3NDQgXHVhY2Y1XHViYzMxXHVjNzNjXHViODVjIFx1YWQ2Y1x1YmQ4NFx1ZDU1OFx1YzVlYyAxXHViYzg4IFx1YjgwOFx1YzljMFx1YzJhNFx1ZDEzMFx1YmQ4MFx1ZDEzMCBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YjljY1x1YzU3ZCwgXHVhZGY4XHViN2VjXHVkNTVjIFx1YWNiMFx1YWNmY1x1Yjk3YyBcdWNkOWNcdWI4MjVcdWQ1NThcdWIyOTQgXHViODA4XHVjOWMwXHVjMmE0XHVkMTMwXHVjNzU4IFx1Y2QwOFx1YWUzMFx1YWMxMlx1Yzc3NCBcdWM1YzZcdWIyOTQgXHVhY2JkXHVjNmIwXHVjNWQwXHViMjk0IC0xXHVjNzQ0IFx1Y2Q5Y1x1YjgyNVx1ZDU1Y1x1YjJlNC48XC9wPlxyXG4iLCJoaW50IjoiIiwib3JpZ2luYWwiOiIwIiwiaHRtbF90aXRsZSI6IjAiLCJwcm9ibGVtX2xhbmdfY29kZSI6Ilx1ZDU1Y1x1YWQ2ZFx1YzViNCJ9LHsicHJvYmxlbV9pZCI6IjMwODEiLCJwcm9ibGVtX2xhbmciOiIxIiwidGl0bGUiOiJQUk9DRVNPUiIsImRlc2NyaXB0aW9uIjoiPHA+TWlya28gaGFzIHJlY2VpdmVkIGFuIGludGVyZXN0aW5nIGhvbWV3b3JrIGFzc2lnbm1lbnQ6IHRvIGRlc2lnbiBoaXMgb3duIGxpdHRsZSBwcm9jZXNzb3IgKE1pcmtvcHJvY2Vzc29yKS4gVGhlIHByb2Nlc3NvciBoYXMgTiByZWdpc3RlcnMgd2l0aCBpbmRpY2VzIGZyb20gMSB0byBOLCBhbmQgZWFjaCByZWdpc3RlciBob2xkcyBvbmUgdW5zaWduZWQgMzItYml0IGludGVnZXIgaW4gdGhlIHVzdWFsIGJpbmFyeSBmb3JtYXQgKHRoZSBwb3NzaWJsZSB2YWx1ZXMgcmFuZ2UgZnJvbSAwIHRvIDI8c3VwPjMyPFwvc3VwPiAtIDEpLjxcL3A+XHJcblxyXG48cD5UaGUgcHJvY2Vzc29yIGlzIGNhcGFibGUgb2YgZXhlY3V0aW5nIHRoZSBmb2xsb3dpbmcgaW5zdHJ1Y3Rpb24gdHlwZXM6PFwvcD5cclxuXHJcbjx0YWJsZSBjbGFzcz1cInRhYmxlIHRhYmxlLWJvcmRlcmVkXCIgc3R5bGU9XCJ3aWR0aDoxMDAlXCI+XHJcblx0PHRoZWFkPlxyXG5cdFx0PHRyPlxyXG5cdFx0XHQ8dGggc3R5bGU9XCJ3aWR0aDoxMCVcIj5JbnN0cnVjdGlvbiB0eXBlPFwvdGg+XHJcblx0XHRcdDx0aCBzdHlsZT1cIndpZHRoOjI1JVwiPkRlc2NyaXB0aW9uPFwvdGg+XHJcblx0XHRcdDx0aCBzdHlsZT1cIndpZHRoOjY1JVwiPkV4YW1wbGU8XC90aD5cclxuXHRcdDxcL3RyPlxyXG5cdDxcL3RoZWFkPlxyXG5cdDx0Ym9keT5cclxuXHRcdDx0cj5cclxuXHRcdFx0PHRkPjEgPHN0cm9uZz5LIE08XC9zdHJvbmc+PFwvdGQ+XHJcblx0XHRcdDx0ZD5Sb3RhdGUgdGhlIGJpdHMgb2YgcmVnaXN0ZXIgSyBieSBNIHBvc2l0aW9ucyB0byB0aGUgcmlnaHQ7IHdyaXRlIHRoZSByZXN1bHQgYmFjayB0byByZWdpc3RlciBLLjxcL3RkPlxyXG5cdFx0XHQ8dGQ+MDAwMDAwMDAwMDAwMDAwMDAwMTAwMDExMTExMTEwMTEgJnJhcnI7ICg8c3Ryb25nPk08XC9zdHJvbmc+ID0gMTAxMCkgJnJhcnI7IDExMTExMTEwMTEwMDAwMDAwMDAwMDAwMDAwMDAxMDAwPGJyIFwvPlxyXG5cdFx0XHQoaW4gYmFzZSAxMDogOTIxMSAmcmFycjsgKDxzdHJvbmc+TTxcL3N0cm9uZz4gPSAxMCkgJnJhcnI7IDQyNzM5OTU3ODQpPFwvdGQ+XHJcblx0XHQ8XC90cj5cclxuXHRcdDx0cj5cclxuXHRcdFx0PHRkPjIgPHN0cm9uZz4gSyBMPFwvc3Ryb25nPjxcL3RkPlxyXG5cdFx0XHQ8dGQ+Q29tcHV0ZSB0aGUgYml0d2lzZSBYT1Igb2YgcmVnaXN0ZXJzIEsgYW5kIEw7IG91dHB1dCB0aGUgcmVzdWx0IHRvIHRoZSBzeXN0ZW0gYnVzLjxcL3RkPlxyXG5cdFx0XHQ8dGQ+MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDExMTEwMDAxMTEgWE9SIDAwMDAwMDAwMDAwMDAxMTExMTAwMDAwMDAwMDAwMTExID0gMDAwMDAwMDAwMDAwMDExMTExMDAwMDExMTEwMDAwMDA8YnIgXC8+XHJcblx0XHRcdChpbiBiYXNlIDEwOiA5NjcgWE9SIDUwNzkxMSA9IDUwODg2NCk8XC90ZD5cclxuXHRcdDxcL3RyPlxyXG5cdDxcL3Rib2R5PlxyXG48XC90YWJsZT5cclxuXHJcbjxwPk1pcmtvIGhhcyBhbHJlYWR5IGJ1aWx0IGEgbW9kZWwgb2YgdGhlIHByb2Nlc3NvciwgYW5kIG9ubHkgdGhlbiByZWFsaXplZCB0aGF0IGhlJiMzOTtkIGZvcmdvdHRlbiB0byBpbmNsdWRlIGFuIG9wZXJhdGlvbiB0byByZWFkIHRoZSBjb250ZW50cyBvZiBhIHJlZ2lzdGVyLiBOb3csIGhpcyBvbmx5IG9wdGlvbiBpcyB0byBleGVjdXRlIGEgbGFyZ2UgbnVtYmVyIG9mIHR5cGUgMSBhbmQgdHlwZSAyIGluc3RydWN0aW9ucyBhbmQgaW5mZXIgdGhlIHJlZ2lzdGVyIGNvbnRlbnRzIGZyb20gdGhlIHJlc3VsdHMuIEhhdmluZyBleGVjdXRlZCBhIHNlcXVlbmNlIG9mIGNvbW1hbmRzLCBoZSBoYXMgYXNrZWQgeW91IHRvIGhlbHAgaGltIGRlcml2ZSB0aGUgaW5pdGlhbCByZWdpc3RlciBjb250ZW50cyBjb25zaXN0ZW50IHdpdGggdGhlIG9idGFpbmVkIHJlc3VsdHMuPFwvcD5cclxuXHJcbjxwPklmIHRoZXJlIGFyZSBtdWx0aXBsZSBwb3NzaWJpbGl0aWVzIGZvciB0aGUgaW5pdGlhbCByZWdpc3RlciBzdGF0ZSBjb21iaW5hdGlvbiwgZmluZCB0aGUgbGV4aWNvZ3JhcGhpY2FsbHkgc21hbGxlc3Qgb25lLiAoSWYgdHdvIGNvbWJpbmF0aW9ucyBoYXZlIGVxdWFsIHZhbHVlcyBpbiB0aGUgZmlyc3QgSyAmbmRhc2g7IDEgcmVnaXN0ZXJzIGFuZCBkaWZmZXJlbnQgdmFsdWVzIGluIHJlZ2lzdGVyIEssIHRoZSBsZXhpY29ncmFwaGljYWxseSBzbWFsbGVyIGNvbWJpbmF0aW9uIGlzIHRoZSBvbmUgd2l0aCB0aGUgc21hbGxlciB2YWx1ZSBpbiByZWdpc3RlciBLLik8XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlRoZSBmaXJzdCBsaW5lIG9mIGlucHV0IGNvbnRhaW5zIHR3byBwb3NpdGl2ZSBpbnRlZ2VyczogTiAoMiAmbGU7IE4gJmxlOyAxMDAgMDAwKSwgdGhlIG51bWJlciBvZiByZWdpc3RlcnMsIGFuZCBFICgxICZsZTsgRSAmbGU7IDEwMCAwMDApLCB0aGUgbnVtYmVyIG9mIGV4ZWN1dGVkIGluc3RydWN0aW9ucy48XC9wPlxyXG5cclxuPHA+VGhlIHJlbWFpbmluZyBpbnB1dCBsaW5lcyBkZXNjcmliZSB0aGUgaW5zdHJ1Y3Rpb25zIGluIHRoZSBvcmRlciB0aGF0IHRoZXkgd2VyZSBleGVjdXRlZCBieSBNaXJrb3Byb2Nlc3NvciwgZm9ybWF0dGVkIGFzIGRlc2NyaWJlZCBpbiB0aGUgdGFibGUgYWJvdmUsIG9uZSBwZXIgbGluZS4gQWxsIGluc3RydWN0aW9ucyBhcmUgbGVnYWwgKHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBob2xkOiAxICZsZTsgSywgTCAmbGU7IE4sIDAgJmxlOyBNICZsdDsgMzIpLiBFYWNoIGluc3RydWN0aW9uIG9mIHR5cGUgMiBpcyBmb2xsb3dlZCBieSBhbm90aGVyIGxpbmUgY29udGFpbmluZyBhIHBvc2l0aXZlIGludGVnZXIgYmV0d2VlbiAwIGFuZCAyPHN1cD4zMjxcL3N1cD4gJm5kYXNoOyAxLCBpbmNsdXNpdmUgJm5kYXNoOyB0aGUgcmVzdWx0IG9mIHRoYXQgb3BlcmF0aW9uICh0aGUgYml0d2lzZSBYT1IgdmFsdWUpIGluIGJhc2UgMTAuPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+VGhlIGZpcnN0IGFuZCBvbmx5IGxpbmUgb2Ygb3V0cHV0IG11c3QgY29udGFpbiB0aGUgcmVxdWlyZWQgTiByZWdpc3RlciB2YWx1ZXMsIHNlcGFyYXRlZCBieSBzcGFjZXMuPFwvcD5cclxuXHJcbjxwPklmIHRoZXJlIGlzIG5vIHBvc3NpYmxlIGNvbWJpbmF0aW9uIG9mIGluaXRpYWwgdmFsdWVzIGNvbnNpc3RlbnQgd2l0aCBpbnB1dCwgb3V0cHV0IG9ubHkgdGhlIG51bWJlciAtMSwgdG8gbm90aWZ5IE1pcmtvIHRoYXQgaGlzIHByb2Nlc3NvciBoYXMgYSBidWcuPFwvcD5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMSIsImh0bWxfdGl0bGUiOiIwIiwicHJvYmxlbV9sYW5nX2NvZGUiOiJcdWM2MDFcdWM1YjQifV0=