İstek Okulları Belde Lise Makas
İstek Okulları Belde Lise Makas
Bu kategoride ürün bulunamadı.
1
SEÇİLEN: 2 ADET
TOPLAM: 1.224,00 TL
| Kategori | |
| Önerilen Adet | |
| Stok Durumu | Mevcut |
1
Kaç öğrenciye sipariş geçilecek?
Listedeki ürün adetleri girdiğiniz öğrenci sayısıyla çarpılarak sepete eklenecektir.
Sepete Ekleniyor...
Lütfen bekleyiniz
0 / 0
DQooZnVuY3Rpb24oKSB7DQogICAgdHJ5IHsNCiAgICAgICAgY29uc3QgYWt0aWZPa3VsQWRpID0gIsSwc3RlayBPa3VsbGFyxLEgQmVsZGUgTGlzZSBNYWth cyBLxLFydGFzaXllIMSwaHRpeWHDpyBMaXN0ZXNpIjsNCiAgICAgICAgY29uc3QgYWt0aWZPa3VsTGlua2kgPSB3aW5kb3cubG9jYXRpb24uaHJlZjsNCiAg ICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2theWl0bGlPa3VsQWRpJywgYWt0aWZPa3VsQWRpKTsNCiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0o J2theWl0bGlPa3VsTGlua2knLCBha3RpZk9rdWxMaW5raSk7DQogICAgfSBjYXRjaChlKSB7IGNvbnNvbGUud2FybigiTG9jYWwgc3RvcmFnZSBlcmnFn2lt IGhhdGFzxLEiLCBlKTsgfQ0KICAgIGNvbnN0IEtVUE9OID0gJyc7DQogICAgLy8gTWF2aUthbGVtIGxvZ29zdSAoZGF0YSBVUkkpIOKAlCBpbmRpcmlsZW4g bGlzdGVuaW4gYmHFn2zEscSfxLFuYSBnw7Ztw7xsw7xyIGtpDQogICAgLy8gZG9zeWEgaW50ZXJuZXRzaXogZGUga3VydW1zYWwgZ8O2csO8bnPDvG4uIExv Z28geW9rc2EgYm/FnyBzdHJpbmcgZ2VsaXIuDQogICAgY29uc3QgTUtfTE9HTyA9ICdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNV aEVVZ0FBQVVBQUFBQjRDQUlBQUFBTXJMeUpBQUFCS21sRFExQlRhMmxoQUFBb2tYMlF2VXJEWUJpRm42OFV4T0xQb0lPRFE4WXUybFRiVUVXSG1Ob2lPTFVW a2pxbGFSckVOZzFweE03TzZqVzRlUU1kdlFCSFFYQnlFTHdCY1hDdEprRlNrSGkrNWVGd2VOL3ZQWkJaQThqS01IQUR2MUUva0hTakxjMjlJUkJFTXEyUlI3 b0VmTDNFMmVlTmYzSnBtdS9hSXd2NEFBSmZOOW9ndXNDcUUvTTQ1RTdNMXlGZkJsNEE0aTVrdjlYUVFFeUF2RFBEblJtMlBEL012d0o3Zy82RmxmeWJCZHM5 YVFJNnNFNmRJVU1jK3RnVWFITE9HU1lGS2xSUXFhR2lja2dKalhMMEZMU0lkNUJSVU5tT09QYXJ5RlFwVXFNYzlobXZ2THFCL2RKME9uMUl2T05sbUxRZzk1 NTQrVjFZR3NQamJlSWxIWHVtYjBaVzltZGtwdGVEejN0WU5HRGxDWEtudjhXbTNDcjl1VlhpQ0JlTFRTUzJrQ21pZkFONVVFenVqUGxtakFBQUlBQkpSRUZV ZUp6c1hYZDhGTVhibjdMbFducENFZ0toUXdnZEZFR3Fvb0tDaWdJMjdMNzJocjFYVkJRNzlsNnhDeXFnb29oSVYwU2x0NFFBQ2VuMSt0M3V6UFArTWJ0N2V5 RlU0U2Rvbmc4ZmhidTkzWm5aK2M3enpQTjhuMmR3S0JRQmhCQkNHQ0ZBQ0JEQ0FBZ2pRQWlKTHdBaERBaGhCQUFJWXdUaTQyWnBsbWI1eHdWRE14NmJwVm1P V0pHYUFkd3N6WExrU3JNR2JwWm1PWUpGK3FjYjBDeW1BQURHKzdLZ1lvUUFZd1NBTWY3Zk5LMVpEbHRwMXNDSFVnQUFvWDFESlVJSUVPemhud2dKN0NJVHRI dERiek84L3d2U0RPQ0RJN0RYb2JTK0JJamhFT08vRHpQZzNHb0NhZ3JZR0dPSTRiNVovbFhTYkVML1hSR3d4U2FBd1B6VVVLRUNvdUpQa3ovbm5FZWpvRVc1 RnRWRElSWUk4R2lFYXhxUFJyZ1c1ZEVvQXNDVVlrb3hsVEFsUkZia3BCUXBJWkdvS2xFVXFqb3dJYnZlRTRtUUg4WkMvMXNOYTFiTC96SnAxc0Q3TDAwT21S Mng4WWdDaEZnd29EWFVhOTRHdmE0bVhGa1JyYW5TdlEyYXIwSDNOakMvWHc4R2VEREFnbjRXQ29HbUEyZkFHVEFPbkFrb1lrTE1oWUFnUW9paVVJZVR1dDNV NVpFU2t4elpMWjB0Y3gwdFd6bGE1cWlaTGRXTUZvVFNXRXM1dDVBY1cyNmFZZnh2a1dZQTc2dlk5Wmoxa2ZFQkpuWkk2TUZncUxRNFZMd2pVbG9jcml3UGw1 WkVhNnEwMmhyTjE4QkRJVDBVUUl3aFFBQWNJNFFFT0FuQldQd0ZJNFFOaERXR0dSajdZczRCT09JQW5BRUhRSUFSeHFvaXVUeEtXb1l6dDYybll4ZDNwNjRK WGZKZGJkdkhjTXM1SXNTK0lXK0c4YjlBbWdHOEY3RndHMmNlQXdnd0dCOGdGS2tzRDI0ckRCUnM4bTNlNk4reUlWeGF3dncrSG8wZ0RnZ2pqQW1tRkJGaUFS WFp2RkZ4MitOOUZHeHpaWUZvSmdCbndCZ3doZ0NJTEV2SmFZbmRlcVVOR3BiYzd4aDMrMDZZRUVBSUdNTm15NXUxOGI5QW1nSGN0TmpWbFBGMzRBZ1FvaFNi RjRUTFN3T0ZXM3diMXZnMnJRdHMyUmd1MjhsRFFRQWdrb3dsQ1ZOcVlzUEUvaTVEYlhKVHdYcVFBYTNkKzV5TXJTd0FtS3pXT0FSaUxINEt3SUhwUEJwRkND bnBHVWw5ajhrYWZXYnFnQ0dTMDJtSGNUT0dqM1JwQm5CanNjOXBjdytKTURGMmxTd1M4UmRzYXZoclJjT2Z2L3NMTmtUS3kxZ2dnQkJnV1NhU2pBbEYyRlRS VGQ1Wm9FNEFSc1I5RVVJSDZpSzJSNDROTTZFUkZERUdoRURYV1NRc3VkeUpQZnBrblRvdTY1UXppQ3h6eHJDNVhSZFd4bDdqVXMxeUdFb3pnQkdLOTBzWmtB QVE3bC94b2Vieit0YXZydjl6UmQzdnYvbzNydFc5RFFnQmtTUzhHOUNDWGQrYW9EMmsrTEFiK2RpTVAxdXJCaVlFR0dPUkNNWTRiZGdKYlM2N05ybG4zemhW TEJhVVpoZ2ZhZElNWUp2S0ZYL2ozUElrczBqWXQzNXQ3ZktGdGNzWCtUZHYwSDFlVENsVlZFUXBGbmdCaVBOdllmRWhGanZUZndvS0JwZ3R5OXcwdVRFbWdF QVArTlhVOUp5ekw4cTk1Q3JKNmVKTXg0UUs2RUl6dSt0SWsvOHdnTTJlV3lvWEFFUUFCaEFLRmhYV0xGbFF2WENlYjkxcXpkdUFLVEZ3SzY0MHdHa2c5Mjlh d29kT0xMMEt4c3BpeEtXNXJ2Tm9KSDM0U1oxdWY5RFZLcGN6M1hDdFlZd3RDNzlaamdUNUx3TFk2RExHMkJZcEZTcFg4elkwL0xXeTZ1ZTVOWXZuUnlyS01N WkVVVEdsaGhLekZGUU11ZjkwWi9aQmpPWEdRTE1nVVJQQVdQZDdQWjN6OCs1L0lybDNQeTVzYVdNMWFzYndFU1AvTFFESFc4dUFlQ3dhRk5pMnRYcmhUMVUv ZmV2YnVJNEhnMFJWc1NSaHk4Rmp0MHN4UGd5VjdWN0ZYcmJCY0tRUndvSkJSMWJMYm8rL21Oem5xR1lNSDRueTN3Q3d6Vm9XcHJMbG9PS01lVmYvVWZyMVo3 VkxGa1FxeXpFbVJGVVJJWmh6dy8xai9iWkpOKytSSlpiYjJuS0RVNnFIUXM2V3JYdSs4TGFuUStjNERQL1RqVzJXZlpGL09ZQWJoM050MEkwMk5OVDl1cmg4 MXBmMXZ5L1QvVjZpcUZpV3NmMG4xb3ovUjd1QTdNcndZQ2pHUnFRVVRLa2U4Q2YxNmQvajZkZVU5SFRnZ0sxMTZwL3VlclBzVmY3TkFMYkNtMkRHZU1SR04x eFJWakYzZHVYY2IzeWIxa00wU2gwcXBoSnd3TUR0Y0QySTRCVmx4UUFEMm9XT2lmYVRTR0ZMbG9pN0E5b2YyNzR4c1l4UzV2ZTFIRCt4eXoyUENjSVdiblpv SFNIeUx3UndJNjBMbkZ1TWhXREpqdkt2UHkrYjlVVzRyTVN3bG8yTEFHTUVLR1plSGlDendyNVB0ZzBzUmdnd3dvQmo5OTJkaW9QRytMS0o3ZWRXelVINzY0 TllKY0xZZytOK3RrdFRiWjl3VGN0LzdQbXNVYWR4eGhBaHBObVFQaExrWHdYZ1hReG1EZ2dSUWhGQzNvM3J5K2Q4V2ZYanQrR2RPN0FzRTBWRnR0bVB6Y2wv WURPMmtWYmNsUTVsZ2dnakFPQWNBVGQ1eTl5SUgxczNNWCtMTVVZSUEzQWJjOHNHVDR3eG9aZ1FUQW5DRkZPQ3JMaDBIS1NSV1dDMENaS0dGYWtHQUV3SUM0 Y1R1dmJvOWZMN2NuS0taYncwVXpzT2MvbVhBTGd4LzlGbU1IdlhyUzZkOFhIVmdoK2lWUlZFVm9nc0M3YUdGUkJDKyttZE1uVlhyR0pHM0N5MzhaK0JjK0Jj SkJnQVk4QVpsbVNxS0VSUnBZUkVLVGxGVGtna1RpZDF1cW5MTGJuY3hPa2tpb0lWQlJPSnFpckdtR3M2TUFZSWdHazhGR0tCZ0Jid001ODMybERIZkQ3ZFc2 LzdmVHdTWnBFSTZCcW1oRkFaeTdLTmhoMWJWa3dZeDlrQjlxVUhVNnI3ZlIxdXVxZnRwZGNBWTBBSWFVYnZZUzlIUElDYmNGTlowTjJ3ZHVkbkgxVDlPRWZ6 MWhORklaSUN3STJMYmRHVWZaeWhFRi9qSnM1VksvTDFBWUJ6WURyWEdlSWNJVVJVbFhvUzVLUVVKVFZWemNweFpPVTRjbG81c2xxcUdabEtjZ3B4ZWFqRGdT WHBBTlErMTZJc0hPSEJnT2IzaGl2S3d6dDNoTXZMd21VbHdhTENTUGxPemRzQTBRakdCTXNTbG1XTUNUSlQvSTJkdURWa1J0Y1FRb0F3NGVHd3UzTituOWMr a3BPVGtSVXRiOGJ3WVN4SE5vRGo0cm8yS3BWMy9aclNHUjlYL2poSHE2a2lUaGVtTk5aUEcrMXhILzA5cUVrbGJZR1dNYTVyb09zSVkrcDB5U21wYW1aTFI2 czI3bllkM1IwNk9YTnlsZFEwT1RHSktFcVRIV2hNbkk1L2NoT2JjY08wYmJydHV0OGZMaThORkJWNjEvN2wzN2cydUswZ1Vsa0J1a1lVRlV1eXlWeXhKekxH NGtxQ1B3MEEzUjZibGpGaWxQQWROQVA0TUpjakZjQzdnNjV2eThhU1Q5NnJudjk5dEtiS2lBeHhibWRRb1gwckVHVzVvMHlQbHVWendnZ0JNTVkxRFhRZEVT eDVFaDNaT2U1T2VRbDUzVDBkdXpoYTVTcnBMU1NQcDNFeXZxQjhDVGs0UVJwTGt3cTdBeU9DTVk0VkEySGhjTGlzeEx2bXI5cmxpK3RYTGcrWGxTQ01xZXBB aEZoYlpTdUgwUmdUVExTQXI5VlpGK1hkOXhod0R1SjJ6UUErak9YSUEzQ2o3UzV3THFBYkxObFI4c2w3RlhObUNPZ1NTWUk0SDFVc0lyS25WRnVMOFdHYTEx Wk1CVGpuV2hRMEFkb0VSMWFPcDJ1UGxLTUdlRHAzZGJUS1ZSS1Q0aHZKRVpoaDI2YTgyazE2bVJzM0I0eDdtYjlwcXVHTjQwa3h6VzJsUUNLRVFqdUxhNWY4 VXZIRDdJYlZLM2s0UkJ4T1FvaEJhSWtsOTJORU1BK0hFN3IyNlBQR3g5U1RZSkJNbXpGOEdNc1JCbUI3N2p0d0xsTGhvdlYxcFRNL0tmMWllbkI3RVhVNGlD UWJlMTJMeDI5WE1ydS9zMzJteHVFMkd1VmFsQ2lxbzJYcmhMejh4SjU5RTd2M2RyZnZxQ1NuMm43T0VZZkdxdFVXVElvdEhxYWxpaHJoMkNqUWd4RkNpSkMv Z3hpTHNpSjZoVEd4a3F0cWxpMHFtL0Z4N2ZKRlBCeWlMamNDaElEYlZURm5qSG9TZXIvOFFXTFg3Z0FBU0VTVW11VXdsU01Ed05aV3NaSE5ESnhYZlBmMWp2 ZmY4RzlhaXdrbHFob3J5TGczMEVMODNXTVpSUmdqaERsbkVJMXlwbE5GZGVhMlMrNDNJSFhna0lUOEhvN01iS3RtblFnSUlWRnJ6cFJZRmNnOUVDRnNrU0Zv S2tvTENHa045YnF2UWF1dmo5UlU2L1cxV2wyTjd2VWErMjJtZzZZaFFxalRKYms5eE9VbXFrUHllQnpaT1dwNkN5VWxWZklreE4yTmMrQU1JU3pZM1V6VDZs Y3NMZjd3emRvbEN6Q1ZpS0lhd1NwenZRRUVQWjUrUFczd2NVWVpyV1lOZkJqTGtWQlcxcDQ4eERrQUoxVENDTlgrdnJ6NC9kZHJseXdBcGxPSEU0bFVYcFBB dktlOUxrRHNaQU1UUzRBUXhnU0FzMGlFYTFIcWRIbnl1cWYwUHpibHFBRUozWHFwYWVuV1Q0RXhoQkVTK1hkRXNvZG43V1Z4OWpUdll4b1lJd0FXRGtmcmE4 TWx4WUdpZ2toRldiaDBSNlN5UEZ4ZXBubnJlU2pFUWlFZWpTRE9FQ0JFTUNZRUU0S01JREFWMjNKaEwxQ25rM29TbExRTVIzYU9zM1ZiVC90TzdvNmRYVzNh UzU0RXNlaHdYUWNBSWtscHh3NUw3amVnZE9ZbnhlKy9GaXJlVGwxdXd5R0hNVWFJYTVwV1gyZXJKZFRNeHpwODVYRFh3QUNBTU1MSXNwa3h4aVJjWHJyOTNW Y3Jacy9VR3Vxb3kyVk9OVEFRczNzT1pDeTEzWFplS2picnp2QklHRkhxeW0yYk9tQlkycERqRTd2M1VsSU1JeGtFZnF6eXpsWTlLdkgxL3M1dmM5Q0JzM0I1 V2Fpa09GUzZRNitwQWM2d3JCQ01BU096cWhiaDBZanU5N0ZnUVBjSGRGOUR0TG95V2xlcmVldFp3QS9SS0RDR0tjV1NSQ1FKQWVLY0lWMWp1bzRCWVZtV2s1 SWRyWElUdXZaSVBXWndjcjlqUkhjNFk0Z3pMQ3NZb2VDMnJkdmVmcmw4OXBlWVlDTEppSE1naEVYQ1hSK1kybkxzMmNDWTJFaWd2MlhSTjhzaGxNTVl3TGE2 TUp4ekJKeFFDUURLNTh6Yy91YUxnYTJicWVyQWttU2VTeEIzaG5HVFJpbUtvZGZrU3hJQ25QTklHQmlUMHpKU2pocVFjZnlvNUg3SE9ES3pqVjh4aGxBTXQx WUc4UUhpZHBldWlRMDJwcFRJOGo3OWpuRVdEZXQrWDZTeVFtdW9DeGZ2OEJkc0RHNHRDSlVXUjZzcWVDU01LU1dLU21RWkFBRm53SFNJYXNBWmNUaWRyZHUy R0g1UzVwZ3ozZTA3SW9RNDB4RUFrV1FBMlBuNWg0WFRIbWQrUDNVNEVYQ202OTBlbTVZNWNnd3dIUkdLRWRqM0NNMXlXTWxoQ3VER3ppcEtNVUxlOVd1MnYv TksxVS9mSWdEcWNJTGRZTjRERGRKYUNPeWFtUkN1YWNJZjYrbVNuejVrUk5yUUVRbjVQUXhpZzdpem1WaUg0cDI5QnkzRHdXNG9pUHhrc0FlSHJPZlovdGRV VkpaRklwR3FDdittOVEyclZuclhyUXBzMmFqVjFTQk1xTk9KQ1FYZ0dHTmduR3NSMERRMXEyWEdjYU5hamo4dm9VcytJTVExRFZOS0NLbGJzV3p6MUFjRG16 ZFFweE00OUhqdWpkU0JRODFTMGtkaSt2Ti9SUTQvQU5zTHNwazdYaGFKbEh6OHpvNFAzb3hXbGxrYk5uRTUzaTNqb1hIQUNXTXNFTU1pRVI2TnFDMnlVZ2NN eVRoK1ZQTFJBNVhrRlBOeGdHMG5rbGlydzBIZUJPN2ZvV2ROL042SVVTRWtLSkRXRjNvbzZOK3lzVzdwd3BvbFAzdlhyWVpvaERoZG1FcW1zdzBqVFdPUnNK cVpuWDNhaE55THJwS1RrampURVNBaVNjSHRSUnNldUtYdXQ2V09scTE2dmZSK1FwZDg0Qnd3SW9nMDQvZXdsY01Md0UwcVh0L0dkWVV2VHEzNTVTZWltblJJ eTA3ZXpYYTNNVFZhbEdYa25JZkRDR05ubS9ZWng0M01PbVdzcDNPZXVGN1VXRFgzdzRZdGJuZHhIWXF1TnNwWWlvbklYVUp4RnpTUm1tVEh2MFhNTU1Hc0I0 TzFTeGFVejVsWnYzSzUxbEJuQkg3TjRrRmNpN0p3T09Xb2dSMXZ2VCtwZXk4dWFzRkxVcmk4YlBXa3k0Q3pmdTkvVFZWVnJCUjQ5d2M3TmNzL0xvY0xnTzBa TThMVFN5UkpENFYyZmpHOStQM1hJaFZsa3N0dEdMZDJCbTlUK0FVN09VSFVjR09NaDBMRTZVenMwU2RqeE1rdFJwenN5TW8ydDlhQUNjWUlXNTVoTEZKM0Qr TXAyOFFoTDNaQWM0NFFJQ3FKYStwWC9scnk4YnZWdjh3RFhhTU9oNUgvaERFbVJQZjcxYXpzdkFlZlNoODBqRE9HRUJBcStUYXU4NjVibFRQdVBEQnJnQjNP UTlFc2h3dUFZK0VjTG5JQWliOWcwNVpuSDYxYnZBQkxFbEVVNDVndk0rVFR5R2FPbmU1cE9wcUV3WXdZWTZFZzlTU21EaGlTZGRyNDFBR0RqWVhBREFWWkpa SDNFdmc1ck1Xb0V4Q2YxUkdyandzY0tuK2NzL1hscDRLRm15VlBRc3p0UnlrTGg1VDBGdDJmZkNXNTkxR05TcjFiTi92bit0VXNlNWZEQU1BbThKRE5iSzZZ TzZ2d3VjZENKY1dTMjIxcUZXeWs3Y2JQcVRqM3NxVjJDZUZNNStHUWxKaWNPbUJJenRrWHBodzkwQWdYMmF6bEdBSHJTSVZ1dklCUmtzQzJlVUJXUFlQZ2pt MWJubnlvZXVGUDFPR3dZdGNpRGRpWjI2N0gwNjk2T3VWeHpvMWtTTUdYYnE0VWZkakxQd3hnYTdaeEFNUVlrU1RONTkzMityU2RuNzRIdW00eHEvYmdZRGJN YWN2cFJBbm9PZ3VIcE1Ua3RFSERzODg0SjNYQVlJd3g1eHdESUdKUWs1cytXT2hmSS9IR2lGZ1ppU1N4YUdUTGs0L3MvUHc5cWpvd0lJNEFJNFFKMVlPK3BG NUg5M3orTFRrbE5VWXB0Ymd1elhJWXl6OEo0SmpXNUZ4UUkzMmJOMng1NG9HNjM1ZFRWY1dXMDBWY0xKcHIvVGFlNml5VUJ1ZWNoWUtTMDVVKy9LU2NzeTVJ N3RNZlUyTEZoR0o4eWYvSUdTTDIrSmxReFpTQ3BtMTg1TzZ5R1I5VHQxdGtSMkdFRUtXNjM5LzJpaHM3WEgrYlNFSXk5UEMvZm9pT2ZQbkhBQnc3bU10ME5W WDkvT1BtSis0UGx4WkxMamNBV05ZYjdMTGRqYm03aEp1VUVBQmdvUkJ4T0ZMNkQybzk4YkswZ1VPUTBPcUN2Q1Y4Vk5ZUC93dm9OY1ZlSEZla2Y3QkFZTTF0 VjljdW1TKzVFb0F6QVZTbWFjNldyWHEvT3QzWkt0ZllKUCs5aElwbStkL0lQOENGM2pWV2hEamYvdUZiMjE1NWhvVkRrdHNqZENiZ3hqdXdlT2dpNDRRQmds Z29oQWhKSFRBazU2d0wwNGFOb0xJc0RHWkJHNGIvbE5iZFJXSU1GZ0JFQ0hBdWVUeWRibnRnMWJiQ2FHVVprV1F4T0VSV1FqdUw2Ly82M1pIVEdnRUFJYVNa QW4wa3lQOGF3SGF6VHFUeTZzSEFscWNmTFoweG5VZ3lVUlRCdnpYMmI3dWkxM0lhWTR3SllaRUlNRDJoYTQvY0M2N0lPR0VVZFRnQmdGdG5XUCszb1J1VFdO bytBQ0djTVUvN2pxM092cWp3MlVkQlZyQ3dtVEVHWFFzVWJqRitjWGlVeEc2V3Zjci9GTUNtZzBSVWpPU0UwdERPNGkxUFBGQzE0RWZxZEdLRU9PZkVObW5p NHIxV0VvOUJSZENZcHJuYmQyeDU1bm5aWTgrU0U1T0VoeGtSUWdocGhtNWpNYTFvZ1dRQWFESHExTEt2UHd0dUt4UzFma0JFMzROK2pER1lPK0IvdXRITnNu ZjUzd0U0M21YRkNaVWExdnk1OGFFNy9KdlhVNWZiZm5TWTNWOWxLODV1MnN3STlFQkFTYy9JbVhCK3kvRVRIUzJ5QUNGZ09oSnA2ODNRM1ozWUM1SndjR2Ex VEI4NlludkJKcVNxbUhNRUdHRXNKU1diWG9sL3VyWE5zbS95UHdLd1pjRUo3eFNoVXRVdjh6WTljbGUwcXBLNlBjZzZpTWk4SGpkbE15Tk1XRGlNQ01rNGFY UzdLeWNsZE81cXNTQkYrWmgvZVhEb2J3czJUek1HQkFnZ3BmK2dray9lUVp5TGNhT3FJN0ZyRDR3eElBd0lOZWNmSFJIeXZ3Q3dtVDhQUXAxaVNrdS8vbnpM a3creFlJQTZuRWJTcVpWVmJ5VUYyaExmaGMzTU5jM1R0WHViaTYvT1BHazBwdFJpRHNYcTVqVDdYZllzOGVjWXU5cDFrTk5hUk1wM1V0V2hoMEtKM1hvbTlU NEtiTHZsNXFFOC9PV1FBOWpLbndkdStKYTJ2Zk55MFN2UElzNkpvb2d3UmlOQ0ZUTHpDQ3grcFI3d3kybnBiYzY5dE5XRTg1WFV0SmlueXB5VWh5Um42Tjhv R0lDYkFKYVRVOVhNN1BET0hXTGRiRDN4TWlVbGxYT0dNY0hOaFRpT0VEbTBBSTZ6bkFrRnJoZSs5TlQydDErbWltcms0c2Z6Tk13NlVrYVpWSXdKaTRReG9T MU9Pclh0RlRjbWRCRTJzNDV4czZmcVFNV3ExQVZBWFM0bFBSTUI0c0ZncTNNdmFYSGlhT0RjWXFvZDVnTzZLMy9CNG9BZjltMC9tSElJQVJ4REwrZVlVaDRK YjU3NlVPbm5IeEtuMDU1WFpCMEZacEVpRVFEQ0JBR1Arcnp1anAzYlhuRmo1c2pUaUN3eFhjY1lJMHpBWkFoaUszRjNuOTljWEJRNk5nbnN5MGhNWXZjL1hL ZkZubms0VnJFRHE4dGNNR1RFdHdBSVk4MWIzL3FDeTl2ZmREZWlsSU9vc1FkV3VNOGVnZHJsV1kwSDdSQU4xNjZIeGRtK01qWm81amt3ZXk2cDlDK1VROFhF c3FPWFVNb2lrVTFUN2kyYitZbFJmYzUwV2RucnA1dlF4UmhqRmc0VFN0dWZkMUh1LzEySGt0TDIrcUQ5YXRYQjZlRmhJTGJGQ0lGWkhWYUFrQkJyS3UrK25n YncxVmROVkZwazVkMDdCYW1PUFQ5b1g4ZHRYNnJtNzQvRUw3aTJBMjR3b3JaNnR6RmkzK0c2MUI0aU9TUUFib3plY0hqVDQvZVh6ZmlZdWx6R2V6RFJpK0pk elpoUTRJeUZRZ21kOHJJdXZhNHl0enZuNEZhb3c2bEtWSkpsaWduaGpHdTZIdFgwWURDY205TWlKU1hCMnF6dHV3WkdDR21hdm1YclRsbVduQTVGb2hRaHBE UE9kTVk0ajBRMWZ5REVHZXVlMzk3dE1tYjI0VFl0WXFWcEFjejZQL1p2WXpzTGE4Z3JLbXNMaW5ZNm5RNjNVMVZVQllVQ2dUK1h0eGgyb3VSeWNWM2pIRVUx VGROWU5Lb0ZndUZ3SkpyWHNYVnFhcUs0T1dOODNZYWlVRGlhbk9SUlZVV1NDS1VVT0djY0lwR28xeGVNUnJXdWVXMFNFMXdvVmtUMDRIVzJxV1ZCMDdTeWly cjFtN2IvOFBQSzhhY05PYlovTjhhNG1XbDJlTDJzUXljSDM0UnVoRjQ5NE4vMDJMM2xzNytRWEc3VUNMMm14d3FzMC9HQ1FhcXFPZWRkMHVIL3J2VzUweDYr NDdrdFcwdTM3aWpYTk9ieE9CVkpJZ1FMZ0hFTzlRMytDODQ2NFlVbnJnWHoySVU5S3dvTHVweHpTdW4zUDYyNGZOS3pEb2VpS3JLaVNBQ2c2MXpYOVdBb2dq SHUwSzVsVG1icTR3OWU3bkU3T2VlSElZQ3gyU0ZCZlB4emRjSExiMzFUVVZXWDM2WE5qVmVlbVoyVmF1VUdXZ2hmdDZIbzZaYytyNnJ6RjIwcmN6cFZwMU4x ZWx6MDljV2laN3JHSWxITkh3aEhvbHJIZGkxYnBDWGRmZE41eDZRbGNjNEFpTTdZaDUvK3VIemx4dUxTYXAxeGo4ZEJDY1VZMWRUNkdHTnRjalBiNW1ROGZN OGxTUjQzQjM2UTdXZUVCTE45ZTNGbFJWVnRiWjIvb0dqbmhzMDd0bTRyMjE1Y1VWWFQ0UFVHaGcvcWFRM0Z2OHpPMnJNY1pBM2NHTDNCNElhSGJxLzg3aXVM cWhHem5JMTBVeVRPeFVNQWV0Q2YwTFZIaCt0dlR4ODZRdVRjYzRSOS91Q2Zxd3Z1ZWZUdDFldTNxWXJNUlhZclJvUVFUV2VwU1o2NVh6N2VzVjFMRG9EMzRR d0JNK1NKQU9EOEs2ZDg5ZDJ5Qkk5VFoweHMraWpGMGFqZXZrMzJZL2RkZGt5L3ZLUWtEN1dwdGNOdFRvQkJpVUdFNE5YcnRrNjRaUEwya2twRmxzS1I2UEJC dlQ1KzQrNjAxTVI0a3hJakJKck9xcXJyWjg1WjhzalQweU5oelNxNmpSQUlOWnVjNUhuNHpvdEdqamdxTFNWUmtxajlpWnhESUJCYXZuTEROYmU5VUZWZEww dVMxeDhjUEtENzlaZVBQYVp2WGtaR3NpVFJneDZIRjZzbklTUWExU2JkL2ZKUEMvOHFLYTFpakJOS0NNR0tMTXN5MVhYKy9zdTNqejdwR01hNEdabzR2RjdX b1JQNjRJTVBIcXg3eGZtY0tlV1J5T2JIN3EyWTlRVjFlK3pvalVzRHhBZ1R5cU1SaEZITytJbGRINXlhMkxVSDV4dzRKNFJnakowT3RWMmJyTzU1YldmT1dR SUFra1FKRWQ5Z1dhYlZOZDQyclZzTU9DcWZjMjZoZDQvVktRMWR0SFpEMFpUblB5R2l6RFFobEJBcUVZSUp4dVRscWRlZmNtSi9sMU8xMytad25CQ3hEQVU4 ZGRwblAvN3lSM3Bhb2lSUmo4dXh1YUNrYzRlY1BqMDdjczR4dHNpcEdDR2doQ1FtdVB2M3pXdndCaGIvdXRidGRoSkNKSWxJbEVxU0ZJbEc3NzM1dkNzdkdl TnhPeHVIZ1FFd3dRNkgwcUZkeXo5WEY2N2J1QTBBcnI1a3pHdlBUT3JWdlVOQ2dvdkVEOUZCSFRFc2txTUdISjEvNFZrbjlPblphY1ZmbXpnSGg2cUkxVnpY MlptakIzWHUyQ3BXVmY4d2ZGK0hSZzRTMzhZa1FscUZsSGdrc3VteGU4dSsrVXlLUjYvNDJ1YXZJcHJmNTh6SnpaLzhUSmQ3cHFqcExiaXVZMUd4V1hoTk9X ZU01K2UxYWRzNk14clZ4THNVS2xUZ2VlYWNKVjVma0JKaVBYcDNEYlRlSzhaNDV1d2xOYlZlU1NMbXJSQUFSRFU5TFRXeGQ4OE9qSEhHdVBXVHYxRSs4aENL M1lOVlhsbXJLQkpqbkhNQUJKU1NrdElxZ05oeEtlYXVFQU9BcHVtYzh5RUR1a3NTWlp3YjQ0a1FZOHp0ZEF6c244OFkxM1ZtNzc0UnlRZmduR3VhN3ZNRi9m N3dGUmVOZm5yeVZRa2VsNjdyM0NyVGM3RDNuOVlOTWNicHFVblpXV2xualIwMmJzd1F2ejlram9OeDNVRjg2QkVrQndmQVlNNXlBOGFjYjNscWN1bk1UNmpU QlJaTjBnS1lFUlltd0pnZThMYzRmbVN2bDk3UFBQbDBBQTZNRVVvRjN3TWI4dzVSU2dqR1RvZkNPZGlER1p5RDA2bit1YVp3eVc5cmhmZlZYRW1hQUpzVllD QUVWMWJWZi9YdFVwZFQ1UndNVnhvMi9MZUtMR0VqRTlhWUVIdGVGLzVCc1E5NDcrNGRnc0V3UXBoU291c2NBUHIyNm9ReHhzZ2VCRElHUVJnd2xCTEpYUFdN Ym5KUUZHSGhXQndaNnlBcUszNk0xMjNjTm0vaEg2ZWZjdXdqZDEvQ0FSampsRkpoeXh5SzRSS09kR3l1NXByR3hJSk9LTEZxTWYyWDVTQUEyRWkrTjVtU3dI bkJNNCtXZlBhZTVISmF4eG9oY3kwVmcwNG8xY01oNG5DMnYvNk83aysrNG1yVHRwSGl0V2xzaEJEQ0JFZWlXdGZPdVprWnlack9MUFlISVRnYTFXYk1XaXpT bUhablBwbXRBdzZBTVo0N2YwVjVaZTNvRS9zenhvek1SVE9vYklWTVJRMXBTLzcrS0IxMHNab0dBSmVlZi9MWVV3WTFlQVAxRGY1b1JMdis4ckVuRHU5blRY MnpMNmlSaFdrdk90a29oR3NpMXJvNHRpdysrY0puQ1I3WGM0OWRyYW95Y0M0MkxvQmlKU3dQdWdhMkx3cGljWkZsaVNCUmZQZS9Mbi9iQzIwU0JRdzJCYVZi bjV0Uy9NSHIxT25DRUVmU01DMGRBZ2gwcnpleFo1OE9OOTZWT21Bd2lJUUVTbU9VWm52cWpIaHRtSVREMGU3NTdaSVQzYSs5TzhlaHlFS3RDeVg4NDRJL05o ZnU3Tkt4bGZCUjdZcGhqSTJqUHlrbXVzN2UvM1JldDd5Mmc0L3BQbVBXRXJmSHdUbGdzOWlPL1VkL2QyUU9zZGd6cTlOVEU5OS81WTQ1UHl3dkxxM3UzYTM5 OFVQN1lJek1QRi9ySkpuOUtDVnZYaDl6Y3dJQXBmVHI3NWJPbkxQazNaZHViNXVieFJpejZCT0gxRWlKSzgxdkdIRUlNT3lHM1BIZmtyOEY0RmhKT3M0UkFL RzA1TE1QaXo5NG5UaWMyQW9BeElWNUNkZDFZS3psaEludHI3MVZ6Y2lNSlNSWWxHYVRXV1dmRUVZaU1NTG5uSG5jaDUvOXhEZ1grZjRBb01oU2VXWGQ3TG5M OGpxZGhSQVhaOHJiNTVPWTZNSmpTd2orYTIzaDRsL1h2dkQ0dFc2blF4TlB0NlhaSGJiNmRsZXgwZGd3NStCMk9jNGFPMXg4WlZrd2U0QldrejF0OUdIc0RE WkFoSkNLeXJxYjczMTE0dmdSWjQwZHhoaXpWUGMvczhWb1ZyOElIUVFUMmlUSUFLRzA4dWNmQ3FkTlFaZ1E2MHdERzlVUlU4cENJY250NlhMM0kxMGZmRkxO eU9TNmpnbkd0bXRpTWVGNGtxQW9TaGNLUi9yM3pldlZ2WDBvSExHY3F3QWdTL1NiNzVaNXZRRmkyOVRGV2hpcjdZRXh4cC9NK0RuUjR6cHp6QkJOMTRtdFNO WitpWm1RMTRUc1lSOSswTVZDS1NFWUFCampqREZtUnEwdGZYdkFUVEUzRjhKRVJqZmQ4NHJEb1V5NS96SWV2ejd1STNvYmpjL2ZHYmUvdWN6dTJvejllcnJs UTkyMVU3djJyc2s3NzI0YzlzcU4zVlVPSE1DMk5DTk9LSzFmdFhMVHczZXdZSkJJa3FXWll6cUNFTTNyOVhUSjcvN1VxemtUemdmZ1hQaXJNQWI3RW02RWVU RTBNb014eGhqck9xT1VqRDl0cUwycndvcGV0Vzdyd21WckxGZFdJelVpaEJCY1VWbjMrZGNMeDR3OEpqVWxJUnpSckxydSs5aGYrMEJ6RU5FdTRERUJ6b0da L3RqZHZVakxGYmVyMkwxMDlyODArZ20zVFFqNy9RbkJJc1RHQVJpM2VkRVBkRFVCQU1DSWM2Q1V2UGpHVjdOLytQWDFaeWFscHlVQjN3OEhnYjJGSXE1cmpo dll4NDN2TW00SDF1YTlOc09jTnZabUFHTjdlWHI4U3pITnk3Z0pBQUFnQUVsRVFWUytaWnh6YnZ4ZGpJUDludFlmYXpHTmIwQVRWNHE3N2RjSUhDQ0FiYjVO VGlnTmJDL2E4TkFkV2wwdFZSUnhJSUI1L2hhSUV1RjYwTi9pcE5FOW4zc3I1ZWlCNGpRdHM5eWNvUm1OZzhVSTRicXVoME1vL3BRK2JGamlHQUJPUFhsZ20x YVpVVTJ6WmcvQk9LcnBNMll2NWh5SWJiQWFNV2t4eHQvKytHdGxWZjNFOFNQQUxQQ3hMM3RkNDI3bTQ4UW9FMElvRlg4c0laUVNTb2l3YVMzMWFEZGx6ZTFD Yk9yYnJ5RXhleVRPQUxZK0Y5ZGI3anA3QzhYckY5ZFRZalREcXBaOVlLOVlUSFJKb2ovOThzZWRrOTk2K000TEJ4M1RuVEZta1NYMlBNbkV1Rms5RWxQWk5t N0VQbTdFSERlNytYQlFVR3h2UmxPdnovaGp2cldtOFdaZmYrUEdtY2JjNzV4elFuQ2oyeEtDR1dOMkQ1OVlnbmU5VWx6Y2FBVDIycnNEMmdQSGhYeUpIZ3hz ZWZ6K1lNRkc2dklBWjdISUl3QWlsRVVqbUpBMmwxM2YvcXFiaUtweXBvdnFHZGhHNUJWRm9URkN2c0xOTEJSMHQrbUFWTUhtdFN0aEVIT3lkY3VNazQ3cjk5 cDdjOVJFV1N5Y0hNRGxWT2N2L0hQamxoMWRPK2NLVjViRjZ4Q0RRQWlKUnZYM1AvM3hxRDZkQng2ZGI5cUhleCtnV0Q2QU1lNmlwYWlrdEtxZ3FMUm9lM2xG VlozZkgxSVVLU010dVhWT1JrN0w5STd0V2laNFhBZ2hpeGhrcFJrME5QZ3h4b29zU1pJa3k3UlJkRVRUZEFZOEpjbERpSlhnakwyK29LYnJIcGRUbGlraGhE SG05NGNReGttSmJudGsyMnB3T0JMZHNHbEhjV25WU2NQN09oenFnZkg3QlNlUmN5NVJXbEJVZXZGMVQwNDRiY2dOVjUzQkdOL0hyYS85cUF5aHc4VitxMmg3 V1VGUjZiWWRGZFUxRGNGUXhPbFFNbHVrNXByanBxcUswR3drTm9QLzFsN1hlbjFXTThUcjI3NmpZc3ZXa3UwbGxlRndORDB0cVZQN25QWnRzNU9UUEFnaDRa eXpkN0JKZmtnZ0VOcTRwWGpoMGpWalJ4L2JwblVXSVloUzJ1RDFyMXE3dGFDb3RLN2VyeWhTeDNZdCsvZkxTMHRKdE93TFFlTkZDSlZYMUs3WlVGUzB2ZHpu RHhKQ0Vqek85bTJ5ZTNYdmtKYWFLQzdic3d2RGt2MEhzSzIraHJoeHdYTlRhcFlzb0M0MzVneXNod0VDU25rb0pDVW1kcnIxZ2V6VHhwdForREgwZ3BscFNC Q0tWSlJYenZ0V3ljeE9HemlFdWozaVFCRDdZekV5b2hvQU1PSDBZUi9QK0preGJpSUxaRmtxcjZxYlBYZDVmcGMyc1hNYWpIa21EZzBsSy83YytPdktqVTg5 ZklYVHFlNjd2OHJLeUJOek9oZ016NXl6NU10WmkxZit0WmxTMGlvbkk4SGpwSlI2ZmNFMTY0dDgvbUI2YW1MSGRpMVBIVG53NHZOR1pxUW5DUXdiMm95eCt4 OTVlLzdTTldtcGlXNlhRNUlvcFpSenBtdE0wMWt3R0FrRVEzMTdkcHoyeEhWdWx4TkEwQ1RSOU05K2ZPdkQ3eDFPTlRuUkl5dVMxeHVvcnE0L2Q5eHhkMHc2 VjdCY0lsR3Rvckp1MjQ2S3JkdkxWcS9idXFtZzVJL1ZXL0k3dHpsaGFKOERkaklKZFVRcHJhbjFudnQvaitaa3AwOTcvRHFNTU1LTjUvVHU1NGpaYXdCS1NY VjF3NmRmLy9MMXQwdlhiZHptY1R0eXNqTmNMcFVTWEZYalhiMStLOU41Um5wU2Z1ZmM4YWNOUFcvODhTNlhnM0ZPL3JhSHpDcW5peEFJNUlURDBWbHpsOCtZ dGVpWHBhc0pJWG1kV3F1S3ZHWHJ6dEx5bWw3ZDJvOGNjZlQ1RTBhMGI1dk5UWTZxcFFOMW5RVkM0Ym82My9iaWlvS2kwci9XYmwyOXRuREwxcDBWVmZXdFcy VzBhNU1kQ0lSZWVXZlc2Kzk5VzFCVUNwcE9GTm5sVkFraG5UdmtUTHBxM01RSng0dVZtbEphc0hYbk15OS8rZjM4RmFGd2xCSmNWZE1RamVvZWoxTWlwRU83 bHY5M3dTbVhYVEJLbHFSOVpPRHZONENGcjVpYmZxbVN6ejhzL2Z4RDZuUmltNmtoSXJlYXorZnAwS25MdlZOU2poNW9MMytEVExJMHdsamtLcFYvL1ZudGIw dXlScCtaY2Z4SXNIYkNUWGhmakFuUnYyK1hvM3AxWHJCMHRjZnRCQUNFdU1Ed3JMbkxyN3BrVElMSFpld0piYThmWXp6OWkvbHBxVWxuakI1c24xNzdNZ2tz amJTNXNHVFNYUy9QWC94WFRsYmFYVGVkZThxSi9iTmFwQ2lLTEs1Y3ZiYnc5b2ZlWFByYnV0WHJ0LzMyNTZiUFp5MTgrY2tianVyZG1adUxFU0hrOXB2Tzdk cTE3ZVNuUDZxdjkwbVN4SUJqaEFuR09tTTUyZW1QM1h2Sk1mM3lIS3BpZXQwQUlUUis3TEErdlRzLzkvS1hYMzIzbERPZTE3bjFBM2RjT0toL1BzWjQ1YW90 OXo3eTl2YVN5a0FnSElwRVE2RW9Ra2lXSmNhWTA2bkczT3Y3QXdCcmgwWXBpVVNpVjkvNnZNOGZtdlhSNUtSRXQ1MXB2T2ZCTTArRE1PNno5TmQxays1NTVh ODFCZDN6MnozMzJOVkRCL1pNVDBzVWlvZ3h0bkRwbWx2dWY2MndxSFRaN3h0K1diYm1xKytXdmp6MSt0eldtZFlNUGpBTTJ4a3NnSUJTdW56RmhnZW52cjlz eFhxL1AzVE9tY01mdk9QQ2p1MXlNTUVWbGJYM1BQck8rNS9PKzJ0ZDRZZWZ6YnZubG9rWG5YTWk1OXhncVFFaUJQKzRZT1ZkRDc5VlhkdlE0QTF5QU9DY1N0 VGxWQjBPcGJyR1cxdm5uWERKNUQvWEZJNGJNL2lTaVNPOXZ1RDhoWDl1M0ZMaWRLcWJDM2RlZWZPemhkdEs3NzFsSXFWMDd2emZMN3ZoYVVXVzdyNzUzT0dE ZTZtS3ZMMjRZdXEwenhZc1hhMDZsSUtpMHB2dWVlV1AxVnVlZmVScXAxT3hwdWdldXI5L0FMWWZwMEFvcmYxdDJkWnBVN0ZFclpDUzVYeldBb0cwUWNNNzN6 WFozYmE5Z1Y3em1GbnJJQldFVVBYQytkdmZlbEZLU094NHkzM3VkaDFFQWcyMmxYU09ueFlZSWNRWmwyVnB3dGloQzVldHNackVPVGdkNnFwMVd4Y3NYblhh eWNjS0d3d3dCZzRDRE1VN0s3K2FzK1RNTVlPenM5STBUWmRsQ2UremJTWWU0UStFYnJqanBRVkxWMHVVWG5EMkNWZGRNa2JZR2N3OHZhbG45dzZ2UEhYRDZI UHVyYWlxVDAxSlhMZGgyOFhYVEozNTRVTWQyN1VVbTNPRWNPdWNGdGRjZG5xbkRxMHV2dTVKVFdQQ2JVNHBhV2p3bjNYNlVCRUhhdlRhTXRLU005S1NuNXA4 NWE4ck42cXEvUG5iOTNYcGxDc3VhOU02ODRhcnppd3JyMzN6Zys4MkZSUW5KYm1CQXlIWTV3OFo4M1kveFJaclJRQncxK1MzUHAreDROb3J4M2Jxa0tQclRH aWtmVW4zQVJDbGV4QWhlTnVPOHN0dmVuWkhTYVhEcWQ1NHhSa1RUaDhtSHNRWUY2L211Q0c5bjU5eXpmaUxId1pBYnBkajNpOS8vTitrWno1OSs5N2tSTThC NS9mYWliMGlndjNCWi9QdWVQQU5mekNNRURwdi9JaTNYN2hGbGlVT25EUEliSkg2d3VQWGJTK3VYUEhucHRwNjN6VzNUYXVvcUwzOXhyUE41RVNFTWU3ZG8r TXpqMXhWVWxiOThsdmZiQ29zY2FpS3VWbEY2emR2ditUNnA0cDNWdjB5NitrZStlMUVBOG9yYXErNCtkbWZGNjN5ZUp5YzhTblBmdFNwZlU2UHJtM1B2K3J4 VnRucE16OThxRzNyVEhGbDY1d1czZkxhamozL3dUOVdiL0Y0bkU2SCtzNUhjMXRrcER4eTk4V1dJYkNIbnU2SEU4cytLSVRTY0dYNWxpZnUxLzFlUWlVcmZp czJscnJmbDMzNmhCNVB2MnFnbHhqb0JRQmdUUGd4QXR1MnJyM2p1aldUTGt2bzFyUEhjMis2MjNYZ1REY2NXdUpXdTFua1JSdEduM2hNKzdiWmtVZ1VZeXhD Z29SZ0xhck5uTE1reHNvQ01Da2MrT3Z2bHRWN0F4TW5qSWg1SmZadFZsZ09yRlZyQy85YVY1aVM3QUdBZFJ1M004WVk0OEFCbXpOTTAvVjJiYkpIbjNSTU1C Um1uQ2NsdWJjVWxVNmQ5b21oa1RBU0dWYWFwcDg0dk4rVkY0NzIrMFBDdE9PY2M0QUdiNUJ6WUl5WmhIRmpDeVFlSkV6bHl5ODhwVXVuM0tobWNJOHpNMUxH bkRUZzhndFBlZlhwR3oxdXA2YnBYQmhIUnYvMmU5OXJ1WkVvSlE4KzhmNXI3ODdKekU2Zi9zWDgxOStiSTBuVXpPWGFGL3ZGdUJYR2VQSHl0ZHQybENjbHVx TlJiZU9XSFl4eFRkY3RscGhRd2dPUHpoL1V2MXN3R09ZY1VwSVRGaTViODlZSDM1bUZDZzdFbHhVTFRBSlFTdC8vNU1mcmJuOGhxdW1xSW1kbnBqNXl6OFd5 TE9tNkxnNVIxelRkNlZRdm5UaFMxNWtzUzI2WDQrR25QdnpreTU4cEpSWUpPRHN6OWZpaGZTNDgrOFFuSDc1Q0lsVFhHUURubkx1Y2prOW0vUHpYbXNJdjMz dWdSMzQ3WFdlNnpqUk56OHBNZlhyeVZSbnBTZUdJaGpGMk9OUkhuNTcrZjVPZUNZY2p6MCs1cG0zcnpLaW1pemNiamVvcHlRazNYRGtXWThRWVo1d25KM25l bWY3OW42dTNXR0hSUGZSL1B3QWNjMXdoeENLUkxWTWY5Ry9lUUZVSE1wM2ZtQkRPR09oYW0wdXY3ZnJBVk1tVFlCMlNBQmlEOE1WUkdxbXRMbnJycFQ4dUhG dTk0SWU4aDU3c2ZQdURSb2xKWWtTVjlsem1DaFBNT2M5SVR6NzVoS01qRVkwUUxGUU41K0J5T2VZdittdkRwaDJXUnhFQUtNR2hjR1Q2Wno4TjZ0L3RxTjZk OS9mUUg2c1ZqQUZqbkdCTUtLMnQ5eUd4SWJDelRSQUdnTzVkMnhLQ01ZQ3VjN2ZMTVgvUnFxM2J5b2c0clJOaGdqR2hoSE80NHFMUkhkcTFESWMxMFZSRmta Zit0cTZ5dWs0Y2FXTG1iSUFaQThmTGY5L2dkam5PRzNlODZSQVMyMVN1NjR3eGx0ZXBkWmVPclNJUnJjbU54MzY5WDBJeHhuanlVOU9mZWZsTGo4Y0p3REVt OTA5NWIrNVBLeVNKTWdiVytyS1B1QklwRnNJdFZGM3JGVGxmalpRcUphUm50M2E2emhER25ITlZrV2ZNV2h3SWhnUXAvUUE2Sk5ETEFWRktsL3k2N282SDNw QWtxaWl5M3g4Ni9lUmoyN1RPWkl4UlNxMnREUUFjM2FkTGRtWnFPQndWVk0zSlQwL2ZVVklaODE4WVE4M3pPclp1bTlzaUd0V3NDSWpYRjdyNG5CTjc1TGZU ZEYwd1BTbWxqTEZPN1hPT0c5d3JISTRBUXJJc1ZWVFhyMXE3ZGNqQUhnT1B6dWVjRzZSempDU0pBTUR3UVQwN3RHc1pqa1F4UWhLbE5YWGVHYk9XbUYzWnJU TGJEd0JiMW9nNGM2ajRnemNxNTMxTDNXNEVKbjJSRU5BMElpdWQ3NXpjNmVaN3NDUlpoU01CRURDR0tTV0VWUHo0N2Fwckx5cVkrcUNVbk5McmxRK3pUeDB2 V0Z4V2RWZ3MxUGp1clNiTHB6VCt0Q0dwS1FtNnpzeVRnMEdXcFlyS3VsbmZMN1BJRzJMMEZ5OWYrOGVhTGVlTk8wNldKUzVZWFBzeEZReTZZcS91N1h0MWEx ZFdVZXYzQlFmMDYwb0pBUjZyeTJXNXhKSVRQWVFRUVErWEpGcGI1eXZhVVc1NjdCRmdZMmVlbFprNmJzemdTRFFxcG9oRFZUWVhsc3o5NlhlN0JXdEcwQW5H ZU1ic3hZT082WmFkbFFZQU5nK3RFZnVWSk9wMHFnYS80b0E4UGxaTVFaYWxwMS84L1BIblAzVzVIQ0wySTBzMEV0V3V1K1BGVldzTGhSNXU1S2JhelZzQzBi V0IvZlBiNUxiWVdWYk5kSGJzMGZuVzQ4d1JNeWFuMDZtYVpoeElFaTJyckNzcHJUWkc0OEM2Z3hBbTJPY0wzdmZZT3o1L1NKWmxYV2N1cDNyQzBENENpbUps RVFzOTU1Q1prWktlbGlUU3NGUlYyYnF0N0xPdmZySDFFWXNNWkVtaVpob014aGpyaktXbEpJd2RQWWh6TUpjbVVWUU1BY0RnQWQySjZmT1RKSW93T3FwM0Yx bVdJSDdhQUVKcHFVbWQydWZvR2hQUkNrbVNWcTdld3Mya1d0ajlsTjBuQU1mMlBBQ1kwcHJsaTdlLy9US1ZGWXVHaFFubGtRaHhPUE1lZmlybnJBdU1YYTRv SEdrbTkwZXFLamRPdm12RHZaTWEvdmd0ZGVEUVhpKyttOUszUDJmTUNvYWFKU24zUmd4QUdHTUNnUHIwNkRqZ3FLN0JVSVJpWWpJZVFGSGtXWE9YMVRmNHJh MGF4bmo2NS9OYjU3UTRkZFRBL1ZJZFFpeFROaW5SL2VienR6eDY3eVV2UFhuOW5UZWVneEFnMHdpMFZqZWhTeEhDWU5aMTVKelgxZnVRU2ZuQ01iMEtaNTg1 TERNaldkTjB5ODMyeFRjTHc1R29xWVNOd2NNWUZXemQrZHNmRzg4NTh6Z2pmQTFXd1RtRFhtYThvLzNuOGRpN0tmSVE3M3YwM2ZzZWYwK1NhTXlOekxtcXlP VlZkVmZmOG54WlJRMmxjUmplemQxaTZST2RPN1Q2K0kxNzdydDE0dHN2M0hyQldTYzB5aEFVVGVZY0tDRTRWc3lmUktMUkJtOEFBQkNHQTJBOEc5WUV4bC9P V3J6ODl3MGVqNU56SG8xcXVhMHpCdzNvTHJTeEpGRktpU1JSOFplRUJKZXF5Z2hqU2dqR1NGWGxueGY5RlkxcUp0OGJXZlJleTY3R0NHbWFudHNxbzMzYmxz U0lCeHNNSmdHNU5xMHpxWmsxSmY3YklpTzVVWVFaVEdwT3E1YnBIQUF3QWdDSmtyTHltcnA2djcxbVk1T3lUMDRzVzVvK2lWUlZGanoxTUFzRnFUaDlHeUhC a1ZUU012SWVuSm8rNUhodUZtb1hoeFZoUWdnaFZRdm5iNTMyaEw5Z0EyS3N4YWpUOHU1N1hFM1A0T0k4RkhON3ZBZXpPYjR4Q0dQRU9KY29uWERhMEI4WC9B Rm1DaEVINUhBb2F6WnMrM25SWDJlTUdhenJUSkpvd2RhZHMzOVlmc2w1STlQVGpLRE9maEViVENvRTVoemE1bWJkTmVsYzhYbGN4QjhoRUZPUTRIQTRJbUpn WXZJQmdLNHpjenlRVmZzQ0FIWHRuRHRpU04rUFo4eFBUSFJ6enAxT2RkbnZHMzc5ZmVQUVkzdFl6aHNPWENKa3hwd2xHV2xKUTQvdFlRdjhna25lYnZ5bTly MXJkaEY3UmE4dnNIVEZ1aGVtWFB2MTk4dCsrUG4zNUNRUDB6a21pSEh1ZGpsV3JkdDY3VzB2ZlBEcW5VNkh1dWNpY3JiMFF3UUFmWHAwN05PajQ2N2pKbmIv c2t3UlFwR0loZ3p6Q3hBU3FhWGN5SWc2SUNjV0lTUVVpbno2MWMrRUVtditjODdmK1dndUpXYUUyVlNXRXFGVnRRMmJ0aFRydXU0TGhCRUNUV1ByTm0ydnFL cHZuWk5oeEJFYVo4aGdqSkRPZUhwcWNvTEhhZThYeGdoemhERldaVm5vVzJPRUNYYW9jb3k5WXk3MG5IT0VjR0tDRzRCandJQTRJY1FmRE5YV2VWTlRFdllN amIwQjJPS3ppd1dlOGNLWHB2bzNyWmZjSHVOb1dVcjFRTUNWMjdicncwOG5DNDFxOHpZVFNqbGoyOTU1cGZqZFYvV0FId0Zrblg1MnA5c2ZVQktUckpndzdQ OUo4R0p4QllDUkk0N3EwcW4xNW9KaWg2cUlRU0tFYUJxYk1XZkphU2NmSzBacHh1ekZrWWgyM3JqanJYSGNyK2xnYnhybklPcWltd25EQmdXUFVvSUlpa2Ix VDc5YThQaXpIeXVLYk14c3NQUms3SDZ4MkFiZzg4WWY5L1gzU3dVZmoxSlMzeEQ0L0p1Rnd3YjFOTTBSb0lSRUl0R3Y1eXdaYzlJQWw5T2hNeVpLTVRZYXNI Mk1hZSsxcnhqajV4Njk1cnp4eHc4OXR1ZTRpOHUzN2Fod3VWUUJKTVo0UW9Mcis1OVczRDM1cmVjZXUwYUVXSFpITnJBK3RHS3doa2xyZWg4WVkwTFhFWUlh dklFM1AvanU5ZmUvRlhyU3hMK3hGVGl3WGduSHdhYUNrbFhydGpwVVJiajJLS1hCWVBpakwrYWJEQUljdXhwaGhLQkx4OVpXRTNYRzBwSVRSS0VJWkd1SmZh aEZHcTJpU0lMMFl1Kzd1SnBLbEZKaXVRQ3NoSm5ZSFUxVEMyTXN5NUl4Wmh4ampMV29IZ3BIc1dXYzdxYW5ld0V3V0ZZT0FLYTBiTmFYNWQ5OFFWd3VBNzJF Nm42ZnUyT1g3bysvNk9tU2I0V0xMSUowdEw1Mnk1TVBsOCtaU1JRWmNkNzZ2TXM2M25RM1VaUzRjeFVPaUdZZzRKU1NuRERtcFA2UHJ5OXlPbFV1V0ZrY1hD N0hMMHRXcmR1NHJVZCtPNjh2OE5HWFB3OGYxTE5udC9ZQUlESWc5dE9FdHZpWTRwL0dwb056UmlrVnRKN3Ftb1pQdi9ybGpmZS85ZnREblR2a1ZOYlV3MjYz bzNGNXVZTUdkTy9YdTlPUzVldmNiaWZuNEhLcWMzOWFVVmhVMnI1dE5qY0RZRXQvVzcrenZIcjg2VU1CZ0JqNVdnYy9peDFqekJsM085VWUrZTBZNDUwNjVM ejJ6S1FKbDA0T0JzS3lJZ2wvTXVlUWtPQjY2OFB2MitWbVRicDZuSzR6d1hiYkk0YXRmMkZrMXZFUy9FbUUwUGJpeXZjKytlR0RUMzkwT3RXTzdWcXVYTDFG c1pWMy9uc0NBTEJtZlpIWEczUzduV0l6R1F5R3pqbnp1QWR1dnlBUzFZaHg3SHZjYjhSKzJQbzlKY1RoVVBiVUdNT3RZZSsrZWJGcFR0dVgxa1pyZ1gyMGtM RXFpeDJpQ0lEYUF3cTdsYjN0Z2MyOUhhWTBzSzJ3NkpWbkVNSkViUDRvMVlQK3BMN0g5SnoydG9GZUVvZGUzNmIxYTI2Nm9ueldGMVIxZ003YVhqbXAwMjMz WTBXT2MwMGZLTS9HVXFmalRoM1NJaU5aMTVsVnQwR1dhV1YxL2N3NVN6REc4eGYrdFc3VHRva1RSb2lGOEVBY21qSGVXR3pod0JoUlNuV2RMVjYrNW9ZN1h6 cjZoR3VudlRiamxCT08vbVgyMHpkZE15NFVqcExkZDhxMHRSRG4zS0VxNTR3ZGJoVi9WUlNwcEt6Nm0rK1hXU3hDalBFbk0zL3UyYTFEZnBjMkFBZ1RmSWhP VFRCaVNBQ1JTSlFRSE5YMGdVZm5UNXR5TFJqOU5YY0tnSnhPZGZMVDA3LzRlcUVrVVE1N2RrcGo0NmhEMHgxQU1LYVVCb0toNytiOWR1SFZUeHc3Nm9ZWnN4 ZGZlZkdZaGJPZk9YWFV3R0F3SWh6c0I2czdaUlUxVVUwM1lwZ1lFSUwwdENSSm9rNkg2blNvRG9maVVPUCt1SnlxMitVUWZ6eHVwMkRzN1VFTWttWmNhWHVy QmNpVy9HQjl1M2REQ1J2dDMxZXJhazhhR014NFBNWUljYjd0OVdtaDRtMnlKd0Z4ampIUmZRMHB4dzdMZitSNVI0dE1pK0ZzVklla3RQTG5IN1k4Zmwra3Nw eTZQU3dZYUgvZDdlMHV2eDQ0Qnc3WUlwcnUyNmEzNlg2YVBwSnVlVzJISHR2amkyOFdDYXFRR0RSRmx1Zjg4T3ZOMTR6NzdLc0ZuZHJsbkh4Q2Y4TXBpdUFB dkxUeHRGNHVvUHZGTndzLytHemV3cVZyVkZXKzQ0YXpMejczcEl6MFpJVFFINnNMRU41VHNyazFtNDNjakZFRFgzamo2OEx0cFE1RkFRQlprbWJNWG5UcHhK R0pDVzZFVUZsRnpmeEZxeDY4L1VLeGpwckpSUWNmdy9ZTkxjYVlFcXpyN013eGczZVVWTjQ5K2UyRUJLY0JWU1JxUktPYjduc2xwMlg2d0tQelJXNURYTFo5 Yk5DTUNTbk1TN0hIL3VEVGVaL08vR1g1eWcyNU9SbVAzSFB4aE5PSGVkeE9zUWNtKytsZjNITi9FRUtScUNiYWdveGRHcFlvRVMvUnNtYjNhM0IyOTIwVEYr RGRmN1g3K3pUNTl6M0w3aGM4OFVxRUc0SFF5bm5mVmN5ZEpibmNJdGxJQy9qU2hwN1FmY29MamhhWlJnZ1hJZUFjRTRJSktmN283UTMzVG9wVVZ4S0hrd1dE N2E2NjJVQ3ZyVXQvQjcxbUF3MS83SVRUaHFxS2JEQmprQWlyU3R1TEs1NTY4Zk1GUzFlUE8yMUlVcUxieXVvNmdLZFlrQk9lbm9WTFY1OTY3cjFYM3pydCsz a3IrdlRzdU9DYnAyNjcvcXlNOU9Sb1ZEYzQ2R2d2YVJLV3c0TnpTRTlMT20zVWdHaFV4MFR3eVpSVmE0dCtYclJLWERENysrVXlwYU5HOUxQWll3ZGx1OXUw MlAzRG9zcnNEVmVNdmZyU1V4c2FBa2J3R1NIT1FaWWxyemQ0OVMzUEZ4YVZObkpLVy8wV0UwZWdSUVREdnBpMTZLVHhkOTA1K2EybEs5YU5Hek40MGJmUFhu TGVLSS9iR1kxcVppbVZnNWRDQ0FZZHhhcmdJWnFtYWJwb0hkcWY2ZmUveWU0K01Oa3RnR08xcVFpSjFGUnZlL05GeEptQXRCNE1aSjB5dHR1VUY1VzBER0VQ R3dZU3BTd1UydnpFQTV1blBzU2pVYXFvUEJScWU5V2tkbGZkMUJpOUIyTWJaODQyR0RHMFQ4OXU3VVVJSHRrTXBsZmVua1VKT2Z2MFlUWS8vb0dRazh3MUd4 RkNYbnp6cXdtWFRsNzgyenFFVU84ZUhkOTk4ZGJ1WGR0cHVpNzgyOFJ3Z2V4RlE5cmpud0J3OXBuRHN6S1NOYzNZQmVpNi92blh2NGhBNWVmZkxEenh1TDVw cVVreE8vWi9NcGtzT3g5ai9NamRGNTg2YW1CRFEwQ1NpQ2h6S1h6bUJVV2xWOS82ZkYyOWp4QmlWUlMwTWFCaTFyV21zN3NtdjNYcGRVOXQzTHlEWUR6cStL TmZmKzZtN013MFRkZkY3cFFRYkJWRU9VZzl3QUNRNkhFYlVSemo4Rm1vcnZXYVBuelVLSWEvT3psSWUvSkRKVTBEMkNKL2lLTStTejUrMTc5eExWV2RDQ0hk NzhzNjVZeTgrNmZLU1VrV2VnMlhWVVA5K25zbUZVOS9tNm9xa1dUTjI5RDZnc3ZiWDNVVGdsM1FlMURFM0VtNjNjNVRSdzNRZEQyV1JBcUlFT3dMaElZZDJ6 TS9yNDN3U1pyK3RmMFRLNEdiRVBMOGF6UHVlT2hOeG5pQ3g2bnI3TWFyem1qZnRxV202Ukp0WEJSNUg5b09aandKOGpybEhqZTRUekFVSnBod0FKZkxNWC94 cXMyRkpadTJGSy9mdEdPQ2JRRTZwT28zdm5rNFJqSjNxczgvZG5YZlhoMjl2cERoU3NDSU1lN3hPQmN0WDN2cmZhL3B1bTZMYjhkMjZlSVR4dmlkRDc3eHpF dGZPSjJxcXNwT2gzclhUZWNrZUZ5YXpzU0pOc1lURDNMN0VVYTRTNmRXTG9jcUtnUmpqSUREdHUzbGV6WmtHdFhLT016VjcyNEJiUG1pTUtFTjYxYnYvT3g5 b3FvSUl6M2d6eHA5WnBmN0hwZmM3a2JvRFZkWHJidnorcW9mWjBzdUZ5WkU4M216VHB2US9ycmJEQ2Y5L213R2RoV0l6KzgzR21tRThqQUFuSEhLb0p6c2RN TmpZZGl3SU12U21hY09JWVJ3NE5iUnBZM3YyK2dmalRZeWh2cEZoSkJmVjI2WTh0d25Ub2NxU1RRY2ptYTJTQms2c0FmblFFekdyQm5JYjV5RDBXU3ZiVlh1 QVNGMDdyamozRTVWc0Q4bGlWYlhOTXlldSt6TDJZdmE1bVllMHkvUEZ2NDl4T2kxdGRTa0dXTEdXTXZzOURlZnU3bFZkbm9vSEtXVWlzWXpCa21KN285bkxu ajBtZW0yWWtZeFMwRlUwdnBpMXNMWDNwdVRrcHlBTVFvR0k5M3kydlRyM1Vrd055dzlMd2JFUGt3SGtvcGhFNHd4WU9qUnRWMU95M1JOMDRuaDNaUUt0NWY3 L0VGcktzSSt2S25EWEpvQWNJdzFpVEdMUnJhOS9yeFdYMGRrUmZQN00wZVB5N3YvaVNiUVcxRzIvcTdyYXhiUHArNEVoTEh1OTZVTUhOTDVqb2VvcXByVm5R OVFnVmhoYUxRTHJ4MU1NaW9BZEd5ZmM5emczcUZneE15WXdjRlFwRWRlMnhGRCs1aEI0eWJlbHQwcmJTUWJJK3NSY1dRakFKZzVlM0Y5UTBDV0pGR0JKUzBs MGVOMmlwWGVDalVaNVc5aUhpeDdnMk5XWmFNNklRaWhJUU43OU92ZE9SZ01FMEk0QjQvTE9mMkwrZTk4OU1OWlk0ZkpzaVNLK08xaEJZeU5qRW5hYWRMWWpo dTlKaTh3RzJ4U3dZeFZRMmVzYTVjMkwwNjl6cUhJdW1ucGlMd3lqOXY1ek1zejN2bG9ydGdNMnljUHdaZ3gvdVUzaTdoNTVqTmpMQ00xVWVSTDJyaXVodDBV SCtFemVtSlhodkdOYjZyN3BtQ01PWU9zek5SVFRqd21GSTVpUWpnSFZaV0x0cGV1WFY5a280NWl1OG9WYTc4WnBZKzU1Y3doYmZwWlRlOXJtcnA0enpzZ295 VzdYTHpuVmFVSkFHT3pRQ1FtcEh6T3pKcGY1a2tlaitadHlCcDlSdDU5VTVwQWIxWGwrcnNuMWYyNldISW5ZSVJZTUpEUXJWZlhCNllxeVNrR0sycy9ReC8y TWJWNlpIZHZnc24zTjl4TEFBQncxdGloTHBmRHFraWlhZnJwSnc5TVNuUmJ4UTBhM2R4S1A0ZzkxcGJCWTgrREVRZldGeFNWVW9vNUdGUnFLM0F2Ym9ZTkx4 ZHlPaFFyb1FBUXRvQm5GcytPNldxYks0czdITXI0MDRaYXQxTlVxV2g3QlNIbzFKRURMTmJLcnIxb1FvY2d3SEZ4amJnTDdBdU5uV0JubjhIR2xTWnd4RU5G eHZLSncvczk4Y0QvV1JhcGRSOVprZTZhL05aUHYveGhNcVhCNGtMWE5maDNsbFVyc21SUzVzMmRtYzIxSzE2UVE1WHN5NlU5MkczdnJOVTNrM2ZadEFxMU9u WForYU5hWmFkSG8xRkNNQ1hFNnd0K09XdXh5UktMYzU2Ym9USVFMYmVvdUxab2RwTzRiWXhQQStkTmJkYnNJTEExdGZGQzMvaFh5QUIyaytCdkRHQXcxeDlF U0tTNnN1VGpkeEdsZXNDZmVmTHBqZEVya2dyTHk5YmZlWDNkaWlYVTVjRUFUSXNvbVMyN1B2U1VxMVd1bmEyeEx5Um5lei9OZDRtdGJhMVpiREhHaGJCR1My eEFod3pvM3E5WHAxQW9RZ25Sb25yTHJMVFRUeGtFdGp4SEMvREcxRVJtOXJMeFVJUUJHT2ZJUEdMWGZCeVlMazFxSGV3aVMxSnBlVTFwZVkwNGxKUnowRG1Y WllrUXZPS1BUVEdlRkNBQUhCVlpmcHhUU29XQllPZXlXLzA5YmRUQVR1MXpSSUlreGppcWFTY003ZHMyTjJ0WHk4V2UxMm5qbVZqVEVRTzJHSWxnSHl1cnBJ a1Y5YlczQVdOa2ttR01TbTMyeVUwd1pveGRmTjdJS3k0YUhRcEZNQ2JXaTVBb0NZZWoxOTd4NHByMVJaSkVkY2F0V1VnTkpJakN2aUFyVXVIMk1rRU8xeGtU dGV4a1dVSUFhOVp2azJUSlduK0ZtU1BXUkpFMlpKSGJ6TFNReHJHcitHSEJvcjVVNXc2dDdyN3AzSEE0S2pEZ2RLcWZ6MXEwVnJSVFp4RC9LNnQzZWFVQUFC RUVTVVJCVkpGeVJBalp1cTMwK1ZlKzFEUWQ3R05uaTdUWk1COWJqczFoRkt0MTNNVVdSTVd3eDVaUjR5dHpRVUdBd1RxQXlIeFpablp0a3laWUhJREJVcjhJ TU1abHMyY0VDamFCcnFVUEdaRjM3Mk9TMjJOSEw4Wlk4L3MyUG54SDdXOUxxTnVEZ1hQZ0dKT09OOTJkMENXZk14M2Jxbjd2bDhzKzV2c0ZMb2pFOVEzK3F1 cUduYVZWa1loR0tSR1lzUUVlTWM0ZER2WDBrd2N5eGlrbGdWRGsrQ0c5eFdsWHNkd2RqTVdjUUFnVFFqWnYzU2xtb1BsY0pFbTAzaHVvcnZFU2pCazM2anFD TVdOd2ZwYzJURGRUOENWYTMrQi80LzF2elFKWFZKYWttanJ2TGZlOSt1U0xuN3VjcXVnRndWalQ5QjBsRlpRUVJaRzJiaXRyOEFZczlSNkhKUTZaTFZMR2pE d21FdEVFTDA5VjVORW5IWU5RL1B1T3g3Q3hmQURvalBsOFFaUDBDNVFRcno4b2FxbnBMT1pCdEhLUENTRkZPOHFpdW81dDhXcENpVDhZTGltdElvUXdaaVFx MnlrbG5JUE8yQ1hualV4TlNkQjEzZUx1Y3c0T2gxSmFWbjM1cEdjS3R1NlVKY2tDUTNLaXAzM2I3S2ltQ1UrMVE1VTNGWmE4OS9FUGhCQlpraVNKU3BKVXRM M3MzQ3VtZkRGcnNjZnRNTWFONEZBb1VsbGRUd2lSSmJweHl3NnhybkVPT21jWTR3WnZnSFBBaG5ZZ3VzNzhnWkNvV3dweHF4SmluRjh5Y2RTdDE1M1Y0QTB3 eGxSVnFhdnozbkxmYXpWMVhsbVdnQVBqWE5lWjZDeWxWSmFsdjlZVVhISFRzNGxKYml0dFNCZ080dWE2emhwOElxZ0dBSWhRSEFpR3hBVmliTVdFMFJuREdH dFJUYnhRTVlDaW5obkJXQ3hOR0dFd3lsTnlRckRYRjhRSUF4YWNVeElLUjhLaGlLam1FNFB4TGppS1A1M1FOUE14SnBHS2lvS25IZzZYNzB3ZE1EVC9rZWVV MUxRNDlDSkFHQmM4ODJqRm5DOWxUd0ptREFqaDRWQ3JjeS9PdmVoS0JCemhXRlhFL2RyM3hxdzRzNEpoT0J4NWFPb0hLLzdjV0ZmdmQ2akt3UDc1eGdtRjlo OGhoQkRLeWt5Wi9jT3Z2a0JZb3VUZW15ZDJiTi9LT3JkZTJHM0VsSjhYL1RWMTJtZW1DakorTDBrMEdJelVOL2lPSDl6YjVYS1kvRlhqZE9tc3pOVFpjMyt0 Yi9BN0hRb0FrbVZwOWJxdEpUdXJLTUViQzRvL203bGcwdDJ2YkM0b2Z2bkpHOG9xYWpZVkZMdmRUbUh2VmRkNisvWHF0R1o5MGYxVDNqdHhXTitrUkxmdEFC ZHMyM0NpOUxTa2I3NWZGbzFxMGFqV3ZXdTd1MjQrMTZISzJCWUJialJFNGx4Rmd2RzhCWCs4UGYxN1NSSTJBcFlscWE3ZTE3MXJ1NjZkMjRnTERGT0ZFREdr R3pidnVIL0tldzNlZ0NSUk1JZFBWTXdyTGFzWlByaFhha3FDVmRqTm1odFVvb1NRMzFadW5EbG5pVm1OMFdvWU9CeHFhWG5ONG1WcnVuYk9iZE02aTVpblNI cmN6cS9uTEJXYVZvUURmbDI1MGVjUDZveXRYcmYxcmVuZjMzVHZxeElsejArNWV1bHY2MnRxdlE2SEltWnRmWDJnYjgrT3MrY3VmLzM5YjhlTUhLQW9NcVZF b2pRWURFOTU3cE1kTzZzVVJVWUFoQklSZ1R0MTFFQkZrZTFIekZyR3hYR0RlemxVWmRtSzlWNWYwT054YmkrdStQM1B6VjA2dFc3Vk1wM1laRnR4eGZPdnpu ajY1Uyt1di96MDg4ODYwZEtaVmhWTGpQSFgzeTc1Wk9ZQ1ZaV0ZPU1pMVW4yRHIzZVBEdTNiWnBzVEJnZ2h3c0grN0N0Zi9yRzZRRlZsaElCZ2dqRDJCOEtu alJyb2NUc0pJWUJCRkFLbWxPNHNxM25pK1UrOXZxQWtTU0tDSFF4R2toTGRKd3p2SzFGcTVwUEh2WDNqbi9adGcyRldBY2VFRnI3NFpPSHpqNmNOUFQ3L2tX ZWQyYTA0WTZMUUl3ZkFDRENoMjk1NmFlc0xUeERWS2NDc2gwT2VUbDM3dlBhUm5KSWFuNW14MzZGWDhTdWZQL1RCSno4VWJpOWIrdHY2UDFZWE9GV0ZBMmlh UG5oZzl6N2RPL1RNYTN2dVdTZVl1Vm9pbmdTVWtodnVldW1GSno4WWR2S2cyUjgvNG5ZNzdHWU13WGpSMHRVLy9Qejc1cUt5dWZOL0Q0VWlxcW9RTE5qTldN UjZPVUF3R082UjMyNzRzVDNiNUtTZmY4N0lGdWxKM0p6OXM3NWZkc09kTDVWVjFxcUtUQ2pCQ0FlQ0lZeHdWTmM5THNkNTQ0Ni81NWFKclhNeUZpNWRNL0hL eDZwcnZBNkhnZ25Xb2pvQXBLWWtUSnR5N2RqUmc3aXQ4THJvY2t6UllYekpkVS9PbkwyWUE3cnpoclB2dlhXaXFKQzQ2d1pZZkZLd3RYVEdOd3VMU2lwbnps bGMzeEJRRmRueXBVYzFQY0hqT21QMG9MYXRXNXd4Wm5CZTUxeUUwTnIxVzJmT1dseTBzM0x1L044ckt1dGRUcFZnVVlmZnFMa0pBTUZnSkxkVnhvbkg5Y3R0 bVhIVzJPRWRPK1JZWS9qbDF3dS8vV25GZHordHFLcXVWeFVaSVV5SUVYZTNUdEVKQkNNdWwzcmk4SDdkT3JVYWYvcXdudDA3WUl4ZmZ2dWIrNmU4RndpR0ZV V21oSERnd1VDRUVCelI5SXkwcEtzdkdYUHJkUk1TUEs3cG4vOTB6VzNUZE1ZVldjSVlSeU1hSnJodGJ1YmIwMjQ5dW0rWFNGVDdmT2FDOVp0Mi9MSnM5Vzhy TnprY1Nvekp5Q0VjMVlZTTZER29mOWRlM1RxTU8zMm9IWHZXNHJWZzhhcG5YL2xpOGEvclF1R29wckhVbElRVGh2WHAzYjJEMDZuVzFIclhiQ2hhdDNGYmx3 NnRIcjdyNHA3ZDJ1dU1FZHVLdVdiZDFsbmZMdDFhVWpGenpwSmdNS0lva3JYeVJpTFJ0TFNrTTBjUGF0dXF4YmpUaDdadm16MXYvc3BGeTlmOHRiN28rM2ty SkZtaU5tcFBNQnpwMTdQVGlDRzk4anEyUHYrY0U0T2h5UFJQNXhWdUwvdnVwOTgzYnQ3aGRLbWlTQWdneEJubkhFYU9PS3AzZnJ0aiszYzc2ZmlqZVB3MEVD STFBZy9pSEJIaTI3eXgrTU0zay9zYzNmV2had1I2RGQyTEVFS0FDYTFlOHN1Mk4xL0FzbUwwZ25NaXllMnZ1Y1ZTMU5obTVoMkFDSHVqdXJZQlkzTHFxSUdY bmpkU1ZSWEdlQ2djcWE3MTF0VjVhK3E4dG90akZ1bmxGNXdzSVh6aWlLT3MxQlpMaXlLTXZmNUFmVU9nWFc3V2JkZE5jTHVkZ3ZXcUtKS3d2aUtScUQ4UURv WWpEUTMrUURCY1dWMnZhN3JsVW1hY256cHFZSnZXbVc5UC8vN1hsUnZyNm4yY1E2dnM5SXowcFA1OXU1d3habkQvdm5rSUlWM1hoeDdiNCtNMzdwbjIrc3dO bTNkRUlwcXF5ajI2dHIzeHFuSEg5TXZiRmIzMlBSakYrTnd6ai90MDVnS1B5em42cEdNc0QyMlQzbnVNY1RnU3FhaXFTMHh3M1hqbG1SNjN3K2xRRkZrR2dF aEVDMGVpZ1ZDa3dldXZyS29QaGlMaTU4Rmd1THF1SVQwMTZjcUx4aVI0bkU2SDZuRTd4R0lFZ0tKUnpSOElCVU9SQm04Z0VBalgxRGFFSWhHek1nNUNHTlUz K0YxTzlZcUxUbEZWUlpFa1ZaRlZWVkprV1FUcXRLZ2VqbWlhcmdkREVaOC9XTzhOaU9jeXhxNjU5TFQ4em0wKytHemVxcldGUG44SVllUnNyYlRNU2p1MmY3 ZXpUaC9hdVdOcm9YSW5UaGpoZGp0ZWUzZjJqdUpLalRHMzB6SGc2SzQzWHpPdVUzdmoxS3ZxMm9aQU1IekNzTDdqVHgyaXFvclRxUkNNTloxSEl0RlFXR3Z3 K2hzYS9EVjFYanYzMGJKeEdHUERCL2NhUEtENy9FVi9mdi9UNzZ2V0Z1NHNyNW0zNEk4ZmZsN3ArUC8yemk1RWt1cUs0K2ZjVzlYZDB6M2R2VHU3T3oxckV1 TkdkOTAxcStKS0pFclVvTGdvSkdyRWIxQllSVWdpZ2tGOVVNSStSQkx5SUNJa1JEQVFGQ0VrSXZqRkJoMlhrUEVodmdSQ1ZtSEhIVmNVa3gzblkyZTZwN3Vu cTdxcjdzbkRyYnBWM1QyOS9URWZ5YzZlMzFOM2RYM2NXMTJYT3ZmY2MvNG5ZUmRHdDM3bndNVy8vZlZqTjE1L2haNmZTMkd5VmtnSXJDNDdNL09MTzdadmVl cXhlNGJUcVZRcWtiQXRwWlJiYnpoT283cnNGSmNxcy9ORjEyMFFZYWxjWFZoWTJyL3ZnbXUvdXorVlRBNE5KU3dwZmQ5MzNJYmoxa3ZsYXJGWW1UdGQwcDZk MmRNbDMxZDMzWFpkTHB0T0p1eFV5aFpDK3A1ZmMrbzF4eTB1VlU4dmxFcExGUk1pMCtFTlRCUTRiNGhRaU1sbm41NDkrcGNyZnYrbjdKNTladlNhcDgyZG0v blhUeCtzbmp5aFU0SlJDSzlhMlhuN2ZaYzgrNXlKdU9yWGNSWDMrTVZ2ZmJlRG9DVlV0ZDFQMi9MUTk5aWUxbXNBR0kxRkFDaFhsaGVMbFVhOU1UeWN6bVhU T3VwZHo4dTF2YW9OdVptNXhVcGxPWk1aR2hzZE1YTEg3YkcxY2RlTDQ5Wi84OUpiUXluN0p3L2RHa1VDZHFEMzdzVGZTQU4zZitEREZaRWVENHVsY3FsVTla WEtaVFA1YkZvTGVnYmFjUUFFSUlUd1BIOTJ2bGlydWZsOFp2dEkzbGdvdlRjZzF1WW1oU0VqY0FFQXl6V25XS3JvalBrdCtjeTJyVGt0U2EySXREQmd5em43 dXRXOXQ3UGZmOUEweGh3YnJvTUZscGtTUXBhblBwazgvTVNGUDN0bTVLcHJsTzlqbUgya0pTTUI4Wk5mL2Z6ZmYzN0ZEdU9pbGVjbHR1MjQvSGV2Wmk3Y0hi MHUraCs5NFRwcVdPUWkwSzgwclE2M0JuMkErR3duZmlvVGZOdithenhmTERwbnkvOGMrMTNIYnpXZlFRR2d0SVFJOGdvcFZLSnJtdFBxbk01d1VncWVsbkU3 b3hpWGlmN1hxWGFlNXhzdGdUTWNFbmZtTlVVenJkU0xUdnYzMkgwVi96czZCVTkxdUs2MkpyVFFoOTVQeDRvYXJXSFRQRjJ4UVc5b05IdzlwVnloQVMxWDcv Wmd4QzhCQ0pZVVFrUnhZRW9wei9mMWlrYW5DSzNvMW5XNHRPbHkwMlBXcloyOWRTcTZTNUZyaGdnUkF4TmFTejBqSUpGYS9QdkVOeDkrTkJ5OVFhUkM0TWlX Y3U2RG85TnZ2V2FsMHViMVIxNWo1KzMzRGwrMFIwczlEMkE4eC8zeU1oWmVCL0hQYThIcXp5ZGJUNkhUTjlxZm1LYmR0R2VpTHl4cmpmdStldHI2dmhyUVpB V2ZZUi9iYnJwdmE5cUFKb1FRaWM3RHZsLzZhdVpnblRKRExMaEJ4aXZxenM4Tjc3bGs1T3J2R1cyTnlNQVRvbDRxZnY3aUMxU3ZpMVJLRDFkcTFKT0ZuV08z M2tITk03WitXNk9QTzNYcTFQajQrUDl6N0RqRC9LL1F5WEFIRHg0c0ZBcG1UbVNaSDdVZEpZZlNXNis2MmlRTVJmRUFSQ2pFN0h2dmxJOS9KSklwQ0oweHZ1 dU9YUFA5b2ErZGI2YlhnODJVOVB6azJMRmpodzRkV3Z1dU04eG1ZV0ppb2xBb21QbDhhRUtIcmxvcmt3R3pNbU1TZHdGQWlFYXBPUDNtYTZIWEZ4Q1JsSkxw ek5nUDdvZzc2L3VhL1pxcjZ3YnMzcjM3OE9IREF4aWNETFBwMFcvZ1hidDJ4V2ZDTVNkV1RQUVV3OG9tZ2Yyc2xCQmlidUxveDAvK0dJVkVCRVdFS0pSYnkx eTA5OEFmWHJleVdSTktQSmdCdkI0cUV3eXpXVm5CaElZb29pbllZcFNROUhpZS85djd5blVzVXpvUWtYdy9kOWtCSzVlRDBIMjFtdGEwZUtFWmhta25ldmZH blZqdFlYclJCeUlVd3BtYldmekhoOEpPaENzYkJLUlFXdG05K3lFTWsxOWgrYXhuNHVHQnErd2h3Mng2ek1KTmw5RmlJdTRySjQ2N005Tm8yeGpsVHhCSWFX L1pxdGVTWUlWOCtmNWFNOWl4REhNTzBycU0xQWtNTXg2ckowOG8xNUhwakRhM0JZSWlFSlp0NS9LQmZINm5sZjNlMkNERkNZYlpGRVFXYTljZENRVWlPcWYr QXlZVlczL1NNZ3ZOZ1pucjJHU0dZZHJvUHVIVTltMWpZVTRIV2VtTjJyVkZudWZYYXBFdUFadkJETE94OUZOZU5DclZHaXJ0K3I1ZlhnSUFJQXdMekRBTXMz RjBIOEI2dXB6WVBxcFhsaUJ3VENNaUtxOVJQdjZ4Rm9zR1JCcW9FaVRETUFQVHpRc2RhckVsUjhmTTdEZW95Z2FBS0pZKytxZnYxQUxoT29JelZDSm1HR2JO NlRLQWpYTTR1L2ZiSXBuU3NnMWF1eEdKWkRKWi9YU3lPalVKQUxxVW10SGszS2oyTTh3NVRROG1OQ0lSNVMrL2NuamZwY3AxTVM2M0thVlhLWC81eDVjeERN T2tZRkdZSFZvTXN4SDA0SVVHSktXc2RPYTgyKzRPQlRmQzRFY2lPWlNlUFhwaytzZ2JLS1hPbDlkQ0hFWUJaQ002d1REbktqMlkwQWlBU0tRS04vOXcrL1Uz K2RVS1NndGltZ0JBYXVxNVg4eitkVnhZRmlJcTN3ZWxNQ3h1eUNGV0RMTitkQmxnTWNrMUpZU3Nmdkhac2NjZnFVNGR0NGV6WU42eGlLcGVsK25NdHg1OThy dzc3NWQySXNxV2FFbVFZQmhtVGVuK2hxUjRVcUdVNWFuSms4Ly9jdUhERDhqek1KRkFLUkVGU0VHZUQ3NDNjdTBOWDcvN2dmeGxWNHBNcGowdmdtR1l0YVVu RTVkQ3ZRNDlobjNYbVIwLzh0VzdieTkvTnVWWHlsNXRXU2NZb3BSQWtCZ3RqTjN5bzI4ODhIQWlsMWRFcU9XREdZWlpCM29kd0VhdERraUJrTHFXVjMzbUsy ZG0ycDJmSWM4alJUS1Z0TGVOcG5hTXl0U1FsZCtDVXNLZ2FxWU13L1JDejA0bW83TVRscFNETUxHNDgrN0FvNWRoMXBWK3ZNUXhkWEFLNVkvTlR4RDNWNFhG cFZncmgySFdsVDZYZVVJQnJTWXA4STdueHZaS0VBekRyQ0hJR2xRTWMvYkMvbUdHT1l2aFNDbUdPWXV4S3BVYUdhY1VBQkJRS0dVSHNlMWtWcE9DN3dRSXV0 QzNTZk5uR0dhRHNScWViNFp0TkhEMWltK3dLZGpZUHFDREhDU0F0dUtCRE1Oc0JQOEZyd2Vyb2RYM0Mwa0FBQUFBU1VWT1JLNUNZSUk9JzsNCg0KICAgIGNv bnN0IHNrdU1hcCA9IHsKICAgICIzMTU0MTQ2ODYxMTA0IjogIjEwMDI2OSIKfTsNCg0KICAgIGNvbnN0IGthdFVybCA9IHsKICAgICJNYWthcyI6ICIva2F0 ZWdvcmkvbWFrYXMiCn07DQoNCiAgICBsZXQgUCA9IFsKICAgIHsKICAgICAgICAic2t1IjogIjMxNTQxNDY4NjExMDQiLAogICAgICAgICJzbHVnIjogIm1h cGVkLWV4cGVydC10aXRhbml1bS1hc2ltZXRyaWstbWFrYXMtMjEtY20iLAogICAgICAgICJpc2ltIjogIk1hcGVkIEV4cGVydCBUaXRhbml1bSBBc2ltZXRy aWsgTWFrYXMgMjEgY20iLAogICAgICAgICJpZCI6ICIxMDAyNjkiLAogICAgICAgICJmaXlhdCI6IDYxMiwKICAgICAgICAiZml5YXRUYW0iOiA2MTIsCiAg ICAgICAgImRldGF5IjogIjxkaXYgY2xhc3M9XCJtay1kZXNjXCI+XG48ZGl2IGNsYXNzPVwibWstdHJ1c3QtdGl0bGVcIj48c3Ryb25nPk1BUEVEIFJFU03E sCBZRVRLSUxJIFNBVElDSSBHw5xWRU5DRVPEsDwvc3Ryb25nPjwvZGl2PlxuPHAgY2xhc3M9XCJtay10cnVzdC10ZXh0XCI+TWF2aUthbGVtLCBNYXBlZCBt YXJrYXPEsW7EsW4gcmVzbWkgeWV0a2lsaSBzYXTEsWPEsXPEsWTEsXIuIFNpdGVtaXpkZSBzYXTEscWfYSBzdW51bGFuIHTDvG0gb3JpamluYWwgTWFwZWQg w7xyw7xubGVyaSDDvHJldGljaS9kaXN0cmliw7x0w7ZyIGZpcm1hIGfDvHZlbmNlc2kgYWx0xLFuZGFkxLFyLjxiciAvPjxiciAvPjxzdHJvbmc+S3VydW1z YWwgRGVzdGVrIEhhdHTEsW3EsXo6IDQ0NCAxMSA2NDwvc3Ryb25nPjwvcD5cbjxoMiBjbGFzcz1cIm1rLXRpdGxlXCI+TWFwZWQgRXhwZXJ0IFRpdGFuaXVt IEFzaW1ldHJpayBNYWthcyAyMSBjbSDDlnplbGxpa2xlcmk8L2gyPlxuPHAgY2xhc3M9XCJtay10ZXh0XCI+T2ZpcyDDp2FsxLHFn2FubGFyxLFuxLFuLCDD tsSfcmV0bWVubGVyaW4sIMO2xJ9yZW5jaWxlcmluIHZlIHByb2Zlc3lvbmVsIHRhc2FyxLFtIGF0w7ZseWVsZXJpbmluIGfDvG5sw7xrIGtlc2ltIGlodGl5 YcOnbGFyxLFuxLEgZW4gw7xzdCBkw7x6ZXkga29uZm9ybGEga2FyxZ/EsWxhbWFrIGnDp2luIGdlbGnFn3RpcmlsZW4gTWFwZWQgRXhwZXJ0IFRpdGFuaXVt IEFzaW1ldHJpayBNYWthcywgZ8O8Y8O8IHZlIHphcmFmZXRpIGJpciBhcmFkYSBzdW5hci4gMjEgY20gaWRlYWwgYm95dXR1IHZlIHRpdGFueXVtIGthcGxh bWFsxLEgw7Z6ZWwgYsSxw6dhayB5YXDEsXPEsSBzYXllc2luZGUga3VtYcWfLCBrYWzEsW4ga2FydG9uLCBtdWthdnZhIHZlIMOnb2sga2F0bWFubMSxIGvD osSfxLF0bGFyxLEgem9ybGFubWFkYW4sIHRlayBoYW1sZWRlIHDDvHLDvHpzw7x6Y2Uga2VzZXIuIFRpdGFueXVtIHRla25vbG9qaXNpLCBixLHDp2FrbGFy xLFuIGvDtnJlbG1lc2luaSDDtm5sZXllcmVrIGdlbGVuZWtzZWwgbWFrYXNsYXJhIGvEsXlhc2xhIMOnb2sgZGFoYSB1enVuIMO2bcO8cmzDvCBiaXIgcGVy Zm9ybWFucyB2YWRlZGVyLiBFbCBhbmF0b21pc2luZSB0YW0gdXl1bSBzYcSfbGF5YW4gYXNpbWV0cmlrIGfDtnZkZSB0YXNhcsSxbcSxLCB1enVuIHPDvHJl bGkga3VsbGFuxLFtbGFyZGEgYmlsZSBwYXJtYWsgdmUgYmlsZWsgeW9yZ3VubHXEn3VudSBtaW5pbXVtYSBpbmRpcmlyLiBDcmFmdCB2ZSBob2JpIGFrdGl2 aXRlbGVyaW5kZW4geW/En3VuIG9maXMgacWfbGVyaW5lIGthZGFyIGhlciBhbGFuZGEga3VzdXJzdXogZMO8emzDvGt0ZSBrZXNpbSBoYXRsYXLEsSBlbGRl IGV0bWVuaXppIHNhxJ9sYXlhbiBNYXBlZCBFeHBlcnQsIMOnYWzEscWfbWEgbWFzYW7EsXrEsW4gZW4gZGF5YW7EsWtsxLEgdmUgZ8O8dmVuaWxpciBwYXLD p2FzxLEgb2xtYWsgacOnaW4gc2VwZXRpbml6ZSBla2xlbWVuaXogZ2VyZWtlbiBwcm9mZXN5b25lbCBiaXIga8SxcnRhc2l5ZSBhcmFjxLFkxLFyLjwvcD5c bjxoMiBjbGFzcz1cIm1rLXN1YnRpdGxlXCI+w5ZuZSDDh8Sxa2FuIMOccsO8biDDlnplbGxpa2xlcmk8L2gyPlxuPHVsIGNsYXNzPVwibWstbGlzdFwiPlxu PGxpPjxzdHJvbmc+VGl0YW55dW0gS2FwbGFtYSBCxLHDp2FrbGFyOjwvc3Ryb25nPiBTdGFuZGFydCDDp2VsaWsgbWFrYXNsYXJhIGfDtnJlIMOnb2sgZGFo YSB1enVuIHPDvHJlIGtlc2tpbmxpxJ9pbmkga29ydXlhbiwgcGFzbGFubWF5YSB2ZSBhxZ/EsW5tYXlhIGthcsWfxLEgdWx0cmEgZGlyZW7Dp2xpIHRpdGFu eXVtIHRla25vbG9qaXNpLjwvbGk+XG48bGk+PHN0cm9uZz5Fcmdvbm9taWsgQXNpbWV0cmlrIFRhc2FyxLFtOjwvc3Ryb25nPiBLZXNpbSBlc25hc8SxbmRh IGVsIGJhc8SxbmPEsW7EsSBkZW5nZWxpIGRhxJ/EsXRhbiwga2F5bWF5xLEgw7ZubGV5ZW4gdmUgcGFybWFrbGFyxLEgeW9ybWF5YW4gw7Z6ZWwgYXNpbWV0 cmlrIHNhcCBtaW1hcmlzaS48L2xpPlxuPGxpPjxzdHJvbmc+R2VsacWfdGlyaWxtacWfIE11a2F2ZW1ldDo8L3N0cm9uZz4gS2FsxLFuIGthcnRvbiwgcGxh c3RpayBhbWJhbGFqLCBrdW1hxZ8gdmUgw6dva2x1IGvDosSfxLF0IGthdG1hbmxhcsSxbmRhIHRha8SxbG1hZGFuLCBww7xyw7x6c8O8eiB2ZSBkb8SfcnVz YWwga2VzaW0geWFwYWJpbG1lIGfDvGPDvC48L2xpPlxuPGxpPjxzdHJvbmc+MjEgY20gxLBkZWFsIEJveXV0Ojwvc3Ryb25nPiBIZW0gaGFzc2FzIGRldGF5 IMOnaXpnaXNpbmkgdGFraXAgZWRlYmlsZWNlxJ9pbml6IGhlbSBkZSB1enVuIGTDvHoga2VzaW1sZXJpIHRlayBzZWZlcmRlIHRhbWFtbGF5YWJpbGVjZcSf aW5peiBvcHRpbXVtIHByb2Zlc3lvbmVsIMO2bMOnw7wuPC9saT5cbjxsaT48c3Ryb25nPlnDvGtzZWsgTWFsemVtZSBLYWxpdGVzaTo8L3N0cm9uZz4gWW/E n3VuIHZlIHNlcnQga3VsbGFuxLFtIGtvxZ91bGxhcsSxbmEgZGF5YW5hY2FrIMWfZWtpbGRlIHRhc2FybGFubcSxxZ8sIGvEsXLEsWxtYSB2ZSBlc25lbWV5 ZSBrYXLFn8SxIGtvcnVtYWzEsSBnw7Z2ZGUgeWFwxLFzxLEuPC9saT5cbjwvdWw+XG48aDIgY2xhc3M9XCJtay1zdWJ0aXRsZVwiPlRla25payBEZXRheWxh cjwvaDI+XG48dGFibGUgY2xhc3M9XCJtay10YWJsZVwiPlxuPHRib2R5PlxuPHRyPlxuPHRoPk1hcmthIC8gw5xyZXRpY2k6PC90aD5cbjx0ZD5NYXBlZCAo RnJhbnNhIC8gR2xvYmFsKTwvdGQ+XG48L3RyPlxuPHRyPlxuPHRoPk1vZGVsIC8gU2VyaTo8L3RoPlxuPHRkPkV4cGVydCBUaXRhbml1bSBTZXJpc2k8L3Rk PlxuPC90cj5cbjx0cj5cbjx0aD7DnHLDvG4gQmFya29kdTo8L3RoPlxuPHRkPjMxNTQxNDY4NjExMDQ8L3RkPlxuPC90cj5cbjx0cj5cbjx0aD5NYWthcyBU aXBpOjwvdGg+XG48dGQ+QXNpbWV0cmlrIFRhc2FyxLFtIC8gT2ZpcyB2ZSBIb2JpIFRpcGk8L3RkPlxuPC90cj5cbjx0cj5cbjx0aD5CxLHDp2FrIMOWemVs bGnEn2k6PC90aD5cbjx0ZD5Zw7xrc2VrIE11a2F2ZW1ldGxpIFRpdGFueXVtIEthcGxhbWEgKFVsdHJhIEtlc2tpbik8L3RkPlxuPC90cj5cbjx0cj5cbjx0 aD7DnHLDvG4gw5Zsw6fDvGxlcmk6PC90aD5cbjx0ZD4yMSBjbSAoU3RhbmRhcnQgQsO8ecO8ayBCb3kpPC90ZD5cbjwvdHI+XG48dHI+XG48dGg+VHV0YW1h ayBNYXRlcnlhbGk6PC90aD5cbjx0ZD5Fcmdvbm9taWsgS29uZm9yIFNhxJ9sYXlhbiDDlnplbCBQbGFzdGlrIEfDtnZkZTwvdGQ+XG48L3RyPlxuPHRyPlxu PHRoPlNhxJ9sxLFrIFN0YW5kYXJ0bGFyxLE6PC90aD5cbjx0ZD5Ub2tzaWsgTWFkZGUgxLDDp2VybWV6LCBLdWxsYW7EsWPEsSBHw7x2ZW5sacSfaW5lIFV5 Z3VuZHVyPC90ZD5cbjwvdHI+XG48dHI+XG48dGg+S3VsbGFuxLFtIEFsYW5sYXLEsTo8L3RoPlxuPHRkPk9maXNsZXIsIE9rdWxsYXIsIFNhbmF0IEF0w7Zs eWVsZXJpLCBUZXJ6aWxpayB2ZSBUYXNhcsSxbSDDh2FsxLHFn21hbGFyxLEsIEV2IHZlIEhvYmkgTWFzYWxhcsSxPC90ZD5cbjwvdHI+XG48L3Rib2R5Plxu PC90YWJsZT5cbjxkZXRhaWxzIGNsYXNzPVwibWstYWNjb3JkaW9uXCI+XG48c3VtbWFyeSBjbGFzcz1cIm1rLWFjY29yZGlvbi1zdW1tYXJ5XCI+PHNwYW4+ R2FyYW50aSwgxLBhZGUgdmUgTG9qaXN0aWsgRGV0YXlsYXI8L3NwYW4+IDxzcGFuIGNsYXNzPVwibWstYWNjb3JkaW9uLWljb25cIj4rPC9zcGFuPjwvc3Vt bWFyeT5cbjxkaXYgY2xhc3M9XCJtay1hY2NvcmRpb24tY29udGVudFwiPk1hdmlLYWxlbSdkZW4gc2F0xLFuIGFsZMSxxJ/EsW7EsXogdMO8bSBvcmlqaW5h bCBNYXBlZCDDvHLDvG5sZXJpLCDDvHJldGltIHZlIG1hbHplbWUgaGF0YWxhcsSxbmEga2FyxZ/EsSBmaXJtYSBnw7x2ZW5jZXNpIGFsdMSxbmRhZMSxci4g S3VsbGFuxLFsbWFtxLHFnyB2ZSBhbWJhbGFqxLEgemFyYXIgZ8O2cm1lbWnFnyDDvHLDvG5sZXJpIDE0IGfDvG4gacOnaW5kZSB5YXNhbCBoYWtsYXLEsW7E sXoga2Fwc2FtxLFuZGEgc29ydW5zdXpjYSBpYWRlIGVkZWJpbGlyc2luaXouIEVuIGRvxJ9ydSBmaXlhdCBhdmFudGFqxLEsIGhhc3NhcyBwYWtldGxlbWUg a2FyZ28gZ8O2bmRlcmltIGdhcmFudGlzaSB2ZSBlbnRlZ3JlIGxvamlzdGlrIG1lcmtlemltaXpsZSB0w7xtIHPDvHJlw6dsZXJkZSB5YW7EsW7EsXpkYXnE sXouPC9kaXY+XG48L2RldGFpbHM+PGRldGFpbHMgY2xhc3M9XCJtay1hY2NvcmRpb25cIiBzdHlsZT1cIm1hcmdpbi1ib3R0b206IDI1cHg7XCI+XG48c3Vt bWFyeSBjbGFzcz1cIm1rLWFjY29yZGlvbi1zdW1tYXJ5XCI+PHNwYW4+TmVkZW4gTWF2aUthbGVtJ2RlbiBBbG1hbMSxc8SxbsSxej88L3NwYW4+IDxzcGFu IGNsYXNzPVwibWstYWNjb3JkaW9uLWljb25cIj4rPC9zcGFuPjwvc3VtbWFyeT5cbjxkaXYgY2xhc3M9XCJtay1hY2NvcmRpb24tY29udGVudFwiPlxuPHVs IGNsYXNzPVwibWstbGlzdFwiIHN0eWxlPVwibWFyZ2luLWJvdHRvbTogMDtcIj5cbjxsaT48c3Ryb25nPllldGtpbGkgU2F0xLFjxLEgR8O8dmVuY2VzaTo8 L3N0cm9uZz4gVGFrbGl0IHZleWEga2FsaXRlc2l6IG11YWRpbCDDvHLDvG4gcmlza2luZSBnaXJtZWRlbiByZXNtaSBvbmF5bMSxIHlldGtpbGkgc2F0xLFj xLFkYW4gZ8O8dmVubGUgb3JpamluYWwgw7xyw7xuIHNhdMSxbiBhbMSxcnPEsW7EsXouPC9saT5cbjxsaT48c3Ryb25nPkVuIERvxJ9ydSBGaXlhdCBHYXJh bnRpc2k6PC9zdHJvbmc+IERvxJ9ydWRhbiBhbmEgc3RvayBnw7xjw7xtw7x6bGUgaGVyIHphbWFuIGVuIGF2YW50YWpsxLEgdmUgZW4gZG/En3J1IGZpeWF0 bGFyxLEgc3VudXlvcnV6LjwvbGk+XG48bGk+PHN0cm9uZz5IxLF6bMSxIEthcmdvOjwvc3Ryb25nPiBFbnRlZ3JlIGxvamlzdGlrIG1lcmtlemltaXogc2F5 ZXNpbmRlIHNpcGFyacWfbGVyaW5peiBnw7x2ZW5sZSBwYWtldGxlbmlyIHZlIGjEsXpsYSB5b2xhIMOnxLFrYXIuPC9saT5cbjxsaT48c3Ryb25nPkt1cnVt c2FsIERlc3RlayBIYXR0xLE6PC9zdHJvbmc+IFTDvG0gc8O8cmXDp2xlcmRlIDxzdHJvbmc+NDQ0IDExIDY0PC9zdHJvbmc+IG51bWFyYWzEsSBrdXJ1bXNh bCBoYXR0xLFtxLF6bGEgeWFuxLFuxLF6ZGF5xLF6LjwvbGk+XG48L3VsPlxuPC9kaXY+XG48L2RldGFpbHM+PC9kaXY+IiwKICAgICAgICAiaW1nIjogImh0 dHBzOi8vd3d3Lm1hdmlrYWxlbS50ci9pZGVhL3JmLzg2L215YXNzZXRzL3Byb2R1Y3RzLzI2OS8xMDkucG5nIiwKICAgICAgICAiYWRldCI6IDIsCiAgICAg ICAgInNlbCI6IHRydWUsCiAgICAgICAgImthdCI6ICJNYWthcyIsCiAgICAgICAgInZhcnlhbnRsaSI6IDAKICAgIH0KXTsNCg0KICAgIC8vIMOWxJ9yZW5j aSBiYXpsxLEgdGVrbGlmIG1vZHU6IMO8csO8biBhZGV0bGVyaSBraWxpdGxpLCBzYWRlY2Ugw7bEn3JlbmNpIHNhecSxc8SxIGdpcmlsaXINCiAgICAvLyB2 ZSB0w7xtIGFkZXRsZXIgYnVudW5sYSDDp2FycMSxbMSxci4gTm9ybWFsL2fDvG5jZWxsZW1lIHNheWZhbGFyxLFuZGEgZmFsc2Ugb2x1ci4NCiAgICBjb25z dCBURUtMSUZfTU9EVSA9IGZhbHNlOw0KDQogICAgLy8gUCdkZWtpIGZpeWF0bGFyYSB1eWd1bGFubcSxxZ8gecO8emRlIGluZGlyaW0gKDAgPSBpbmRpcmlt IHlvaykuIFNheWZhIGJ1bnUNCiAgICAvLyBrdWxsYW5txLF5b3I7IEVsZWN0cm9uICLDh8O2esO8bWxlIiBpbGUgYnUgc2F5ZmF5xLEgZ2VyaSBva3VkdcSf dW5kYSBmaXlhdGxhcsSxDQogICAgLy8gbGlzdGUgZml5YXTEsW5hIGTDtm5kw7xybWVrIGnDp2luIHZhciDigJQgb2xtYXpzYSBoZXIgw7xyZXRpbWRlIGlu ZGlyaW0gw7xzdMO8bmUNCiAgICAvLyBpbmRpcmltIGJpbmVyZGkuDQogICAgY29uc3QgSU5ESVJJTV9ZVVpERSA9IDA7DQogICAgZnVuY3Rpb24gb2dyZW5j aVNheWlzaSgpIHsNCiAgICAgICAgY29uc3QgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc3R1ZGVudC1jb3VudCcpOw0KICAgICAgICBpZiAoIVRF S0xJRl9NT0RVIHx8ICFlbCkgcmV0dXJuIDE7DQogICAgICAgIGNvbnN0IG4gPSBNYXRoLmZsb29yKE51bWJlcihlbC52YWx1ZSkpOw0KICAgICAgICByZXR1 cm4gKCFuIHx8IG4gPCAxKSA/IDEgOiBuOw0KICAgIH0NCg0KICAgIGxldCBhY3RpdmVLYXQgPSAndHVtdSc7DQogICAgbGV0IG1vZGFsSWR4ID0gLTE7DQog ICAgLy8gVG9wbGFtL3R1dGFyIGhlc2FixLFuZGEgZml5YXTEsW4gVEFNICh5dXZhcmxhbm1hbcSxxZ8pIGjDomxpIGt1bGxhbsSxbMSxciDigJQgc2VwZXQN CiAgICAvLyB0b3BsYW3EsXlsYSBiaXJlYmlyIHR1dG1hc8SxIGnDp2luLiBHw7Zyw7xuZW4gYmlyaW0gZml5YXQgeWluZSAnZml5YXQnICgyIG9uZGFsxLFr KS4NCiAgICAvLyBFc2tpIHNheWZhbGFyZGEgZml5YXRUYW0gb2xtYXlhYmlsaXI7IG8gemFtYW4gZml5YXRhIGTDvMWfZXIuDQogICAgZnVuY3Rpb24gdGFt Rml5YXQocCkgew0KICAgICAgICBjb25zdCB2ID0gKHAgJiYgcC5maXlhdFRhbSAhPSBudWxsKSA/IE51bWJlcihwLmZpeWF0VGFtKSA6IE51bWJlcihwICYm IHAuZml5YXQpOw0KICAgICAgICByZXR1cm4gaXNGaW5pdGUodikgPyB2IDogMDsNCiAgICB9DQogICAgZnVuY3Rpb24gdXBkYXRlRm9vdGVyKCkgew0KICAg ICAgICBjb25zdCBjYXJwYW4gPSBvZ3JlbmNpU2F5aXNpKCk7DQogICAgICAgIGNvbnN0IHN0YXRzID0gUC5yZWR1Y2UoKGFjYywgcCkgPT4gew0KICAgICAg ICAgICAgaWYgKHAuc2VsKSB7IGFjYy5jb3VudCsrOyBhY2MuaXRlbXMgKz0gcC5hZGV0ICogY2FycGFuOyBhY2MudG90YWwgKz0gdGFtRml5YXQocCkgKiBw LmFkZXQgKiBjYXJwYW47IH0NCiAgICAgICAgICAgIHJldHVybiBhY2M7DQogICAgICAgIH0sIHsgY291bnQ6IDAsIGl0ZW1zOiAwLCB0b3RhbDogMCB9KTsN CiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1iYWRnZScpLnRleHRDb250ZW50ID0gc3RhdHMuY291bnQ7DQogICAgICAgIGlmIChURUtM SUZfTU9EVSkgew0KICAgICAgICAgICAgLy8gVGVrbGlmIG1vZHU6IHNlw6dpbSB5b2ssIHRvcGxhbSBmaXlhdCBnw7ZzdGVyaWxtZXoNCiAgICAgICAgICAg IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtY291bnQnKS50ZXh0Q29udGVudCA9IGBMxLBTVEVERSAke3N0YXRzLmNvdW50fSDDnFLDnE5gOw0KICAg ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1wcmljZScpLnRleHRDb250ZW50ID0gJ1NlcGV0ZSBla2xlcmtlbiDDtsSfcmVuY2kgc2F5 xLFzxLEgc29ydWx1cic7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLWNvdW50JykudGV4dENv bnRlbnQgPSBgU0XDh8SwTEVOOiAke3N0YXRzLml0ZW1zfSBBREVUYDsNCiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtcHJpY2Un KS50ZXh0Q29udGVudCA9IGBUT1BMQU06ICR7c3RhdHMudG90YWwudG9Mb2NhbGVTdHJpbmcoJ3RyLVRSJywge21pbmltdW1GcmFjdGlvbkRpZ2l0czoyfSl9 IFRMYDsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBmdW5jdGlvbiByZW5kZXJQaWxscygpIHsNCiAgICAgICAgY29uc3QgY2F0cyA9IFsuLi5uZXcgU2V0KFAu bWFwKHAgPT4gcC5rYXQpKV07DQogICAgICAgIGNvbnN0IGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1waWxscycpOw0KICAgICAgICBlbC5p bm5lckhUTUwgPSAnJzsNCiAgICAgICAgY29uc3QgbWFrZUJ0biA9IChsYWJlbCwga2F0KSA9PiB7DQogICAgICAgICAgICBjb25zdCBiID0gZG9jdW1lbnQu Y3JlYXRlRWxlbWVudCgnYnV0dG9uJyk7DQogICAgICAgICAgICBiLmNsYXNzTmFtZSA9IGBwaWxsICR7YWN0aXZlS2F0ID09PSBrYXQgPyAnYWN0aXZlJyA6 ICcnfWA7DQogICAgICAgICAgICBiLnRleHRDb250ZW50ID0gbGFiZWw7DQogICAgICAgICAgICBiLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4g ew0KICAgICAgICAgICAgICAgIGFjdGl2ZUthdCA9IGthdDsNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcjZHNsLXBpbGxz IC5waWxsJykuZm9yRWFjaChwID0+IHAuY2xhc3NMaXN0LnJlbW92ZSgnYWN0aXZlJykpOw0KICAgICAgICAgICAgICAgIGIuY2xhc3NMaXN0LmFkZCgnYWN0 aXZlJyk7DQogICAgICAgICAgICAgICAgcmVuZGVyR3JpZCgpOw0KICAgICAgICAgICAgfSk7DQogICAgICAgICAgICByZXR1cm4gYjsNCiAgICAgICAgfTsN CiAgICAgICAgZWwuYXBwZW5kQ2hpbGQobWFrZUJ0bignVMO8bcO8JywgJ3R1bXUnKSk7DQogICAgICAgIGNhdHMuZm9yRWFjaChjID0+IGVsLmFwcGVuZENo aWxkKG1ha2VCdG4oYywgYykpKTsNCiAgICB9DQogICAgZnVuY3Rpb24gcmVuZGVyR3JpZCgpIHsNCiAgICAgICAgY29uc3QgZ3JpZCA9IGRvY3VtZW50Lmdl dEVsZW1lbnRCeUlkKCdkc2wtZ3JpZCcpOw0KICAgICAgICBncmlkLmlubmVySFRNTCA9ICcnOw0KICAgICAgICBsZXQgc2hvd24gPSAwOw0KICAgICAgICBQ LmZvckVhY2goKHAsIGlkeCkgPT4gew0KICAgICAgICAgICAgaWYgKGFjdGl2ZUthdCAhPT0gJ3R1bXUnICYmIHAua2F0ICE9PSBhY3RpdmVLYXQpIHJldHVy bjsNCiAgICAgICAgICAgIHNob3duKys7DQoNCiAgICAgICAgICAgIGNvbnN0IGNhcmQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsNCiAgICAg ICAgICAgIGlmIChURUtMSUZfTU9EVSkgew0KICAgICAgICAgICAgICAgIC8vIMOccsO8biDDp8Sxa2FybWEvZWtsZW1lIHlvazogc2XDp2ltIGt1dHVzdSB5 b2ssIGthcnQgdMSxa2xhbWFzxLEgYmlyIMWfZXkNCiAgICAgICAgICAgICAgICAvLyB5YXBtYXouIEfDtnJzZWwgLyBEZXRheSDEsG5jZWxlIGlsZSBhw6fE sWtsYW1hIG1vZGFsxLEgYcOnxLFsxLFyOyBhZGV0IGtpbGl0bGkuDQogICAgICAgICAgICAgICAgY2FyZC5jbGFzc05hbWUgPSAncGMnOw0KICAgICAgICAg ICAgICAgIGNhcmQuc3R5bGUuY3Vyc29yID0gJ2RlZmF1bHQnOw0KICAgICAgICAgICAgICAgIGNhcmQuaW5uZXJIVE1MID0gYA0KICAgICAgICAgICAgICAg ICAgICA8ZGl2IGNsYXNzPSJwYy1pbWctd3JhcCI+DQogICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJwYy1pbWciIHNyYz0iJHtwLmltZ30i IGFsdD0iJHtwLmlzaW19IiBvbmVycm9yPSJ0aGlzLnN0eWxlLmRpc3BsYXk9J25vbmUnIj4NCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAg ICAgICAgICAgICAgIDxhIGNsYXNzPSJwYy1jYXQiIGhyZWY9IiR7a2F0VXJsW3Aua2F0XSB8fCAnL2thdGVnb3JpJ30iIHRhcmdldD0iX2JsYW5rIj4ke3Au a2F0fTwvYT4NCiAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9InBjLW5hbWUiIGhyZWY9Ii91cnVuLyR7cC5zbHVnfSIgdGFyZ2V0PSJfYmxhbmsiPiR7 cC5pc2ltfTwvYT4NCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGMtcHJpY2Utcm93Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFu IGNsYXNzPSJwYy1wcmljZSI+JHtwLmZpeWF0LnRvTG9jYWxlU3RyaW5nKCd0ci1UUicsIHttaW5pbXVtRnJhY3Rpb25EaWdpdHM6Mn0pfSBUTDwvc3Bhbj4N CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgYDsNCiAgICAgICAgICAgICAgICBjb25zdCBpbSA9IGNhcmQucXVlcnlTZWxl Y3RvcignLnBjLWltZycpOw0KICAgICAgICAgICAgICAgIGltLnN0eWxlLmN1cnNvciA9ICd6b29tLWluJzsNCiAgICAgICAgICAgICAgICBpbS5hZGRFdmVu dExpc3RlbmVyKCdjbGljaycsICgpID0+IG9wZW5Nb2RhbERpcmVjdChpZHgpKTsNCiAgICAgICAgICAgICAgICBjb25zdCBkYiA9IGRvY3VtZW50LmNyZWF0 ZUVsZW1lbnQoJ2J1dHRvbicpOw0KICAgICAgICAgICAgICAgIGRiLmNsYXNzTmFtZSA9ICdidG4tZGV0JzsNCiAgICAgICAgICAgICAgICBkYi50ZXh0Q29u dGVudCA9ICdEZXRheSDEsG5jZWxlJzsNCiAgICAgICAgICAgICAgICBkYi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IG9wZW5Nb2RhbERpcmVj dChpZHgpKTsNCiAgICAgICAgICAgICAgICBjYXJkLmFwcGVuZENoaWxkKGRiKTsNCiAgICAgICAgICAgICAgICBjb25zdCBpbmZvID0gZG9jdW1lbnQuY3Jl YXRlRWxlbWVudCgnZGl2Jyk7DQogICAgICAgICAgICAgICAgaW5mby5jbGFzc05hbWUgPSAndGVrbGlmLWFkZXQnOw0KICAgICAgICAgICAgICAgIGluZm8u aW5uZXJIVE1MID0gYDxzcGFuPsOWxJ9yZW5jaSBiYcWfxLFuYSA8Yj4ke3AuYWRldH08L2I+IGFkZXQ8L3NwYW4+YDsNCiAgICAgICAgICAgICAgICBjYXJk LmFwcGVuZENoaWxkKGluZm8pOw0KICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICBjYXJkLmNsYXNzTmFtZSA9IGBwYyAke3Auc2VsID8g J3NlbCcgOiAncGFzJ31gOw0KICAgICAgICAgICAgICAgIGNhcmQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB0b2dnbGVQKGlkeCkpOw0KICAg ICAgICAgICAgICAgIGNhcmQuaW5uZXJIVE1MID0gYA0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBjLWNoayI+DQogICAgICAgICAgICAgICAgICAg IDxpbnB1dCB0eXBlPSJjaGVja2JveCIgJHtwLnNlbCA/ICdjaGVja2VkJyA6ICcnfSBvbmNsaWNrPSJldmVudC5zdG9wUHJvcGFnYXRpb24oKTsiPg0KICAg ICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibW9iLWMiPiR7cC5zZWwgPyAn4pyTJyA6ICcnfTwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4N CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYy1pbWctd3JhcCI+DQogICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9InBjLWltZyIgc3JjPSIk e3AuaW1nfSIgYWx0PSIke3AuaXNpbX0iIG9uZXJyb3I9InRoaXMuc3R5bGUuZGlzcGxheT0nbm9uZSciPg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAg ICAgICAgICAgICAgIDxhIGNsYXNzPSJwYy1jYXQiIGhyZWY9IiR7a2F0VXJsW3Aua2F0XSB8fCAnL2thdGVnb3JpJ30iIHRhcmdldD0iX2JsYW5rIiBvbmNs aWNrPSJldmVudC5zdG9wUHJvcGFnYXRpb24oKTsiPiR7cC5rYXR9PC9hPg0KICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJwYy1uYW1lIiBocmVmPSIvdXJ1 bi8ke3Auc2x1Z30iIHRhcmdldD0iX2JsYW5rIiBvbmNsaWNrPSJldmVudC5zdG9wUHJvcGFnYXRpb24oKTsiPiR7cC5pc2ltfTwvYT4NCiAgICAgICAgICAg ICAgICA8ZGl2IGNsYXNzPSJwYy1wcmljZS1yb3ciPg0KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icGMtcHJpY2UiPiR7cC5maXlhdC50b0xv Y2FsZVN0cmluZygndHItVFInLCB7bWluaW11bUZyYWN0aW9uRGlnaXRzOjJ9KX0gVEw8L3NwYW4+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAg ICAgICBgOw0KICAgICAgICAgICAgICAgIGNvbnN0IGRiID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYnV0dG9uJyk7DQogICAgICAgICAgICAgICAgZGIu Y2xhc3NOYW1lID0gJ2J0bi1kZXQnOyBkYi50ZXh0Q29udGVudCA9ICdEZXRheSDEsG5jZWxlJzsNCiAgICAgICAgICAgICAgICBkYi5hZGRFdmVudExpc3Rl bmVyKCdjbGljaycsIGUgPT4geyBlLnN0b3BQcm9wYWdhdGlvbigpOyBvcGVuTW9kYWxEaXJlY3QoaWR4KTsgfSk7DQogICAgICAgICAgICAgICAgY2FyZC5x dWVyeVNlbGVjdG9yKCcucGMtaW1nJykuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBlID0+IHsgZS5zdG9wUHJvcGFnYXRpb24oKTsgb3Blbk1vZGFsRGly ZWN0KGlkeCk7IH0pOw0KICAgICAgICAgICAgICAgIGNhcmQuYXBwZW5kQ2hpbGQoZGIpOw0KICAgICAgICAgICAgICAgIGNvbnN0IHFyID0gZG9jdW1lbnQu Y3JlYXRlRWxlbWVudCgnZGl2Jyk7DQogICAgICAgICAgICAgICAgcXIuY2xhc3NOYW1lID0gJ3F0eS1yb3cnOw0KICAgICAgICAgICAgICAgIHFyLmFkZEV2 ZW50TGlzdGVuZXIoJ2NsaWNrJywgZSA9PiBlLnN0b3BQcm9wYWdhdGlvbigpKTsNCiAgICAgICAgICAgICAgICBxci5pbm5lckhUTUwgPSBgDQogICAgICAg ICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9InF0eS1idG4iICR7IXAuc2VsID8gJ2Rpc2FibGVkJyA6ICcnfT4tPC9idXR0b24+DQogICAgICAgICAgICAg ICAgICAgIDxzcGFuIGNsYXNzPSJxdHktbnVtIj4ke3AuYWRldH08L3NwYW4+DQogICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9InF0eS1idG4i Pis8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICBgOw0KICAgICAgICAgICAgICAgIHFyLnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvbjpmaXJzdC1jaGlsZCcpLmFk ZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gY2hhbmdlUXR5KGlkeCwgLTEpKTsNCiAgICAgICAgICAgICAgICBxci5xdWVyeVNlbGVjdG9yKCdidXR0 b246bGFzdC1jaGlsZCcpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gY2hhbmdlUXR5KGlkeCwgMSkpOw0KICAgICAgICAgICAgICAgIGNhcmQu YXBwZW5kQ2hpbGQocXIpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZ3JpZC5hcHBlbmRDaGlsZChjYXJkKTsNCiAgICAgICAgfSk7DQogICAgICAg IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtZW1wdHknKS5zdHlsZS5kaXNwbGF5ID0gc2hvd24gPT09IDAgPyAnYmxvY2snIDogJ25vbmUnOw0KICAg ICAgICB1cGRhdGVGb290ZXIoKTsNCiAgICB9DQogICAgZnVuY3Rpb24gdG9nZ2xlUChpKSB7IFBbaV0uc2VsID0gIVBbaV0uc2VsOyByZW5kZXJHcmlkKCk7 IH0NCiAgICBmdW5jdGlvbiBjaGFuZ2VRdHkoaSwgZCkgew0KICAgICAgICBjb25zdCBuID0gUFtpXS5hZGV0ICsgZDsNCiAgICAgICAgaWYgKG4gPD0gMCkg eyBQW2ldLmFkZXQgPSAxOyBQW2ldLnNlbCA9IGZhbHNlOyB9DQogICAgICAgIGVsc2UgeyBQW2ldLmFkZXQgPSBuOyBpZiAoZCA+IDApIFBbaV0uc2VsID0g dHJ1ZTsgfQ0KICAgICAgICByZW5kZXJHcmlkKCk7DQogICAgICAgIGlmIChtb2RhbElkeCA9PT0gaSkgdXBkYXRlTW9kYWxVSSgpOw0KICAgIH0NCiAgICBm dW5jdGlvbiBvcGVuTW9kYWxEaXJlY3QoaSkgew0KICAgICAgICBtb2RhbElkeCA9IGk7DQogICAgICAgIGNvbnN0IHAgPSBQW2ldOw0KDQogICAgICAgIHVw ZGF0ZU1vZGFsVUkoKTsNCg0KICAgICAgICBjb25zdCBkZXNjRWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLW0tZGVzYycpOw0KICAgICAgICBk ZXNjRWwuaW5uZXJIVE1MID0gKHAuZGV0YXkgfHwgJ0RldGF5IGJ1bHVuYW1hZMSxLicpICsgYA0KICAgICAgICAgICAgPGJyPg0KICAgICAgICAgICAgPGEg aHJlZj0iL3VydW4vJHtwLnNsdWd9IiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9Im0tbGluay1tb3JlIj4NCiAgICAgICAgICAgICAgICBUw7xtIMOWemVsbGlr bGVyaSDEsG5jZWxlDQogICAgICAgICAgICAgICAgPHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBz dHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+DQogICAgICAgICAgICAgICAgICAgIDxwYXRo IGQ9Ik0xOCAxM3Y2YTIgMiAwIDAgMS0yIDJINWEyIDIgMCAwIDEtMi0yVjhhMiAyIDAgMCAxIDItMmg2Ij48L3BhdGg+DQogICAgICAgICAgICAgICAgICAg IDxwb2x5bGluZSBwb2ludHM9IjE1IDMgMjEgMyAyMSA5Ij48L3BvbHlsaW5lPg0KICAgICAgICAgICAgICAgICAgICA8bGluZSB4MT0iMTAiIHkxPSIxNCIg eDI9IjIxIiB5Mj0iMyI+PC9saW5lPg0KICAgICAgICAgICAgICAgIDwvc3ZnPg0KICAgICAgICAgICAgPC9hPg0KICAgICAgICBgOw0KDQogICAgICAgIGRv Y3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5tLXNjcm9sbC1hcmVhJykuc2Nyb2xsVG9wID0gMDsNCiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Rz bC1tb2RhbCcpLmNsYXNzTGlzdC5hZGQoJ29wZW4nKTsNCiAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9ICdoaWRkZW4nOw0KICAgIH0N CiAgICBmdW5jdGlvbiB1cGRhdGVNb2RhbFVJKCkgew0KICAgICAgICBpZihtb2RhbElkeCA9PT0gLTEpIHJldHVybjsNCiAgICAgICAgY29uc3QgcCA9IFBb bW9kYWxJZHhdOw0KICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLW0taW1nJykuc3JjID0gcC5pbWc7DQogICAgICAgIGRvY3VtZW50Lmdl dEVsZW1lbnRCeUlkKCdkc2wtbS1za3UnKS50ZXh0Q29udGVudCA9IGDDnHLDvG4gS29kdSDCtyAke3Auc2t1fWA7DQogICAgICAgIGRvY3VtZW50LmdldEVs ZW1lbnRCeUlkKCdkc2wtbS10aXRsZScpLnRleHRDb250ZW50ID0gcC5pc2ltOw0KICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLW0tY2F0 JykudGV4dENvbnRlbnQgPSBwLmthdDsNCiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1tLXJlYycpLnRleHRDb250ZW50ID0gVEVLTElG X01PRFUNCiAgICAgICAgICAgID8gYMOWxJ9yZW5jaSBiYcWfxLFuYSAke3AuYWRldH0gYWRldGANCiAgICAgICAgICAgIDogYCR7cC5hZGV0fSBBZGV0YDsN CiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1tLXByaWNlJykudGV4dENvbnRlbnQgPSBgJHtwLmZpeWF0LnRvTG9jYWxlU3RyaW5nKCd0 ci1UUicsIHttaW5pbXVtRnJhY3Rpb25EaWdpdHM6Mn0pfSBUTGA7DQogICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtbS1xdHknKS50ZXh0 Q29udGVudCA9IHAuYWRldDsNCg0KICAgICAgICAvLyBUZWtsaWYgbW9kdW5kYSBtb2RhbCBzYWRlY2UgYmlsZ2kgYW1hw6dsxLE6IGxpc3RlIGVrbGUvw6fE sWthciBidXRvbnUgeW9rDQogICAgICAgIGlmICghVEVLTElGX01PRFUpIHsNCiAgICAgICAgICAgIGNvbnN0IGJ0biA9IGRvY3VtZW50LmdldEVsZW1lbnRC eUlkKCdkc2wtbS1idG4nKTsNCiAgICAgICAgICAgIGJ0bi50ZXh0Q29udGVudCA9IHAuc2VsID8gJ0xpc3RlZGUg4pyTJyA6ICdMaXN0ZXllIEVrbGUnOw0K ICAgICAgICAgICAgYnRuLmNsYXNzTmFtZSA9IHAuc2VsID8gJ21idG4gaW5sJyA6ICdtYnRuIGFkZCc7DQogICAgICAgIH0NCiAgICB9DQogICAgZnVuY3Rp b24gY2xvc2VNb2RhbCgpIHsNCiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1tb2RhbCcpLmNsYXNzTGlzdC5yZW1vdmUoJ29wZW4nKTsN CiAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9ICcnOw0KICAgICAgICBtb2RhbElkeCA9IC0xOw0KICAgIH0NCiAgICBkb2N1bWVudC5n ZXRFbGVtZW50QnlJZCgnZHNsLW1jbHMnKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGNsb3NlTW9kYWwpOw0KICAgIGRvY3VtZW50LmdldEVsZW1lbnRC eUlkKCdkc2wtbW9kYWwnKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKGUpIHsgaWYgKGUudGFyZ2V0ID09PSB0aGlzKSBjbG9zZU1vZGFs KCk7IH0pOw0KDQogICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1tLW1pbnVzJykuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7IGlm IChtb2RhbElkeCA+IC0xKSBjaGFuZ2VRdHkobW9kYWxJZHgsIC0xKTsgfSk7DQogICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1tLXBsdXMnKS5h ZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHsgaWYgKG1vZGFsSWR4ID4gLTEpIGNoYW5nZVF0eShtb2RhbElkeCwgMSk7IH0pOw0KICAgIGRvY3Vt ZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtbS1idG4nKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHsNCiAgICAgICAgaWYgKG1vZGFsSWR4ID09 PSAtMSkgcmV0dXJuOw0KICAgICAgICB0b2dnbGVQKG1vZGFsSWR4KTsNCiAgICAgICAgdXBkYXRlTW9kYWxVSSgpOw0KICAgIH0pOw0KICAgIGRvY3VtZW50 LmdldEVsZW1lbnRCeUlkKCdkc2wtYnRuLWFsbCcpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gew0KICAgICAgICBjb25zdCB2aXMgPSBQLmZp bHRlcihwID0+IGFjdGl2ZUthdCA9PT0gJ3R1bXUnIHx8IHAua2F0ID09PSBhY3RpdmVLYXQpOw0KICAgICAgICBjb25zdCBhbGwgPSB2aXMuZXZlcnkocCA9 PiBwLnNlbCk7DQogICAgICAgIHZpcy5mb3JFYWNoKHAgPT4gcC5zZWwgPSAhYWxsKTsNCiAgICAgICAgcmVuZGVyR3JpZCgpOw0KICAgIH0pOw0KDQogICAg Ly8gb3B0cyBpbGUgYmHFn2zEsWsvYWx0IHlhesSxL29uYXkgZXRpa2V0aSBkZcSfacWfdGlyaWxlYmlsaXI7IHZlcmlsbWV6c2Ugc2VwZXRlDQogICAgLy8g ZWtsZW1lIG1ldGlubGVyaSBrdWxsYW7EsWzEsXIgKG1ldmN1dCDDp2HEn3LEsWxhciBheW5lbiDDp2FsxLHFn3PEsW4gZGl5ZSkuDQogICAgZnVuY3Rpb24g YXNrT2dyZW5jaVNheWlzaShvcHRzKSB7DQogICAgICAgIGNvbnN0IG8gPSBvcHRzIHx8IHt9Ow0KICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29s dmUpID0+IHsNCiAgICAgICAgICAgIGNvbnN0IGFzayA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtYXNrJyk7DQogICAgICAgICAgICBjb25zdCBp bnAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLWFzay1pbnB1dCcpOw0KICAgICAgICAgICAgY29uc3QgZXJyID0gZG9jdW1lbnQuZ2V0RWxlbWVu dEJ5SWQoJ2RzbC1hc2stZXJyJyk7DQogICAgICAgICAgICBjb25zdCBidG5PayA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtYXNrLW9rJyk7DQog ICAgICAgICAgICBjb25zdCBidG5DYW5jZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLWFzay1jYW5jZWwnKTsNCiAgICAgICAgICAgIGNvbnN0 IGVsQmFzbGlrID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1hc2stdGl0bGUnKTsNCiAgICAgICAgICAgIGNvbnN0IGVsQWx0ID0gZG9jdW1lbnQu cXVlcnlTZWxlY3RvcignI2RzbC1hc2sgLmFzay1zdWInKTsNCiAgICAgICAgICAgIGlmIChlbEJhc2xpaykgZWxCYXNsaWsudGV4dENvbnRlbnQgPSBvLmJh c2xpayB8fCAnS2HDpyDDtsSfcmVuY2l5ZSBzaXBhcmnFnyBnZcOnaWxlY2VrPyc7DQogICAgICAgICAgICBpZiAoZWxBbHQpIGVsQWx0LnRleHRDb250ZW50 ID0gby5hbHRZYXppIHx8ICdMaXN0ZWRla2kgw7xyw7xuIGFkZXRsZXJpIGdpcmRpxJ9pbml6IMO2xJ9yZW5jaSBzYXnEsXPEsXlsYSDDp2FycMSxbGFyYWsg c2VwZXRlIGVrbGVuZWNla3Rpci4nOw0KICAgICAgICAgICAgYnRuT2sudGV4dENvbnRlbnQgPSBvLm9uYXlFdGlrZXRpIHx8ICdTZXBldGUgRWtsZSc7DQog ICAgICAgICAgICBlcnIudGV4dENvbnRlbnQgPSAnJzsNCiAgICAgICAgICAgIGlucC52YWx1ZSA9ICcxJzsNCiAgICAgICAgICAgIGFzay5jbGFzc0xpc3Qu YWRkKCdvcGVuJyk7DQogICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gJ2hpZGRlbic7DQogICAgICAgICAgICBzZXRUaW1lb3V0 KCgpID0+IHsgaW5wLmZvY3VzKCk7IGlucC5zZWxlY3QoKTsgfSwgNTApOw0KDQogICAgICAgICAgICBmdW5jdGlvbiBrYXBhdCh2YWwpIHsNCiAgICAgICAg ICAgICAgICBhc2suY2xhc3NMaXN0LnJlbW92ZSgnb3BlbicpOw0KICAgICAgICAgICAgICAgIGlmICghZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1t b2RhbCcpLmNsYXNzTGlzdC5jb250YWlucygnb3BlbicpKSB7DQogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAn JzsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgYnRuT2sucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBvbk9rKTsNCiAgICAgICAg ICAgICAgICBidG5DYW5jZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBvbkNhbmNlbCk7DQogICAgICAgICAgICAgICAgYXNrLnJlbW92ZUV2ZW50 TGlzdGVuZXIoJ2NsaWNrJywgb25CYWNrZHJvcCk7DQogICAgICAgICAgICAgICAgaW5wLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBvbktleSk7 DQogICAgICAgICAgICAgICAgcmVzb2x2ZSh2YWwpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZnVuY3Rpb24gb25PaygpIHsNCiAgICAgICAgICAg ICAgICBjb25zdCBuID0gTWF0aC5mbG9vcihOdW1iZXIoaW5wLnZhbHVlKSk7DQogICAgICAgICAgICAgICAgaWYgKCFuIHx8IG4gPCAxKSB7DQogICAgICAg ICAgICAgICAgICAgIGVyci50ZXh0Q29udGVudCA9ICdMw7x0ZmVuIGdlw6dlcmxpIGJpciDDtsSfcmVuY2kgc2F5xLFzxLEgZ2lyaW4gKGVuIGF6IDEpLic7 DQogICAgICAgICAgICAgICAgICAgIGlucC5mb2N1cygpOw0KICAgICAgICAgICAgICAgICAgICByZXR1cm47DQogICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgIGthcGF0KG4pOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZnVuY3Rpb24gb25DYW5jZWwoKSB7IGthcGF0KG51bGwpOyB9DQogICAg ICAgICAgICBmdW5jdGlvbiBvbkJhY2tkcm9wKGUpIHsgaWYgKGUudGFyZ2V0ID09PSBhc2spIGthcGF0KG51bGwpOyB9DQogICAgICAgICAgICBmdW5jdGlv biBvbktleShlKSB7DQogICAgICAgICAgICAgICAgaWYgKGUua2V5ID09PSAnRW50ZXInKSB7IGUucHJldmVudERlZmF1bHQoKTsgb25PaygpOyB9DQogICAg ICAgICAgICAgICAgaWYgKGUua2V5ID09PSAnRXNjYXBlJykgeyBlLnByZXZlbnREZWZhdWx0KCk7IG9uQ2FuY2VsKCk7IH0NCiAgICAgICAgICAgIH0NCiAg ICAgICAgICAgIGJ0bk9rLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgb25Payk7DQogICAgICAgICAgICBidG5DYW5jZWwuYWRkRXZlbnRMaXN0ZW5lcign Y2xpY2snLCBvbkNhbmNlbCk7DQogICAgICAgICAgICBhc2suYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBvbkJhY2tkcm9wKTsNCiAgICAgICAgICAgIGlu cC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgb25LZXkpOw0KICAgICAgICB9KTsNCiAgICB9DQoNCiAgICBhc3luYyBmdW5jdGlvbiBzZXBldGVFa2xl KHNlbCwgc3R1ZGVudENvdW50KSB7DQogICAgICAgIGNvbnN0IG92ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RzbC1vdicpOw0KICAgICAgICBjb25z dCBiYXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLWJhcicpOw0KDQogICAgICAgIGZ1bmN0aW9uIGFudGljc3JmQWwoKSB7DQogICAgICAgICAg ICBjb25zdCBtZXRhID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbWV0YVtuYW1lPSJhbnRpY3NyZiJdJyk7DQogICAgICAgICAgICByZXR1cm4gd2luZG93 LmFudGljc3JmIHx8ICh0eXBlb2YgYW50aWNzcmYgIT09ICd1bmRlZmluZWQnID8gYW50aWNzcmYgOiAnJykgfHwgKG1ldGEgJiYgbWV0YS5jb250ZW50KSB8 fCAnJzsNCiAgICAgICAgfQ0KDQogICAgICAgIGNvbnN0IGVrc2lrSWQgPSBzZWwuZmlsdGVyKHAgPT4gIShwLmlkIHx8IHNrdU1hcFtwLnNrdV0pKTsNCiAg ICAgICAgaWYgKGVrc2lrSWQubGVuZ3RoKSB7DQogICAgICAgICAgICBhbGVydCgnxZ51IMO8csO8bmxlciBzaXN0ZW0gSUQgZWtzaWsgb2xkdcSfdSBpw6dp biBzZXBldGUgZWtsZW5lbWV6OlxuXG4nICsNCiAgICAgICAgICAgICAgICBla3Npa0lkLm1hcChwID0+ICfigKIgJyArIHAuaXNpbSkuam9pbignXG4nKSAr DQogICAgICAgICAgICAgICAgJ1xuXG5TYXlmYXnEsSBFbGVjdHJvblwnZGFuIHNpc3RlbSDDvHLDvG5sZXJpeWxlIHllbmlkZW4gw7xyZXRpbi4nKTsNCiAg ICAgICAgICAgIHJldHVybjsNCiAgICAgICAgfQ0KDQogICAgICAgIC8vIFZhcnlhbnRsxLEgQU5BIMO8csO8biAocmVuay9tb2RlbCBzZcOnaWxtZW1pxZ8g a2F5xLF0KSAvY2FydC9hZGRfaXRlbSBpbGUNCiAgICAgICAgLy8gZWtsZW5lbWl5b3I6IG1hxJ9hemEgw7ZuY2Ugc2XDp2VuZcSfaW4gYmVsaXJsZW5tZXNp bmkgaXN0aXlvci4gQnVubGFyxLENCiAgICAgICAgLy8gaXN0ZcSfZSBoacOnIHNva211eW9ydXog4oCUIGFrc2kgaGFsZGUgbcO8xZ90ZXJpIGFubGHFn8Sx bG1heiBiaXIgaGF0YSBhbMSxcA0KICAgICAgICAvLyBzZXBldGluIHlhcsSxc8SxIGVrc2lrIGthbMSxeW9yZHUuDQogICAgICAgIGNvbnN0IHZhcnlhbnRs aU9sYW5sYXIgPSBzZWwuZmlsdGVyKHAgPT4gcC52YXJ5YW50bGkpOw0KICAgICAgICBpZiAodmFyeWFudGxpT2xhbmxhci5sZW5ndGgpIHsNCiAgICAgICAg ICAgIGFsZXJ0KCfFnnUgw7xyw7xubGVyIHJlbmsvbW9kZWwgc2XDp2ltaSBnZXJla3RpcmRpxJ9pIGnDp2luIHRvcGx1Y2Egc2VwZXRlIGVrbGVuZW1peW9y OlxuXG4nICsNCiAgICAgICAgICAgICAgICB2YXJ5YW50bGlPbGFubGFyLm1hcChwID0+ICfigKIgJyArIHAuaXNpbSkuam9pbignXG4nKSArDQogICAgICAg ICAgICAgICAgJ1xuXG5CdSDDvHLDvG5sZXJpIGxpc3RlZGVuIMOnxLFrYXLEsXAgKHZleWEga2VuZGkgw7xyw7xuIHNheWZhbGFyxLFuZGFuIGlzdGVkacSf aW5peiAnICsNCiAgICAgICAgICAgICAgICAncmVuZ2kvbW9kZWxpIHNlw6dlcmVrKSB0ZWtyYXIgZGVuZXlpbi4gRGnEn2VyIMO8csO8bmxlciBpw6dpbiAi U2VwZXRlIEVrbGUieWUgJyArDQogICAgICAgICAgICAgICAgJ3llbmlkZW4gYmFzbWFuxLF6IHlldGVybGkuJyk7DQogICAgICAgICAgICByZXR1cm47DQog ICAgICAgIH0NCg0KICAgICAgICBvdi5xdWVyeVNlbGVjdG9yKCcuc3BpbicpLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snOw0KICAgICAgICBvdi5xdWVyeVNl bGVjdG9yKCcub2ttYXJrJykuc3R5bGUuZGlzcGxheSA9ICdub25lJzsNCiAgICAgICAgb3YucXVlcnlTZWxlY3RvcignLm92LXRpdGxlJykudGV4dENvbnRl bnQgPSAnU2VwZXRlIEVrbGVuaXlvci4uLic7DQogICAgICAgIG92LnF1ZXJ5U2VsZWN0b3IoJy5vdi1kZXRhaWwnKS50ZXh0Q29udGVudCA9ICdMw7x0ZmVu IGJla2xleWluaXonOw0KICAgICAgICBiYXIuc3R5bGUud2lkdGggPSAnMCUnOw0KICAgICAgICBvdi5zdHlsZS5kaXNwbGF5ID0gJ2ZsZXgnOw0KDQogICAg ICAgIGNvbnN0IGhhdGFsYXIgPSBbXTsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2VsLmxlbmd0aDsgaSsrKSB7 DQogICAgICAgICAgICAgICAgY29uc3QgcCA9IHNlbFtpXTsNCiAgICAgICAgICAgICAgICBjb25zdCBwaWQgPSBTdHJpbmcocC5pZCB8fCBza3VNYXBbcC5z a3VdIHx8ICcnKTsNCiAgICAgICAgICAgICAgICBjb25zdCBxdHkgPSBNYXRoLm1heCgxLCBNYXRoLmZsb29yKE51bWJlcihwLmFkZXQpIHx8IDEpICogTWF0 aC5mbG9vcihOdW1iZXIoc3R1ZGVudENvdW50KSB8fCAxKSk7DQoNCiAgICAgICAgICAgICAgICBiYXIuc3R5bGUud2lkdGggPSBgJHtNYXRoLnJvdW5kKChp IC8gc2VsLmxlbmd0aCkgKiA5MCl9JWA7DQogICAgICAgICAgICAgICAgb3YucXVlcnlTZWxlY3RvcignLm92LWNudCcpLnRleHRDb250ZW50ID0gYCR7aSAr IDF9IC8gJHtzZWwubGVuZ3RofWA7DQogICAgICAgICAgICAgICAgb3YucXVlcnlTZWxlY3RvcignLm92LWRldGFpbCcpLnRleHRDb250ZW50ID0gcC5pc2lt Ow0KDQogICAgICAgICAgICAgICAgY29uc3QgZmQgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHsNCiAgICAgICAgICAgICAgICAgICAgYW50aWNzcmY6IGFudGlj c3JmQWwoKSwNCiAgICAgICAgICAgICAgICAgICAgcHJvZHVjdElkOiBwaWQsDQogICAgICAgICAgICAgICAgICAgIHF1YW50aXR5OiBTdHJpbmcocXR5KQ0K ICAgICAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKCcvY2FydC9hZGRfaXRlbScsIHsNCiAgICAgICAg ICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsIGJvZHk6IGZkLCBjcmVkZW50aWFsczogJ2luY2x1ZGUnLA0KICAgICAgICAgICAgICAgICAgICBoZWFkZXJz OiB7DQogICAgICAgICAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcsDQogICAgICAg ICAgICAgICAgICAgICAgICAnWC1SZXF1ZXN0ZWQtV2l0aCc6ICdYTUxIdHRwUmVxdWVzdCcNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg ICAgIH0pOw0KICAgICAgICAgICAgICAgIGNvbnN0IGJvZHkgPSBhd2FpdCByZXMudGV4dCgpOw0KICAgICAgICAgICAgICAgIGxldCBvayA9IHJlcy5vaywg bWVzYWogPSAnJzsNCiAgICAgICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgICAgICBjb25zdCBqID0gSlNPTi5wYXJzZShib2R5KTsNCiAgICAg ICAgICAgICAgICAgICAgaWYgKGogJiYgKGouc3RhdHVzID09PSAnZXJyb3InIHx8IGouc3VjY2VzcyA9PT0gZmFsc2UgfHwgai5lcnJvcikpIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgIG9rID0gZmFsc2U7DQogICAgICAgICAgICAgICAgICAgICAgICBtZXNhaiA9IGouZXJyb3JNZXNzYWdlIHx8IGoubWVzc2Fn ZSB8fCAoai5lcnJvciAmJiBqLmVycm9yLm1lc3NhZ2UpIHx8ICcnOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfSBjYXRjaCAo XykgeyAvKiBIVE1MIGNldmFwIG9sYWJpbGlyOyBzdGF0dXMuY29kZSB5ZXRlcmxpICovIH0NCiAgICAgICAgICAgICAgICBpZiAoIW9rKSB7DQogICAgICAg ICAgICAgICAgICAgIGhhdGFsYXIucHVzaChwLmlzaW0gKyAobWVzYWogPyAnIOKAlCAnICsgbWVzYWogOiAocmVzLnN0YXR1cyA/IGAgKEhUVFAgJHtyZXMu c3RhdHVzfSlgIDogJycpKSk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGlmIChpIDwgc2VsLmxlbmd0aCAtIDEpIGF3YWl0IG5ldyBQ cm9taXNlKHIgPT4gc2V0VGltZW91dChyLCAxMDAwKSk7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBpZiAoaGF0YWxhci5sZW5ndGgpIHsNCiAgICAg ICAgICAgICAgICBvdi5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOw0KICAgICAgICAgICAgICAgIGFsZXJ0KCdCYXrEsSDDvHLDvG5sZXIgc2VwZXRlIGVrbGVu ZW1lZGk6XG5cbicgKw0KICAgICAgICAgICAgICAgICAgICBoYXRhbGFyLm1hcChoID0+ICfigKIgJyArIGgpLmpvaW4oJ1xuJykgKw0KICAgICAgICAgICAg ICAgICAgICAnXG5cblNlcGV0aSBrb250cm9sIGVkaXAga2FsYW4gw7xyw7xubGVyIGnDp2luIHRla3JhciBkZW5leWluLicpOw0KICAgICAgICAgICAgICAg IHJldHVybjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGlmIChLVVBPTikgew0KICAgICAgICAgICAgICAgIGJhci5zdHlsZS53aWR0aCA9ICc5MiUn Ow0KICAgICAgICAgICAgICAgIG92LnF1ZXJ5U2VsZWN0b3IoJy5vdi10aXRsZScpLnRleHRDb250ZW50ID0gJ0t1cG9uIFV5Z3VsYW7EsXlvci4uLic7DQog ICAgICAgICAgICAgICAgYXdhaXQgZmV0Y2goJy9oZWRpeWUtY2VraS1rdWxsYW4nLCB7DQogICAgICAgICAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLA0K ICAgICAgICAgICAgICAgICAgICBib2R5OiBuZXcgVVJMU2VhcmNoUGFyYW1zKHsgYW50aWNzcmY6IGFudGljc3JmQWwoKSwgY29kZTogS1VQT04gfSksDQog ICAgICAgICAgICAgICAgICAgIGNyZWRlbnRpYWxzOiAnaW5jbHVkZScsDQogICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJywNCiAgICAgICAgICAgICAgICAgICAgICAgICdY LVJlcXVlc3RlZC1XaXRoJzogJ1hNTEh0dHBSZXF1ZXN0Jw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfSk7DQogICAgICAgICAg ICB9DQogICAgICAgICAgICBiYXIuc3R5bGUud2lkdGggPSAnMTAwJSc7DQogICAgICAgICAgICBvdi5xdWVyeVNlbGVjdG9yKCcuc3BpbicpLnN0eWxlLmRp c3BsYXkgPSAnbm9uZSc7DQogICAgICAgICAgICBvdi5xdWVyeVNlbGVjdG9yKCcub2ttYXJrJykuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7DQogICAgICAg ICAgICBvdi5xdWVyeVNlbGVjdG9yKCcub3YtdGl0bGUnKS50ZXh0Q29udGVudCA9ICdUYW1hbWxhbmTEsSEnOw0KICAgICAgICAgICAgb3YucXVlcnlTZWxl Y3RvcignLm92LWRldGFpbCcpLnRleHRDb250ZW50ID0gJ1nDtm5sZW5kaXJpbGl5b3JzdW51ei4uLic7DQoNCiAgICAgICAgICAgIGF3YWl0IG5ldyBQcm9t aXNlKHIgPT4gc2V0VGltZW91dChyLCA4MDApKTsNCiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJy9zZXBldCc7DQogICAgICAgIH0gY2F0 Y2goZSkgew0KICAgICAgICAgICAgb3Yuc3R5bGUuZGlzcGxheSA9ICdub25lJzsNCiAgICAgICAgICAgIGFsZXJ0KGBIYXRhOiAke2UubWVzc2FnZX1gKTsN CiAgICAgICAgfQ0KICAgIH0NCg0KICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkc2wtYnRuLWNhcnQnKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycs IGFzeW5jICgpID0+IHsNCiAgICAgICAgY29uc3Qgc2VsID0gUC5maWx0ZXIocCA9PiBwLnNlbCAmJiBwLmFkZXQgPiAwKTsNCiAgICAgICAgaWYgKCFzZWwu bGVuZ3RoKSByZXR1cm4gYWxlcnQoJ0zDvHRmZW4gZW4gYXogYmlyIMO8csO8biBzZcOnaW4uJyk7DQoNCiAgICAgICAgbGV0IHN0dWRlbnRDb3VudCA9IDE7 DQogICAgICAgIGlmIChURUtMSUZfTU9EVSkgew0KICAgICAgICAgICAgY29uc3QgY2V2YXAgPSBhd2FpdCBhc2tPZ3JlbmNpU2F5aXNpKCk7DQogICAgICAg ICAgICBpZiAoY2V2YXAgPT09IG51bGwpIHJldHVybjsNCiAgICAgICAgICAgIHN0dWRlbnRDb3VudCA9IGNldmFwOw0KICAgICAgICB9DQogICAgICAgIGF3 YWl0IHNlcGV0ZUVrbGUoc2VsLCBzdHVkZW50Q291bnQpOw0KICAgIH0pOw0KICAgIC8vIFRla2xpZiBtb2R1OiDDvHLDvG4gc2XDp21lL8OnxLFrYXJtYSB5 b2sg4oaSICJUw7xtw7xuw7wgc2XDpy9rYWxkxLFyIiBnaXpsaTsgbW9kYWwNCiAgICAvLyBzYWRlY2UgYcOnxLFrbGFtYSBnw7ZzdGVyaXIg4oaSIGFkZXQg Ky8tIHZlICJMaXN0ZXllIEVrbGUiIGdpemxpLg0KICAgIGlmIChURUtMSUZfTU9EVSkgew0KICAgICAgICBjb25zdCBidG5BbGwgPSBkb2N1bWVudC5nZXRF bGVtZW50QnlJZCgnZHNsLWJ0bi1hbGwnKTsNCiAgICAgICAgaWYgKGJ0bkFsbCkgYnRuQWxsLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7DQogICAgICAgIGNv bnN0IG1xID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI2RzbC1tb2RhbCAubXF0eScpOw0KICAgICAgICBpZiAobXEpIG1xLnN0eWxlLmRpc3BsYXkgPSAn bm9uZSc7DQogICAgICAgIGNvbnN0IG1CdG4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHNsLW0tYnRuJyk7DQogICAgICAgIGlmIChtQnRuKSBtQnRu LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7DQogICAgfQ0KICAgIC8qIC0tLS0tLS0tLS0gxLBuZGlyIC8gWWF6ZMSxciAtLS0tLS0tLS0tDQogICAgICAgTGlz dGV5aSB5YXpkxLFyxLFsYWJpbGlyIHRlayBkb3N5YSBIVE1MIG9sYXJhayBpbmRpcmlyLiBWZXJpeWkgZG/En3J1ZGFuIFAnZGVuDQogICAgICAgb2t1ciAo Z3JpZCB5YWxuxLF6Y2Egc2XDp2lsaSBrYXRlZ29yaXlpIMOnaXpkacSfaSBpw6dpbiBET00nZGFuIG9rdW1hayBla3Npaw0KICAgICAgIGxpc3RlIMO8cmV0 aXJkaSkuIFRla2xpZiBtb2R1bmRhIGFkZXRsZXIgw7bEn3JlbmNpIHNhecSxc8SxeWxhIMOnYXJwxLFsxLFyLiAqLw0KICAgIGZ1bmN0aW9uIGVzY0h0bWwo cykgew0KICAgICAgICByZXR1cm4gU3RyaW5nKHMgPT0gbnVsbCA/ICcnIDogcykNCiAgICAgICAgICAgIC5yZXBsYWNlKC8mL2csICcmYW1wOycpLnJlcGxh Y2UoLzwvZywgJyZsdDsnKS5yZXBsYWNlKC8+L2csICcmZ3Q7JykucmVwbGFjZSgvIi9nLCAnJnF1b3Q7Jyk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIHBhcmFU UihuKSB7DQogICAgICAgIHJldHVybiBOdW1iZXIobiB8fCAwKS50b0xvY2FsZVN0cmluZygndHItVFInLCB7IG1pbmltdW1GcmFjdGlvbkRpZ2l0czogMiwg bWF4aW11bUZyYWN0aW9uRGlnaXRzOiAyIH0pOw0KICAgIH0NCiAgICAvLyBCYXPEsWzEsSBzYXlmYSBiYcWfxLFuYSBzYXTEsXIgc2F5xLFzxLEuIEE0ICsg MTJtbSBrZW5hciBib8WfbHXEn3UgKyA0NHB4IGfDtnJzZWwNCiAgICAvLyBpw6dpbiDDtmzDp8O8bGTDvDsgc2F0xLFybGFyIHNheWZheWEgc8SxxJ9tYXpz YSBidSBpa2kgc2F5xLF5xLEgZMO8xZ/DvHJtZWsgeWV0ZXJsaS4NCiAgICBjb25zdCBJTEtfU0FZRkFfU0FUSVIgPSAxMTsgICAvLyBpbGsgc2F5ZmFkYSBs b2dvICsgYmHFn2zEsWsgeWVyIGthcMSxeW9yDQogICAgY29uc3QgU0FZRkFfU0FUSVIgPSAxNDsNCg0KICAgIGNvbnN0IGJ0bkluZGlyID0gZG9jdW1lbnQu Z2V0RWxlbWVudEJ5SWQoJ2RzbC1idG4taW5kaXInKTsNCiAgICBpZiAoYnRuSW5kaXIpIGJ0bkluZGlyLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgYXN5 bmMgKCkgPT4gew0KICAgICAgICBjb25zdCBva3VsID0gKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNkc2wgLmhkLW5hbWUnKSB8fCB7fSkudGV4dENvbnRl bnQgfHwgJyc7DQogICAgICAgIGNvbnN0IGJhc2xpayA9ICgoZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI2RzbCAuaGQtdGl0bGUnKSB8fCB7fSkudGV4dENv bnRlbnQgfHwgJ0vEsXJ0YXNpeWUgTGlzdGVzaScpLnRyaW0oKTsNCiAgICAgICAgLy8gVGVrbGlmIG1vZHVuZGEgc2XDp2ltIHlvazsgbm9ybWFsIG1vZGRh IHNhZGVjZSBpxZ9hcmV0bGkgw7xyw7xubGVyDQogICAgICAgIGNvbnN0IHNlY2lsaSA9IFAuZmlsdGVyKHAgPT4gVEVLTElGX01PRFUgfHwgcC5zZWwpOw0K ICAgICAgICBpZiAoIXNlY2lsaS5sZW5ndGgpIHsgYWxlcnQoJ0xpc3RlZGUgacWfYXJldGxpIMO8csO8biB5b2suIEVuIGF6IGJpciDDvHLDvG4gc2XDp2lu LicpOyByZXR1cm47IH0NCg0KICAgICAgICAvLyBUZWtsaWYgbW9kdW5kYSBhZGV0bGVyIMO2xJ9yZW5jaSBiYcWfxLFuYWTEsXI7IGthw6cgw7bEn3JlbmNp IGnDp2luIGJhc8SxbGFjYcSfxLFuxLEgc29yLg0KICAgICAgICBsZXQgY2FycGFuID0gb2dyZW5jaVNheWlzaSgpOw0KICAgICAgICBpZiAoVEVLTElGX01P RFUpIHsNCiAgICAgICAgICAgIGNvbnN0IGNldmFwID0gYXdhaXQgYXNrT2dyZW5jaVNheWlzaSh7DQogICAgICAgICAgICAgICAgYmFzbGlrOiAnS2HDpyDD tsSfcmVuY2kgacOnaW4gbGlzdGUgaW5kaXJpbGVjZWs/JywNCiAgICAgICAgICAgICAgICBhbHRZYXppOiAnTGlzdGVkZWtpIGFkZXRsZXIgZ2lyZGnEn2lu aXogw7bEn3JlbmNpIHNhecSxc8SxeWxhIMOnYXJwxLFsYXJhayB5YXpkxLFyxLFsxLFyLicsDQogICAgICAgICAgICAgICAgb25heUV0aWtldGk6ICfEsG5k aXInDQogICAgICAgICAgICB9KTsNCiAgICAgICAgICAgIGlmIChjZXZhcCA9PT0gbnVsbCkgcmV0dXJuOyAgIC8vIGlwdGFsIGVkaWxkaSwgZG9zeWEgaW5t ZXNpbg0KICAgICAgICAgICAgY2FycGFuID0gY2V2YXA7DQogICAgICAgIH0NCg0KICAgICAgICAvLyAtLS0gc2F0xLFybGFyxLEgw7xyZXQsIHNheWZhbGFy YSBiw7ZsIC0tLQ0KICAgICAgICBsZXQgdG9wbGFtID0gMDsNCiAgICAgICAgY29uc3Qgc2F0aXJsYXIgPSBzZWNpbGkubWFwKHAgPT4gew0KICAgICAgICAg ICAgY29uc3QgYWRldCA9IChOdW1iZXIocC5hZGV0KSB8fCAxKSAqIGNhcnBhbjsNCiAgICAgICAgICAgIGNvbnN0IHR1dGFyID0gdGFtRml5YXQocCkgKiBh ZGV0OyAgIC8vIHRhbSBmaXlhdHRhbjsgc2VwZXQgdG9wbGFtxLF5bGEgdHV0YXINCiAgICAgICAgICAgIHRvcGxhbSArPSB0dXRhcjsNCiAgICAgICAgICAg IGNvbnN0IGdvcnNlbCA9IHAuaW1nDQogICAgICAgICAgICAgICAgPyAnPGltZyBzcmM9IicgKyBlc2NIdG1sKHAuaW1nKSArICciIGFsdD0iIiBvbmVycm9y PSJ0aGlzLnBhcmVudE5vZGUuaW5uZXJIVE1MPVwnJm1kYXNoO1wnIj4nDQogICAgICAgICAgICAgICAgOiAnJm1kYXNoOyc7DQogICAgICAgICAgICByZXR1 cm4gew0KICAgICAgICAgICAgICAgIHR1dGFyOiB0dXRhciwNCiAgICAgICAgICAgICAgICBodG1sOiAnPHRyPjx0ZCBjbGFzcz0iZyI+JyArIGdvcnNlbCAr ICc8L3RkPicgKw0KICAgICAgICAgICAgICAgICAgICAnPHRkIGNsYXNzPSJiayI+JyArIChwLnNrdSA/IGVzY0h0bWwocC5za3UpIDogJyZtZGFzaDsnKSAr ICc8L3RkPicgKw0KICAgICAgICAgICAgICAgICAgICAnPHRkPicgKyBlc2NIdG1sKHAua2F0KSArICc8L3RkPicgKw0KICAgICAgICAgICAgICAgICAgICAn PHRkPicgKyBlc2NIdG1sKHAuaXNpbSkgKyAnPC90ZD4nICsNCiAgICAgICAgICAgICAgICAgICAgJzx0ZCBjbGFzcz0iYyI+JyArIGFkZXQgKyAnPC90ZD4n ICsNCiAgICAgICAgICAgICAgICAgICAgJzx0ZCBjbGFzcz0iciI+JyArIHBhcmFUUihwLmZpeWF0KSArICcgVEw8L3RkPicgKw0KICAgICAgICAgICAgICAg ICAgICAnPHRkIGNsYXNzPSJyIj4nICsgcGFyYVRSKHR1dGFyKSArICcgVEw8L3RkPjwvdHI+Jw0KICAgICAgICAgICAgfTsNCiAgICAgICAgfSk7DQoNCiAg ICAgICAgY29uc3Qgc2F5ZmFsYXIgPSBbXTsNCiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzYXRpcmxhci5sZW5ndGg7KSB7DQogICAgICAgICAgICBj b25zdCBib3l1dCA9IHNheWZhbGFyLmxlbmd0aCA9PT0gMCA/IElMS19TQVlGQV9TQVRJUiA6IFNBWUZBX1NBVElSOw0KICAgICAgICAgICAgc2F5ZmFsYXIu cHVzaChzYXRpcmxhci5zbGljZShpLCBpICsgYm95dXQpKTsNCiAgICAgICAgICAgIGkgKz0gYm95dXQ7DQogICAgICAgIH0NCg0KICAgICAgICBjb25zdCBi YXNsaWdpVGFtID0gKG9rdWwudHJpbSgpID8gb2t1bC50cmltKCkgKyAnIOKAlCAnIDogJycpICsgYmFzbGlrOw0KICAgICAgICBjb25zdCB0YXJpaCA9IG5l dyBEYXRlKCkudG9Mb2NhbGVEYXRlU3RyaW5nKCd0ci1UUicpOw0KICAgICAgICBjb25zdCBva3VsTG9nbyA9IChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcj ZHNsIC5oZC1yb3cgaW1nJykgfHwge30pLnNyYyB8fCAnJzsNCiAgICAgICAgY29uc3QgYmFzbGlrbGFyID0gJzx0aGVhZD48dHI+PHRoPkfDtnJzZWw8L3Ro Pjx0aD5CYXJrb2Q8L3RoPjx0aD5LYXRlZ29yaTwvdGg+JyArDQogICAgICAgICAgICAnPHRoPsOccsO8bjwvdGg+PHRoPkFkZXQ8L3RoPjx0aD5CaXJpbSBG aXlhdDwvdGg+PHRoPlR1dGFyPC90aD48L3RyPjwvdGhlYWQ+JzsNCg0KICAgICAgICAvLyBUZWsgc2F5ZmF5c2EgYXJhIHRvcGxhbSBiYXNtYSDigJQgZ2Vu ZWwgdG9wbGFtbGEgYXluxLEgcmFrYW0gb2x1cmR1Lg0KICAgICAgICBjb25zdCBhcmFUb3BsYW1Hb3N0ZXIgPSBzYXlmYWxhci5sZW5ndGggPiAxOw0KICAg ICAgICBjb25zdCBzYXlmYUh0bWwgPSBzYXlmYWxhci5tYXAoKGdydXAsIGkpID0+IHsNCiAgICAgICAgICAgIGNvbnN0IGFyYVRvcGxhbSA9IGdydXAucmVk dWNlKCh0LCBzKSA9PiB0ICsgcy50dXRhciwgMCk7DQogICAgICAgICAgICBjb25zdCBzb25NdSA9IGkgPT09IHNheWZhbGFyLmxlbmd0aCAtIDE7DQogICAg ICAgICAgICByZXR1cm4gJzxzZWN0aW9uIGNsYXNzPSJzYXlmYScgKyAoc29uTXUgPyAnIHNvbicgOiAnJykgKyAnIj4nICsNCiAgICAgICAgICAgICAgICAo aSA9PT0gMCA/ICcnIDogJzxkaXYgY2xhc3M9ImRldmFtIj4nICsgZXNjSHRtbChiYXNsaWdpVGFtKSArICcg4oCUIGRldmFtxLE8L2Rpdj4nKSArDQogICAg ICAgICAgICAgICAgJzx0YWJsZT4nICsgYmFzbGlrbGFyICsNCiAgICAgICAgICAgICAgICAnPHRib2R5PicgKyBncnVwLm1hcChzID0+IHMuaHRtbCkuam9p bignJykgKyAnPC90Ym9keT4nICsNCiAgICAgICAgICAgICAgICAoYXJhVG9wbGFtR29zdGVyDQogICAgICAgICAgICAgICAgICAgID8gJzx0Zm9vdD48dHIg Y2xhc3M9ImFyYSI+PHRkIGNvbHNwYW49IjYiIGNsYXNzPSJyIj5BUkEgVE9QTEFNIChzYXlmYSAnICsNCiAgICAgICAgICAgICAgICAgICAgICAoaSArIDEp ICsgJy8nICsgc2F5ZmFsYXIubGVuZ3RoICsgJyk8L3RkPjx0ZCBjbGFzcz0iciI+JyArDQogICAgICAgICAgICAgICAgICAgICAgcGFyYVRSKGFyYVRvcGxh bSkgKyAnIFRMPC90ZD48L3RyPjwvdGZvb3Q+Jw0KICAgICAgICAgICAgICAgICAgICA6ICcnKSArDQogICAgICAgICAgICAgICAgJzwvdGFibGU+JyArDQog ICAgICAgICAgICAgICAgKHNvbk11DQogICAgICAgICAgICAgICAgICAgID8gJzx0YWJsZSBjbGFzcz0iZ2VuZWwiPjx0Ym9keT48dHI+PHRkIGNvbHNwYW49 IjYiIGNsYXNzPSJyIj5HRU5FTCBUT1BMQU0gKCcgKw0KICAgICAgICAgICAgICAgICAgICAgIHNlY2lsaS5sZW5ndGggKyAnIGthbGVtKTwvdGQ+PHRkIGNs YXNzPSJyIj4nICsgcGFyYVRSKHRvcGxhbSkgKyAnIFRMPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT4nDQogICAgICAgICAgICAgICAgICAgIDogJycpICsN CiAgICAgICAgICAgICAgICAnPC9zZWN0aW9uPic7DQogICAgICAgIH0pLmpvaW4oJycpOw0KDQogICAgICAgIGNvbnN0IGh0bWwgPSAnPCFET0NUWVBFIGh0 bWw+PGh0bWwgbGFuZz0idHIiPjxoZWFkPjxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4nICsNCiAgICAgICAgICAgICc8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29u dGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLGluaXRpYWwtc2NhbGU9MSI+JyArDQogICAgICAgICAgICAnPHRpdGxlPicgKyBlc2NIdG1sKGJhc2xpZ2lUYW0p ICsgJzwvdGl0bGU+PHN0eWxlPicgKw0KICAgICAgICAgICAgJ0BwYWdle3NpemU6QTQ7bWFyZ2luOjEybW19JyArDQogICAgICAgICAgICAnYm9keXtmb250 LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtwYWRkaW5nOjI0cHg7Y29sb3I6IzExMTttYXgtd2lkdGg6OTAwcHg7bWFyZ2luOjAgYXV0b30n ICsNCiAgICAgICAgICAgICcuaGR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTZw eDttYXJnaW4tYm90dG9tOjZweH0nICsNCiAgICAgICAgICAgICcuaGQgaW1ne21heC1oZWlnaHQ6NTJweDt3aWR0aDphdXRvO29iamVjdC1maXQ6Y29udGFp bn0nICsNCiAgICAgICAgICAgICcuaGQgLm9ydGF7ZmxleDoxO3RleHQtYWxpZ246Y2VudGVyfScgKw0KICAgICAgICAgICAgJ2gxe2ZvbnQtc2l6ZToxOXB4 O21hcmdpbjowIDAgM3B4fScgKw0KICAgICAgICAgICAgJy5zdWJ7Y29sb3I6IzY2Njtmb250LXNpemU6MTJweH0nICsNCiAgICAgICAgICAgICcuZGV2YW17 Zm9udC1zaXplOjExcHg7Y29sb3I6IzY2NjttYXJnaW4tYm90dG9tOjZweH0nICsNCiAgICAgICAgICAgICd0YWJsZXt3aWR0aDoxMDAlO2JvcmRlci1jb2xs YXBzZTpjb2xsYXBzZTtmb250LXNpemU6MTIuNXB4fScgKw0KICAgICAgICAgICAgJ3RhYmxlLmdlbmVse21hcmdpbi10b3A6MTBweH0nICsNCiAgICAgICAg ICAgICd0aCx0ZHtib3JkZXI6MXB4IHNvbGlkICNjY2M7cGFkZGluZzo2cHh9JyArDQogICAgICAgICAgICAndGh7YmFja2dyb3VuZDojMDA1NmIzO2NvbG9y OiNmZmY7dGV4dC1hbGlnbjpsZWZ0fScgKw0KICAgICAgICAgICAgJ3RkLmN7dGV4dC1hbGlnbjpjZW50ZXJ9dGQucnt0ZXh0LWFsaWduOnJpZ2h0O3doaXRl LXNwYWNlOm5vd3JhcH0nICsNCiAgICAgICAgICAgICd0ZC5ia3tmb250LWZhbWlseTpDb25zb2xhcywiQ291cmllciBOZXciLG1vbm9zcGFjZTtmb250LXNp emU6MTEuNXB4O3doaXRlLXNwYWNlOm5vd3JhcDt3aWR0aDoxJX0nICsNCiAgICAgICAgICAgICd0ZC5ne3dpZHRoOjU2cHg7cGFkZGluZzo0cHg7dGV4dC1h bGlnbjpjZW50ZXI7YmFja2dyb3VuZDojZmZmfScgKw0KICAgICAgICAgICAgJ3RkLmcgaW1ne3dpZHRoOjQ0cHg7aGVpZ2h0OjQ0cHg7b2JqZWN0LWZpdDpj b250YWluO2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjAgYXV0b30nICsNCiAgICAgICAgICAgICd0Ym9keSB0cjpudGgtY2hpbGQoZXZlbil7YmFja2dyb3VuZDoj ZjVmNWY1fScgKw0KICAgICAgICAgICAgJ3Rmb290IHRkLHRhYmxlLmdlbmVsIHRke2ZvbnQtd2VpZ2h0OmJvbGR9JyArDQogICAgICAgICAgICAndGZvb3Qg dHIuYXJhIHRke2JhY2tncm91bmQ6I2YxZjVmOX0nICsNCiAgICAgICAgICAgICd0YWJsZS5nZW5lbCB0ZHtiYWNrZ3JvdW5kOiNlZWY0ZmQ7Zm9udC1zaXpl OjE0cHh9JyArDQogICAgICAgICAgICAnLnNheWZhe3BhZ2UtYnJlYWstYWZ0ZXI6YWx3YXlzfS5zYXlmYS5zb257cGFnZS1icmVhay1hZnRlcjphdXRvfScg Kw0KICAgICAgICAgICAgJy55YXp7bWFyZ2luLXRvcDoyMHB4O3BhZGRpbmc6MTBweCAyMHB4O2JhY2tncm91bmQ6IzAwNTZiMztjb2xvcjojZmZmO2JvcmRl cjpub25lO2JvcmRlci1yYWRpdXM6OHB4O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxNHB4fScgKw0KICAgICAgICAgICAgJ0BtZWRpYSBwcmludHsueWF6 e2Rpc3BsYXk6bm9uZX1ib2R5e3BhZGRpbmc6MDttYXgtd2lkdGg6bm9uZX0nICsNCiAgICAgICAgICAgICd0cntwYWdlLWJyZWFrLWluc2lkZTphdm9pZH10 aGVhZHtkaXNwbGF5OnRhYmxlLWhlYWRlci1ncm91cH0nICsNCiAgICAgICAgICAgICd0aCx0Zm9vdCB0ZCx0YWJsZS5nZW5lbCB0ZHstd2Via2l0LXByaW50 LWNvbG9yLWFkanVzdDpleGFjdDtwcmludC1jb2xvci1hZGp1c3Q6ZXhhY3R9fScgKw0KICAgICAgICAgICAgJzwvc3R5bGU+PC9oZWFkPjxib2R5PicgKw0K ICAgICAgICAgICAgJzxkaXYgY2xhc3M9ImhkIj4nICsNCiAgICAgICAgICAgIChNS19MT0dPID8gJzxpbWcgc3JjPSInICsgTUtfTE9HTyArICciIGFsdD0i TWF2aUthbGVtIj4nIDogJzxzcGFuPjwvc3Bhbj4nKSArDQogICAgICAgICAgICAnPGRpdiBjbGFzcz0ib3J0YSI+PGgxPicgKyBlc2NIdG1sKGJhc2xpZ2lU YW0pICsgJzwvaDE+JyArDQogICAgICAgICAgICAnPGRpdiBjbGFzcz0ic3ViIj4nICsgc2VjaWxpLmxlbmd0aCArICcga2FsZW0gwrcgJyArIGVzY0h0bWwo dGFyaWgpICsNCiAgICAgICAgICAgIChjYXJwYW4gPiAxID8gJyDCtyAnICsgY2FycGFuICsgJyDDtsSfcmVuY2kgacOnaW4nIDogJycpICsgJzwvZGl2Pjwv ZGl2PicgKw0KICAgICAgICAgICAgKG9rdWxMb2dvID8gJzxpbWcgc3JjPSInICsgZXNjSHRtbChva3VsTG9nbykgKyAnIiBhbHQ9IiIgb25lcnJvcj0idGhp cy5zdHlsZS5kaXNwbGF5PVwnbm9uZVwnIj4nIDogJzxzcGFuPjwvc3Bhbj4nKSArDQogICAgICAgICAgICAnPC9kaXY+JyArDQogICAgICAgICAgICBzYXlm YUh0bWwgKw0KICAgICAgICAgICAgJzxidXR0b24gY2xhc3M9InlheiIgb25jbGljaz0id2luZG93LnByaW50KCkiPllhemTEsXI8L2J1dHRvbj4nICsNCiAg ICAgICAgICAgICc8L2JvZHk+PC9odG1sPic7DQoNCiAgICAgICAgY29uc3QgZG9zeWFBZGkgPSAob2t1bC50cmltKCkgfHwgJ2tpcnRhc2l5ZScpDQogICAg ICAgICAgICAudG9Mb3dlckNhc2UoKQ0KICAgICAgICAgICAgLnJlcGxhY2UoL1vDp8OHXS9nLCAnYycpLnJlcGxhY2UoL1vEn8SeXS9nLCAnZycpLnJlcGxh Y2UoL1vEsUnEsGldL2csICdpJykNCiAgICAgICAgICAgIC5yZXBsYWNlKC9bw7bDll0vZywgJ28nKS5yZXBsYWNlKC9bxZ/Fnl0vZywgJ3MnKS5yZXBsYWNl KC9bw7zDnF0vZywgJ3UnKQ0KICAgICAgICAgICAgLnJlcGxhY2UoL1teYS16MC05XSsvZywgJy0nKS5yZXBsYWNlKC9eLSt8LSskL2csICcnKSArICctbGlz dGVzaS5odG1sJzsNCg0KICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoWyfvu78nICsgaHRtbF0sIHsgdHlwZTogJ3RleHQvaHRtbDtjaGFyc2V0PXV0 Zi04JyB9KTsNCiAgICAgICAgY29uc3QgdXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTsNCiAgICAgICAgY29uc3QgYSA9IGRvY3VtZW50LmNyZWF0 ZUVsZW1lbnQoJ2EnKTsNCiAgICAgICAgYS5ocmVmID0gdXJsOw0KICAgICAgICBhLmRvd25sb2FkID0gZG9zeWFBZGk7DQogICAgICAgIGRvY3VtZW50LmJv ZHkuYXBwZW5kQ2hpbGQoYSk7DQogICAgICAgIGEuY2xpY2soKTsNCiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChhKTsNCiAgICAgICAgLy8g QmF6xLEgdGFyYXnEsWPEsWxhciBpbmRpcm1lIGJhxZ9sYW1hZGFuIFVSTCBpcHRhbCBlZGlsaXJzZSBkb3N5YXnEsSBib8WfIGtheWRlZGl5b3INCiAgICAg ICAgc2V0VGltZW91dCgoKSA9PiBVUkwucmV2b2tlT2JqZWN0VVJMKHVybCksIDQwMDApOw0KICAgIH0pOw0KDQogICAgcmVuZGVyUGlsbHMoKTsNCiAgICBy ZW5kZXJHcmlkKCk7DQp9KSgpOw0K
