Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:小程序¥home_rule_v2¥base64://@粉妹爱PikPak@eyJsYXN0X2NoYXB0ZXJfcnVsZSI6IiIsInRpdGxlIjoi57KJ5aa554ixUGlrUGFrIiwiYXV0aG9yIjoi57KJ5aa5IiwidXJsIjoiaGlrZXI6Ly9lbXB0eSIsInZlcnNpb24iOjEsImNvbF90eXBlIjoibW92aWVfMyIsImNsYXNzX25hbWUiOiIiLCJ0eXBlIjoidmlkZW8iLCJjbGFzc191cmwiOiIiLCJhcmVhX25hbWUiOiIiLCJhcmVhX3VybCI6IiIsInNvcnRfbmFtZSI6IiIsInllYXJfbmFtZSI6IiIsInNvcnRfdXJsIjoiIiwieWVhcl91cmwiOiIiLCJmaW5kX3J1bGUiOiJqczpcbiQucmVxdWlyZShcImhpa2VyOi8vcGFnZS9TaG93XCIpIiwic2VhcmNoX3VybCI6Imhpa2VyOi8vKioiLCJncm91cCI6IuinhumikSIsInNlYXJjaEZpbmQiOiJqczpcclxudmFyIHJlcyA9IFtdXHJcbnZhciB7c2VhcmNoX2xpc3R9ID0gJC5yZXF1aXJlKFwiaGlrZXI6Ly9wYWdlL1NlYXJjaEJhckFuZENhdGVnb3J5XCIpXHJcbnNlYXJjaF9saXN0KE1ZX1VSTC5yZXBsYWNlKFwiaGlrZXI6Ly9cIiwgXCJcIikscmVzKVxyXG5wdXRNeVZhcihcInNlYXJjaF8xXCIsIFwiMVwiKVxyXG5zZXRSZXN1bHQocmVzKSIsImRldGFpbF9jb2xfdHlwZSI6Im1vdmllXzEiLCJkZXRhaWxfZmluZF9ydWxlIjoiIiwic2RldGFpbF9jb2xfdHlwZSI6Im1vdmllXzEiLCJzZGV0YWlsX2ZpbmRfcnVsZSI6ImpzOlxyXG4vLyAkLmxvZyhNWV9VUkwpXHJcbnNldFBhZ2VUaXRsZShcIuaQnOe0olwiKVxyXG52YXIgcmVzID0gW11cclxudmFyIHNlYXJjaF9yb290X2l0ZW0gPSBNWV9VUkwuc3BsaXQoJyYmJicpXHJcbnZhciB7IGdlbmVyYXRlX3BhdGhzIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9QYXRoJylcclxudmFyIHsgZ2VuZXJhdGVfbGlzdCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvTGlzdCcpXHJcblxyXG5pZiAoZ2V0TXlWYXIoJ3NlYXJjaF8xJywgJzAnKSA9PSBcIjFcIikge1xyXG4gICAgLy8g6I635Y+W5omA5pyJ5paH5Lu25aS5L+aWh+S7tuWIl+ihqFxyXG4gICAgdmFyIHsgZ2V0X2l0ZW1zX2xpc3QgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXHJcbiAgICBsZXQgbGlzdCA9IGdldF9pdGVtc19saXN0KCcqJylcclxuICAgIGxldCBzX2l0ZW0gPSB7fVxyXG4gICAgZm9yIChsZXQgaSA9IDA7IGk8IGxpc3QuZmlsZXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBpZiAoKGxpc3QuZmlsZXMpW2ldLmlkID09IHNlYXJjaF9yb290X2l0ZW1bMV0pIHtcclxuICAgICAgICAgICAgc19pdGVtID0gKGxpc3QuZmlsZXMpW2ldXHJcbiAgICAgICAgICAgIGJyZWFrXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8g5pCc57Si57uT5p6c5YiX6KGo6aG555uu5piv5paH5Lu25aS577yM6YCS5b2S566X5Ye66Lev5b6EXHJcbiAgICBmdW5jdGlvbiBzZWFyY2hfbGlzdF9mb2xkZXJfcGF0aHMoc19wYXRocywgbGlzdCwgaXRlbSkge1xyXG4gICAgICAgIHNfcGF0aHMudW5zaGlmdCh7XHJcbiAgICAgICAgICAgIGlkOiBpdGVtLmlkLFxyXG4gICAgICAgICAgICBuYW1lOiBpdGVtLm5hbWUsXHJcbiAgICAgICAgfSlcclxuICAgICAgICBpZiAoaXRlbS5wYXJlbnRfaWQgPT0gJycpIHtcclxuICAgICAgICAgICAgc19wYXRocy51bnNoaWZ0KHtcclxuICAgICAgICAgICAgICAgIGlkOiAnJyxcclxuICAgICAgICAgICAgICAgIG5hbWU6ICdob21lJyxcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgcmV0dXJuXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbGV0IHNfaXRlbSA9IHt9XHJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICAgICAgaWYgKGxpc3RbaV0uaWQgPT0gaXRlbS5wYXJlbnRfaWQpIHtcclxuICAgICAgICAgICAgICAgICAgICBzX2l0ZW0gPSBsaXN0W2ldXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc2VhcmNoX2xpc3RfZm9sZGVyX3BhdGhzKHNfcGF0aHMsIGxpc3QsIHNfaXRlbSlcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBsZXQgc19wYXRocyA9IFtdXHJcbiAgICBzZWFyY2hfbGlzdF9mb2xkZXJfcGF0aHMoc19wYXRocywgbGlzdC5maWxlcywgc19pdGVtKVxyXG4gICAgc3RvcmFnZTAucHV0TXlWYXIoJ3NfcGF0aHMnLCBzX3BhdGhzKVxyXG4gICAgLy8g6Z2i5YyF5bGR6Lev5b6EKOaMiemSrilcclxuICAgIGdlbmVyYXRlX3BhdGhzKHJlcywgJ3NfcGF0aHMnLCBzZWFyY2hfcm9vdF9pdGVtWzJdKVxyXG4gICAgLy8g5YiX6KGo5qCPXHJcbiAgICBnZW5lcmF0ZV9saXN0KHJlcywgJ3NfcGF0aHMnKVxyXG59IGVsc2Uge1xyXG4gICAgLy8g6Z2i5YyF5bGR6Lev5b6EKOaMiemSrilcclxuICAgIGdlbmVyYXRlX3BhdGhzKHJlcywgJ3NfcGF0aHMnLCBzZWFyY2hfcm9vdF9pdGVtWzJdKVxyXG4gICAgLy8g5YiX6KGo5qCPXHJcbiAgICBnZW5lcmF0ZV9saXN0KHJlcywgJ3NfcGF0aHMnKVxyXG59XHJcblxyXG4vLyB2YXIgcmVzID0gW11cclxuLy8gLy8gdmFyIGl0ZW1fa2luZCA9IE1ZX1VSTC5yZXBsYWNlKCdoaWtlcjovLycsICcnKVxyXG4vLyBjb25zdCB7IGdlbmVyYXRlX3BhdGhzIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9QYXRoJylcclxuLy8gY29uc3QgeyBnZW5lcmF0ZV9saXN0IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9MaXN0JylcclxuXHJcbi8vIC8vIOmdouWMheWxkei3r+W+hCjmjInpkq4pXHJcbi8vIGdlbmVyYXRlX3BhdGhzKFwic19wYXRoc1wiLCByZXMpXHJcblxyXG4vLyAvLyDliJfooajmoI9cclxuLy8gZ2VuZXJhdGVfbGlzdChcInNfcGF0aHNcIiwgcmVzKVxyXG5cclxuLy8gLy8g6LW36aOeXHJcbnNldFJlc3VsdChyZXMpXHJcbiIsInVhIjoibW9iaWxlIiwicHJlUnVsZSI6Ii8vIOaJqeWxlSTlr7nosaHnmoTlsZ7mgKdcbiQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0V4dGVuZCcpXG52YXIge1xuICAgIGF1dG9fdXBkYXRlLFxuICAgIHN1Ym1pdF91cGRhdGVfaW5mbyxcbiAgICBwaWtwYWtfaW5pdCxcbiAgICByZWZyZXNoX2F1dGhvcml6YXRpb24sXG4gICAgY2xlYXJfdXNlcl9pbmZvLFxuICAgIHNoYXJlX290aGVyX3Jvb3QsXG4gICAgc3ViX3JlYWRfbG9jYWwsXG59ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcblxuLy8g6Ieq5Yqo5pu05paw44CB6LaF5pe25Yi35paw44CB5Yid5aeL5YyW44CB5o+Q5Lqk5pu05paw5L+h5oGvXG5pZiAoZ2V0TXlWYXIoJ2ZpcnN0X3NwbGFzaCcsICcwJykgPT0gJzAnKSB7XG4gICAgYXV0b191cGRhdGUoKVxuICAgIHB1dE15VmFyKCdmaXJzdF9zcGxhc2gnLCAnMScpXG59XG5cbnJlZnJlc2hfYXV0aG9yaXphdGlvbihnZXRJdGVtKCd1c2VybmFtZScsICcnKSwgZ2V0SXRlbSgncGFzc3dkJywgJycpKVxucGlrcGFrX2luaXQoKVxuc3VibWl0X3VwZGF0ZV9pbmZvKClcbiIsInBhZ2VzIjoiW3tcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJBUElcIixcInBhdGhcIjpcIkFQSVwiLFwicnVsZVwiOlwiZXZhbFByaXZhdGVKUygnRFcvSjVNRmJ4dG1ub3BuaWpNRUZBOVpvUkY1K3M1U0d2ckNzcUR0eGplUDJMYXE2M1NrM0FMbUVqQzBuOER5WU5DY3RUUk5TTUJ0UERDVVhNQnZLN0VLemE2amtlN0o4NURiNmJMT284ZGdCcEtGVktHRmlySElZTTB3UldGUFUyWWFhQThvenUyMzdrUGhadzM1cUdpN3FlelFaTmtDRUo4aG9HT1ZBekoxOUVUNCszbkM2MHRuL0FrSlloRUVLZlM3QVZqNXBrbnFaaHMyYndwUDhGeks4QlpJL1lpUnNzNmI2amVjdHBMSndFcDFHT1M3MUE2VkYvWDhWRG5NVTl1KytFOVVadGt4REZZR2lVcDFyY0V4TDBTRHVGemEyM1dJZEkwOWRDT1JLWWhLSzhHa2NTWGVUbWFzRnpqWFg2bklFV1FzVXhGSFhYZ013akIwL2V6VEk1QUYyM281M0doOUVQUjNaN2VLTkVMWWh2aVorRXJZK0g3ajdYQ05vT2FQU2lOZjh6TjA0amFPS0dKV1hBUXBPdW5aRmdHb05IclZ0ZHZKb0hyV1RhOVJiMnRBb0prNWRyekFpd01KSU9rT3FRa09OYTdsTm1BVlhWM00ycmVhUW5GRkRnMld3VFUxL1RiNVl0UmpuM3VNU1FSc0Y2VDVMbXp1bk4yaVhkeXRmZ3pZSDZ2bGJINm5ITnlhUzNUeXZKQXdhWUR2L3B0Vk5SMEp0R05Cc1F3c0Zkc0JENCthUTlta2tNaVE0TlNNbUVVSVRoSUFJQUI0YlowVUVES3NNd0ZFQWhUUmZmWVBmVlFLeVcvYk1KOXhva2tVc0RvenlVb3hlYnRmRUtvWnZHSWtoVFBodlFDb2ppUUdOVkh4RW5GaVJ3RWZqTkwrdDZ0cXcrVmFTbVQwUzMyMGtrZ0FxdW5Yd050Y25NSlE3M3k3ZEIrejI2azZDQ2JTUkxnTEI2UHFPdzMrRkMySlBXVVVoL3N0RGliWmNXditMOEtOVlpmNHB2WkhtcVZuRlRhdVVZbWh3REZJQ3phOTIzMDZFeFpxazdyMnNIQzM5ZWhNYTZKYWgyenA1WERaYWdCQ3BNUkVTNktrODJyRFBNTXM5RFRZd1ZrSjNYcjRPZ1Z2UVZxZW1HNlRCdkVsaHIwNGJMZTZxaHJKS2dtRDY1QnplNWN4NGZkNmdua3h6ZlhSVXVDaVc1cU1UZkhYcDFLZkpxNUdxRm05ejVoOU9CdmFDMkVBYnBxU3d6SXhZd3dyZ1Z2Q3drSGYrbGpHMzRHMWNHR0VUUTNDNTVSa2FaaXFHNURrNXc4SXNmTkx2QTZxL3lMMWZkd25RZlZzSFlDMU1ld3ZzSGhremRuMDFydFlxTlQ3NElkb0tjTEdkaXFraEFVZHpJNFEvOGpzZzVSTUdUTHNJNHFNby9adkZ3dTFGQ0RzMXFIUVArWldTM1I4WU9IcVY0QWs3Q1VKQUhIblhQSytWMzQ1cWluTnVPNUo1MW5IMHRGQ3dCQ09ZWXlmQzByeld5UG9LMDF4cGxWV1VWamgrM2IrRnJZck5ML3lUajZJT2dXWGhSTnY2NmVxWS9NaW5KQTJLdC9Wd3craU55VW9HZVY1UzBFMmpGVXREZERwRkx5NHo5VklyWTM4Q3M0dGZWbC8xUmxocWIyem05SEVxZlNhN1pYWis0WU1rcWVENHNNdjh6alpzekxpNGJDQ2ROR2M1TWp4TDlRRVA3anJEL21KSXlQbDRYY0w4MHBOVldEMnE3dDhQc3hQUy92YnpyQnVhMzFaelpoM0hrK0dTWmM0WTV0NDdtUWRjbXdSNlkza2toeXViZmlZL2x1d3BZcHNwZFRqSTVNRDdyS2FzZm5HMzNRbURJOC8yay9jOVZIVHY5aWQvN3lGK1JVZHU5emg0UGtvbUI4UFBvaTFVTnU0cjU3RWtKOWtTZEdzb3lYWFp6cFF5K3c3ODg3RGtKeXZ2MnduT0oyNENpbzFTMEpiNStQVjhPNjIzUi9KSE1rbkVjU2JtSWRiMzVGaGVvZlhoUy9NU0Q5QUlUQ1FIMmVBMW0rT1lvMEJHOTRQV1BYNzQ0ckV1aEhWNUgrYkFXSzBkS0g0UW9rWUl5aFM0VWpiVVVVNTJ2RlI4N01JVkEwL2F2aThmbk1Ma1c4aUl6M1JmRFdzQTMvaE0zamduVEFrL255UDdLbHFIZWlHSGhKTHd6cFF5K3c3ODg3RGtKeXZ2MnduT0o4a2p1QUgrOGNORHdROU9OYmZLWFFXbUF1VTA2YUo1L0hjM21mMGRBSHk5VERmSXFIRHAxWjNmSlNRQmJZYW00ZEdUbkh2eUNiSWdLSGxuNUgyeG5pc2IyQ1FGYVJBWDdETFpuQWIxb0ovV21Fcm5vcTZRRjFES21zc25mQUQ1UXJzaVdBVENyVFNrYlJ1dmVSYWhiTGdxSHhyTGlvYWxlUzdMMmMzT0RFVHN3VDBnalkwMmFwcDczbEpMcnhldEIvZTRVR1pUUy8xUXBZNkxjVndvTjZOakJKMHN0MmVVb0JjQWw3VGNxWW1MbFNiODcxaFRhc3dPNndJSjZwNkU1MDliQkpwL1pTRkRqU1p3YnpEc2Foa0tUZXd2UlB1bWlsR3M2dGNXaEJZK0l4ZFdQeVFaMWRFN2dzdnpjK1VxUnFtOFV2Sm5LaHcxcU50SjgyQWQ5QWpxTEY4cWc1VlRqVitZY0hGeWZNUlpiY1lwTjYyNUJNZkZnZ0tqZkpNT1pYZDl3SVhXZ1EwSTV1Z0NZaWlZR29YWmpLcFg5RnN5OXh3RlJTSUYwRmRtMHRidk5PNTd5S1ArY0xGZk13dElkNVkvZEZ0RkVoWjNUZGJ4VEJSaWp1VUoxN1FPK29jQUJ0N0VHb1JYM3VSczVlK0Z2N29LWlk0WnRXQ2FiVEM1TjdGWGlhckhtejZKSUMzdGpseVV2Yi81UjNjd21xSG04VFJPWTdnRWxWU0pvY0lmb2Y2UVJpcVJQZlVsL1pmRW1KcERNeGFPVFJWOTlsMjRENURMa3dZTkxmcVNWeDlUckRYUHBrdlRySFo0UEsyV3VVSjNNNlRkZHR4ZndDdUNjbHRWZHVxSXBSV01seFdmcit4QnhQQnU5K2RNeG1TRlRCQmVZNTJUaVh1SE1XZFRYTndwWlRKOHpyS0x3aUZjdCtZbzZEYUNKa0psak5lVVM2WFdXMklxbTFwUHZWeFdiWkRCMHl4Q2Zoa1NMRjRpellWMlkwOEZyWXU2UXdoTXh3eUFSaTRSY1ozQlJ0aHVNUWcvUUpsK3RHMU9FSEFKTHNmTmdadlJzVTdNSHg2WlJqU3VvLzlWWUxsbWREaGhoODZVTXZzTy9QT3c1Q2NyNzlzSnppZkpJN2dCL3ZIRFE4RVBUalczeWwwRnBnTGxOT21pZWZ4M041bjlIUUI4dlV3M3lLaHc2ZFdkM3lVa0FXMkdwdUhSazV4NzhnbXlJQ2g1WitSOXNaNHJHOWdrQldrUUYrd3kyWndHOWFDZjFwaEs1Nkt1a0JkUXlwckxKM3dBK1VLN0lsZ0V3cTAwcEcwYnIza1dvV3k0S2g4YXk0cUdwWGt1eTluTnpneEU3TUU5SUkyTk5tcWFlOTVTUzY4WHJRZjN1RkJtVTB2OVVLV09pM0ZjS0Rlall3U2RMTGRubEtBWEFKZTAzS21KaTVVbS9POVlVMnJNRHVzQ0NlcWVoT2RQV3dTYWYyVWhRNDBtY0c4dzdHb1pDazNzTDBUN3BvcFJyT3JYRm9RV1BpTVhWajhrR2RYUk80TEw4M1BsS2thcHZGTHlaeW9jTmFqYlNmTmdIZlFJNml4ZktvT1ZVNDFmbUhCeGNuekVXVzNHS1RldHVRVEh4WUlDbzN5VERtVjNmY0NGMW9FTkNPYm9BbUlvbUJxRkFOcWNhRVlIWHV2by9OZ1RHTWlhUnpaUHFLKzVyWlF4YkhsSG5jcWdmRlJSczRiS0dsRlBRSnVGbEprbE11ZzhqYXpNU2RreVV5WFJTVkpCNUJHalFudlNxTU9SOHZzSWxrLzVZcDB6Y3d5R0hqYnJ6NlhjcWl6TG9ORVh3eUNJN29RMHhBT0RBZkQ0RkxNRDFiY0dQWGQyU3YrSkRMRER0Yk5NWVRoYSt1YnhSS2dYRHNWOGk5aHd3Yzd2bEZEcXI2b0gwcWxHcm1HOWZyWWxpa0wraGhhNGhtZCtQYWo0RlR5dHYzNlNIMWJMSzh0STFsWnord2lmKzlaSUFkVDI2b2dKeXVOT0s3bVpJVUNRL1V0OWN3UnBLNDBlMTNSVVJvVGk0SnFvQkxUWllQWGsyaExLVjcvQi9lUnRKSU5XYy9WRG5vRDFoSkFaQXJhUmk1RG5ObVIzaU5ra096WHFNeGRkZmtsV3JTRkRFbmoyeHlKTnMvdlJqcWpEd0YzZDdwNnNnUDlWT1FZZzhvc25vdlllL1Z0NHNkRjhpaTRyU3FuOTRlYjN0VU9Zb1ZiRGdMaDdHWXlnUTFqcDloYWhpZlNqYVBLeWRpTkxiOGFRT1ZwSWxHVHpOaTBRSnNTeFhsZHcwZHpobE8xNHU4UkV6NXkvejB6UXZVVkdncnBka1IvN3kvMkFPSjNnZzBmLzJXbnJUVEZOcXlJRXdxcHVXTFN3Tkw0dDdvekRDaHRQT1J5eHJZaVJja25GemhoTWNHREM1RXFvZXlUczVzdkViNVRjaER6dmN1WElFcmdyMUQvUHVnRm1oT1ZzTFllWCt4dDJaQmh5dUtwYThzWDhyejZjUHBDV0F6RDZsc1pQaXVqUFNvbXR6M3VNZ3JieGMxVGlZdmJBUFpiQzBFME5FQ3o5Wm5vcTE5Qit2RE1POE53Tlk5aTVKRUdGcDBjN1ZsN3FpSkxRbm5uNTYrOVlTU2w0VUFJK1M5cDJKU1lzcGljT2xMVExlVjdCbVUxT3d4RWFQOGJUeFBhOE1NdlM0SVM0YWVSRGNnUlNQUE1nZytQcU5MYWM2V1NHZG9XYy9hV2dBUGV1Y2tRa1UraFVvMVhnYm9Ra3VrbnFzcUQ0ZVVadEU5ZkhmWXp1cjRkU1lTMS9uZEFLV2ZzTS9OVmVzMDFMZG90TlBmcXJBZXRsbHBYUWEzUUsrajMzN0JDN05HcllUMitQdUlqYnZOR04vUHBla08yWTRMZlh2ZHpIZ0ZOdm1wTVN3aHBvNnhibFQ5OUZtWHJ4bUpVMFZoM2hWZm44QVBUTk1ZV05uYlVRQkZXaExtN3A5VmJqdEpjZ1I4QkxjZzNSYVdJSFVodldNVTJySWdUQ3FtNVl0TEEwdmkzdWpGek5UVGFzQmdPTXRNUm5jZmJvWVVrYlV6M1krQVBBajlmZG5sTGFDSzJNZGhOd1h1c3Z3Q203NTZKV0lYVmVMQ0VQbUk0VVpDSE5uTVcwZjNwc2lYQU14QUxtMFFoQW13OW9DV3dwTDFzUWhNM0I2L2dPTnFGUDMraGlKc2dhRjVkWW5wTDdXZjZWU2RrZ0pWYlVMN0ozU1ZhV2oxeFBzR21TTTZEcitIa2xqbGNVZnBjSGNvNUxHVG9TYTlQQ3hSRFlXMVkxM3NKblRuSURPQkpxeXBNTW9iVnljQjIrczQxVm9pVjVtRm5NVzNpeDBYeUtMaXRLcWYzaDV2ZTFRNUgyamV3alAvSUZsckZpazhocUdmRzB2NnhZN1lFcmEvbGw4aWNYaGZERU15a0NteUZEMUZQdFRrKzRNQkMwcVZKVmVKMjBDN01XU0N2OVFkUWJ2cGJPYkdpMStHT0psU0Izb2hwVjRUVlBJN3ExaThTWU1HL0p0NmRkQWFyZjhLbDNJajN4eHpodEhySkF3UDJITU5WZnRvd1FCK05MWGprMDBtWVhWZm9Qa1ZlbE9mSGdsVElVYzVXaEtrMmYxc01ld1c1SHhqbHVlLzlDSHV2UkNlcU9zMVRBOHUyZDdnbXE5bG5ySy81STJETFVhMEdxTTVKaEpLckR3MHNtTXVSSE9KVUttVmx3NHpvS3ZGbTB0SGZMTXZPeCtQTUJzcEJhSDJwN1o5RFFXTlhqVXJ4VW5BNTVxbG9JOGdkT1FZRXFCRFBNSjVPYkcyMHhCRWdLbTU4cFVTaUJ6aHI4T0g2K1dqVGh2Q3lQWmJEQnFYQXJ4ek5CUzlRME0xWWwxTG1IbW45a1NqVkw5OEtMOGRMSkl0eEhFa3dFcm0zMDBZZ2VMTmpkaHhEeiswY09ydTZQMzJEeUFtUVhmZEJIN1Zza1cvc2txVWI2bG5YNXRQZ2VuYmhESnoyTkh0Uk1vcUFpc3c5eXoxNm0xRllMMVVNNDFNVjlpNUx1OHNIY1hwNW41R3ZtY1ZiWTBzR1lTemNpRFYzRk5LZ2V5UGcrVGxxNTU5aGw2QmF0ZlJ3ckl6bTRVTlIzOWZ1TktJOXdaeEM0U1hWb0R1KzJldDBKZFpTMHM1QjlRQis4S3Y1UGRBY1V6YUhhZlBSMkNuL2FMY2VHVFJyMjFld2JkZW1XQ3ZNSHdVZmxYTjJEVXdwRGJDK1EyVjh2b0M3b2FjY3JmdEVXc3Y2YTRLSnA3dUwxVzgwTmRabEM4RDBlYjBvS1BRWGUvVmRGNU1Rb0ZKVkxoRGdhVnE4Tmo1Wlo2VnlZK0JuNUtHU0NDWW1lcFNxdHVHSkdsUnhkSjY4QVNzd3IwZ0pTMDdOZHVOVlZPSkVxQjBobDl5b1FOeVNlZVVZM3R4Sk1peHY4Rmt4YjJIcTczYjg1ZDMxQjRzbjRCSDY4cTdMNDk2U0tMSjFWeGlxQkZGbUtGSFE3aWUxT0pnVDM4am5mS3NOamE5ZkRPWlNWVURwNTZubks4T2owYnJybTlObjdCMnBXdlFyOVJSZ25uTU1ScUVSbWRpOEpnYTZXU044UWRRYkJaVUlTUG9hRDdNSjFlOHV1bm4yMmxSbE9MNjM1Q28zcGZubkNVbWpCUFl5T1RjcmQ0cWxQRFYrYUR4RGpZQmxYTUU2bGhKbFNseW9FUVJkdUlUcnBXS1NTdDZVSGJvQXhzRDJldEN1VFVIdHp3VDl2RHVvcW5zOGY2Y05LaFY3cW91YWZncEdMVEUyK2pVMXZLejN0dEIxWTlZTmhyK2VJK3k1K2Z5bXh0VHUvSlQxUHV0L3REcU9QWGkxMXl1NHpWMzNuaEtibUFlUVdFVnZ2RkV4QmNBY3lhbmY4M3NhUmR6ZTZyOG92cTZVa1F4M09sREw3RHZ6enNPUW5LKy9iQ2M0bnRvRlRwMFNBS1VKTFBadzlWZVVYclovNkhHZVlvSGxHaVRPNUpXVWU1cWk4elNxYmlYK2EzTzh3RlhMUm54VVhxVFVIdHRiMjdTR2pSS1ZIWWYvV0ZGTzdyeEh6SmEzNUUwMDVMTFBCVFdRQjlCR293ejZ0d281RGdTYlpyNENYZlU4cE44QmNGa1RPRzkyUEZzL0NQaVhzN3gwNEYvbnJGVTA5QUtNekZFdGhnSGVhbFd6WUM3YjFDSmVCZENVUktzMVpGdy8xVXZkTjN3ZHBRN3A5S1F4R2R1Y3kvZ05HT1FjUkJRZDNub3Y4OHZxR1A5bDN3L3hpL2xaci9mUFpOMXFSVDFBc2NXREdTY2dFMm51eWV4SlRZd3FRMGpxcC9YUTZyYXhBbTFhY3NWbmhWUkxucEdvT1ZUdEtsMjRCSG5vd3NQeitOd1oveGw5V3gvbXQwY0w4U2pRNEtsbWhCSWxsODlaYy9sMDJRenh4djRtMFRKL3pBV1JNUVdJVUZrbmlqa2ZnYmhIU1lqQlN5Tm5zU00xSWdObnFCT3ZNVG4xUDJDL1IwVi9MSzh0STFsWnord2lmKzlaSUFkVDJ4ZXFjcFRjdGVWdm0wa0RTbG1vNlM0TTFjVFdoOTlEZXRoNm9TT0w0Mlp2d2xZdDJqUVE1OTVUeUgxbmpRTzJ3bGlLdlQ3QzF4eExWSjF3eFpZSGdxVDU3WkJUUER2dFdxNzNreEdNMEVjRitOVDFiQUNVaFQ0L3dseGY2OERDNjcvekxZQlBmaXJnejRUYyt4OEQyVTNxeG85MGZqeVpBMjM1MjNhY28xOGlyUHVWS0NmVkxQc1IrRXBQN2VCSkR2dmdGcDVhVlYzV3pNTkIvbG5uLzY5SnppajdlSm1WcEs2ZGhTbGNZOUhYNHg0RUFKVjFhbk9qZ0pkeURmd0pRYmVyMnNrc3NCT0VoQjZVK0duZWRlWGlHVjlMWGF6WXJDU3BKMnZ6RzdsQVAvdmZHWjlOVDJBOU1tMys3NW1yeEdDV0dnZHl5WXF3RkwvenAzOGZXZ2ZDQTROa3NkVU9FTVpmS0dWdk1jcGd5R2YrVDBtR2VJcGxWTWVqYm00ZjFPdnMyaG95eDVCQ0hSbEdhUTRHbmJGdFZkdXFJcFJXTWx4V2ZyK3hCeFBBK2VZQXNjL2pzeTV6K0xONVk4WjVHb25kZlI2YURMcDBtdHFVV2RsM1o3Q0JVS1M2alk2Zy9qcS9pS2hwYlVTK0M2b2lqV2M4dlZXYVE0VC9wMVplaVNsMHJEL0phUWxRTVJFWGliekQrU2xSNFlnS1ZDUk9CVnhsTjhnM1hXS2t4VlhDcHY5dXhtNXl3TnFYK2p3bXd5eXZMU05aV2Mvc0luL3ZXU0FIVTlyT1c3VlpMM3E0bzNJZVd3bmp6bGpVT2VybitwRTF4a3pFWDJ6Rms0MUxrQnpDY3BDeE1ud29xR0xJblVZWVViTkFrTEh5QXQrTnV4SFMzZXN5TXV2QTg3M0xseUJLNEs5US96N29CWm9UbDRVSEc0ZkVKTnRPN2gvS2VHU2VhZ2xqdzFyOFdIajA5cnFVdFhNZGQzcHZMSzh0STFsWnord2lmKzlaSUFkVDJUV21yOW1hd3NralJVM3RPWWxEZmFHd2tyY0lNYmZMUE5RSjNyczRMSWRiTEs4dEkxbFp6K3dpZis5WklBZFQySUVlUzVoMXVFUTdEN1o3QTFPc3FkZ3R0cWsrNFAvUmduMGloY25NYytXSmdpeHNWcFRZSjRYK2llWHJRemQ4VVA1Y1BuU041ZFNVK2FjNTRmdjJYVVNTOEY2bVJ3RjJoL3B5Q0o4Q21KblNPTjdQSGlaQWdGeExuMUg3cXE4RSsyUFh6Wk42dHhIbnY5QWxUV0w0Y0NVRUUySnJCak9jb0NXd0N5allZWk82Rmh2MWlNWVZNcjFDQXpSc3R6Yk12MlRPQUhvc0U4MXVyTzhRMktidFpZL1F5cmJPYnRoOCtKVWM3WTk1S3lEOC9ES2xTT2NyWXU2TWhiRTlaMCtCc05uZDRPdTQzSk9iOHRwQ3R5NFpGbnIxZWhnT1BXd3NMRXN5YXZETVFOZ1NOVzZvZTFGZGRVNGRyb2FHSDV6T0ordVZLQm9SYTIxU0xSUUR2NU9jUDAxdFZkdXFJcFJXTWx4V2ZyK3hCeFBBanlvTUFyN1ZYWmxMK0JoNVN3VFpkRlBnWit0Mi9hMWpEdXZEM1ROWXNVWkFyWEFoUThEZ1I1WEpKWTZ0aEhyU0xkTUNXaTBtMVVzYTVmWUhtVkkramkxSmRTejlyc3MvblExSXJCUkY5YndrR01teUJGRGt0WC90ODUrcUpUaFdpZC9HWk9IaHVyS3JybWpSc3ZkRDBLeWFTVEI0MTErUStqZEhGMWx4TmRieE44Q2FtUTBNQlRJdU92YnZQZjg5U3FjSXkwTDhIT05aM2ZHZUowUmFMZXM1d1lZN1RZWWU0a1QrWnVMUlY1Y2tRYmRROTRFY2s5bHIwNUZFL01Cajc3TVdVaHNQN0VOTkIwVlpCVWUxaWxBbnB0KzBiWGJyWkxlenBOS0ZUbTRJTnJ2NTJqTElxNHpkZXJqTEVYRjVhaFRUZnR3TWg0US9zb01HQzN0SVVMQnRmUGFIQnN3ZVkzYWRLS21hRzExY09LTmtSNlRaYTkxbFJJZXpicXFNZHlNLy9KbkJRUHJ2MCtxclhCQ045eloyVWg4a0ZldkVzSU9IUzl5bFprc2hoUzhWVG4yNVVmektmNWZhQjdvNzdZZmZJaWJGMmVtQXpIVlFLZnlkOXpweFNvT0MwNWFBb3V6OEpaUngvTGdDeG8rWWo4SFJjVEVYcndITS9ialgrWGZhVWRUYlQwaGhhOHk5bFh1WmpEbjhzSG9yZStYaHhyNnJhT09NZU40dDNEQ3NwRUVkdzg1V29OZXlDSHlyam5sNlZnWURROENVWUR2cXpxREhMZnRCTkg5TERvZWllbGNDZXdpUU5tKy9pa1ZaWWRlaFI5VkFvaXdVWG9idWZtT0pPcFluSm5aejY3QzdqTTFxQkZzb3Fadk5sc2ZxVmZFOG9wVjNuOWdaL3RTcVZCWXlFZE9qQTJScDYxYTNKZUt4T1Zra0RkM1VIZFY1TUJYYnBySThtMTZ2V3RsY3NmTURzQ1BnNXR0MnBjMXFDZ2s0RWcrTjBjZjEvQThZL0k2em56TDk0UUZRaXJqSjJpeU52dWEvRnlDN3l6dnhDZWJwdWZNQ1pMci9FaWIybVloZTBWb0p1eHhGZnlzZ1BnTktwUVJmRXo0WFlsOG5WdlhQMG0zNjNSQnlnZ0RSRERzMHorcGNJdnU4M3JkS3I0dm5zMWgrWExLQWpHMFgrL1ByREdzaVFoVXRuL0FaRHpYMjV2RmdYQ2EzNGdTMU1iKzA3eWkrY1BJZ0NNdXllYlgzcDh0NnJQbjR5SzMyT0FPSXF6Y042RFdCeTZqTDVjc2RvVjBldXl0eGdOU1ZxMUZVNmVLNHJlNURLcGFBRWcvQWRrOTliaXJGdVJvdmRmK2VsTHNrRVluTFFWZ0lPOTJsSXg1ZGNUVFNBVHdxR2RXOTVDdWJQMlRLa1pQK0ZON0I5QUZUTEtjSW5GdytpMGpBRDUzV3NxaFdPNkhFM0pwOEorK3pGbEliRCt4RFRRZEZXUVZIdFl0UHd5em5oL3FjM2JJN1pmQ3BBR1BRcFZUR0M5MS9HdklDdGVnQnRCaU5oUzZ0V3pYY0JJVVFuMTZUN3MzSXFXVUZPSlBHeDJEcEhxcUdidzBUcG9yQ3dUOXYwOFh0OHBsVk5jR2t6SzJSQU5oY3doM2tBeWdobDcyaDR5UjJZZTdLV0xWaGZ3Ry93anJtazFIc0pPa3FBZHhSZTBGd3ZVSjhBUU9vMVlybUJId3dpdll0NUc2SmxEMU9XU290QlNGSjFVSGxKSXN1a2ZlQXRCNmQ0QTQ0bVh2aXIzVlR2bTc0R1lZTndIaGJMNnNKMTRpLy82Y05qL0xFUHRKRjl1RWVrVUhUeFRRaU1aNU4zN09QbUhNMU1BRkVMbWNUOXJaSElQQm1iTVRJZmxSNUxoOG1UL1haMENBVmdQMnczWVVtY0tESGpGNE8yeDBEK3FSeHdxdTJYTjYrVFc0dVcrUmRWbUs2ZmlBbHo1OUZ1eWd0ZDFlYVNYS1F1dlhaaERLVllzSjhUbDlNQWVYb3B1Wk9Cc1RvNlM1ak0yelhQTFZQcDVRcUZXTVRndGl1TXdEL2ZLVVJVN2pKUFhaQW4rQnpjQUovUHE4aXh4M3VIVWFZZDRCblpSa2xGVk92cXU2ZGhJR1FaMW0vbERDTm1DNTN2TTk1SndhOXRjbWRSV3psZUVwUGFuWm44WkZza0FtMWxMZ015K2xJQ0xzNit3R2NRWENZc05zWEV0K29kaG5hazlHYU5FTk04OWxPZzR0S25pYkFiZVNiNzJSTXZwR2d0eXVOVXllZS8vZWZNejRYNnAxNmZPOWw0MEt3TlhWQzNNeEROblNQMlFrZUxuYytPZTVZZ3oxOU1ZendUUVZ3RlNmMUpUK2xabTVlMloxalErRCtiR25JZHBVZkxWTE0xVVBwSVZrNHBkb0tScXl1Zi9YNnd5MkFIWitOUFlycTJPM3k0dXd5N0pFTVFZbmtycU8vclhOWUV0MVlDV3dGSXhtTFE2YTl3b3BVYWo0S0Z5ZUJrQ2pnWlJ1WGVMb0RhbHFuRXpwYjNhVmpuL0lYaWNzcGY4MUxFUHJMMlZKb3owRnhsYlRyMGFrcmJKc1gzbE5tSUhQWnozVXgwdGhaTENpZlRtZ2xEOEErM3NUWm8yVy9UUE5ickNNa01xcVc5MVg3Vk55U25rU0pFcno0ZDdWMWVHVU1WMitsL2JuelJ5eWhMTVJjcW51NmwyRlI0dGxPWGlDNXY3anNaVXdndGlSalJ3Wkw1RkJ0SGhyVDl0ZE93dko0QlNmNHBjaTJ3eTBMWFpHRGJVUExYWnVOb0MxSTJnSTBMM3Z6dWFEN1JBNzZKT1lVRWtPUXJUY20yOEsvNU1XOWplY2k3bldsYW82N3dYYVBkU01EdUxLNUV1aUNaYmQ2UHF3Y3pFbTZneEphM1FzQ1ZmNUkwK0N2UkRqYkJqZ3RMbUJBM0c2Vmk0ek1FaU1KNzlJM2RiTno5VFlTSzJNQTdLczFaRncvMVV2ZE4zd2RwUTdwOUthMGw0VDJWMzFTUmllRHpXZ0pVN1UrOVUxODJvdVgweTVjRkZKY2pRSWp1UkNpbkVKSGh4SHdYTWdZR08wT1JnNHo2cEM2YllIMzRFWGZYQXh0eWVRVXlFZXJHQnB6VEVjcEthNGlOKzFYMmdWbG51RXV5ZXhCbGc1cUFwNlpybEJsQ0MxUU5nVUxxMjdKRVoyUTdLMHVEQnlSNElTMlhXOGlhZEdQdnBCS3ExeDd5dkRGR0doanh1WHd5MEZoSlFUR0Iwd3VtQUlaTUVsdXY1UytOSlA1V0JCZkFhakQwWG5kTSszQVF1RVJzR1NCYU1MUWU2RFFhN2ErZE00TTQ1NzFZTlp0TTRHTnhKSktsQjlwRUpQRUZLZmlqSllENG5xa0RPc2pLKzVXakExelB4R0tFV2FmbWUvTEZ4TUxQcCtpdUZ0STZhUXllVDl0TWJna3ZBQlAzMnNtR1BpWWxhaFYvQWtKaVdBSUVaTHlZT3IvWjg1WWtNV2hRQ1JaR0U3a0d6TGMxQWVObkd1V2tiVld3NHZKMUFJYXVKUHoydG5aSC94bVdKZkwwelVWdTJ4Zi9YL2xQdkpIamE1TFZ0ajFUbHZaZ2pVYnA3bWhDTDFOTFJEZE1iM0gwdE1XdU9qa3JZMlcrcUhiR0lPTmtTM2hkbGNrekIrSEgzUHl2aXZWTTVmYWh5VnFDaUpSLzZYcTQ4ekdPeHhLc0RkanlrWmpDSUNiZGczd1JxYWFINVBmSWhEbThzQ1h5aHRGNURCZVBWdWcwRDdETllqSWRNSFJhREE1LytUMjczeW5xUjU5SnR5U29OeDNwNnVVbFhoNFBuN2dtYktRS1FHZmY0ODdJVWpteHBCa3JIdkE1Si9MZUF0OUNrdTZ3T0lMa1RnK2ZVUENYTlZ4MHFBSnpkTEYzNG5uK2FnbElQcDhOVDBmSlhYaHYzMGhHM1A5UjFKRSsrbFVScjQ2VnUyOXRQZzBTZHA5WU5iV2o3a3VNaXpmK001VHd3akYzcGF4T2RLYnV3R1VkSjc0S2svQVpNQ215RUtOZzZRbDVDSGtXb290NjJES3pTMWx1RFNyNHVpNFFzaklRRXVLZVdXd004eTZkTDRaQWUxeG9BL240L1RGTXVXQS9BSG8wMmc5aVROU3hMK0hNK204RHl5dkxTTlpXYy9zSW4vdldTQUhVOXFMVys4QmV5UzJtTEVML2RoNGF1eUE3QmN0UHNVRnltR2IzZHhOU3VBNVhQVk9XOW1DTlJ1bnVhRUl2VTB0RU4weHZjZlMweGE0Nk9TdGpaYjZvZHNZblZDVG9QdDFyeTEwWkZuS1dXcFlPenBReSt3Nzg4N0RrSnl2djJ3bk9KOFlScGZmbXhQeVBSWWNkbElwMmppLzZNc2Rpekc1Smd0MmdiQUlRaUlya3JQTGs4Q1JIeXZrVEVFLzV2ZmlmU2daL1hVQ09KV245dUQ4S3FrR3UvYUpTTHppU2Y5Mmx6Z21LRWJTdnN5b0hTbkVNK2VpVUlJbzU4WFVLcVBDcWhob1p1dUNNVVRzWGFQTUJrY3dQUXRmTmNKdFZ5L0tld2t1dURCRnBJWEVyT0VMbWlrSmdtcFpDQjRFUmpBeW5NVWJZb1phQVNWdTVDbnNuMDVMZVFDVFhKRmJWNzJCUWxqd1VLOTZHVjNhUWlaVGNvR05iMDRNWjdkNkhnM1l6dlZ0VmR1cUlwUldNbHhXZnIreEJ4UEJyQlJIZFQ5NmtUd2NBaC9oY0VxOVB2WnVhV1ZyMGZJbExwNEkxQlZOdlVTNmVyNEFPc0tzTGpGTXpGUFBBbzB4V1piSDJLaHF0empBa1JpSjFaZ0dOUS9Oanl2YnZJNk1kRHRBYzFhMUhIUWNIbWNMc0IrVHlFMm5wMXVmUUhVL0tLNlIyZEFCS0xYamN0RFh4Sm9wRm13ZVBlNDFIVEk2TWhKbEFWZCtGMVd1R29JSE9TUWh1YjNlNi90Ym0xc2kxZ3hRT08rUW1lUDJJWUREUXhLL081U29kdEVMZnhmN2d1YktjSHZhU2xmaWQ4aS9ReHcvaFBGeTJYRUM0WEJ1U3hXYmdDY0k3ZGNTckVMOVBIRGFoZGYxSnFRNU5vam5FbU9YRVpBaXVJMFQ1MU1KaFdvZmswN3hQS2hpMnZLSXJLbGV1WURDTG01U2RVZVV3TWk3Mng4RFdOTGt2bUxtRVV0TTBXQW9MbXNiMDBtYUNiMndMKzhHNmZDamJMUW44NmF1N3hZaEtaaitIcTRnL2FQRkhBcXFPaS85ZmI4aGJaRHhnZ0hsR3RHUmlCOGNyazlpNmNPVHczeTV4NjY4d2haajc1L001M3NLWVgyelJnT1NUTnFzcDdHQlNCYy9KVUlaZW50eFBGUVZFUHRPanF2QWZYbkVLZ3Q2a2lyeWNCcEZ2aEYrVGg1V3Z2cjNvZGFqVzM3eHZucndveldJd25HcC9udDlra1ErUmt3R2hUT205Q3ByeDVYU3Fzemp4Z1Vidkg5eDlpMDJCMEhkcXFkeGxiY25lOU1EeHVXYS93RHAxczNxUlJzTUdEemIybndTM2J4aVJ4TStidnEzaVUwWlBBT1VFd2pITHllaFVrYWVpbWVnUy9pVDA2QWZtZ093R0xaMTA1TEJJRmN5M2ltcGFhT0lwd3dTeVVwVkZpQnF4N2V3bW9nRjM0bU9na0VWYVgwOFRpUE03UGU0TXMwbzdjVWR1M2xZRUY4QnFNUFJlZDB6N2NCQzRSR3h1ZGdHK1Npem8yVHoyUy9OMmRLdDg0ZWpVRDlnalZqZHlLa0RnbVFKeVBGN2prSGpIK005V3NHS2Z1RXozVjY2NGdkS3ROME9tbXNrUmw3cHJQQ05LRkRMZERNUkFpYnJLUDN6aVdoSi85dkxhbnVaRXpicko4MElJZVV5Y1llNzg2YXU3eFloS1pqK0hxNGcvYVBGSHBxZitxRlRFYklGWWNEZS9tSjVIbWtVbDIyN2lITDBZNHdJSlJNc0xEQ3N3aFpqNzUvTTUzc0tZWDJ6UmdPU1REYUtFSTN4Q29ocTFmbzBFSXpMWWNsMkRSWWhpWVpXeWpDTXV6ZENrWDBWVXJaMUo1dWo1TCtQZFl1YUgrT01zMHp2NURQM25sbS9aN1o5ci9OK3dHeURuRGdlOGxPOVR1T1d3aU1sd1VYU1BnOFJmcEdzSXNPSGZYZ1lhMFNXZW5iODhyeENIbmR6bjdIdjRoMm1SVllReFhPS1o4dThWbnFBRzNic0gwUk8wN09wUncwY21Zbmczc3hCOFNIRGZVaS9oK050aEFHL0dOV2J0bGdnczNxUTZ5TEVROWtpY3NhRkRpV0pCZ1Qwd0gveHk1T3hkbEtROG9VZzVSdUkvek5Ud09lNUF1bWNSNkJPT1BiY3hVVGlQY255aFdUQ0FXR3Zyb3VGTXVMdk4raFpydTB6dkxHRG9RbFhveUY3d1RPRVlGaERZQ0F2a0NuWjVxbm9Sb2tFckF6UUxMUldhVHNqTVhhR3U0cm9NNktLSnNzWjF4cjlvTG5SZG1QWU1tY1pSNUFob2ExNkIzaTlBSHNHZ3NMYWFVK1RXSmFnTEJSR1d3SUdzVE1IOG9hYVdXR01sdWV5QktVbHhHTEh2N0FrcDhUelVCd3R6VnY1Njlmb2txNUxUYk4yQjNUMlYrYUloellSS3ErbGR6NFNtQW5UU2FYUlJGdk9tM085VEVTeldWVVpXOXF3a3VPZTVsUE1CV3FkekFyTExlVmUrbUd2TjhzWmUrYXB6c3Z4QmdEZkl1TEFBL0dBK2dNaER0aHJIUmdDRUw0YjBER0RUNyt6ZjNBRWs5SjZ4OFRVN3IxcTVGUlA4SHRsZXA1TlFsVGNQazFSRWVvbXBlc1VOSVpFdmRPSFNETnBRQ1ZWWnhxemFyU1JYcUdqWGMvVFY1QzlFRkxVNGQ5WnhqMWR1YnlJNTBZdmlSaGJWK1hSM1VHdHhwd08vMVNKZHV3TnJ2YkZjUmwxZlEzSURkbjBDMkdyaS9KL2RJK1BSa3Zrazh3SmV5M3haOFBvYjJVcmFkOFlCVlRmUG1mZEk4U28wN1VSamtNRkR1eFFVbC9NNUJPUkx5LzR4d1ZPRXMwcUJvRjRVaVBjNVJ1aW0zTE5ZWUNWNUNUTERPRzJTMExvU1lPaUxhYUZrOXdUZUI5MUU0MEdKRkNDZ0d3ZFVTT1gxU1FMUk1zNXFyN2pxS1QrbFJXdzRtWEhMZGFGbTR4VlBMQ0Nnek5NZUx0RFNlekRYcnBXendkOTNiR3c3dnpaOW9YM0hNVVBpZ0h2TDF6TERGQXVrdVhpZFZDSHRseXlxSWRZSDIzT2U3NldERjVBQ2JHWERrQk1tcHlFUkdqalp5RmNKUS9RNmFKYnYwTHBFRHB2TUIvcFZiZ2JLVjlYS3M4YkNDUVo2dGI3THRqTktPbE04RllkdkxoMUxscWZUZ0p3ZzJSY2VFOEtKNjJ4dVlXVVlKREFUQjlvbFRmN29UOVU0b01BcVdzTmpQNVl1Qm5UMDdzZXFOR2kvbThjUXBRNjg1cVdaU1djVklyQjFublpWOG0ybmJNOXRZUE4wd0RzbDZZZkFuV2RhWWg2RHJPeGdhbHFzUjhodDcxMU4vRERzTXlRNUZYRC9ZSHhGWlA0WWovdFNTMTRyWHJBTkV4YjRmWlY3TmErZytMQ1IySWV2dThkNUQwTGEvdXAveG42OUFYU0svR0xwZkMzTDlpUlVIRW5NNFpCeExUMVZWZDZ6U2F5WlRZZS9hMW9XRHR3dzczeW1xWkhlUEd6WThic2d6Y2FRcUkzSVBSNnpnM2pGOFNkbWNMZ1VodHRZNTVsQU5rT2FFbGhGRXV3NVNaWUFyZGJoT1ZFM0JqVHJIN2J6VCtuY29uV09LR2xIVUhzYWdIdzRKTHVCYzh2S3VUKyszNmJjN1hVQTdVckRrb0ZIdjNEYjJYbmRMRnk4N3ZFSTk2Tnh3eEY0aDBNQkJTV1FXNmxMVjFRa3oyTnFRbUJKRm54SXBlSTh2SDZKR1U1VHcyMStaUWtuZFNkMDVCMDE3NnZTMUtsSFQ3cWtXUWxBRDNGa0pEM1FLbnR3UU1UaDBPWUdLWWVCa2VXSW1YTmp6elVMMjJhL1M3OVVmUHJOZnJpR3R5RkxOT1JyaHYrdjM1Q1M4Yi9Scm92SWNaeUY1cFgwQjVpNEZDUlArV3hLMDI1SCtCZHhNSlFMUzNHcUpTN2RmMnNWRklsWk5sVlhqVndVWGp3RVZaaWdhZkFJcmlxamsya2Mza2lHQjZXNlJkM1RhZTY0ZWd6bDZqcXpHbmYzTmlabWRXejRNRlEyK1JZT25CejhoalY3ZDhMcjE3RHhDZ0ZYSHMvOTBCb0oxZDEvcUw0eWZadEIrMVczcjgxaHdQQllEZ215NzBTWmxySFh1VHNweERoL1VndDlDUmpBSjVuSkF4NmxDTTdwU2p3UGxJQlo0RkZpWkJvbEpoRHgvMnFVMEh0ZXFEUjJRU0FheHprbHpBT1hLVnFiREVhVG5Ya3g0VXh3bWxlbUNWMFJjeEUvVmJTTGJLTzhtOW9wY0doMGp5RU5wMUc3TXNkVzNRUkFVclpDZTJ4cmQ2MjR6VGwyRW5vNHFubkpxbXZsRDZqYXNnS0pyZjYrOUNlUllVK1NDUldTZ0xSNitaVmRoekRuZ3J5RzRDQlQvMVlFRjhCcU1QUmVkMHo3Y0JDNFJHeGsrVDNDVTd1QkZMWTFIL252dWNqRUM1REMvanBQajBScldrVWNzRkJqaS9ITnZWRTdyT1pRTmk2T2FKWkVZbGJ0Q0h5VmZhaUV3Z3NZSm1wQm0velBWdml0dDM2MFlHWjZWUUgvc2JmdGprbzlDNThOOThtSVN2VWlubFR2RFBjbUQ4c201ZEFlUUVhYXh4YXZSNzdNUmNldDM0cnNBdEZpZWk3RHE3bXl2ZzBrUjJ1Z29mQUFZUjR1M05LL3pRSW5rV3A3bUZxNVpnN2Nna000YXY4bmd2ZU9uSS93eEliSmJDMVBncDNIaHJTQTZ6VElweHc1VmIyeWVQSzJwQjFEbE1YMEFYZHJYV09uYk1yamgyZDBLYlE5QUYwUHFwNmM1T0VCM2R0ejJwVzVKK25uQUNmQUsyQUFWNWtHdU1YOHJYRUFLYjhqMm15dGRoRmQzeWFWS2JROUFGMFBxcDZjNU9FQjNkdHoyalYwdmdRNFRvRWlwMHVsLzdJeW80bVBwTEphK1hqSHNoUXlKcnJsQ3FYTFAvcTkyQWluT1Y3amRuU1RYalMwU0YvMzZaRXdrckpSeXhSaEZ3TmdQRWdnaWdXMVlYZlNRNkxLZUxGRDgrTC96cFF5K3c3ODg3RGtKeXZ2MnduT0owRDQ3QnRsb25KMEZhYWZUcjMwbzdqbDNtSmxhRTdZRUp3czhYQXJuVnNaN1cxOW9PV1hjdHRGSjFDeUhzQllVd0h0V1hZS2c0cGVhTkJ2MmxTNFYzbFBLRFBnWStxd1dQbU9IM1NFV05DcFZFU1Z4TDliZmovM3hnTG9qUG85aTlQOTJzS0E5U0srL05Ic3FmMTNDT3VDUk9RdDU3bUZyT2p5UEg0OXFwOTcwbGVSVlhHR3VuMFF6Z2N0YnNwTUtzSzhpQm5xN2U3N3Z1NGx3VC9lc2RZcGZjN0tJTnBwRFRuUTRiOVhZU1oxMFE5QkRPS2FCaGtTWGpWZlo2QUFsa1F4MjhBUFRSZzUxQ21RU0FZT0ZkbnRsUGs0T2NCaU1DRFczOXRUeE9ZUGVKYk95UUgvOHRoZUUvbGhpV21ON0Ntak5rVHVsODFOZy9nTlRGYktGVGNlaE45OGV1NmErSE4xUUlMNVZGTmpWZStGSkJ0WThJTEtIcmVrSUkzRkovVEwxQ3ZkOG5FdzhWbmorS2tXamdzR0tjdkhES2JyaDRFNXVoM1d3MGhqY1dDblNORDA5UzNPbVREeGFWRTBobFh2aFNRYldQQ0N5aDYzcENDTnhTYy9Cb3loZEUrcElkWis0M3BNWm9uRDlpV2hQSElzTWRValhlS0NQc1ptVWxQKzVYcmxjQkVMZWp4MHJNTE1sN25DZzNqU2FWa2NEUTFCUFFoVzlWTEI2czFTZW40R3p3Q2N5MEZhSWgvVmg0Z21xdzB5elR2RGN2cWRESGpFZEN2djJTVHV0cWdLbmNIMFpwSWtDOHdxMUVETyt0c25qQkNjdlJMUXU4TStvMHJSaHRUYVhHVzdQa0grQmM2S0x1WW5RRUFSYXdQODJzd3Y4NkRJN2xTSkc0OWRkY1ZxNTluNURHd3QybDFmYUE2YnpBZjZWVzRHeWxmVnlyUEd3Z21kNkNxTHpUOGQwZ1h5MTVUOThHVlZaNWdxTW10VTB0NzhPSjVrUGVjOHAxSjM2amRNV2RyWGJrMDNNN21TSWFqcEhORzYzWW1VRmxETmVrZHJZZWlpdnYwT2c1R0ZIU1pzMzArMGpmVVlkYVhtUDhGTFVQNXlVLzk3aGxjeWJzdE11TzZ1TGxHbUY3bnRYbnBscWR2Z1ZyQS9hT3hyV2JRb2VQeEdaK3h6RlhLWnBoTGI5a0hvMCs0MTZsK0hxa3FBWlhDNWtsNk1oYWViTEhOYzJzcFN0L1dHK3dkeVM4Y0RKUkpReWFCK2tJd0pQOHhxU2s5TVhlTFB0UHBacktJUlVuSTBmSWRnRXF1cFU3dkEyQ2lJa24vM1dUQ28vckVHYUVnMThpVUFUejgxa3A2OUN3VFgwVVc2NWYvT3RMdXUyVEUyMkdqQjVUWUJ1d0F3M0NTeDhJRGcyU3gxUTRReGw4b1pXOHh5bURJWi81UFNZWjRpbVZVeDZOdWJoL1hvSThrdFhXMk50WVBscXNzc1RMZ1VFa2dCazd6OWt6WHhON3Z2eExmSHJEZSs2TUl6REx6OG9lNnEyZ0M3UDRodGFXT1d0RHdoOU5BWGowdE5KMmFwdEVIamhoN2hyeUVBM0l1VHppUVFTcm9PK21FRk5RWDFiTHc3Z1FuWVFrTURIMm0zYi8xMVBUbEpqbE94QXR3TC9JREVGRStMUGdsWHBhL1dpTkNrdjErMGZZZjBvVE9XTjEzVVBJVG81K3VPczFUQTh1MmQ3Z21xOWxucksvNUkyRExVYTBHcU01SmhKS3JEdzBzbU1wd2dGa1RTeTdNU1dLaWFuRU9WV2E4M0crU0Q4YS83ajVtQkRHRndERlBxNGVSWDQ4eTROdWJhVVBqc0NyWUt5Z2FidkR0VHhIamZuNWlGTEVrc1gzbGRpWDE3OWZDdFo2TE9QaFhNc0RaTGNhMlV5UGs3YXhDK1BRRHBaN2diT2dyVVdjYmNOZS9pWlF1dTR2aE0wd1RDUjFUcVRZYjRPVEVmUW9Fb2dOVmdMWlk2RGY2dmZBeFJqM1JHdExYTDN0ZFRmcFlVR1A1UEc5cXFDZHMxZW9CZjRsTFArUEtYOWZKZUVFOEFlWE9SVHFjVHk4TlBzRmQ0VFpNckJ0bUVhcmI5b0RTRjFxYmQ2V1EvK2ZWTUhCWEFPcnpOQ2ZkRTJVbmxvbG5wWlFvWW1tMGdZbjdPUkZjNi9vK2pZNUZwN01sd0FrQ24ydzFRbkFvYXA4Q2NzQzlmdEgySDlLRXpsamRkMUR5RTZPZnJhODR1dFlYNFo3c0NhQW5KY2ZPSFI0ZmtjcjJwcjFXdkpXY3RsRWdWNjR1Z0E3UUlUQklscUxxc2ZSNnNTc01xL1pMbGNZRVR1SlliOGZ2K1ZlVGx0N2E3UDV3N05mRnVveDNiNTdaZUsrUXdqVkFKNGQ4R0MvSDFVWGpPaWVtblBlbWdCWnVaSHlyYTdRb1dyU0pVWFBJamlPTUgwY1hRY3RHRTBFUERiL2pTd0h3eVV2UXVkQWEzbmNrazVIRzRoZXZSV1d6TDVHeXVKUkFsTnoxcTg4TzJnV01sKzVleno5SC9lUDUyNiticVlpdE5IMFFsMnA4NitmOUdPbCswMW5ZaVFRbC8xQzE5amZta0dlL0FkOHgxb3lpQnVNZmdNNWk0MXFzQWtlbE56bVRybTJFcGp0R0tab0tFUFNtSFIwdFVoeUovTVFkTzNPN2RFeXV6NHhDWHVBZjRHMVlUMGdnamFOZUxtWEZObXAyME5mZUM2Wld3WWZ2OHRDRjB6d2ovR09oVGJSTmtMTHQ2QlpVRTE5MWNGSHhnbEpTSTdQbHluaDJFRWEvcWlBbks0MDRydVpraFFKRDlTMzF6QkdrcmpSN1hkRlJHaE9MZ21xZ0V0TmxnOWVUYUVzcFh2OEg5NUcwa2cxWWppc3JEdHpWNjdSNk96S0hIYUFHY1V0V1owMXZBbnJCdnUxbUdRc1JqdjNtekd4TkdaYmFkenNsemx1T0ZnTkpNeGwyeTE1Y1VqOUhLWjYzQjJHVVJtMmtoRWVLK1NnNVhNaDhncU85bkgrZ0Z2Sm5FTWJhSzVvUjA3WHJqY2N2bXhKSCtUV0NpY2o0VlVWRnNJeHpCZHJrUS9HSWcrbU1LekViRno1R2wrTmR4eFJzRnJpZlY5dStiTytzdkFmdXIwdFljdUJXNEVHV3hGbTBlQ05RWitLTjJLRW5jL0l5MnpBc1p0NWtKQzZKREJyRTNYRGNlbUNUTXpEZVQ3OGJucjRvVlVpbHFnT0F5M21LUk5mTStubDY1ZGpwUEZmSGFXQkxhZms1WDFUWDF1STMvb2tzS0lLR1g5VjVwdGZSTTEyYUF5VkwyQ3A3eEdVemZyeVpPQUxHajVpUHdkRnhNUmV2QWN6OXVOWXc5V1pCWFFFYVRMUWdkVGdRdFcyQnM4S3kzeWdoeTQxeEVROVlER2Z6eEY0bUQ2RmNUa2I4Rm9sL3FDd2hqMDRZczZEVFkyWFNuMHRycE10KzlYWnBCcVRlSU5uOERIdElWcXdOVEI1VVMwMXZJTFlOU3VSTjJndk1FRi96MzlXTTIzMi9UWHNGQng4TFVCaWdFZm05ZmNhSStSMlQ4d1VNVGpRSVIxSy9hTWRla1publdmcElGNU9FdWwxRTBCSmxRci9TVDdxZllmTXFyenJFUXpPZlVRODF6REV6QnBkYmlzcGo0c1VxbUZLN0w0REVqNXBUZ29MYUthVUg2ci9DQTROa3NkVU9FTVpmS0dWdk1jcGd5R2YrVDBtR2VJcGxWTWVqYm00ZjFwOWNTSFJPRkpKcHlEVFp2NFlkV2o5b3VPV0J2ZnJTZzVYMGNsRDNMVjNGNkRPbDNUQ1ZhWjlQZk43WW5KUVlndndydFBEemwrdndKVlNOQ0ZuRkg0cWdjR1RYT0dSMDVCcTFpTFI2b3ptWjREalZPdXYrVm9OMmxueVF2RU9hRjRhVjY2REU1eE9aaHRHNGhqeTFqa29rMmhvcFpKaGxReXpaaXMwL2Y3VEtoMnpwNVhEWmFnQkNwTVJFUzZLazhuMFJKSlAzWHRzWExuM0NEMXowUnhmNTlIZWtOT3VpNGhyQk9OZStWNWhGNkFTQnNHOGRkMHg4WUh4RDhuODl1S09GeUJrNTd6Z3hHTFFRR1Zyb2hzaEVmamNHVmVobkJFRE1zblM3b2F4bExxV0xuK0VzZVdxK1hUZmI1RWFCN1daSHhvQ29tNVhrODRzWTArc2NzOGFKUlR3dHU0bzQ3NHBqVzhNeTZmaTFjckViN2RBNFk1UndpaUJ3aXpLUUdycnFncm5iV2R0Y0JKNllldzI5V0ZaRGt6UWp3NXZQYnpqUkxxejZvclNNUkhRbjdJQ281VlRXV3ZwaW5xUjUvSDVxQm9JV2ZhbWxET3c3NUsvS1U1WGtCQUFIRG9TUHRZUGFZcFZuZVY4ZkxYUGtvblR5QVpXdVBjc3VIMWRuT3RxNi8wS3BrUUtwM3BFNXhydXFFY0RiMlZZVXdSdURCV1RVYUttU3ZmV05BSTZwY3lJZVNFZWR0STJyeUVMVVhOZ2c2ckV6L3o1cVp3OUhteTZCbUJIdmpLSDNkRCszeWtMMEwvdHFwWm1ocWk1RXFXcC92ZXVSUkZKYkpLTHNpNHdhczJJQnpFZTA5RVZpb2xzdFNGZ1ZXMyt6L09nTVZPTXcvT1JIMVd0WmIzdUIwNG1BTktjbW5xODJiZDZ2ZlFRNlZ5UExndnJ6eTdoS3RCTkdSa0xDZXRKQVc3WThnRlRCR25YRlpQaFMyUWJ2dGFYNk4zNXBWOUN4VjI3SUg0Wjk4RllWd3ZuLzF4ZVFLMW4zdEg3alp6WUk4R3NSZ1dtb3hMREt4VzBvblAxZlcwRGl1S0gzZU5wTklETWc4b3JnQmE1UFVyaTlKclNBalhsN2NSMWZNaW1FNVFNYjlLcjBoWGpWNmxPNndiSmlycHRVTGJ2Zi9kZ1NJcm40VVVhYUE2Rnl0N0E0ODYxcFE5OFNyWm02cDJac292bXp6cXlYcDlTWlBLZFZVejNSTHBqL1B6RmZrblM2SHJacDFUNUwvbDB1SGpVZjdFZGQ0MWdnMSt1Wklmb1AwOHhLbW1zWmhoWHViZDVFRGpzcmZJREFKS0hXckxyOTkwVzNuSkhFVGV0WVFjaFZHa0FLZDFxdTRRMER0bWRlbCsyNGFrTlNHZlcwdkVrUFhRaUJiVXlicno4Q0s1RDhnQ0U3dGZzRDZUZnBLaXEyWmhqMlE0bExCMWZrSFNQY0lQOUprQXBYdHZPK3dFelZOWlpNS2U1N2hGb0tUT2NKZnZOdDZoSmxTbHlvRVFSZHVJVHJwV0tTU3Q1amU2NEVCTmd0RlNiaTBaaGNuSXVTRUZaZGpLOGU5K2hrNzNDbCtYazNGNVJoZGVzTUIxYm9zaWJaTHY0amZ0aUxIOUpKaDduRjZ1by80aXRTTk1lT1ZRa3llQnM0UVloV2tNbDJrYUQ4RFFQTTVGakltWU56bG9iV2Rsa29oWjYrb2FQV2I2cWZmSzF0MzB2bmlqUHJQQ1A4WTZGTnRFMlFzdTNvRmxRVFgzVndVZkdDVWxJanMrWEtlSFlRUnIrcUlDY3JqVGl1NW1TRkFrUDFMZlhNRWFTdU5IdGQwVkVhRTR1Q2FxQVMwMldEMTVOb1N5bGUvd2Yza2JTU0RWaU9LeXNPM05YcnRIbzdNb2Nkb0FaemdYclk4Q2hjdXY1TkpkamZNd2piMnN3RXgzME1rb25XSVd4TFNFVVcxK2VnRnZKbkVNYmFLNW9SMDdYcmpjY3ZqTE5KSjB6cUh3bVBMYzVqdjBwbU56dnVvZzF1d1dhZUF6eHBZWDFnb1N3NXdsMml4VkVpaG1JcUgvVHZwb2pYQklUSkxXdWhOcjBhOGEzYnV4OW85dGFQam93RVQrTHpYK3ViWkZMNGQ5NzF6cFFCV01WWHpmUXlJcWMxczY0N1ZxaC9wYWpod1gybHA1STZKOW1KcjhYYlczTTV4VzQ1WGlqVlpmZjNQMUhWcGppWjR4R3FyV3MyVEx4MWdKaXNUTWJsZmQ3WFdjOVVWeEE3eUQwcFEyODQ0aTJwaUN2MXlMRWNzUmhmVWhLSzlWbTMxdnZ5aHErS1oyaDZ2UURYcjRReFpvdHVML09wZXVLM2Z5R0dhNGhyemZXTmJDRHIxNFZaOEIxMDBRSTlCY3hCU3pyWVJqOTFqN21vZnRtcnA4L3JpMVFvWW54aWRPRXR5OHBIbzRkNUFPRGhxTkg1eE04VzNmZHdmaWxocXdqZ1E2aUJGVFdvYmptb0V0SGJCakVOeXFOaVNMYnBJM2Z3TFQ2Wk5OcnhrOHNqejFDU1lPcCtaRUpwQWZZRi9uNTFZY2xiTWM4WEZUeDZIMVJFcFpSbWg4VVFoV3dTRTlINjFCU1dveXpvZEY3YW9SNnlWYkRWYmFWdmJXNndOTzhRTVlzNW1CTmdqQVg0cDBLTWQxMFJZcUZwRGd1clVqZk1kVmlLYjNDcTZ5QjBoZ2lnL2dPSjFZaXZkMlBDTEdTMFVGUmVNbDJvUGRPVVhiYmtiOTVXUUNjeGJTaUMwRjZNZVh4Um1kUncwWXZnUzBxWVh1QzBxL0tJdEVNUHFNOUVPQ1Z2QW00WHhkMVNuK2VJWjRKQitTOFhJL1hFMzJkM3hvZnl5c3ZVNGx4Tnh2YTBadHROTnNBTitkTEpMU21FOVBPVE41bzArSFpyVktFdmY5dm0rbTZXK0tWQ0c5WjZUbW4zc2VOeVJvUHp0U0tYMUdxdjd3cVZTTUhxSUxsZEs1TmkrMlFVbXg3VG9MQ2ZqRmYySHFGRVY2T2ZvSWI0bm9SRUZlNm9MKzduUEo4K2ZpNFAybEpxbFR3ci9KTmRXZlBWVkpicSsxd2U2SnhtZld3N25UQnhiMjAyMzBMMHJCdkdaUFZWV3NaeEZzSWEyc0xhbnRlcGNuYzNsejdrR0lqSlRCU0xVUXJENVlpZ1pvbXB4YUN5WmVvRFExOXVka0h5cWFGYWNsOHhaZWZ6UWNzaXFuTHNUZUVLdm9hc3F5OG40S2l4Y3lsVzVTTkVnNDJSTGVGMlZ5VE1INGNmYy9LK0s0L3RZMDlWdHJ1STRCUUxnRjRaaGlyb3oyNUVwM3AyZTRlU0ZSWVF2dGZ5MDIrV3BCZFNLN1VkZ1J5Mjl4UExtV0FHb2hLazhUYWFxVXdHd2NaNjlvYW1YSlRyekxCeUJzZHJIZUxMWldSRi9KSXJlbzN6aVdVYjE3RjllY0lFU3cvRFZDSnIyV0pTNzVXNTJxWEtVVGl1VnIrdVVWRlluNmw2THphY1Uvby8wWVdUS0k5N2p3aGlPdEw3VFNJUkcvTHprZzgrd1lmaURrVGtwVVBiWHhjYTBnaWFCcjZ2NDltM0dHdnI3dmkrTXppOXBoU203MXJQVG13Wkd6cFNSeDZXTjJIYzQ3b0FHZEV3STlZd1hzVVBvV2tMRE1MRGtHeUgwalpxSVFoaUEwbUl5NE5OYmczTlFnZ1MvVnVmUDlkdXM1U3JxaXFxdzA4MWZFSG90UTNvcE5ycEVlVDFRNFQ1ZTgxZ1RCam9UWE1PazcveEUzeDROSHU0bUF0RkcxTlJKU1BGSE9OdStDdmx6alR4ZXZrYTZnZSsveDBPL0p3bGt2VWgrT3UvbFdPRE9neURjOG1adDZkMXBjWkVqOGg3Wjl4ZUtCVW5OUEVEWkZ6K1VlRGZFS1pDWmRaYSsvV25RMDVVSHpVZzdmcWVPVkYwYWh6dXl2SnhHTm5obldIT0taK29pNkk5bnBEcC9qNU54NUtZb29CdUd1dTlMRDN0ZXRaSHdmSzc4cFZrci9OYlJrMXBrNXVkd3MxSXkvUzI3UEZYUXdoS2pkZmhnY2pQUEgrSGVRRGc0YWpSK2NUUEZ0MzNjSDRwaU4vN2YweTdPN3pPMFZGUTlIVGJwaXZTWklCYXI3MldpLy80dm5mVG5aZE5PcHRzQldRMDhmRW50RkhXQllBaTg3L1RDUzR6VzUrakpJakhPSlVDQU1JaURPaUtSbjFWc21GclNWM3RFT09ueit1TFZDaGlmR0owNFMzTHlrZWpoM2tBNE9HbzBmbkV6eGJkOTNCK0t2Mms3NGlhU3Q4bE5DYVArRUd5cUliVGI1YWtGMUlydFIyQkhMYjNFOHVhaEp2RVhic0cyWjdqRjV5ZTJoR3QvQnlvM2Z6aUQreU5ncW80andiUjJscjFDdk54RXc2d1lFRTFVOE1FcTF2NEhpV05vTWxQSG1rWVZEdDJlcTd5RWNlcnJtNkpodFZJbVJrUk9nRGVBKy91NXlFbXdIMlB6SjhjUUZuOFFTekF6RUNyY1ZQOGdDZy9KcDFvaVJZZk1paUpRcE9kZnBYS0tWMUQvRXFCR2F2UkxkRmo5cW1zMENlWXZjNVFIdnl4bnJ3czVFdysvdHZwUm5VaXQyYVNGazdFMXNRU3lXSkZCTWxlL2ZPLy9GN1Jtd3RYcGx4V0JWSHFmd1pDWWxUeTJkK3FjQUtHdFFNY2pKZWRDcmJZd1haYmxNRUh2SUxZN3c0Y1BBQldHLzRHY1dJZ3UyeU8zdHY3eGpWWG80NjlOODVzTHJ3UXYzTFdJbkdTL0RuYVhFcUcvLzFOcDd0YzA1Rk04VWVlUWRWUTlJdWEzZUwvZURtdnp0WUpSZ3R2N0VpUWFFaVF0RXMxNGhXaVU3cnhrVlV6dmxaTXdwOXJtYmRIWE85WWlKeWtsOEdZT1ROK1hEMEJJSmhjc2wydVorUUlPWndxUnRVRWpDZ2M2eUVBRVJ1VHYxMWordHF0c0s0cVNRbVlobThYZUxqekI0bjIzcTVGODZhMDc0MjVkbmt4Q1RvMGtUK0dmeUxpbHVQSE9OL2lpZUJUQWpGRDJENHNwYWxkUURYYzNNU29nZlBLaWxmeURQUjBNRE9PUnhjaVIvaU41NDlQVXpVZDFSSTc1ZGZZTzQ2eEhydXNnVDBQQk1DQWVpUmk3YUp1L2NIRXJQV3VYZ25ndkFhVjA5OFEzTUhlRjdZRGRuRjcvdHBOZ29wRXY1cmF5ZlRxVzVNb1ZWcFB4WDVrNlc5RHhONXNLUEZiY2xyWHdXTnRyeHlJWnBoRERKRGczNGhDQk94czI4ZWxpeDRLWER3elB0M2xjYWVNYWJMNFZ4a2JCRnJuQ1hCang2TXVHbHRHZWZ3YmhwdWV6VDZBM1pNUVFkcjB6dUgraFIyd0xrbUgzOHBjc1NsVUZtcFgzSkMwTExoeDJiWXFWNHExUTExc1VaekV0OGdLRnBBMHVUMXJpWG12alNnRkZ5VEswZjl6S24yNU9OWTBWVU1YS2s1ZXAvSlc1YTlTT2ducGxhNFdNd0s4ZjNyem9OdDFZcTNxTjhJUjdHdWhJVWdKQkd1RGllSFBBSm9GVEtkNzhFdHQvM3NOa0s3MXg4V0RVL1dMMG4yM0dCcEtabFQzUUliRUZ6SDNEVU92TnRtbUR5cURiMHV6UkYvT3BrYTJReDdmTnBleU1OUlhMTjlaY21iOUxXNEZyczZXWVlnR0F4RndiSEw0MnlFRDgydFNIQWVmTzdwbTRVMEE1T08wVWZNM3FSSWg3TjFLbkdVVTN3UWJOc05FbCtWV1RmVEZCZGpLUWpjT1hjMTVRSk9yVENCWmhxK0JEZDlDY0g4ZVl6Y2VzSjBQN2hUR2tlUk44WWg5TXRVVzJ6LzQ0K0ZTRFFOSVRFeDhSeU0xajhuRXpZN3d2SmpWd2FGeHBXM2YzalQyUE1uK3lhNjVqelZtMVQrSUhTVFhKV3phMmJoUjJDL2NVaXZLZDhscjRpdXpQdmJBOVJjMVpyeFBldnN4V2REVXhDbFYyZmZVWVA4elFIMitjdGZBSDRjLzJ2WlIzbHhQdlhtYndDV0hmbVFOY0xMUW1zOXhWRkpRU1ZwM0FjdTBWZjZQazFyRzZsUmJEakRjaU5xKy83aTdield4ZFo4amZpVUg4ekpoa2Y5UHRkWmp2eHdTSlYzdnFEN0tBWkxoUnBzMHZRdHhuTi9SRVlwV2VFbjNBME1WQ3dkMlQyZG1xcHNTajVqWG95dnIvVVZlMGlaRERjbDk4VkEybWNKUGdVV1lpbzVVSmF6MXNaaUJ5ZEozV094NVVYbWcrb3pzakdpQ1ZEbnE1L3FSTmNaTXhGOXN4Wk9OUzVBY3duS1FzVEo4S0toaXlKMUdHRkd5U1JRR1RhVVdQdXZOQ0oxRlZUTXk3VlQvZ0xvTUx5UUpzWWNzOFQ1M0hnRE1FR2Z3TlFmWDA5c2NlNHBxKzM0N09sREw3RHZ6enNPUW5LKy9iQ2M0bnpSUXFLQnoxTHJ2R3E4YllTcUVJelNuRVl2YWZ6Z1JjY3V6aklISkY5bTEzSzErRE5nZnErVnNmcWNjM0pwTGRISXpoZVl5K3ZHYjJ3MEZGTXVJRnZ2Yk81SHhJZVJoL3BsZUJOKys5YWVxVkROUSswQ1QwZkFRNlVuS0pDbFdTdFQ4UExRZ3E3ZW82TEo0L3ByTUkzb05hMHMvRmNaVWYwOG5NWXZrbmVENFNoMkNoMmdIQlQrMDFybENNcHFyU1ZISEl1anJ5SFNxWG9PZlM5QlZEa2VUdmMzSFo4THdOdVNVRjU0NUlVL25LWVJYaTJDRU9qNXFDZjgxcXAvZ3RSdlBlUk9oNkxjdEJkUnRCYUtpTUFJWjJoWno5cGFBQTk2NXlSQ1JUNkZRS0FUU2JZWFQwaU9TUExhUm1meEJJeXl2TFNOWldjL3NJbi92V1NBSFU5Z2lFWTZRZXFiQkozMkluYW1IZmx5eGc2UUpOa21rSm9OWStJd2xWQ3RTTnl5dkxTTlpXYy9zSW4vdldTQUhVOWpYUUxjbzZjYTVvUjZROEpnWlVmR1NJNzFqUUxReFpLTG1PSmlmYnJDRCtUcWgyRnVMdmxkcytFVThvSGxia2JnaytHa1hyN1pPNm42eUJ0RDZiMHQxQzVkMWc2RjNUQkhDQkErMGVtb2FKK29zTTBubU5kSS9MbzBlQkRYTUF0aXVMYkVRNlZCYWdnaFBJd3A3a3I0Mno0aE13Z05qdUFTS3g3Z3hRcTR3blduVjEwckhvY05PQStKYldrZU9vSWt0THpVSmpCQ2wxaDRqcm90VSsrNXJ2ejhQN2dGZGtHeDVuQmlyY2wrMWROMXFSVDFBc2NXREdTY2dFMm51eWUwdnVsdFMybG9HQ0l3N3MxRE1NL2ZiaWI2OEhvYXBNQmtXS3ZIUUNwWDI5SmErazRCRHRsZkkyeVpHemhRZ3pwRDB6YkdlTS83R3JzbXB1MlhkQ1JCRXpCQm44RFVIMTlQYkhIdUthdnQrT3pwUXkrdzc4ODdEa0p5dnYyd25PSjgwVUtpZ2M5UzY3eHF2RzJFcWhDTTBweEdMMm44NEVYSExzNHlCeVJmWnRkeXRmZ3pZSDZ2bGJINm5ITnlhUzNSeU00WG1NdnJ4bTlzTkJSVExpQmI0dmZOS1p0MjlYMW8zQzdIRE9leC9rUnR4L1JrR081Q1Q3SmpPdUx0eE8yYnpZd09tWlVjUGxaS3p5UzlNT1hBWGZwb2FaV00vSUlyOWpFK0tkVGE3bWJ6MC9ncHpJSm5naDh0SzZKQmZ1cGo0UzBOSkJQc3pnNjVGbGxwNHVhT3JJZHlzRVFWODFUR1M4TjZKaWd0VlhVR2o4UCtRZUNnZHJlRjBkWVF0RUprNGZsMGhTdU56eTFpZEVrcVZ3ZHdhbVB5Y3NrYisweVgwckQwc0x4dEpFaENaSXdVblJqajdIOXRZL0xmMnpSRVlXdnB1K0ZVcGl2cU1HOFIyUTZvYmRLZnlYU1IvYjJuMlA2SnN2aGVkL1MrWkdSUVBKbDdKV29adGphOGlDME5zSlRJS0FsclBBYjlQU1cwalFKSTBVY3U2UjNYY0wwQVViR1VmTHJJN1p4SkZidnczbzNONjlRdTZZLzU0bmJEeUxYZ0E4YnZUbUtHcWRzOXhkUXMwbm91WjIxL0lkZEk1T1NuaytzSDVCVm90ZlpWVmZWaW04dGVDWmtGTHFSQzFESXNiN2JjZUhTSTk1MGFjK2VRQjRnOEpaa05DQTlUaUxhUTNWR01nb3VBbGw1WkJBalZvWmZsZHNVVkhkT0pEam5JWDM0dTFUTEgybk9QL1FYQm1CZDU1Wm5xQ1JpclBlM0hsbjJwUTBGajFPVUFuSHBFREtma2Y3VldOMHdlL1B3L3VBVjJRYkhtY0dLdHlYN1YwM1dwRlBVQ3h4WU1aSnlBVGFlN0o3RWxOakNwRFNPcW45ZERxdHJFQ2JWc0RvRC83dVpyMVUyNURqWjNiaWg0djY1VW9HaEZyYlZJdEZBTy9rNXcvVCtXQnRBZklUZ0ZWVDNxZHAwclhDSEdzTzkwbEZzcFFtcHlidWZScUJGS2lBZzdsaWZsajVVOFFHL1EvQityOXBzZW9rSWttQktOL2E2UStzYUFUN3MyZXZxcmtidnlTQ3dGdWZqTXh5MVdEVXdTNitTVVpRVzJaa3FjMU5vRWI3c3dFeDMwTWtvbldJV3hMU0VVVzErZWdGdkpuRU1iYUs1b1IwN1hyamNjdUMrY1AyUGY3ZTFqVmpZUVpNWVVyY2N1dkJackUya3FHQ1NqYi91VVJySE14U1U0ZGpORCtISFJDcWZFckZ0WTVydERMcVk2N1B0cW9ZejcwZGVtWUdMeHRJNDZwR1dSZFhuWTJRWmVaVHFJQ0ZTOHY0cnJyc0VtN005WDJxamZQUFc4ZkRaaThFVU9PL3FXRHVRaHpaQ3JLV2x0RVd6R1VpN3FpaXcrUytDTFdXV0MyUHkrZ1JrTXptMW1XV3p3dDZkeGFEZjZZOUV1ZHAvQVJZai9Wd281b0JPaUt6Z1huaitNM2ZTVnRFRG1ndmVWaGZUZzhqd3IxeXFZbTNXQ2w1WnB6ZGNic2c5NDU2ZTdCZkFUTEl1TzhwU1AvNlBUNFJrd3NMYUpRTGxFcWsrNzhkV1lybWY2QU0vR1gvN1lzK2hPQzBEVWpUUTdPN2pNcFlEdkxoL3RzQ3I1b2p2Y042aFF4QWorWXBqRiswZllmMG9UT1dOMTNVUElUbzUrdHJ6aTYxaGZobnV3Sm9DY2x4ODRkSGgrUnl2YW12VmE4bFp5MlVTQlhyaTZBRHRBaE1FaVdvdXF4OUhxeEt3eXI5a3VWeGdSTzRsaHZ4Ky81VjVPVzN0cnMvbkRzMThXNmpIZHZudGw0cjVBTUpGU3BpdkNacGxtTnZpVUlCblRvOG9sU3Zyd3JaUURoSk9hVXFMQzAvbVJ4bG00UnBKdXQzQVhhL3Blc3BvUzNRdWh2Y29BbXdCMW4yclNQZWFoTVo5WTNvNEhNVU5DWUkwN0o5OC9wMUZPWFdXNEZOWTJNRS9NQmUvNkwvdU91OUlHeHVoTHJLLzM2R1k3RnVlSUJHRnI2YnZoVktZcjZqQnZFZGtPcUdabFNDMlZvY1lDT0MyZUdJTmQ1Vnc1VCtEV0YrcWM5TERvek5vYWN4QW4zMm1iK0tmSGlubHcrS00wVmRVeUpWYWdrN25ZN2ZSdWlvaEx0eGxkMUU1cEM1SkRISGs3ZVNlcGszZGVvbVRQVzA2S09zVW1XVUhwZno3dWE0WW15UG1ob0xNSGxXVG9uNVhNY1RxNXpNbFJsUXJwbGVJNE5LQ1NYOWtWL2VoVy9QUnZIQ3lwWFE5V2FqalVBaFl3dFlOekU4ckVnQm8vRG9lelUyOUlnbTdPN1g4V3g1dDczM1RnSDRrRGE2WXRWTHdUK0FjUlFTUE1VL1RkY3NCcmxiZTh0N0Y0Nm1LVCtEMWtpQTYwd2dkTDhIRVFXM3lIaFh0dFRMLzlqTVF4RmgrcXU5OXIrNVRmdGVqemNqczd2Nlc2TjMzMW0yQVpmMW1GYXNGWXR0RCtiODZ3NE5LUWwwbnFqTW1iVVdEdWs5NXRONHlGMEhScklTZi9WOVgwT29ySTJpWXYyUjN4dXpwL1d3M0M2Sk9pOTYyTFE2a3BRa3BjcFFSYVZhdzBYd3BuZWtjWXRKN09JWkZaRFNSTHJXQnp0b2hPSFNsbnJKNFVGUTNDKy9kSVNZTkVzZEw2NndCRk5Hc1RrbGtzWG9rTHVjLzV2VFJrcTljekNVaWxDN2I0R29TanJ4cWFLbzJwME5lRDlxTUNaYmR6VnV5WVB5REQ2cTFmMkFJRGJ5SUFRcnlicDFrbTVTU2VaWlhaNHVhNktHMUorUHdkaTVab0ZrZVcwVFVGK3AwTWJYMUp6QnMraGI4WElCRXNtVE9YeEdkbFdUdkFrN3h3S0dIZjU3dVhiK1NRTGxjTklDdmpqeC9nb1pia1BvV2tMRE1MRGtHeUgwalpxSVFoZzM3VmdjYXpwa3ZRTDlDU2lNaWt1cHRmRzUxSStXT1V4RHhxZXBJbkhzODQ4OVVqOU92M3I1Vk5US2VyenMwTlE4elErdERLMEh3ZkxVbE9jYTMrbnFYUzJ6L3JhTEFxTDd0YWhHRU5WWFZIdGtPQUY0U3F3bzBadmhIbUFCNkxXcTlXbktMNUc3dkcweDUra0JKRW44SEVONExxQUtFSE1jcE4zRG9vU0pPS3ZxUk9WQ0h3TGJQYTllZU5OQittZWdrZzMxOXFOOGNkTzRydDBmMld1WWRRYTdkaHdaV3NPQ3pndUtNR1NZLzhzcnkwaldWblA3Q0ovNzFrZ0IxUFl0MHhiclZCK0ZrdlUxdXpNY1RLejN4SjNyQTFkU01saUZqVkN2WXkzdnpjc3J5MGpXVm5QN0NKLzcxa2dCMVBiZ3dOWklXWm5zZVJ5UkUwSFdwRnB6Tk5FTVJvRUJiMjF2eWVvN2VteGRxTUc5MFdMMHV3VlIrRm1GOFFtNTIwUkhCS1FzdFZvZFh0V01UU21ZV3pycDd5OEV6WGNYNzdsaTEzcTlsRFBTVHNzcnkwaldWblA3Q0ovNzFrZ0IxUGJtL09zT0RTa0pkSjZvekptMUZnN3BobmFGblAybG9BRDNybkpFSkZQb1ZHUlRVQXpOckFYWitISDJJSkdjVW1OQjZvL0dCbEwzOW4rM2dIZFpjOGdIVEFDcE92T2ZxaEhjTmtvME5yYVBlZGl4M28xeVVXZ2Npd0IyRXZjMjl1WkZiRGlaY2N0MW9XYmpGVThzSUtETStaQWMrNm12SHlPV0FoTkZVNURXMWFraGUxaWtJMEJyYnh3NWxLODgvVEVqdXJXTHhKZ3diOG0zcDEwQnF0L3dUQWpWaldnVWo0QW5VSC9FVjh0djdwVFB2UXNORlpydXlQWWVHdGF5UWpEbUltbklIVm0xK0QrQjdSRXdQUjM2bzFYZ2JvUWt1a25xc3FENGVVWnRFMnlnZDl4eG5qNE5oSDJiS3dSbHUrdXRiaXFuY0FiQmZaa0xpNHNGM005dHlJQ1BGSkprdmVnUHllQXpyNGNaTGlqZXM1QmJCQlNTand5S0o4ZFVzYVNRaTkrOWs5Q2FCSVhTYWJPVS9BWEV0YUFHRHgrcXVwdlRzMUQzc3FFUkxiRTYwUHMxeFpvVTI4eW5kK1dkWjVUbFBOY29NV0RzdWg1SDVGWXIyc3o0cXkyTE13aXNkcXE5MGRIZkg3UFBMWUhWWFJaTUJqSXpTRkRWaHExS0ZlelFNeDBscE9oRmNYUFEwSXdKUHhWWXd4bjdvZHpNYzBra1kxRDJZTStEOWk5dDQwbXprdGJHdlJvTFFIQ25sMVI4b3FqWGM2VGxwWm54RCttTkhuQUlYYXJxemU3ZTEyUEEvR3N0TkhNM3d3aUhvYUFDZlAxM2dHWStoRCtaRWtrWld2K3QrTTdyVjFhZHY5Y1JtRlprdDVKNkxLaWtVY3lOcVpKV0tQU2RDQlN1eStBeEkrYVU0S0MyaW1sQitxL3dnT0RaTEhWRGhER1h5aGxiekhLWU1obi9rOUpobmlLWlZUSG8yNXVIOWF3UEZMYllqaXRkZDY1Sk05QTVUZkp4enFnNUZLTXNCMzc3ZitMTTlvbUJjQVJ0V0V3V2NjWHFlRlhHZmgzRGd2ZDVYVUNjdHBKTmJMZDBoeVR2UXB3ODByWDBHOUtSZnlzTnRRdHpERGdzYTZLRzFKK1B3ZGk1Wm9Ga2VXMFRVTHdjREFUaldubDQ3WVg5czV6MFJWM09sREw3RHZ6enNPUW5LKy9iQ2M0bjlzN2tmRWg1R0grbVY0RTM3NzFwNmhmVWJCUmtJV0pycFZyMGI4bHNFZ0hMSzh0STFsWnord2lmKzlaSUFkVDJwWFdqWDVESVZXbnZSMTlHU2VjVzFvTTFjVFdoOTlEZXRoNm9TT0w0Mlp0bklYVXF4MTV1OThVNzRLREFvamtxaS9LOURPNlBaWnlxbGszR0tha0t3ODZVTXZzTy9QT3c1Q2NyNzlzSnppY1BEcHIyN1BuM3RJc2NWMHRwY1E2d2FXV1A2Z0xIeEdmMHc2eTRseGN6SmVoK3R3Z1Q1bGFsbDB3d3UxL0Iwd1hMS0JTRHB0TE0xUklodjR1dnJWY2h5eXZMU05aV2Mvc0luL3ZXU0FIVTlpbFJBd25mYWR6cXdoNWpWSVVNQUJiOFlhRWk0R0oxVTNRUCtRTFVLYnViZWRjOHI1WGZqbXFLYzI0N2tubldjY3NyeTBqV1ZuUDdDSi83MWtnQjFQYUc0RzV6SlNaYmhDWVdZSEhWYnZ6dnl5dkxTTlpXYy9zSW4vdldTQUhVOXJBM3lsRDE1Vmp0Ui9XT2NHUE1wbDRXYlpVaUdlQ2g3K2JxbllvL3RCOTZ5eXZMU05aV2Mvc0luL3ZXU0FIVTlyZHl3VDYwZjFCbzFkajZYZVIwWDZYQVdLMGRLSDRRb2tZSXloUzRVamJVZUx4OTdldkhLeFpnaXBOUlJHeEs2M25YUEsrVjM0NXFpbk51TzVKNTFuRmg1T1RDbDdEdm9acUR3b2l4cDBPNVBlbWdCWnVaSHlyYTdRb1dyU0pVWEx1L09VMklwMlNZd0RPOXRrLzMxUW5SS1llVnRSZ3VEdUlWVFNDZ3J1WVJKZ2IwN0xyRmpKNjNYa1VwZGpiVnAwOUFzM25DT29ubUZaaysxbktROTBQL0Mrb09xcXFDWU9NOG1scjB4SldNbnVmQjU0OCs5Um9HNGtlZk1YaDBNT2NKanRjZnhRa2JELzB2WmtZby82ZllhOFVUci9SOFpPdGNhV09SREZCQlM0UmtiRFordWNBZXZuMjBHQlBiVFkwZXNnbzVSU1k5aWNoWGhSZ0E5K0lSVHlhT093b0ROaGJOS24wUjFhV3lYYk0rTVFNQzRkSVVLT3h3S0ZpeXhNTXRxN2tvRm82a1JQT0p1WWxCZDk0aTgzYmxxbEtjem9kVm5kMDAzS0lDOGtvK1VBTXpMbG9HTll1MDhpME91TkdjbXp1ay9nRE9xY3dmSnRHQTFNQkZoNmN4MU9OamhXeDNXTUsvS0svMjlUYzBkNTlBMitaUjBIdzNrQWEyZkoyejRIZEx4bFR3eDRIYjNKOXJycnVPYlh0YWF2UWs4Qng4R252WDhmLzg1eFBsN2FYWitrdUxwWEp0OFM2a3pPSmJQVmFGQWQwSnAvc0FBTG5nY09xdVMwUVJDRlE5YU1EV09hdFNPY09remtIV3M2eXJUT1N2OEY2anRZc2o5dzZPNjQ3dXVLRWhjQmJ5c0xUTkVleExEOFFRLzgyT0U5OGpUenlDVnhBN2VYNGRyRHlIbmdWYjcyc0Q0Z1VzQkVYQlQwWkZmMHpjS05GRmVCQ3laZ2h4RzRQcUtZNlBmQXh3T0FENkxpM3VSMHRVaHlKL01RZE8zTzdkRXl1ejQvVFRLa3Z5VTRxem9oYjlSWjVONEN4Ky8vQzMrL1BpS0NDNEdCeWwzTDhsKzdxOHlwdk5CRDI5a2J5MGxYb3U5Zyt6MmFyTUpWa3ExZzdWUVRjRGNWTEFXSzBkS0g0UW9rWUl5aFM0VWpiVTV1Tmw0dER6TTBIS243TTRtdWY3WW9NMWNUV2g5OURldGg2b1NPTDQyWnQ0aDNhREFEQnV3dmtCVFpUNm5VVlY4Nnc3SC9zd1daaldTWjVXUXVLSStvWjJoWno5cGFBQTk2NXlSQ1JUNkZTaTFPbnVhK2t0UkplQ3VIMjc0aVpkaG5hRm5QMmxvQUQzcm5KRUpGUG9WRlZXYU9tcHo0dnE5dG1wMmxnZko1QUxQQ3pydE5LUW54UWZMQWFTMUpNa3g5YnRsMDVqNzU4WEVYSDBuanFTOEw2VFFzdWJuemVEQVZjM3VpUUVVaDMrNVYzWm42ZHJ1TXVFQXg2MXVmZXRpTkdPemk1U1pnMlo0V045OTMrRnhPWjRIM0d4Nm1mVUJ5czZBS2tXNXBaeVRtc0ttQU9JVkpjVmxvM3dNbmJNbnp3M3IzNzQ4UU1PN3lsajZsVzNyblRCZjAxUUNlek0zZisxRER4TSs3MisrQVdubHBWWGRiTXcwSCtXZWYvckRTYUE3WlBpRVQwMkdJWUxpU3pwcWp6dmN1WElFcmdyMUQvUHVnRm1oT1VUOVVwSmlPVzJBWmUwUnB5Zmx1MG15eXZMU05aV2Mvc0luL3ZXU0FIVTlzMFVLaWdjOVM2N3hxdkcyRXFoQ00wRi9PWElSZnBNbldhZTB5eGRybTVHeThYMzRxbjQyc043UkpCSHFHeVRhc2RmM3YvZ3ZIUzVRRTVzNGpjY0ljM1pZUFhrMmhMS1Y3L0IvZVJ0SklOV2dnZ2lRbmlMak5VSzFGNGNYTC9hTmh2WUpBVnBFQmZzTXRtY0J2V2duOVo1UEVBR1BzYURCYjJCSlpRMTBnRlNhdFJiNWJOYWtRTTlQakZBQk5vS21sS1d0TkNQbjVyOWJmV1o0ay81UnhkaklsWEgvSmc1MVZpU3VjYlNlUktrdmVVYXA3dGY3d3BaVFJ5UGEyOGI2Qk1kaGlKdDUrL1RIandFbzlzNlFJTW4vRS9sOXFPOGthcTZ6NCtlcVJSNkxDMzVUd3Y3YmhRVTEvUksvRGVnWlRGTnF5SUV3cXB1V0xTd05MNHQ3b3hjelUwMnJBWURqTFRFWjNIMjZHRkpBUVJnWjZ1NG9tckxTcTBUUzE3ME5QN2JBcSthSTczRGVvVU1RSS9tS1l4ZnRIMkg5S0V6bGpkZDFEeUU2T2ZyYTg0dXRZWDRaN3NDYUFuSmNmT0hSNGZrY3IycHIxV3ZKV2N0bEVnVjY0dWdBN1FJVEJJbHFMcXNmUjZzU3NNcS9aTGxjWUVUdUpZYjhmditWZVRsdDdhN1A1dzdOZkZ1b3gzYjU3WmVLK1NRRmJkU05rSjNOV3BjRzU2RGFqREllb04wcWI4bjFKWGhTa01LeVB0c2VTQUlqMSt1UHEwb1Y3MWsyc2o3dXYvT0VSVnRkV0w4N3dvUkUzcHFFeFhnZHpVaTdyajd2aHNtVTJiWXlzQ3AwYXFHc2txQ1lQcmtITjdsekhoOTNxRDVNT0U3bUgrdFFUTmEvekhqREFMYmJXSEk0UEhKcnNESDlhRzlLSVcrN2JFMkRrZkJnR01rY2NvaTBtVjBoR21iYVNFUjRyNUtEbGN5SHlDbzcyY2Y2QVc4bWNReHRvcm1oSFR0ZXVOeHkxaGhlUWg0aFQ5SlRUSFdZRnNGSUMrTWhCaWE1bWJKYy9BREdPUk5LYTJPQ2ZWY1hpUWRTUEE1WlBra21OWHhsQ2pTV2p6MlFaL2xpSyt2RU01SUxOVnFCaWtoUnQ3RUxuemxpVEV4VU1JMk10VXdnMmE1MFhxSnFoajBmaFIzSEs0OXBsWU9NclA5ZUMvcmUvZ2VwbHRqZTdSZUN2V0p0RkprRlZTMTFBSjBPWFhmdnBjemJQNzBPVk9SNUhyYXBSVENnOE01SXFYWUlKdkZ5QWZhZ2R3eUpyays1M01BVHBPL1VEaVRSWHhSU1NnSlA3WXl6RERuZHNwdFo3K0FrNWtJUW9GQ0ZURjM4V2YvdkpCNGlMMldpaUVNMWh3Tnd1aDFJN3N4N3IzRUNuVXdjNGppQjRtd1IxTHpzZ1lvSlpzR3RBZWNxWWxyd1VGK1FiYWdtNHN1U0dsYkFJR3Q5UE9rNnVHNjZvbDc3N3FFOXY1U3ByMFI2NmZUUE9IZ3NzUTVRSHZkaHFFV2pncHVaNTR2QVVNdDU1Y3lpbEliNnY2bDh4YWRGZDR0OGtpaFZ4b1BYMVRKMWVKbWdBSDRaTU1PbFhkeFJMcVpnc2VIYkZVeE1PZU42NmxDSmo0OTMyS1BwUWZwcFZiTEcwZnlTbnNSNlZPNHRqMlN2d2xQQjMwRlVEdmFSd25NSlhPZ29LU3did1BZQVZ0NVNaL1FPeXQyU0dUcUJYY2RrMmdOaGFVVXMzUk4vcnE1Qklra05nbjFYRjRrSFVqd09XVDVKSmpWOFpRMTZnajg0V1lXRE9rc3NLRWRrMlRUSHFWMk9YcUd4QVpCRjFlTWxRdzlxNnZORFV3azVaUDExZHFqeHp0UDF1d2s4bnY2Qm9DOUNhbWVyY0VjTGc5enBxaFFaSGFEVzlLbDRZRndHTWJmZHJhYTNxTXBtVTRJKzlQUVUrZUNRejFrbjY0OXpIM2pDNnI0TkgvQW9MYVB2QzZXU1h3TVlUVTBJdWFhMEhnTzFMR1J5eXE4S1k0SW9tc0xSOWRLYWtyK1VSdXBMbXpMT3psR3hwOHg2SHRMT3UxTTkrQjJNN2MzL1pMRlk3SFZrUVByaHVDWVo4T2RNR05uejZkeEcyNnViR2JTa212R28rcWJWSGV4NjZyY3dubFRjWnVaTlRZV3kwcmo2dzFvTnFUWmFxNEdST25mVUtjakdtZ2tIT3BDZGVjeGFzRlhVc2tMVWxPWDllZzA0cTJNSzh4UU1uMW9FU25tVnNGNWFYUkRodytrc05JVmpHM096Q2VMZEtISFBVcUI2S1IxUG50RTVGNUVjSjVLQ1U0WTExVFNFUDgzNnZzWnRXYnc1MTQvN2poRzlXSysrTzRLRkxhdnhtNENBVzRPWVgyK3hBd0grQVZNVkhNYWVsNHBsWXl5SWtNZHpMMXZFbzdoMGwrc1paZ3VQMGVKUXlJaDdvYXByT0FrUTg2VHVLOTdaQW1RRFMxTVUwS0Ria0RJZWt0bE1GQlk5SzFkemVCdU5QcUhIT0cvZG9DQ0M2Qzk4SFNJTyt2bkRKOHlNU1FPUzVwMWhETXc0aEg0aHo0WmFGTExOQkhiZDBIMHNJejB4cnYzNXVjMk11MEVrUXZTaTV2YThHTnZxcG8wZ2ViSkVDMDRIRUJSdjNFKzgwa3JLWmtqRmpZdFBoei85Z0Q1bHBGblUwYmpHc3E0dUo5Tm5lYm1wdVJYM1pyS0tHdWVtSWV5ZXNJZXpFT05Cd3hMajVJT3N4VVFrUG9FemV1V0x0SnFIWWxLanRxTGdSN2kyUW9HUTJicXR6VWxROWQydVdQZXBQU1E0bzlXaDlPbVNzZ3VMZFVUa0FWZGFaZ1g4dnNnTGRXWi93RU85Y2gxbzdBN0NUTHBreUUxeGt5Wm5aNnZkSmdLQWw0T1BGUDhVTUw2d3Uxc0hmT2plaXJETHpLOTNkaTFFU2kwMXNWdDZoYmFwTStQYWszMlliVzZUTnQzVzRBSE1qMi8rS1B3dlRmeFhGWHRQZ1FKVGw3anZ3N0RjLzJrMFE0L0pKM0FEcHhqRi8yZGVvOE1wWExzZDVBdko5Qm1jMDFMRFBhV1k5b1NycW91TTkrVnVQcHBJL3grT29kYmIwd2hWekMvRGhmTXhFUnJ1QVQ0ZFp4eWJ5czRaaGVSa0FMb0RzcWZLRWt3VU9DRjVpSkUvbVRMNkd6MUlEcUNMeEp1OFdyZEkyTktkbTVjU2FsZlRFWnBoZlRicUFqaDJRaEFBUHVNRmo4ZVVMM28xc096YW1UN1FvNVFLUHN0S0IrTklJbHNuVmJ1NGhhME9oMk81TzZZY2lDVHN1Z2xsWGtwbmFweWFHOGZUR2w5UkZwYUJ5WjlkVWJtYXcydlQrSEtTRC9LSUh1ZXNkTXRVS1VxVDNmRTNGMitPNFNxTXJ1em1hbUUrYk52aVhkaUNvb3N5T0JidXp6dmN1WElFcmdyMUQvUHVnRm1oT1ZBZjJqelhrb0lGcWcrcG5WMngwcDRHVUlMVkEyQlF1cmJza1JuWkRzclM0TUhKSGdoTFpkYnlKcDBZKytrRXFvMGxzcGRsNnlaMG1NNlNVaU1qRGtlbVZCWGZyQ2JsS0Rmd2MvVW54Z0xScWZLMnZHLy9iWm8zVUpFYTZ4QUltNnZvdW02a1lTaHc5dXIzSlRURGhCTURIUncwT1ZPbjZvZ2ZNaHVJNldQM1pnZU4xSk4yYUxaRC9nbjl6UjgrOFl0V2pBTkJ0TENhTm9DMG1EUFQwQ015eXZMU05aV2Mvc0luL3ZXU0FIVTlyek5BeTRGcEtNdzZoM1JWSTk5b1dqQytzRkhMMWR6TTlqVG96RWNEbXNQSU5WQU5HYkdNRDFZUWxwY28vcjNBODZVTXZzTy9QT3c1Q2NyNzlzSnppZkY5ekVPbEdDWFRqY1V3UFNYdFdVakNuSG5naFV2MGJxT3pxS0ZlemI1WHhHU2F3Yk9RZkdRd1pJMm4wT0xFYVduSkEyS3QvVnd3K2lOeVVvR2VWNVN3SGVsRDFsb0Vlc0N5RDUwMUg3Ulk1ZHpmczM0L1NwaThXM0wrWFpXcjI2aWRZdUFJZWtxMkM3blEwSi9UWVpxOE1UTEFmcU0wdzE3OVJXa0pzYVgzMW45M042bzJVS0UwYStyN0hERUNCeFRWTVpiRmttMTJ5c1dRZGUwcFRWeFBPOXk1Y2dTdUN2VVA4KzZBV2FFNWJ6eGlrdTJwTHJLTWx3bUtObWgzdU1JQVhjYkN2amIxSnFHTFVFS2VqcExkSGZQc2htNTUrSUlKa2lFekJEV05UenZjdVhJRXJncjFEL1B1Z0ZtaE9XRW95U1VaaGFCZHpQTjE0SkFubW5ZczRCYVBzMUYzanlIODJIUE9KNmJSMHZiZWp3UjBMVWxWYWw0cUhFcENIYTNFZ1k4NEVBOFRsRlJJdEJ6VTMvN2xMbjh4ckd4OUV1VW8zUkxEYStPVVljNE9KSlB4Mmd6bXJQanpTS291Szh3aFpqNzUvTTUzc0tZWDJ6UmdPU1RXNUVwS2ZCRkZWOEJQSGt4a2JjZGMvVDV0OFhIeUh0Z0dEVFFBeXpweUlvNnBadFQyZUZDTjB4V3Z0citMdzcvWjRrZDgyelRUaGNZckJEeHIzN3hrTzRUbTNuTmIrUGdGVUpIS2NPYjg5QTRiSHdHM2Q1RmJ5bGxuSjJDQmN1TlIyVW93YWlSTmFOV2x3R1lZWVBEYzF4R2hESEZNNndZMGJjN0lMZVFEaVlEamZMY2M2WXE5RTkyTTJXTUVsRFh6cFF5K3c3ODg3RGtKeXZ2MnduT0o3ZERpNDZ5bnpYQnFUZ1plL1QxWWhVYjlZUW0relVvQU50R0hZL1o5R2FsUlpWdlJnOVVsSkpYTXlYQXovWGprTTZVTXZzTy9QT3c1Q2NyNzlzSnppZGNHV203Q0xrL0gwTDZBL3k1Z2FqcTB1ZURpdmNvMHpUS3RDK0pkcnhMOUlNT01IZEpQK2dIMUEzMVdBdTZMcy9MSzh0STFsWnord2lmKzlaSUFkVDJMZWVYTW9wU0crcitwZk1XblJYZUxaVW56MlRHRlFrUWhRRVRmSFVEenRNSGJWeGJvVm9oTDdOTkRKSjF0eUJBNlRZL2kxdUszR3k2Z0I2dW5qVzErYVRnYkZGWTc0UE0wNHZtSjJwMmh4RXNjRTd0RDU4RFJtSk1oU05NQnRkbEU0YTRXcHgzRXY3WnFKZXMzV0taTWNzcnkwaldWblA3Q0ovNzFrZ0IxUGJGOXpFT2xHQ1hUamNVd1BTWHRXVWpDbkhuZ2hVdjBicU96cUtGZXpiNVh4R1Nhd2JPUWZHUXdaSTJuME9MRWFWN0RXT0pnWDFiY0FHWFF3VHlCSFhmeGE4bmFIcjJYZjVHeDFYbHhONEFMWnNIajN1TlIweU9qSVNaUUZYZmhkVmkzc3UwbkpncGNJVEJkSkNHVTE1aDE3RHNIUS9Zdml0SDJZRnNnQUhUVHEvY0xRbCtzQ0hlMmhyU1hydjJuUncyVU5NYkhlZEd3RThOTmxQVkc5OW1wRE1WYks5bU1DbWdvUGFrTnl0OEVPVlFKYlFTaFQvcGs5ZUVCNnRrdGM4emhkVjRqRExGazN5Nk15eXVSZDBvelJnSjlMUnpSZStBaytsTmZ1RUozVlFvL3ZOSWpKWXRTWE5OSUQ5ck1GMWZEenRCUmtQSlJEMmpCbXhrQzYvSnA1S3ExSk85WE9iUlcyaHFTQkMxcTl4TWN4VFY1UFljS0l4VWFiNW5YZzBaWjlIUkVkR2NmWkF6WEI4ZVZ5elZZZC8vemlHdFQxVFh0TnlSZy9VNnhjOHh4ZzRoSXZFYWZOc2JFU094N0tYeURYRWczcFNpK0gwbmVUSzRDN1BtUVR0Y2pEUHQ5VysyNERSSEdnbE4yZ2srNTM2b2NXM29RZlczakxJUmg2VWdDWUpSRkRwMlIzSWZ0eWdROEJyazNCeU5EUG16LzBuVVRUTGQvc1Yvb3h2c2Q2cEZjNWc2cmowTEJwcDNuSEN2SlNmOUNDK0JKVTZ2V0FOV3FzeldLZHczcmtGaTdNdi8yQ1ZIdXFQdDZCM2pZWTVITE9CQjZkU2NFSUE3eEFRRzFKSE1mOFZ5ZGFqZUV4TlQxKzlDMkswcFRSVUIxQ1hYZ0Z0ajRTY09CTVM3T2NXU1V4ek1kNXJTQjJrUnl0MzJwRDA5Z1NFai9pTGE3MTE3bHlnVWlqd01DMVlWOStFRzVycDlGdlE3NEJFMGZrMmRFeTNsZktGMEg4U0VOeVhvbXpYOE1OQ3h2ZmJRb2ZJOHI4K2Z3ZnE4clJkSGthcnAzbGQyRWlqc0RlSG14YkFwc3JjbmlRdEQ2UWE1cSs0Z3Q4ZVRmT1pHaTJ5ekRBaDJPaklBQmptc2UwK0d4cVpFYlc4akpXM0NxQW4xWEY0a0hVandPV1Q1SkpqVjhaVGtxa285ZU80VW1hcFRPak1nN1dFcXdrSUZFT2puKzNmRUVhc0JrSkZubXVYNHRoNk5OVEE3Zm5OSkJyRVdUaGluWjFDUGxueWJ2THhsVVFjekEvWXluYlJ3Q1VQNUhYc2k0b3B4blJGWkN5Q21QYi9ub25QY2c3K0dGc0NCZytReWV1WGV5V0VkYTBZc0VKNHRGRGVPWGk0TVFtckpnZlJNd21YUHhUREEzOVdxNGNxVnV5MFlnWFlCYTFGbEtTelRVa3owYm9KWjNFSFp4S2lpUWV5OVFBcUpBdXdMWGlJYm9kWnp1bTlKemVCSlJiekNMQitXa1hxUlhwUzNwUVI5TXlIM0tBTFgxNUtnQWp4SzgwK25JcTBkeHN4ZXFwc1NLSk5Hd3I2MEk5NkJETnJnL1p2eHRiRituYk1CS3FGSzEvM1hXR1dhY28zOW1GZEsrV1kxbG5ESG5HOTBhbkZZMmdEcHJnazBoMGRsS01Hb2tUV2pWcGNCbUdHRHczT2Y1WXVFZlZuVHlqa25rODdOYjE2TG5VTG1LdG5rNjIxbzFXcFo4cW5SVDBXVmpDTUFjaHFpUTcwTUtIaTlHSUE5dXlTaHVybzMxUUFhOU41ZHRwN3Y0SEE4RUl5RXhzWk1VeXFpbklhNEhkalRJeGVjdFBUSkNLczQwMlNvOVZhU0tZampEUnNVWU9uNUZDR0xkTTh1UU8yWjE2WDdiaHFRMUlaOWJTOFNRMnNNdXU1VnZlVXg2Sm5GS3lRSUM0WDVXSWxPTFIxUFl2TGIvR1haRlB6dk9yNUdYUzgyNmZVTWNEeEJhaHFZeWtEWUVmcHBuMXMrWFROV0w4WkE2QzVLMS8zWFdHV2FjbzM5bUZkSytXWTFKWmViUXNTNkxqTUNzRUhMNVNPemxsbHhUUjlXWGovcCsyekdGSDVyQUV4ODg3dWZpMzBYUlZVcHU5SElRcGdtN3RCdFFZT3lZakRVMlR2Uzh1dEwzdklxZnhOQk8zV2JyUjQvRjRqL0tMejFBdjBBL3hVZFZWeWI1MEdNY0RJSzA0b01xR0dWcCtoclhFaTJoV0RqdTNiZTZjUmdvTUZ2U3liRG5OVmRYUHgwc2h5Q2huMTZoWHpzdHNES2ZpUkEyODRWallER2JGQUJHL0t3Tk4xaFZFN3Y3cjdIMTVDQXdiT2NDMVVzTVpJRUJ2TmRpT1BIT3dxaEFuQ2VuaGVlMHB6WkFNVGk2V0g0M0FJNll3eCtrNm10aUh6U1JkNUY2dmRwMXdnWE1hL2N5dWo0QzZvOTZGNTdrWVBybFUvQnRSTzRQRm1CNnBtak5ncmRIUEpVSEs3dkRRN1E2alRGaXBqZGhpMDZIai9nK2lLZEQ5WHBEUk5PeWxIVVprcVJGVTBIRXZOWXluSTNwZ1FkcENLcUhFVFU2KzVBV2NDSHAvTEJhblFrcGFSZFhLUm12dkxyMWZ0Q2dUTlIvVmFXWkNpNkpOWXZxMTRNemhwRXNaUnFLUWkybkRjK2NlUVFpTHlnWVFqdXQvM01jbDI5N2xBQ2l4R29qSzVoMEMxZlNVSWpydjEzTEN2VHZCZDk5ZGVlS1FsUVRaaDV4MUNBRXBUK1pnV0FScTlwcUVPYmE0UmhjZm5TdXdpMGNrNUNTZ2lhdE54OWNTaWh4K1BSM1VPNVplNWV5RlV1Q21DWitMRVEzT1dVRmExdnFwbzBnZWJKRUMwNEhFQlJ2M0Urcmt0aDVjSDAzSVNqa1J2M24yc3RiVXJYL2RkWVpacHlqZjJZVjByNVpqVmFEYVBRUVBYSlltQi9PY00xZnFORTNIejFYeXVNSjVGYkRNQXpka2JWNTJsQlVYVytsb0VMQ0FzektOOUk0b0pLR1Nta2RBdTJSL1c5YjZzZDlxOHVpT2MrTHdxbjlCWG5iaGtzTDlkVFVyanIzcjZnMVFXM05McEdCS0xIaEllRXFjOTVuNnVPcTllN1J6MFVRZENVQ2U2bU1zeEd5TzJQNWI4bDFsbm52UEY4TGRtTWJDUjJaRG1Qa0FHT29LSWFZWFZqd3dQcGUrU2RGZWhINWlNQ1YzaXVseG5sZTM2cUV3YXBpczdGMEYzREFpNEUveXVHemtGSFdHZGZJV1k2aUhXaDJMU3F1Tk5jcGVQYWJVOWtweklaRG9KWDhKYnRZcU9GUWE2S0JJS2I4Skw1RW1YZDVsOEc1TVI1d0J3dmNMR1lSVzNwMzlRaktDV2JURndUY1BkSUYrL0FuUVo3bDE4YmtXcXh5bWJ1S2R5RzRVYm0rUXFDSWEzR3hjUDM0ekIycUlCYzg2bUJkWTczTWpxb01LNWNQUFY0bVJDMlVwK0N1bWNNdjRSakpEbnF1bHBGZGYwNHhybXd3VkpBTGkzVmpCRWJIcmlQUm9DdmRxZ0VNSExPWCtibCtyL1YvdnFhQ1RNNXJ2akRua3BKbTJMbkF6RTJmWUQ1MTU0UEVORENNV0haUFROTjlQc0o5ejdyY0RZUWZObFJwMmNpY2xIL1R5UlZpTW03aDFSUWtzdGo3dk5LRDFjOU1yWjlQekN0YVNsVytpYm9ZZVJEaGVxK0llcjQyQjAzVjU5TFJuYVh1L0tCZFkvd2ZyYXFQM1BBZ2s4Q3BESzVpcjFnNDY5ZklnYVhMbmZSUFIzU2pwKzF2aFBxZ1gzdUE4U3pOUVNOVmdneUVKR2QrSE5yV0NYdzNyVnNYQWNhSDJvNmlIV2gyTFNxdU5OY3BlUGFiVTlrT0ZYY3dCT09EOTZXOGNDM2RCSW81Z3J3MlRCQ1duOXVzaFRlb2pnVlZRVDI1VFk5VzI5ekdxSExQRVdvalBmbko0L1EraExCc2VWMUhqTU5zVlBVQjlRTE13Qk4ySjJXb3B2VkNDQTl4M21vWVEvRHlCeUFjSlpIdC9GRDZSZHlBbmxKR0lmQmp2ZlhSanE0cStDOEJSOWkvOWNFM0h6bjNJSCtSMVN0eElrTVM5QTJHWGRMVTlxemhqSHlyOGZRUUYveEs2VG9DWDdvSEdTREs0enRLM2s2VU81azVXVlgwM0NELzl1K2pCOFpVelFKZ0dwVS9GTkJEck9tWGE2ZXdEcmxBYlpYd3hReGtNaFZPWVJZNW80OTFWaW1JdDdvZTI2dDBUcE1HaW40TWp0NVFDbm5WeVhPeFRYaWQ3UXg4M3kwbXlJYlh6Q241cE9jeXRraWx4VW5SdzhxZHFYcGhndjRrcVBsRllITWxMQ1B2b2J4RERhTWRRZGZZVC9WQ3BjOW5TTzZNY2s0SURQTVZLRk5zQkxsa2x0ZHREZkM0NjA2MEZjZHdlUjBad25EL3dzRnd4WFJTUDBqYzdjMnFSNGIxV2U4dUczVkUxYVVXV3I5Sk1EMG5qUnlPUmNYQ2lmMzBwL0k5N3RjWEFtTmVFY2JSVmxkS1d6dGFUbUkxWHNmblNnaFF4NFlWYVh5eTFvS0tScW1wajNkUUlMdWhGOFQxTUpMbXMwcmRkUFRXanYwZkJOYUJOZkRWM2R6dk0zOFRNelp0aVQ0SSt3b3pvcWUyUnRqeDVsS2E4YVVzd2k0VDN2VWMreTZOR2txN0lWUkZoMSs2TmIwdndyYmYzU1hZYi9MN25nTE5MQnhhZ1p6eUsyMGNVYTBxTVQ0bzRORGpoaUVGd3V5ZVZiSWJ2a3Z1MHp3TGJWWDBieXAweGN4b3dBWUp3Ukx4RHNPVmJoak1RcTIxM3cvNHlrZTB1blY0Mk56bHRjOUp6bE84RStkUDdueE90NGRQbkk0NkZwRTh2Q1o1ODlJM0Y3YitmcWlxYk4wRy93aHZsejg5RFd6djBtZ0hkanZ1ay80bFpNdzNMSDVHTnZxSEhIbVgxcWQvZURKTzNrVml0TmU5VkxvMElaMmhaejlwYUFBOTY1eVJDUlQ2RlE4NThieHVRYkpwRmpKOUdEWlNUa1pXMVYyNm9pbEZZeVhGWit2N0VIRThLeGE5ZGNHdG1vSFdyalJram5tMjZPOVpDL20xZzNWVHBwa1g1cm5aZ0FpSDBkTkVDcjRxMEQ1a3F3Z1RuVHptY3NyeTBqV1ZuUDdDSi83MWtnQjFQYTdjZlBHdGU4NjZZdk9oejBuOEJVbGF4NDdid1NTR0dJRHlxTG9LM2Jhc3NWMGxSNXpxNEtxUGNsd2QxODJDMzVnb0ZiT3BaUENzdFZVZGdqVTBmTEhlL2NzOWtncUxLSnJOL2FUSkFPYkE5NlFISGFaem0xL2pnaXNtRlhMWFBHUGlsRDEyUnArRzRSK01VRE8wK0lUUEtLcm1LbTZqVE1XVFQvdkNSY2s0QWNWU3VRK1IxNGluc2dtRVMwUjF6dVZmdDdRNWorYk1sUlYwditNNklaRVl3bkpRampveWpGbmk1dGZTYm1FbU5LUFBjcVFDY1d2V2JOL1JMZHkrcDVWQUlkQjYvQTNBTEFFdGJHZDhVMTBLL0pMTHpVUFl4dmdZOXg4TFNEVFcyREJ0K3lZL1ZrQWd5cUdOOW1VZWN3bjE5UVJ4SWRhK1R4K25LZkQ0R1JnaDdOUmhTbE9rOEdkYzN3UW1XcE1keFlQbi9CUVFKelVoYlVXNHpWdDlzMmpWZUJ1aENTNlNlcXlvUGg1Um0wVFE2d21RMW9pQklZc21nNlRLTktETjZlZVVPcnBTQ3NuWWE1T1V3RTh6TnJUbWdsRDhBKzNzVFpvMlcvVFBOYnJ4YklzY3ZJMTQ2MXFwWU1iY2tFaTJzU29NbFhxR0Nlc0t5cDNGSjBlVm05Tk9pRXg1U2x5ZmJRcW0yKzVIMEFSekx6UGsrY05iOGFqbnUvU3h4ZVlBeHZZSkFWcEVCZnNNdG1jQnZXZ245Yk9VUFNRbUtxcmFsdStVSkJROU10d2ZOdVFkRlp5aVpWdGFZYW92V3VOMmxxSGR5VG90N2VtOWR4eWU3T1poa3JvSTl2MEQxV1NRRGhVc0RLdlhqY2hUU0k4dHdFdmZYRU94bEVpTUhKcElIa05PZi8vOFQzTUVabUQvUTV0MHdKc29YcVEwYzVNMUZSSmpOaUxkcjdZRzRQMnJweHhHdWpPSlEvQjRZa2RxNFdGaU5CYm9mNHRJZnMrQnVCbDBUcnNsNmY3Qkh1K3R5ZnJjTzRXd0dGNnNBend1ZXNxdGtQMUdia3hrdGtNdzF0Z0lqZkgwQTBVUDJHZVM2NG9JQmFvQ3ZoK29BZElyMTZraFIyUVN6ekZxWUR0Q3l3eCtuMFpPQWhHSm96c1Y5VkUzdURMbjlYeXhaVzZPNVc5RDBhd0RQQzU2eXEyUS9VWnVUR1MyUXpEMDNrb2ZiMzE0Z3ozWEZtNmtLZlBzSkN6WG5uNTc0NnpGQVViSWxCL0IvNTI2UWltWlkwamJxd0czOHNqWlNEdUhnYUx2SGNPSERlZHEzZVQ4TzBsRjFGem1LYnVaRDZKTG5DL1c0dVB4SDNET1JPdUtqaU1CRWZwbkJOZWxHVWZDSDFHUWxjNmQrS3JJenpKbjgwT08yQ0MzdDdsTDJRYlMyMFpVTERva2NkS1crWnZMME42aGc1Wm9ZSGlHZUJlWjVCY0cwNTdmaTVNdGs5Z2N6SG8zSVlsOEcxT1ZpOUdlb2M5UVM3RUYxM2Y0a3d1VEE5YnRUbmxKZHMvYVBDNkdZMWsxaFo0VFBiekpRc1JsL3N2MG9rbGZSNE9xaHp6b0UzOUhIdW5jNWF3QVFTK3ViWFNVRURrbDAvMERsLy9UWVJ5SzlucUwwK2I2MnZGTkJzaU5TUkNzUDNZMG9IVUxJcTA3SmIzRWdRVlV5QjJzZFhrUzBveGxWWEJ6cjZTdEQ5S3RmaDNJaFRiSm1rczNJMW5LdzR4MXQ1b2JIL0wyT2VwTUgrZnpoL01UZTRmWlRQSmRUSDdoaUhVVUFKd2xGQ3ZMc3ZNckFWTHBScXJWRDIxY2hUeWxSYzEvQmJVbmNzeVJJTzllT3FCS0E5WkVyeXFWczNZRkVPOWViWWV5UXRCMGtTN1lhdktrYlJMd3h2N3RVcGI1bTh2UTNxR0RsbWhnZUlaNEY0bGx4U2pMSDE4Tk5TV1l3NEFJbnBDNVhzdmRmV1lsS0xIa1hEQTJ4eTVwWTRwWVp5NGhuTDJXSDVWYWxWODBWTVpqV1RXRm5oTTl2TWxDeEdYK3kvUzZMcHZkVDRhUWJuTlBKN3VLTDU1c2F2eDlUOVh4K0gzRTZMUXg1eGxlKzhaaldUV0ZuaE05dk1sQ3hHWCt5L1NHZHovUGZFa0VwVlhMNzFQVUQzSnZVQzVscExWUnlLYytRaG96SldHQis0R3NmS3lFQWYzS1c0dmk5NEtCTmZ6Q2pGbGo2MkxuUGE1VkpZN1VEN0Jnc3NyeTBqV1ZuUDdDSi83MWtnQjFQWVpGNnNlelN4TjNwd0U5M2NzMCtRbEtQc0pobkR0NnJXTmc4OWRyUXYyV3lhSWI1b2owZlRsZGRKNE03Mks3azM0bDA0RUdiY0xmclh6WFdZOWFBUHcxSkpCNXVvK25WdVZ5a25kb05BNlVyQU04TG5yS3JaRDlSbTVNWkxaRE1QTEs4dEkxbFp6K3dpZis5WklBZFQyNTVZVU1aa1p5V3lIVndhK2RGdkgxdTN3L0FpUUdnMWxhdHVFZ2FneFJBU2RQbUYrOEpDRTg0QkdxK0haY2NHNEZWTWdkckhWNUV0S01aVlZ3YzYra3NNNUU2NHFPSXdFUittY0UxNlVaUjg2ay9rVE5GZCtNZUhKRUMzb2FZNU5pNUZOQXpYdlFwZzNFdHQ3YU5tY3cwZmtuaUR4TVI0R3NzajU1cS83Z295d0RQQzU2eXEyUS9VWnVUR1MyUXpEeXl2TFNOWldjL3NJbi92V1NBSFU5aThyNXFRTHUxUVVuR3VTOFVMM3c1NUtXK1p2TDBONmhnNVpvWUhpR2VCZXl5dkxTTlpXYy9zSW4vdldTQUhVOW1UaCthZDdKZDErcXZteloxL003dU1teGpRVTNVWmJ0K2dCNHhVV0d1cUh5eXZMU05aV2Mvc0luL3ZXU0FIVTloZlRtbUszV1B0Z2M2K0RYM2UxOVZ2TEs4dEkxbFp6K3dpZis5WklBZFQyUTZ3bVExb2lCSVlzbWc2VEtOS0RONXBlMTJHalRRMGtXVnV3bXI4ZGVjSExLOHRJMWxaeit3aWYrOVpJQWRUMnBUd296YUZKN1dkWGNHWXZjMGJ3UExwaVA2b2ZMUDA2WlpBRm9lN3MwbUFCN2VKdXlhSnNvYUluMmFKQnBxdCtuWFR4VENjSUZvWjFPdGJMeE8vMGxIeVFQUHcyTWVJcFR4YWFqbmp0SjFiTEs4dEkxbFp6K3dpZis5WklBZFQyRjlPYVlyZFkrMkJ6cjROZmQ3WDFXOHNyeTBqV1ZuUDdDSi83MWtnQjFQWmlwbXo1dy91R09uTmpYSm9aamdyd3dnRUc1c0JwUXhBSHpvc3FyYWkwUGJBTThMbnJLclpEOVJtNU1aTFpETU1JYVRSai9kNkhDQnhicGVOVmwzM2xWUk1YSzAxWnhLL0dNVVdXd2VkRXR2YTRFZ1oydTJOKzQ4aExveVBhRk5iRE9ST3VLamlNQkVmcG5CTmVsR1VmbzFROFlPZjdyajFLWUxNQnZSeWh6TDFHNC8zRjNwRDdxWk4yS2JWMmJ6ZlVYK2ZkbUQvMTlOTmpTMHExanZHMkUwN2gyVVV4V3E1V3ZqYmVkY2hWRzROYzBrcXd3OFFlbWFsSzY2d05kMHNWU0FMelRoWEVkdDA1Njc5TDUwdU0yQ1lwNlBpK0ZmN1FnU0ZOWk5FYitGZUlBazU3ZnozWld2aTdYVXdpN2pYTzJJeE80WUc0bEptNEJhdTBCempwOWFlRjcraUdSUzk0dXRxVXJPWFFMYTBTTHB3enpkK1loZUtUWkE5ODQxSGdPZTZ4TDREVlo2WmNMc1lhZVFrcGRZdzVnRXFVcFBhckZmQjZPK0dxUlUxZUFURDg5TUFudjNvWk1LcjN2anpXOEtqVU1qVGs2dWNJaHR5L1ZUSi8vS05tR0NhWmZsZmpteDM2ZEhuTXdYaVd6c2tCLy9MWVhoUDVZWWxwamV3MTRFQ3NsYXBzK3JwdTQrTU1RWFVuM2lMUEgzQUNQOG1RVVZlR3NCMkxDZWxvY1J2aXc0RC9qTUgvY3JHZWRaZ3g5TU1lSndMeEJHL1pLS1UrWEczcWxSQXlmYnJhWWVKNlJyVW90RjhiWHNzcnkwaldWblA3Q0ovNzFrZ0IxUFp5dFh5ZUIzeXNTNWI1YjZOcHNXWWlteTVnRjFTdDROQXpTeU92M2syY0VON0NWTjVJUFR1djAvQWZhdkdqajdweGM0V09uL2lyejk5bWVqeTVJSGsrZUUxUmt1R1MzWkR6ZUZOT1Qxd1VZNzB6WlUxR0N5UENLTTRIMnNldzlXTExLOHRJMWxaeit3aWYrOVpJQWRUMmVpNHBjT2t0TkdTRjF4bC8zcXJFWU13NDlmdWF4TXJFUmJSZXQydWx4OFhMSzh0STFsWnord2lmKzlaSUFkVDJyRnIxMXdhMmFnZGF1TkdTT2ViYm83MWtMK2JXRGRWT21tUmZtdWRtQUNJZlIwMFFLdmlyUVBtU3JDQk9kUE9aZzF6U1NyRER4QjZacVVycnJBMTNTOHNyeTBqV1ZuUDdDSi83MWtnQjFQYk54MXlqak9RYmUxS0o2dk1CczFhalc4U0hpVi9LdUczd0xXUHNndzMvMFhicENLWmxqU051ckFiZnl5TmxJTzRlQm91OGR3NGNONTJyZDVQdzdTVVhVWE9ZcHU1a1Bva3VjTDliaTQvRWZjc3J5MGpXVm5QN0NKLzcxa2dCMVBiK2VERVFzMlpCc0FaYVI5dTF5aG1aaXB4V0hzVVZtTENOVEc4TXpSckRHSEdsOEVpOG45aE1VaVU5YkIzeEtiV0ZnK3hUZTJjS09FZHdpNG90enRLQ3l5dkxTTlpXYy9zSW4vdldTQUhVOXBaaGpxb3FSWU11L3J2Qk9lODRFbDFnSUZBZjNSWUhsWTNnNmlETWRJRGtJK21GOGkzcXF2eUoxWWpBRVRXNW5STkNxc2pIaDV5bGpyY2VCMklZK2FqTEs4dEkxbFp6K3dpZis5WklBZFQydzM1MWYxQk5UcktidkRleVZGZEJ5MTVCckNCVmM0OEN1eEZQZUZKMzZLZmV3bFRlU0QwN3I5UHdIMnJ4bzQrNkVSbzQyY2hYQ1VQME9taVc3OUM2Uk9GTzRKSkFhS0xJZTB6L3pwRDFwRnl3RFBDNTZ5cTJRL1VadVRHUzJRekRXTlhqVXJ4VW5BNTVxbG9JOGdkT1FZTmMwa3F3dzhRZW1hbEs2NndOZDB1T2srRFlyZ1ZnSHZkbXIwQkQ4YUU5NFoxQUNaZ1pvTVZBUTNkSXViQmxuVXBiNW04dlEzcUdEbG1oZ2VJWjRGN0xLOHRJMWxaeit3aWYrOVpJQWRUMk80Tm0zT0RkbU1wYmZQL01wY3hqWTFIZ0xrazZTWi85RDBZdGRTMlhvcFNLelRaOXRCQmxYWHpRdEtOVTJDSVRWaW9uZHNhNGtZeEI1cUxlWHpuRFRyQU04TG5yS3JaRDlSbTVNWkxaRE1OWTFlTlN2RlNjRG5tcVdnanlCMDVCZzF6U1NyRER4QjZacVVycnJBMTNTNnZrRzg0WUJXbEx2NXJhN2laSDlSZXdEUEM1NnlxMlEvVVp1VEdTMlF6RGt6QTcwUWsxN1JrNzladUg3dWF5cytYNTY1Q0lRbmNEVzVLZlhVWkxPbllLVjY2NFpsbjhQQU5xbi91Ylh5clJ6MXBPL2JwZnpzeno3NHdLZzd3TXYyWUN2MXV6Nk9zNFFZNlV1Q0J4VUExMExqOS9aUTBPc3dQWCtxamNtRUJ5OTQzNDREMGhtZlUwMXpKSFhKV3NwUjNpNTEwSGt0WjRyeFZTKytLZFJlMXpjWUF4SmFkOHpETTM3TWprbHBoL2xSQXlmYnJhWWVKNlJyVW90RjhiWHN3V09JdEdMZHBvUysrKy9LQzEzUTArbisvaFloRU5NYm00dnFQcE5JMTJjSm1Ld0ZzTFVTMVJTS0FOd1FlLzdJcVRGSlhLVVJGUnByWjczNHBwZkh3ejlaaFc4VlU4WG9VbWZjcXFWMWt4dWtJczFxRjE4S0tzbjlpSlJvWnU5NnBadC9LTDlXbDZYVEZlV2tpV0lpemxHdC9EYVREL2pDbWZsaGs4ZzI0WHJGcjExd2EyYWdkYXVOR1NPZWJibzcxa0wrYldEZFZPbW1SZm11ZG1BQ0lmUjAwUUt2aXJRUG1TckNCT2RQT1pnMXpTU3JERHhCNlpxVXJyckExM1M4Q29JZHR0UmpFbndtb1FtcFVjTDVDQ3B4ZE4wb2Ric2dVeWlBckQrVlJ6OURNcHBMc0ZueGZxSDR0bFdCQnFxamhnZmZzelpndVhCOEFpWEltazg1NFFxVGRiSnBJV0hvY2JsNmI5N1JORUZWTWdkckhWNUV0S01aVlZ3YzYra3NuazNQZCtIejNJSEMwN0hnQ284TzV3MVJUd3NVSUpYQnZTSkdUQjZxNS9qN2NjMzVRd0dEWXpidERYN055Vy9CbU5aTllXZUV6Mjh5VUxFWmY3TDlKcnEzS0lZU2MyQ3lEME1mTDBRd1ZVd3Y5R09WdkZ3OWNpN0ZBTUpFN3hzWGpUT0gzR3RyTi9pT0gzTFJFbGpXZUFMOTVRSUlNSzdjVVVMaVAvZ0w0cnczNTFmMUJOVHJLYnZEZXlWRmRCeTE1QnJDQlZjNDhDdXhGUGVGSjM2S2VzUDhXVndiR29vV0hrYk1HK1d0VFV3S0wrTjBVM3E3OXdmcEVmR3VMMjVaVVFNbjI2Mm1IaWVrYTFLTFJmRzE1YmpJUDJQWHBwRmsvTExKK2xuZnh6anBHZFVkakQreDFhSXg0WDZ6Z3pmSmtSTnpaUUEra0UwdGt3VmNUdTk5QVZVeUIyc2RYa1Mwb3hsVlhCenI2U080Tm0zT0RkbU1wYmZQL01wY3hqWTFIZ0xrazZTWi85RDBZdGRTMlhvcFNLelRaOXRCQmxYWHpRdEtOVTJDSVRWaW9uZHNhNGtZeEI1cUxlWHpuRFRyQU04TG5yS3JaRDlSbTVNWkxaRE1NMWlPNWF1aDFzR1N6QzY2M3JHeHdSVnZHU25KbDNZVmtIRTZ6RDEvVm11ditSYVBpUE5ZYVR0bGVaYUd4Z21mSU5xRm5FcGZUTy83SjJOb1czN3NxUjdONmJ2YlFrZlJDWmhqOEdqTStWZGMyUGRPc2pzUU9ZM1lQSXhLek92N0JEL0lyd0xXNVczZWdjbWgrRUNYNEdKYlRMNFpnVWE0V29Hc3VrMGd5ZUhHVWFHaWs2alozblZyVEF6bW5iQnQ5NnNzSVVsQ1lSNTFwb0lTVlFZbXFpVm81WWVDNzM3eXNoc3JKd3hDak1qT0FidjdNU1ZWVnpOV1J6KzlwT2Z0bWlhandCUXV4NjNkS2FpTmVVdkdGdG5FeGZlZzVzN2tPajhxR3FvWXJTMGdmUEpQZW9ERGdXd3lrZmpDZzNwbkhrWCtSb21ZckNRQ1Awb1Z1bnJIN0dMSVVxTzZHUUswYUd6UW1BVThhb0FLMUFuR0pCVmt5OGpMMzRTZ2hFOFdkUHFZMnFWd3pQc1I3M21vNmtDUVZQcC9IeW83cUd2LzZmMWhIcGs2aXRPdzgwUW5rR0VUNVBxUDQ1VlVMQ0YrTjBSVnJlQVZJTHBpMDhBTG9YWVFkcXY0aWFEU2cvTjE5ZEY1ZEtJVE9KM1lDNHoxUGVONGMrRTFtQWZsQlV0cFlyUWxpNVdTR1E1czRiWG5CVTVtWkQwaUJDYlN2VWxyTVRtZjEwRFB4M3ZuQ3Fia0RtOCtkOWZ2eGpvcnQ5Q3hCMHhSNjBDS2JYRlU5SlNtbGNzaks5K2dSYkN2dmpVSjhDbFY1a29DUHI5aUxPKzV3bVR5d1lLQ0lQR2pMWlkwWmcrdkpjSCtBeXlxSkU0RkJGWjBmdnUvaFF1bnRUQTFSaDI5MnpsMkNyTXg5cmdxSWdCOW9uSzB1M0t1R3FyVW13cFg0UmsxQ0Y3OUdoaVRZK0VVWFh2VlZGSW9zY2crUm16NE5QVnFIbVB2b3ZFT1JMMGZNa3hMK2RLV3E4S2FOWWU2MjZjRjdGeFZLcDU2ZytINWU0LzllU1BkcVp6Zm5YMnY5MEdYcVBFYm96cFFtcHlXTlU1V1lIbDJuWGdOZlAvbEFVSTJ1MVVML3dJekEyZHBNRlYzRjZqK2RqamsvL3BwUjFuUTRyYmlMTys1d21UeXdZS0NJUEdqTFpZMGIrd2VvNUhpdlV5T2RDZ3k2UXN3Y2xZYkt3WWpFMnU5VzY0UU5vaHZNRmh0YjJVQjRnVnJuS3hEVTN0VUlqY1FBRGhYN0JRYUxPRjdYMFBsNThYdmlvL240cXd2WjFWSksybWFoZG52dGJITWFleERHMngzYkRXZGhSQk5EMlRUY3dNNms2Q1NYZElBZWhsM1g2ZS8wNVJBNmRvVm5vNXpvWjVVUjZOQWxFNEJXUFFWL1dCTE1SZWZvcDJhZThlaDB6eVk2eUtQWG5RM2FjZDNGSDJsWVVkWURCdVk0eTVINXd3R2M5Y3Bsc3BNY2NHM01zWDI2SUxFSW9OTmhHSWhCbHVyRmZYRnBlOVdSVkZydUpVSHlWZnNwVEJiQmg5MGprait5djhRYXdTTTNIWEtPTTVCdDdVb25xOHdHelZxUDFwRDgyVjlIbzFtRzF5R2dDbEhUYVVqa2psTXZjY2tFbjcwRGhDV3IveGEvTVRXNjVDL3lnbzVvWEYwUHduNithdjI5eStvQ2VwaDJreWxycHVBelphRE1UZStnNUJoQXUwUDdQc2lSSHFiVGYrQXVsR3hFUFhTaEVoZEs1aXMyMTlxRGRkKytqaWV2VGlmaFlyWU5sMCtlRFNqUVd1SWMrdTVJeU03MFNQbENPa2EyRWFWYjV2YkdXWG9KYVMrQWxYTm9FNlN6alh4Znc2WldJY2p1ZUZ1eDkxQW5ISG1BRDF0SDVram5BeUp1MHI2eW1aZHJXSm13bk5JWkFEbzRjaEsrUXV0d05yU1hrN2tZZGlOSklpK3p4MlJHUnJnbW53Smlybmw5dERjN0UzUlNnbXJxRVpmditvbHg1bVljV2d3SGNORS92Vk94Z1piVGh6WXErQ1hTbEgxdUZZK2REVGJQdklIdU1meHpyQjNVYWZrV2lSZ2VpZDRreG1NYnVodnlYdUc4WDB2ZnhrNmNJam1ScVhJUExxWFJzbXVPQVlOdGtlS0xSMUtMOS9kNjdLbkEycHVBNUdHT0ZrYXliYmlLQ0dYOFFMaTAyc0o3TGJSWVZ4eWdyWEczWXBBWkR3aVQ3WWRaM3pkNmxuQkJWMUY0aWY5VzZCSCs2enZFcDArWDUzU05qVjhVSnQ2SjFzVTJCTXFGV0dJRFB4Y0t3emxsV0Z4bEx4U01kNkcraXQwQkVheUIwWDVmN2VWcy8vYkxnaGZpUVhzbHlxL3dKZXRDa0F5R05MdTN5LzlUSGs0Q3AyU1lBa3NzdzJ4Ym1jZ24rYXBORmlJaWJ0ZkFyTjRoOGJxRXoxRXhvQVlnUElzMXo2bVBHblFZVWl4RGRIWDBoMGIybFdKaTI2ZkxGT1ZJM3N4MUdtbXpRLzVYMDFkSnJMMFQyallGVll3akduVUY3L211bzRrQ3NKZUcyVE40dGY1bGU0ZVV4cUhGMWVKN1dhS29JcUpmLzNEU1d1Z2h2a0M4S2tuTnY5MjZ1L3g3Q3RjcGpTRHptbFlTRlQycGtzMGRzQk5SZjU5MllQL1gwMDJOTFNyV084YllyOGRoc3hNcDE2ODgvYkR0MXVlMXBWN3JHVFlTQmQxT1BBV0F5eXI1dGhQRFUvS0ZoSlFiN1RURmlxUFhPUWdMRmIwTVZlbkNnaFRndE9pQzVSdlRKSGFtaGQ5QVpPSStWdTYrWGp4M0ltUmk2OWRaYVNPN0t3MnJpc0U2OGxPaUlzQ0NqZnJzMzkrMjVtZUliZUxSOHA0Vlg1L0R2WjVDZXlGTHh6b3lSeEh5Mmt6R1NRUTFnS0lmY0dZYXM5OVg5ZHIxQ3gxQ2ZpZlA0aE9xbmIyek9hOVM3REh0bXlXL29lSktHNndJYVVSdXJMRzltcVdpMTRHOVVMK1FqU3EydlpRYTJPTjlqbGt4MlFqbmlJdzEzcGxZakVXZmxxd1hWbmRPbVNETTFqN0FoSktqUVY0elB2Q3hWak5mSDQrd1Bwc083RW1vdmZNQlpiTzZuRGVNOG01d3JnOGRZZ05pZ2Nlek1Yb01FK1IyczlybFEzaFF5ZmNqTGpLdjRGViszRWdZODRFQThUbEZSSXRCelUzLzdsd004MlBZdHY4Y1dFS0c5OFBpK041ZTRreHJORmtOejZaMkIzeUtsYmltTkZUcHJ6ZHppZkZVMk03RkdVSjArWC9yZkJBVHpRQVRkSlpFK3h6ZFVYSEM0enRPNC9lUDJsbG1yRTA5T0xuTXFYRzRvWVMxMTdNOGpJUiszM3dDS1JYejgzN3RFQngxUGwzdkl2b2NQamR1aFdHbGVuUzQ5Vm05eGkwclRUVXhGT2NEK0N3cFZ4a0hNTlE0dmVlQkovOEhKWVQ0Ynhub0lpdTZXa1Q0K2VyUzVHV0FxRmpicFZ0aUR6YU41RnZ6UWM3RUlNVnJ6eURrSXNOVjRBa1pVRVhsRUMvdjhyQnkxZWZQV1M5ak4wYUV6T0lObFRxblFjd1RoSlMyZVhIRGhqQXp3WHJ4TkUzakF1Wm5yMW9VY251Uitybm9OK0xlZWQ2cDFOdUlGVDRDUnoxbEw4Vy9odDd1NXFwN3ZmRWozU0M1VW5pZVhVZndnUG55bVg2Ti9sYUU4eWVMTG53UGNsOExXSTMxZFpiT3MwZ09YTk5SditjNW11RHpGVnVsSWtBYXRNczlPU2RGa1JPWjdac3lxSGxVVXNUc2QrUDlBeEorUUFqbStRMkpKVGYyckRaYVJKbGRCSDZlbGkvaW5VYXRoRWtWcUhqcTlKWVgveGM4U3NTU25YQVpTcVc0bUI2bzd6ejVoOFZpcFlueWFDRVczTWl1TGpLNmxENURTNm85anpWbnZNRUw1UFluMjJ3TFhtQ0RTRWlzbHRZL3orRGdHWDVVczJuZUo2cnU0MWdzcElUdFRYNEk1c1lSM29YZ1dlLzRnNU0wSkJoRWhUVndsV1EyQjREdkxlVHFVa3VXZFlmKzkzZnpxUUZEWi9jYWdEbFBUWDNJcGJEU1BUYjlJTTlXeWhER2NmVForM3c3bzdKV2hOK2Z6ZTNNRUhLSDFlaEJDeEYwbm0vTWs2b1laZFpXSVltWUVSemJaZnJTWHd6VGJaQXAxaFFZcXBDbHM0cnF4UDRLVWpMeGJUcmZ3alMxUlU0eFREcGNTU3g2enhVd0VHNzcvaTAyR2czelZTVXdyQllZL2EvTmVZTzlkN1lDMDFMQ1VTbzhubWprZVgxODFqWmFZM2V2YWhTSFlLZ05qanFjYzNMTFFqTiswVU0vVERacitkUW44dnM1eitJaGVRYXJWZzNGWjBiVnhPNEVIV05rbWF6dnFFNDRKQnBidHVjV0cyNmVOL0xiQ0FPTy8zMmMzUUpJT2gydEZ2V3FFOTlXbGtqQmxCcHJrSk9TN1lIRENCTVlNMUM1OXBlOWNtZDlzc1JvNHdxYkZ6dWdPSlA2TExmQjNoWFBRei9ncUpIcFhlR002UjViN2s5ejM0K281Zm04c3F1bzlzNEgwTGVmR1ZFbjFwRFlYMDFzeWdyQVNXdXV5S2NXNFAzUnRod3dlQmVsb21zUjVzVEVpRXp1WEI2d3cxMmdvRjJpSFJ0RkJtTC9aQUF0M01pRmRsS09yVmt6dEZJblNnVmtRd0hvajJJWWpvOXVRZ0ZkUmRRODBRbmtHRVQ1UHFQNDVWVUxDRitNYXFlbi84L2VrSkowRzZ5dE93dnIrcEtScEtNYjVaZm9uUE81ZUV6UEwwdz09JylcIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIlNob3dcIixcInBhdGhcIjpcIlNob3dcIixcInJ1bGVcIjpcInZhciBwcmVzID0gW11cXHJcXG52YXIgcmVzID0gW11cXHJcXG52YXIgeyBnZW5lcmF0ZV9saXN0LCBnZW5lcmF0ZV9kb3dubG9hZF9saXN0IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9MaXN0JylcXHJcXG52YXIgeyBmaXhfdGFiIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9GaXhUYWInKVxcclxcblxcclxcbi8vIOmhtumDqOWbuuWumuagj1xcclxcbmZpeF90YWIocHJlcylcXHJcXG5cXHJcXG4vLyDnmbvlvZXlkI7miY3kvJrmmL7npLrmlofku7blpLkv5paH5Lu25YiX6KGoXFxyXFxuaWYgKCEoZ2V0SXRlbSgnYWNjZXNzX3Rva2VuJywgJycpID09ICcnKSkge1xcclxcbiAgICAvLyBsZXQgcGF0aHNfa2luZF9wcmUgPSBbJ3BhdGhzJywgJ3NoX3BhdGhzJywgJ2Rvd25sb2FkX3BhdGhzJ11cXHJcXG4gICAgbGV0IHBhdGhzX2tpbmRfcHJlID0gWydwYXRocycsICdzaF9wYXRocyddXFxyXFxuICAgIGxldCBwYXRoc19raW5kID0gcGF0aHNfa2luZF9wcmVbZ2V0TXlWYXIoJ3Nob3dfaW5kZXgnLCAnMCcpXVxcclxcblxcclxcbiAgICAvLyAvLyDliJfooajmoI9cXHJcXG4gICAgLy8gaWYgKGdldE15VmFyKCdzaG93X2luZGV4JywgJzAnKSA9PSAnMScpIHtcXHJcXG4gICAgLy8gICAgIGdlbmVyYXRlX290aGVyX3NoYXJlX2xpc3QocmVzLCBcXFwic2hfcGF0aHNcXFwiKVxcclxcbiAgICAvLyB9IGVsc2Uge1xcclxcbiAgICAvLyAgICAgZ2VuZXJhdGVfbGlzdChyZXMsIHBhdGhzX2tpbmQpXFxyXFxuICAgIC8vIH1cXHJcXG4gICAgaWYgKGdldE15VmFyKCdzaG93X2luZGV4JywgJzAnKSAhPSAnMicpIHtcXHJcXG4gICAgICAgIGdlbmVyYXRlX2xpc3QocmVzLCBwYXRoc19raW5kKVxcclxcbiAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgZ2VuZXJhdGVfZG93bmxvYWRfbGlzdChyZXMpXFxyXFxuXFxyXFxuICAgIH1cXHJcXG59XFxyXFxuXFxyXFxuLy8g6LW36aOeflxcclxcbnNldFJlc3VsdChyZXMpXFxyXFxuXCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJQYXRoXCIsXCJwYXRoXCI6XCJQYXRoXCIsXCJydWxlXCI6XCJ2YXIgeyBzdHlsZV9jb2xvciB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvRGVidWcnKVxcclxcbi8vIOeUn+aIkOmmlumhtei3r+W+hCjmjInpkq7moLflvI8pXFxyXFxuZnVuY3Rpb24gZ2VuZXJhdGVfcGF0aHMocmVzLCBwYXRoc19raW5kLCBzZWFyY2hfcm9vdF9wYXRoKSB7XFxyXFxuICAgIC8vIOiOt+WPluW9k+WJjeeahOi3r+W+hFxcclxcbiAgICBsZXQgcGF0aHMgPSBzdG9yYWdlMC5nZXRNeVZhcihwYXRoc19raW5kLCBbXFxyXFxuICAgICAgICB7XFxyXFxuICAgICAgICAgICAgaWQ6ICcnLFxcclxcbiAgICAgICAgICAgIG5hbWU6ICdIb21lJyxcXHJcXG4gICAgICAgIH0sXFxyXFxuICAgIF0pXFxyXFxuXFxyXFxuICAgIC8vIOaehOW7uui3r+W+hOeahG5hbWXlsZ7mgKfmlbDnu4TvvIznlKjkuo7orr7nva7moLnot6/lvoRcXHJcXG4gICAgbGV0IHBhdGhzX25hbWVzID0gW11cXHJcXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXRocy5sZW5ndGg7IGkrKykge1xcclxcbiAgICAgICAgcGF0aHNfbmFtZXMucHVzaChwYXRoc1tpXS5uYW1lKVxcclxcbiAgICB9XFxyXFxuXFxyXFxuICAgIC8vIOi3r+W+hOaMiemSruS4tOaXtuaVsOe7hFxcclxcbiAgICBsZXQgdF9yZXMgPSBbXVxcclxcblxcclxcbiAgICAvLyDot6/lvoTku6XmjInpkq7mlrnlvI/mmL7npLpcXHJcXG4gICAgcGF0aHMuZm9yRWFjaCgoaXRlbSwgaSkgPT4ge1xcclxcbiAgICAgICAgaWYgKGkgPj0gcGF0aHNfbmFtZXMuaW5kZXhPZihzZWFyY2hfcm9vdF9wYXRoKSkge1xcclxcbiAgICAgICAgICAgIGxldCBzaG93X2luZGV4ID0gZ2V0TXlWYXIoJ3Nob3dfaW5kZXgnLCAnMCcpXFxyXFxuICAgICAgICAgICAgbGV0IGhvbWVfY2F0ZWdvcnlfaW5kZXggPSBnZXRNeVZhcignaG9tZV9jYXRlZ29yeV9pbmRleCcsICcwJylcXHJcXG4gICAgICAgICAgICBsZXQgdXJsID0gJydcXHJcXG5cXHJcXG4gICAgICAgICAgICAvLyDmt7vliqDliIbpmpTnrKZcXHJcXG4gICAgICAgICAgICBpZiAoaG9tZV9jYXRlZ29yeV9pbmRleCA9PSAnMCcpIHtcXHJcXG4gICAgICAgICAgICAgICAgdF9yZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogJy8nLFxcclxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICdmbGV4X2J1dHRvbicsXFxyXFxuICAgICAgICAgICAgICAgICAgICB1cmw6ICd0b2FzdDovL+S9oOaYr+S4jeaYr+eCuemUmeS6hu+8nycsXFxyXFxuICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgfVxcclxcblxcclxcbiAgICAgICAgICAgIHN3aXRjaCAoc2hvd19pbmRleCkge1xcclxcbiAgICAgICAgICAgICAgICBjYXNlICcxJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgIHVybCA9ICQoKS5sYXp5UnVsZShcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAocGF0aHMsIGksIHBhdGhzX2tpbmQpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIocGF0aHNfa2luZCwgcGF0aHMuc2xpY2UoMCwgaSArIDEpKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGhzLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGksXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHNfa2luZFxcclxcbiAgICAgICAgICAgICAgICAgICAgKVxcclxcbiAgICAgICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcXHJcXG4gICAgICAgICAgICAgICAgICAgIGlmIChob21lX2NhdGVnb3J5X2luZGV4ID09ICcwJykge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHVybCA9ICQoKS5sYXp5UnVsZShcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBhdGhzLCBpLCBwYXRoc19raW5kKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcihwYXRoc19raW5kLCBwYXRocy5zbGljZSgwLCBpICsgMSkpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGhzLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoc19raW5kXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgKVxcclxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm5cXHJcXG4gICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICB9XFxyXFxuXFxyXFxuICAgICAgICAgICAgLy8g5re75Yqg6Lev5b6EXFxyXFxuICAgICAgICAgICAgdF9yZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgICAgIC8vIHRpdGxlOiBpdGVtLm5hbWUsXFxyXFxuICAgICAgICAgICAgICAgIHRpdGxlOiBzdHlsZV9jb2xvcihpdGVtLm5hbWUsICcjMjRCQjc1JywgJ3N0cm9uZycpLFxcclxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ2ZsZXhfYnV0dG9uJyxcXHJcXG4gICAgICAgICAgICAgICAgdXJsOiB1cmwsXFxyXFxuICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgIH1cXHJcXG4gICAgfSlcXHJcXG5cXHJcXG4gICAgdF9yZXMuc2hpZnQoKVxcclxcblxcclxcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRfcmVzLmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgICAgICByZXMucHVzaCh0X3Jlc1tpXSlcXHJcXG4gICAgfVxcclxcbn1cXHJcXG5cXHJcXG5mdW5jdGlvbiBnZW5lcmF0ZV9ob21lX2NhdGVnb3J5X3BhdGhzKHJlcykge1xcclxcbiAgICBsZXQgaG9tZV9jYXRnZWdvcnlfYXJyID0gWyfmiYDmnInmlofku7YnLCAn5oiR55qE5YiG5LqrJywgJ+WbnuaUtuermSddXFxyXFxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaG9tZV9jYXRnZWdvcnlfYXJyLmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgICAgICBsZXQgaG9tZV9jYXRlZ29yeV9pbmRleCA9IGdldE15VmFyKCdob21lX2NhdGVnb3J5X2luZGV4JywgJzAnKVxcclxcbiAgICAgICAgbGV0IHVybCA9ICQoKS5sYXp5UnVsZSgoaSkgPT4ge1xcclxcbiAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgIHB1dE15VmFyKCdob21lX2NhdGVnb3J5X2luZGV4JywgaSlcXHJcXG4gICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcclxcbiAgICAgICAgfSwgaSlcXHJcXG5cXHJcXG4gICAgICAgIGlmIChob21lX2NhdGVnb3J5X2luZGV4ID09IGkpIHtcXHJcXG4gICAgICAgICAgICBpZiAoaSA9PSAxKSB7XFxyXFxuICAgICAgICAgICAgICAgIHVybCA9ICQoWyfmkqTplIDmiYDmnInliIbkuqsnXSwgMSwgJ+ivt+mAieaLqeaTjeS9nCcpLnNlbGVjdCgoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICBpZiAoaW5wdXQgPT0gJ+aSpOmUgOaJgOacieWIhuS6qycpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgeyBzaGFyZV9lbXB0eSB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBzaGFyZV9lbXB0eSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/lt7Lnu4/mkqTplIDmiYDmnInliIbkuqvvvIEnXFxyXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXHJcXG4gICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGkgPT0gMikge1xcclxcbiAgICAgICAgICAgICAgICB1cmwgPSAkKFsn5riF56m65Zue5pS256uZJ10sIDEsICfor7fpgInmi6nmk43kvZwnKS5zZWxlY3QoKCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlucHV0ID09ICfmuIXnqbrlm57mlLbnq5knKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlybSh7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn5bCP56iL5bqP5o+Q56S6JywgLy8g5by556qX5qCH6aKYXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICfmmK/lkKbmuIXnqbrlm57mlLbnq5knLCAvLyDlvLnnqpflhoXlrrlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlybTogJC50b1N0cmluZygoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IHRyYXNoX2VtcHR5IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhc2hfZW1wdHkoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+W3sue7j+a4heepuuWbnuaUtuermSdcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbDogJC50b1N0cmluZygoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5Y+W5raI5riF56m65Zue5pS256uZJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICAgICAgdXJsID0gJCgnJywgJ+ivt+i+k+WFpeaWsOW7uuaWh+S7tuWkueWQjeWtlycpLmlucHV0KCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIGlmIChpbnB1dCkge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IGl0ZW1fYWRkX2ZvbGRlciB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtX2FkZF9mb2xkZXIoXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0TXlWYXIoJ3BhdGhzJywgW1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6ICcnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnSG9tZScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucG9wKCkuaWQsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgKVxcclxcbiAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgfVxcclxcbiAgICAgICAgfVxcclxcblxcclxcbiAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgIHRpdGxlOlxcclxcbiAgICAgICAgICAgICAgICBnZXRNeVZhcignaG9tZV9jYXRlZ29yeV9pbmRleCcsICcwJykgPT0gaVxcclxcbiAgICAgICAgICAgICAgICAgICAgPyBzdHlsZV9jb2xvcihob21lX2NhdGdlZ29yeV9hcnJbaV0sICcjRkY2MzQ3JywgJ3N0cm9uZycpXFxyXFxuICAgICAgICAgICAgICAgICAgICA6IGhvbWVfY2F0Z2Vnb3J5X2FycltpXSxcXHJcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLFxcclxcbiAgICAgICAgICAgIHVybDogdXJsLFxcclxcbiAgICAgICAgfSlcXHJcXG4gICAgfVxcclxcbn1cXHJcXG5cXHJcXG5mdW5jdGlvbiBnZW5lcmF0ZV9vdGhlcl9zaGFyZV9wYXRocyhyZXMsIG90aGVyX3NoYXJlX2l0ZW1zKSB7XFxyXFxuICAgIHZhciB7IHNoYXJlX290aGVyX3Jvb3RfaW5mbyB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgaWYgKG90aGVyX3NoYXJlX2l0ZW1zLmxlbmd0aCA8PSAwKSB7XFxyXFxuICAgICAgICBzZXRJdGVtKCdzaGFyZV9pZCcsICcnKVxcclxcbiAgICAgICAgc2V0SXRlbSgnc2hhcmVfcGFzc19jb2RlX3Rva2VuJywgJycpXFxyXFxuICAgIH0gZWxzZSB7XFxyXFxuICAgICAgICAvLyDmnInliIbkuqvpk77mjqXvvIzkvYbmmK/msqHmnIlzaGFyZV9pZOWSjHNoYXJlX3Bhc3NfY29kZV90b2tlbu+8jOWwsem7mOiupOiuv+mXruesrOS4gOS4quiOt+WPllxcclxcbiAgICAgICAgaWYgKGdldEl0ZW0oJ3NoYXJlX2lkJywgJycpID09ICcnIHx8IGdldEl0ZW0oJ3NoYXJlX3Bhc3NfY29kZV90b2tlbicsICcnKSA9PSAnJykge1xcclxcbiAgICAgICAgICAgIHNoYXJlX290aGVyX3Jvb3RfaW5mbyhvdGhlcl9zaGFyZV9pdGVtc1swXS51cmwsIG90aGVyX3NoYXJlX2l0ZW1zWzBdLnBhc3N3ZClcXHJcXG4gICAgICAgIH1cXHJcXG4gICAgfVxcclxcblxcclxcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG90aGVyX3NoYXJlX2l0ZW1zLmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6XFxyXFxuICAgICAgICAgICAgICAgIGdldE15VmFyKCdzaGFyZV9zaG93X2luZGV4JywgJzAnKSA9PSBpXFxyXFxuICAgICAgICAgICAgICAgICAgICA/IHN0eWxlX2NvbG9yKG90aGVyX3NoYXJlX2l0ZW1zW2ldLm5hbWUsICcjRkY2MzQ3JywgJ3N0cm9uZycpXFxyXFxuICAgICAgICAgICAgICAgICAgICA6IG90aGVyX3NoYXJlX2l0ZW1zW2ldLm5hbWUsXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJyxcXHJcXG4gICAgICAgICAgICB1cmw6ICQoKS5sYXp5UnVsZShcXHJcXG4gICAgICAgICAgICAgICAgKGksIG90aGVyX3NoYXJlX2l0ZW1zKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgIHZhciB7IHNoYXJlX290aGVyX3Jvb3RfaW5mbyB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdzaF9wYXRocycsIFtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiAnJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ1NoYXJlSG9tZScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgICAgIF0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAvLyDngrnlh7vojrflj5ZzaGFyZV9pZOWSjHNoYXJlX3Bhc3NfY29kZV90b2tlblxcclxcbiAgICAgICAgICAgICAgICAgICAgc2hhcmVfb3RoZXJfcm9vdF9pbmZvKG90aGVyX3NoYXJlX2l0ZW1zW2ldLnVybClcXHJcXG5cXHJcXG4gICAgICAgICAgICAgICAgICAgIGlmIChnZXRNeVZhcignc2hhcmVfc2hvd19pbmRleCcsICcwJykgPT0gaSkge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIOW8ueWHuuaYr+WQpui9rOWtmOaVtOS4quWIhuS6q++8jOWmguaenOmHjeWkjeeCueWHu+aMiemSrlxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpcm0oe1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+Wwj+eoi+W6j+aPkOekuicsIC8vIOW8ueeql+agh+mimFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAn5piv5ZCm6L2s5a2Y5pW05Liq5YiG5LqrJywgLy8g5by556qX5YaF5a65XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpcm06ICQudG9TdHJpbmcoKCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHsgZ2V0X2l0ZW1zX2xpc3QsIHNoYXJlX290aGVyX3NhdmUgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgcGF0aHMgPSBzdG9yYWdlMC5nZXRNeVZhcignc2hfcGF0aHMnLCBbXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogJycsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdIb21lJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBsaXN0ID0gZ2V0X2l0ZW1zX2xpc3QocGF0aHNbcGF0aHMubGVuZ3RoIC0gMV0uaWQpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyDovazlrZhcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoYXJlX290aGVyX3NhdmUoW2xpc3QuZmlsZXNbMF0uaWRdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+i9rOWtmOaVtOS4quWIhuS6q+aIkOWKnydcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksIC8vIOehruWumuWQjuaJp+ihjFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWw6ICQudG9TdHJpbmcoKCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+WPlua2iOi9rOWtmOaTjeS9nCdcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksIC8vIOWPlua2iOWQjuaJp+ihjFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1dE15VmFyKCdzaGFyZV9zaG93X2luZGV4JywgaSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgIGksXFxyXFxuICAgICAgICAgICAgICAgIG90aGVyX3NoYXJlX2l0ZW1zXFxyXFxuICAgICAgICAgICAgKSxcXHJcXG4gICAgICAgIH0pXFxyXFxuICAgIH1cXHJcXG59XFxyXFxuXFxyXFxuZnVuY3Rpb24gZ2VuZXJhdGVfZG93bmxvYWRfcGF0aHMocmVzKSB7XFxyXFxuICAgIC8vIOa3u+WKoOS6keS4i+i9veOAgeS6keS4i+i9veaXpeW/l+OAgea4heepuuaXpeW/l1xcclxcbiAgICBsZXQgZG93bmxvYWRfY2F0Z2Vnb3J5X2FyciA9IFsn5re75Yqg5LqR5LiL6L29JywgJ+S6keS7u+WKoeWIl+ihqCcsICfmuIXnqbrkupHku7vliqHliJfooagnXVxcclxcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRvd25sb2FkX2NhdGdlZ29yeV9hcnIubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgIGxldCB1cmwgPSAkKCkubGF6eVJ1bGUoKGkpID0+IHtcXHJcXG4gICAgICAgICAgICBwdXRNeVZhcignZG93bmxvYWRfY2F0ZWdvcnlfaW5kZXgnLCBpKVxcclxcbiAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICB9LCBpKVxcclxcbiAgICAgICAgaWYgKGkgPT0gMikge1xcclxcbiAgICAgICAgICAgIHVybCA9ICQoJ+aYr+WQpua4heepuuS6keS7u+WKoeWIl+ihqO+8nycpLmNvbmZpcm0oKCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICBwdXRNeVZhcignZG93bmxvYWRfY2F0ZWdvcnlfaW5kZXgnLCAxKVxcclxcbiAgICAgICAgICAgICAgICAvLyBzdG9yYWdlMC5wdXRNeVZhcihcXFwiZG93bmxvYWRfdGFza19pZHNcXFwiLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgdmFyIHsgZG93bmxvYWRfY2xlYXIgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgIGRvd25sb2FkX2NsZWFyKClcXHJcXG4gICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgIH1cXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICB0aXRsZTpcXHJcXG4gICAgICAgICAgICAgICAgZ2V0TXlWYXIoJ2Rvd25sb2FkX2NhdGVnb3J5X2luZGV4JywgJzAnKSA9PSBpXFxyXFxuICAgICAgICAgICAgICAgICAgICA/IHN0eWxlX2NvbG9yKGRvd25sb2FkX2NhdGdlZ29yeV9hcnJbaV0sICcjRkY2MzQ3JywgJ3N0cm9uZycpXFxyXFxuICAgICAgICAgICAgICAgICAgICA6IGRvd25sb2FkX2NhdGdlZ29yeV9hcnJbaV0sXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJyxcXHJcXG4gICAgICAgICAgICB1cmw6IHVybCxcXHJcXG4gICAgICAgIH0pXFxyXFxuICAgIH1cXHJcXG59XFxyXFxuXFxyXFxuJC5leHBvcnRzID0ge1xcclxcbiAgICBnZW5lcmF0ZV9wYXRocyxcXHJcXG4gICAgZ2VuZXJhdGVfb3RoZXJfc2hhcmVfcGF0aHMsXFxyXFxuICAgIGdlbmVyYXRlX2hvbWVfY2F0ZWdvcnlfcGF0aHMsXFxyXFxuICAgIGdlbmVyYXRlX2Rvd25sb2FkX3BhdGhzLFxcclxcbiAgICAvLyBnZW5lcmF0ZV9zZWFyY2hfcGF0aHMsXFxyXFxufVxcclxcblwifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwiU2VhcmNoQmFyQW5kQ2F0ZWdvcnlcIixcInBhdGhcIjpcIlNlYXJjaEJhckFuZENhdGVnb3J5XCIsXCJydWxlXCI6XCIvLyDmr4/ml6XkuIDlj6XnvJPlrZhcXHJcXG5mdW5jdGlvbiBzYXZlX2RheV9zYXlfY2FjaGUoKSB7XFxyXFxuICAgIGxldCBkYXlfc2F5X2NhY2hlID0ge31cXHJcXG4gICAgbGV0IGRheV9zYXlfaHRtbCA9IGZldGNoKCdodHRwczovL3YxLmhpdG9rb3RvLmNuJywge1xcclxcbiAgICAgICAgaGVhZGVyczoge1xcclxcbiAgICAgICAgICAgICdVc2VyLUFnZW50JzpcXHJcXG4gICAgICAgICAgICAgICAgJ01vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS8xMjIuMC4wLjAgU2FmYXJpLzUzNy4zNicsXFxyXFxuICAgICAgICB9LFxcclxcbiAgICB9KVxcclxcbiAgICBkYXlfc2F5X2h0bWwgPSBKU09OLnBhcnNlKGRheV9zYXlfaHRtbClcXHJcXG4gICAgZGF5X3NheV9jYWNoZVsnY29udGVudCddID0gZGF5X3NheV9odG1sWydoaXRva290byddXFxyXFxuICAgIGRheV9zYXlfY2FjaGVbJ3RpbWUnXSA9IE1hdGguZmxvb3IoRGF0ZS5ub3coKSAvIDEwMDApXFxyXFxuICAgIGdsb2JhbE1hcDAucHV0TXlWYXIoJ2RheXNheScsIGRheV9zYXlfY2FjaGUpXFxyXFxuICAgIHJldHVybiBkYXlfc2F5X2h0bWxbJ2hpdG9rb3RvJ11cXHJcXG59XFxyXFxuXFxyXFxuLy8g55Sf5oiQ5pCc57Si5qCPXFxyXFxuZnVuY3Rpb24gc2VhcmNoX2JhcihyZXMpIHtcXHJcXG4gICAgdmFyIHsgcGljX2hvbWUsIHBpY19zaGFyZSwgcGljX3JlY3ljbGUsIHBpY19saW5rIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9CYXNlNjRQaWMnKVxcclxcbiAgICB2YXIgeyBzdHlsZV9jb2xvciB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvRGVidWcnKVxcclxcbiAgICBsZXQgZGF5X3NheSA9ICcnXFxyXFxuICAgIHRyeSB7XFxyXFxuICAgICAgICBsZXQgZGF5X3NheV9jYWNoZSA9IHt9XFxyXFxuICAgICAgICBsZXQgZGF5X3RpbWUgPSAwXFxyXFxuICAgICAgICBpZiAoZ2xvYmFsTWFwMC5oYXNNeVZhcignZGF5c2F5JykpIHtcXHJcXG4gICAgICAgICAgICBkYXlfc2F5X2NhY2hlID0gZ2xvYmFsTWFwMC5nZXRNeVZhcignZGF5c2F5Jywge30pXFxyXFxuICAgICAgICAgICAgZGF5X3RpbWUgPSBkYXlfc2F5X2NhY2hlWyd0aW1lJ11cXHJcXG4gICAgICAgICAgICBpZiAoTWF0aC5mbG9vcihEYXRlLm5vdygpIC8gMTAwMCkgLSBkYXlfdGltZSA+PSAxMCkge1xcclxcbiAgICAgICAgICAgICAgICBkYXlfc2F5ID0gc2F2ZV9kYXlfc2F5X2NhY2hlKClcXHJcXG4gICAgICAgICAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgICAgICBkYXlfc2F5ID0gZGF5X3NheV9jYWNoZVsnY29udGVudCddXFxyXFxuICAgICAgICAgICAgfVxcclxcbiAgICAgICAgfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICBkYXlfc2F5ID0gc2F2ZV9kYXlfc2F5X2NhY2hlKClcXHJcXG4gICAgICAgIH1cXHJcXG4gICAgfSBjYXRjaCB7XFxyXFxuICAgICAgICBkYXlfc2F5ID0gJydcXHJcXG4gICAgfVxcclxcblxcclxcbiAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICB0aXRsZTogJ+aQnOe0oicsXFxyXFxuICAgICAgICBjb2xfdHlwZTogJ2lucHV0JyxcXHJcXG4gICAgICAgIGRlc2M6ICfwn6SWOiAnICsgZGF5X3NheSxcXHJcXG4gICAgICAgIHVybDogXFxcIidoaWtlcjovL3NlYXJjaD9zPScgKyBpbnB1dCArICcmcnVsZT1cXFwiICsgTVlfUlVMRS50aXRsZSArIFxcXCInXFxcIixcXHJcXG4gICAgICAgIC8vIGV4dHJhOiB7XFxyXFxuICAgICAgICAvLyAgICAgdGl0bGVWaXNpYmxlOiBmYWxzZSxcXHJcXG4gICAgICAgIC8vIH0sXFxyXFxuICAgICAgICAvLyBleHRyYTogeyBkZWZhdWx0VmFsdWU6ICcnICsgZGF5X3NheSB9LFxcclxcbiAgICAgICAgLy8gICAgIGV4dHJhOiB7XFxyXFxuICAgICAgICAvLyAgICAgICAgIHRpdGxlVmlzaWJsZTogZmFsc2UsXFxyXFxuICAgICAgICAvLyAgICAgICAgIG9uQ2hhbmdlOiBcXFwicHV0TXlWYXIoJ2hvbWVfaW5wdXQnLCBpbnB1dClcXFwiLFxcclxcbiAgICAgICAgLy8gICAgIH0sXFxyXFxuICAgIH0pXFxyXFxuXFxyXFxuICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgIHRpdGxlOiBnZXRNeVZhcignc2hvd19pbmRleCcsICcwJykgPT0gJzAnID8gc3R5bGVfY29sb3IoJ+S4u+mhtScsICcjRkY2OUI0JywgJ3N0cm9uZycpIDogJ+S4u+mhtScsXFxyXFxuICAgICAgICBjb2xfdHlwZTogJ2ljb25fNCcsXFxyXFxuICAgICAgICB1cmw6ICQoKS5sYXp5UnVsZSgoKSA9PiB7XFxyXFxuICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgcHV0TXlWYXIoJ3Nob3dfaW5kZXgnLCAnMCcpXFxyXFxuICAgICAgICAgICAgcHV0TXlWYXIoJ2hvbWVfY2F0ZWdvcnlfaW5kZXgnLCAnMCcpXFxyXFxuICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ3BhdGhzJywgW1xcclxcbiAgICAgICAgICAgICAgICB7XFxyXFxuICAgICAgICAgICAgICAgICAgICBpZDogJycsXFxyXFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnSG9tZScsXFxyXFxuICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgXSlcXHJcXG4gICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcclxcbiAgICAgICAgfSksXFxyXFxuICAgICAgICBwaWNfdXJsOiBwaWNfaG9tZSxcXHJcXG4gICAgfSlcXHJcXG5cXHJcXG4gICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgdGl0bGU6IGdldE15VmFyKCdzaG93X2luZGV4JywgJzAnKSA9PSAnMScgPyBzdHlsZV9jb2xvcign5YiG5LqrJywgJyNGRjY5QjQnLCAnc3Ryb25nJykgOiAn5YiG5LqrJyxcXHJcXG4gICAgICAgIGNvbF90eXBlOiAnaWNvbl80JyxcXHJcXG4gICAgICAgIHVybDogJCgpLmxhenlSdWxlKCgpID0+IHtcXHJcXG4gICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICBwdXRNeVZhcignc2hvd19pbmRleCcsICcxJylcXHJcXG4gICAgICAgICAgICBwdXRNeVZhcignc2hhcmVfaW5kZXhfc2hvdycsICcwJylcXHJcXG4gICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignc2hfcGF0aHMnLCBbXFxyXFxuICAgICAgICAgICAgICAgIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIGlkOiAnJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdTaGFyZUhvbWUnLFxcclxcbiAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgIF0pXFxyXFxuICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXHJcXG4gICAgICAgIH0pLFxcclxcbiAgICAgICAgcGljX3VybDogcGljX3NoYXJlLFxcclxcbiAgICB9KVxcclxcblxcclxcbiAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAvLyB0aXRsZTogJ+S6keS4i+i9vScsXFxyXFxuICAgICAgICB0aXRsZTogZ2V0TXlWYXIoJ3Nob3dfaW5kZXgnLCAnMCcpID09ICcyJyA/IHN0eWxlX2NvbG9yKCfkupHkuIvovb0nLCAnI0ZGNjlCNCcsICdzdHJvbmcnKSA6ICfkupHkuIvovb0nLFxcclxcbiAgICAgICAgY29sX3R5cGU6ICdpY29uXzQnLFxcclxcbiAgICAgICAgdXJsOiAkKCkubGF6eVJ1bGUoKCkgPT4ge1xcclxcbiAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgIHB1dE15VmFyKCdzaG93X2luZGV4JywgJzInKVxcclxcbiAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICB9KSxcXHJcXG4gICAgICAgIC8vIHVybDogJCgnJywgJ+i+k+WFpemTvuaOpScpLmlucHV0KCgpID0+IHtcXHJcXG4gICAgICAgIC8vICAgICAvLyByZXR1cm4gJ3Bpa3Bha2FwcDovL215cGlrcGFrLmNvbS94cGFuL21haW5fdGFiP3RhYj0xJmFkZF91cmw9JyArIGVuY29kZVVSSUNvbXBvbmVudChpbnB1dClcXHJcXG4gICAgICAgIC8vICAgICBjb25zdCB7ZG93bmxvYWRfYWRkfSA9ICQucmVxdWlyZShcXFwiaGlrZXI6Ly9wYWdlL0FQSVxcXCIpXFxyXFxuICAgICAgICAvLyAgICAgZG93bmxvYWRfYWRkKGlucHV0KVxcclxcbiAgICAgICAgLy8gICAgIHB1dE15VmFyKCdzaG93X2luZGV4JywgJzInKVxcclxcbiAgICAgICAgLy8gICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgIC8vICAgICByZXR1cm4gXFxcInRvYXN0Oi8v5bey57uP5re75Yqg77yM6ZyA6KaB562J5LiA5q615pe26Ze077yM5pyN5Yqh5Zmo5omN6IO95LiL6L295a6M5q+VXFxcIlxcclxcbiAgICAgICAgLy8gfSksXFxyXFxuICAgICAgICBwaWNfdXJsOiBwaWNfbGluayxcXHJcXG4gICAgfSlcXHJcXG5cXHJcXG4gICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgdGl0bGU6ICforr7nva4nLFxcclxcbiAgICAgICAgY29sX3R5cGU6ICdpY29uXzQnLFxcclxcbiAgICAgICAgdXJsOiAnaGlrZXI6Ly9wYWdlL090aGVyU2V0dGluZyNub0hpc3RvcnkjI25vUmVjb3JkSGlzdG9yeSMnLFxcclxcbiAgICAgICAgcGljX3VybDogcGljX3JlY3ljbGUsXFxyXFxuICAgIH0pXFxyXFxuXFxyXFxuICAgIC8vIHJlcy5wdXNoKHtcXHJcXG4gICAgLy8gICAgIHRpdGxlOiAn5pS55ZCNJyxcXHJcXG4gICAgLy8gICAgIGNvbF90eXBlOiAnaWNvbl80JyxcXHJcXG4gICAgLy8gICAgIHVybDogJCgpLmxhenlSdWxlKCgpPT57XFxyXFxuICAgIC8vICAgICAgICAgY29uc3Qge3Rlc3Rfd2Vidmlld30gPSAkLnJlcXVpcmUoXFxcImhpa2VyOi8vcGFnZS9UZXN0V2Vidmlld1xcXCIpXFxyXFxuICAgIC8vICAgICAgICAgdGVzdF93ZWJ2aWV3KClcXHJcXG4gICAgLy8gICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgIC8vICAgICB9KSxcXHJcXG4gICAgLy8gICAgIHBpY191cmw6IHBpY19yZWN5Y2xlLFxcclxcbiAgICAvLyB9KVxcclxcbn1cXHJcXG5cXHJcXG4vLyDmkJzntKLnu5PmnpzliJfooahcXHJcXG5mdW5jdGlvbiBzZWFyY2hfbGlzdChrZXlfd29yZCwgcmVzKSB7XFxyXFxuICAgIHZhciB7IGdldEV4dCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvTGlzdCcpXFxyXFxuICAgIHZhciB7IGdldF9pdGVtc19saXN0IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICBsZXQgbGlzdCA9IGdldF9pdGVtc19saXN0KCcqJylcXHJcXG4gICAgbGV0IGtleV93b3JkX3JlZ2V4ID0gbmV3IFJlZ0V4cCgnLio/JyArIGtleV93b3JkICsgJy4qPycsICdtZ2knKVxcclxcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QuZmlsZXMubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgIGlmIChsaXN0LmZpbGVzW2ldLm5hbWUubWF0Y2goa2V5X3dvcmRfcmVnZXgpKSB7XFxyXFxuICAgICAgICAgICAgdmFyIHVybCA9ICQoKS5sYXp5UnVsZShcXHJcXG4gICAgICAgICAgICAgICAgKGl0ZW0sIGV4dCwgYWNjZXNzX3Rva2VuKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICB2YXIgeyBnZXRfaXRlbV91cmwgfSA9ICQucmVxdWlyZShcXFwiaGlrZXI6Ly9wYWdlL0FQST9ydWxlPeeyieWmueeIsVBpa1Bha1xcXCIpXFxyXFxuICAgICAgICAgICAgICAgICAgICBsZXQgcmVzID0gZ2V0X2l0ZW1fdXJsKGl0ZW0uaWQsIGFjY2Vzc190b2tlbikgICAgICBcXHJcXG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXMubWVkaWFzLmxlbmd0aCA9PSAwKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlcy53ZWJfY29udGVudF9saW5rICsgZXh0XFxyXFxuICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICBmb3IgKGl0ZW0gb2YgcmVzLm1lZGlhcykge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0bXAgPSBpdGVtLmxpbmtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcC51cmwpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0bXAudXJsICsgZXh0XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge31cXHJcXG4gICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgbGlzdC5maWxlc1tpXSxcXHJcXG4gICAgICAgICAgICAgICAgZ2V0RXh0KGxpc3QuZmlsZXNbaV0ubmFtZSksXFxyXFxuICAgICAgICAgICAgICAgIGdldEl0ZW0oJ2FjY2Vzc190b2tlbicsICcnKVxcclxcbiAgICAgICAgICAgIClcXHJcXG5cXHJcXG4gICAgICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgICAgIHRpdGxlOiBsaXN0LmZpbGVzW2ldLm5hbWUsXFxyXFxuICAgICAgICAgICAgICAgIGltZzogbGlzdC5maWxlc1tpXS5raW5kID09ICdkcml2ZSNmb2xkZXInID8gbGlzdC5maWxlc1tpXS5pY29uX2xpbmsgOiBsaXN0LmZpbGVzW2ldLnRodW1ibmFpbF9saW5rLFxcclxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ2F2YXRhcicsXFxyXFxuICAgICAgICAgICAgICAgIHVybDpcXHJcXG4gICAgICAgICAgICAgICAgICAgIGxpc3QuZmlsZXNbaV0ua2luZCA9PSAnZHJpdmUjZm9sZGVyJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgID8gJ2hpa2VyOi8vZW1wdHkmJiYnICsgbGlzdC5maWxlc1tpXS5pZCArICcmJiYnICsgbGlzdC5maWxlc1tpXS5uYW1lICsgJyNub0hpc3RvcnkjI25vUmVjb3JkSGlzdG9yeSMnXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgOiB1cmwgKyAnI25vSGlzdG9yeSMjbm9SZWNvcmRIaXN0b3J5IycsXFxyXFxuICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgIH1cXHJcXG4gICAgfVxcclxcbn1cXHJcXG5cXHJcXG4kLmV4cG9ydHMgPSB7XFxyXFxuICAgIHNlYXJjaF9iYXIsXFxyXFxuICAgIHNlYXJjaF9saXN0LFxcclxcbn1cXHJcXG5cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIkxpc3RcIixcInBhdGhcIjpcIkxpc3RcIixcInJ1bGVcIjpcIi8vIOiOt+WPluaWh+S7tuWQjeWQjue8gFxcclxcbmZ1bmN0aW9uIGdldEV4dChmaWxlTmFtZSkge1xcclxcbiAgICBsZXQgcF9leHQgPSBmaWxlTmFtZS5zdWJzdHIoZmlsZU5hbWUubGFzdEluZGV4T2YoJy4nKSArIDEpXFxyXFxuXFxyXFxuICAgIGlmICgkLm1vdmllLmluY2x1ZGVzKHBfZXh0KSkge1xcclxcbiAgICAgICAgdmFyIGV4dCA9ICcjaXNWaWRlbz10cnVlIydcXHJcXG4gICAgfSBlbHNlIGlmICgkLmF1ZGlvLmluY2x1ZGVzKHBfZXh0KSkge1xcclxcbiAgICAgICAgdmFyIGV4dCA9ICcjaXNNdXNpYz10cnVlIydcXHJcXG4gICAgfSBlbHNlIGlmICgkLmltZy5pbmNsdWRlcyhwX2V4dCkpIHtcXHJcXG4gICAgICAgIHZhciBleHQgPSAnIy5qcGcnXFxyXFxuICAgIH0gZWxzZSBpZiAoJC50eHQuaW5jbHVkZXMocF9leHQpKSB7XFxyXFxuICAgICAgICB2YXIgZXh0ID0gJyNyZWFkVGhlbWUjJ1xcclxcbiAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgdmFyIGV4dCA9ICcnXFxyXFxuICAgIH1cXHJcXG4gICAgcmV0dXJuIGV4dFxcclxcbn1cXHJcXG5cXHJcXG4vLyDnlJ/miJDmmL7npLrpnIDopoHnmoTmlofku7blpLkv5paH5Lu25YiX6KGoXFxyXFxuZnVuY3Rpb24gZ2VuZXJhdGVfbGlzdChyZXMsIHBhdGhzX2tpbmQpIHtcXHJcXG4gICAgdmFyIHsgZ2V0X2l0ZW1zX2xpc3QsIHNvcnRfaXRlbXNfbGlzdCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgdmFyIHsgc3R5bGVfY29sb3IgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0RlYnVnJylcXHJcXG4gICAgbGV0IHBhdGhzID0gc3RvcmFnZTAuZ2V0TXlWYXIocGF0aHNfa2luZCwgW1xcclxcbiAgICAgICAge1xcclxcbiAgICAgICAgICAgIGlkOiAnJyxcXHJcXG4gICAgICAgICAgICBuYW1lOiAnSG9tZScsXFxyXFxuICAgICAgICB9LFxcclxcbiAgICBdKVxcclxcblxcclxcbiAgICBsZXQgbGlzdCA9IGdldF9pdGVtc19saXN0KHBhdGhzW3BhdGhzLmxlbmd0aCAtIDFdLmlkKVxcclxcbiAgICBpZiAoXFxyXFxuICAgICAgICBnZXRNeVZhcignc2hvd19pbmRleCcsICcwJykgPT0gJzEnICYmXFxyXFxuICAgICAgICAoZ2V0SXRlbSgnc2hhcmVfaWQnLCAnJykgPT0gJycgfHwgZ2V0SXRlbSgnc2hhcmVfcGFzc19jb2RlX3Rva2VuJywgJycpID09ICcnKVxcclxcbiAgICApIHtcXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICB0aXRsZTogJ+WIhuS6q+mTvuaOpeaXoOaViOaIluiAheW9k+WJjeWcsOWMuuS4jeWPr+eUqCjpnIDopoHpo54pJyxcXHJcXG4gICAgICAgICAgICBjb2xfdHlwZTogZ2V0TXlWYXIoJ2xpc3Rfc2hvd19zdHlsZScsICcwJykgPT0gJzAnID8gJ2F2YXRhcicgOiAnbW92aWVfMV92ZXJ0aWNhbF9waWMnLFxcclxcbiAgICAgICAgICAgIHVybDogJ2hpa2VyOi8vZW1wdHknLFxcclxcbiAgICAgICAgfSlcXHJcXG4gICAgICAgIHJldHVyblxcclxcbiAgICB9XFxyXFxuXFxyXFxuICAgIGxldCBzb3J0X2ZpbGVzID0gc29ydF9pdGVtc19saXN0KGxpc3QuZmlsZXMsIGdldE15VmFyKCdsaXN0X3Nob3dfc29ydCcsICcwJykpXFxyXFxuICAgIGxpc3QuZmlsZXMgPSBzb3J0X2ZpbGVzXFxyXFxuXFxyXFxuICAgIGxpc3QuZmlsZXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xcclxcbiAgICAgICAgdmFyIHVybCA9ICcnXFxyXFxuICAgICAgICB2YXIgZmlsZV9hY3Rpb24gPSBzdG9yYWdlMC5nZXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgIHZhciBsb25nQ2xpY2tfYXJyID0gW1xcclxcbiAgICAgICAgICAgIHtcXHJcXG4gICAgICAgICAgICAgICAgdGl0bGU6ICfpgInmi6knLFxcclxcbiAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZyhcXHJcXG4gICAgICAgICAgICAgICAgICAgIChpdGVtLCBsaXN0KSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgc2hvd1NlbGVjdE9wdGlvbnMoe1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+ivt+mAieaLqeaTjeS9nCcsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IFsn6YCJ5oupJywgJ+S4jemAiScsICflhajpgIknLCAn5riF56m65bey6YCJJ10sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGl0ZW0sIGxpc3QpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmlsZV9hY3Rpb24gPSBzdG9yYWdlMC5nZXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKGlucHV0KSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+mAieaLqSc6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlX2FjdGlvbi5wdXNoKGl0ZW0uaWQpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBmaWxlX2FjdGlvbilcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+S4jemAiSc6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlX2FjdGlvbi5zcGxpY2UoZmlsZV9hY3Rpb24uaW5kZXhPZihpdGVtLmlkKSwgMSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIGZpbGVfYWN0aW9uKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn5riF56m65bey6YCJJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVfYWN0aW9uLnB1c2gobGlzdFtpXS5pZClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIGZpbGVfYWN0aW9uKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgICAgICAgICAgaXRlbSxcXHJcXG4gICAgICAgICAgICAgICAgICAgIGxpc3QuZmlsZXNcXHJcXG4gICAgICAgICAgICAgICAgKSxcXHJcXG4gICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgIHtcXHJcXG4gICAgICAgICAgICAgICAgdGl0bGU6ICfliKDpmaQnLFxcclxcbiAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZyhcXHJcXG4gICAgICAgICAgICAgICAgICAgIChhY3Rpb24sIGl0ZW1fc291cmNlX2lkKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlybSh7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn5bCP56iL5bqP5o+Q56S6JyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ+aYr+WQpuWIoOmZpOacrOaWh+S7ti/mlofku7blpLknLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25maXJtOiAkLnRvU3RyaW5nKFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGFjdGlvbiwgaXRlbV9zb3VyY2VfaWQpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgeyBpdGVtX2FjdGlvbiB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtX2FjdGlvbihhY3Rpb24sIFtpdGVtX3NvdXJjZV9pZF0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/miJDlip/liKDpmaTmnKzmlofku7Yv5paH5Lu25aS5J1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbixcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1fc291cmNlX2lkXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbDogJC50b1N0cmluZygoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5Y+W5raI5Yig6ZmkJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdiYXRjaFRyYXNoJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0uaWRcXHJcXG4gICAgICAgICAgICAgICAgKSxcXHJcXG4gICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgIHtcXHJcXG4gICAgICAgICAgICAgICAgdGl0bGU6ICfliIbkuqsnLFxcclxcbiAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZygoaXRlbSkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ3N0X2l0ZW0nLCBpdGVtKVxcclxcbiAgICAgICAgICAgICAgICAgICAgc2hvd1NlbGVjdE9wdGlvbnMoe1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn6YCJ5oup5pyJ5pWI5pyfJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBbJ+awuOS5heacieaViCcsICc35aSpJywgJzE05aSpJywgJzMw5aSpJ10sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sOiAyLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2V4cGlyZWRfZGF0ZScsIGlucHV0KVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93U2VsZWN0T3B0aW9ucyh7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+mAieaLqeaYr+WQpuW4puWvhueggScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBbJ+aYrycsICflkKYnXSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbDogMixcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgeyBzaGFyZV9jcmVhdGUgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW0gPSBzdG9yYWdlMC5nZXRNeVZhcignc3RfaXRlbScsIHt9KVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzaGFyZV9yZXMgPSBzaGFyZV9jcmVhdGUoXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpdGVtLmlkXSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAuZ2V0TXlWYXIoJ2V4cGlyZWRfZGF0ZScsICctMScpLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGFyZV9yZXMgPSBKU09OLnBhcnNlKHNoYXJlX3JlcylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc2hhcmVfcmVzLnBhc3NfY29kZSkge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBgY29weTovLyR7c2hhcmVfcmVzLnNoYXJlX3VybH1cXHJcXG7lr4bnoIE6ICR7c2hhcmVfcmVzLnBhc3NfY29kZX1cXHJcXG7lpI3liLbov5nmrrXlhoXlrrnlkI7miZPlvIAgUGlrUGFrLUFwcO+8jOeVheS6q+aegemAn+enkuaSrWBcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBgY29weTovLyR7c2hhcmVfcmVzLnNoYXJlX3VybH1cXHJcXG7lpI3liLbov5nmrrXlhoXlrrnlkI7miZPlvIAgUGlrUGFrLUFwcO+8jOeVheS6q+aegemAn+enkuaSrWBcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgIH0sIGl0ZW0pLFxcclxcbiAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAge1xcclxcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+mHjeWRveWQjScsXFxyXFxuICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKChpdGVtX2lkKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gJCgnJywgJ+ivt+i+k+WFpeaWh+S7tuWkuS/mlofku7bnmoTmlrDlkI3lrZcnKS5pbnB1dCgoaXRlbV9pZCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IGl0ZW1fcmVuYW1lIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1fcmVuYW1lKGl0ZW1faWQsIGlucHV0KVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5q2j5Zyo6YeN5ZG95ZCNLi4uJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgfSwgaXRlbV9pZClcXHJcXG4gICAgICAgICAgICAgICAgfSwgaXRlbS5pZCksXFxyXFxuICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgIF1cXHJcXG4gICAgICAgIGlmIChmaWxlX2FjdGlvbi5sZW5ndGggPiAwKSB7XFxyXFxuICAgICAgICAgICAgbG9uZ0NsaWNrX2FyciA9IFtcXHJcXG4gICAgICAgICAgICAgICAge1xcclxcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICfpgInmi6knLFxcclxcbiAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgKGl0ZW0sIGxpc3QpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvd1NlbGVjdE9wdGlvbnMoe1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICfor7fpgInmi6nmk43kvZwnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogWyfpgInmi6knLCAn5LiN6YCJJywgJ+WFqOmAiScsICfmuIXnqbrlt7LpgIknXSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpdGVtLCBsaXN0KSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBmaWxlX2FjdGlvbiA9IHN0b3JhZ2UwLmdldE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKGlucHV0KSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICfpgInmi6knOlxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVfYWN0aW9uLnB1c2goaXRlbS5pZClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBmaWxlX2FjdGlvbilcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+S4jemAiSc6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZV9hY3Rpb24uc3BsaWNlKGZpbGVfYWN0aW9uLmluZGV4T2YoaXRlbS5pZCksIDEpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgZmlsZV9hY3Rpb24pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICfmuIXnqbrlt7LpgIknOlxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZV9hY3Rpb24ucHVzaChsaXN0W2ldLmlkKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBmaWxlX2FjdGlvbilcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgbGlzdC5maWxlc1xcclxcbiAgICAgICAgICAgICAgICAgICAgKSxcXHJcXG4gICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAge1xcclxcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICfliKDpmaTlt7LpgIknLFxcclxcbiAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgKGFjdGlvbiwgaXRlbV9zb3VyY2VfaWQpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlybSh7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+Wwj+eoi+W6j+aPkOekuicsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAn5piv5ZCm5Yig6Zmk5bey6YCJ55qE5paH5Lu2L+acrOaWh+S7tuWkuScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25maXJtOiAkLnRvU3RyaW5nKFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChhY3Rpb24sIGl0ZW1fc291cmNlX2lkKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IGl0ZW1fYWN0aW9uIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmlsZV9hY3Rpb24gPSBzdG9yYWdlMC5nZXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1fYWN0aW9uKGFjdGlvbiwgZmlsZV9hY3Rpb24pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+aIkOWKn+WIoOmZpOW3sumAieaWh+S7ti/mlofku7blpLknXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb24sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbV9zb3VyY2VfaWRcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWw6ICQudG9TdHJpbmcoKCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5Y+W5raI5Yig6ZmkJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmF0Y2hUcmFzaCcsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5pZFxcclxcbiAgICAgICAgICAgICAgICAgICAgKSxcXHJcXG4gICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAge1xcclxcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICfliIbkuqvlt7LpgIknLFxcclxcbiAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoKGl0ZW0pID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBzaG93U2VsZWN0T3B0aW9ucyh7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn6YCJ5oup5pyJ5pWI5pyfJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogWyfmsLjkuYXmnInmlYgnLCAnN+WkqScsICcxNOWkqScsICczMOWkqSddLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2w6IDIsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdleHBpcmVkX2RhdGUnLCBpbnB1dClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3dTZWxlY3RPcHRpb25zKHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+mAieaLqeaYr+WQpuW4puWvhueggScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogWyfmmK8nLCAn5ZCmJ10sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sOiAyLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHsgc2hhcmVfY3JlYXRlIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmlsZV9hY3Rpb24gPSBzdG9yYWdlMC5nZXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzaGFyZV9yZXMgPSBzaGFyZV9jcmVhdGUoXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlX2FjdGlvbixcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLmdldE15VmFyKCdleHBpcmVkX2RhdGUnLCAnLTEnKSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hhcmVfcmVzID0gSlNPTi5wYXJzZShzaGFyZV9yZXMpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzaGFyZV9yZXMucGFzc19jb2RlKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYGNvcHk6Ly8ke3NoYXJlX3Jlcy5zaGFyZV91cmx9XFxyXFxu5a+G56CBOiAke3NoYXJlX3Jlcy5wYXNzX2NvZGV9XFxyXFxu5aSN5Yi26L+Z5q615YaF5a655ZCO5omT5byAIFBpa1Bhay1BcHDvvIznlYXkuqvmnoHpgJ/np5Lmkq1gXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYGNvcHk6Ly8ke3NoYXJlX3Jlcy5zaGFyZV91cmx9XFxyXFxu5aSN5Yi26L+Z5q615YaF5a655ZCO5omT5byAIFBpa1Bhay1BcHDvvIznlYXkuqvmnoHpgJ/np5Lmkq1gXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgfSwgaXRlbSksXFxyXFxuICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn56e75Yqo5bey6YCJ5Yiw6L+ZJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIChhY3Rpb24sIGl0ZW1fdGFyZ2V0X2lkKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IGl0ZW1fYWN0aW9uIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmlsZV9hY3Rpb24gPSBzdG9yYWdlMC5nZXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1fYWN0aW9uKGFjdGlvbiwgZmlsZV9hY3Rpb24sIGl0ZW1fdGFyZ2V0X2lkKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/mraPlnKjnp7vliqguLi4nXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmF0Y2hNb3ZlJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmlkXFxyXFxuICAgICAgICAgICAgICAgICAgICApLFxcclxcbiAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgICAgICB7XFxyXFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+WkjeWItuW3sumAieWIsOi/mScsXFxyXFxuICAgICAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZyhcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAoYWN0aW9uLCBpdGVtX3RhcmdldF9pZCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgeyBpdGVtX2FjdGlvbiB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGZpbGVfYWN0aW9uID0gc3RvcmFnZTAuZ2V0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtX2FjdGlvbihhY3Rpb24sIGZpbGVfYWN0aW9uLCBpdGVtX3RhcmdldF9pZClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5q2j5Zyo5aSN5Yi2Li4uJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgJ2JhdGNoQ29weScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5pZFxcclxcbiAgICAgICAgICAgICAgICAgICAgKSxcXHJcXG4gICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAge1xcclxcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICfmmL7npLrlt7LpgIknLFxcclxcbiAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoKCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBmaWxlX2FjdGlvbiA9IHN0b3JhZ2UwLmdldE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzaG93X3NlbGVjdF9pdGVtcyA9IFtdXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgLy8g57G75Ly85pCc57Si5ou/5omA5pyJ77yM55So5pWw57uE55qEaW5kZXhPZuWIpOaWre+8jOeEtuWQjuaOqOWFpXNob3dfc2VsZWN0X2l0ZW1zXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHsgZ2V0X2l0ZW1zX2xpc3QgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGxpc3QgPSBnZXRfaXRlbXNfbGlzdCgnKicpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaXN0LmZpbGVzLmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmaWxlX2FjdGlvbi5pbmRleE9mKGxpc3QuZmlsZXNbaV0uaWQpICE9IC0xKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93X3NlbGVjdF9pdGVtcy5wdXNoKGxpc3QuZmlsZXNbaV0ubmFtZSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBzaG93U2VsZWN0T3B0aW9ucyh7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn5bey6YCJ5paH5Lu2L+aWh+S7tuWkuScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbDogMSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogc2hvd19zZWxlY3RfaXRlbXMsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/mmL7npLrlt7LpgInmi6nnmoTmlofku7blpLkv5paH5Lu277yM54K55Ye75peg5pWIJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgICAgICAgICAgfSksXFxyXFxuICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgXVxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgIGxldCBsb25nQ2xpY2syX2FyciA9IFtcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAge1xcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICfmk43kvZwnLFxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoKGl0ZW0pID0+IHtcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBzaG93U2VsZWN0T3B0aW9ucyh7XFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn6K+36YCJ5oup5pON5L2cJyxcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogWyfliKDpmaTmiYDmnInpgInmi6knLCAn5YiG5Lqr5omA5pyJ6YCJ5oupJywgJ+enu+WKqOaJgOaciemAieaLqeWIsOi/memHjCcsICflpI3liLbmiYDmnInpgInmi6nliLDov5nph4wnXSxcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sOiAyLFxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZygoaXRlbSkgPT4ge1xcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBpdGVtX2FjdGlvbiB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBmaWxlX2FjdGlvbiA9IHN0b3JhZ2UwLmdldE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChpbnB1dCkge1xcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+WIoOmZpOaJgOaciemAieaLqSc6XFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1fYWN0aW9uKCdiYXRjaFRyYXNoJywgZmlsZV9hY3Rpb24pXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn5YiG5Lqr5omA5pyJ6YCJ5oupJzpcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvd1NlbGVjdE9wdGlvbnMoe1xcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICfpgInmi6nmnInmlYjmnJ8nLFxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogWyfmsLjkuYXmnInmlYgnLCAnN+WkqScsICcxNOWkqScsICczMOWkqSddLFxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sOiAyLFxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoKCkgPT4ge1xcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdleHBpcmVkX2RhdGUnLCBpbnB1dClcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93U2VsZWN0T3B0aW9ucyh7XFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn6YCJ5oup5piv5ZCm5bim5a+G56CBJyxcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogWyfmmK8nLCAn5ZCmJ10sXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbDogMixcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoKCkgPT4ge1xcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBzaGFyZV9jcmVhdGUgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmlsZV9hY3Rpb24gPSBzdG9yYWdlMC5nZXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcblxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHNoYXJlX3JlcyA9IHNoYXJlX2NyZWF0ZShcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXRlbS5pZF0sXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAuZ2V0TXlWYXIoJ2V4cGlyZWRfZGF0ZScsICctMScpLFxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0XFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGFyZV9yZXMgPSBKU09OLnBhcnNlKHNoYXJlX3JlcylcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzaGFyZV9yZXMucGFzc19jb2RlKSB7XFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGBjb3B5Oi8vJHtzaGFyZV9yZXMuc2hhcmVfdXJsfVxcclxcbiAgICAgICAgICAgIC8vIOWvhueggTogJHtzaGFyZV9yZXMucGFzc19jb2RlfVxcclxcbiAgICAgICAgICAgIC8vICR7c2hhcmVfcmVzLnNoYXJlX2lkfVxcclxcbiAgICAgICAgICAgIC8vIOWkjeWItui/meauteWGheWuueWQjuaJk+W8gCBQaWtQYWstQXBw77yM55WF5Lqr5p6B6YCf56eS5pKtYFxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYGNvcHk6Ly8ke3NoYXJlX3Jlcy5zaGFyZV91cmx9XFxyXFxuICAgICAgICAgICAgLy8gJHtzaGFyZV9yZXMuc2hhcmVfaWR9XFxyXFxuICAgICAgICAgICAgLy8g5aSN5Yi26L+Z5q615YaF5a655ZCO5omT5byAIFBpa1Bhay1BcHDvvIznlYXkuqvmnoHpgJ/np5Lmkq1gXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+enu+WKqOaJgOaciemAieaLqeWIsOi/memHjCc6XFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1fYWN0aW9uKCdiYXRjaE1vdmUnLCBmaWxlX2FjdGlvbiwgaXRlbS5pZClcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtX2FjdGlvbignYmF0Y2hDb3B5JywgZmlsZV9hY3Rpb24sIGl0ZW0uaWQpXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIGl0ZW0pLFxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICB9LCBpdGVtKSxcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAge1xcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICfmmL7npLrmiYDmnInpgInmi6knLFxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoKCkgPT4ge1xcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBmaWxlX2FjdGlvbiA9IHN0b3JhZ2UwLmdldE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzaG93X3NlbGVjdF9pdGVtcyA9IFtdXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgLy8g57G75Ly85pCc57Si5ou/5omA5pyJ77yM55So5pWw57uE55qEaW5kZXhPZuWIpOaWre+8jOeEtuWQjuaOqOWFpXNob3dfc2VsZWN0X2l0ZW1zXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBnZXRfaXRlbXNfbGlzdCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgbGlzdCA9IGdldF9pdGVtc19saXN0KCcqJylcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QuZmlsZXMubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZpbGVfYWN0aW9uLmluZGV4T2YobGlzdC5maWxlc1tpXS5pZCkgIT0gLTEpIHtcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3dfc2VsZWN0X2l0ZW1zLnB1c2gobGlzdC5maWxlc1tpXS5uYW1lKVxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgIHNob3dTZWxlY3RPcHRpb25zKHtcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICflt7LpgInmi6nnmoTmlofku7Yv5paH5Lu25aS5JyxcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sOiAxLFxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBzaG93X3NlbGVjdF9pdGVtcyxcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoKCkgPT4ge1xcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+aYvuekuuW3sumAieaLqeeahOaWh+S7tuWkuS/mlofku7bvvIzngrnlh7vml6DmlYgnXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgJC5sb2coZmlsZV9hY3Rpb24pXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICBdXFxyXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgbG9uZ0NsaWNrX2FyciA9IGxvbmdDbGlja19hcnIuY29uY2F0KGxvbmdDbGljazJfYXJyKVxcclxcbiAgICAgICAgfVxcclxcblxcclxcbiAgICAgICAgaWYgKGdldE15VmFyKCdzaG93X2luZGV4JywgJzAnKSA9PSAnMScpIHtcXHJcXG4gICAgICAgICAgICBsb25nQ2xpY2tfYXJyID0gW1xcclxcbiAgICAgICAgICAgICAgICB7XFxyXFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+mAieaLqScsXFxyXFxuICAgICAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZyhcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAoaXRlbSwgbGlzdCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93U2VsZWN0T3B0aW9ucyh7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+ivt+mAieaLqeaTjeS9nCcsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBbJ+mAieaLqScsICfkuI3pgIknLCAn5YWo6YCJJywgJ+a4heepuuW3sumAiSddLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGl0ZW0sIGxpc3QpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGZpbGVfYWN0aW9uID0gc3RvcmFnZTAuZ2V0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoaW5wdXQpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+mAieaLqSc6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZV9hY3Rpb24ucHVzaChpdGVtLmlkKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIGZpbGVfYWN0aW9uKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn5LiN6YCJJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlX2FjdGlvbi5zcGxpY2UoZmlsZV9hY3Rpb24uaW5kZXhPZihpdGVtLmlkKSwgMSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBmaWxlX2FjdGlvbilcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+a4heepuuW3sumAiSc6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlX2FjdGlvbi5wdXNoKGxpc3RbaV0uaWQpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIGZpbGVfYWN0aW9uKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBsaXN0LmZpbGVzXFxyXFxuICAgICAgICAgICAgICAgICAgICApLFxcclxcbiAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgICAgICB7XFxyXFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+i9rOWtmCcsXFxyXFxuICAgICAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZygoaXRlbSkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IHNoYXJlX290aGVyX3NhdmUgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgLy8g6L2s5a2YXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgc2hhcmVfb3RoZXJfc2F2ZShbaXRlbS5pZF0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+ato+WcqOi9rOWtmC4uLidcXHJcXG4gICAgICAgICAgICAgICAgICAgIH0sIGl0ZW0pLFxcclxcbiAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgIF1cXHJcXG4gICAgICAgICAgICBpZiAoc3RvcmFnZTAuZ2V0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pLmxlbmd0aCA+IDApIHtcXHJcXG4gICAgICAgICAgICAgICAgbG9uZ0NsaWNrX2FyciA9IFtcXHJcXG4gICAgICAgICAgICAgICAgICAgIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+mAieaLqScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpdGVtLCBsaXN0KSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93U2VsZWN0T3B0aW9ucyh7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICfor7fpgInmi6nmk43kvZwnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IFsn6YCJ5oupJywgJ+S4jemAiScsICflhajpgIknLCAn5riF56m65bey6YCJJ10sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpdGVtLCBsaXN0KSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmlsZV9hY3Rpb24gPSBzdG9yYWdlMC5nZXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoaW5wdXQpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICfpgInmi6knOlxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlX2FjdGlvbi5wdXNoKGl0ZW0uaWQpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIGZpbGVfYWN0aW9uKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn5LiN6YCJJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZV9hY3Rpb24uc3BsaWNlKGZpbGVfYWN0aW9uLmluZGV4T2YoaXRlbS5pZCksIDEpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIGZpbGVfYWN0aW9uKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn5riF56m65bey6YCJJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVfYWN0aW9uLnB1c2gobGlzdFtpXS5pZClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBmaWxlX2FjdGlvbilcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0sXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3QuZmlsZXNcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxcclxcbiAgICAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgICAgIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+i9rOWtmOW3sumAiScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoKGl0ZW0pID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHsgc2hhcmVfb3RoZXJfc2F2ZSB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGZpbGVfYWN0aW9uID0gc3RvcmFnZTAuZ2V0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIOi9rOWtmFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGFyZV9vdGhlcl9zYXZlKGZpbGVfYWN0aW9uKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+ato+WcqOi9rOWtmOW3sumAiS4uLidcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCBpdGVtKSxcXHJcXG4gICAgICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgIF1cXHJcXG4gICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgaWYgKGl0ZW0ua2luZCA9PSAnZHJpdmUjZm9sZGVyJykge1xcclxcbiAgICAgICAgICAgICAgICB1cmwgPSAkKCkubGF6eVJ1bGUoXFxyXFxuICAgICAgICAgICAgICAgICAgICAocGF0aHMsIGl0ZW0sIHBhdGhzX2tpbmQpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRocy5wdXNoKHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGl0ZW0uaWQsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IGl0ZW0ubmFtZSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKHBhdGhzX2tpbmQsIHBhdGhzKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgICAgICAgICAgcGF0aHMsXFxyXFxuICAgICAgICAgICAgICAgICAgICBpdGVtLFxcclxcbiAgICAgICAgICAgICAgICAgICAgcGF0aHNfa2luZFxcclxcbiAgICAgICAgICAgICAgICApXFxyXFxuICAgICAgICAgICAgfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICAgICAgdmFyIGV4dCA9IGdldEV4dChpdGVtLm5hbWUpXFxyXFxuICAgICAgICAgICAgICAgIGlmIChleHQgPT0gJyMuanBnJyAmJiBnZXRNeVZhcignbGlzdF9zaG93X3N0eWxlJywgJzAnKSA9PSAnMicpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIHZhciB7IHNoYXJlX290aGVyX3NhdmUsIGdldF9pdGVtX3VybCwgaXRlbV9hY3Rpb24sIHRyYXNoX2FjdGlvbiB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgICAgIC8vIOi9rOWtmFxcclxcbiAgICAgICAgICAgICAgICAgICAgbGV0IHNoYXJlX3RyYWNlX3JlcyA9IHNoYXJlX290aGVyX3NhdmUoW2l0ZW0uaWRdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgbGV0IHNoYXJlX3RyYWNlX2lkID0gSlNPTi5wYXJzZShzaGFyZV90cmFjZV9yZXMucGFyYW1zLnRyYWNlX2ZpbGVfaWRzKVxcclxcbiAgICAgICAgICAgICAgICAgICAgLy8g6I635Y+W5Zu+54mH5Zyw5Z2AXFxyXFxuICAgICAgICAgICAgICAgICAgICBsZXQgcmVzID0gZ2V0X2l0ZW1fdXJsKHNoYXJlX3RyYWNlX2lkW2l0ZW0uaWRdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgLy8g5Yig6ZmkKOWMheWQq+WbnuaUtuermeawuOS5heWIoOmZpClcXHJcXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1fYWN0aW9uKCdiYXRjaFRyYXNoJywgW3NoYXJlX3RyYWNlX2lkW2l0ZW0uaWRdXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgIHRyYXNoX2FjdGlvbignYmF0Y2hEZWxldGUnLCBbc2hhcmVfdHJhY2VfaWRbaXRlbS5pZF1dKVxcclxcbiAgICAgICAgICAgICAgICAgICAgdXJsID0gJ3BpY3M6Ly8nICsgcmVzLndlYl9jb250ZW50X2xpbmtcXHJcXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIHVybCA9ICQoKS5sYXp5UnVsZShcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAoaXRlbSwgZXh0KSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IHNoYXJlX290aGVyX3NhdmUsIGdldF9pdGVtX3VybCwgaXRlbV9hY3Rpb24sIHRyYXNoX2FjdGlvbiB9ID1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIOi9rOWtmFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgc2hhcmVfdHJhY2VfcmVzID0gc2hhcmVfb3RoZXJfc2F2ZShbaXRlbS5pZF0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzaGFyZV90cmFjZV9pZCA9IEpTT04ucGFyc2Uoc2hhcmVfdHJhY2VfcmVzLnBhcmFtcy50cmFjZV9maWxlX2lkcylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8g6I635Y+W5pKt5pS+5Zyw5Z2AXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZXMgPSBnZXRfaXRlbV91cmwoc2hhcmVfdHJhY2VfaWRbaXRlbS5pZF0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIOWIoOmZpCjljIXlkKvlm57mlLbnq5nmsLjkuYXliKDpmaQpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1fYWN0aW9uKCdiYXRjaFRyYXNoJywgW3NoYXJlX3RyYWNlX2lkW2l0ZW0uaWRdXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhc2hfYWN0aW9uKCdiYXRjaERlbGV0ZScsIFtzaGFyZV90cmFjZV9pZFtpdGVtLmlkXV0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMubWVkaWFzLmxlbmd0aCA9PSAwKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzLndlYl9jb250ZW50X2xpbmsgKyBleHRcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGl0ZW0gb2YgcmVzLm1lZGlhcykge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdG1wID0gaXRlbS5saW5rXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcC51cmwpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRtcC51cmwgKyBleHRcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7fVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4dFxcclxcbiAgICAgICAgICAgICAgICAgICAgKVxcclxcbiAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgIC8vIH0gZWxzZSBpZiAoZ2V0TXlWYXIoJ3Nob3dfaW5kZXgnLCAnMCcpID09ICcyJykge1xcclxcbiAgICAgICAgfSBlbHNlIGlmIChnZXRNeVZhcignaG9tZV9jYXRlZ29yeV9pbmRleCcsICcwJykgIT0gJzAnKSB7XFxyXFxuICAgICAgICAgICAgLy8gaWYgKGdldE15VmFyKCdvdF9pbmRleCcsICcwJykgPT0gJzAnKSB7XFxyXFxuICAgICAgICAgICAgbG9uZ0NsaWNrX2FyciA9IFtdXFxyXFxuICAgICAgICAgICAgaWYgKGdldE15VmFyKCdob21lX2NhdGVnb3J5X2luZGV4JywgJzAnKSA9PSAnMicpIHtcXHJcXG4gICAgICAgICAgICAgICAgbGV0IHNlbF9vcF9hcnIgPSBbJ+mAieaLqScsICfkuI3pgIknLCAn5YWo6YCJJywgJ+a4heepuuW3sumAiScsICfmsLjkuYXliKDpmaQnLCAn6L+Y5Y6fJ11cXHJcXG4gICAgICAgICAgICAgICAgaWYgKGZpbGVfYWN0aW9uLmxlbmd0aCA+IDApIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIHNlbF9vcF9hcnIgPSBbJ+mAieaLqScsICfkuI3pgIknLCAn5YWo6YCJJywgJ+a4heepuuW3sumAiScsICfmsLjkuYXliKDpmaTlt7LpgIknLCAn6L+Y5Y6f5bey6YCJJywgJ+aYvuekuuW3sumAiSddXFxyXFxuICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgdXJsID0gJChzZWxfb3BfYXJyLCAzLCAn6K+36YCJ5oup5pON5L2cJykuc2VsZWN0KFxcclxcbiAgICAgICAgICAgICAgICAgICAgKGl0ZW0sIGxpc3QxKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHsgdHJhc2hfYWN0aW9uIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBmaWxlX2FjdGlvbiA9IHN0b3JhZ2UwLmdldE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoaW5wdXQpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn6L+Y5Y6fJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYXNoX2FjdGlvbignYmF0Y2hVbnRyYXNoJywgW2l0ZW0uaWRdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+ato+WcqOi/mOWOny4uLidcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn5rC45LmF5Yig6ZmkJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpcm0oe1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn5bCP56iL5bqP5o+Q56S6JywgLy8g5by556qX5qCH6aKYXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ+aYr+WQpuawuOS5heWIoOmZpOacrOaWh+S7ti/mlofku7blpLnvvJ8nLCAvLyDlvLnnqpflhoXlrrlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25maXJtOiAkLnRvU3RyaW5nKChpdGVtKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IHRyYXNoX2FjdGlvbiB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhc2hfYWN0aW9uKCdiYXRjaERlbGV0ZScsIFtpdGVtLmlkXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5q2j5Zyo5rC45LmF5Yig6ZmkLi4uJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIGl0ZW0pLCAvLyDnoa7lrprlkI7miafooYxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5jZWw6ICQudG9TdHJpbmcoKCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/lj5bmtojmsLjkuYXliKDpmaQuLi4nXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksIC8vIOWPlua2iOWQjuaJp+ihjFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+mAieaLqSc6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlX2FjdGlvbi5wdXNoKGl0ZW0uaWQpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBmaWxlX2FjdGlvbilcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+S4jemAiSc6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlX2FjdGlvbi5zcGxpY2UoZmlsZV9hY3Rpb24uaW5kZXhPZihpdGVtLmlkKSwgMSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIGZpbGVfYWN0aW9uKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn5YWo6YCJJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdDEubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlX2FjdGlvbi5wdXNoKGxpc3QxW2ldLmlkKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgZmlsZV9hY3Rpb24pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICfmuIXnqbrlt7LpgIknOlxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICfmsLjkuYXliKDpmaTlt7LpgIknOlxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlybSh7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICflsI/nqIvluo/mj5DnpLonLCAvLyDlvLnnqpfmoIfpophcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAn5piv5ZCm5rC45LmF5Yig6Zmk5bey6YCJJywgLy8g5by556qX5YaF5a65XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlybTogJC50b1N0cmluZygoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IHRyYXNoX2FjdGlvbiB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGZpbGVfYWN0aW9uID0gc3RvcmFnZTAuZ2V0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYXNoX2FjdGlvbignYmF0Y2hEZWxldGUnLCBmaWxlX2FjdGlvbilcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+ato+WcqOawuOS5heWIoOmZpOW3sumAiS4uLidcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSwgLy8g56Gu5a6a5ZCO5omn6KGMXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FuY2VsOiAkLnRvU3RyaW5nKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5Y+W5raI5rC45LmF5bey6YCJ5Yig6ZmkLi4uJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLCAvLyDlj5bmtojlkI7miafooYxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICfov5jljp/lt7LpgIknOlxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhc2hfYWN0aW9uKCdiYXRjaFVudHJhc2gnLCBmaWxlX2FjdGlvbilcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+ato+WcqOi/mOWOn+W3sumAiS4uLidcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgc2hvd19zZWxlY3RfaXRlbXMgPSBbXVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHsgZ2V0X2l0ZW1zX2xpc3QgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgbGlzdCA9IGdldF9pdGVtc19saXN0KCcqJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdC5maWxlcy5sZW5ndGg7IGkrKykge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmaWxlX2FjdGlvbi5pbmRleE9mKGxpc3QuZmlsZXNbaV0uaWQpICE9IC0xKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3dfc2VsZWN0X2l0ZW1zLnB1c2gobGlzdC5maWxlc1tpXS5uYW1lKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3dTZWxlY3RPcHRpb25zKHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+W3sumAieaLqeeahOaWh+S7ti/mlofku7blpLknLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbDogMSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBzaG93X3NlbGVjdF9pdGVtcyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZygoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/mmL7npLrlt7LpgInmi6nnmoTmlofku7blpLkv5paH5Lu277yM54K55Ye75peg5pWIJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgICAgICAgICAgaXRlbSxcXHJcXG4gICAgICAgICAgICAgICAgICAgIGxpc3QuZmlsZXNcXHJcXG4gICAgICAgICAgICAgICAgKVxcclxcbiAgICAgICAgICAgIH0gZWxzZSB7XFxyXFxuICAgICAgICAgICAgICAgIGxldCBzZWxfb3BfYXJyID0gWyfpgInmi6knLCAn5LiN6YCJJywgJ+WFqOmAiScsICfmuIXnqbrlt7LpgIknLCAn5aSN5Yi25YiG5LqrJywgJ+aSpOmUgOWIhuS6qyddXFxyXFxuICAgICAgICAgICAgICAgIGlmIChmaWxlX2FjdGlvbi5sZW5ndGggPiAwKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICBzZWxfb3BfYXJyID0gWyfpgInmi6knLCAn5LiN6YCJJywgJ+WFqOmAiScsICfmuIXnqbrlt7LpgIknLCAn5aSN5Yi25bey6YCJ5YiG5LqrJywgJ+aSpOmUgOW3sumAieWIhuS6qycsICfmmL7npLrlt7LpgIknXVxcclxcbiAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgIHVybCA9ICQoc2VsX29wX2FyciwgMywgJ+ivt+mAieaLqeaTjeS9nCcpLnNlbGVjdChcXHJcXG4gICAgICAgICAgICAgICAgICAgIChpdGVtLCBsaXN0MSkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IHNoYXJlX2FjdGlvbiwgc2hhcmVfY29weV91cmwgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGZpbGVfYWN0aW9uID0gc3RvcmFnZTAuZ2V0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChpbnB1dCkge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICfpgInmi6knOlxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZV9hY3Rpb24ucHVzaChpdGVtLnNoYXJlX2lkKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgZmlsZV9hY3Rpb24pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICfkuI3pgIknOlxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZV9hY3Rpb24uc3BsaWNlKGZpbGVfYWN0aW9uLmluZGV4T2YoaXRlbS5zaGFyZV9pZCksIDEpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBmaWxlX2FjdGlvbilcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+WFqOmAiSc6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QxLmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZV9hY3Rpb24ucHVzaChsaXN0MVtpXS5zaGFyZV9pZClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIGZpbGVfYWN0aW9uKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn5riF56m65bey6YCJJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIFtdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn5aSN5Yi25YiG5LqrJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzaGFyZV91cmwgPSBgaHR0cHM6Ly9teXBpa3Bhay5jb20vcy8ke2l0ZW0uc2hhcmVfaWR9YFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHNoYXJlX3Bhc3N3ZCA9IGl0ZW0uc2hhcmVfcGFzc3dkID8gYCR7aXRlbS5zaGFyZV9wYXNzd2R9YCA6ICcnXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBsZXQgc2hhcmVfdXJsID0gYGh0dHBzOi8vbXlwaWtwYWsuY29tL3MvJHtzaGFyZV9pZH0ke3NoYXJlX3Bhc3N3ZH1gXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBsZXQgaGlrZXJfc2hhcmVfY29weV91cmwgPSBzaGFyZV9jb3B5X3VybChzaGFyZV9pZCwgc2hhcmVfcGFzc3dkKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gcmV0dXJuICdjb3B5Oi8vJyArIGhpa2VyX3NoYXJlX2NvcHlfdXJsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc2hhcmVfcGFzc3dkKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGBjb3B5Oi8vJHtzaGFyZV91cmx9XFxyXFxu5a+G56CBOiAke3NoYXJlX3Bhc3N3ZH1cXHJcXG7lpI3liLbov5nmrrXlhoXlrrnlkI7miZPlvIAgUGlrUGFrLUFwcO+8jOeVheS6q+aegemAn+enkuaSrWBcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGBjb3B5Oi8vJHtzaGFyZV91cmx9XFxyXFxu5aSN5Yi26L+Z5q615YaF5a655ZCO5omT5byAIFBpa1Bhay1BcHDvvIznlYXkuqvmnoHpgJ/np5Lmkq1gXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+aSpOmUgOWIhuS6qyc6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGFyZV9hY3Rpb24oJ2JhdGNoRGVsZXRlJywgW2l0ZW0uc2hhcmVfaWRdKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+ato+WcqOaSpOmUgOWIhuS6qy4uLidcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn5aSN5Yi25bey6YCJ5YiG5LqrJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQubG9nKGZpbGVfYWN0aW9uKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJC5sb2cobGlzdDEpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgY29weV9zaGFyZV9saXN0ID0gJydcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdDEubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGZpbGVfYWN0aW9uLmxlbmd0aDsgaisrKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmaWxlX2FjdGlvbltqXSA9PSBsaXN0MVtpXS5zaGFyZV9pZCkge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxpc3QxW2ldLnNoYXJlX3Bhc3N3ZCkge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvcHlfc2hhcmVfbGlzdCArPSBgaHR0cHM6Ly9teXBpa3Bhay5jb20vcy8ke2xpc3QxW2ldLnNoYXJlX2lkfVxcclxcbuWvhueggTogJHtsaXN0MVtpXS5zaGFyZV9wYXNzd2R9XFxyXFxu5aSN5Yi26L+Z5q615YaF5a655ZCO5omT5byAIFBpa1Bhay1BcHDvvIznlYXkuqvmnoHpgJ/np5Lmkq1gXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvcHlfc2hhcmVfbGlzdCArPSBgaHR0cHM6Ly9teXBpa3Bhay5jb20vcy8ke2xpc3QxW2ldLnNoYXJlX2lkfVxcclxcbuWkjeWItui/meauteWGheWuueWQjuaJk+W8gCBQaWtQYWstQXBw77yM55WF5Lqr5p6B6YCf56eS5pKtYFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29weV9zaGFyZV9saXN0ICs9ICdcXFxcbidcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBgY29weTovLyR7Y29weV9zaGFyZV9saXN0fWBcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+aSpOmUgOW3sumAieWIhuS6qyc6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGFyZV9hY3Rpb24oJ2JhdGNoRGVsZXRlJywgZmlsZV9hY3Rpb24pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/mraPlnKjmkqTplIDlt7LpgInliIbkuqsuLi4nXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHNob3dfc2VsZWN0X2l0ZW1zID0gW11cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IGdldF9pdGVtc19saXN0IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGxpc3QgPSBnZXRfaXRlbXNfbGlzdCgnKicpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QuZmlsZXMubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmlsZV9hY3Rpb24uaW5kZXhPZihsaXN0LmZpbGVzW2ldLnNoYXJlX2lkKSAhPSAtMSkge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93X3NlbGVjdF9pdGVtcy5wdXNoKGxpc3QuZmlsZXNbaV0ubmFtZSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93U2VsZWN0T3B0aW9ucyh7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICflt7LpgInmi6nnmoTmlofku7Yv5paH5Lu25aS5JyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2w6IDEsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogc2hvd19zZWxlY3RfaXRlbXMsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoKCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5pi+56S65bey6YCJ5oup55qE5paH5Lu25aS5L+aWh+S7tu+8jOeCueWHu+aXoOaViCdcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0sXFxyXFxuICAgICAgICAgICAgICAgICAgICBsaXN0LmZpbGVzXFxyXFxuICAgICAgICAgICAgICAgIClcXHJcXG4gICAgICAgICAgICAgICAgLy8gdXJsID0gJChzZWxfb3BfYXJyLCA0LCAn6K+36YCJ5oup5pON5L2cJykuc2VsZWN0KFxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgKGl0ZW0sIGxpc3QpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICBjb25zdCB7IHNoYXJlX2FjdGlvbiwgc2hhcmVfY29weV91cmwgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgc3dpdGNoIChpbnB1dCkge1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICBjYXNlICflpI3liLbliIbkuqsnOlxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgbGV0IHNoYXJlX2lkID0gaXRlbS5zaGFyZV9pZFxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgbGV0IHNoYXJlX3Bhc3N3ZCA9IGl0ZW0uc2hhcmVfcGFzc3dkID8gYD9zX2NvZGU9JHtpdGVtLnNoYXJlX3Bhc3N3ZH1gIDogJydcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIC8vIGxldCBzaGFyZV91cmwgPSBgaHR0cHM6Ly9teXBpa3Bhay5jb20vcy8ke3NoYXJlX2lkfSR7c2hhcmVfcGFzc3dkfWBcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIGxldCBoaWtlcl9zaGFyZV9jb3B5X3VybCA9IHNoYXJlX2NvcHlfdXJsKHNoYXJlX2lkLCBzaGFyZV9wYXNzd2QpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICByZXR1cm4gJ2NvcHk6Ly8nICsgaGlrZXJfc2hhcmVfY29weV91cmxcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgY2FzZSAn5pKk6ZSA5YiG5LqrJzpcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIHNoYXJlX2FjdGlvbignYmF0Y2hEZWxldGUnLCBbaXRlbS5zaGFyZV9pZF0pXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5L2g5pys5qyh5omn6KGM5pON5L2c55qE5pivJyArIGlucHV0XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgIGNhc2UgJ+mAieaLqSc6XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICBzaG93U2VsZWN0T3B0aW9ucyh7XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICfor7fpgInmi6nmk43kvZwnLFxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IFsn6YCJ5oupJywgJ+S4jemAieaLqScsICflhajpg6jpgInmi6knLCAn5riF56m65omA5pyJ6YCJ5oupJ10sXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgIChpdGVtLCBsaXN0KSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmlsZV9hY3Rpb24gPSBzdG9yYWdlMC5nZXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoaW5wdXQpIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICfpgInmi6knOlxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlX2FjdGlvbi5wdXNoKGl0ZW0uc2hhcmVfaWQpXFxyXFxuXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIGZpbGVfYWN0aW9uKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn5LiN6YCJ5oupJzpcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZV9hY3Rpb24uc3BsaWNlKGZpbGVfYWN0aW9uLmluZGV4T2YoaXRlbS5zaGFyZV9pZCksIDEpXFxyXFxuXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JhZ2UwLnB1dE15VmFyKCdmaWxlX2FjdGlvbicsIGZpbGVfYWN0aW9uKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn5riF56m65omA5pyJ6YCJ5oupJzpcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVfYWN0aW9uLnB1c2gobGlzdFtpXS5zaGFyZV9pZClcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBmaWxlX2FjdGlvbilcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLFxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgKSxcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICBjYXNlICfmk43kvZwnOlxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgc2hvd1NlbGVjdE9wdGlvbnMoe1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn6K+36YCJ5oup5pON5L2cJyxcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBbJ+WkjeWItuaJgOaciemAieaLqeWIhuS6qycsICfmkqTplIDmiYDmnInpgInmi6nliIbkuqsnXSxcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZygoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgc2hhcmVfYWN0aW9uLCBzaGFyZV9jb3B5X3VybCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGZpbGVfYWN0b2luID0gc3RvcmFnZTAuZ2V0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoaW5wdXQpIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+WkjeWItuaJgOaciemAieaLqeWIhuS6qyc6XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoYXJlX2FjdGlvbignYmF0Y2hEZWxldGUnLCBmaWxlX2FjdG9pbilcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yYWdlMC5wdXRNeVZhcignZmlsZV9hY3Rpb24nLCBbXSlcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICBkZWZhdWx0OlxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgbGV0IGZpbGVfYWN0aW9uID0gc3RvcmFnZTAuZ2V0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICBsZXQgc2hvd19zZWxlY3RfaXRlbXMgPSBbXVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgY29uc3QgeyBnZXRfaXRlbXNfbGlzdCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIGxldCBsaXN0ID0gZ2V0X2l0ZW1zX2xpc3QoJyonKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaXN0LmZpbGVzLmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgaWYgKGZpbGVfYWN0aW9uLmluZGV4T2YobGlzdC5maWxlc1tpXS5zaGFyZV9pZCkgIT0gLTEpIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgc2hvd19zZWxlY3RfaXRlbXMucHVzaChsaXN0LmZpbGVzW2ldLm5hbWUpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgc2hvd1NlbGVjdE9wdGlvbnMoe1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn5bey6YCJ5oup55qE5paH5Lu2L+aWh+S7tuWkuScsXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgY29sOiAxLFxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHNob3dfc2VsZWN0X2l0ZW1zLFxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+aYvuekuuW3sumAieaLqeeahOaWh+S7tuWkuS/mlofku7bvvIzngrnlh7vml6DmlYgnXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgfSksXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgJC5sb2coZmlsZV9hY3Rpb24pXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgIGl0ZW0sXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICBsaXN0LmZpbGVzXFxyXFxuICAgICAgICAgICAgICAgIC8vIClcXHJcXG4gICAgICAgICAgICB9XFxyXFxuICAgICAgICB9IGVsc2UgaWYgKGl0ZW0ua2luZCA9PSAnZHJpdmUjZm9sZGVyJykge1xcclxcbiAgICAgICAgICAgIHVybCA9ICQoKS5sYXp5UnVsZShcXHJcXG4gICAgICAgICAgICAgICAgKHBhdGhzLCBpdGVtLCBwYXRoc19raW5kKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICBwdXRNeVZhcignc2VhcmNoXzEnLCAnMCcpXFxyXFxuICAgICAgICAgICAgICAgICAgICBwYXRocy5wdXNoKHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZDogaXRlbS5pZCxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBpdGVtLm5hbWUsXFxyXFxuICAgICAgICAgICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAucHV0TXlWYXIocGF0aHNfa2luZCwgcGF0aHMpXFxyXFxuICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgIHBhdGhzLFxcclxcbiAgICAgICAgICAgICAgICBpdGVtLFxcclxcbiAgICAgICAgICAgICAgICBwYXRoc19raW5kXFxyXFxuICAgICAgICAgICAgKVxcclxcbiAgICAgICAgfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICB2YXIgZXh0ID0gZ2V0RXh0KGl0ZW0ubmFtZSlcXHJcXG4gICAgICAgICAgICBpZiAoIWV4dCkge1xcclxcbiAgICAgICAgICAgICAgICB1cmwgPSAkKFsn6KeG6aKRJywgJ+mfs+mikScsICfmlofmoaMv5Zu+54mHJywgJ+S4i+i9vSddLCAyLCAn6K+36YCJ5oup5omT5byA5pa55byPJykuc2VsZWN0KFxcclxcbiAgICAgICAgICAgICAgICAgICAgKGl0ZW0sIGV4dCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoaW5wdXQpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAn6KeG6aKRJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dCA9ICcjaXNWaWRlbz10cnVlIydcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ+mfs+mikSc6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHQgPSAnI2lzTXVzaWM9dHJ1ZSMnXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICfmlofmoaMv5Zu+54mHJzpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dCA9ICcjLmpwZydcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHQgPSAnJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBwdXRNeVZhcignc2VhcmNoXzEnLCAnMCcpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHsgZ2V0X2l0ZW1fdXJsIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZXMgPSBnZXRfaXRlbV91cmwoaXRlbS5pZClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzLm1lZGlhcy5sZW5ndGggPT0gMCkge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzLndlYl9jb250ZW50X2xpbmsgKyBleHRcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChpdGVtIG9mIHJlcy5tZWRpYXMpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0bXAgPSBpdGVtLmxpbmtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAudXJsKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRtcC51cmwgKyBleHRcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge31cXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgICAgICAgICAgaXRlbSxcXHJcXG4gICAgICAgICAgICAgICAgICAgIGV4dFxcclxcbiAgICAgICAgICAgICAgICApXFxyXFxuICAgICAgICAgICAgfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICAgICAgaWYgKGV4dCA9PSAnIy5qcGcnICYmIGdldE15VmFyKCdsaXN0X3Nob3dfc3R5bGUnLCAnMCcpID09ICcyJykge1xcclxcbiAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3NlYXJjaF8xJywgJzAnKVxcclxcbiAgICAgICAgICAgICAgICAgICAgdmFyIHsgZ2V0X2l0ZW1fdXJsIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAgICAgbGV0IHJlcyA9IGdldF9pdGVtX3VybChpdGVtLmlkKVxcclxcbiAgICAgICAgICAgICAgICAgICAgdXJsID0gJ3BpY3M6Ly8nICsgcmVzLndlYl9jb250ZW50X2xpbmtcXHJcXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIHVybCA9ICQoKS5sYXp5UnVsZShcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAoaXRlbSwgZXh0KSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dE15VmFyKCdzZWFyY2hfMScsICcwJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHsgZ2V0X2l0ZW1fdXJsIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgcmVzID0gZ2V0X2l0ZW1fdXJsKGl0ZW0uaWQpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMubWVkaWFzLmxlbmd0aCA9PSAwKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzLndlYl9jb250ZW50X2xpbmsgKyBleHRcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGl0ZW0gb2YgcmVzLm1lZGlhcykge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdG1wID0gaXRlbS5saW5rXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcC51cmwpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRtcC51cmwgKyBleHRcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7fVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4dFxcclxcbiAgICAgICAgICAgICAgICAgICAgKVxcclxcbiAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgIC8vIGlmIChleHQgPT0gJyMuanBnJykge1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgcHV0TXlWYXIoJ3NlYXJjaF8xJywgJzAnKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgdmFyIHsgZ2V0X2l0ZW1fdXJsIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgbGV0IHJlcyA9IGdldF9pdGVtX3VybChpdGVtLmlkKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgaWYgKHJlcy5tZWRpYXMubGVuZ3RoID09IDApIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICByZXR1cm4gcmVzLndlYl9jb250ZW50X2xpbmsgKyBleHRcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgIHVybCA9ICdwaWNzOi8vJyArIG11bHRpcGxlX3BpY191cmxzLmpvaW4oJyYmJylcXHJcXG4gICAgICAgICAgICAgICAgLy8gaWYgKGdldE15VmFyKCdsaXN0X3Nob3dfc3R5bGUnLCAnMCcpID09ICcyJykge1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgcHV0TXlWYXIoJ3NlYXJjaF8xJywgJzAnKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgdmFyIHsgZ2V0X2l0ZW1fdXJsIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgLy8gdmFyIHsgZ2V0RXh0IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9MaXN0JylcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgIGxldCBtdWx0aXBsZV9waWNfaWRzID0gW11cXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgIGxldCBtdWx0aXBsZV9waWNfdXJscyA9IFtdXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QuZmlsZXMubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICBpZiAoZ2V0RXh0KGxpc3QuZmlsZXNbaV0ubmFtZSkgPT0gJyMuanBnJykge1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICBtdWx0aXBsZV9waWNfaWRzLnB1c2gobGlzdC5maWxlc1tpXS5pZClcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICB9XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAkLmxvZygxMjMpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG11bHRpcGxlX3BpY19pZHMubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICBsZXQgcGljX3JlcyA9IGdldF9pdGVtX3VybChtdWx0aXBsZV9waWNfaWRzW2ldKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgIG11bHRpcGxlX3BpY191cmxzLnB1c2gocGljX3Jlcy53ZWJfY29udGVudF9saW5rKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgJC5sb2coMjM0KVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgLy8gdG9hc3QoJ+ato+WcqOW8gOWQr+a8q+eUu+aooeW8jy4uLicpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICB1cmwgPSAncGljczovLycgKyBtdWx0aXBsZV9waWNfdXJscy5qb2luKCcmJicpXFxyXFxuICAgICAgICAgICAgICAgIC8vIH0gZWxzZSB7XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICB1cmwgPSAkKCkubGF6eVJ1bGUoXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgKGl0ZW0sIGV4dCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICBwdXRNeVZhcignc2VhcmNoXzEnLCAnMCcpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgIHZhciB7IGdldF9pdGVtX3VybCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgbGV0IHJlcyA9IGdldF9pdGVtX3VybChpdGVtLmlkKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICBpZiAocmVzLm1lZGlhcy5sZW5ndGggPT0gMCkge1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgcmV0dXJuIHJlcy53ZWJfY29udGVudF9saW5rICsgZXh0XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgZm9yIChpdGVtIG9mIHJlcy5tZWRpYXMpIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIHRyeSB7XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgbGV0IHRtcCA9IGl0ZW0ubGlua1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAudXJsKSB7XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0bXAudXJsICsgZXh0XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge31cXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgaXRlbSxcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICBleHRcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgIClcXHJcXG4gICAgICAgICAgICAgICAgLy8gfVxcclxcbiAgICAgICAgICAgICAgICAvLyB1cmwgPSAkKFsn5Y2V5Zu+5qih5byPJywgJ+WkmuWbvuaooeW8jyddLCAyLCAn6K+36YCJ5oupJykuc2VsZWN0KFxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgKGl0ZW0sIGV4dCwgbGlzdCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgIHN3aXRjaCAoaW5wdXQpIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgY2FzZSAn5aSa5Zu+5qih5byPJzpcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIHZhciB7IGdldF9pdGVtX3VybCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIHZhciB7IGdldEV4dCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvTGlzdCcpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICBsZXQgbXVsdGlwbGVfcGljX2lkcyA9IFtdXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICBsZXQgbXVsdGlwbGVfcGljX3VybHMgPSBbXVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgaWYgKGdldEV4dChsaXN0W2ldLm5hbWUpID09ICcjLmpwZycpIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlwbGVfcGljX2lkcy5wdXNoKGxpc3RbaV0uaWQpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBtdWx0aXBsZV9waWNfaWRzLmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgbGV0IHBpY19yZXMgPSBnZXRfaXRlbV91cmwobXVsdGlwbGVfcGljX2lkc1tpXSlcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICBtdWx0aXBsZV9waWNfdXJscy5wdXNoKHBpY19yZXMud2ViX2NvbnRlbnRfbGluaylcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIHRvYXN0KCfmraPlnKjlvIDlkK/mvKvnlLvmqKHlvI8o5oql6ZSZ6K+35peg6KeG77yM5rW36ZiU5Y6f5ZugKS4uLicpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICByZXR1cm4gJ3BpY3M6Ly8nICsgbXVsdGlwbGVfcGljX3VybHMuam9pbignJiYnKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICBkZWZhdWx0OlxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3NlYXJjaF8xJywgJzAnKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgdmFyIHsgZ2V0X2l0ZW1fdXJsIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgbGV0IHJlcyA9IGdldF9pdGVtX3VybChpdGVtLmlkKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgaWYgKHJlcy5tZWRpYXMubGVuZ3RoID09IDApIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzLndlYl9jb250ZW50X2xpbmsgKyBleHRcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgIGZvciAoaXRlbSBvZiByZXMubWVkaWFzKSB7XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRtcCA9IGl0ZW0ubGlua1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wLnVybCkge1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRtcC51cmwgKyBleHRcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgIGl0ZW0sXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICBleHQsXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICBsaXN0LmZpbGVzXFxyXFxuICAgICAgICAgICAgICAgIC8vIClcXHJcXG4gICAgICAgICAgICAgICAgLy8gfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gdXJsID0gJCgpLmxhenlSdWxlKFxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgKGl0ZW0sIGV4dCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgIHB1dE15VmFyKCdzZWFyY2hfMScsICcwJylcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICB2YXIgeyBnZXRfaXRlbV91cmwgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgbGV0IHJlcyA9IGdldF9pdGVtX3VybChpdGVtLmlkKVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgIGlmIChyZXMubWVkaWFzLmxlbmd0aCA9PSAwKSB7XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgIHJldHVybiByZXMud2ViX2NvbnRlbnRfbGluayArIGV4dFxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICBmb3IgKGl0ZW0gb2YgcmVzLm1lZGlhcykge1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICB0cnkge1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgbGV0IHRtcCA9IGl0ZW0ubGlua1xcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgaWYgKHRtcC51cmwpIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG1wLnVybCArIGV4dFxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICB9IGNhdGNoIChlKSB7fVxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICBpdGVtLFxcclxcbiAgICAgICAgICAgICAgICAvLyAgICAgZXh0XFxyXFxuICAgICAgICAgICAgICAgIC8vIClcXHJcXG4gICAgICAgICAgICAgICAgLy8gfVxcclxcbiAgICAgICAgICAgIH1cXHJcXG4gICAgICAgIH1cXHJcXG5cXHJcXG4gICAgICAgIC8vIGZpbGVfYWN0aW9uID0gc3RvcmFnZTAuZ2V0TXlWYXIoJ2ZpbGVfYWN0aW9uJywgW10pXFxyXFxuICAgICAgICBsZXQgbGlzdF9zaG93X3N0eWxlID0gJzAnXFxyXFxuICAgICAgICBzd2l0Y2ggKGdldE15VmFyKCdsaXN0X3Nob3dfc3R5bGUnLCAnMCcpKSB7XFxyXFxuICAgICAgICAgICAgY2FzZSAnMic6XFxyXFxuICAgICAgICAgICAgICAgIGxpc3Rfc2hvd19zdHlsZSA9ICdtb3ZpZV8xX3ZlcnRpY2FsX3BpYydcXHJcXG4gICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICBjYXNlICcxJzpcXHJcXG4gICAgICAgICAgICAgICAgbGlzdF9zaG93X3N0eWxlID0gJ21vdmllXzFfbGVmdF9waWMnXFxyXFxuICAgICAgICAgICAgICAgIGJyZWFrXFxyXFxuICAgICAgICAgICAgZGVmYXVsdDpcXHJcXG4gICAgICAgICAgICAgICAgbGlzdF9zaG93X3N0eWxlID0gJ2F2YXRhcidcXHJcXG4gICAgICAgIH1cXHJcXG5cXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICAvLyB0aXRsZTogaXRlbS5uYW1lLFxcclxcbiAgICAgICAgICAgIHRpdGxlOlxcclxcbiAgICAgICAgICAgICAgICBmaWxlX2FjdGlvbi5pbmRleE9mKFxcclxcbiAgICAgICAgICAgICAgICAgICAgZ2V0TXlWYXIoJ3Nob3dfaW5kZXgnLCAnMCcpID09ICcwJyAmJiBnZXRNeVZhcignaG9tZV9jYXRlZ29yeV9pbmRleCcsICcwJykgPT0gJzEnXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgPyBpdGVtLnNoYXJlX2lkXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgOiBpdGVtLmlkXFxyXFxuICAgICAgICAgICAgICAgICkgIT0gLTFcXHJcXG4gICAgICAgICAgICAgICAgICAgID8gc3R5bGVfY29sb3IoaXRlbS5uYW1lLCAnIzdCNjhFRScsICdzdHJvbmcnKS5yZXBsYWNlKCfigJjigJjigJnigJknLCAnJylcXHJcXG4gICAgICAgICAgICAgICAgICAgIDogaXRlbS5uYW1lLFxcclxcbiAgICAgICAgICAgIGltZzogaXRlbS5raW5kID09ICdkcml2ZSNmb2xkZXInID8gaXRlbS5pY29uX2xpbmsgOiBpdGVtLnRodW1ibmFpbF9saW5rLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiBsaXN0X3Nob3dfc3R5bGUsXFxyXFxuICAgICAgICAgICAgLy8gY29sX3R5cGU6IGdldE15VmFyKCdsaXN0X3Nob3dfc3R5bGUnLCAnMCcpID09ICcwJyA/ICdhdmF0YXInIDogJ21vdmllXzFfdmVydGljYWxfcGljJyxcXHJcXG4gICAgICAgICAgICAvLyBkZXNjOiAn57KJ5aa554ixUGlrUGFrJyxcXHJcXG4gICAgICAgICAgICAvLyBjb2xfdHlwZTogJ21vdmllXzEnLFxcclxcbiAgICAgICAgICAgIC8vIGNvbF90eXBlOiBcXFwibW92aWVfMV9sZWZ0X3BpY1xcXCIsXFxyXFxuICAgICAgICAgICAgdXJsOiB1cmwsXFxyXFxuICAgICAgICAgICAgZXh0cmE6IHtcXHJcXG4gICAgICAgICAgICAgICAgbG9uZ0NsaWNrOiBsb25nQ2xpY2tfYXJyLFxcclxcbiAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICB9KVxcclxcbiAgICB9KVxcclxcbn1cXHJcXG5cXHJcXG5mdW5jdGlvbiBnZW5lcmF0ZV9kb3dubG9hZF9saXN0KHJlcykge1xcclxcbiAgICB2YXIgeyBkb3dubG9hZF9saXN0IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICBsZXQgZG93bmxvYWRfY2F0ZWdvcnlfaW5kZXggPSBnZXRNeVZhcignZG93bmxvYWRfY2F0ZWdvcnlfaW5kZXgnLCAnMCcpXFxyXFxuICAgIHN3aXRjaCAoZG93bmxvYWRfY2F0ZWdvcnlfaW5kZXgpIHtcXHJcXG4gICAgICAgIGNhc2UgJzAnOlxcclxcbiAgICAgICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICAgICAgY29sX3R5cGU6ICdpbnB1dCcsXFxyXFxuICAgICAgICAgICAgICAgIGRlc2M6ICfor7fovpPlhaXkupHkuIvovb3pk77mjqUo5Y+v5o2i6KGM5LiA5qyh5oCn5re75Yqg5aSa5Liq6ZO+5o6lKScsXFxyXFxuICAgICAgICAgICAgICAgIGV4dHJhOiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICB0eXBlOiAndGV4dGFyZWEnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAtMSxcXHJcXG4gICAgICAgICAgICAgICAgICAgIGhpZ2hsaWdodDogdHJ1ZSxcXHJcXG4gICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlOiAkLnRvU3RyaW5nKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBwdXRNeVZhcignYWRkX2Rvd25sb2FkX2xpbmsnLCBpbnB1dClcXHJcXG4gICAgICAgICAgICAgICAgICAgIH0pLFxcclxcbiAgICAgICAgICAgICAgICB9LFxcclxcbiAgICAgICAgICAgIH0pXFxyXFxuXFxyXFxuICAgICAgICAgICAgLy8g6Ze06ZqU5qCPXFxyXFxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxMDsgaSsrKSB7XFxyXFxuICAgICAgICAgICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnYmxhbmtfYmxvY2snLFxcclxcbiAgICAgICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgIH1cXHJcXG5cXHJcXG4gICAgICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgICAgIHRpdGxlOiAn5re75YqgJyxcXHJcXG4gICAgICAgICAgICAgICAgdXJsOiAkKCkubGF6eVJ1bGUoKCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgbGV0IGlucHV0ID0gZ2V0TXlWYXIoJ2FkZF9kb3dubG9hZF9saW5rJywgJycpXFxyXFxuICAgICAgICAgICAgICAgICAgICB2YXIgeyBkb3dubG9hZF9hZGQgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgICAgICBkb3dubG9hZF9hZGQoaW5wdXQpXFxyXFxuICAgICAgICAgICAgICAgICAgICBwdXRNeVZhcignZG93bmxvYWRfY2F0ZWdvcnlfaW5kZXgnLCAxKVxcclxcbiAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+W3sue7j+a3u+WKoO+8jOmcgOimgeetieS4gOauteaXtumXtO+8jOacjeWKoeWZqOaJjeiDveS4i+i9veWujOavlSdcXHJcXG4gICAgICAgICAgICAgICAgfSksXFxyXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8yJyxcXHJcXG4gICAgICAgICAgICB9KVxcclxcblxcclxcbiAgICAgICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICAgICAgdGl0bGU6ICfmuIXnqbonLFxcclxcbiAgICAgICAgICAgICAgICB1cmw6ICQoKS5sYXp5UnVsZSgoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgICAgIH0pLFxcclxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfMicsXFxyXFxuICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgZGVmYXVsdDpcXHJcXG4gICAgICAgICAgICAvLyDlvITkuKrlrprml7blmajkuI3mlq3mm7TmlrDnirbmgIFcXHJcXG4gICAgICAgICAgICBsZXQgdGFza19pZCA9ICdkb3dubG9hZF90YXNrX2lkJ1xcclxcbiAgICAgICAgICAgIGxldCBhY2Nlc3NfdG9rZW4gPSBnZXRJdGVtKCdhY2Nlc3NfdG9rZW4nLCAnJylcXHJcXG4gICAgICAgICAgICByZWdpc3RlclRhc2soXFxyXFxuICAgICAgICAgICAgICAgIHRhc2tfaWQsXFxyXFxuICAgICAgICAgICAgICAgIDEwMDAsXFxyXFxuICAgICAgICAgICAgICAgICQudG9TdHJpbmcoXFxyXFxuICAgICAgICAgICAgICAgICAgICAodGFza19pZCwgYWNjZXNzX3Rva2VuKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHsgZG93bmxvYWRfbGlzdCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJP3J1bGU957KJ5aa554ixUGlrUGFrJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgc3RvcF90YXNrX3RpbWVyID0gdHJ1ZVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBkb3dubG9hZF9saXN0X3JlcyA9IGRvd25sb2FkX2xpc3QoYWNjZXNzX3Rva2VuKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRvd25sb2FkX2xpc3RfcmVzID0gZG93bmxvYWRfbGlzdF9yZXMudGFza3NcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRvd25sb2FkX2xpc3RfcmVzLmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkb3dubG9hZF9saXN0X3Jlc1tpXS5waGFzZSA9PSAnUEhBU0VfVFlQRV9SVU5OSU5HJykge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcF90YXNrX3RpbWVyID0gZmFsc2VcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVJdGVtKGBkb3dubG9hZF9pdGVtX2lkXyR7aX1gLCB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjOiBgJHtkb3dubG9hZF9saXN0X3Jlc1tpXS5tZXNzYWdlfSgke2Rvd25sb2FkX2xpc3RfcmVzW2ldLnByb2dyZXNzfSUpYCxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN0b3BfdGFza190aW1lcikge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1blJlZ2lzdGVyVGFzayh0YXNrX2lkKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgICAgICB0YXNrX2lkLFxcclxcbiAgICAgICAgICAgICAgICAgICAgYWNjZXNzX3Rva2VuXFxyXFxuICAgICAgICAgICAgICAgIClcXHJcXG4gICAgICAgICAgICApXFxyXFxuICAgICAgICAgICAgLy8g5qC55o2uaWTojrflj5bku7vliqHov5vluqbvvIznhLblkI7mj5Dlj5blkI3lrZflkozov5vluqbvvIzmmL7npLpcXHJcXG4gICAgICAgICAgICBsZXQgZG93bmxvYWRfbGlzdF9yZXMgPSBkb3dubG9hZF9saXN0KClcXHJcXG4gICAgICAgICAgICBkb3dubG9hZF9saXN0X3JlcyA9IGRvd25sb2FkX2xpc3RfcmVzLnRhc2tzXFxyXFxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkb3dubG9hZF9saXN0X3Jlcy5sZW5ndGg7IGkrKykge1xcclxcbiAgICAgICAgICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogZG93bmxvYWRfbGlzdF9yZXNbaV0ubmFtZSxcXHJcXG4gICAgICAgICAgICAgICAgICAgIGRlc2M6IGRvd25sb2FkX2xpc3RfcmVzW2ldLm1lc3NhZ2UsXFxyXFxuICAgICAgICAgICAgICAgICAgICBkZXNjOiBgJHtkb3dubG9hZF9saXN0X3Jlc1tpXS5tZXNzYWdlfSgke2Rvd25sb2FkX2xpc3RfcmVzW2ldLnByb2dyZXNzfSUpYCxcXHJcXG4gICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnYXZhdGFyJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgIC8vIGltZzogZG93bmxvYWRfbGlzdF9yZXNbaV0udGh1bWJuYWlsX2xpbmssXFxyXFxuICAgICAgICAgICAgICAgICAgICBpbWc6ICdodHRwczovL215cGlrcGFrLmNvbS9mYXZpY29uLTMyeDMyLnBuZycsXFxyXFxuICAgICAgICAgICAgICAgICAgICBleHRyYToge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBgZG93bmxvYWRfaXRlbV9pZF8ke2l9YCxcXHJcXG4gICAgICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgfVxcclxcbiAgICB9XFxyXFxufVxcclxcblxcclxcbiQuZXhwb3J0cyA9IHtcXHJcXG4gICAgZ2VuZXJhdGVfbGlzdCxcXHJcXG4gICAgZ2VuZXJhdGVfZG93bmxvYWRfbGlzdCxcXHJcXG4gICAgZ2V0RXh0LFxcclxcbn1cXHJcXG5cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIkV4dGVuZFwiLFwicGF0aFwiOlwiRXh0ZW5kXCIsXCJydWxlXCI6XCIkLmV4dGVuZCh7XFxyXFxuICAgIGF1ZGlvOiBbJ21wMycsICdmbGFjJywgJ29nZycsICdtNGEnLCAnd2F2JywgJ29wdXMnXSxcXHJcXG4gICAgbW92aWU6IFsnbXA0JywgJ21rdicsICdhdmknLCAnbW92JywgJ3JtdmInLCAnd2VibScsICdmbHYnLCAnbTR2JywgJ20zdTgnLCAndHMnXSxcXHJcXG4gICAgaW1nOiBbJ2pwZycsICdwbmcnLCAnanBlZycsICdnaWYnLCAnc3ZnJywgJ3JhdyddLFxcclxcbiAgICB0eHQ6IFsndHh0JywgJ3NydCcsICdzdWInLCAnanNvbiddLFxcclxcbiAgICAvLyAxLiBzdWJtaXRfdXBkYXRlX2luZm/nqbogLT4g6K6+572udXBkYXRlX2luZm/nmoR2ZXJzaW9u44CBY29udGVudCAtPiDliIbkuqvkupHliarotLTmnb8gLT4g5ou/5Yiw5bCP56iL5bqP5pyA5paw54mI5pys5LqR5Y+j5LukIOKAlD4g6K6+572udXBkYXRlX2luZm/nmoR1cmxcXHJcXG4gICAgLy8gMi4gc3VibWl0X3VwZGF0ZV9pbmZv5LiN56m6IC0+IOaPkOS6pHVwZGF0ZV9pbmZvXFxyXFxuICAgIC8vIDMuIHN1bWl0X3VwZGF0ZV9pbmZv56m6IC0+IOS4jeaPkOS6pCjpu5jorqTnirbmgIEpXFxyXFxuICAgIHVwZGF0ZV9pbmZvOiB7XFxyXFxuICAgICAgICB2ZXJzaW9uOiAnMjAyNDA1MjEyMDEyMzMnLFxcclxcbiAgICAgICAgYWQ6ICcnLFxcclxcbiAgICAgICAgY29udGVudDogJ+S8mOWMluabtOaWsOOAgea1j+iniOaooeW8jycsXFxyXFxuICAgICAgICB1cmw6ICfkupE2b29vb2xlL3h4eHh4eC96YmplaWpkNHR2aWRvdmtoJyxcXHJcXG4gICAgfSxcXHJcXG59KVxcclxcblwifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwiRGVidWdcIixcInBhdGhcIjpcIkRlYnVnXCIsXCJydWxlXCI6XCJmdW5jdGlvbiBzdHlsZV9jb2xvcihzdHIsIGNvbG9yLCB0aGlja25lc3MpIHtcXHJcXG4gICAgc3dpdGNoICh0aGlja25lc3MpIHtcXHJcXG4gICAgICAgIGNhc2UgJ3NtYWxsJzpcXHJcXG4gICAgICAgICAgICByZXR1cm4gJ+KAmOKAmOKAmeKAmTxzcGFuIHN0eWxlPVxcXCJjb2xvcjonICsgY29sb3IgKyAnXFxcIj48c21hbGw+JyArIHN0ciArICc8L3NtYWxsPjwvc3Bhbj4nXFxyXFxuXFxyXFxuICAgICAgICBjYXNlICdzdHJvbmcnOlxcclxcbiAgICAgICAgICAgIHJldHVybiAn4oCY4oCY4oCZ4oCZPHNwYW4gc3R5bGU9XFxcImNvbG9yOicgKyBjb2xvciArICdcXFwiPjxzdHJvbmc+JyArIHN0ciArICc8L3N0cm9uZz48L3NwYW4+J1xcclxcblxcclxcbiAgICAgICAgZGVmYXVsdDpcXHJcXG4gICAgICAgICAgICByZXR1cm4gJ+KAmOKAmOKAmeKAmTxzcGFuIHN0eWxlPVxcXCJjb2xvcjonICsgY29sb3IgKyAnXFxcIj4nICsgc3RyICsgJzwvc3Bhbj4nXFxyXFxuICAgIH1cXHJcXG59XFxyXFxuXFxyXFxuZnVuY3Rpb24gZGVidWdfbG9nKG9iaikge1xcclxcbiAgICBsZXQgZGVidWdfZW5ibGUgPSBnZXRJdGVtKCdkZWJ1Z19lbmFibGUnLCAnMCcpXFxyXFxuICAgIGlmIChkZWJ1Z19lbmJsZSA9PSAnMScpIHtcXHJcXG4gICAgICAgIC8vIGlmICh0cnVlKSB7XFxyXFxuICAgICAgICAkLmxvZyhvYmopXFxyXFxuICAgIH1cXHJcXG59XFxyXFxuXFxyXFxuJC5leHBvcnRzID0ge1xcclxcbiAgICBzdHlsZV9jb2xvcixcXHJcXG4gICAgZGVidWdfbG9nLFxcclxcbn1cXHJcXG5cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIkludml0ZVwiLFwicGF0aFwiOlwiSW52aXRlXCIsXCJydWxlXCI6XCJldmFsUHJpdmF0ZUpTKCcrNnNFeXZrUGJXNENwaU1RUGhQVFordHFiNGdtZVJYOWdmNmZoSlVBQWhTZDFLcXgxTnFaeStuYkxsZ25rZW9qNDBKTDFFWTEzcTVldTlzN1BaMDFMRFpPZnlmZGtZZ0pDWXVDQ3FYZkNwL0M5VmlhellENDQvRWxFSmp0R01VRzd2ZVpqMHlsL0RCSDBFYk5DTDV0TURybm1xSVhEY3ZsU1hFRDhTZ2RFRzNlQzVOMU5majFQUE5tMGI0cHZiR21SY2h1ZkRheVNIRGpQdFBrTHlmOUxPOVJRcmFCbEFhYWRFQ0NQWDVUaS9TenhwWWxkNjN0OXB3WkdjekpVN3EyOWdZaXMrdEhPVEVsOVBYUFdjdGlJVnVrYUFoQzZhNnlIc05GS1RxS1FralU1VlBzaVBIaWcwVDZiZkFxMmhsZXkvMHdUVzJvVTdxdE13UUlBaUxoRVFGWlVneTc4NXk5Z1Y4Z1RkSEJEM1ZnT3ZJbzZQQ0tUMHBzWUVUbjVzaGRUeEI3Q2NNZnZiQ0ZvWWF0ZHRwWkw0MmpDS1BGQjczcWhCenRnUk9Xd21Gdk9wMDNOa2JJb0lWSHVYZk1lK0lWOGM2UEREdUVnY0k4UkZBR1huZkhXUGtScFdTSkZFRDEwM0NPYkt2M0lEYkIwdVNrLzltNGw5N2V3ZTJDSTh5eGtkZ1FEc2hiTUtkNnpVdm5YL0dVQWErdXVXOEd5U3RxWTdNSjdrUjJJOEpMbTVPcmVjRWFrWi8yZUlVMVRaMVZLOU1QVFJET2pBN3g5Nlo2TUd1eithRzVuU1h6SWhINHZVcTR6RFR5RGtpTjB5WDRtNFpUNE1vODBTNHRCMDdvYzMyMjR1VGhLQkQzbHhqd3NZNmhudDdDZlNQcGt3c0VlSUNxU3J0eXVPQ3JqbS9WQk40VHE3L25rYlM2dzlhbTMzaFRnbFJKb2R6Q05oa2pBYXNYQ0MvYmFxanJsMXhZcUs3TTJRSUlwY2tic0loK0kvVkZRL2VXcGtVSUV4Y0Z0anY2UXNxZEdYOGlxWXdBRkVISEhMdzI0TXVMZTdEdHlrWDM4NXpYNUJrOXFtMXZycWxlREpwNUVnSFVVd21lMFNISndvcnFaaEx0NWQ5TG80T3phbThPa0NtSzRWNnlxK1hEcE1vQ1pnc0g0VjhzUE82RnI1WDhpdDZBWUZtZVpabFl4emU0UEliUjUzdU9uS2Mva2pkUlZGQ210N0ozMklETVBqMG9oZDFxY1EzSm5YYzNrY0xXUmg0NEQxdXZPRzk3N0p2VjJDQkZLZytQandab2FjLytXUndscmdHaGduZVZVVUhyN3ZQV3NLczRzVGJveFk2TlNMUHJVT3p0c1RsNEZHNkc1QllrTlNNQXdxSUR5N0pJOFJGZ3BqM3hjZ0NCbU0zWmE5a1Z4dUNNbC9KRUpacGIzNnJEVU4yL1FJQ0paZUdITlUxYTVDMzZtVEEybDEwODh3THZqY1AvenQyY295UWFvdWx6Sm9mcUtFaXdVUjR0SGRnVnBJc2dUd1BJZ0xmSXRoMy9haC9kNUZQRCt0R0pDbEZmTUJHSUpJeXdyTDEyWVA0emk5THl6RUF0SzlmVkZERU9CRys1Mk01bENvbE95K0tRSkNKMDhqejBSVzRUMjBNUU9NQ2c4aVB4bkxpTkJQaEtDakZsZjRuTmx1c2FZbE5hb3JqY0pBNWx6OXR5dkV5VWJMcE9uNTdQQUpXdWZ5enN1ZFNVaUsrZTlVZHlDTlVCSnp0ZjU4UFByeHVkbTlkcWJ2N3ZRSGwrdWNTRzlKMDVkYTkvaXRIMU9ZeTg1L3VOcnl5VjhlSTN4V2FMTkFXSGZlWkoybzJoNDNJdVhEUGNpc2szOWo5R2t1a0FEQXRHaEtrcFpPS21nVnlvV1grZGRMMFNjZHpJZDJQTndmejJmeW8xUXpHd0IvNUF5eEVTTFh3ZlYrb2tENmt6TDBra2tReExqSDR6V1M3SVYvNU50N3NOV29wUkt4OXF4NDVtbm9PbGI3ZE0zaldaUVYyMzk0VGpjdEhwM0c5Vm9YNFNVVFlTbFBoclU0L0pGZFFzR3BsdFdLQk1ZWHlwUGg5eGRVbFN1T0M1ZFBVNkdHNjhFMWJva3ljR1Y5WEV3bHVyTDBFR0U4OGZiU3F3TkhZWlNtT3FBVVB1R3BDUHNaS1dreW53dVg1bTVjcW5BTkN4dFZWRzk3VDRuS25LczNseUhWR3BqVWtINnBZc3dSUzczWVFHQ21CQStmTDRqYm9DaVFyTTI4ZUFJYkViUHFHTG02eVJCc3JXZGE3Szg1UjRaWllzb0w2Mjd4MS9XbW1HYTNQc1duNC9KZHVvdmxqd2hvWVZ2djIwNW53bEtEQSswMnhHdzRTUXVBM2R5NGhwLy9EOTd2OHhYdnpueFc0MmwyMVJHb3BLcU0wL1ZiK1FFN2VlYzZmbWdiSzJndHFuT1VqaXgxZzVsdGN2ak9FUHYra2xMdDU1TWhPY0ExRFA1QXpkVkw1Rk5oMCtHZUhZV1ZFMHg2NmZvOWFNbndjN1RhaS91U2s4TzlNZmc0ZkZ0ejdSb3QxbEFxWW5Fb3NkRjByb21LVjgveWhKQmFSWDZpUVBxVE12U1NTUkRFdU1mak5acmdDQU5NMWF3YjErU2xJaTA5WENVd1kvOW1oTmFwNzg3U1pLWmRuRGY0QjBSdVJEekhqeUJOeW9FYkp4dFpRamMwdWY2V0RMTjFxRUNyamtJNG1Jd2pCN2t3M29jQzlUODl2WDFFRjBxdW9TZVZ4SjZRLzdkSHBFVDI2S3ZPekRGR1V1NEtaUHlrRmpYYVY2UWM1TGgzbUUvdThMVHhscHV2MWxDRFJTV3h0REUrb1djUTFUYWNwUjNCNmloYzFGcitocW9UWjgxdWtRY3NrTEhuQ2FXb3F5VU0xelI2Z1p5am5HUm1IZXB2VGY2cXlLczlUVDYvVkV5TEZaNngwVHF0a2NJRDFDN3QyM3psTk5JcWo5cEhjZEpkd3htSjhNa2dnY3JucEM1aU91ekNEK1grZEl5Y0Y4ZUx0MVQ3T1dqbk1MWjg1V3AyZm5wN1NGLzVLQlBsQkxTRnZuQUpockl2Vm5aNkZUSzFxYjlHbTJiOXRqU1F6WE5rcUxQVW5lU25XUTFpaEtzQnBvVkE4MXd6Y3pPWElSSHFKMnk3c3drL1hTT2JlQmFsZ04zY3Vway9tZjJ1WVFXUlhCOGpIbWZGcnkxRHQxMzJRVWc5cDlDclk1eElBQWg0WU9NeUJhd3FmL1YvTVhBRzRPV1NkbWpKRHlmNEdMOVAxSWp0Y3A5eUk0VWV5NUNjVkVlUFl6WjU2RzFEaHBHZjZUNEZYOTAyUU5LUkI0WkpMR2xZYW0xbmE1RVlVZEQwbUZwZlVCNW5SUnQ1T1hPWVpTOGJXYlM1akNnWFZOcDRHcWxuU3FFbG1kdXd3MUwzY04zY3Vway9tZjJ1WVFXUlhCOGpIbTFlQVlhQTIzcFRpNTNaTnpwaWZBNEVLK2lhamxvK0NqMSt3UXd2RHV0ditjQjBJNmlJRmhUOGRWYVJJazdXck9YMlh3S1ZNL2I2cm9IallzNk1qY1czVTNyREszKzh1NlR1SU8rVEttQ0JubHlBcWYrSXMvQ2Frd2FsUUxsYUlESTk0bDRzM2xiZHdDUVB4NG5UTWQ1RHFkUHdHeDkxY3JicnBtSWhjaGhic3Z5QXpXMXh2RnN3L01BT1pkWlVYVUxQNWNnOEJjWHhjT3VxbU9Qd0p2LzZqbUlFT3Z5YVUzejJMejBaWk5UcGRnaDV2cjRnSndOcjhzYzNYYlNpODlkaG01bTY3OWYxOUZzU2Q3RE9ucHB0T21JV1E4ZDI1MHMvSUxQakpRMU9zWVAva3VFRmFlRnJpWU83bVA0QTdHeEJVK3FQQlcya3dQZW1jOFpyc25KcmNOaEtEL3JsdmRRNzd6UndON2w4WFA0Z3hmMEZKTjA0L1NUMlI0R2NaZFB0RHhMU3BZWVEzdnhUUjVnQTJCN1liSDBROXVTSWRWY1pmOHA3dXlQa2U1cG5iQVgzQ2k5eXBpajdYaFlzOFVUNmNJS1JEbk5scmFqVTNzV1BFeUtYWEJOZ1lMSXJKZDRKOE5jK05Wc3JQMFdLVk1lb1g2NmJrSXFZNXpuTjl3ZGhuYm05MnE3c1A0T1ArcVQwZzhaYTdNSVA1ZjUwakp3WHg0dTNWUHM1YVpXL2Q3SWVqWEoxby93Rk5ObDE1aUs4N2NvMkh0SGVOTGcwOEdVcG1uRWVrOFo4RUNXRWJtblVld2lzRnBoSXhuVlFpZHp4d0JoUGdhODFjUnhUOVIzS1hBT2NNVnVpL0NPdzhKQUNBaDZ0OEdCZ2s4R1RKWGpuNnpEYkJpbUxyRUZUNm84RmJhVEE5Nlp6eG11eWNta0VMTDBqY2grMVRXTkJyaEdLd0JGcy9pREYvUVVrM1RqOUpQWkhnWnhsMjVTVWpPdGVyd0RMVHRzaUxTdnQ2a0ExaUM0QzlCRktBeDRXVnBUQVRwa1E1WkoyYU1rUEovZ1l2MC9VaU8xeWtqblhSMERON1pFRkVlTzlpSlFGME1TTjFjQlptRnpMRDhwN05GVHhwSEFFaGxzRDNhem1GTTNramF1MTdDRTFWeFZoRWFhbXp0TUkwdkh2Y2toUnhLOWNONmd3VUlXY2RxTnFveWV0MW1NdzNkeTZtVCtaL2E1aEJaRmNIeU1lYXJ3MmNTWlc0WXBFcnAzZnIrRGY2UnhHaXh2WmMrZ2I5NmRVTUJmR2paandodzBtYy9KTngxOVIzbjIxRVZDUnpPbnFoTk1MY0tLR25XKzNZMkVjOG1raEVJUHovdWd2UFhHTDJ1S3NxSE4wVENQaVo2eWU4OEFrUjR5NGQxeDgrVDVnRmM0VW1vRFQwWmxBT0o4MEU3NWNnS24vaUxQd21wTUdwVUM1V2lBeVBlSmVMTjVXM2NBa0Q4ZUowekhlUkpiYi95aDJ0NW1tbktsczIwUE9UeCtvWndiV1doNi9uOGdJcXA3bjB0dDhqTW1DcUFuWlFrQk45VmQ4VDZFaTlUK1F4TUdkOXlyV2lSQjlzNEpzVDREY2hBZG8xWUt3S3NSWmMrU1Vabkc5OHI3QUJUTVdzVG04dVZnTG9UelJWYkJnK25WZngxdVBLcjhibFJ4NmFCZU1QZEhPanZQN0NaV3JUQk1aVktycWtXUlEyZWtDRHpNWVFFaVBaT1grdS9mcDZXRVE3TmhwU3lwRFhoRlNhWFN2SVFnRjd6ZVdVeW1hdm53Sis2VFBFcGlHWVZsYkNjVzQ2eUlRdm0xR3Vpd1l1QWZRaTduWHNjcFVCU093L3kvRTZyQjBUdUpzdXF2YWFsOG01VlJKcWNVbk92V2M3NS92Z3lZZGlkQlNTWnJIcVphN3RmYlNkZ3RlM2tRSTZxUlRuQS9nc0tWY1pCekRVT0wzbmdTWXpiZ1pNd2ZVQ1haUThSK24xWTE0d3N6d3hnOEtmeWlOd2VGRXVJRFBBcnZpVUo1MFJnb2syNWlpZGorU3JpcjNKZHNHT0VCZTNiSDdETGs2OHlxTDdQNHVEd1lOZUhEclBYdTNSem9sc3VLNXVxUlNtR004Y01tanlTakw2SFFzOThZQ2kyTWV6aWNJM2dRWFJjUDNld2ZkUUtINzlVdkpZeUY2RFlWTDZjZ09GaW9NM3lkM003anl0UWM0TC9DNnVaRVZZN0dOOGJscU9xK1dlT3A5enZtOXVqS2hJNzNQSjAzdmxteWtkdVJsbGg3M1IwalZQLzJhRFFnK2twdG9SRGZSVGVzZHhKTnZJa213anI0dUM3QzMvalNtakFNVWhNcllhaG4yUThmeVFxWUtlR1Q3MThQZ0RyaW9WTWJ0VDM5Ym1vZWxxUUNDQkRlMm5PVC9BeGF1R25sRTFMcTF2S0JJL2xTVTRNLytmTGdFL2hCUEFWeHhiYkV0TmpMKzR5YXVjdmhnU1I5NEt5NGIya1pQbkpkdlZlRUdONmdndUpMRnNKQzB1Vm00YlFqQldCWGZXYzVJUjdKem5YWGhFNDhtV3AzNitxbEtEZzRYamxseE81UkVUNnpRb3Y4Q0lldXRxK01LdDJDTUNEeEhNZ2NzYVgvNVZtZ0NQNWREc214cFQ2aThaUTNFdHVZOHNKMis2YStEWm13WU1GdURFTEFIK3lyREhEc3ZhV1hndWdwd1FSWWFrbm41ZXVCM2RCOXp3L2U1SW0zZ2ZLSFFxbzg1YVJzbStZSmVzbTNtS2tQeVlHazBqWXdaeEFiRzRGblJKS0lKbjMzL0RJQnhqdGd0R3NDT0pOVVNXRVE4REdROHVRSFVWZzh4Z0RJYnA2c1c0aWVFWjBBaEZjMDUwbDFnSG9wWVM4b2RUY21YNXphSmt4SWM5VnRZOWJORlZEWHlDNFEzdWdkTzk0WFRSOWdoTEttK2tHbVZDZUZnU1ZDWnN5MldFTjJwK2hvUnRoSXdIYmRYY0Q1QXBKZ0JQVFkyOGF3dnBCUkQ2WnI3WDN6OHhGaWtQTzlQRWlJT200STBTcDBFTldYeGhEUEhabnRacGRsOC93ZWYvYTh5Qk1WUFY2K0NZWHFxcHVTdnErK0F3c0lDY1dJT05rUzNoZGxja3pCK0hIM1B5dmlzcTAxQVA2NTUxb3F2V3BQWjhVVUR5N3VFeWxXcFZ6N3RkdEJiM0pXNHI2YndXUVREa1hXT21HZjdCbjlnaHRBVjRITTZzRDhPTmFnV2hDQktVL0ZMUG5hRHlOeGc1dXc5Wjc4RWpvemFFL0IrRmZMRHp1aGErVi9JcmVnR0Jabm5SWVo0TzN1SjNDMFFmL0ZBN3lKTEh0aGR5QUxCZnVTc0lpTmRNRi9ieGNoWk4zYWYzSmxZeHJWUCtYQlllVEI4Vno1S1dodVdnZmRTT0V6TXRkNk5SMmg4QlZYWnY3V0xQNDFvK0lSdGg4OWRYUHRtUTZWSUNJSE9hREcvZkIzczByaXdHT0F3ZFhlWW1QS0dic2pTWk9sVHJRRlhuWVorTUMwM0tDMU1vSjhHMVgzcmQ1dFZXSnQzYVFNYWdlSUdtdWh6VnNEUm8xUEVhUG1VVXJxeVc5QXhlbVMwVTFyU0o1Q0J2VVloakdDSnRzYmNRUHFyd2hlbUplTmhZbmdvZTN3Wnl6SE83dG5zK0FqRE9wVklGKzdNTjZTemxraVNDcmhJczI4ODM3cU5xYUh6T2JDNWxpbS95TGhuVjVYeVdnSUZoN2VtSzJyT3ZsV3NzSFJNS2pRVHVnRWN5RjA4YlRZdUR0Q21CV0RLc1RFTUZET2xZbmR2bVBFRVJaeG91SndWcnVkeWE0clVFVmxBU2JBMGJ3YUcwcG5ENjRxa05IMkVzSWxDY0NyQ2V6WFlaNkRlVjdKTVhxdlV0RXBSSHNna1BGWXFtWk9RUG14dU5WUStNcThIKyt5OFlKRDZWa0p0THloYnhzbWNYMzlzVEYxbUZIMDdwOVlXclVkL3AzYWxmd1hrd3JoVENoUW5IcTkwZU53WDFvK1lNTU9oRDhFSmxQK2taRDR3NXplYXJBZmZ1bFZHSmJzZGNiSzgwUGdSdlZCOUhiS2g5QWU4T2o5bDU4a3ZSaVF4UVNwRmEwVlFPV20xZFN6MlcrWTlEdHZraFZITnhJdE5yNWx3OHpTMEFWVnBXSkFtSWVtaXRXVnhmNEtaa1lDWlFuekp3ekdjRS82bmIzTHQyZUtQU1FGcm9ZWEFtbXlXYUppektrWlArRk43QjlBRlRMS2NJbkZ3L0FUbVBoWTRUcjZ0V2Q5Um1hMHlzUzQwWDZKV0k2c2p4WGlWOHdyUFhaMHo3U1VUYnRTa1hrU3NEK2o4UW1iS0lGVUpiWDkzZ3NyelN3REI1dUs0ckdHN2NWTDNSTXRta1oyTDFWVzJjcnBEcGpsWGFRckFBQkwxNFRkT0t3OWFyNjJIMkdTWGJOb2NtZjhtWCtuSXp6NnVhK1Y0bGpDZUsrR1BEbXd1alhlMG01Y3AwVDJUbG02YnNFRGlzdDFzQm50RTBTYWpwaHBPNGJSSC9MWXp2dVJlUlI0ZDRML1l0a3RlL1RhZTNHNkRLa1pQK0ZON0I5QUZUTEtjSW5Gdy9wZU9VK1JjVDlubmJBSG40b2t3a3ozUkx2Y0ZaZkdLU2lkanN0MGY3MTl6Tzh6SkRSajRiYlFPZ0RBUWYxSzQ2NFlmVnpYY3VSMHAzeVp2RnhTZE52MU9lclVxbCtmaCtEVmhCNU5hb21mVUp0R2laYVJJblBUZU1jWjNFNHN2clNLNHpnU2lqdFhCam1NUlZ2R0RWdjhiVjdCU0hMYUZjM3ZrMTZTZHUrRVpmVVZaNE45T3ErWmdqaGRFbzVKTDBuVEI5OWo1OFVuKzlMcmMzaTEyYkprNFpjTE9jNks2YWhNNTBDM01wWFlxNDVRckZjZWd0bFVSY3pkTWRiNjdEQjNYSTdwbnpkb0dLd1dUR0I3T2NYV1E4ZDhjZ0ltbVlweDJCT3JWSVRlcC93eSt3bUk5alFEaldMSllyWXlJbXFPTmc5dHJMTUUwU3oyaHY2dWhvdTFPOWJta21hSkt4NmViVXluQjRRRVFCanh4cnRnV0REaDFxL1Q1bFlaOWRKS2cvRUY0MjRIUzdDam5wQm1pMFVLcGpNT1VmYVptbUxLWURBdU04a3dzbWE5MXZ0bXg5LzVzbmhDTFhxc0FqRExENkZwazdCVVJrd1I4UEtqakhiMnEwbml5aDd1aDd1QnZVdUJrdnNVTDdxQ1RCUTFMRUV2Y0hEekRWVCt2Zi9tWGdqOXRRUW5EMzBmc0tteSs2Nk5NWU9kLzZHRzZ4dFFYb2ZqaVVaeXNTbDZ1V1MxL3NCY3BvaDdramR2b1FvVDhjdXNsQi94RWdYeTFyMjIrZEpDNmg3ZzhzQ000N0djcE95amhrdUNMazV3L1RhbVZPRTBrRmpuZnIvUTVhMklXSEJTM0hxZnplblFhUm9mNmNoNFpQdWVydlozSnJYMllCWWYvM2FVNnlXK21kMHN5MFhpV0h5cUkxWndBK1VuYzBnWjlNSmJ5eFFxYjNqSnNXZFk0QVVnb3cvekV1Y282SVMvRnNkZzB2cXBlQUpzRFFXVHhDM2ppT1ArSExmMkwyMUZxSnFMNDFrNXlRci9aYWFCNDNDQ1gzWHNWaTVyTElNdDZMTUJKcGdiYkNxS3NJS25lQ3FlMHpxMkJGUVMwaGI1d0NZYXlMMVoyZWhVeXRhRFJLcUVncEFNdXJTQ2hQNjV5YUR3djBKSCtuSHQ5N2wxRW1aQ1VCWmEvMHF0OXJTckVpZ1lQaHFaVDZzRGFwaXo1cmZGdkEzeDZRaXhVYUVKai9ldUpIOUlVUUtxNUdCRkZxNkJlLzFJeWRXL055ZjE5YzRkUU5reTlUTmZ2dmNyMU1sQ0xvUzAvVG9LYjdDRkFqQnpVKzZ1ZXRtbGRTdDVCN1ZpZkVMS2RTeUdtaVdpdFNtdWk5RU9xUkZWSm1aTW9WbWpIbkxJTGNMVGRsQUVJd3g3V1JUVUF6TnJBWForSEgySUpHY1VtTkI2by9HQmxMMzluKzNnSGRaYzhnSDBuT0tQdDRtWldrcnAyRktWeGowZGZxcjVtckNLSlJQbzFCQVlwNzBRekFTQTZNQVFiVGZFUVpMaXJqUzJRUWhZblBRTHVSY3l2VHBpR0ZRRWZHWVJ3VzhnTjQ3aXpMdE83emlmZTZyRkFxSUg5M3l1VDZBdHM5MG4rcU1UYVV4ZjM4TG0ybGZSUEJWSkJnM3RHNHpTMEFKeng0eFo0am13N3ZOVUtMcGJQczg3M0xseUJLNEs5US96N29CWm9UbHE4bVZYYzMzUlN6Z2NWVG41R2lTWHBpMjBGamtscmlsYlJ5SlJDQ004b01FdnZEN2wrT08raGtMNmdxNyttSEZESmVMV2ZhWW4zOEVJSm9kR0JOZ1BFaHpRQVMyMTlzTG1lc2NvN1pZckh6TEs4dEkxbFp6K3dpZis5WklBZFQyVnYvdWlzOGxiWlV0eU13aFc1RGozY3BFZ2t4RllCeHNheVRXUDIvV1o1TFNjNG8rM2labGFTdW5ZVXBYR1BSMUdvVmFaV3N2Zi8xaU0vTWRwMDlJcVFva3BTZ3pkOGpjRzNCc0FQdzEvemwvcGdYWkxLZlg3dk1OUFcwczVJUTFMWE93SnZGL05BNGZ2NGdIUFZCQXpZcUJkWGtVNGNHM3pXbE8xSHlIVy8zMGFFQ3NILzdVc1QyclB3QVFiNHVud3prVHJpbzRqQVJINlp3VFhwUmxIM1JJUm1KVlQzS3l0ckh6U0o3TFhvek51WXJTemErS3h3Y1JNb3hTalk5SkQrNTRhYXR4RVh2ZWVQa3BWdXZIVXRwbU5RMmdEQTFHYitYSGxMMVdpdTV6UXpJMS94QTZuTWc1dGdocVhMT1hxMVNRcCs2Vkw3Rnk0Wi8yclBKVzA4c3J5MGpXVm5QN0NKLzcxa2dCMVBhcXR3VHhEVjJIRk5kT2M3MS9ucXo5SHRmSFdUOHBaT2E5OXlqNGMwREtwQmxDQzFRTmdVTHEyN0pFWjJRN0swdURCeVI0SVMyWFc4aWFkR1B2cEJLcVVILzlkTUNaaWh1cUFmRDUxbFc3YWI5ampSN3VkazBCdG1oVUNrUjYxdEoyZjE1VGtvS21MYkVRM1liOUxqaEFDOWRxcFJHSkxQcTltOW51RlVnclYrVndsemxidlFRWlBlZU94R1cwTm55V3kzWC9hOXJFWDIxMXFvRlV4amFpQWRiMmpFVjdaQ2x5QjRyWVdKMitTNnlkV2dFdTlOd3l1QWxVYU9tVXpNd0VRc0drbGprclNEQ0E1TlpUb2FjOTBFMmpGVXREZERwRkx5NHo5VklyWXlzRUJrRk1rYnBRcnBTM0dhRFZBNlM1R2owY0o3UjFwTGNKdkU3eUh5N1BJTDY1RVM4dVZ4QkhYWEYwcDFaYk10UDkyc0tBOVNLKy9OSHNxZjEzQ092SlFYSHo2eW5yNXNhNjUvSDQ3eTQ1cFR5a1plQ1NleTR4SUdvV0Z1UkZwRzRUOUlnYmhrNXlFdWREYnhuaFRCdWhyamJmTjl1bGo0bDRsMGZqMERsTWMwdWY2V0RMTjFxRUNyamtJNG1Jd3UrNWYvUC9VM3I5bzFIVWVrbjFqVmxlYnNpcDFLUXF3QVdrYmlLZU55eldHemVqRWx4TlVpY0k2bWFMYUhTZFh2dU5SWnMzd2RCSFBncTN4S3RvdkZyd2JxeEQzeWdweHJCMXJESlQwNmtFdkRvNUVJay9jbEVuOG5RTlJHZ0V6RnREU0E5RHVZZzFOZ25IY0F1RERHMVAzMFdaZXZHWWxUUldIZUZWK2Z3QWNKeWhhNVk3RlBLUzAyZDZFdzRHc3FVdGZQdmh0dEI4RExqb2NYNm80N1cwMGI5R1V6Zjk1d1FTMC9ublZHSWQ4S1ZPWXZYMzRYRDVaQzB2dzM2MWdQNUZzTzkwcFZPUENXV3VMV1V5TGd5a0pCYU55a1VZRHFOVFFIREJMRHJoM2liRzhaK3Q2TGtLQURxQjdVU1NROGJCNU93ODYxUExRbE40My9hU2ZNQTFzbnhxZVVya1psNzNqZmJzYU9Ia2ZFU3ZmQStKLzNTY2JkWEhrUE0yR1NFeUk1Y2VXZ09iMnR2ckhvMDM1VEQyYXg5ZVRxRXlzMDQ0djJ1RUFUOTNOVUNhMmVKT2xiZFlHZnBtNXNNVHBCTjNXOXpiR0tMOE1BVTJIK1JhVzdIMjFEY3pHcTUxVXZJdW9BRWtiVjRyQTFsa2F3UVRIdDFnMFo0cHcvT21GVU5NYkxqY1dqWFNVc0x0VnM3ZjBwbU1LM3A3YWo2SVZuZXRjOHl0Z3BIL1FUS082NVRFN2hEMmxhQjJxcFM0T21BcXhOQ3oyT1V5aCtuQ3ZnV0xxN2htVWxDSWJBb2xSVk9hanI5Tm5DMHMyWjJjSWpkRDloR3BPdnljZVUrRWE2NGxMY2pkb3NTc1lLbXBTU2QvNzBqeGJ4YWJLZHBPSjdkRjF5Q2tocTdWNUxGY0dva3ZmQ0syVEFtclVnaVhLREE0STIyZ3pVbGh4U2VSMUxVR01vdzFqdm9lNFplS1VBS3ZsTm8xMEhiMlpCais0djhrbnpZUVhLQmttb0puVnRDdms2cU9SbUJRektMNzRuOXpWRkN5ZnpyQmZaS3NzTXdaaDVGcFhoOEFxbk9nbHpmVXZNc1dTUkdqK1FKWFpRQmVJdHFaWTVUNFNXQ2Q5Sm54MUNNa0FuNTIvVnplVjdjU08yWTR5VHRNMUVsbUhzbXNsWlh6M1NtMmxmNm80T0lRU3R0SHUwWDVzNTNSTDBmNTlPNkFJOUlNcFFoUFhiaFdob0Z5dlZZa2NRUDF5VWJ2bTFuOFloenErSXdzTEtjdnk4UzlvWE9Nb080TW9rZFczNVQ1Wm54b21WTjVxQ2FDb216bUFCcWhPQUJFSEgxY3FpRDNhUVZVVTRnZDgvNWNRT1llYTJiRnVKNERwQUtRNzF0TGxLUGFnMTR3U3pLT0N6T3FPdE5PYWxtNmxaemZpWHdRYlJYNUpTbk9VbmZZNS9Od2RIMDlvUmpUejUyQWxUVmcybUlQOTJka1ZxMWtPaUVsRkQrUHUxTnRoU0FEVnZ0WVIwSmlYVGQ3c3pYbTVrWjdScEZZUTFjc3UxRWtIdk0rcERJMS9POFZYY3pVSUplN1V5R2FnZ3lQakVTdGRWOVBwRkZUUlRiVFRUaHlZdHIwLzRwWDdMYjNyUDJVQ1BLSGNaek13c2w4cjJ1bkFXdDVEdWFrVkRJb3dOVWNERjcrT3NxdUhpdnpqdlUwd3hxN0ZTbzV0UkI0ZWo5b2cxM0ZDK0JDdHRtc1lUVDdVRjRtaXZ3N0s1UnQ0a3dVTU8zN1ZpdnFDc2UzYjBMS2IzR1laNXVJbjZ4RGRtMmUzakI4a3NlcEJXeTVZVUxZOU5jUWxlZUkzcmpGSTRkazNlRTJFTDZPRnhxN0ZUWGg3UjVOUzRncDhXU0x2RFhnQ3RsK3RKUWk3N21YZnJlQWY1SDk2WmlxQmt5ZE1HdkZQWk13VDlqSnl5eXhtRWMzSHJPdDlYTFJrUUp0VURPNmJadU9WeFIrbHdkeWprc1pPaEpyMDhMRkM2Z0dCUisvUzdlN2VwV3VCMVNoWlhtcUF2dXVFanpkL3BpbHRIQk5oamhqSTV6UUZMQkpjQzBLMS9ROTRjNU5rdERwbFZvVkdXeE0vYjNQckUxcnNENzRUbExLOW1qYy9GTlZlVllNVytNMEo1YVcvR3REdkxhTnhIclpVM0tZSTRWblpOZjkwdzhPeEtiZ1B3UElOMEJZOWtvTERBaFZFbGZmSEVtVWNPUmVBZnJRbnhZRllINHlQb1p1RUlvb3lPMTZzY3NmTU84cUZxdG1TclBWT2FqMW91WFJmdTZvTjJ3YW9IamhCV29KR1VaNDBRcWtlaXM2VnZwbTkrU1c3d0h2VkpDSFc3SEpPOVYwT3dzanlWc0EzWDREVENXazVTQ0xrc1pRVWp4dGZRWUlYYnUwditpT1VBbDJEeWEzMVVLblR0RzRWRGNNZmV3V0VEdWx6cWoxb3VYUmZ1Nm9OMndhb0hqaEJXb0pHVVo0MFFxa2VpczZWdnBtOStTVzd3SHZWSkNIVzdISk85VjBPd3NqeVZzQTNYNERUQ1drNVNDTGtzWlFVanduNWFlQit6M2g3QldKdGlwdlQ5d3BnVWdGK2RhTXdwdEhJZmZaMnlXV0dSdllKQVZwRUJmc010bWNCdldnbjlhdU55WVdGZGl0MExKZXZGRzBFK0xpOXVnZTgrditudW9IQU5BelRYUElpTkxDY2llRE9sZWNSeEovb29DRDBsNHBWM0lPeHdKbW1tbEpDREZhTWZ6NFZRWWpsV1NnQjdFQU1hczIrMnl6QksydXRuOEVET2dpR1BYcHl4WkRTZ3pENVhvZm9RY1Awd1FEVkUzcWdIMzJMQTlkQUFpUUFFeDNzZm9wMFJueWFEcUFsVjA4Tzg2K3ZvK1VJbmxOWjlXSndJblhYTjJPMXdBcG9tQzM3UHRBTkNlV2x2eHJRN3kyamNSNjJWTnltQ09GWjJUWC9kTVBEc1NtNEQ4RHlEZEFXUFpLQ3d3SVZSSlgzeHhKbEhEa3QrV1hSb3JpWEw4eVdDVklac1RYMDBxWWloSW9IU1BWRkZlZTh0aHhkNU5pQU9EaThhYWQ4QzF1WXVQWVlBaE5MT1M1d054WTR0SzErd3gyd0lVd0tYNm11V3QveVdFN2NZRFRQczdMYWE3eWljM1ZxZ1JqOW8xY2ROdmJlREJ5dWplWkFmWTZIK3ZRK2s2aEI5UkNhQnZZSkFWcEVCZnNNdG1jQnZXZ245YXVOeVlXRmRpdDBMSmV2RkcwRStMaTl1Z2U4K3YrbnVvSEFOQXpUWFBJaU1uMkorcjhuL1dIck1MOGZBVEd4TG05L3MydDhPMkZDL2JJcXlOOXRsMzRvWXc2a2puTzQyeFJsZlBIM2FsRUFPdmp2eDBmZDcyZlFiNCtJMEFEYzF3MTRlMGVUVXVJS2ZGa2k3dzE0QXJaZnJTVUl1KzVsMzYzZ0grUi9lbVlxcG5YRWNtVGFDVlJCVXU2MDBZYloyTGRqN051UjRrcTB1L2pOZVYrTnNWc2psY1VmcGNIY281TEdUb1NhOVBDeFF1b0JnVWZ2MHUzdTNxVnJnZFVvV1Y1cWdMN3JoSTgzZjZZcGJSd1RZWTRqL3NEQ1BLcXJxUTRFYkJxTXhtVzlmcVV4UWpWOW53eVdxMWR6TUp3Z1B0NHZIM3Q2OGNyRm1DS2sxRkViRXJyeWVPaUZVandzNTRXZmNzSXVXS0xpNG1SdnlySHpVL3kyYm56QkxjbUVQbWFkMWQ0MDNiQmpDZ04zMHhmMnJDVlk3RGdIWmdRWHQ0cE03ZFIwbDJ0cjJqTVltKy9lT1RXOHIydisrWDJSdEFQTk9CQWVHczNwd1JHeldiVVpQVVBabU8zSmdMNFdIUEY2alB3MzNCOXpTRGRqOERZWnZ4WmlSTWh5N3JyR29kbittQjg4MCsrZWpXYXZyaG1ENGF0M3dvdG5pNGZvR1F5OUZtUitVV2J0Y2FZbkt2VTJWSU5iRjFxdzN3MGh0S0ZBWFE0aHNjUXN2WWFCWVdVVXlyYS83ZWpybm1qN3Z3TnJQdlgvK2QzRCtNbkIyS1BaS05RdnFnUHpyYjR0eGxVYWhxdXY5SFN2SzBWMzJPS0N5cXhWUGcxU0sxRXk2enhlenJWSmJ2NUN6UHA3Ymx5S0xsUWtjTStFd3JsM1lER0duSTFmMUh3SGt0Q1lsMThBVzJ5L0dqZVNlZUhLMmRwMk1VaGZDTFladlVlMUM1emFMdHBTVDNxd2xDajhXY2x1VUlGWkRSQUwzZXAyZGFvcDFKZGJ0K1paZkZ0WCtBVEZtZVFpUml3YXQvdCtZUEdwUzRFYjlaRldFMk1WazU0WG1RTFQ1SWtwbnNnZWxDclY3dHQvSnRzd3gwN05Ga2hIbUdDbXFrVHJIdjJKN3lGWTZDenhTVThvOVRXTmZTa1VuQU0zNEpqcjRTUXNON0dEUFpTV1VwVHp0Wm1VdUN0UVZQRzVKK3hkSFFoUDVmYXBHVE1XQjVHVENOWXd1SU5ROWpwNkdMNS8va2sxTlBsYkJ5WTZUWS9pMXVLM0d5NmdCNnVualcxK1p1MWlEdHVWNUNWUncrVUlGZys3Ulk2cFp0VDJlRkNOMHhXdnRyK0x3Ny9uWTdCMzdCbEdYMitmVVEwYzhBMjNpaUdjaXhYVEk0RE1rS2l0VjlJb1lkUEpWV1A3SnF5NVdHdGxzUnBzcnFvc2x0dmw2cUcrUkxPcFdNQU9XTk1EcGlJRmFVQzdpa1lwS3ZSTmpCS3I3NWYzOHB0YnM4T01LRk9ZdWtEUUI5RjhReTZHUlZyeG5GQy9hWlkwR0haMEI0YmxyU1VUQ1ZZeXh2aklwY2g1R0lqWFBDN0xQbXpoZHp3TkhHalJNMEVaTGxrZWJLWUFDajhzVkdGcEdzYndpZ0x1UWxxSUpDelN5dXcwWnhRTUdjTGU4NE5ucGxDbkEwTmdzeFA0S1lRS1ZUN2kwNmEwM1NjVVNDRENBOFVmNTRVSmpDVnp2azdSYm1NODNOK3pML2hkZ1RNMGpMclR5TGhNTUg5Z2g5NUEzREk1WS9VOHB3RGVJTjJwU3pERXYvRXU5ejd5SDhreG1NVjdyVXFqemxlVUxJdzlmQ20rUXdNdkNmVmZqKzdMTWtMdGVHaWQvS1BsKzJBbUpOTFpPbk5UR0JWSmVyNjdjUVZ3L1FhSkd5TUNtWkZOZHNNUVVKUzdPMysrakZ1Q2FTcnZaTTZIVnNCZG93SndDeWxnZHFnUVNuaFB1Ry92bERHQ0xmY0NHZEVTN05sRTNuTkczeXhvbDM4dFo5QU1TUktqSk9qRzluVGN6WWhTT1d3UVNreGplbjd3d0ZXeGFzV0RvWFVkcGFwWTRQY25UQkhpK08xUjNNZS9ERHpKT3RLT1NzWm04Wk9nWkNQSDc2Mjk0SGhsM2o0UkZYOURwS2N4Ym4yeHlhVmRmZ0JjR1JhWkg0NW90SERxY0JPWDhVSXdDOHo4MlptSVBBUUFIZXhKWEJ1ak14eVJvL3ZaN3ZaUG5uUkt3VUFzYVBtSS9CMFhFeEY2OEJ6UDI0MUVFOWNRRU9IMldMVkpHTjRCbDJDVm5CQzRENUhJdzlwaTl0bHljT2k0TTlPOERRYUdMQUkvUUdLRm1HY3BlYVV6dFd4NjJEVmF3OXVpdU91MWtKanY0aWZLWE01WE96dTlBeHZmTmdCcWFDbHlyNHdYbDJKTnRKZ2IydUFWOTdWSHlLZjR3bGExSmswYVZkWEFiY2pqdHFwUkhGd0ZsS2MxYzlQK2NCUkoxdWtEZmloZFlCLzlpMHhKMzJub1hSSDBXc25aK2NGdmV0MUxXRW51RDNpbm9UY1hmbkJCYWVtNFgrOUNjenlyL3U4SWJodFFLQnI0Z25XR0xVUTluakFQMW5iSkdEY3g5ZGVGMUw2cEJOTlN1SWRCcmhIY1lSVkx1aStuSnJKRUZkN0xCSFZDN0VhSDJNN25TZE5VSGcrYVl2SThQZy9DZEVuckR4a1dOQ1ZSUTc4SDJFZjZ6MUcySDF1VHdUWjdZcFN2bE9xKzNLcTFMU2ViREJaL2taSjNhOEpIVm9ORmt1dWxqMG5uWTRycWJNYytMMzIyb1M4SG51dEZseWdRRnZTcTRSMklJT3BpTEFTM2N6YzVKN0hlTjBBRFFZN2xlcnlKRFNzQjFsY0tCdVJodUtoVGFZMnFCc0lPZVFNWGN4bzBaYkIwR0NhUmV6NGlqVkRJYW1JNSt4d3IwZFNpMTJBWUJ6c1lvcVlPWkxhdjVHUWJqR25XRGNrOVhFNzJTYVFLeFNqMkFQTHJQN3Q2bU5kOFpKd0doVHRYbG9hK1NZM2dYMmZGaXNKUHl5L05BTnBINGdFejVDRk1DWktaUXJ6NHg3aWN5KzdPOFNXYnN4dGFsN3gwejdxcWMyYXVtUGd2dHFpUkdGZHdrb2wvTlBwM21udVFQL3FhdFpDUk42Mm91NU4zdytaMitYYnZxc3U2d3c2Ni9pRzZCSzZIQm1MLzFYVndlWUl0SnpDY2E5WXYwR2hidG04VHEvN1RIUDVVY2lncTdRWWVrSEdUcTJxTmVnRm9sRU92Yi91aHJVWlNlMFpQcENQamQvM0VEQVlQOXZlZ2IwN3BCK0ltcmFuR0RUTFcrbFN5N3k2SG9qbStpalIyVklrNERNdnZobURRYXV2RVE2ZDRueU1ySlAzS1JuaEsyMVBWdG1DNE4rd0pKYktIZFl0dUY3VkRpcFY5b0RmWXNtY2QrSkNlU3YwaEpEL1VURXAyaEJnTnIycFpSYmlYNWdDd2FUMmtKbTJtTm5hNG41R0JsVFo3K2tLNUc5MzRwaGsyYnQrSEpsRldCTW1EYjVjamxhZjFUTk8rMFE3aXpHenovU2tLYWZMSjJOdkdOd01FbmhhOU9RdVdYSEhodlFmdVlUNit4dmIzOUROR0ZkeW1YNzRpWVJ2SThrcVpqeGxWaVRuVVRSeGlVWi9GN3hlZTNpTVdaekhZN3hva2tyeHM3NmE5dDZPNHovVWtySEZMSnNOYmZ0RCtEMmllQ012RFpxcVhnVE9lUDNuNzNEZFlTc3VudXR0QjVoZGp0T1RsaERheGNWRFdQSFc0dTJCdXFuV2lORnZaOUhBc1RmTGFndzRWa05UVk51MFNTcmhaOU9Rb1g4YXpRTllsMHFySFFQa3JtMXBYNTJBUk5tZEYvbEtrOVVVUDhvS2F3UVBXWEp0dndxNGV4b1pKVGxmUkx5ZVVuUlNSN1hjeW8xcG1IcmUvUCtNa1pobUJxdXpxM0FZa2VURUVxSkFBVmFMdkVHRmd5czcyL2QvQXlERUNYNVIrUisxOTBLMklrRnRUaUIzV2UvMUpQWTdwSzh2ZXFjQmVRZGZPUzBvTWR0V1JkNVNRWXRvbitXNkJaajlUK0dCUUtZa0V5MmM2RytUdytSaGlEYTVLMUFEeGprdm5RdmRES1N1QzFIa0dWei9OYWxMVDVtQlR2VVQ0cFJITEVBQkpPYTR2ZWFiVmw5b1lvWG5qRmdxSHYvV2VsSnZiRS9CUG5TbDg4TVVHcm1xV2I1bSs5Z1JQTWZGMkRGU1lnSVZoYkoxQXl2MklvbUhvb0crU1k2RmpTOGtzelN5NklzSWV1RGxjZFhod1dDV2wwK2U3c1ZlVWhVbnc4b3U4L0NmM3FDOGtqVGhINk80S0VvV01XUlhyOC9mU0V6Tk8xbktTbkQwbEl6Z3FpYlpCdmI0Y2JNY2xXcmtKenlkY2RHV0twWmE3RFdjNjc4bFJ3TjV1RS80OWdFZzBUSlZYYjh2ZjJjMU91WlI2T1MyZFVDYkQ0ZVgwdVdnR0RiRTZ2UjVyL2tSSGpGOHdyc0VVN1BRdlRuUVdoSmlpT1dXMW5QT0pUdngzNmVkU2R4NlpCdEQ4Mi82SU51V0xFbHRGRWJ2dTBCNlRXSGZWZkRHVmthMHJpYWFMcjhIQjVMeFQ5MGt0aVRVMnhyUXY5REs5ZmJudjU4aUFlY1Q5SGd1TTA0L0Y3V1NUK1V6dm9uWHl2S05qYWw1cjJndVZWODZJblRrTXhPVmVyR1IzNng1UVJaN2JiQWdIaVlISmpuekhCZGV5K1NEcGNSS0tMOHVMUHdGdnFrSzVaL3IyQlJjOGthS2ZqRXdnbjdVRHpxNzFWSFA5am5oZndsb05BNEcrNGduUTVRTm1qMG1oeXVrN0xHY0Q4UUxReDFSWDIvdDBBTUtYdzBzOVhmeURiV2ZkcWtyeE0zQkJoZmE3WDE1Mm9hbXgvQTVTVStCbUVvVGM5NEhQd2VSWDhTbm1wd2RYcHowaTJpVW5kaThGNitETHFtSjI0WUNhTXdCYVZhbWUvaXFsb0NjUVo5U0xISFZxZ1FPOWFPcVRIeC92d2lYRUZ0NnN3ZjFyaUYxd3JlOGU2Z2dneWp0eXkzUXlCTmJUNElUUE9zcDI5a01zOUQwV2M2SHVwYjdzeFdoa3JuQWNwd2V6ay9vNHJ3YVFuOEFNSTlJTml2dmQwcmxJZzNrOUNWN2tMUWQ1NkdkaEVPVENSWnd6U2VhMWxmUytNOVNWTmN6WnpsNkhodHl4WGhNeXJMRyticzhvMHFpbGxXRGVTM050UXpNTzFnNzdESGpvWXphK3JZOXk3MzBFcktNVm44VVU5MjlkTFUvZWFFTjNzM0JIQ3hKMjNSTkVKaytzajNvclczSFVFbEkwaUd2RHIrYXFYem81Y25xWmhndityQ2ZaczlNdUc2WTBiSHVYRXpXdFF6Uk9jZTNVQjlsTUE4NHp6TmhCaTROODNQNEc2VHBjZElMQlk0VDhKOUxvUTFCV2lWQnpEZkVGVmJqVXNuamZTWjhoVzdqMlpKWDY4Y05lSkdscnAzTnM4SlNwRFJxaHRCYXUrT3NQd2xRb2hpMC8zcUVSdkxRUWVKU1JWSDF2cUFnVGtLVGYyTlRKNm5BODVoaWwzcjZkaUd4SVRGUDhjUThLZFc3YzNyc0krTWRXODBlTTdMcTVqRkVqbDZmajZHbjJsQUR3Mks1TUd2ankydm51aVpWZUx4OTdldkhLeFpnaXBOUlJHeEs2NHZQcnkyclpjYzJ2czJqUFg1NnJLc1llcHJtUXNTdi9FN0FHZ1Y0UnRMS09KODZnWlQ1UXk0SnJPcDRKVFBoRUtQL1JoQ2Z1TklMSkt0bjc4S0lIMHkrTCtiN3RlcWM2YXBYdGEwZEVmVXBnWUplQmpsbTdlTEoveFJSaHp1eUhSNmxWY1BldE9iVzR1MXl3RHNLbkVzU1NCdW9UZU4zRzFkWlA1a0dWNGcwUlUxaXFDVTRQWFRBWm9PQnZiK2FIZGQrM3lZbGtabVE2Z2JPYVhxNE1UdzE4ME9nYzBoaTc3SkVMYndkVGxjZlR2WjIraG92QjhFcjczc2o0TENJbWRDeTNwRjR3YStyc1lBNUo3VWdRZUxucHlTMUViMVYvUWhDeUlLVzVTTEJQZW1nQlp1Wkh5cmE3UW9XclNKVVhJeGFISUwwZUZURjJORXBPa2xubDhGeER0YTNObzRoK04rRXdUd3N5Uko0enBReSt3Nzg4N0RrSnl2djJ3bk9KMXRWZHVxSXBSV01seFdmcit4QnhQREdPcER4ck96SEswbGhOc05GbVdVM2VrMFJVdE1XSk9hVXZENVpRSnpJMmZMYjh1Z0d1dlBDcjZiZUFGcjY0UTBKUGhwRjYrMlR1cCtzZ2JRK205TGRjYzZvT1JTakxBZCsrMy9pelBhSmdTYm5xR3NqZUNCS3Vsc1IzalloeEs5bzg0L3M1VFBUeHlKbFBVQnVTUm13QTUreVFMTitLYlM5dVBDWmNXR1p1TTlmZmR5VWlMN3lxWkF3Z09QV0JBdkpvRlpma2xoQ0pMdVhwRkl5Y0hHVVA2cjRCTmxTUHNKK2R2WmlTVUxTU09yWXA2aHZvbW9wc2R1T3d1Z2I2cHBtdDdOd1hGVHEyZDliY0cxVFFSS3BzOXpCMkZsbmlzOFNhdkpDZGxDYnllMHppaU9rVEc0aEloMlhmY1ZjLzg0dTNaNG85SkFXdWhoY0NhYkpab21MRGQzTHFaUDVuOXJtRUZrVndmSXg1bEJVOEFvVnZ6d09hYWpFcmJXQm5PMXlPVlRvbk1CYkhmdzhBYXp2WXY5MnVNWENtTDlXMDI4UDZuSWRDeG10R0RtUVpqc3RkN0NaS2lJZTMyUENwcG5NVlFpdVo2emE4c2lVSzZyb0lmc2xScWN3UE82MDBsbnZzYmVOeHRyOTVqNGVNRWVoWVlhMkNJdGE0V1MydTlkeHFNWGZINUhNSnJ2TUxDUVgvTXBacjdwZnhFOUo5UWQrSnc0OTUreW5iRXh1WnZta20xQlJHRFV2c3JLWVZ6NGJCNkEyZGVtMTl2WXladG1kVDExOG4zcDYvNjFZUjh0M3pDZnV3cDFnMTBxRHVWZkExNGhnVDBpeTFzSytVSzRTSXEzeWdvQlZ0K3hXSCtzZGRnTXFaNStiQUlXMXpzRDhPYXYweVI2bGNSVEFEM2JBOGRrcjRTdzc5QVZCV3pEYU1WN0Y2MEdPSkNqeWxxVEUwanNsVzd5Snh6YW4rbG5leENpcVRMc1hpdHVBaUNqWW01YVdqL1gxQTJDZW04OGhMbDJuRjJBWGNMWmcxR1BYTkVkQkNjWUhTVFJ6Ny9ZaUw5TThUaTdZd3JYUjhnY0pIbGZlOC9sLytTMmw0RVJ2eHgwZm1FNGpmR3dKVWpYYkpvOVJOdytiU09nZnNhY00yRGtBaFUrb21xMVJVc2xheWM1NFl1UFBLVTRvNlczM05ySHVDSjFweXoyTXJaY1pady80WmRXd2ZwWnp1SlRPU0JYSW5sZXNGaHdXLy9BWGFFUnNmcnlWa2daTDRkckd1cEpCNjdwWlVlWE9VanJkd2RHa3lKcmhLUGVjZ2pSeGh5Y3AvcUpmSjVRcWdNdlkrUkRsUEk4dUNXVE0reUNDdUdnenJoeWtnV2d2SlNSZEpoMmpvbVNVcm9YckhYK29vMkU0cVpkby9OZkYxbEh0WVY1UkJkbStlMDJMZzBTYlBXa2VFZ21NbVhLRUlDeXRPb1dqTEIxTEh1L3Urb3lzM2J6WUowV1AxYVM4TjhSUllIdk9WR2ZQcVZ6LzNON201MnVzaGhmTzQrTGg5YnVvUnd2Qk4zQW1TajhZMmdBeFc4Sk85VEpJZFJqckxzNDI4S1lSM085a1NYbnowTzRObVRMYTJqVS90TDArNnFMT3JndUJoUTZiS2ozalVBcGV6SnM5Q3pGR01OOUFHeUYvYk5qalEzdUtnM2lJOEtFNDNrbWR3SVZKMjhuenRoYVBzcUc2UnFTQktRaVVVaGJOY0VESjVoUGhmV2szdkR2dXhEMHQzSTF2a01jbm5WR3NqVzFFMGxzZk9rdUVKaVk4L2FkSU1rNWhvM0l6UVBicjdwb21qYlNENlBCQkxObGY0WGUvejFTd1VvZGdDWkNqR29zN0NINEcvM2h2dlFuc01EMnI2S3FjOVladGJZcjdrMFkwcnZJNEh1YzRKaHliVnE5SVdjSzE2cm9SRnFCanhtcjladmRKU05RaWRMd3JVYjdnMUdJRFA4c1BESkt1bzBUTFhuMVZDNjJWYnlSZTNRNlAxbUhidWNjZllXRkp3T0NoNERvVFA4Y21SaG1JNUw0cnlPamFUeWU4VFFEQkRaRG03RG9sZkxkYVNLY1ZQWDJIYTdLNkg0WjZBT3RxYksxazNkZXBjWWxxUFg2N1dQNFQ4WlZnSTEzOHorL2VnbXovUEhITUdBVElub08wNllSc0VVb0swTUtiSDBFdHBOWVREMzYybVVFeUdETUhKY2xUOFp0aUxmMEYrMGxUWGN3VzRwdEEvaldhbjF4YVFPYlU5blNLV0tKK2JuSWNuQldkQ3orSnFaR3RJVEtFSkpxWUszeTFUZzFIRmJrTVF4Zm91V0xIc0lzZ24wRGJPeWY0TnREM2JVemdoWEgzMnM4Q0Z3eEJVQUR2eHBxZGtrdzN0UjJtZndzbTloWjUxSWNnOTNsdDJYY2QvTVY2ZWdxdkJlTExERGNPMjFKaWxReHpodUkwTWJ3NURVZTVhZ0VIU3ZSN1FJZzBKVjl5V05yTkFwSDBiR2lHaTlpOTZ6QUhsSG9mR2hjOFVVWEQrMEpqdEw1M0hrNGpOVzlhczVQY28wN1NROU4yNXRCaVJvSS94M3grWWd4QUY3ZDlSdGdyRVVybXoycEFiU25yektQZ3hIYmQrb2k2dk0xa1VkSjlRdWhkLzBDdE9BanRrbHRzN3dmQWMxTVdxU0ZTdXdXeGN5T1h3NnYxVUY3SWdUeVBIckpDRUhPell3T1R2WGROd09Wc1BmRklvbGhLVFpGaW51ckx3aDlGTzE5Y2tkdFNnaHkrZUp1YVpFTVBSWHNBTVFTOGdWZ3J4MFpmZm5KWDZUazU1N0txL1MxQkwxaElLUFJjcVBhVTl6T3dWWUlwWEMwT3JEa0ZOZ0ZtM29RYlVsYnFKenprSHIwQkF5b0NoT1dUQmRIZ2U2eVVRcndZSDJoNUtjT2UwLzBTd1ZHTTBCRm4wbVhKcm9qK0pYcTEyd1NIakhBQ3F0Z2FwVmYrTStjY2llbkVhUitCRUd4bm93MlBIVlAxRDB2YnZDeU5GMHRSeGprcEs5QnBGTWs5NUdOTzhLSTZtTVc4ZWVBd2k3NDFRMzV3amd2N1ovRlRIaGRsbTJRMlB6TzREVEZYaUJaK01IbWRvdHo2NUZNak9pcFlPSUtMajlCSUo0K2lpRTJSaFNRVGRid0RvbmQrclNybzF2TXYxbXc2WW5NVkRWVjBLRklDVlNnZDRlWStjNFkyZzNzZ0FpZ1pnQ2cxQWdlVjJPc2JhcDg0a3I2YktVRzYxcjI3L09xQ0hlQWZEa1I2dmxMVU0xVFZDVUg5b0haekRrcUdnMFIrR3JlVnEybVVhNDRlUG5zbXZLa1JtNU9LWlJHajFmdUUzdXVtV3pVVmhaeXJ3Sm9wRHBSa2ZxMm9YZy8zTVFkR3M5bnl5c3pZRjNYL1Q0ODVJWGczUGlQTk4zTkxuK2xneXpkYWhBcTQ1Q09KaU1Lend1dWNMVk5sS3JLV0FzVmYvQlJlZXVFOTZRN3plVElHazltNTgyVURrNFVPbXlvOTQxQUtYc3liUFFzeFJqRDY3L2tNekJ6RGdySFNMaE9tdmQ4NnhER2R6bTF6N3lPUTY5ZEtjK3dGSENUeDdDdFZNYmhyTUVoV3lRUGFnMUh6QStLQ1VFbThPTFdQU2owZEhTdThLV0tiS1hVNHlPVEErNnltckg1eHQ5MEpneVBQOXBQM1BWUjA3L1luZisrNkpGOVNwemJ2TmZFbVF6ZXlaWElLcitocW9UWjgxdWtRY3NrTEhuQ2FXdmk5dkpwVkw2QW1iRWE4OW9pbFVmdEI4a3IwNXY4dW5EV012V0JNc2F4S0Ftak1BV2xXcG52NHFwYUFuRUdmVXNvSVhwemxNK1k1aEZaRzk3b3dEYm5jOEFqdlUzOFYzMjV4REg4aE9wNmNWZFNtaVFmUXhOeFRzYkF6U2FGb2xVUXc3VmlJK041S1lJQXBxMXA1S3V3Z1JmTXhqR2xkdDhFekhaQUJRUzQwU1FLcTRZOVpCZmZ3OWFDUXc2c0U3S0t6NmZKWTBKR2ZGUVJQV1JLWjh4VURZM0tqbllhSDAzRmZPVFM4K2NETklpOU1sY01lR3JHQVZ6djNyNzFRU290bno3MjlyZ1V4dVY3R1lnWklsekQvMVJNbjRiZmdMb09DRWI4SGVXQ0xCcVI1YW5sOUpVY1hhOXBaTVYwQlhhSUREcStsY1hzZFE0dFRJOE9IWlF4eGlkU2l5c1RzRy9iVGh5T2E1YzczYnozTXNUMVpodUI0TlNvRTRpV1Bqd1Q0bVV4eU9KQ3R3eEdQUGNsbXpNWEo0NklWU1BDem5oWjl5d2k1WW91TFNGVksvNVdtdFVSWXYyd09VbGtGK0xFRDk3S1N1YzNFbUR2bW9maW1tTUN3eUoyd25uL3o1VDVrdGVpaVMxTHZGWm1nQW9sWVU5YXN5K0kxM3M3eFhJNVhGSDZYQjNLT1N4azZFbXZUd3NXa1E2bnlyVUZ2azAxTVRiT1FRc2IrZ0p2STBvblVEY0pnbVkrZ1kyZHpzY3Z6TmxzbTJtT01PbXBxTDhlSFBpSUlyaDUyR2N3a3l0OEpZTG1ZZGpVV2FhaTBSSG1WWUZvU3Rid09McFF3QVBIQktOZlJ1dTJDNWswQ2FNNldOMTNBZDZVUFdXZ1I2d0xJUG5UVWZ0RmpmMzRPeWZNTmlzNWR2MmRvZnVqTk1QR0RRYTBDazNubEIySFlLNjhQdmVqYnAwZUJab0toZ2I4TmxXTk1QR3ZkS3lRQnlGQWpwR1JCaUdmdWhPcnpNYXRRaVRwRkUvdGVqSUd5cFpVRFRTSnR3VUVHTmRXVXlOQVN1QzFDR2ZFVkY4Y0ZKdDdDTXczR1kzSEg5ZmszWkxjeWNLR3hNeU84L203Skthazh2OU5jY29pVEdOdTAreW9Kb3NZQU5DNFl2YnY4Nm9JZDRCOE9SSHErVXRRelZGemI1UFlzcTJEUVpQaXZTN3lIWUhNaExsMm5GMkFYY0xaZzFHUFhORWRCUy9mb1NOaDRQK25HUFBPdzRsbUFGV0QyalpQdk42T1ppcjRSRVFHdG5xejhUcXNIUk80bXk2cTlwcVh5YmxWRW1weFNjNjlaenZuKytESmgySjBGSkJqRDVEMmwyYmFJaHlDbGw5ZVQrenQ1Y01tem52L2t5ZkhoMDRFdXBCRHNBeGFpMFBBcDdpVWVPME9YU2daVlBTZkRPc0lDWGdaT1VTQW14NytVdU85WlRQaFRqcXZPamNyNjBDZnZTVHN5d1NVSk9MR05lT2FHeHpWMzZWdThscjFxbVRWTWZOd1c1Y1lCR3R2S1FZa3lwem9nZDZ2cGk4RWtObGR6WDZsOU52MDNUZ0RzQ0JmRGdVb0xjSnMzcy8rZUlMd1poWjJvLytTL2lTWlJZTjhtcHdGMU1kelRYWjZqTE1UY3hlTkg3T2llcUhRUzYyQTNlWnZ6dXJaUW93UFg3WWg3SXhRTFZ3WkFJblhHajV5d2dyZThzOWh2WWhOT01taFJ2L3B3eXBHbFhVRU05b2graHJDOEowQTB4M3l5YkhjTnZXN25TSGx2eTRkNTdhem1LT2cyZ2laQ1pZelhsRXVsMWx0aXdmY0YwODJjallFc01UdGUxWE91T011N0ZhaDFEWm8zbG9wbzhoR0xabks2YVZRUERLaVVySDFrTHlBcTMxVG00alBGTnVPWWJhR01YMmNtUmhzcEdMWHVjejBnRTUvblRQZFhkR25IYnZtZ2Zhd1BMbUFBMlZuSVYzcHBkT1lIc2hJY0hCOThzYjQxMmdpMjR5Wk1GL3BGL2M0blFMSU9KQ2N5TmJUeERZcVYvNkRDWDFyYzZNUWpEVU9Obk02cWZxZTZzTDFBcWRuYnR4QWtJWEx1MlJhaE9DcktCbHhZR05xdlVNTzA2RmxGVFdLb0pUZzlkTUJtZzRHOXY1b2RNTlN6bzFzZUEvQmRyck9DTktaYy9sYU10SDNIL3ZLTW4vUUZwVzRTalBLL0pDb0FZTzB1d1NrZU16Y3V1MjBEQ1JsR2VORUtwSG9yT2xiNlp2ZmtscHo4ZmI2VmxCVnRiczNoVUptUytTdWlOYnRrYlI5d0ZiUW90eXJXV1ZaUGdxSWhWbFlKZExwV3h2bHdJcm9zT0ZVYmxra2tkWWt6cDVjMG84dXA4V0pubjVzQWhiWE93UHc1cS9USkhxVnhVQ21XN0c4Wm9YZ1hhSUgvbXIwbG9odGo4ZWphL015bUhhcXZnUmRTcEdzSTRqY1lvZXlrRkl6YmlUd1M5S1lTSmVKT1B2Yy9KK0ZBY3dtL2FCMkdSQnlHNCt6VlUvTy9WVlo0ZDFWVnZ0M1dHSEdCZTJKcVZmeFNwNm1mdVRpRFFtUzlEQ1YxTnlybmZLNDg0UjRkQVVpYzBZMlFXdlpIYkNyZU5jbnYvUDZ4bVFsYVBNZUpzUmZ6SzZ0alA5MzFmRy93NS9QcTMyaE5IL1FjQjhPeVIvYWE3cnhUUGo0QWFUb1h3UUtLbUJnNkdZcGJhaGtHUTRyY0tadHYrQnRHQTdSZkhlYXdpaWZSMllPQVp6NG5oUzJlVHVDbHREemFuZGxEdlIvS3JQNzd4bUsrbWVmWHg3dFRzbmVEQ1RRVm9WaHdmV1JxUXVsaEV4NVBSYVJ3Ui82OHVVVlU4WE5WWGJKZE1BVGxoeWljWUJTb0ZJdWpWRkppR0RLVkpyOFQ3MitWRExON0RmbHZpUy9sQVBwTjAwQjFBRktKQWtUd1hacUNqU2twVWQ4OWIrN0paY1ZyUEgvM0dacEtDU2YrVUhrdlFZbHVJb0V5ZW9FckZZZUJ0M3g5cXhKaDRJRU1Jd0kwazZXVUpPMUdwekE4N3JUU1dlK3h0NDNHMnYzbVBoNHdSNkZoaHJZSWkxcmhaTGE3MTYrTXJNWTB1M25XT3FSM2Z3dW4yc1ExTUdwdUdlNE1oNnJYV1hxU2ExaitzT0EzUW1nd1paTDBYUFhGbmlHTTAwWjJHYmdJQUFvbDhOSXJ1TWNLVkpVR3BIbHFlWDBsUnhkcjJsa3hYUUZkRGo1bTBxOHVxaWRZOFBObjhyMTJlMzFGV1pzUkpBeG9XdmNPV25kQzhTckZ0WXVpVDM3WFVCSURqOUZNcUxKUEt4THl2UVVhaHkzbmNMUUMwVHdkdXVZbzZEYUNKa0psak5lVVM2WFdXMkxCOXdYVHpaeU5nU3d4TzE3VmM2NDRxWVlUS0t2aUJQUE1iTG1hY2xRY2RlZVBSY0tyUmNXOXJWR2g4aUlCcDdyVTZ2S3pQVXhBeXFIUkdCcmVBNlduRDRaKzB5Vm9NOXkxY3lveW9NMW4vR2ZOZlN4eUUrQmN3RHp1bUdSSEpKcStmemRDV0w0NHVKYnRBeUVwd3M5bk5rSmZVRHdxdkEwRVhmdk1OeHN6QmxNOU8zOGUxS2E0ZjFZbk5ERnJuNnhqcUR5d0N1TEdDeEtrOGJPV3NzZS9USk5HdDB1ai9GckhEOFUraEJYeWFmaVFXRjlTQ1VQNmVPb3dtMVhEb0krb2x6dy9JZHFET3FQbk9taGY5MDVMT3ZxTjhLZ3VIWGJ6V1BBQ1Z2UHhUTmpvcjFYQ2FySFdZWmFaeEs4RXhDWW1CcjVMQ2ZHcDRwS3IwNGErSW5VNXNNaWRzSjUvOCtVK1pMWG9va3RTN3hXWm9BS0pXRlBXck12aU5kN084Vnpoc045NFZPeWRJYlJid3p6RURHZW1FK2NoYXA1cnlUWWk5QlBHR1hMdnZxQXNMWm5vTm4xLzdKWk5MYUNKd29rSXJoNTJHY3dreXQ4SllMbVlkalVXYWFpMFJIbVZZRm9TdGJ3T0xwUXdBUEhCS05mUnV1MkM1azBDYU02V04xMzE3OUZZQURBQnh3T0krZDJ6YXR3MjFwMUFLUndiV2NNTVRMRHVabEN3cEROY3ZXYXhTN0EvV09Xd1pMdm40UFJuWVBsdkF2NUdXZUdiN0Ewbm1LaUZhVzJZaU1lRkFPb0U2V0VGdzhNcXEwT1lvZ2d1bDQ0eklaNjFMcm9GZ1hMbEgrL2tMM1U4MFFGdk82b0FqWldLZEZRNUFkSnNwSmkyenZwVmVKQUpibmREMmovcDBtdFRoMCtMSTkrUWF6MnFPTmc5dHJMTUUwU3oyaHY2dWhvdXZidjg2b0lkNEI4T1JIcStVdFF6VkZ6YjVQWXNxMkRRWlBpdlM3eUhZSE1oTGwybkYyQVhjTFpnMUdQWE5FZEJTL2ZvU05oNFArbkdQUE93NGxtQUZXRDJqWlB2TjZPWmlyNFJFUUd0bnF6OFRxc0hSTzRteTZxOXBxWHlibFZFbXB4U2M2OVp6dm4rK0RKaDJKMEZKQmpENUQybDJiYUloeUNsbDllVCt6dDVjTW16bnYva3lmSGgwNEV1cEJEc0F4YWkwUEFwN2lVZU8wT1hTZ1pWUFl2QjZMVEJXanZIbzllaGtWbjRUbWNVRWRWSXZrNGNVVmpwTjZpN3VUT1ZKUEhzSzFVeHVHc3dTRmJKQTlxRFVmTUQ0b0pRU2J3NHRZOUtQUjBkSzd3cFlwc3BkVGpJNU1EN3JLYXNmbkczMjdJeldkRmtPRGpQUkJGSGtEcndWMkpVeUtsQUVrYUIyMjRMYkh0SGdqc01Yb21MNDE5TlpFdlljTWVkMEZxV3M4ZUJCekxvK2NDRnNmbzlCWFdneUEyNm85cnIvYVlVSTNpcTRyTEk1aWVxaHJKS2dtRDY1QnplNWN4NGZkNmcwelZEUGJ1cmUyc3dmZUEweGhkc0VPazVPZWV5cXYwdFFTOVlTQ2owWEtobHREM1VVQll0R2MxcXF4U3RUTEFVZkwzdGJjWWEzRkN1dmNiNmhoOWhMaDIwTjU3MkdwdlRablVsREdPR0I1dEpzTkE2dWdYZFM4ZE9UVmtqenQ4eHNad2todzJHTUgxWlhwKzBrSExVT0M2cE1pM09obWczVWl1cXlSNUlOc0Zmay81MlQrY2xjOVMvYmdTNGgwU2RJWUU4ZGNzcFpvVmlZR0lldWFpbnR6eWpTcUtXVllONUxjMjFETXc3V0R2cnZJL3FrcjRCbGZtUzY1K2xSUVhKL0VFZGY3d1h1ZHZaVTdRdkQxOFlRSXFTS2d3T0J1RGZzZVB1d3NCMFBNUEJhOXhkYlFYbkFXVjRwcWlMejJXL1A5em51TENBR3JXRzFNQjZIY2xTdTN6TG55UzJhT2ppUEo5aHZlRXJZNDNST2NlM1VCOWxNQTg0enpOaEJpNE5VbzBjd243d3BsWW4rcWJRakl2VzE0cStROTJ1Z1V1RWxnNkIwL3pvaUo5YkVKV00wYlkxdktEMDI2RFlmbGtGZzJob1F0SkJ3K0JFRUl5dDAySVJENzlpaFFWaXpud1I2UXJXcnhMODVLUVFPUTJKU0hHa1YzUitxbURzTThUK2RQUmdBTWZsUHNKYVhVSWc3NUxwNUIzbVQ3RUV3eXRFTE1aTitLZ3ZmZ29MckIzRDBuOFpHVTlROWo2cEo1VHFTakdWcUlBT242WmFPczRrYnFRY2t1Mm9WVW93amo1NWltT2preGNkUmJ0MEFna0FpenhrZGdLSm1iZmhub0piMy9rUEdmeWRDeDUvODR1V2QxRnNUbnpYTVJIZVRkYWFqY2tFczZobDE3azZwWnRUMmVGQ04weFd2dHIrTHc3LzRxYXdPdW1CV0drVDNJbS9pMUR1VGFIdythYm9qc3lqTml4SlZjVTc4NHNESDJtM2IvMTFQVGxKamxPeEF0d0xFZ01INkJ5SS9senlDb0hzODhlcytMODRESEs5dEVsWXQ0enJFRXZVR1Z2T2xETDdEdnp6c09RbksrL2JDYzRuVzk2UGt6ajJqcHVtdDVSSll2cFhtaFczNDRCR1NrYzVnbzU0eGpZeU9aMWg1WDd3WU5iS1ZwZDJWdXh4ajIzV20xYUtlSHMrS2xob0ZLMmFOMTlzVE9hWGMrRklDSURwaHIrMGZTWHRGK05iVlhicWlLVVZqSmNWbjYvc1FjVHc4b29ybnhVaG41S0lRNExSeXljTGI5RWh5Y0tLNm1ZUzdlWGZTNk9EczJyWm5KVWEwY1R2ZVQwNE1GdnNZRGtYQ3RSWnh0dzE3K0psQzY3aStFelRCQTVaSjJhTWtQSi9nWXYwL1VpTzF5bnMzWllNMFNCRk83U0ZQWkFyc2tZWEhsRGUyY0xQUGFVZjJaWEJ0OVR0ekZzVlZnT0thVzRJN1FBa2FTT3RkVk9DOVM4bVY0cmRUcHpJKzJ6MDVtaERQdEdWRDFjbUE3V2ViVkpydWNxYlZrc0Vud1EwTEl0Y1VWU1gza3ZRQjFIcFQxZVFkZFcwOUhIR0lMNWVhMC9HcitocW9UWjgxdWtRY3NrTEhuQ2FXbGs4YmlDdFUxQmwreWU3MnZLblphVTNOVk9QME5vRVl3TzNMd25IR2JUTTFvWTRuTmtDN0M2ZFhzR09NNTQxRXVVNDAwNUpRdWoyK09WeXBTaDdibzFOb0MrS1podHBWbjd3MGM5S1NGMnpiaFBiUXhBNHdLRHlJL0djdUkwRStEczd1Zk41YVZ6UzVmcFRHaFpiczBrSTYzcVJRZ3dFYkt1TXRBLzJBOUhFcTY0ODZGUHExckRMUGhLSEV6K3FKOExsTk41R2RXcStRbjFsUXoxKzNZcjBjcUxzc0V3REZXTVhhNTZkN3NoNzdUUnUyWVRlZ3JlbmIyNzVSL1Y4a09DWGw2R1V0Y09SdEQvR081QkpDUGkraEtoWkhidVB3ajdUMzNlcnFGOGFOVExiRnRTanR3T09GcFFaNnc3L1BQaUJSQzMxa0x3Q2xhcVdoMThIREcycVJqcC93SWtvTnpFb2Z4d3p0b2IyWU9vbHFDZTgwbEluWmhyb1k2bS8zMzFGV1pzUkpBeG9XdmNPV25kQzhTcG1UbHFNRTY5NVFHTHFlU3dQY0RMR0VnYmJoMHJ6aG1vMlpaMEVOUW5IUzFUU0VnZzFRcm1Eb0l6WEdjNEdWSDZmaEFWRzF6NXdQOXFXbzVYdENUOUlTa3VEYjZvbGRSb2VabWM1UkZSTUE4NlVNdnNPL1BPdzVDY3I3OXNKemlmZTFPSjh0VHRiZ3dYMGp5UTJOV0JseXl2TFNOWldjL3NJbi92V1NBSFU5dFkzWTMvZ0F0L05hR014ZXI4TDdSQnJsQ1JOL0haU0lXcGFUNmw3SHVEYU9zOTJTdWwwUkJJZHJHWUZMcWdlMmNOVGh3V3dJbHVZSTRzczlMb0djQVdLblA5QVA1Ky83aThrR3ZNRytmandGdysyZVRtc3JiUDNGblA5bTlOcXdrSkV4dG91VVNzYndKdHI1MEMxNS9uczYrZkQ2RUxzOU43SUdJYVdDd0JqeXl2TFNOWldjL3NJbi92V1NBSFU5cE5oMzVXMmROb1VtdEEzUW4zWGwrSFcwZUU5bmdmVmFTVHBJOElaZ0ZiQkZIZlBKMHJOYXRkTlZaYkptQ2kycllYOUxLSFpES1J1eit1cmRpa2NKSGhzZlpBOVM2UDh3QVpwbFZ2Rm5WNWFIUXRaK0dEQUZqampncjBrUlFsMVpoT2RmVGtKRlV0dGY1RytkN2ttRUw2ODdBcG5Qay9hWlpKOFk4dDI1aUkralJ5RVRxZXBHYVphRXV3NGhYbmxyZlJrQlFOSUY4bGRkbGZUa3BYVUJQTzg3QXBuUGsvYVpaSjhZOHQyNWlJK3BEQVhoOXNuWjEzU1IzVjhkU3NBbVlaMmhaejlwYUFBOTY1eVJDUlQ2RlNGa3p1Tmdjck1WYjNZOXhtVVVMRDFjTWtudUtLVjNBYVdMM1FHbG5UbFkrSWhMNVgyRFk2Ky9VSHZzMU1PZ3BLM3hMYjNjd25iVHhoMXQxb1FOM2oxVzRFVDlsdnhjb1JrTHV3YzRYZUI1NDc4QzlxMCsxMmw2N3REdkRnOGtTZXBOUWUyMXZidElhTkVwVWRoLzlZVXJOYVRsYXN0QWZKdktzbndIalE4cmUxekxRU2h1Q1F3OUZudGQ5b2FDZlJHbElHRmRlRDdkeEpaVEZBYUVDSFFWcnJ0bjlxL3d2UFRzald4RERLVC9SdllKQVZwRUJmc010bWNCdldnbjliaVBKcDhPRHFmc21TWlRmTjJzTmkyenBReSt3Nzg4N0RrSnl2djJ3bk9Kd3FyR3M0cEQ4Q2d4QVJwR3llK3hXeVpBeG4yQ3FLM29zWEk4blN3S21TQnkxaWRUTDJWR0dScnNKVGVlb0tQd0hHSjFLTEt4T3diOXRPSEk1cmx6dmYrUVl3dXhDTjJqZnRPb1FxMUdoT3dUYnRLWUdVSmZqZWVXeEY2M0VocDB6ZGFrVTlRTEhGZ3hrbklCTnA3c250MUNaQW5xS0dUUklBZnlYUkoyZHpJcGZYc0VISFNac2dOMlVPSmZ2Q2dQNGkrbVVORDlQaGlrcUwwZEFkS3N5aVplSlNJdDNCbnBGTnNOU0UrTGdESTRJZXptSm1zUHRmR2FuaytHdHRXWm9TRy9ZZjJtY0FWa1FBYzFBZTRwZ0h4L3J2NmJ4OWR3N0I0b2d2ZGUweU1PWGd2RmM3UFRIVFVVOGdQdFd6aU5FWEhSZFNNMEx3TWhxRVJFYlhvZ0J3K3ZSbGZBc1V6TXdId2Jhc2tJdHNtL21VZEVwbE5KN0MrU3orcEtwQXF6elpYdlp3dENmUU03bUxqSWlLdTdHRlN3dkpVMytFd0grUDRPVjRRdnJDTVlxN0NBS0x2L0c0djJsWmZ2RDRQRW5XTi9QZE1XdGI5cnJzRUs2RFY3RHYvMzBhN25mRnl0c0J3dUlXdCtlSEFtVnVhMzBrdE5qVm1WM0FkeXpiSU5VYVBmQmhMYzBpZEQ2NjJxaEFpQlZyb0tsOE9TS3l6NXh5THRLcGpMeDlsUTJMcU8vdmFXUjFST3BqTHBycGJvbWREY1lDWDg2Vk83NjVOcUJrVmp2b1dvVGdxeWdaY1dCamFyMUREdE9oWjVib1RKMlhtVk9UeFh2YllIaFlsQXZHa0RQNGx2VVZEWDVPak9GM2w2aFlsdU5MN3ozak9WcllJYlhTNEY5cjF2ZWlKa0NtVktNbEp0OTVKM2kvTlFhWmFaM1JvR2lVTnNJV3M5YUxpNDV4cUN5ZWg0SjRqUGNSZ2xrKzZqcnFXR0FySkVONWdqeFMzSGRBS2hmbG9lbTFOODdVV1Qyb0pOQTF2eFJEQlVCV3RyeTJZbG1GcnNGWG93U2NiQ25YN3hnc1gvSy9QQVRTMEZhMk5OOExjNmdrb01zR3BXRDdEZkRhMkRjQzZMa3J4d1NqWDBicnRndVpOQW1qT2xqZGRPcVdiVTluaFFqZE1WcjdhL2k4Ty96TmN2V2F4UzdBL1dPV3daTHZuNFBUMzBYQTJuelhFeW5obnNsZ0VjdlRFakZvY2d2UjRWTVhZMFNrNlNXZVh3Um9oOHVPWmVjOGZSSWwrUHo2K0VjVlQra3JPQjBEZ0Y5WHNDL3drU0NON3RwMXg4WnBRZXJlVjZqWUFLK21lcWJ5NEtybkZPYXhYYURJbjJHbk4wZnJwUEdmQkFsaEc1cDFIc0lyQmFZU004N0xRSndzbHl2dGtyeFd1M2s2VjUwYUtvb1dHYjNZQXRvbUYyQS9IMXpORnozZ0tHTGYvNUMyQkZIaExkYllqSUJFVlJ2bkZEUlZtUWpGMXZvR3lpbkppd3lJVEVKbXcwUllLUXNwRkJKWFRJY2c4Vk1TeW9EODd3djJleisvR2FYZWUvQlB5NzR5Q3p6UW1ESU5sZzlwUVV4MUg2ZDAwbDVpNkJRZXNhSEZYM0xvOEpMOG5pTTlDcnl2OEwyUmZzSTIxTHoyZVVWZGtWMEZGblhSWlRYL2M5Rkl2OWR5M2QwU003MUhLNFl0UTJLaDBxM0FpblRPYjBTUmNBdE5iV0FyRllXQ2pPQkJ5dmJENjFtU1dnT2FyRzNxTlBsZUYrYXgwN280dUdxNHhwMyt0WFJLTVQwMFcvVm5FOVVUeFVIMFU1NWE0dG9VaUE3SVBSRmN1dGl2K0tZRHlxUVRaSmU1K1BJei9BbGprUlhiaXd0bW1Cc3daejdab2xYV1lCbGU5WUtvVjR0SmUwa21JbnRHQlQxRHZBSktCeGhrNFBEZW92cUwrN3FmeHJWNCtXc2s5TlovY1RENkl4UmVlRUdjamRLSGVuSUY1azE3VUtybWJIMnlHUm5jcEk5TVZxNm9sTXpMcERvMzdwL2t6bDNiT0k0TTdHM1I4aDl6RUpaMThaTVRaYVd4NTVYTHBrSmx5YWtCRnhRN0VQaVAzL254YTBsaTlxYTAyN3N2MUVEMHhDaHRxeXFjSXR2aENJN3ExaThTWU1HL0p0NmRkQWFyZjhJejRPcWttYWd4SkVFa3gycUFpYWFuNDFmMEVFdEswMWxUSXc5dzJ0cXBTb1VsVll0K2xuRnBsZnVYb3pWRWZRSEpBdXZMVE9NY1VjaFlKd3BJS0FadUdISzgrT3U2UFU4dnh1WlNrTnZXOEFEcHJRaERxMTMyZzZqaTlaSGh1Y2kzSUFuYzNtVXZYYm1HMFNObTloTnJ3OUlxMit6dGdocFZva1lSRUVMOFhDNENtZnVPelpra2lONlFjM1Rzc3R1WGZNQjBEazhoMmR4OWhsQ3FzM3NuM2tkK1dvdDMyOTAvZDFoc2srSmZsWkR1NkwxOVJyYytTZjQ3RWhvNjg5Z0kyOXJnak9Rb1kyUHk4d09PM0dRNXdQaWF5YmdxaGhTN0NIcEU3aVJNRWpwVXFHV2pxZTBEY0Qzc01RRi9kK0FpR3ByVEtvYzV3YmxBd1NNV2t3dkVYYnNOZm9GNXhVRVNpTnRabnI4blBPTUJGZWhueDVMaHZNZml6UlpRS0xyNlJEcWJhdlJ2dUlPTWhkSGExREp1bWRBTGhNUlh0RWxrWlpWQ2RvUzh5dTd2aDFyQWRtYWZNZEJ6SmhkZ3YwMVVSNDdNTFllN3Y0UjNIbE0xRnJXTFNvOHg4TkhiOXRhbGZRSkNvNDh0WWF0eG1WZEJOUFNWQU95UWw5cUMwUTlMWno5bjZrRWFBQXpnV2R1bW03Sjd2bDNlVngwK0pKYVVWaEZValkrcWRycjVNalgrZWhTOTNmczF5S2JiY29VUXlrdGw4S2p5NGlxTkNrNzgrYjMzUzk1RVo4WVVuVTRpa2x2UitxeTBDdklhUzcwMjBzSytLaGh4amNodlJCSUgyN05JZ1R1T2MvS2NhRDE0ODdmcVVhTFhDSzFMbktjSDdZRkhRUldlSHNKRDhhU3hYQlVOK01QWmpaMWtMWldlZm13Q0Z0YzdBL0RtcjlNa2VwWEZRS1pic2J4bWhlQmRvZ2YrYXZTV2lJV2hocEZkb2NZUkpCczgvc0I3d1F4RW12MVBPSnBuc2xjN3FOTjdqbkNLU21oRmZiZUxOTUI1Rk52NmI5ZlVmQTUreVFMTitLYlM5dVBDWmNXR1p1QzhkemJjZjBHZEZSd3YvdythOW5NQUZjMDh2cXZ5THB1ZHQ3NUFrcGd3RGtzck9iSndWdnQ4NmlTMjc2dlRGSExRV3dLMU0rdDdteXJGMVNQWGxZKzdkb0ZMRmhBNlNwMXRYTit5N0t5L1pUK2JkL3QxYjBsY3BadXVqR01YSUw1Y3ZxNjZKRjZEY2NZWCs0clhuZnZsYXg4NDl3cEJsMlRsS1FRUldKT3Q1ckExYVhpbGtxcEdkM1JydGtBQ2tTaEtBOTZQTXNBcjJBNlNUalRKYlpaa1RLWWRBRit2ZldoT1pJaHUwNmJoZmxHbEhieHNxU0hOY1AxUUh5ZS92RFlOVmNqZW55WUFhSUdGd1A4Z2gwdk9lNisxek5UbzE5OTd5aHg0M0cxSm5kTU5xdzEybDNXd3pjU0tlS291UHF3PT0nKVwifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwiQmFzZTY0UGljXCIsXCJwYXRoXCI6XCJCYXNlNjRQaWNcIixcInJ1bGVcIjpcImxldCBwaWNfaG9tZSA9IGBkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVFBQUFBRUFDQVlBQUFCY2NxaG1BQUFBQ1hCSVdYTUFBQUFGQUFBQUJRSEgzM05TQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUIzZDNjdWFXNXJjMk5oY0dVdWIzSm5tKzQ4R2dBQUlBQkpSRUZVZUp6dDNYbDRWT1gxQi9EdnVUT1RmUUdTekNSc2dvSldOaGRRRkZDUm9xTGlCb0s3YmExU2F5MGtiRzYvYXR3Vk5RRnFyZGJkdXJKcEsxcFV4S1ZTRitxQ0lHcGxVMWt5TXdtUVBabk0zUFA3SXhrRUNXVHU1TjU1NTg2Y3ovUDBhVWd5ZDQ2WmViOXp0L2U4QkdGclBjdCtUQTg2TS9vaXBQZGxzSWVnNWV2TSthUlJQcGp6QU9TQmtBZEdTdHREdXJiOWZ3cUF6TGF2NndFRTJyN2UyZmIvelFSVU1WQUZVQlV6VjJrYS9NeGNSVG9xNEhKc2RnWWJObTJaM3FzeE52K2x3Z3FrdWdBUmdVZlk1V25hZVJqMDBHQ0FCd04wTUlBK2JmL3pLSzBOOElKNEUwQ2J3YndKVEY4U3REVVZOZDIrUlNrRkZkY21PaUFCRUdkNmx2Mlkzb3pVWVVRMFhBT0dNREFZd0FCZzl5ZTRYUVNJOEJXWTEraWdOY3o4Y1daTi9hck5wWDJiVkJjbWZpSUJvSmg3cnRkRHVuWXNFWVl5TUJLRVVXQ2txYTdMSWtFQXE4RzBralY4NmlUdDNXM1R1djJndXFoa0pnRVFhNlhzTE9qcVAwN1RNUjZnc1FDT1JuSy9EaHNCTEFkamFiWnoxNXZycC9adlZsMVFNa25tTjE3TTlKaGYxYk1seEdjUmVCeUFYK0tuazI5aWIzVUEzbWJHc2hEbzFhcnArVnRWRjVUb0pBQXMwdVBCbXJ5V1lPQk1ZcjRNd0JnQW11cWFiRVlIOENHWUY0YUlGbFNXRkd4WFhWQWlrZ0F3VVk4SGEvSmFXZ0tUQ1R3WndJbVFRVytXRUFqdnM0NEZLVWhac0dWNjdnN1ZCU1VLQ1FBVEZNM3pEOVYxVEFGd0tZQU0xZlVrdUdhQS9nbmdiOTdpdkxkQnhLb0xzak1KZ0NqMWZtaFgxK2JtbGtrQXBnSVlxTHFlSlBVZEVUMnVJL1NVcjlqalZWMk1IVWtBR09SK3dIdUVwbWt6R0xnQTlyczJuNmdDQkg1UjE3bk1OOE96V25VeGRpSUJFS0dDZWI1UldvaXVBK0ZNeU44dG5xMEU0MTV2U2Y1U09Uem9tTHlSRDZTVW5ZVTVWWmN3NlRNQkdxUzZIR0VFcldIZ1BsK1B2T2N4bVVLcXE0bFhFZ0R0S1dXdHNJdC9vczUwT3dHSHFTNUhkQUpqRXdqM2VIdmtQeTVCc0M4SmdEMHhrNmU4Y2p3SXR3RTRVblU1d2tTTWRhelJ2YjVkZWMraWxIVFY1Y1FMQ1lBMjdyS3FVNG4wZXlFRFA2RVI0WE5tbXUwdHlWK3V1cFo0a1BRQlVERFAxMS9UdFRzQm5xUzZGaEZUeThtaFRhdVltcmRPZFNFcUpXMEFGUHpGbCtVSTBFd0dyZ2VRcXJvZW9VUUxtUDRhQ0dnMzc3eStXN1hxWWxSSXZnQmdKczg4L3hWZ3VodEFnZXB5UkZ6d0V2ajZpdUtDcDVQdDBtRlNCWUNuM0hzd29EMENZS3pxV2tUOFllQjlKMkhLdHVLQ2IxWFhFaXZKRVFDbDdQVGsrUDhBb2pzaFUzSEZnVFVTTUtjaUkvOU8vSTVhVkJkanRZUVBnTzdsL3FOMXdtUE1PRXAxTGNJK0dQaU13Yi8xbDdpL1VGMkxsUkkzQUpqSlUrNmZDcUk1a0h2MlJYU0NCTnhaMFNQLzlrUzlpU2doQTZEN3ZCMjlRM3JvR1FBbnFhNUZKQUwrRU9CTHZTV2VqYW9yTVZ2Q05hd29uT3ViRk5KRG4wTUd2ekFOSFE5b243bkwvWmVvcnNSc0NiTUgwUDJSYlJsNmcrdGhCaTVUWFl0SVlFUlB1dlRHUHlUS2dpZ0pFUUFGWmI1K0d0RmlBRU5VMXlLU3dtcEFuNUFJaHdTMlB3UW9mTUIzaGtiMENXVHdpOWc1QXRBK2Q1ZFhucXU2a002eTd4NEFNeFhPcTVyTnpIY2hBWUpNMkJJRFBNZGJYWENqWFdjWTJqSUFQUGRWWk1McGVBN0FPYXByRVFMRUx6dlNnNWR1KzEzM0J0V2xHR1c3QUNpWTR5dlVYUFFxZ0dHcWF4RmlENnVZOUxQczFwelVWZ0ZRV0ZZMWtFbC9EY0JCcW1zUllsKzBXUVBPMkY2Uy83WHFTaUpsbTJOblQzbmxHQ2I5QThqZ0YzR0wrK2pnbFlVUCtFOVdYVW1rYkJFQW5qTC9oUUF2QTlCRmRTMUNkS0FyYTFoV09OZG5pd1l6Y1I4QTdybVZsNEx3ZHdBdTFiVUlFYUVVWm5yQlUrNjdRblVoSFluckFIQ1hWLzZlbUo4RzRGUmRpeEFHT1FCNnpGUHVMMVpkeUlIRWJRQVV6cTI4anNBUElZNXJGS0lEQktEY1BkZC9zK3BDOWljdUIxZGhtZjlXWnI1SGRSMUNtSUVZdDdyTC9iZW9ycU05Y1hjWjBGUG1Md0doVEhVZFFwaU82UWJ2OVB5NCttQ0xxd0FvbkZ0NUxUUC9XWFVkUWxpRmdSbStrb0s0K1lDTG13QW9MS3Y4RlJNL2dUZzlMQkhDSkF4Z2lyZWs0REhWaFFCeEVnQ2VNditGSUR3THdLRzZGaUZpSUVURUYxVVV1eGVxTGtSNUFCU1crVTlpd2h1UXhUbEVjbW1CUnFkN3ArVy9yYklJcFFGUU9MOXFBSWYwRHdCMFZWbUhFSXBVUTNPTThrN3J0bFpWQWNvQ29HMVczMGVRZS90RlVxUE5US0hqVk0waVZITENyV2ZaaittYWkxNkJESDZSOUxnUHNiYlVjMStGa2dWclloOEFwYXkxVU5vTEFJYkgvTG1GaUUvRHlLazlBK2FZNzVISFBBQUtjeXR2aG5UeUVXSXZESnJnbWV1L01kYlBHOVBFY1pkVm5VcWt2dzY1M0NkRWUzUUNqNjhvY2Y4clZrOFlzd0FvTE4vZWgrSDRMMEI1c1hwT3NhOE1GK0dYZlZJd3NwY0wzYk5hZHdBcjZuVjg4R01MM3Q0VVFIMUxVcTJPSFk5MkF2cXdXTFVjajBrQTlDejdNVDJvcGEyVUJUclZ1bkJnR200Y2tRRjNadnRIZnBVTk91NzVUd09lWGRzVTQ4ckV6NngyWkxTTWlFV1QwWmljQXdoUzJpTXkrTlhSQ0xqcjVDek1QU1ZydjRNZkFQSXpOTncvTmdzUGpNMkNRL2t0WWtudGlGQzlhMzRzbnNqeWw3bXczSGMrZzVUZjhwaXNDTUE5WTdMd3F5RnBoaDczei84MTQ1cGx0UWphc3R0OWdpQyswRnZzZnNuU3A3Qnk0ejNtVi9VTWh2UXZJWGY2S1VFQTdqNDVDNzgrd3RqZ0QxdXdyaG5GYjlWQ2w5TUNxdXh5YUk0anRrM3I5b05WVDJEZElVQXBhOEdRL25mSTRGZUMwTHJiSCszZ0I0REpBMUpSZmtvV05Ea2NVS1ZMVUEvOUhRdllzcXRtbGdXQUo5ZC9BNERSVm0xZkhOaWZUc2pFYnpveCtNTXVHSkNHQjhaS0NLaEN3SW1GVzZ0bVdMaDk4M1V2OXg4ZEFqNkNkUEpWNHFhUm1mampNZW1tYnZPNXRVMll1YndPY2pTZ1JFQUhEL2VYdUw4d2U4UG03d0dVc2pNSVBBb1ovRXJjTUNMRDlNRVBBSmNNU3NQdG96UFZ6eDlQVGlrYTZFazh3cWFQS2RNRHdKTlROWk9BbzgzZXJ1allkU015TU8zWURNdTJmK1dSNmJqMUpDVnpWZ1J3cEx1aGNwclpHelUxMEF2bStmcHJPcTBHWVA1SGtEaWdtY2RsWU9aeDFnMytQVDM4V1NOSzM2K1B5WE9KdlRTd1F4L2ltK3JaWU5ZR3pkc0RZQ1pOcDRjZ2d6L21yaG1hSHJQQkR3QlhINTJPbTArUVBRRUZNa2pYSGpWejFxQnBseGM4WGYvd1c0RGllaFdVUlBUN29lbTRSY0ZnUEtaNzYrSG9mN2EweFB5NWsxemY3QThiTjlXOU1XZTFHUnN6SlVtNnphL0tjZW42dDJBVW1yRTlFWmtwUjZYak5zWEg1SE0rYkVEWng1YmZzaTcyNWdzME93N2RlWDIzNnM1dXlKUkRnSlNRZm9zTS90aTZLZzRHUHdETVBqNER4UmFlZUJUdGNxZWtCbTh3WTBPZDNnTW9LUFAxMDRqV1FycjZ4c3lsZzlKdzM5aXN1TG9rZDlmS2VzeGYxYWk2akdRUzBEVWU1Si9tL3E0ekcrbjBIb0JHTkJjeStHUG00b0h4Ti9nQjRNYVJtYmgybUp6L2phRVVUYWM1bmQxSXA5NUhubm1WdjRUT3l6dGJoSWpNaFFQVFVCYkh0K1V5Z0p2ZXFjTVRxNldmUUt3d2E2ZjVwdWU5R2Uzam85OERZQ2JvZkgvVWp4ZUdUQjZRR3RlREgyajlOTG16a3hPUWhERkUrbDJkdVN3WWRRQVV6dlZQQkhCa3RJOFhrVHY3MEZTVW41SWQxNE0vYlBjVVpJUDlCMFRVaG5yS3E4Nk85c0hSQlVBcGF3ejZVN1JQS2lKM1Z2OVVQRFF1MjFZZGVnakEzV095Y1BsZ0NZR1lJUDBPbEhKVVl6bXFCN2x6S3k4Q01DU2F4NHJJamUrWGlyK2VuZzJuRGRkTERuY2ltblM0bkIrMkhnMHE3T0tmR00wampiKzFXcHNUeUtlL3hjN29sNEsvbm1IUHdSK21FVEQzMUd5Yy93c0pBY3N4M1JGTjR4Q24wUWNVYnFtNmxBbUhHWDJjaU55NFExTHd5Qms1Y0ZrMCtKdUNqSy84SVZRMjZzaHdFWHJuYURnbzE1cW1NNDYyRUFqb3JYMEdoVFVZT05TenBmSUNML0M4a2NjWkRnQW1ubTcwTVNKeVkvdW00RkdMQnYrR25TSE0rYkFCYjI0TW9ERzRkMnVQUTdvNk1PV29kRnd5S00zMHZRNm5CancwTGhzaG5mSGErb0M1R3hjL0lWd0g1aGRBRkhIZkZrT25sZ3JMZmFjejZIWGpsWWxJak9tVGdxZk95a2FLQldmOG5sdmJoT3RYMUtHbGd5Ni9SeGM2OGRSWk9RZHNIeDZ0RmgyNDZyVWFMTnNnSVdBZE9zVmJraC94dlRtR1htVm1zcXczV2JJN3FiY0xUNDYzWnZEUCs2UUJNNVozUFBnQjRMT0tJTTVhVUkydHRlYjNBM2Rwd0tObjVPQ1V2aW1tYjF1MEltSkRZelRpZDV0N3JuY0lzZmFGa2NlSXlBenY0Y0lMNStZZ3cyWCtuemJhNWgwOWN6UzhjbjRYOU15eFlFOGdCRnl4dEFadmJaSTlBU3V3cmgvcG0rR0phTHB3eEs4dTZkb3N5T0EzM2JIZFhYamVvc0gvdDgrajc5eXpwVWJINUNYVnFLaTNZRS9BQVR3eFBnZGpaVS9BR3BvajRyNGNFYjNyM0hPOUhtTHRCd0R5aXBub21DSVhYamd2QjFrcDVnLyt4NzVveEovZXJlOTBGOTlEdWpxdzVQeGNlQ3c0SjlBVVpGejZqeHA4OEtNMEZURlpnQnpCbmhWVGkvd2QvV0pFcjZvR3g2OGhnOTlVUTR1Y2VONml3Zi9jMmlaVEJqL1FldVZnd3FKcStDellFMGh6RXY1K1RnNUc5cElHMGlaTDBZUE95eVA1eFk0RGdKbVkrYmVkTGtuc050anR4UFBuNWlMYmdzSC93bGRObVBXMnVmMzdOK3dNWWNMaWF2Z2J6QStCZENmaDJYTnlNS0tuaElDcENGZEZNa21vd3dBb0xLc2NEYUMvR1RVSllGQ0JFd3NuNUNJMzFmekIvOUs2SnN4WVhtZkpXbjdyZDRSdzRjczEyTmxrL3NiRElYQmNEd2tCc3hCd1dFRzVmMVJIdjlkaEFMQ0dxOHdwU1F3c2NHTGh4RngwU1ROLzhDOVkxNHlTdDZ3Wi9HRmYrWU9ZdExnYXV5d0lnUXhYNitIQTBZV0c3MDBUKytFZ1hOblI3eHp3bmRqandacThZTEI1Q3hneXJhdVRCdVE3c1doaURycWxtMzh5TGRaTGVROTJPN0Zvb2pWN01UWE5qTWxMcXZHRk4yajZ0cE5RWTJxcXE4Y1AxM1RadWI5Zk9PQzdNUlFJWENDRHYvUDZkWFBneGZPc0dmeEx2NHZ0NEFlQU5iNGdMbjZsR3JVQjgvY0VjbElKTDAzSXhSRWUyUk13UVhwemM4c0Jad2tlOEIzSnhKUE5yU2Y1SE5MVmdjVVRjeTI1dGZhMTlRRmMvUy9qZ3o5OCtYSHRsRzc0N3hYZGNPZm9USFExZUZqeTZmWWdMbnE1R25VV2hFQnVLbUhCaEZ3TWRrc0ltT0NDQS8xd3Y2OTZ3Unhmb2VhaUxUQng4WkJrYzNBWEI1Wk15a1doQllQL1h4c0NtUEphVFVTMzkrN3BuRU5UOGVDNDdIMG1HMjNjRmNMRVJkWFlYbWRzZzhkMmJ3MlRUQXR1WktwcTFERnhVVFcrcVFxWnZ1MGtFa0l3MU4wN3E5RFgzZy8zKzg3VVVqQVpNdmlqMXJlTEE0dlB0MmJ3cjlnY3dPOWVyelU4K00vc2w5THU0QWRhd3lxYWVqL1oxb0tMWDY1QmZZdjVld0o1NlJvV1RjekZZWG55TnV3RUJ6c2NFL2Izdy8yLzJreXkreCtsbmprYUZreklRVkdXK1lQLzNlOWI4SnVsdFFpRWpBMjQwdzlKd2NNZFRETU9oNERSdS80KzN0YUMzN3hhZzZhZytTR1FuNkZoOGNSY0hOcE5RaUJhUlBzL0RHaDN2NjNIL0txZXdaRCtQU3hZUGp6Ujljalc4UEtrWFBUT01mOE4rOTRQTGJqOG56Vm9OampRakU0ejNyQXpoUE9pdVB2dnBONHVQSE4yRGxLZDVoOE8rQnQwbkxlb0d1dDN5T0ZBRkVJaG9GZGxTY0gybi8rZzNRSGVFdUt6OXZjenNYL2RzelVzT2QrYXdmL1IxdFpQV2FPRGYvUkJ4cWNaSDlMVmdTVVRjMUdRWWV3dDhONFBMZmoxcTdXR2E0eEVRWWFHaFJOeTBjZWl6a1VKenVFQXptenZCKzIrd2dRKzNkcDZFazlSVnV2Z3Q2SzExc2ZiV25ESkt6Vm9NSGljZlZKdkY1NCtLN3BQNVBDbFM2TlhCOTc1UGhEVklVb2tyUHdiSjdyOWplbDlBbUJnS2FjQU9ObnlpaEpJUVlhR0JSWjlPcTNhSHQxSnR1RTlYSGd5eXNFZkZ1MmRpeXMydDE2ZU5IcVNNaEpXN21VbE1nYU54U084ejczVyt3UkFaVzdWaVFDeVlsSlZBc2pQMExENC9GejB0K0FrMVgrM0IzRlJOSVBmeEI0RDRia0xSa1BnOWZVQlhQMTZqU1UzS1BWb0N3RXJtcFVrc0p6Qytzb1JQLy9tUG45QkloNFhtM3JzTHorajlZMW94Um5xYUcrME9hYkloZWROdmk0LzJPM0VjK2NZbjczNDJ2b0FybjJqRmhZY0RiUmRhYkhtTW11aVltM2ZzYjNQWDQ5MXlQRi9CTHFsYTFnNEljZVN3Yi9HRjhRbC96QitxKzJ3SXFkbE4rVU1MWExpaGZOeURmY3ZlT1hiWnZ3K2lyc1ZJeEh0dlF0SmkybWZzYjNYcTluVythY2lkaFhaVTI0cVllSEVYQXl4NEZiVnRmNGd6bzlpeHAyVkUzVDI5TW0ybHFnT1N5WVBTTVZjaTlZM0REY3Q4VnJRdENUQk1EbUNuajA3QmYwOE9qdWNQNXpzY3RydVU3ZGk4Sytyakc2NjdXQzNkVDBHZnU3WTd0RWRZaXhZMTR6cEZ2VXFDTSszTUhyWk1na1I2ODdqOS96R1huOHhqYlY5VGhLSW4rU2tFbDQ2ejVxWmF1dDNoSERCRXVNTk53WVZPTEVnaXBOMG5URzhlK3NWaGpTRFZ4aGUvS29KTXkwS2dYN2RISGhwZ3ZITGxzbUdHU1AzL1BkZUFjRFkrNGZpSjlrcGhCZlB5OFZSRmpTc2lMYmwxb0Q4MXN0MEt0NzBKL1oyNGVrbzd2cDcvcXNtekRhNVpWbVl5citIWFJEMkV3QTl5MzVNQjNCVXpDdXlBU3U3MVVUYmRETWVQdkZPNnUzQ1UyZGxHdzZCWjl1YWxscEJ4UjZSelF6clU3cHBkNCtQM1FFUTBsS1BnWFQrM1llVi9lckNVM0NObnJ5SzlsWmRLNXg4VUVwVUt4bzk5a1VqYm43UG1oQ0k1VGtSRzBwdHlNMFlHdjdIVHdIQWRLeWFldUpYZWx2YmFpczYxa2E3OE1ZaFhWc3ZmVm5SWUNSYVkvcWs0T0hUMjU5bWZDQ2RXYmlrSTRQZFRqeDNydkhMbHNsQkc3NzdxL0FYeERoQ1RUSHhLY1ZCZUh4OE5rWlowTE4rYTIzcnpMWXROY1lHZnp4Zjl6NmpYK3QwWTZNckN6LzhXU051KzdjMUlSQytMMEpDNE9kb2NQaXJuMTR1d3VCMmZ6Y0p0UzVkbFkweGZjdy9JdHBXcStPOGhkWDRzY2JZdEZZNzNQbDJaci9XUFFHaklmRFFwNDI0LzZNR1MybzZwc2lGNTg2MTV1WW8rK0loNGE5YVg2cldTUUtIcXlvbm5yZ2N3T05uV3JOdTNmWTZIUk1XVmVNSGc0Ty9SN2FHbDIxeTcvdjQvcWw0YUp6eEVMai9vd2FVZjJKTkNBenYzaG9DVnF5L2FFY0VERVFwTzRHMkFQRFVlMzhCT1FHNGUvQ2ZlckIxZzM5enRiSEJINTc5MXN0R3M5L09QalFWWldPTjMvVjM3MzhhOE9CL0d5MnA2YmdlTGp3eDNwcG1KVGFVV3BSYjFSOW9Dd0FteDVBRC8zN2ljeER3NEduWmxneCtmNE9PQzVaVVk5TXVZNFBmenZQZkp3OUlSZG5ZTE1NaGNNY0g5Zmp6S210Q1lQUkIwZmRIU0RRNjZVT0F0Z0FnOEVDMTVhamxJT0RCY2RrNDU5QlUwN2RkMmFEai9NWFYrSi9CVmxhSjBBSG53b0ZwZUNDS0VMaHpaVDMrWXRHZVFEUWRraEtTcmcwQ2RwOEVwSU5WMXFLU2c0RDVwMlhqdk1QTUgveFZqYTJELzF1RGJhM0RQUWI2SlVBanpJc0dwdUcrWDJaRnRnNzlIdTc0b0I1UHJHNnlwS1l4ZlZMd3lCbkdMMXNtRk9LK3dFOVhBZm9xTEVVWmpZQjVwMlZqNGkvTUgvelZ6WXdMWDY0eDNOTStFYnZnWGpJb0RiZVB6alQwR0FadzB6dDFlTXFpRUFoM1NUWjZzakpoTU8wVkFIM1VWYUlHQWJoM1RCYk90Mmp3VDE1U2pUVStZK3ZiSlhJZi9DdVBUTWR0SnhrUGdSdmVxY1BUWDFvVEF0RmV0a3dJYlhzQURzOTlGWm5RdER2UXdVS2hpWVFBM0RNbUM1Y1BNWC9adzVwbXhnVkxxckhhNE9LVzRlV3dCaFlrN25KWVE0dGN5RW9odlB0OWk2SEh2YjBwQUUrbVpza3N6RVB6bk9qWDFZRi9iUWhZdXJKeUhNb3FPUDZhZXgzWnA5OXdLSWovb0xxYVdDRUFkNStjaFY4ZllmN2dydzB3TG55NUdwOUhPZmlISk1HQ21NT0tYTWh3RWQ3N3dXQUliQTZnZDY3RGtvQThMTStKbnRrT3ZMRXhZTWtzeFRoRm5KN3lyQ1ByMUpuSGdPZ1MxZFhFQWdHNDYrUXMvTWFDd2QvUXdyajBIelZZdGQzNDRGODRNYmxXd3oybXV3dEV3SCsyUkI0Q0RPRE5qUUgwNmVMQWdIenovMVlEQzV6b21hUGh6U1FLZ1JEemE0N00wMmVmQk9CczFjWEV3cDlHWldMSzBlbW1iN2N4MkRyNFA5eHE3Rk10TzRYdzRvUmNISmxFZ3o4c1BNSEthQWk4c1NHQWc3czZjTGdGSVRDb3dJbnUyUnJlMnBRY0lhQUJLeHhacDExM0tnaGpWUmRqdFp0R1p1TGFZNndiL0ViZXlFQnJqNEhuenMzQk1kM05uMnhrRnlONnVzQU1ROEhKQUpadENLQmZOd2Qra1dkK0NBeDJPMUdZcGVHdGpRSFR0eDF2U0tPVmp1eHhzODRCa05DdHdHNFlrWUdweDJhWXZ0Mm1JT095ZjlSZzVZL0dCbis2czNYd0gyL0JOR083R2RrcnVoQjRZME1BQS9LZGx0d3JNY1R0UkpjMHdvck54bDVYKytIUEhKbW5YM2NSRXJnVDBIVWpNbEJzd2VCdkNRRy9mYTNXOEJudGNJT1JrUlpNTTdhcmtiMWMwQTJHZ003QWF4dWFNYWpBaVVPNm1oOENSeGU2a0pOS2VNZmc2MnN2OUkwajY3UlpWd0E0VEhVcFZwaDVYQVptRExkbThGK3h0QWJMTnhuYlRVeHJHL3hXOUJpd3U1RzlYQWpwcll1Z1JrcG5ZT242Wmd4eE8zR3dCU0VRN1dWTDJ5RCszcEYxMm5WL0JLR1g2bHJNZHMzUWROd3cwdGlOSjVGb0NRRlh2bGFETncwT2ZwY0RlSEo4RGtZZmxQU1RMdmRyVkM4WGdsR0ZRTUN5RUlqMnNxVWRNS2pTa1hYYXJCa2dGS2d1eGt4WEg1Mk9XMDYwWVBEcndKVFhhN0RNNEFtaTFnWWoxdlFZU0RTamVyblFvZ01mR3dpQkVBT3Zid2hnV0pFTHZTMllQQlUrVVd2MFJHKzhJM0N0STJ2YzdCa0F1cW91eGl4VGprckhyUVp2T1kxRWlJRnIzNmpGMHUrTUQvN0hMT294a0toT2lDSUVnanJ3Nm5jQkhOdmRaVW52aEJFOWpaK25pSDlVN2NnY04zc1dBVG1xU3pIRFZVZWw0M2FMQnY4ZjM2akZ5OTgyRzNxY1N3TWVQVE1INHc2UndXL1VDYjFjQ0lRWUgyK0wvTVlxcTBOZ1pCU0hLSEd1M3BFMWJ2YjFBTXdmTlRGMjZhQTAzRDNHK0xUVGpvUVltUFpHTFJaL1kyendoM3NNak85di9tU2paSEZDN3hRMGh4aWZHQWlCbHJZUUdON0RoWjRXaE1Db1hpN0ROY1V0UXFNamE5enMvd05nL3IyeE1YVHh3RFRjRjBYamlZN29ESlM4V1l1RlVReitQNStXamZNc21HbVliRTdzbllLbW9QRVFlSDFEQUtONnBhQW95L3lwZmlmMlRrRmprTEhLL2lIUTRzZ2FOL3RtQUxhOUxoVnQxNW1PTUlEclY5VGgrYStNRDM2cmVnd2txMmhDb0RrRXZQcGRNMDdvbllKQ2kwSmdaNk51ZU9KWG5HRU5ObTRHR20zZnVZNHdnQnRXMU9HWk5jYm1vV3NFekQwMTI1SWVBOG51cGxHWnVQSklZN2R5aDZkbWYybXdMME1rQ01DZEZzMHFqYUZVMjdaQ09QdlFWSlJic040OEE3anhuVG84WmJBSlJiakh3S1REWmZCYmdRRGNQam9UdnpVWUF0WE5qRW1MalRkbmliU211MC9Pd3E4czZDc1JLeG9BMjgxNk9QZXdWUHoxOUd5WTNkZVJBZnpmdS9WNDBtQWJLZ0p3OTVnc1hEN1l2bThFT3lBQWQ0ek94QlVHUDNXcm14a1h2VkpqdURkanBEWGRmWElXTGhoZ3k5ZSsyWFlCTU82UUZEeDRtdm1ESHdCSzM2L0g0MThZNjBhN3U4R0lqVDhGN0NTODYyMjBwME80Ty9ONmc5MlpJNkVSVUhaS2xoMHY5elpyQUl5ZDVWTEluYWxoL3FuVzlIQzc3ZC8xZU9RejQ0UC9qdEdaZGo4T3RKMW9HN3Y0RzNSTVhGeU5EVHZORDRId2xSOHJyanBZaHRDc3NZMzJBR1lNejBDT0JVcyszN1d5SGc5OWFyd1AvVTJqakIrVENuT0VROEJvK0hyclcvY0VqQzdTRW9uc0ZMSms1cWxsR0FHTmJCSUFMa2Zyc2IvWjVuellnUGxSckVSejQ4aE1YRHRNQnI5SzBmWjMzRjdYdWlkZ2RJM0dTRXo4UlNwYzltbnEzS3dCc0dZSkZwTWQxczJKWEpNLy9jcytia0RaeDhZWHBMeCtSQWFtV3RCZFNCZ1g3VG1ZYmJXdGF6VWFYYUs5STFrcGhJRVd0Q3V6QmpkckJPeFVYVVlrekw2WlkvNnFSc3o1MFBqZ24zMjhOUTFHUlBUQ1YyR01YbzdiVXRPNko3Q3QxdHdROE1UeEV1NTdveXFOZ1NyVlpVUWlFREt2VGVORG56YmlycFgxaGg4Mzg3Z01UTGVnd1lqb3ZOMXJQUmk4RlB0OWRRZ1RGMWRqZTUxNUlkQmlicDVZaHNCVkdrQzJDSUFmcXMzNXF6N3lXU051KzdmeHdYL04wSFRNUEU0R2Z6d2pBUGYrTWd1WEdReUJUYnRDT0g5eE5iejE1cnpIckxqVWFBVm1xdElZWEttNmtFaHNyZzUxK3ZMTnMydWJVUHErOGNIL3U2UFRjZk1KdHA4d21SVENTNzVOSG1Ec2hQR0duU0ZNV05UNUVOaXdNMlRKeVVWTEVGZHFtazMyQUFEZ01ZTTM2ZXpwcVMrYk1HdDVuZUYrNzFPT1NzZXRGblFYRXRiUkNKaDdTalltRzd3dGU4UE9FQ1l2cVVaVlkvUWhZUFFXY3BWYTl3Qkl0MDBBUEx1bUthcUpIYyt1YmNJTks0d1AvaXVQdEthN2tMQ2VSa0Q1cWRtRzUyWjhXeFhDcE1VMTJCRkZDSHhURmJKc0lWTXJhTVJWR29Xd1hYVWhrV3JSZ1YrL1dtTm9GK3U1dFUyWS9iYnh3UjllMGpwcFZreE5RSTRvWjJldXF3eGk4cElhVkRaRUhnTCtCaDIvWFZwajZzbHFxNFVZRlJwY2pzMnFDekZpVzYyT2NTOVU0NDBPR25QV0JSalhyNmpEak9WMWhsZDl2V2hnR3U3N3BmbmRoVVRzaGZzekdBMkJ0ZjRnem5neHNxbkVxNzFCblBXU05iY1lXOG1sMFNicVdmWmplZ3VsMWNPR3k0TWZVK1RDeE1OVE1ieTdFKzVNRFlFUXNIRm5DQ3UrRCtENXRVM1kyV1E4alM4WWtJYnlVOHp2TVNEVUNqRXdOWXJXYmhvQjV4Mldpb20vU01Yd0hpNWt1bHJmR0hVQnhpZmJXckRnNjJiODgzL05kbHhhbk5PcjZ6SUlBRHpsZmk4QXQrS0NsRHZuMEZROFpNRTBZeEVmb2cyQlBXVzZDQnExTGdWdmM5dThKUVU5d3Jjc2JWSmFTcHk0YVZTR0RQNEU1cURXMjdnN283NkZFMkh3QTIxalBod0FtOVhWSVlSUVlETVFEZ0NpRFNvckVVTEVGZ0ViZ1hBQU1LOVZXbzBRSXJhSTF3QnRBVUNzZmFtMkdpRkVMR2xCN2FjQXFLanA5aTFzMUJwTUNORXBqZHQ2NTMwSGhBOEJTaWtJNEd1VkZRa2hZbVlkSmxNSStPa3FBQWdzaHdGQ0pBT2kzV045ZHdEb1RCSUFRaVFEdmZVRUlMQkhBREQ0RXpYVkNDRmlpVW43S1B6MTdnRElkVlovQWprUktFU2lhODV4N1Bncy9JL2RBYkIrYXY5bUVIK3VwaVloUkN3UXNHcjkxUDY3UCtpMXZYOUlLMk5ma2hBaVZwajRnejMvdlZjQTZMb0VnQkNKYmU4eHZsY0FhTTZXRHdERHpYT0VFUGJBVG1mcWgzdCtZNjhBcUpoYTVBZXdMcVlsQ1NGaVpmWFdhM1AyNmdHNnp4SW1CUHdyZHZVSUlXS0g5eG5iK3dRQWE3UXNOc1VJSVdKSkkrd3p0dmNKZ1B5ZGVmOEdVQnVUaW9RUXNWS3pQYjNndzU5L2M1OEErS3FVQWdEZWlVbEpRb2lZSUthMzhEdHErZm4zMjEzR2xGbk9Bd2lSU0ZqVDJ4M1Q3UVpBQ1BRcUFKdXNjU3FFNkVCSUQrQzE5bjdnYk8rYlZkUHp0N3JML1NzSk9NSGF1b1JaMWxVRzhlam5UZmkyS29pZ1JkSHQxSUREOHB5WWNsUWFEczl2OTYwajR0TjcvdG51aXZaK3NOOVhVU05hd013U0FEYXdiRU1BVTE2dmpjbXlWSjlWQkxING0yWThlbVkyVGpzNHhmTG5FNlo0YVg4L2FQY1FBQUJDQVgwUkFIdXRkWlNFYXBvWjA5Nk16ZUFQQzRSYW56TkIrdU1udWlDQ29WZjI5OFA5Qm9CL3Ryc0NoUGV0cVVtWTVmMGZBcWh1anYxQTNOWEVlTytIQTYvUEtPSUJyL0RPS3ZUdDc2ZjdEUUFBWUIwTHpDOUltTW5Yb081VDJGc241NGx0WUwrNy8wQUhBWkNDbEFVZzJHZkI4eVNrczdvQXNPR0NtTW1tTVRVMTVlVUQvY0lCQTJETDlOd2RBSmFZV3BJUUlpWVl2T0NIYTdyc1BORHZIREFBQUlBWWo1cFhraEFpVmxqRFl4MzlUb2NCVUZHYy94NEIvek9uSkNGRUxERHdyWDlxUVljTmZqb01BQkF4UUkvOG14c3dBQUFKb1VsRVFWU2JVcFVRSWpZWWo3YU8zUVByT0FBQWNERDRGQUM1NWlPRVBRUTBaL0NaU0g0eG9nRHd6aXIwRWZqRnp0VWtoSWdKb3VmYXVudDFLS0lBQUFCbS9YNUl2MEFoNGgxektEUXYwbCtPT0FDODB3dlhBTHc4dXBxRUVESEIrSmR2aG1kMXBMOGVjUUFBQUJNL1lMd2lJVVRNRUJrYW80WUN3RmZzZVFOQXhPa2loSWlwMWQ3aVBFUGR2QXdGQUFBd2pDV01FQ0pHR1BkRWN1bHZUNFlEd05jajcza1F2akg2T0NHRXBiN3kxdVFibnJ4bk9BQXdtVUpnM0diNGNVSUl5ekRwdDZDVURFL1BOQjRBQUx6VitTOEIrREtheHdvaHpFWnJmTHZjQjV6MXR6OVJCUUJLU1dmU1pTOUFpSGpBZkZNMG4vNUF0QUVBd0RmTnZRVEFxbWdmTDRRd3hhZmVrdnlsMFQ0NDZnQm9teVIwZmRTUEYwSjBHZ0V6alo3NTMxUDBBUURBVzVLL0FzQS9Pck1OSVVSMEdMU29vcVRnM2M1c28xTUIwRXFmRHFDNTg5c1JRaGpRekt6ZjBObU5kRG9BdkNXZWpjeVkzOW50Q0NFTUlIckFQOTI5dnJPYk1XRVBBTkJiY0R1QTdXWnNTd2pSSVcrTFJ2ZWFzU0ZUQXFEeXVvSmFBdDlveHJhRUVBZkdSRE4zVE0yck1XTmJwZ1FBQUZRVUZ6d044RnRtYlU4STBhNFZ2bWw1ejVtMU1kTUNBRVJNQ0UwQlVHL2FOb1VRZTJvQTlLczZjOW52NTh3TEFBQVZKVVdiQ1NSM0NBcGhCY2IvZVVzOEc4M2NwS2tCQUFBVjFYbGxBRDQxZTd0Q0pMbFYzcDc1cGw5dE16MEFVRXBCWGVlcklGMkVoVEJMZ0VtL0VwUEo5Tlc2elE4QUFQNFo3czhCS3JWaTIwSWtHd1p1OGhWN0xKbDlhMGtBQUlDM091OWVBQ3VzMnI0UVNlSTlYM1YrbVZVYnR5d0FVRXE2MDZIOUNzQU95NTdEWkhaYzdWYmg0c0MyN0JGdnM5ZDRwMFBYTG90MnFtOGtyQXNBQUZ1bjVtMWgwcWRZK1J4bXFyRGhldmRiYTlYVnZOMkdmNjl0Q3Y5ZVJoSHoxZHRtNVAxbzVYTllHZ0FBNEN2MkxBYlJrMVkvanhrV2ZXMnZPVTNOUWNZL3YxTlg4ei8vMTR4QXlGNGZxUXZ0OHhyL3JXSzYyM0NQUDZNc0R3QUFTTjlWZXcxc2NHbncrYSthc1BnYmU3eEJXblJneHZJNnBaOW9XMnQxekZoZWg2Qk5QbFFYZmRPTUY5YzFxUzRqRWwrNHVLazRGazlFc1hnU0FDaTZmK2RCdWlQNFh3RDVzWHJPYUJDQU0vcWw0TXgrcWNqUGlFaytHcUl6c0dsWENNK3NhY0xYbFVIVjVRQUFCdVE3Y2RuZ05QVHQ0b0FXczNkVTVDb2JkTHkydmhtdnJ3L1k0YnpGRGpoRHc3eC9MTndVaXllTDZjdmxLYThjQy9BeUFJNVlQcThRTnFFejZXZTBMY0FURXpIOWlQT1c1QzluNE5aWVBxY1Fka0ZFTjhaeThBTXgzZ01BQURDVFo1NS9NWmpPaS9sekN4R25HTFRJVjV3MzJjeUpQcEdJL1VFdUVidjA1a3RBL0ZITW4xdUkrTFRLbVJINFZhd0hQNkJpRDZCTjkvdTM1WWNjcmc4QjlGTlZneERLTVRheHBoL3ZLL1o0VlR5OTBuTzJSZVdWaCt2Z2xRQzZxcXhEQ0VWMk9BZ2p0aFVYZkt1cUFLWFh1YmFYNUgrdEVaOEw2U29za2s4QW9Fa3FCeitnT0FBQVlIdXgrMzBpdmd5QTZWTWRoWWhUUVFaZDFMYXVobExLQXdBQUtvcmRDNW5vQ2dBMnVhZE1pS2d4aUsvMmxlUXZVVjBJRUNjQkFBQys0dnhuaU9tUHF1c1F3a0xNb0Q5NGk5MlBxeTRrTEc0Q0FBQXFwdWMvQktCRWRSMUNXSUdJYnZDVjVQOVZkUjE3aXFzQUFBQnZTY0ZjQmtwVjF5R0VtWmh3UzBWeHZpbUxlWmdwRHFkdXRDb3NyNXpONEhzUXh6VUtFUUZtWUxhdnBPQisxWVcwSjY0SGw3dk1melVSL29JNDNGTVJJZ0lNNG1KdnNUdHUxODZNNndBQUFFK1ovMklRbmdiZ1ZGMkxFQWFFQ0h4bFJZbjdLZFdGSEVqY0J3QUFGTTcxVFdLbVp3R2txSzVGaUFnME0ramllTG5VZHlDMkNBQUFjTS96amlCZCt3Zml2S0dJU0hvN2lER2hZbnJCZTZvTGlZUnRBZ0FBQ3NwOC9UU2kxd0gwVjEyTEVPM1k2QWpSbWR0bTVuK2p1cEJJMmVya21uKzZlNzNUbFhvOEFSK29ya1dJbi9rWXdkRHhkaHI4Z00wQ0FBQzJYcHRUcFdXMG5FYmd1RCsrRXNtQlFZdGMzSFN5ZDFhaFQzVXRSdG5xRUdBdnpGUTRyMm8yTTk4SjZURW8xQWdSY0VkRmRmNXRWaTdlWVNYN0JrQ2J3bkwvYUFaZUF1QldYWXRJSmx6RjdMallOejN2VGRXVmRJYnRBd0FBdWo5UTFTdWs2WXNBSEt1NkZwSDRpUEE1TzBJVFk5VzYyMHEyT3dmUW5tMHo4bjUwY2ROb01PSm1scFZJV0g5TDIxVTNJaEVHUDVBZ2V3QjdjcGRYVGlEb2Z3TW9UM1V0SXFIc0F1UDMzdWtGTDZvdXhFd0pGd0FBVURESFYraElvU2VaTVU1MUxTSWhyQWd5WFY0MVBYK3I2a0xNbHBBQkFLQjEvWUZ5LzFRUXpZSGNRaXlpMDBMQVhYWSt5OStSeEEyQU5nWGx2aU0xMEdNQWhxcXVSZGpLS2liOVNsK3g1MHZWaFZncDRRTUFBRkRLbWllMzhrb0FEd0RJVWwyT2lHdU5SSFJyUmZlOCt6R1pFcjVSYlhJRVFCdlBueXY2SXFnOUROQ3BxbXNSY2VrOVhlT3IvTlBjMzZrdUpGYVNLZ0FBdE41QldGNTFPV3Q4RHhpRnFzc1JjV0U3RTgzMkZlYy9xN3FRV0V1K0FHamp1YThpazV5T1dVeTREb3cwMWZVSUpRSmdlcmpGU1gvYU1UV3ZSblV4S2lSdEFJUjFmNkNxbDY3cGR6SndtZXBhUkF3eGxvTDBhZDRTejBiVnBhaVU5QUVRNWltdkhBUHd2UUNHcWE1RldHb1ZBYk1yU2dyZVZWMUlQSkFBK0JsUGVlVllCdDlMd05HcWF4Rm00clZFdUsxaVdzRWlGY3R3eHlzSmdQWXdrNmU4Y2p3SXR3TTRRblU1b2xPK1pxSjdmTHZ5bmszVW0zazZRd0xnUUVwWjgrUlVYZ2pDTEFCSHFpNUhSSTRJbnpQalBtOTEva3N5OFBkUEFpQkNCZk44bzdRUVhRZkNtWkMvV3p4YkNjYTkzcEw4cGJLcjN6RjVJeHZrS2FzWXpLVE5JTkJGa0RrRzhTTEFvT2RKMHg3d1R1dTJWblV4ZGlJQkVLWGVEKzNxMnR6Y01nbWdhd0VlckxxZVpFVEEvMEQwQkxjRW43UmpQNzU0SUFGZ2dxSjUvcUc2amlrQUxnR1FxYnFlaEVab0F0T3JBUDdtTGM1N1czYnpPMGNDd0VSZHluZDJTVVh3ZklBbkF6UUcwcXpVTEVHQVY0Q3dJTkRrWExUeittN1ZxZ3RLRkJJQUZ1bFpWdDB0b0xXTUo1MG5nVEFPc3JhaFVUcUFEOEc4VUEvaUpmOXNkNFhxZ2hLUkJFQU01SmY3aXh5RThjUThqa0ZqQWVTb3JpbE9WUlBUY2laZXByZndVaG4wMXBNQWlMVkgyRlhZVURtU3dlTUFHb2ZrdnRHSUFhd0c4VExTYVZsRlRmNUtsRkpRZFZISlJBSkFzVzd6cTNKY0lUNld3S01ZR0FuQ3FBU2VuUmdFc0JwTUswblRQNEFXZXJkaWFwRmZkVkhKVEFJZ3p2U2IvMTFxVFNobkdLQU5CMmd3d0VNSUdBZ2dWWFZ0aGhDYW1MRU9vQzhCWGdQb0grYzRhdjY3Zm1yL1p0V2xpWjlJQU5oQktUdUxjcXY2TSt1REdkcGdhSHd3ZE9vRDRyNEFpaFJYdHcxTW0wRzhpWUNOWUY2cjZkcVgyK3J5MXN2dWZQeVRBTEM1UHFXYjBnSloyWDEwaDk0WGpFS2RLSStJODZCVEFRaDVET1FSdUN0QUdXMFB5VUhyNVVrWGZ1cVBXQWVnQlVBSVFGdGpES3BuOEM0Q3FzQ29nc1orMXFsU0k2NEtNU3BjdXJZNXBhNTI4K2JTdmsyeC9TOFdadnAvOGZYMm1xNGpvT0VBQUFBQVNVVk9SSzVDWUlJPWBcXHJcXG5sZXQgcGljX3NoYXJlID0gYGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBUUFBQUFFQUNBWUFBQUJjY3FobUFBQUFDWEJJV1hNQUFBZGhBQUFIWVFHVnc3aTJBQUFBR1hSRldIUlRiMlowZDJGeVpRQjNkM2N1YVc1cmMyTmhjR1V1YjNKbm0rNDhHZ0FBSUFCSlJFRlVlSnp0blhtOFhGV1Z0cDkxNm1ZZXlBUmhGQUlKa0FBQklTUWhFMkNyallqZGR0dlFJcUkwa3d5QzhDRWswTjEyV3RSV2xFWUprd0VFSVJFaE9HQ2pnb3BCSlNNSkVFQ0NCTWdBSVFFU0lKRHBEblhXOTBjTnFicjNWTlhlWjZqcDd2ZjNnM3R2N1hldHRWUEpzKzQrNTlUWlIzQnFhT25DeS92Z2VTTm9rUkdvREFlR0lleU82bENRb2FCRGdhRWdQYk1SZzdPaFBZRisyZSszQVcyZ0FPOW1YcEpXZk4wTXVobGtNN0FaMklTbm00Q05wR1VOdnI5YUp0MndvMHAvVktjRUpMV2VnRk5sNmJMemU2QUREMEVZQ3h5T3lvSEFBZG4vaGdkRWhLbGltU0p2ZUJOWURiSUdkRFVpejRFOGg3ei9OeGszdXozRVJKeXFLTmNBNmt5NjhQSSs5R29aUjlxYmdPaFkwQ09BTVdSK1k1dGtDRlBWTW9WUmpUYVFGMUQvT1VTZVJYVUphWmE1RlVOOXlUV0FHa3NYWHpNY0x6MGUwV05BSm9OT0FYcG5SMjJ6aFptQlpZcElOVG9RVnFBc1FHVTVxZlRqTXU0SDYwSWtkSXBKcmdGVVdUcC9aZ3NEZGt4RTlSVGdvOERSQlA0OU5CMzhwZlFxOEFmZ1lRWjMvRTVHeldvTlVjUXBwRndEcUlKMDhWWDcwaUtmUXYxUGdIeUVYU2ZmU2tYWVZnZ3pLOHNVaWNEZnlhNWJnY2RBSGlITi84bWtHOWFIS09wa0lkY0FFcEl1dTJJWTZwMk01NTJKcng4QlBNTkkyMHEyVStzYVV3L3dkL1g3d0NLUWViUzF6NU1wTjcwUlloSk9GZVFhUUl6U1pWY01RMXIrRlovVEVKMENlSFljT1BoTERQa0lmd1llUU5zZmtBazNidzR4S2FjQXVRWVFnM1Q1akdQdy9mTVJPUlBvay84SDdlQ1A1ZzhlYWdYOUZaNDNtM0UzUENZU2FwSk9XYmtHRUZLNjlNbzk4VkpmQkQwWEdGa3dVdlRGTUp0dGRVdC9RRXhqd3Q5NTRHV1F1WWgzcDR6LzM5Y3NpenZoR29DMTlNa1pIMGE0QXZRMG9FZW4wYUl2aGhsdFoyRHBENGhwRHZnTDFZNXlQNTVjTCtPLy80emxSTHExWEFNd2xDNmJQZ1ZrT3VnbktYZlp6c0Vmelc4UGYyZmJBanp2T3h4N3c4UHU4S0N5WEFNb0k1MC9zNFdCMjg5RTVhdGtQbzFYeWxuMHhUQzc3V3dzL1FFeHpRNS9zZjk1NEh0c0h6SlhUcHpaWVptZzI4ZzFnQUNwenZSWXZ2TXpvTjhBRHE3Z0x2cGlXTUYyUnBiK2dKanVCWCtoMXFEOEQrczIzQ21uelV0YkptdDZ1UVpRSUZXRXA2YWZnbkl0Y0tSQlJORVh3eXEyczdMMEI4UjBYL2dMdFJMazI0d2ZQRWRrcG0rWnVHbmxHa0JXdW56R1NTamZBUjFyR0ZIMHhTb21NWDlBaklPL3M1NUJkYnBNblBVN3l3Sk5xVzdmQVBUcEswZVI5cjRKbkdvUlZmVEZLaVl4ZjBDTWc3OU1pUDRCK0lwTW5QV0NmWER6cU5zMkFIMTY1aURTTzJlQVhnYjBzb2dzK21JVms1Zy9JTWJCYnhMVGpuSXJMYTFmazNHenQ0UkkxUERxZGcwZ2M1eC85Ym1vZmd0MG1HVjAwUmVybU1UOEFURU9mdHVZdDFDZHdZU2I3dTV1bHc2N1ZRUFFaVmNlaEhvL1JPVHZRdjlqYy9CSDg5Y2YvSVg2QzU1M25oejdnNytGU042UTZoWU5JSHNQL3NVZzN3VDZPZmdqMUlqaXIyLzRjNVlkcUZ6SHdDSGZrc05tdG9VbzFGQnErZ2FneTJjY2czSW4rY3Q2RHY3UU5hTDRHd1ArWFQ4SVQrUHJ1WExjelUrRktOZ3dhdG9Ha1Brd3o0NUxRSzRqdjUrZWd6OTBqU2orUm9OL2x6cFF2c2xyYjE3YnJCOGlhc29Hb011bWZ3aVZleEdtRmJ4cW15VkVtSVBmZktqdTRTL1VJbExwejh1eHQ3NGFZaEoxTGNOZGFocEh1bXpHcVNEUE9QaGpxaEhGM3h6d0F4eEhPdlcwTHY3eTUwTk1wSzdWTkNzQVhmSFZmclMzL0JBNG85T0liYVlRWVE1Kzg2R0dnNzl6M0kvcDBYYVJqSnU5M1haVzlhaW1hQUM2Zk1aSWxKOERSM1Fhc2MwVUlzekJiejdVNFBEdmlubVd0UGZQTW5uV0t5R0M2MG9OZndpZ1QxNTlNc3BTSFB6eDFZamliMzc0QWNhUzhwL1NKVi8rZElnRWRhV0dYUUdvSWl5ZmNSWHdMYm8wTWdkLzZCcFIvTjBEL3VJWGhPc1l2L3MxalhxSFlVTTJBRjN4MVg2MHRkeUg4S21BVWR0c0ljSWMvT1pEVFF0L29SNmlUNTh6NU1qdmJRdVJ1S1pxdUFhZ3k2N1pDL3ovQTQ0SkdMWE5GaUxNd1c4KzFDM2d6MmtGZUtmSXhGbXZoeWhRTXpWVUE5Q2wwdy9EazE4RCt3ZU0ybVlMRWViZ054L3FWdkRudEI3eFBpa1RacTBJVWFnbWFwaVRnUHJVTlgrSEp3dHc4TWRiSTRyZndkL1p2dythL29zdXZPaWtFTVZxb29ab0FMcHMrdWZ3L2Q4Q3V3V00ybVlMRWViZ054L3F0dkRudmhtQUp3L3Bvb3YrTlVUUnFxdnVHNEF1di9vOGtIdnBzZ2MvT1BnajFJamlkL0JYOEd0UGhMbTY1S0p6UWhTdnF1cTZBZWl5R1JlaGVodUI4M1R3aDY0UnhlL2dOL1duVUc3WHhSZGZGbUlTVlZQZE5nQmRObU02Y0RNTy9uaHJSUEU3K0czOUFucURMcm5vdjBKTXBpcXF5d2FneTY2K0Z2aDJpVkhiYkNIQ0hQem1RdzUrQSt0TVhYenhmMXNXcUlycTdqS2dQam5qM3hHK1VXTFVObHVJTUFlLytaQ0QzemhDRlZHdWtVbTMvbzkxY0lLcXF3YWd5NlpmQW5KamlWSGJiQ0hDSFB6bVF3NSs0d2pkRlNPaVg1V0p0MTF2blNRaDFVMEQwT1V6emtMNUVlVWV2R21lTFVTWWc5OTh5TUZ2SEtGZFlsU1FMOGx4dDl4dW5Td0IxVVVEMEdYVFA1ZTkxT2RPK01WWkk0cmZ3Ui9SSHdoL1RtbEJ6cERqYnJuZk9tbk1xbmtEMENkbm5JRHdLUGw5KzRwR2JiT0ZDSFB3bXc4NStJMGpTc09mVTd2QXlYTGNyWCt3VGg2amF0b0E5S21yeCtEN0MwQUdCWXphWmdzUjV1QTNIM0x3RzBkVWhqK245MFZUVTJUU1RjOVpGNGxKTldzQTJidjZGdUUrMng5dmpTaCtCMzlFdnhYOHVZZzFJaDBUWmVJZGIxb1hpMEUxK1J5QUxwdlpGL3hmNE9DUHQwWVV2NE0vb2o4VS9BQUhxTGI4V2xlYzJjKzZZQXlxZWdOUW5lbWhPMzhLVEFnWXRjMFdJc3pCYno3azREZU9DQWQvVHNmb2pyNXpWR2RXbmNmcXJ3Q1c3NXpwZHZLSnVVWVV2NE0vb2o4eS9ObVg1Tk1zMmZqdjFzVWpxcXJuQUhUNTFhZWcraEJ1RDcvNGFrVHhPL2dqK21PQ2Y1ZDhFZjJVVFB6aGI2d25FbEpWYXdENjlKV2pTSHRMdTU3eGQvQ0hyaEhGNytDUDZJOGQvcHplRmQ4L1ZpYlByc3FXNDFWcEFObUhkaXdHRHU4MFlwc3BSSmlEMzN5b0N1OVZxamYwMnc5NkQ0TlUzMnlhTkxTK0F6dmVnSjF2ZDJmNGMzcFdldmpIVmVQaEl5MUpGd0RJUHJISHdSOVhqU2orV3NDZjZnTzdqNGNoeDJUZ2x6S25udHEyd0x2UHd0dExZTnRheXpsWnppdVVQM0g0QVIzcnQ4dE53Tm1XZ2RaS2ZBV2d5NmQvSHBWN083MXFteVZFbUlQZmZDaWg5OHJyQ1h0L0RJWWZENmxlbGpXQUxYK0RkYitBN2V2am5WZG9mMVhnejM4bklxZkx4TnQrYXBuQVNvazJBRjM2Ny92aHBWY0Fnd3RldGMwU0lzekJiejZVMEh2VmZ3UWM5QVhvTmNReWYrZHlQcnp4ZTFqL204ejNVZWNWMmw5ZCtBRVEzcE4weTFFeStlWXdTeUVqSlhZWlVIV21oNWUrQndkL1BEV2krS3NOLzdBSk1QclM2UEJENW5CaG43K0hReTRzczRwb1F2Z3pMdzFTNmJoWEh6ZzFaWm5NV01sOURtRDVqbXVBRTNhOTRPQVBYU09Ldjlyd0R6OGVEank5L0hGK0dPMTJLQng2U2VaOFFwaDVoZmJYQ1A2Y2hLbDhhUENWbGdtTmxjZ2hnQzZmY1F6S0l2STcrVHI0UTllSTRxODIvSHRNaGdOT0pkRWp5MjJ2d1lzM1FjZDI4M25sMVdEdzcxSzdxRXlRU2JjOWJabThvbUpmQWVqOG1TMm96c2JCSDcxR0ZIOHp3ZytacXdpSGZobGFPcThFS3FsaDRRZm9vYUozNmJMekE3YkdqNmI0RHdFRzdyZ0s1T2pNRHc3KzBEV2krSnNWL3B6NjdaYzVIR2pwYXhqUTBQRG5kQ1J0eEw3RmVLeC9ZN3JrNm9OSjZUTkFId2QvaEJwUi9NME9mNkcydlFZdnpzb2VEcFJTVThDZmk5a2htaDRyays1OE9VU0NRTVcyQWxCRlNPbXRPUGlqMVlqaTcwN3dnOEZLb0tuZ0IraWplTGVyeHZlR3gzY0k4TlRWNXdJZmNmQkhxQkhGMzkzZ3o2bGtFMmc2K0xQZnlna3MvTkpaSVJJRktwYS9QWDE2NWlEU08xZUJEck9NTFBwaUZaT1lQeURHd1Yrc2VvRy9VRVdIQTgwS2YxNXZTVThPbG5HenQ0UklXcVI0VmdBZE8vN0x3UitoUmhTL2d6OGo2eE9EdTlSZzhBUHM0YmNSeTk0QmtmOFdkZG5WaDRML0xJRlA3eTBaVmZURktpWXhmMENNZzc5WTlRcC9vZklyZ1cxRzlnYUVQNmMyU2VrUk11SDJsMElVeUN2NkNrRDgvOFhCSDY1R0ZIKzE0UjkrZlB6dysyMloyNERqVkwvOTROQ0xBejR4MkZVTkREOUFUKzJRNzRZb1VLUklmNXY2NUl5UEl2cDdpNGlpTDFZeGlma0RZaHo4eFVyaU4zL0g5c3duK3JhL0FhUE9oc0ZqNDhzTkZWY0NEUTUvM2lSd2treTYvZEVReFlBSUt3QlZCTkh2V1VRVWZiR0tTY3dmRU9QZ0wxYVM4Rzk3RFRRTnEzNlUyUU1nVHVYUENYVGRiTGRaNE0vKy8xdFJMZ3VHUHdSNGF2cXB3SkZtWmdkL0xQNW1nejgvbmVvMWdXYUNQNnVqV1hUZXAwTVVCVUkyQUgzZzFCVEtURU4zMFJlcm1NVDhBVEVPL21JbEJ2L054ZkRucDlVQnErNU10QWswSWZ5NVY2NE51NlY0dUJYQWlCR2ZBMFpYTmpyNFkvRTNGZnpyU3M5TDA0azNBWE0xQnZ4WkhjYmkxMDhOTVFIN0JxQVBuSnBDeE9BYXBJTS9GbjkzZ1QvL1kzSk5RRVpmYXRnRUdncit6S2d2WDlmNU02MzMrTFJmQVJ3MDRndkFJZVZORHY1WS9OV0dmL2ZqRW9CL0c2eWNaUVovL3VWY0U0ajVtWm45OWtNcTNrcmNlUEFESUJ4TXo5Yy9henNUcXdhZ2lxRHkxUXF1b2krR21XM01JZndCTVE3K1l2VS9JQ0g0YjRMdHI5dlBTOU93Nm83NG0wRC8vWkZETHkzUkJCb1UvcHhUNUNyYkt3SjJLNERsMDA4R3hwU1pRdEVYTXpuNHpZY1NmSy8yKzBlUUdMZWVpd0ovM3BackFqRWZEZ1EyZ2NhR1A2c2pXSGoyeDJ3Q2JBOEJyaWc5NU9DUHhWOEwrSHNQZ3dFSFd1WXZvL1FPZVBHV2FQRG43UjNaSnJBaWxxbmwxWDkvWlBSbDJYTUNUUUUvb0tpa3lqRGFWY1lOUUorYWZpUkZtM3dXRnk3OFlwalJ4aHpDSHhEajRBL1dnRkdXK2N1b1l4dXN2Tkh1bUwra0NxOE9KUE01Z2NybkJFck15VXJWZ1QvNzllTzY0THlqVEtQTVZ3QStWeEY0Z09qZ2o4VmZLL2dCZXZTM2p3bFMva00rTWZ6bTcvTDNsOURuQlBydmp4ejZGY01tVU8vd1orU0xYbTRhYWRRQWRPbVZld0lCMXhrZC9MSDRhd2svQ241N2lMaE9TdS9JWHVwTEFQNzh5MGtlRGx4ZTRSSmhZOEFQSVBCWlhYREJIaWJSWmlzQVQvNk5MbmY4T2ZoajhkY2Fmb0FkRzBQRUZxaGplL3pML3BMRFNSNE9YQkxUMVlGT01WV0VQNnVlU01jWFRUSlViQUNaeXdyUzZTR0ZEdjVZL1BVQVA4QUhMMmQrZzRkUngvYk1YWGRKL3Vidllxdm00VUREd1o4WlZjNDF1U1JZZVFYdzlGVWZBVVoyS2V6Z2orYXZGL2doY3dpdzRZLzJhWkk4NXE5bzcwQmZTdW9TWWE0Sk5DYjhRT2FEUVF2UG1WckpWcmtCcERtdlMyRUhmelIvUGNHZjA0WS9aRllDcHNwZDZndTZzYWNLZnc1VjNkVUUzcW5GT1lIQVdRVithK1FQVTZPQ2ZFL09xK1FwdTBUUUpWY1BKZVd2QjNvNStHUHkxeVA4T2JYMGc1Rm53OEFLbHdWM2JvS1hac09PRFRITUt5VDhoWklXNU9CejQ5OVVaT3NhOU1VYkt6eDNJRCtyd0crTi9NYXlmbTkzU3JybjNqTDExbmRMT2NxdkFMejA2VGo0NC9QWE0vd0E3ZHN5Wi9KWFB3Q3RtN3FPZDJ5RE4zNEh6MTlYUC9CRGdvY0RCMlErTVpqcVhXbFdnZDhhK1kwVjZyM3RUYXE5N0YyQzVWY0FUMDcvRTZMVDdPczcrTTJINmdSK0RmaWh6M0RvdFh2bVNiOXQ3MlUrMmFkK1RQT0tDZjVDSmJVUzJMSVNmWEZXaVQ5NzNjS2YwMlBlcERzL1dzcFpzZ0hvc212MmdvN1hnSlNEUDZLL0VlR1B1MFlrdndIOE9Va0xNdW9jR0dLNFdaV3AxdjhXZmUyaHpyTUsvTGEwYXZMZXBzV1RmV1RpSFc4R3Vjc2NBclNmaG9NL3V0L0JIOUZ2QVQ5a0RnZFdKWEJpY0orVG9OLytoWVVDdnkwenNSQkZZM2x2VTZUMU02VWlTamNBa2RNYy9CSDlEdjZJZmt2NGN6VnlUU0RXY3dLQzdQL1B1MnJROWR1eWM3SldUTyt0Z2lLbmxZb0tiQUM2K0twOThaa1l1WGhzL29BWUIzKzBtR2FGUC85dEIvclM3ZkUyZ1lHSFFQK0NWVUFEd0ovOVpxbytjZmJlUVpiZ0ZZREhQNVFjTXkwZW16OGd4c0VmTGFiWjRjKy9sRzBDTVI0T3lPNlRTNVl6bWxQc01aWGdCOEREODA0SnNnVkRMbnBTcE9LeCtRTmlIUHpSWXJvTC9QbWhtQThIaGh3RmFyTHBUdDNBbjNuSko1RHBMbjhTL2V2TW5temZ2aG1vY0krb2c5OThLT0gzcXRkUUdId0VERGdJK3V3RlBRZUIxeU9UcDMwcnRMNE5XOWZDbGhkaHk5L0lYTTdxQnZBWFNscVFnOCtMNVJLaFB2TTEyQkY0VXQxdVRwRml6T0hQNmdNWjlQNHdPV3hlVytHTFhYY1IzYjUxR25nT2ZsdC9MZUFmZEJqczlaRU0rSUZYZEFWNkRNajgxLzlBMlBORWFQOEEzbm9DTmo1dStBbTNFUE1LNVU4UWZzZ2VEc3hHUnAyYitTMGVSYjEzTDlNQTZoSitRQWZ3em02VGdNY0xYdzA0QlBBK0VhcDRiUDZBR0FkL3NYcnZubmtBNXNIbnc0Q1JXRzNrMldNQTdQTUpPUEpyc01la2VPY1YycDh3L0RsLy9oTGhNNWF4bmRSanQ1am1GQ1ltRlB3QStKNTJZYnRyQXhBcGMvenY0RGNmU3VpOUduSVVISFlsRER6WU1uOG50ZlNERWFmRHFIUEE2eGw5WHFIOVZZSS8vMjIyQ2JSdXRzeFJvQjREWTVoVG1Kanc4QU1JRlJxQUxyNW1PS29sZHYxMThKc1BKZlJlRFo4S0k4K0NWQy9ML0dVMDVDZ28rY0NNSm9NL3B6NTdabFpDWWRWbEI2WDZoeitydzNYQm1VVTdCUld2QUZMdFUwSlVpY0VmRU9QZ0w5YWVKOEQrLzBLcysvYm4xSDkvR0gwSnRCU2UrbWxTK1B2dWk0eTVyTUtxcDRMYXQwU1lVNWlZV09BSEVHZzVydkNGVG9jQTNtVExLcmF6TW90eDhCZHJ6eFBnUS85a21kdFNmZmVCMFYvT05vRW1oNzhsNGlhb2Jia0cwRkR3QStDTEZESGVxUUZvcHdiZzREY2ZhbUQ0Y3lwcUFxYnFadkNqc0gxOWlEbVZtRmNZZjBqNEFVUUpiZ0M2OFBJK1FNSDFFUWUvK1ZBVHdKOVQzMzBDRGdkS3FidkJEMnhkQngxYlF3VFdIdjZzanRINVorVTNPTmkxQW1qcGVTelEweUtSYmVIeU1RNytZdFVDL3B5TW1rQTNoQi9RelUrR2lZckhIeDErZ0Y3MFRoMlQrNkh3RUdDOFpTTGJ3cVZqSFB6RnFpWDhPWlZ0QXQwVGZ2eFdlR3VoWlZCZHdaK1JuNTZRKzNaWEF4RC9TQWUvelZBVHc1OVRZQlBvcHZCRFp1ZGtxK1YvSGNLUDRvdmtQdzlkdUFLdy9KQzBneitXR29XcUovaHpLbW9DM1JqK3RuZlE5Yit4Q0toUCtBRkVPU0wzaWdlZ3k4N3ZBUnhxbXloTWNmTVVEdjY2a2RXSndWMXFHdmpWUjFmZENlblc4UE1LNDA4QS9xd08wL2t6V3lDL0FoaDhLUGtUZ0ZhSndoUjM4SGRXUGNPZlU5OTlzcDhZTkFPcmFlQUhkTTM5OFA2cThQTUs0MDhPZm9CZXBOWWVETGtHNEt2aDh0L0JIMHVOUWlVQmY4YzJlUG51NkRlOWRGWitKVkQrZ1JsTkJmL2FuOEhHK2VIbkZjYWZMUHdaZVpuRGdFd0Q4UHpEUWlleWlYSHdGeXNSK0xkbjl2YmZ2QnhldmdzMmhibHNWVVo5OTRYUlh5a0pXbFBCdis2WDhNYWo0ZWNWeGw4TitBRmZPQnh5RFVEbHdMQ0pqR01jL01WS0RQNmJkajJ1UzMxNGRVNENUU0Q0Y0tEcDREYys2ZGRZOEdlSEQ0UmRWd0ZHeEZjNElNYkJYNnhxd0orZmtnK3YzcHQ0RTNEd0cyY1BrU2IrOTFhRUF5Qy9Bc2o4RUwxd1FJeUR2MWpWaEI4QVRid0phQ3JDUXpURCtoMzhFZjA2QWtCMHhWZjcwU1lmME9VK1V3ZC9MRFVLVlF2NEN5VWVISGdtRERzMjNqbHNmeDE5NFViREQ4azQrTTNUSkxxcVVtblR2aDZ0cVFOdzhDZFRvMUMxaGg4U1hBbnNpNHd4dVVUbzREZFBrL1FoRlVJUGIzOFA4ZmVQbUtocmpJTy9XUFVBZjM2b1ZrM0F3VytlSm5INE16R2VQOEpEMkx2b3hUQ0pyT2JpNEkrc3NQRG5MZFZ1QWc1Kzh6UlZnaDlBWlM4UEdCWTVrZkZjSFB5UkZSWCt2TldIVisrQlRVdGpteG9RMEFRYy9PWnBxZ2cvZ09vd0R4anE0SStwUnFIcUdmNmNQNzhTU0tBSkhISUJlQ243T1FYbGN2REg0TzhhNHd0RFBWU0hSazNrNE8ra3BEN2V1L0xHK09EUGY1dHRBcHVYUlpsZFZ3MDRFTm5uaytIbWxKT0RQeVovcVJnZDZvRllOZ0FIZjFrbEJ2K3M3RjUwblJYRG4wTjllT1hIOFRlQnZVNnNlTjlBeVRrNStHUHlsNDRSOVlaNm9NTkNKM0x3RjZzUjRjOFBKZEFFdkY0d3FNUmpKc3JOeWNFZms3OUNqT2d3RDJGUXFFUU8vbUlsZVdOUDB2RG5MZGttRU9NNUFlbTdqOTJjSFB3eCtRMWlWQWUzb05LN2NuSUhmMWsxOG0vK0x0YnNPUUU4R0RiT3NrNkFVbjNNNStUZ2o4bHZFS09BU0M4UHRNSkdJQTcrc21vbStITVJmaHA5NVc3WUZNUGhRUHNIUVJXNnZ1VGdqOGx2RUtQNXI3MDh0TnhPUUE3K3NtcUdaWC9uaU54ZGZlcG5tMEMwd3dIZCttcmxPVG40WS9JYnhCUVA5MnhCS1BHa1NRZC9XVFhqYi83T3QvU3FqNzV5RHhMMmNLRHRQWGovcGZKemN2REg1RGVJNlRLc3ZWb0kzQXZRd1Y5V3RZSy85KzR3L0hnWU5CcDZEc204MXJvWnRxeUVOLzhNTzk4dTlsdW81UDM4MlpXQWdIVVQwTmQrQlg1SDZUa2x1WTFYays3a0V6cW1LL3dBUVEzQXdWOVdOWUZmWU4rVFllKy96OXpTVzZnK2UyYitHejROMWo5cThWdXZvRUtselR6eVRjQ0hZZVBOa3I3MUJMeTlLSmVnNjdpRFB5YS9RVXd3L0FDOU9qOGMxSEl1RHY3SU12bk5QK0owMk9jVFhlRXZsS1F5VFdMa0Y4djdPbGN3M2NsSGZmVGxINk92UHd5YUx1TkxvNi85SC9ycVQzSXZkUFU0K0dQeUc4U1VoaCtBRnFBTjZPUGdyNkJhd2IvSHBNeC9waHA2TENDWjYvbnFsN1hhYitQbHcrdS9SamN0UllaUGc5M0dRTy9zNThoMmJvSXRMNkFiL3dTdG00ci9ESVZ5OE1ma040aXBBRC9RbW0wQTJxZTh6N0p3TERITkRyL0IyWDZ2Qit4cjgzbjZySVptajlYTE5JRkllL2p0ZkRzREhEOHo4K2VVR1B3UHdodS9NM1hiWmcrUnBpSGdCMmoxVUcydDdMTXl4QkRUSGVBM3VLdHY0Q0hRWTdkd05ZYU9nNUgvRm5nNDBIUWJlRHI0S3d5WDlMZDZDRzNtYzNId1I1Yk5MYjM5eTJ6V2JLSWhSOE5CeGVjRW1ncit0USs2UzMwVmg4djYyenpJTmdBSGY3RnFEVDlBanhpQUdUb3Uzd1NhRG43M203L0NjQVcvWkZZQU94MzhuVlFQOEFPa2Q4UlRlK2c0T0NqNGNLQzA2aGorZGI5dzhGY2NOcWlodEhyNCttNmt3ckhFT1BnREZYaUNNS1NHSG8wY2RKWmhFNmhqK05jK0NPdC9HMzVlWWZ6TkNIOUc3M2dvbTBxUE8vZ2pLOG8yWHUvOUZmeTI4aDRiRFJ0bjBBVHFISDczbTcvQ3NFME4zZVNCYkE1Vk9KWVlCMy9GK0kyUHh6dW5zazNBd1crZXB0SGhCMVUyZTNoQkt3QUhmMlRGdFlIbjY3K0dEMTZPYlZwQXBnbU1QTHRURTZoaitOMHh2OEZ3aUJxaW16eDhPcTBBSFB5UkZlZnV2ZG9CTC8wUXRxMkxaV3A1RFQyNm9BblVPZnp1bUwvQ2NMZ2Fucks1MHlHQWd6K3k0dDY2TzU5elZzSk53SEpPaFhMd3grUTNpSWtKZmdBOE5udDQvb2JJaWVMd08vakwreE50QXVlRXZ6cmc0SS9KYnhBVEovd0FmbXFqUjFyV09QaGpVSkx3RjlXb1ZSTnc4RWV1RVNVbWJ2Z0JwR08xaCsrdnRzL200QzlTTmVBdnFsWHRKdURnajF3alNrd1M4SVBTM3JMV2swazM3QURlRG9nd1RSVGU3K0FQNTY5cUUzRHdSNjRSSlNZWitBRTJ5SWwzNzh6OFRhdXVqcEFvbk4vQkg4M2ZzUjFkZVNOc1cydFpwNEtLbW9DRFAzS05LREhKd1EvS0dvQk1BeEJaRXpwUkdMK0RQNktmekkwOUhkdlJsYk1TYWdJQlZ3Y2MvREg1RFdLU2hCOVF5ZnpTejYwQVhnbWJ5TnJ2NEkvb3AvaXV2c1Nhd0RIRmh3TU8vcGo4QmpFSnc1K1J2QXFaTGNIQTg1Nm41SzJpalF6L2lmQ2hUMXZtcnFCNjI3b2JzazNnWm1UTXBkQjNYK3VjSlRYMEdFUThkUE55Wk1UcGhnLzZOSmV1blFkdi9ON1ViWnM5UkpydUFqOTRxczlCYmdXQVBCYzJrYkcvMnZBUE94WSs5SStXdVN1b1hoN2FFYVNPcmVnTDM0Ly94T0NRRHlPanpvMGYvblcvY1BCWEhFNEdmZ0JTcVlJR3NMWC9pMER4MW1DTkRQK0FBMkhFNXlDem0zMDg2dGdHSzIrc2oyVi9LZVZQRE1iY0JHS1dXL2FiRENjSVArems5VzJySU5zQTVNU1pIU0Fyd3hldkkvaTlubkRnbVpZZmI2MmdlbHoybDFMSGRuVGxEK3EyQ1RqNFRZWVRoUi9ncjNMYXZEVGtEd0VBMFdmREZhOGorQUgyL2pqMEdtS1p2NHdhQ2Y1Y2pUcHRBZzUraytIRTRVZVZaM1BmRit3V3lYTU5EMzlMMzh3VGN1SlNQUi96VjZwUlowM0F3Vzh5bkR6OG9IZ2V6K2QrS3R3dWRrbHNoV3NCUDJRZVc1VXE4YXhUV3pYQ01YK2xHblhTQkJ6OEpzUFZnUjhBOFJmblh0blZBSVowTEtYTGljQVFoV3NGUDJTMndZNURqYmpzTDZVYU53RmQ5M01IZjhYaEtzSVByYlMyUEpYN0lkOEFaTlNzVnVEcFNJVnJDWCtxTi9UYnp6NnVzeHA1MlY5S05Xb0NHZmdmTVhYYlpnK1JwdHZERC9Da25IajN6dHdQblUrVkx3aGR1SmJ3bzlCM3IraG4vcHRoMlY5S0hkdlJsUWw4VHFDRUhQd213MVdISHhVcFl0enI1QzNUQU9vWWZnai9DSzJjbXZFM2YyZC9sWnFBZzk5a3VQcndBM2krbG1rQUhha1NEYURPNFFmb01TQkVmRlorVy9QKzV1L3NUK291d213ZFhmMVRCMy9GNGRyQUR5amFzcmp3aGFJR0lKTy85eGJ3VitQQzlRSS9aRDRBRkZidFcySEh4c28xS3FyTzRjK3BZeXY2d3YvQ084OVk1aXFqOUU3MHBkbXc4WS9oNXhYRzcrQzM4VDhyMCs0cTJ2c2o0S0JaQ2s3Wk5najhBTzN2aDhpVFZhOGhjUEQ1NExXVXIyRTdwMG9SdFlBL3AzUXIrdElQMGRWek00Yy9VYlRsUmZUWmI4RG01ZEhuWmVOMzhGdjVGYnBjamdrNmEvWkl4Y0wxQmo5RWF3QUFnOGJBcVBPeVRhREo0Uy8wdlBrWDlKbXZaWjZ5MjdIVnJzVDdxOUFYWjJWV0V6dmZpbkZlQm40SHY3WGY4K2x5Yk5iU3hkVnY0Ri9ZOXQ0SFFQQkJkVDNDRDlCYTRnRkhOaG8wQmtiK0c2eTZFelFkZlU2bEl1b0MvZ0oxYkVWZmV3aGVmeGgyRzQzc05nYjZId0M5ZDgrZVc1SE1lWksyZDJIN0J2VDlWZkR1TTdEVFlpZTVNUE55OE1mcGY1KytmUloyZmpId2RqbGRldGxEd0QrWTE2aUROeDNncUd1aFo4U3JBUUR2UG12WUJKb0EvczR4UnVFMS9BZnQ0QS9yLzdrMzVkN1BkSDZ4MUlYenJxZHg2eDErSlFOdUhCbzhGZzcrVXFkekFpSG0xRG5Dd1IvTjcrQVA3UmNKWUpwU0RhQkRmZ1g0bFd2VXdadGVhSGw3Y1ZtYmxRYU5nWkZuZzZUQ3phbHpoSU0vbXQvQkg4WHZrOWFIZ3dZQ0c0Qk11bUU5eXNMeU5lcmdUZTlzMmJZT3Ryd1lvazRKRFI0TG84N3AxQVFjL0tGcVJQRTcrS1A1bFQvSnREa2Jnb2JLZlhiMmdZYUNQL2ZEMnArRCtrSHVjQ282SEhEd2g2b1J4ZS9naitaWEVPR0JVc09sRzREMG1BY0VuQVdyZ3plOWk2WGdoeDBiNEkxSFE5UXNvNkpMaE9aeThFZjBPL2lqK1RQV05NTFBTMWxLTmdBWi85Mk5DSDhKWFR5VTN6Q21GUHc1clg4RXRxenMrbm9VRFRvTVJwNERZdFlFYWdhL2VKbExlRU9PZ3NGSFFKKzlnbU1jL05GaUdnTitRUDhvays4dCtTR05TdithSHdCT3NDNGV5bThZVXdsK3lCd0NyTG9URHYxeUJvYTRsRHNuc09wTzBJN1NVNndGL0MxOWtiMC9EbnRNN2JxRGIrc205STFINGEwbk11K05nejlhVE9QQWo0amNYODVhL3Y1WmJYOEFkR2Rkdk9sZExCWDg2Vlo0OFJiWXVpYkVYTW9vZjJJd3VIZldCUDYrZXlOSFhBTjdueFM4ZlhldlljaUlNNURSWDRHVXlmYmVEbjd6NGZxRkg5aUJwa3ZXeUtuaEFBQU9iMGxFUVZRdS82RkNBNUFKTjI5RytLVjU5YUlaeEJ0akEzOU82UjNKTllFdTl3N1VDUDUrK3lGanJvQmV3eXFIRHp3VU9mVGkyRC9mNE9DUHNVWVVmekg4S015VHFUOTV0MXhJNVIwMFZHNFBNUU1MSlFSL1R1a2RtZnY4NDI0Q25jNEoxQXorMFpmWlBiUmp3RUd3MThkaW1sT1lHQWQvSW43dDhnMmVjRWVsc01vTllQejM1d09yTEdaZ29ZVGh6OFVrMVFTeWh3TkswSWVGS3N3cHFqOE0vRm5KM2g4UFdBVTQrTTJINng5KzRDVW16M21pVW1qRkJpQ0NJdnpJY0FZV3FoTDhPU1hZQk9UZ2M0MnZEdFFhZmlDemZmckFneVBNS1V5TWd6OFJmekQ4aUhDN1NPVkVacHZvK2R3RnRGZVlnWVdxREg5TytTYXdPa1MrTWhvOEZqbWs2emtCb3puWitxUENuMVArOHFDRDMzeTRNZUFIMmhDNXh5U0ZVUU9RaVQ5NEV5WGdja0lEd1o5VFVpY0dCeDJlZVlobXlaVkFIY0VQMlIyVUhQem13dzBEUHlyNmszTFgvZ3RsczQzdWQ0dXJOU0Q4T1ZYOWNLRE80QWRvM3hJaXlNRWZXNDBvL2pMd0EzZ3EzemROWmR3QVpPSVBua1gxc1hLRnk2dE80TThwdlFOZXZLa0tod014L0VQb3UyL21HbjZjaitoKzMrQzhicEVjL0xIVmlPS3ZBRC93aUV5ZHM4STBuZDFHK2g3WE53WDhPWDlpbHdoemh3TXhYQjNvdHg4eTVuSm82Ui9MMUlBTS9NWmJlSUdEUDhZYVVmeVY0VWRVdjJkVDNhb0J5UGdiSHdHTXUwdEdkUXAvVHZtVndKb1FkY3NvanFzRGNTLzdBVFNOcm4zUUpzQzJRSWcwRG41emE5bVlaNWs2MTNSYlpzQjJCWkRSRGViV09vYy9wOFNhd0pHR1RhQks4QU82K2o2THd4NEhmMncxb3ZqTjRFZEV2Mk55NmE5UTlnMWc3WVk1d044cUd4c0UvcHdTT3lkd0pISkl1ZTNGcW5UTUQ1a245cno1WjFPM2JmWVFhUno4NXRhS01TL3hSbHZaRzMrQ1pOMEE1TFI1YVVTdkxlOXFNUGh6U3VwekFvTU9Sd0wzR0N3Qi81akw0ajNtQi9lNExxUGhPdmwzMk1WYU9VYVEvNURUNXBsdVpaMVh1S2RwSGp2MFBxREVEcHdOQ245T1ZXc0NEdjdJTmFMRU5CSDh3UE5NT2VobmxwTUJRallBa1prK0dyUUthSEQ0Y3hFZDI5R1ZzeEpzQWdGWEJ4ejhNZmtOWXBvTGZrUzkveENaR1dvZnZNRG5BcGhJRldIcHBVOEJSMlZmTVFncStZTnAxWVQ5Rk4vVmwrcU5qTDRFK28rd3psTlc3ejJQdm5RYitObE5SUno4TWZrTllwb01mcERsTXVYZVkyMVAvdVVVN2hDQS9FMUNYODM4MUlUd1ErYUJsNG10QkM3SUhBNDQrR1B5RzhRMEhmd2dvbGVIaFI4aXJBQnkwaVdYL0FyNFZIbFR5UjlNcXlUc0Q0Qy9VS2srMlpYQUFkWjV5NnAxRS9RWUdPM0p4bDJrNkpwNXNPRVB4bjdiL1BacEhQem1WcHNhK25OdjZ0d3VUL3V4VWVnVlFGNHBMZ2RhUzQ0M092d0E2UjNveWh2alh3bjBHaFl6L0tEcmZ1SGdyemhjWi84T1E4RlBtL2c2d3lZZ1NKRWJnSXliOVFxaXN3SUhtd0grbkpJNkhJaFJidGx2TWx4bi93N0R3WStxWGkvSC84VDJobzR1aXI0Q0FHanIrM1ZnWTlGcnpRUi9Ua210QkNKTDBUWDNPL2dyRHRmWnY4T1E4SU8rNmZYazI1WkJnWXFsQWNpVTZ6NUE5WnI4QzgwSWY2NUdlbWVkTlFGRjF6d0FHeDR6OXR2bXQwL2o0RGUzMnRjUTlFcVpPUGQ5eThCQVJUNEptSk1xd3BKTGZnZDh0T0RWTUprUzlrZUF2MUNwM3Nqb1MrTy9SR2dsQjcvWmNKMzlPNHdBUHpCZnBzejl1eWhuL2dzVnp5RUF1Y3VDZWo2d0xmTktuYjNwdVlpNGR1K3QrVXJBd1c4MlhHZi9EcVBCdjEyOGp2UGlnaDlpYkFBQU11R20xU2pYMXQyYm5vdUllK3Z1bWpVQkI3L1pjSjM5TzR3R1B3SmZrOG4zdjJJWlhGYXhOZ0FBZGc2OUhsaHVGOVNBOE9kVTlTYmc0RGNiYmk3NGdXZm9XUDhEeStDS2l1MGNRS0YwMGNWSEk3SVk2R0hndHMxdVA1OXFQTFFqMVR0ekMyK2k1d1FjL0diRFRRZC9teURqYmJiNk1sWDhLd0JBanJ2NUtVUm1WblkyQ2Z4UWhaV0FnOTlzdU9uZ1I1VC9UQUorU0tnQkFEQis2TGRCNTVjMk5CSDhPYVYzb0N1L0QrKzlZSm1uVXBrMCt2TGREdjZLdzgwSFA4S2YyZGgydldVQ1l5VnlDSkNUTHI1a1g5QVZ3SkJPSTdhWjdHdlg0bGw5T1ltSDdQdEoyUHNUSUJGN2JPc21kTlVkOE1HcjBlZGw0M2Z3Ui9QSEFUKzhKNUk2VXFiY3M4NHlpYkVTYlFBQXV2aVNmd0dkVi9DS2JRYjdtcldFdjFCOTkwWDIvd3pzTnRveVA1RGVDUnNlUTlmL0Z2eTJlT2RWeWUvZ2orYVBCMzVFK0t4TW1XdTl6WmVORW04QUFMcm95M2NqZkxGYndWK29maDlDOXBnRVF6NE1QWFlyazlxSGJXdlJUVXZoN1VYUXNUM0JlVG40RS9ISEJML0M3YW1wYzgrM1RHS3Q2alNBK1dmMXBrKy9CY0RSRmxIMmRlb1Ivc0lZQlhvUGg3NTdRNjhodTdZSGE5K2F1VFY0NnpwSTIwQWZkbDRPL2tUOE1jRVBQQ09wdGtreWFkNE95MFRXcWtvREFOQUZGKzlQaXVYQVVBTzNmZjVHZ0QvcEdsSDhEdjVvL3ZqZ2YwZDhiNXdjZjI5U2w1T0tsTnhWZ0U2U3lUZXZCVTRIS3V4YzZ1QVBWU09LMzhFZnpSOGYvTDRnWjFRTGZxaGlBd0NRaVRmL3Z2eVc0ZzcrVURXaStCMzgwZnp4d1k4SS95RlQ1NWplMHgyTHF0b0FBQmkveDdYQVExMEhIUHloYWtUeE8vaWorV09FSDlHZk1YbHVMUGY0MjZqcURVQmtwby9mODNTUXhidGVkZkNIcWhIRjcrQ1A1bzhUZm5TWmJFdDlNYzY3L0V4VnRaT0FuYVYvdm1SM2V2bUxVRDNJT3RiQkg4M3Y0SS9tanhWK1Zrc1AvemlaZU4rYmxzbGlVYzBhQUlBdXVtZzB3Z0pnc0hHTWd6K2EzOEVmelI4di9POUl5cDhzays1NzBUSlpiS3IrT1lBQ3lYRzNyTVRYZjBMSzdDcGNJQWQvUkwrRFA1by9YdmpiUlRtdGx2QkRqUnNBZ0V5NjlVLzRmSkVLbHdjZC9CSDlEdjVvL25qaFQ0dnlPWmsyMS9UdXJzUlU4d1lBSU1mZGNqK2k1d0NCenpkejhFZjBPL2lqK2VPRlgwWGxBcGsyOTBITFpJbW9MaG9BZ0V5NDljZWdsM1orM2NFZjBlL2dqK2FQRjM1RTlRcVpOdWNPeTJTSnFXNGFBSUJNdlBWbWhQK1grOW5CSDlIdjRJL21qeHQrNFdxWjlwTWJMSk1scXJwcUFBQXk0WlliUUw3dTRJL29kL0JIODhjTXZ5TC9MVk9xLzBHZlNxcnBaY0J5MGtVWFRsZE1uMzdpNERkUDQrQTN0OGExN09lL1pOcmNyMXNtcTRycXRnRUE2S0lMTDFDNG1iSXJGUWUvZVJvSHY3azFwaE4reU9VeWRVN3N1L25HcGJwdUFBQzY2SUl6RkxrYmFBa1l0YzBXWmdhVzRRNSs4K0dtaGo4dHlIa3lkYzVkbHNtcXFycHZBQUM2NktKL1ZmUWVvT0JaMmc1Kzh6UU9mbk5ySERXa1ZWUS9YeStYK3NxcElSb0FnQzY2WUxJaXZ3U0dPZmh0MGpqNHphMngxSGhYa0grV3FYTWV0MHhXRXpWTUF3RFFoUmVOVlBGL0E0eXlpQXBUeVRMY3dXOCszTlR3cjVhVWYzS3RQOTVybzRacUFBQzY3UHhoMnU3OUVwaHM0QTVUd1RMY3dXOCszTlR3TDVVZS9qL1U2cTYrc0txN3p3RlVrb3lidlVsNitCOEhmbEhlNmVDUFhDTktUSGVDWC9SbmttbzdvZEhnaHdaY0FlU2tpckQ0d3FzVS9TYVE2alFhSnFObHVJUGZmTGhwNFZkRnJ2T21qTHhHWkdiZ2ZTejFyb1p0QURucDRvdE9WUFYvQ3V5UmZTVk1sc0J2amZ4aGFrVHhPL2lqK2VPQ1g5a3M2Qmt5N1NlUFdpYXFLelY4QXdEUXBSZnRwMm4vWjZESGhvZ08vTmJJSDZaR0ZMK0RQNW8vTHZoRm5wYTBmS2FhdS9jbXBZWTdCeEFrR1gvTGE2SjlqbGU0eXk3U3dSOWJURGVCWCtGMmFXK1oxQXp3UTVPc0FBcWxpeS80aktyT3Bzc0RTYnM0QTc4MThwdlBKaDYvZ3orYVB3NzRoUzJpY3FGTW5YT2ZaWks2VnRNMUFNZ2RFcVR2QVU0bzRRajh0a3pHTUxPSXgrL2dqK2FQNXpmL2ZPbmdDM0xpM05jdGs5UzltcklCUVBZcXdaSXZYYXJLZFpUNkNMR0RQMXBNODhQZm9jZzN2U2tqdjk2b1ova3JxV2tiUUU2NjhJSVBxK2dkd05FTy9oaGptaDUrWFNaNDU4clVPU3NzRXpTVW11SWtZRG5KcE51ZWxwMTdUUkR4THdPMkFnNytxREhORGY4T1FXZklodmFKelE0L2RJTVZRS0gweVFzUDFMYU8yeEQ1V0FWbm1PengrQjM4MGZ5UjRKYy9DZDc1TXZXZWx5eURHMWJkcWdGQTl0ekF3aStkcGFML0F3d1BjSVRKR28vZndSL05IeDcrallKTWw2bHo3ckVNYkhoMXV3YVFrNjQ0czUrL3RjK1ZJa3dIZW1kZkRaTXBIcitEUDVvL0hQenRpdDdxOWVBL1plTGM5MjBDbTBYZHRnSGtwQXZQR2Fta3ZnVjZhb2pvZVB3Ty9taitVUERMdytLMVhTYVQ3My9GSXFqcDFPMGJRRTY2Nkx5UHF2SWQ0R2pEQ05zS0lkSTQrTTJ0eGpITHhKZnBjdnk5ZjdTYlUzUEtOWUJPeWpRQ3VRNzB3MlZjdGxsRHBISHdtMXROWXZTdmd2ZmZUTG4zd1ZvOGhydGU1UnBBZ0RLM0dwOXppcXIzRFdCc3AxSGJiRll2eDFvalNrenp3TDlTNE50c2FKMHJwODByKy96SjdpalhBTXBJSHpnMXhUNjduYTRpVndKakhmd3gxb2ppTjRQL0dSSDlMcE5IL2JSWlA4VVhoMXdETUpRdVBuK0srdjUwNEpNWXZXOE8va1Q4bGVGZklNaDNtSEx2dzI2cFgxbXVBVmhLRjU4NzF2ZTVRdUN6Rk4xalVPU3lldGxnTUFhL1FVemp3dCtteW4yZTZ2VnkvTnpuTENmUXJlVWFRRWpwWHk0Y1RLcjlWSVZMZ01NTFJrb0VsTTFtVzkzU2J4RFRtUEMvSlBBalBMbExKdC83bG1WeEoxd0RpRVc2K054amZKL3pCVDBENk5mVlVEYmF0cHFsM3lDbXNlQnZCWDRsZUxPWmNzOWpicGtmVGE0QnhLaGRxd0k5amN4ZUJDa0hmMFIveHBvR2Y3Nm8zRSs2NVVFNThlNzNMQXM2bFpCckFBbEpsM3hoS09tV1Q2cHlLc2hKZEhtMm9ZTy9nbnhVRnduTW82UGxmam54N28yV2had001QnBBRmFSUG5MMDNubmVLK3B5RTZFZEJCMWhtQ0ZQVmNyZ3U0SDhmK0lNSWo1RFdoMlhhbkEwaEp1VmtJZGNBcWl4ZGRuNFBkblpNOFVWT0V0V1RrTTRmTk9vU0VhYUs1WEJONFYraElvOTR2djhJZmZvdWtIR3oyME5NeGlta1hBT29zWFR4R1FQUlh1TjlueW1pVEVhWVFwSjNKOVlXL2c1Z2hTb0xQSGdDYlhsY3B0MzFkb2dKT01VazF3RHFURHIvck43MDhNWWgvbmhmWkt3b1J3Q0hBYjBNb2kySEU0Vi9KeUl2cVByUGVpTFBrWllsYkIyNFRFNmUxUnFpcUZOQ2NnMmdBYVR6WjdiUSsvVlJwTk5qZmVGd2xBTkZPQUIwQk1oZVdWZUZKQlZmTUpsSjBJc2JVRmFyNkdxUVZ6M2tlVkwrYyt4OGJaV2MrSGhIaUNKT1ZaUnJBQTB1blg5V2IzcHhBTDQvQWtudGlURFVWeDJHTUV5VW9jQlFWQWVEOU0xR0RDVHpMTVVlUVA5c21xMUFPNUFtY3lJT1lEdndMc0ptVlRhRHZ1MGhteEYvRTM1cUl5blcwTW9hT2ZIdW5kWDg4enJGcS84UFV2WFNmc0tPTjVFQUFBQUFTVVZPUks1Q1lJST1gXFxyXFxuXFxyXFxubGV0IHBpY19yZWN5Y2xlID0gYGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBUUFBQUFFQUNBWUFBQUJjY3FobUFBQUFCSE5DU1ZRSUNBZ0lmQWhraUFBQUFBbHdTRmx6QUFBSFlnQUFCMklCT0hxWjJ3QUFBQmwwUlZoMFUyOW1kSGRoY21VQWQzZDNMbWx1YTNOallYQmxMbTl5WjV2dVBCb0FBQnJNU1VSQlZIaWM3WjE1bkYxRmxjZS8yUk1nSkdHSEdBejdKbXRZd2o0aU93UmNHUjBHeGdYRlVjRUJVVnlId1pGUlJOeUZRWEJCeDFIQWZRQjFGQVJsQ1lzRVl0Z1NoR1luWVUwbkpKQjB1dWVQODk3UXR0M3BkMitkcXJyM3ZkLzM4emtmOHVIVGRldlVmVlYxYXprTENDR0VFRUlJSVlRUVFnZ2hoQkJDQ0NHRUVLSmRHSkZiQVJITVNHQXFNTDN4M3cwYnNqR3dEckIyUXlZRGt4cC9UK1AvaldyOCswVmdSZVBmTHdCOWpmLzNiRU9lN3ZmdlJVQVg4QkR3Wk9OdlJVM1JCRkFmSmdNN05HUjdZQnRnYzJ6Z2o4MmswOHZZWk5BRi9BV1kyNUI1d0pKTU9va0NhQUtvSnBPQUdjQ2V3QjRObVpaVm8yTDBZU3VFdWNBYzRFYmdGbUJwVHFYRTM2SUpvQnFzQit3UEhOaVFuWGhscWQ0dTlHQVR3bzNBVGNEdmdZVlpOUkthQURJeEN2dTZId2tjQWV4RzUvMFdmY0Fkd0srQlh3R3pnVlZaTlJJaUl1T0JZNEZMc1VPMVBzbGZ5WFBBWmNCeHdCb2wzN0VRbFdJYzhFYmdoMEEzK1FkWlhXUXA4S1BHdTV0UStLMExrWm1ad0FYWXRWbnV3VlIzNlFhK0MreFg1QWNRSWpWVGdOT0FlOGsvYU5wVjdtbTg0L1ZhL0UyRWlNNGV3SGVBWmVRZklKMGlMMkhicXIxYStIMkVjR2NrTUF2NExma0hRNmZMN2NDSnZHTFZLRVEweGdJbkFmZVJ2K05ML2xybUErL0ZibHVFY0dVTTlwVjVnUHdkWGJKNldRaWNpU1lDNGNCbzRHVGdZZkozYkVreDZRTGUxZmdOaFNqTUc5QlN2eDFrQWZCV09zL1NVcFJrSm1hdm5ydmpTbnpsQm1CM2hCaUNkWUd2WVBib3VUdXJKSTcwQXBjRG15SkVnOUdZY1VrekVJYWsvYVViK0JBNkgraDRkZ0p1STMrSGxPU1JPOUcyb0NNWkQvd2JGdEVtZHllVTVKV1YyTlp2VFVSSE1CTzRuL3dkVDFJdG1RL3NnMmhiUm1NR0lpdkkzOWtrMVpRZTRIT1k0WmRvSTdiRmJNWnpkekJKUGVSbUxPQ3FhQU5Pd0FKTTVPNVVrbnBKTjJiK0xXcktlT3h3SjNkSGt0UmJ2b2VpRXRXT0xiRUl0TGs3ajZROTVGWmtQRlFiRHNNQ1RPYnVOSkwya21lQVF4R1Y1c1BZU1c3dXppSnBUK2tCVGtkVWpqRllXSzdjSFVUU0dYSUJpa0JVR2RZQ3JpWi9wNUIwbHZ3R1M3QmFhK3J1SXowTnVBcllNYmNpb2lPWkF4d05QSkZia2JMVWVRTFlCZ3ZLV2Fla21hTDllQVE0R0FzOFVqdnFtb0J5TitBUGFQQ0wvR3dLL0JIekxLMGRkWndBOWdldUJUYklyWWdRRFRiRSt1U00zSW9VcFc0VHdIN1lnZCtrM0lvSU1ZQjFnZXVBMTJiV294QjFPZ000QUJ2ODh0c1dWZVpGekJqdHh0eUt0RUpkSm9COXNSenlFM01ySWtRTGRBT3Z3enhRSzAwZEpvQ2RzYVhWNU14NkNGR0VaN0R0d0x6Y2lxeU9xazhBVzJFbnJCdm1Wa1NJRWl3Q0RzVHlTMVNTS2s4QTA3Qlk3dkxDRW5YbVlXQnY0TW5jaWd4R1ZXOEJKbU9tbGhyOG91NjhHcmdTTTFtdkhGV2NBTVlBVndEYjVWWkVDQ2Qyd3hLU1ZDNFBRUlU5bXI0QkhKZGJDU0djMlFyWUNGc05WSWFxVFFBZkFUNldXd2toSWpFRHV5S2NuVnVSSmxVNkJEd0V1K3V2MnFRa2hDZTl3SkhZR1ZkMnFqSUJUTWRTZEsyWFdROGhVdkFjbHBMc29keUtWT0VRY0FMd0V6VDRSZWV3RHRibnMwY2Jyc0p5KzF2QTRibVZFQ0l4RzJPMkxqL1BxVVR1Q2VCRUxFbW5FSjNJenRnMjRLNWNDdVE4QTlnU3VBTTUrSWpPWmlsbUo1QWxvbEN1TTRCeG1MR1BCci9vZE5ZQ0xpV1RrVkN1TGNBNXdKc3oxUzFFMVppR1JScStMblhGT2JZQSsyRHgvSEtmUHdoUkpYb3d6OEdiVWxhYWVnSllBd3VsdkhYaWVvV29Bd3V3ZzhIbHFTcE0vUlUrRHpncWNaMUMxSVYxc1hPNWExSlZtSElGc0R0bUE2Mmx2eEJEMHdQc2lhMlVvNVBxRm1BVWNCRWEvRUlNeDJnU2pwVlVBL0kwNE8ySjZoS2k3a3dGRmdNM3g2NG94UlpnUTJBK2JaQklVWWlFTE1IUzMwVU5KWlppQlhBQnRxY1JRclRPT0dBSzhNdVlsY1JlQWN3QWJxVWFYb2RDMUkxZVlDYm1LaCtGbUFOekJQRDF5SFVJMGM2TUJNNG40b2M2NXVCOE16WjdDU0hLc3ovd2xsZ1Bqeld6akFMK2pDTDdDdUhCQW1CN3pFYkFsVmdyZ0hlZ3dTK0VGMXNCL3hqandURldBT094YTc5cEVaNHRSS2Z5RUhZdHVOTHpvVEZXQU85RWcxOEliemJEeHBZcjNpdUFNZGpYZjdyemM0VVE4QVFXU2N2Tlc5QjdCWEE4R3Z4Q3hHSVQ0QVRQQjNxdUFFWUJkMlA3RkNGRUhPNERkc0NNaElMeFhBSE1Rb05maU5oc0N4enQ5VERQQ2VDRGpzOFNRZ3pOaDd3ZTVMVUZlQTB3MS9GNVFvalZNeE80SmZRaFhpdUEwOURnRnlJbHAzbzh4R1BRVGdFZXB3SjV6b1RvSUY0Q1hnVThHL0lRanhYQUNXandDNUdhOFRpWUIzdXNBTzdFUWhrTElkSnlMK1lrVkpyUUZjQk1OUGlGeU1WMndONGhEd2lkQU40UldGNElFY2E3UXdxSGJBSEdZQUVMMXcxUlFBZ1JSRGNXZVBlbE1vVkRWZ0JIb01FdlJHN1dCZzRyV3poa0FuaGJRRmtoaEIvSGxTMVlkZ3V3QnJBSVdMTnN4VUlJTjVaZzI0RENic0psVndDSG9zRXZSRldZQ0J4WnBtRFpDZUNZa3VXRUVIRjRVNWxDWmJZQW83RFQvL1hMVkNpRWlNSnp3QWJBcWlLRnlxd0E5a0dEWDRpcXNRNndSOUZDWlNhQTBsY09Rb2lvSEY2MFFKa0o0T0FTWllRUThUbWlhSUdpWndDVGdXZElrMVZZQ0ZHTVhtQmo3SXErSllxdUFBNUNnMStJcWpJU09LQklnZEVGS3ppdzROOExVVldXWXpuM3VyQ3NPdzgxL3Q5eXpOZCtFckFSbHBCakIyQnI2aEgxYWwvZ3g2MytjZEVKWU4rQ2Y1K2JYaXlaUWhkMmRkbGtUZXpVZERQTWdxcWQ2Y01TdFY3TEt4MitpMWM2UEpnaHlXUmdVMkFMWUJkZ1QyQXZpdmVScXRLSHhhMzgzNGJjUURFSG1zbllCL0FJNEZoc2NxZ2kwY2JvV2xoZXNyNEt5MExnQjhBL1lSbFV4cmJRcnJXeHJjMm5zRTdSVTRGMmhNcEs0QW9zV2xOSVI1MkVwWG4vS2ZCeUJkcFZScFlCM3lRd2NNWUFSZ05IQVZkaUg1bmNiZXd2SzRoa3BYdFFCUm8zMUE5OEVUQURueVhhQmxpSTg3a1ZhRnRSZVI0NGx6aTVHZGZESnNtRkZXaG5xKy9pa3cyOVk3SUROdGxXYVNKNGJZeUdmcklDRGVzdlR3QWZKKzRQZkNod2ZRWGFPcHgwQXgvRlZtbXhXUU9iQ0pZa2JGOFI2Y1crK0ttTjFmYkZ0bHE1MjkrSGpWVjNmbEtCaHZWaFgveXpzWTZZaWxuWS9qbDMyd2VUbjJGWFA2bVpDdnhQQ1gxanltUFlwSjJMc2NBNW1EbHV6dmZ3MHhpTiswdm1SdlVCTjJPbnNUbVlBSHlCL0Q5dVU1WlJqWkJzSjJHSGlibmZ4M1hZOXEwS0hJYlp5K1I2Rnd1OEd6U0p2SHVjWHVEelZPTkUrbkRnYWZKMjlpNWcxOGp0TE1LdTJOYzMxL3Y0UGhhaXJrcHNpOTIwNUhnZnEzRGVEaDZRcVNGOTJPbnpQM2cyeG9ITmdmdko4ejd1d1JKQ1ZJMXBXSGJvMU8valF2elQzSHN4bFh4Yng3MDhHL0xlVEkxWVJnbjc1a1NzQjl4QitzRmZaVS9NRGJGWTlhbmV4L2VwN3VCdnNpbndDT25IVGxDMDRJRjhLVU1EWHFhNmc3L0plcVE3K2UyaW1sLytnVXdselhiZzkxUmpTOWdLdTVEKzF1U3JuZzI0S3JIeWZUaWtQVXJFZEN3L1c4eDNzWXhxN2ZtSFl3YW1jNnozOFFqVlhna054bHRKTzM2dTlsVCtnY1RLbisrcGZBSU9KKzd0UUJWTys0dHlNbkhlUlMvd3VvVHQ4T1E3cEJ0RDkzZ3BQWnEwNXJHM1VwK2xYWC9PSXM3NytGbktSamp6Qy96Znh3VkpXK0RMWk13bkpjVTRXb2FUODlLbWlSVHV3KzZUdC9WUU9nTWpnWnZ3ZlIvZDVESHk4V0lhdm52Zlp6RW5yanB6QXVuR2s0dkQwajRKRmY0UEQ0VXpzak8rRGxNZlRhdCtGRDZCMy92NFNHTGRZekFTdUlzMDR5a29jV2lUdjArazdDTFMyTExINWx2NHZJL25hSS8zc1JZK0RrUkxnQ2tSOUJ1TG1RK2ZnZDEyWFFKOEJuZ2ZsbjAzQnNlUlpreTVaTy82VUNKbHovWlFkZ2kyQVBiSFhGc1BCM2JFVEh0ajhHcDhWZ0dmajZEYnBzQXB3SytCKzRDbERibXY4ZjgrUUJ4UHdrOFQvajYrNXF6VE5PQmk0SVZoNnIwZmVEKytsb1pqc1E5ZTdESDFMeDdLbnB0QTBaZndEN0N3SGRacEhoNml6aGN4cDRrMzRSL3BKZlR3YXlVMldMMllpcmxNdDNLWXV3cTRITHZlOUdJNlliY2txNEJ0bkhRWmdYbkxGYjJtWElCdGg3MDR2MkQ5WmVUZlBSUzlKSUdpMy9GUXRNRTYyTXhlNUN0OEt6RFRVWWRaQmVvZVRLNXcxT1gxbER1STY4WTNBOVJ2UytqUWxObE9PcXlCaGNzcXE4ZExXTEFaRDdZUDBLTlZjYmt4K1hrQ1JiMW0xcTBvYjRxNkVsc0NlekFhZUx5a0huM1lTYkVISHlUOHkzdXFreTV2QzlEajB3NzFqd0F1QzlDaEtiM1l1WmdIc1E4REwvTlE4b2JJU2o2UHo3My90dGpCV2FnK3B6dm9BbkJleWZwNzhka092UjRmNDZSVitLd0VKbEgrYkdRL2gvclBLbG4zWUxJVWl3UVVTdXh0d0RVT09rYTNkVzg1Z3VscW1BTE1kOUtuQng4ZmhFTksxbitYUTkydnd2Zit2UnZZeEVHdm0wdlV2Wmp3QTdqcDJQTGRzOTllRzZnVHdCdWNkUm9vZHpyb0dEMFF5TWtPT2w3b3JOUGpoQWRXbklBRmFDeGE5NWNDNndYNGRvbDZoNU9MSGZUNlNvbDZiM2FvOTdzbDZtMUZRazJTcDBmU3F5a3VnVUZpbXk3dUZLamYxcFFiYU1QSkp3TDFnbko3dkg4T3JITlQ0cGh1OXhEdWpmajJFdlgrTUxET0NkaVNQVWJmL1c2Z2JpTWk2dGFIM1lDdGxsWjhxV1BIM25zb3NQekp4SWtHOHo3Q3J3Zm5saWpURlZqbjY0bVR2V2tVRmc4L2hMK1VLQlBhUHc0aFVwaHM0R2pDM25VZjVqb2RpM0hEL1VFckUwQXNneGt3Mis0bGdjK1k1YUhJSUd4Q2lYVExBeGgyQmg2RXJzQTZZOFpRT0RLdy9LTWx5blFGMXJsYllQblZzUzVtK0JYQ1V4NktESUhMQkJBekhWSlhZUG1wMk5WZkxBNE1MUDlFaVRKbEJrbC90Z3dzdnpxMkNDei9mSWt5THdUV0dkdVpLdlJ3ZEptTEZvTXpiR0tjM0JQQXdzRHlVMTIwR0pyUUg3Zk02bWI1OEgreVdtS21yQXA5MzJVNis2ckFPdGNPTEQ4Y2t3TExyM1RSWW5CY1ZnQXhZNjZGTmo1MlZKalF2SUZGY3M4MTZRMnNNeWFodXBYcFM2MmtkMXNkTGFmS0xrbm9FajZydzFmdWdJcWg5UzkyMFdKb1FwZWY0MHVVQ2UwUVpiWWRxWjQ5c1VTWnlZRjFQaDVZZmpoeXZKTldHZllEMjhvQVhPR2d5RkNFTHMrZUhQNVBncWhqaDM4d3NIek1aNWQ1SDZGYm11c0R5NitPQllUM3daaXJXSmNKb013eXRsVkM4L285akpuL3htSk9ZUGt5L3V1aFhvQlhCWlpmSFZjR2xpL1R0czBDNjd5VmVGZHRvU200SnVEcjlUa1Fsd2tnOUZCcWRVd243SkN4aDNnZGZpbmh0dFJsVHVRM0Q2enpGNFFmbkExR0Q1WUxNSVF5THIyaGFiMzdNRmRvYjFaaW5ySWhiRW5jYmZpd3EvZmNFOENhaEorMGY4OURrVUc0Z3ZEVlQ1a09IeHIrKzFIQ0xkUUc0MXVFZjBuTFJOalppWEJibFBQeFh3VmNpRVhMRGlIVXptUTRRbTFzQUxObWkyV3EySWRacm9VUzRtcyttQ3duZkdrMkNqdWtMRnIzallIMWdsM1hkWmVvZXloWmpNOTkrbTBsNnovSW9lNGo4RE9Sdm8vdzZ6K0EvM0xTWnlpNTNVRkhybytzcEVmb3E5ZmdhMVA5Y1FlZDlpeFo5d3A4T3BkWGgxK0ZqN1hsbEFCOXpuT29IOHpWTy9SOVBJdFBodW9SMkNGenpMSGw0ZzRjT3lCSUdYdjV3WGdqUGhtTWY0S1A4ZE9aQVRxODJhRitzR0Flb1FGQlRuSFNKU1FRNWdQNEdhU2RoS1dkSzZQSEFzTFBKSnFrU0xqcmtsTWlobXZwUUFrOTZXM3lkc0w4dmkvSHovbHBkb0Flb2FmTC9UbUdjdHVCeFppeml4ZS9MS0ZEZjluZlVaZVp3QzBGNmw2SjdmbERyMmo3YzNHQitzdEs2Q0VsVUQ2eVRSSDVWdzlGRyt4TDhlQWdMMkl4K0wyK01sc1hySCtndkV6NEZXbC8xc2Q4OFZ1SnlMTUtPMWoxdEtGZm4zQ1g3Ujg0NmdQMlc3OFJXL0VOdFgxOENQZ3lmZ0ZKbTB5bTNQbFFVZm1NaDdLbkpWRDBRWHhkV01kZ29aenZINmJlNTdFckltK2Znbk9HcWJjVitaU3pUbUQrL08vSEVrZmVpNTBTTDJuOCt5ck1CVHBHQnVLekNIOGZLd24zdkJ1S0NkZzUwbUZZbE9qOUNMK09YUjJmSlA2WTZzTXB4bVdxSkFiSGVTZzdDTnRoUVRZK2d5Mjd2b1RsT2ppWU9IRUUxc1luTnVGQzRzZGlTTUZFL0xJbnV5eHBNek1SZUlZMFk4cmxMQ2xWYXJBNTVQZE44T0JqK0wyVEdLdUExSHdLdi9mUmd5VjFxVE1wOGdFMFpWOFBoVitkVU9FVFBSVE95QWI0ZlAyYjBrMThsK2VZYkVieEJCekR5VTNFaVhpVWdoM3h6UjA1bkhnRWNtVVU1YTlOaXNyaitKNjBwdVpTL045SnFQbHRUcTRrVGo4NUkyVWpuQmdQM0VHNndlK1dIaHpNOGltVjR0LzJVam94aCtKamh6Q1luSlN3SFY2Y1FydytzZ0tuekxjSitRYnB4bEFmY0krbjhyRm04cUhFSmF0cFFqYkJKd1B1VUxLY2NCK0JsT3lPZnh6K2dmSVljUktaeHVCZHBCMC9mVGc3eVgwNXNmSkxxTTloenpqZ0Q4Ui9KM1hwOEpzUjM4UzFLZk93WEpCVlpoWnA5LzFOT2QrekVTZG5hRUFkT3Z4SXpIb3cxVHU1bS9Bd1pUSFpnT0Z0TDd6bFR1S0hoaXZMTFB3UFFWdVZkM28yWk85TWpaaFBkU2VCa2NBM1NmOU83aVdPc1U0b201Ris4RGZsUHVKR1F5N0RPOG56NVcvS25wNk5XUXVmUkpObDVFRXM4V2VWR0lmRkM4ajE0ejRHeklqZXl0YlpuWFRML3FIa1dlRHcyQTF0Z1hIQTE4ajdMbnFKRUd4MFFjWUdQWStkc2xlQnFjQWZ5ZnNEOTJGTFM0KzhpcUdjUXZ3RHZ5SWQvNHZrczZEY0h2UEJ6LzBlUWdPVkRFck9MMTRmdGdMNUxISE1kMXZsQ0N6TWRPNGZ1TC84Z2p6YnBNMUlmenZVcWp4SXZJeFJnN0VtY0M1eGNsU1drZEI4aW9QeTRRbzByQTlMVis2Ukw3NElHeE0vZWt1SUxNRWNURkxFbUorSW1mZm1PdHdxSWpkZzI0SllKdVlUc2JnUE1hK0F5OGpwTVJxYklvQkJxOUlML0JpLzRBeERNUVZ6Vlg0aFkxdUx5RUxnMC9qRlYralArcGhYbjVkalQwcnBhdWp1RllGM2IrRHIrSnA5ZTRwbjdJVC9adzN5bm1vT0pyM0F0Y0R4bEV2Q01SU3Z3ZUlncFBEWmppR3JzRGlKYnlNc3ZOZ1V6RXZ6bDFSbmVSdjZYbTRFenNheUJyY1NjMkUwbG4veWVNd2I4YUVLdEdOMXNwSUMyWkNMMmdyL2lialpWa040SHJ1VC93MXdIY1VTVVk0RjlzS0NUeDVMdmF6dWhxTUhPNWk2RmJzelg0RGRJaXh1eUdoczZ6QVorMEp1amJsUTc0ZTloN282M3JUS0l1eDlMT0tWS0xvVHNIZXlFUllYSURROVdVcHVvOEFWWU5FSjRJdFlnSkNxMDRmTjFIY0JqMkEvY0RmMkZSdUxmUlhYeG1iMnJiRnJ4cGhwMElWSXhSZXc4N3FXS0RvQkhJT2RPZ3NocXNuUkZQQURLRG9CVE1JT2dkcDlXU2hFSFZrRnJFdUJwTGxGcjBjV1krY0FRb2pxY1JzRk0yYVh1Ui85VFlreVFvajRYRjIwUUprSklHYjJXU0ZFZVg1VnRFQ1prRUVqTWNlUEtydWxDdEZwUEkxZFcvWVdLVlJtQmRCTGlabEdDQkdWcXlnNCtLRzhqZlRQUzVZVFFzVGh4MlVLbFkwYU9nNnpPL2ZJWWl1RUNPTUZiRXUrb21qQnNpdUFsNmwzdUdvaDJvbW1yMFpoUXR3a3J3Z29LNFR3bzlUeUg4SVNCNHpEYmdPcUhwVlZpSGJtYVN4SzFjb3loVU5XQUM4RFB3b29MNFFJNTc4cE9mZ2hQRkxLcFlIbGhSQmhmRCtrc0VmdXNIbkFEZzdQRVVJVVl4NkJDWFE4WXFYVk5aZWZFSFhub3RBSGVLd0FKbU1CTjFvT1F5U0VDR1lwZHZqWEhmSVFqeFhBQytnd1VJalUvSURBd1E5KytjTjN4WEtmQ3lIU3NBc1c4aTRJcjNqcGM3QVk3RUtJK0Z5RHcrQUgzNFFKNXprK1N3Z3hORi93ZXBEWEZxRDVyRCtqSzBFaFlqSVAyQW1MZkIyTTV3cWdEempmOFhsQ2lML2xmSndHUC9pdUFNQmk3aS9BTHdXVEVPSVZIc1J5V0pRMi9SMklkM2p2VlZpcTZLT2RueXVFZ0ROd2pzcnR2UUlBUzk5OVAzRVNWQXJScVR5TVpiRXE1ZmMvRkRFU2ZQUmlWa3JIUkhpMkVKM0thVVRJeVJGakJRQzJDcGlIelZoQ2lERG1ZWVkvcTd3ZjdIa0wwSitWd0ptUm5pMUVwM0VtRVFZL3hGc0JOTGtHUzdrdGhDakg5Y0RmeFhwNDdBbGdUMkIyZ25xRWFFZDZzVEVVTFI5bnJDMUFrMXNKakZnaVJBZHpDWkdUOGFiNE1tOEkzSWZGRFJCQ3RNYnp3RFpZME05b3hMZ0dITWlMd0RMZ2lBUjFDZEV1bklIdC82T1NhbTgrQ3N0ZHZtdWkrb1NvTTdjQmV4UHA1TDgvS1EvbmRzSE9CTVlrckZPSXV0R0RIZnpOU1ZGWmlpMUFrNmVBTllEOUV0WXBSTjM0TEJiclB3bXByK2ZHWXpQYnRvbnJGYUlPM0krdGxGOUtWV0hzYThDQnZBUzhpd1I3R3lGcVJnOXdJZ2tIUDZUZEFqUjVGRHNIT0NCRDNVSlVsYk5KdVBSdmtzdENielR3UjJCbXB2cUZxQkszQS92Z0dPaWpWWEthNkc2Sm5RZXNsVkVISVhMVERjd0FIc2hSZWVvemdQNDhBTHcvWS8xQ1ZJSDNrR253UTU0emdQN2NCV3lDellCQ2RCb1hBcC9QcVVBVnZQVEdBemNDdStWV1JJaUV6TUgyL1VsUC9RZFNoUWtBWUhQc0lHUktia1dFU01BendCNUFWMlk5c3A0QjlPZEI0RGpzTGxTSWRxWUg2K3RkbWZVQThwOEI5T2RCTE5Pd3ZBWkZPM01xY0hsdUpacFVhUUlBY3hiYUdOZzl0eUpDUk9BL2diTnlLOUdmcXB3QjlHY01jQlZ3U0c1RmhIRGthdUJZS3JiTnJlSUVBREFSdUE3ZERJajJZQjdtQmJzNHR5SURxZW9FQUxBUmNCUEtNQ1RxVFJld0wvQkVaajBHcFNxM0FJUHhGSEE0c0NpM0lrS1U1Q2xzSzF2SndRL1ZuZ0FBNW1NdjhObmNpZ2hSa01YQWtXUTA4MjJGcWs4QUFIT3hxOEh1M0lvSTBTSkxzTlZya3JCZUlkUmhBZ0FMa25nVUZtRllpQ3JUalEzKzJia1ZhWVc2VEFBQU53Q0hVY0dUVkNFYU5BZi9UYmtWYVpVcTN3SU14UjdBcjRGMWNpc2lSRCthVnF5MStQSTNxZU1FQUxBOThEdk1hbENJM0N6RXZ2eDM1bGFrS0hYYUF2VG5Ic3l3WWtGdVJVVEgwd1hzVHcwSFA5UjNBZ0J6SGpvQXVDTzNJcUpqbVlzWitkVDJRMVRuQ1FETTBPSkE0RmU1RlJFZHgyK3hEMUJsalh4YW9XcmVnR1ZZQVZ5R0JSUFpLN011b2pPNEJEZ2VTM29yS3NRSHNOREtmUkpKQk9rQlRrZFVtb014MCtIY25VWFNYdkkwMXJkRURkZ1V1NC9OM1drazdTRnprRmRxN1JpUFJXREozWGtrOVphTGdRbUkybklDNXB5UnV5Tko2aVdMZ2JjaTJvSXRnSnZKMzZrazlaRGJzRDRqMm9qUndKbll0V0h1RGlhcHBxd0VQZ2VNUmJRdE00Rzd5ZC9aSk5XU3UxRTA2bzVoSEhBT3NobVFXQjg0RnpzMEZoM0dyc0NmeU44SkpYbmtGbUJuUkVjekNuZ2Y4Qno1TzZRa2pid0FuRUw5ZldHRUl4c0Ezd1o2eWQ5QkpYRmtGWGF2dndGQ0RNRU00UGZrNzZ3U1g1bU5IUUFMMFJJSFkvN2V1VHV1SkV6dUFkNUNmYU5maVl5TXhEclBmUEozWkVreGVSaDREKzNoOGk0eU13WTRDUXYvbEx0alMxWXZEd0R2UnNZOElnSmpnQk9CUDVPL28wditXdVkxZnB2UlEvNTZRamd4QWt0VWNoMzVPMzZueSsrQW85R1Zuc2pFVHBqYjhWTHlENFpPa2VWWVdLNGRXL2g5aEVqQ0pPQlU0Qzd5RDVCMmxUbFkyTGNwTGY0bVFtUmhOK0Nyd0RQa0h6UjFsMFhBTjVDampxZ2hZN0d6Z2tzeDg5UGNnNmt1MGcxOEQwdTFwVU05MFJhTUEyWmhlOWNueVQvSXFpWlBBQmRoRTZZODh4SWg2Nmc4ak1CTWpvL0NNaDd2UWVkOTZYb3c4OXpmWVlsZGJzZjhNRVJDTkFGVWc0bFlmcm1Ec0d3enUyQTJCKzNFU2l5TjI4M0F0ZGdWNnBLY0NnbE5BRlZsQXJaQzJBdHpZTmtGMkp6NjNIWDNZdm55N3NUaUxjekd2dkRMY3lvbC9oWk5BUFZoVFdBSExJREZOc0NXd05iWXhEQXVrMDRyc0NTdDkyUCtFdk14NTV1NW1GMkVxRGlhQU9yUFNHQmpZRnEvLzI0SXJBK3MwMDhtWXVjTUV6RUhtYlVIUEdjeDl1VmVnZzNzeGRnZ2ZoYTd6bndHeTQ3ekdQQW84QWlXbkxVdldzdUVFRUlJSVlRUVFnZ2hoQkJDQ0NHRUVFSUlJVVRML0I5RS9iZkhiR3VVMmdBQUFBQkpSVTVFcmtKZ2dnPT1gXFxyXFxuXFxyXFxubGV0IHBpY19yZWN5Y2xlMiA9IGBkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVFBQUFBRUFDQVlBQUFCY2NxaG1BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUhZZ0FBQjJJQk9IcVoyd0FBQUJsMFJWaDBVMjltZEhkaGNtVUFkM2QzTG1sdWEzTmpZWEJsTG05eVo1dnVQQm9BQUIyUFNVUkJWSGljN2QxNWZGVGwyZi94ejNVbUNhc2I0RktyNElJb29xMUNyWUtZaE1WYTZvbzJQcElBb3JXMi9xeDl0Tll1ZG5taXJRdldhbjFhOVNrcVJVZ0NHbHR4dDhveWllRFNTdDBRRkZHQkFrVlpYTmlUekZ5L1B5YVJMY3VaWk9iY00yZXU5K3ZGaXpCenpuMitHWEt1bkhPZis5eEhNRmxOUjQzcXhPYjllaE9SM3FnZWlzb0JRRS9RSGlBOWdNYS90WHZqS3QyQi9NYXY5d1lVMk5qNDd6cGdjK1BYRzRFTnFHNUFaQVBLK3NUZitqR2lLNGl4bkUvcVY4cmIxWFVCZmFzbURjUjFBTk0yTFNtSjhKOHVSNUlmUDU0NHh5STZnRGlISWZRR3Z1UXdXaHhZQXl4ci9MTVFUeGVoM3R0RSszNGdsTWNkWmpNK1dBSElNRHJvOG55NmJ6NEJPQVg0T25BY2FIK1FUbzZqSldzcnNBaDRDL1FmQ0MvQjZvVVNqVGE0RG1aMnNBTGdtSTRZMzVONHZKaDRmQWdxSnlNTUFqcTd6cFVtbTRFRndNdW96S2RnZTQzTXF2N01kYWhjWmdVZ1lGcGNuSWNjL0ZWaWpFUmtKRkFNNURtTzVVb01lQjJSV1JDZnhkcjZXdXRUQ0pZVmdBQm84WmhleE9WY2tORUl4VUEzMTVreTFPZkFiTkJIa1lJbkpEcmxVOWVCd3M0S1FKcm9hU1g3STUxR0lWb0NuTUdPbm5malR3emxaWkJxbElmbGhZci91QTRVUmxZQVVraFBMdHViTG5JaHlzV2dRd0RQZGFhUWlLRkVFWDJRVGQzL0tnc21iWEVkS0N5c0FIU1FVdTVSL080UU5ESU90SlRFZFhhVFBwOERqeUU2bFdqVmJFbU1ZekR0WkFXZ25SS0grQVdYSTF3R0hPWTZUMjdTSlFqM1FjSDkxbC9RUGxZQWtxVER4aDVOWFA4ZmNCblExWFVlQThBMm9Cb3ZQbEhtVG4vYmRaaHNZZ1hBaDhSaC90SnpVUDBoTU14MUh0TWlCZjZPcDM5Z2J0VnpkbnJRTmlzQXJWREtQWXJlUFJPOEc0RVRYT2N4U1hrTGxkdXA3VnRoUTVKYlpnV2dHWWtkZjhrRklEY0N4N2pPWXpwa0lTcS80OER0bFZKZEhYTWRKdE5ZQWRpSlV1NVJ1SFFzb3I4RWpuS2R4NlRVUW9RYmlGYisxVTROZHJBQzBFZ0x4dzFIOUhiUUUxMW5NV24xVDVCcnBhYmlCZGRCTWtIT0Y0QkVyejYvQVMxeG5jVUU2a2tpRFZmTG5JZmVkeDNFcFp3dEFGbzhwaGNhdVJIMHUrVHV6VGc1VHJjajhpZnk2bjZUcTNjbDVtUUIwS0xTRXZEdUJ0M2ZkUmFURWRhZzhsT3ByWmpxT2tqUWNxb0FhUEhZdnFqZUM0eDBuY1ZrSW5rYWFiaFNvak9XdVU0U2xKd29BRHJvOG55NmJmb1JJdVdFZDdJTmt4cGJFYm1OdGR0dnpvVzVDVUpmQVBTMHNRUHhkQnB3ck9zc0pxc3NRTDF4VWp0dHNlc2c2UlRhQXRCNFRmOHFSRzhEQ2x6bk1WbHBHNnJsMVBiN1hWaEhFNGF5QUdqeFJZZWhrUWVCUXRkWlRDak1RcmhFb3BVclhRZEp0ZEJOV0tHRlpaZWlrVGV4bmQra3praVVOeEpYajhJbE5FY0FXanloTTFyM1I1RExYR2N4WVNhVFdMZjlxckIwRUlhaUFPancwajdFcEJvNHlYVVdrd3YwVlNKOFcrWlVMWGVkcEtPeS9oUkFpOHZPSWlhdllUdS9DWXg4alppOHFrVmpUM2VkcEtPeXRnQW81WjRXbGQ2RThqaXduK3M4SnVmMEFuMUdpOHQrcGxsOEpKMlZ3YlY0UW1lb240THlYNjZ6R0lQd0VPUlBrT2lVYmE2akpDdnJDb0FXVHpnSXJYOGNPK1EzbWVWRjRuWG55UXZWYTEwSFNVWldGUUFkTm1ZQWNlOHBvSS9yTE1ZMFl5bWVuQ1Z6Szk1MUhjU3ZyT2tEME1LeWJ4RDM1bU03djhsY2ZZbnJQQjFXZHFycklINWxSUUhRd3JFWElqd0o3T002aXpGdDZFVmNaMnZ4MlBOY0IvRWo0d3VBRnBlTlJiUVNlN2FleVJyU0NkV0hzbUhrWUVZWEFDMHF2UUxsUVd6R0hwTjlDa0NtYTJIWnBhNkR0Q1pqQzRBV2x2NFU1QjR5T0tNeGJZZ2czSy9GWlZlN0R0S1NqTnk1dEtqc0JrUnVkWjNEbUJRUWxEdTF1UFRIcm9NMEorTXVBMnBSNlRVZ2Q3ak9ZVXpxNlkra3B1cE8xeWwybGxFRlFBdkxya1Q0aytzY3hxU0pJbks1UkN2dWR4MmtTY1lVQUMwc3V4aGhNaGw2V21KTWlzUlF5cVMyOGlIWFFTQkRDb0FXbHA2UHlFTlliNy9KRGZWNE1scm1WanpsT29qekFxRERTczhnTGs5ZzEvbE5idG1LeWtpcHJYalJaUWluQlVCUEt6c1dqL25Bdmk1ekdPUEllbFFIUzIzVmU2NENPRHZmMXVJSkIrSHhOTGJ6bTl6VkU1SEhkV2lwcy9rc25CUUFIVnpTaFhqOVRPekdIbU9PSVNJemRkU29UaTQySG5nQlVNbzlDZ29xRVU0T2V0dkdaS2hDdHZTYzRtSm1vZUNQQUFyZnV3a1lIZmgyamNsb2VoRkZaZGNGdmRWQUs0NFdqVGtidk1lQzNxNHhXU0lHTWtwcUtwNFBhb09CN1lpTlQrWjlGYnVuMzVqV2ZFd2tNbERtVEYwVnhNWUNPUVhRd1NWZFVCN0dkbjVqMm5JQXNkZ2pPcUFra09kWkJ0TUhVRkJ3RCtpSmdXekxtT3gzQ2owTEpnYXhvYlNmQW1qeDJNdFF2Uy9kMnpFbWRGUXZrTnFxdjZWekUya3RBRHEwOUFnaThqcXdWenEzWTB4SWZZTHdsWFErbFRodHB3Qkt1VWRFcG1BN3Z6SHR0UitxazlNNVBpQjlmUUJGUzM4Qm5KYTI5bzNKQ1hJNlJXVlhwSzMxZERTcXA0MGRpS2N2QVlIMFpCb1RjbHZ3WkdBNkhqaVM4aU1BTFo3UUdVOHJzSjNmbUZUcFNseW5hVWxKSk5VTnAvNFVRT3V1Qi9xbnZGMWpjdHRKckMyNEt0V05wdlFVUUllTzcwZWs0VTBRSjNjMkdSTnltNUhZY1JLZHNTeFZEYVpzQ2k0RklkSndyKzM4YWRidk1EaithT2lVWVdkWTIrdmd6WGZodldXdWs0UlpOelR2YnVETVZEV1lzaU1BTFN6OURpSVpNOXRwNk96ZEhhNy9QcHh5Z3Vza3JYdnBOYmpsei9ENUp0ZEp3a3RrdEVRclpxYWtxVlEwb2tQR0hVQitmREhRSXhYdG1kM2tSZUNQdjRiK1I3cE80cy9pOStHcUc2RWg1anBKV0sya29kT3hNbi95eG80MmxKcE93UHo0YjdHZFAzMUdGV1hQemcrSnJHZllFSkEwT29TODdUOVBSVU1kTGdCYU9LNC9jRWtLc3BpV25QWTExd21TVjNpUzZ3UmhkNDBPTCszd2xIb3BPQUtJMzRuTjU1OWUrMmZod2RVQlBWMG5DTHZPeEwyYk90cElod3FBRm80YmpuQkdSME9ZTm5oWitMQ2tiTXljYlZSTHRhaXNRNGRhN2Y1ZlVzbzlSRy92eU1hTk1SMGl3RjBkdVZtby9XVzZhT25GTnNtSE1jNE5abGpwT2UxZHVWMEZJREVtV1ZQU0MybU02YUM0bExmM0tLQjluWGRyODhjQlI3VnJYWk0rVDBYaHN3NWZHbTdkUG52Qm1jWHAzWVpKMWdrVWpUbUxtdWxQSkx0aTBnVkFTMG9pZkl6OTlzOUVEejhOeTFlbmR4dDlEcllDa0pHOGNvVW5CVFNwdFpMZXpzZjVwU0Q5a2w3UEdKTk9BeWtzSFpYc1Nra1ZnTVM1di93aTJZMFlZd0lnY21PeWZRSEpuUUtzTFJnTkhKM1VPcm1zUytmRU9QNk84bnROdldzWDJLdGJ4N2ZYMWpiODhMelVaR21Jd2RadEhXOG5Od3lpY053d2FxZk44YnRDVXRWQ0M4dm1JWnlhZks0YzBHTWZPSFVRbkRvUXZueGdZdlJlWjdzek9pVzJiWWUxRzJEbEdwai9MM2p4WDdEaE05ZXBNdFhqVWxONXJ0K0ZmUmVBeG5uK0ZyUXZVNGp0M3dQR241Zm9HTFBSYjhHSUs5VCtBLzV2QnF4WjZ6cE5wb2tUYWVnbmN4NTYzOC9DL245aVBiMjYzWkhDYXZUcFVIRTduRDNjZHY0Z2VRTEZKOE9ERStHOGthN1RaQnFQaHJ3ZitGM1kxeEZBNC8zK3k0SE83WTRWSm5rUitPSEZjTTV3MTBrTXdPT3o0YTZwRUxQNUJ4cHRKTC91VUpsVjNlWjVrcjlmVzNteEs3Q2RmNGVyeHRuT24wbk9HWkg0UHpGTjlxSSsvMkkvQzdaWkFCSTMvY2lsSGM4VUV1ZU5oSFB0c0RQam5EY3lVUWhNSTduY3oxSnRId0VVdmpjUzZOM1JPS0hRYXovNGZxbnJGS1lsVjVabDU5d0o2VEZBaThlMU9aTk0yd1ZBeEdiN2FYTEpCZEE1dzJiak5UdDBLa2hja1RHTjRoUGFXcUxWQXFBalMvWUI5WDFOTWRUMjNSdSthZlBjWmJ4dkZTVnVXREtnak5IaUNhMzIzYlUrRXJBK3Z4VHdPZlFyNUFhZkFKRWtSL1Z0Mnc3MURlbkpreXZ5ODVJYlVCV0p3T0FUNGRuYTlHWEtIajJJTjV3RFBOelNBcTBYQUpXTDAvZGc0aXd6WktEL1paOTlBU29mZzVVZmdTWjFjNWJablFnY2NpQ01QUS9PR09wdm5TRldBTDRnT29GV0NrQ0xwd0E2dkxRUHd0ZlRrU2tySFhxUXYrWCtQZzl1L1RQOGU0M3QvS21nbXZnc2Ivay9lSDYrdjNVTzhmbC9sUnRHNnVDU0ZudEdXKzREaUhFK2FYcDhlRmJxc2ErLzVhWS9tZDRjdWF6SzUzd1h2ZlpMYjQ3c2trOStwN05hZXJPVlRrRHYvSFNreVVwKzcyeUx4MkhGcXZUbnlWWExWeWMrNDdiczNUMzUvcG93RTcyZ3BiZWFMUUE2WXN5Qm9JUFRseWpMaUNUK3RFVTFjYU9LU1k5NDNQOXBsUjI3N2tUUDBGTXZiZmJTU1BOSEFBMXlQbUFsMUpoUWtFNUU2cHFkTGFqNXF3QXE1MW9GYlFjUjZIZTQ2eFRoNXVkSXpPeEpHRTB6VndQMktBQmFQS0V6V2w4WVNLaXc4VHlZOUJ2WEtZeHBocDZ1bEh0QytTNmRLSHVlQXNUckM3SEJQOGFFVFUrR0xkbmpRVDdOOUFISTZVR2tNY1lFVFBmY3QvY3NBS0pXQUl3Skk5MXozOTZsQUNRdS8vR1Z3QUlaa3k1Mk5iWVpNbFMvTVc2WEFTMjdIZ0UwUklaalYxRDNGSXZCNXEydVV4aS9ObSt4NmNHYVYwQjliSmNiS25ZdEFCb2ZFbWljYlBMR1l0Y0pqRit2ditNNlFlWlNiNWNCZnJzV0FPR1VRTU5razJtUDJXK1ZiTkFRZzJrelhhZklYSEhkWlIvL29nQWtKZzRRTy85dnllTDM0ZFpKVUYvdk9vbHBTWDA5VEp3RTczemdPa25tRWs1V3lyL1k3M2NNQkpMNlFTZzIzMVZybnA4UGk1WW1KZ1U5NW9nZDA0TWRmZ2prNTdlOS9vY3JyWUMwSlQ4LzhYbTJwYjQrOFhrQ2JLdExGT2pIWnNQcWo5S2JML3Z0UytIN1IxUExZdGk1QU1RNHhici9mRmoxRWR4VHVldHJWWGZBd1FlMHZlNHY3b0RWSDZjblYxZ2NmRURpODJ6TDJrL2c4bCtsUDA4WWlaNENpUUt3b3cvQTR5UlhlWXd4QVZMOVlxS2ZIUVZBN2ZxL01UbmkrS1l2UEFBZFVGSUE5SFVXeHhnVEhPRzRwaThUUndBOUM0NEdmUFJpR1dOQ1lCODk5YUtEb2FrQWVEckFhUnhqVExBaWtlT2dxUURFeFFxQU1ibEVFci8wRXdWQU9OWnBHR05Nc01RYkFEdkdBUnpoTUlwcGl5ZHcwUDRROGVBL2F4UERYVHNxRW9HRGVpVytYck11TmNPYzh5THdwZjBoRm9jMWEyMkMxRXdXMThOZ1J3R3dwLzltb3Z3OEdEOGF6aDJSbU9vYVlPczJlRzRlM1Bjd2JOcVNmSnVkTzhHbDM0WXppNkJiMThScm03ZkFVelV3K1pIRTQ4eVMxYjByZlBkQytNWlE2Tkw0S0xyUE44RmpzMkRxVEhzOFdpWVMrZ0RrYVhGSmR4UjdwbktteVl2QXhKL0F3TjNPenJwMFRneEYvc294OElNYkV6dXZYNTBMNE03cm9mK1J1NzdlclN0Y09BcU83d2RYM3dUYjYveTMyYjByL09uWGNOaHV3M2YzN2c3anpvTUJSOEZQYmt2TlVZdEpJVDFVS2ZjOEpLK1A2eWltR1djTzIzUG4zOW5oaDhENEpCL2MvTzF2N3Juejc2ei9rVkR5emVUYUhIZnVuanYvemdZT1NId3ZKc05JSjA1YmVxQkhUS3dBWktLUlBwN0xNaUxKNlJ0RytsZysyVGI5TEQvQ25qR1RrZktrdHdmZW9hNXptR1ljZkdEYnkvVGFEem9sY1FPbm56YS83R09aSnAwSy9EMkhMNWsyVFhCaTJzZEQxUDUzTWxHQno0R1pmcGZ6dTJ5cTIwdTJUUk1jandNOFJLMEQwSmhjcE5yRFE4VUtnREc1U0xTSFo1Y0FqY2xSS2owOHhBcUFNVGxKNmVHQkZRQmpjcExRMHdPNnVzNWhqSEZCdW5wZ013RWJrNXUwd0FxQU1ibkxDb0F4T2N3S2dERTVyTUJqNTRlREdHTnlTU2V2N1dXTU1XSGxBVFpkaXpHNWFic0hKREg5aXpFbVJPcXNBQmlUdTZ3QUdKUERyQUFZazd1a3pnTTJ1NDVoakhGQk4zdkFCdGN4akRGT3JMY0NZRXpPMGcwZXFCVUFZM0tSeWdZUHZQV3VjeGhqSEJEWjRBR2Z1TTVoakhGQWRZT0g4ckhySE1ZWUYyU3RoK2dLMXpHTU1RNUVaTG1IRjdjQ1lFd3Uwc2h5RDIxWTdqcUhNU1pvdXAzb2xJODhpVlp2d3NZQ0dKTmpaSVdBTms0SUluWVVZRXd1VVZaQVlrSVFRRDkwbWNVWUV6Qko3UE9KQXFBc2NockdHQk1za2JlaHFRQjQrcmJUTU1hWVlPbk9CWURJUXBkWmpERUJhMmpZcVFCczdQSXVVTzh5anpFbU1KL0svQm1yb2JFQXlJSko5Y0I3VGlNWll3SWlYeHp4NzNndWdQQ1dreXpHbUdDcE5sTUFWUDdoSkl3eEptZ3ZOMzJ4VXdIWThhSXhKc1FpMGt3QjZMWitBZWgySjRHTU1VSDVsTGtWUzVyKzhVVUJrR2VlMlE3eWhwdE14cGlBdkNTZ1RmL1kvZUdnZGhwZ1RKaXB2ckx6UDNjdEFNcUxnWVl4eGdSTHZGMzI4VjBMZ0JlZkRjU0R6R09NQ2N3Mk5uV2R2L01MdXhRQWlVNWZCN3daYUNSalREQ1UrYkpnMHBhZFg5cTlEd0RnK1lEaUdHTUNwWHZzMjgwVUFMRUNZRXdZcWVlakFFamVDOERXSVBJWVl3S3puaGY2dnI3N2kzc1VBSWxPMlFiVUJCTEpHQk9VNTRUeVBUcjRtK3NEQVBUUmRLY3h4Z1JJK0Z0ekx6ZGZBT29qTTRGWU92TVlZd0t6bFFMdm1lYmVhTFlBeUl2VFBnYm1OL2VlTVNiclBDdlBUZHZjM0JzdG5BSUFLczBlTWhoanNrd0xoLy9RV2dIdzlLL3NkTk9BTVNZcjFkT2dUN1gwWm9zRlFLS1ZLN0diZzR6SmJzcHpNcS9xazViZWJ2a0lBRURsd1pRSE12N0VmZDZTNFhjNXY4dW11cjFrMnpTcDVUR2w5YmRiVTdCOUJyQ2wxV1ZNZXF6L3RPMWx0bTZEelVtTTJmTFQ1cm9XZjFuc2FmTlcyT1pqRGhrLzJ6WHBzSUV1RzU1b2JZRldDNERNcXY0TW1KblNTTWFmZi9pNEordWZTYzdqNnFwTlA4dVkxRk90U2t6MDA3TFdqd0FBa0NrcGltT1NNZU9wMW45emJ0MEdEMVFuMStiVW1mRDVwcGJmLzN4VFlwbGtUSDRra2FVbDZ6NUpmQzhtZUpIV0QvL0JUd0dvNlRzYkVrOFNOUUg2OUhPNDVtWllzbXpQOTFaL0JOZE5oT1dyazJ2em8zVnc3YTJ3Yk5XZTd5MWJsWGp2bzNYSnRibHNGVngzRzZ6K2VNLzNsaXlESDkyUytGNU0wQmJLM0tvRmJTMlUxOVlDUW5sY0tYc0F1Q0Vsc2NKSWZWNHRqZmc0NE5yWml0WHd2Vi9CZ0w1dzlCRWdBaCt1aE5jWFE2eWRBelhmV3dhWC9neStjZ3owN2QzNDJncDQ2eDJJdC9PcTc4SWxNTzQ2T0tFL0hINUk0dk40OXdONGU2bi96NmFKMzg4bzJYWnp6eVEvQzdWWkFBQ0kxOTJMVi9Cem9ITkhFb1dXbjQ0d2dIMzNnWCt2U2E1dFZWajRYdUpQcXNRMVVVUmVYNXk2Tm1NeFdMQXc4YWNqZXV6bmI3a3Rkc05xS3o1bkc3NnU0UGtxdC9KQzlWcGdSb2NpaGRuR1prZFo3cW4zbDlLYkl3ejhma1orUC9PY3BQZkxLNVcrenJ2OEg1TXFkN1E3VDlpdDlQbGJmY2pBOU9ZSWcxTjlma1orUC9QY0V5UEczWDRYOWwwQXBMYnlMYUMyWFpIQzduMmZmYVFuZnhVT09TaTlXYkpaNzRQaHBPUDlMZnZCdjlPYkpYczlMdk9xUHZDN2NISzlVcXAzSlIwbkYvZzlsODZMd0pWbGljNDhzeXVSeEdjVGlmaGIvclZGNmMyVHJVVCtONW5Ga3lzQXRmMW1BaDNzNVFtaFphdWF2d3pXbk1FbndzV2owNXNuRzAwNFAzR0U1TWVxajVLL0JKb2JYcFpvUlRTWkZaSXFBRUo1SE5WYms0cVVDMVRodVhuK2w1OXdmdUszblpma1pjRXdpa1RncW5ISkZjVmtQdXRjSXBMMHBmcmtmd0lQcko4QnZKdjBlbUgzeEJ5b3EvZS9mTWtvbUh3ekRCMlVPRFhJTlhrUk9PMXI4TUROY01FWi90ZmJYZ2VQejBsZnJ1eTFnR2pGMzVOZHFWMG5vMW80ZGp5aWRxZmc3cTRhbDl3UGM1T05tK0dOZHhLajhENzVyUDBEY2pLZEo3RGZQbkJRTC9ocWYramVOZmsySG40RzdxbE1mYlpzNThsWk1yY2k2VEhYN1NzQUpTVVJQczVmQk5LdlBldUhWcmV1TVBVMjZMbXY2eVRoOU1sbmlSR0htK3dHMVYzSmE5UlVESkoyVE9EVHJwTlFxYTZPb1hKemU5WU50YzFiNE02LzJERFZkRkNGMis2M25iOVpzZjlwejg0UDdTd0FBTlFlTlExbzgyYURuRE52UWVJdzFhVFc5Q2ZocGRkY3A4ZzhLalZTTTczVmUvNWIwKzRDa0hqSWdGN1gzdlZEN2MvVFljNUxybE9FeDZ3WDRiNkhYYWZJUkhFOCtYRkhHdWpRZFNpcHFacUxZamQ3N3k2dThOdDc0YW1vNnlUWjc5a1g0TlkvMjJsVnM3UkNvdE5lN1VnTEhiOFE3Y1YvRERSMHVKMndpY2ZoOWdkZzBrUHR2M1UzbHpYRTRONHFtRGdwOGJYWjNWWmllYi9xYUNNcEdaT3FoV1gzSW53L0ZXMkZVdjhqNGRwTG9XOGYxMG15dzVKbGNNZGtlTWYza1BiY28veFdhaXN6cEFDTUdOK1RodmhpMFAxVDBWNG9SU0p3eGxBb093ZStmS0RyTkpscDVScW9lRHd4MHM5bUVtN05DcVJ1Z0VTclc1bmZ6WitVM1pXaVJXTXZBWjJjcXZaQ3l4TTRjUUNNR0p5NDgyMy9IcTRUdWZYeGVuaDFZYUtqNy9WRjRSMEVsVW9xNTBwdHhlT3BhQ3AxQlFDRW90SlpJTU5UMVdaT09Hai94Q1FZQi9hQ3ZicEIxeTZKSWhGR2NVM001TE54YzJMVTQ0ci93SnExcmxObG03OUpUZVVGcVdyTTM1UmdQZ2lveHZLdUlCSjdBNXM2ekw4MWEyMG5NSDV0UlBqdlZEYVkwdHZSWk43VUpZaE1UR1dieHBnbStzdkdSL2FsVE9ydlIrMnkvaGJBWm1zd0pwV1VWemlnM3ZkVVgzNmw1V1JUQ3k4NkVZbThEQlNrbzMxamNzd1dZcEVUWmQ3VUphbHVPQzB6VWtqdGpOZUE4blMwYlV6T1VmbFJPblorU0ZNQkFLRG1xSW1vMUtTdGZXTnlnZkozYWl0OFBlU2pQZEpXQUJJM0M4a2xnRDBYeXBqMldZZVhQNkc5dC9yNmtkWko2YVIyMm9jZ1Y2ZHpHOGFFbE9McFpSS2RrdFlISUtSOVZrcXBxZmdMWUNNRWpVbUd5dTlsYnRWajZkNU1NTlBTU3Y2VndMOEMyWll4MmU4bE5uZTlQb2dOQlRibVZJZVg5aUVtQzRDZVFXM1RtQ3owRVEyeGdUSi9SaUFQUGdoc1lucVpVN1VjWVFKZ3Qza1owN3dHdlBoL0JiWHpRNEFGQUVDaWxVOGkzQkxrTm8zSkdzclBaTzcwUUMrZEIvOW9tdWhSdndiK0Z2aDJqY2xvK2hlcHJmeDkwRnNOdkFBSTVYSHE2c1lDTHdlOWJXTXlra29ONitxZHpLamw1T0YwOGxMMVZpUitOc2o3THJadlRBWlpURHcrV3Q2dXJuT3hjV2RQcDVUbzlIV29uQTE4NmlxRE1ZNnRRK1FjbVZmMWlhc0FUaDlQSzdYVEZvTmNDRGlwZnNZNHRBWGhiSWxXTEhVWnd2bnpxYVdtNG5uZ0lteHFjWk03NmxBdGtXaWw4MzR3NXdVQVFHb3FIMFhsTzlnWUFSTitNVlRHU1czVjA2NkRRSVlVQUFDcHJaaUs4a1BYT1l4SkkwWDFlMUpia1RIUE9jdVlBZ0FndFpWM0kxempPb2N4NmFIWFNtM1ZBNjVUN0N5akNnQ0FSQ3YvQU56b09vY3hLU1Y2bmRSVTNlazZ4dTR5ZGdKNkxTcjdDV0F6REp0c3A2aGNJN1VWZDdrTzBweU1MUUFBV2x6MmZaUzd5Y0FqRldOOGlJRjh0M0ZPakl5VTBRVUFRQXZMU2hFZUpJVVBNVEVtQUhVSVpSS3RmTVIxa05aa2ZBRUEwTUt4NXlEeGgwRTZ1YzVpakE5YkVMbEFvaFhQdWc3U2xxd29BQUE2ckd3RWNSNEI5bldkeFpoV3JBY1pMVFVWTDdnTzRrZldGQUFBTFN3OUNwR25nS05jWnpHbUdVdFIvWmJVVnIzbk9vaGZXZFc1SnJWVjc1RVhHUXd5ejNVV1kzYWxjNUQ4azdKcDU0Y3NPd0pvb3FOR2RXSkxqNzhBWTF4bk1RYVl3cnE2NzdtNnBiY2pzcklBQUNqbEhrVkx5a0YrU1JaL0h5YXJOWUJjTHpVVnYzTWRwTDJ5ZnNmUnd0SnZJVElONk9FNmk4a2xzaGFKbDBxMGFwYnJKQjJSOVFVQVFJZU83MDBrVmcxODNYVVdrd3RrSGcwTmdjN2VteTVaMVFuWUVwazNkUVZkTnhRQy8rczZpd2s3bWNTNjdTUENzUE5EU0k0QWRxYUZZOGNqK2tkZ2I5ZFpUS2lzQXk2WG1zcEhYUWRKcGRBVkFQamlLVVJUZ0dMSFVVd282UE5FOGk2Uk9WTlh1VTZTYXFFc0FBQUtRdUhZSHlMeGlUYUUyTFRUVmxSdm9MYmY3eEtQdXcrZjBCYUFKanBzN0ZlSmF3VnduT3NzSnF2OEUwL0d5ZHlLZDEwSFNhZFFkQUsyUnVaV3ZNR21iZ05SdVJyWTdEcVB5WGhiVVAwWnNtcEkySGQreUlFamdKM3AwTklqOE9RZWhETmNaekVaNlVraStnT1pVN1hjZFpDZzVGUUJhS0pGcFNVZ2Z3SU9jSjNGWklUVnFQeGNhaXVtdWc0U3RKd3NBQUE2dUtRSEJRWC9BMXdCNUx2T1k1ellodklIWXAxdWx2bVRON29PNDBMT0ZvQW1pVnVNdlp0QVMxeG5NWUZSa0VkUSthblVUdnZRZFJpWGNyNEFOTkhpc2xOUWZnOE1jWjNGcEpIeUNoR3VsYm1WODExSHlRUldBSGFTR0R0UU5nYmhWOEF4cnZPWWxIb2RrUnNrV2pIVGRaQk1ZZ1dnR1lsYmpkODlFeUkzZ0o3b09vL3BDSGtUNHIrbHB1b1JBWFdkSnROWUFXakZqa0xnbFFNRFhlY3hTWGtEOUNiYjhWdG5CY0FIQmFHNDdFeVUvd1pHWUo5YnBvb0RUeU42VjdiZnB4OFUrMEZPa2c0ZDM0OUk3RXJnTzBBMzEza01BSnRBcWxENWc5Uk9XK3c2VERheEF0Qk9PbUo4VDJLeDc2SnlHZWlScnZQa3FNV2c5NUZmUDFsbVZYL21Pa3cyc2dLUUFqcXNkQkJ4NzNMUU1jQmVydk9FM0dmQTQ0aE9KVm8xMjg3dk84WUtRQXBwY1VsM3lQODJLaGNEaGVUQXpWWUJhVUNaamNpRFNONmpFcDJ5elhXZ3NMQUNrQ1k2WW54UDZ1Tm5JbG9DZkFNb2NKMHB5OFJRWGdhcEpqODJRMlpQLzhoMW9EQ3lBaEFBSFZ6U2cwNzU1eENYOHhCR0FOMWRaOHBRbndLelVCNWxPMC9LSzVXZnV3NFVkbFlBQXFZbEpSSFc1WjlBakpHSWpBU0t5TjJia1dJa1J1ak5ndmdzTm5hdmtRV1Q2bDJIeWlWV0FCelQ0Z243SW5WRnhHVUljQXJ3TmFDcjQxanBzaEgwbjRpOGhNaEw2UFlhaVZadmNoMHFsMWtCeURCYVhKeEgvS0Rqa2NoZ2hLK2pIQWYwSi91S3dpWmdNU0p2b3ZvS3lzc2NXTGRJcXF0anJvT1pIYXdBWkFHbDNHUDQ0c1BSeUhIRTVWamdXSlRERVE0RHZvUzdxdzBOd0dxUUZZaStqN0lJVDk0bUpvdW9uYmJNTHRGbFBpc0FXVTRIWFo1UHQ2MkhFR25vVFN6U0IzUi9SSHVnMGdPUm5oRHZDZDUrb1BzMHJsTEFGeU1ZdFN1SUFsc2IzOXNFTkoyRGZ3cHNRRmlQeWdaRU42Q3lBZUpyd1Z0R0pMNkMrT3BWRW8wMkJQanRtaFQ3LzI3T1ByWUxGYTJNQUFBQUFFbEZUa1N1UW1DQ2BcXHJcXG5cXHJcXG5sZXQgcGljX2xpbmsgPSBgZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFRQUFBQUVBQ0FZQUFBQmNjcWhtQUFBQUNYQklXWE1BQUFkaEFBQUhZUUdWdzdpMkFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCM2QzY3VhVzVyYzJOaGNHVXViM0pubSs0OEdnQUFJQUJKUkVGVWVKenQzWGw4RmRYNVAvRFBNM2ZKdnBDRWhKQ0ZCQWxKMkZ4UTYxWVh4SXE0VkVXcHFOalN1dFgrYXF1dFdvWEFKUUd0Mm1ycnQzV3Q0cjVRRlhlaHNyZ1V0UW9vZXdKb1FoWklJQnZaYzVkNWZuOUFrQ1hidlhkbXp0eTU1LzE2K1pJWHlUM25BWEtlT1ROenpuTUlVa2pMckhvb1N1bHF5U1dtWEZXbE5BWlNDQmdLVURMQXlRQ1NHVWdtd0huZ0kwTU8vTjhKSU9iQXI5c0J1QS84dXVuQS83c0JiZ0NvQVVBRGdSdFVVRDBCOVV4VXF5aStDalV5dnJ3NjYvWk9RLzZna2k1SWRBRFN3Q2F1ZWNLeEozcDNQcE15Z1JRZUIxWkdnamtIQ25MQVNCTWFIS0VPNEhLb1ZBR0Z5NkZpSTVnM3BuYWtsNjA5OFNhUDBOaWtBY2tFWURLWlZROUZVVWZiaVZEeEl5YWFvQURqR1R3R1AxekJRNFdiUUZ0VVlDTXhiNENDLzNGMDdCbzVZekFYbVFBRXk5MjRNTTFuOTU0TVlDS0RUZ2ZoREFDUm91UFNpUmZBZWdaV0s0UzFYcS82OGE2eHJrclJRWVV6bVFDTXRzcGx6eDV1UDBWbDMwVUVtZ3pnQklUM3Y4UDNURml1cVB5ZTB6N2tQenZ5YnUwV0hWQTRDZWNmUE1Oa2JIZGxLajdieFFCZkFHQVNmbmo0SmgydURjQUtBRXVabEhlcjgrZlVpQTdJNm1RQzBNbndNbGVLSGNwVVZqRVRoRWtBRk5FeGhSZ1Z3QmNFK2pmRDkrK3FBdGN1MFFGWmtVd0FHaHBlNWtxeHdmWXpxT3AwRUowQk9laTFvZ0w0RktERkt0c1cxeFRlMHlBNklLdVFDVUFEMlZ1TEo2b0tiaVRHVEFCUm91T3h1RzZBM2lFRlQxYm16VmtCSWhZZFVDaVRDU0JBT1p0ZHcxU2I3ZWRNZkQwWW8wVEhFNVlJTzBqbGw3d08yOU83UnMycEVoMU9LSklKd0U4anRoY2Z6ejc2QTRPbkEzQ0lqa2NDQUhnSWVNMm5xSCt0R2UzNlZuUXdvVVFtZ0VIS0xsdHdoZ3IxTG1KY0NQbjNabWFyaWZuK3lvSzU3OG5iZzRISkgrVCtySExaczlKcEpwaitDTUlZMGVGSS9xQk54T3BmS212NUpaemo4b3FPeHF4a0F1Z051NVRzTXByR29BVUFSb3NPUndwS0JUSHVxeXdvZUJvMDNTYzZHTE9SQ2VCUXpKUmRXbndSRTVVQU9GWjBPSkttdGhMaHo1V2oxUmRCTGxWME1HWWhFOEFCbWFVbFV3aTRIK0FKb21PUjlFT2diNWx4VjFWaDBYOUV4MklHWVo4QU1yZVU1SkdDaFFCZktUb1d5VUNNNVdSWGYxZVo1OW9pT2hTUndqWUI1SlM3RXIzZDlDY0MvUjVBaE9oNEpDRThERHptZERqbmZuL01uL2FKRGthRThFc0F6SlM1cmZoNllyb1hRSXJvY0NUeEdOaEQ0RDlWNWM5OU50eGVIWVpWQXNqYVhuSU0rL2dKQXM0VkhZdGtTcC81UURmc0tpZ3FFeDJJVWNJakFheHkyYlBUYmI5aDhFTElyYmhTL3pxSitZRTRsZS9kUE5ibEh2amJRNXZsRTBEMjF1S0pUSGdhOHJXZTVBZG1mR05qOWZxZFkxenJSTWVpSitzbUFIWXAyV1cyM3pMNEFZUmVQVDNKSEx6RXZMQ3lvTERFcW91SUxKa0FobTkyWmRzVWVnRkVaNHFPUlFwOUJId0JSYjIyY3JUcmU5R3hhTTF5QlN1eVMrZGZhYk1wMzhyQkwybUZnVk5aVmI3SkxDMitWblFzV3JQTURDQnQvWU14RVJGZFR6RDRHdEd4U0JaRzlKeXYxWGZMcmhOZEhhSkQwWUlsRWtEbVp0Y29zaWx2QWhndk9oWXBITkFHMkhCNVZWN1JkNklqQ1ZiSTN3SmtscFZNSlp2eUZlVGdsd3pERStEamRWbGxKWmVLamlSWW9Uc0RZS2Jzc2dWM012aGVXQ0NSU1NHSkdmeEFkVDdmRTZvN0RFTXlBYVN0ZnpER0dkSDVDb0NMUmNjaVNRRGVkbmRIWFZOMzdCM3RvZ1B4VjhnbGdCRmJGcWFyaXU5ZEFCTkZ4eUpKaDFpdjJ0U0xhdkpjMWFJRDhVZElKWURzemNWalZSdmVKMkNFNkZna3FSYzFLdUhDbXZ5NTYwVUhNbGdoYysrY1hUYi9YTFpodFJ6OGtvbGwyQmlmWlphV1RCRWR5R0NGUkFMSTNGcDhOVE45Q0NCQmRDeVMxQjhHNGdqOGRsYlovSitKam1Vd1RKOEFNc3ZtMzBDRUZ5QnI4RXVod3dtbWx6Skw1LzlLZENBRE1YVUN5Q29ydm9XWUhvZko0NVNrWHRnSTlGUjJhZkh2UlFmU0g5TU9yT3pTa3J2QStDZE1IS01rRFlBWWVEaXpyR1NlNkVENllzcTNBRm1seFNVQTVvaU9RNUswUW96aXlzSzVwa3NFcGtzQVdhVWxzd0ZlSURvT1NkSWFNZDFUV1ZoMG4rZzREbVdxQkpDNXRlUzNSUHlJNkRna1NUZE1mNndxTFBxcjZEQjZtQ1lCWkcwdC9nVUl6OEJFTVVtU0RwaUpiNnJPbi9lVTZFQUFrd3kyekszRlZ4OTQxU2NmK0VuaHdBZmlhNnJ5NTcwbU9oRGhDU0J6YThuWlJMd01zbTZmRkY0OHBORFV5dEZGeTBVR0lUUUJaRzkzaldHZnNocEFvc2c0SkVtUUZtYWNVVjA0ZDZPb0FJUk51VWRzV1ppdStwUVBJQWUvRkw3aWlmQk83c2FGYWFJQ0VKSUFocTl4UmF2a1d5STM5a2dTY3J3TzMvdHA2eDhVY21DTjhRbUFYWW90Vm5rVmhCOFozcmNrbWRORVowVG5pMkNYNGVQUjhBNnp5c2dGV2NsSGtvNTBhVmFaYmJiUm5ScjZFREI3YThsRlRQdzI1T3MrU2VxTnlrUVhWK2NYZldCVWg0WWxnTXd0SlhtazhGZVFELzBrcVQ5TnNORkpScFVjTitSS25MYit3UmhTOENiazRKZWtnUXlCRDI4T1grT0tOcUl6UXhKQVJFVFhFd0NQTTZJdlNRcDlQTUVXYS91SEVUM3BmZ3VRV1ZwOExRRXY2TjJQSkZrT1lVWlYvdHhYOWUxQ1I4TjNMTWl5ZWRYMUFJYm8yWThrV1ZTelhWV09LeDh6WjZkZUhlaDNDOEF1eGVaVm40Y2MvSklVcUVTdm9yNEFYbXpUcXdQZEVrQldtWElQZ0xQMWFsK1N3c1NQczdlVjNxRlg0N3JjQW1SdkxaN0loQzhnSy9sS2toWThpZzAvMnBrMzl4dXRHOVorQnJES1pXZWlKeUVIdnlScHhhSDZzR2ppbWljMEgxTjJyUnZNR3FiY0NmQUpXcmNybVU4azJYR01Nd1hIT0pOeFRFUUtNdTBKaUxORklGNkpSSndTZ1FSYkpOenNRNmZxMmY5LzlxRFIxNEVxZHpNcVBVMm85RFNqM04yQVhkNFcwWCtVVUhCc1hleWUzd040VU10R05iMEZ5TmpxR3EyUThpMkFLQzNibGN3aHhSNkRVNk55Y0dyMENKd2FQUUlqblNtYS9BRFZlbHV4cHJQcTRIOGJ1M2FETldqWGdqclpwMDZvSHV2YW9WV0QyaVVBWnNvc0sxbE93Q1ROMnBTRXkzQWs0Tkw0Y2Jna2Jpd0tJdElNV1R1KzI5dUNEMXEzNHIzV0xWalhXUzJUd2VFK3Jzb3ZtZ1FpVGY1YU5QdjN6Q3liZndNeFBhbFZlNUk0a1dUSHBmSGpjWG44ZUp3Y25RMUZZT0dvWGQ0V3ZOSzhEaTgwcjBXanIwTllIT2JDdjZ3cW1MZElpNVkwK1pmTktYY2wrcnFWN1FCU3RHaFBFaU5XY1dKNnduSDRkZEpwU0xQSGlRN25NRzcyNGIzV3pmaG53K2ZZN3Q0ck9oeWhHTmpqZERoSGYzL01uL1lGMjVZbUR3RjkzY284eU1FZnNoSnNrYmdsNlhUTVRKeUlXQ1ZDZERpOWNwSU5sOGRQd0tYeDQvRld5eWJjdjNjbGRvZnB3ME1DVXIyZTd0a0E3dFNncmVEa2xMa0tmS3hzZ0h6dEYzSUl3T1h4RXpCNzZHU2sySVZVcEFwWXArckJzODFmNDVHR3o5Q3V1a1dISTRKYlpYVjhUYUZyV3pDTkJMME93TWZLUTVDRFArU01pMHpIbTltejhIRDZUME51OEFOQWxPTEFyNU5Pdy9LY20zRm16RWpSNFlqZ1ZFZ0orcFZnVURPQTdHMGxrMW5sajRJTlFqSU9BWmcxNUdUTUdYb2U3R1NOd2t3TTRObW1yN0J3NzNLNDJTYzZIR014VDZrcW5MY3MwSThIL2hQQVRLenlYd0wrdkdTNFpGc01uc3U4R3E3VTh5MHorSUVma3RyN0k2NUhRVVNxNkhDTVJjcTlZQTc0UWg3d0xxUHNHYmJwQVA1Zm9KK1hqSFZhZEE1ZXpacUpNWkhDU3REckxzVWVnOHZqSjJCemR5MHFQRTJpd3pGS2VuempKK3RiL3ZGeGFTQWZEdXd5d0l0dERMZ0MrcXhrdUV2angrSEZ6R3RDOGw3Zlh6R0tFNHN5WitEcXhQQlpqVTZna2tCTGlnZjBvZXh0VzY4R1VCaklaeVZqelJweUV2NldmcW1scHZ3RHNZSHc1N1FMY2ZmUWMwV0hZZ3pHMkt4dGRHVWdIL1gvRm9BWDJ4THFHMTZGZk85dmFnVGc3cUhuNG82VWMwRGl6NEFWNHFTb0xFUXJUbnpXOGIzb1VBeEFFMXFtbmZVNG52dFk5ZWRUZmw4V3NzcTJYc2RBdnIrZms0eERBRnlwNStQWFNhZUpEa1c0bTVKT3hTMUpwNHNPd3dpak05T1ZxL3o5a0g4SmdKbkE5RWQvTzVHTTB6UDRadzA1V1hRb3BuSFgwRW00T3NINnp3UUl1TlBmTndKK0pZQVIyNHVuZ2pER3Y3QWtvOGpCM3pzQ3NIRFlWRXlPSFMwNkZMMk56eXBkY0o0L0gvQXJBYkJLZi9Bdkhza29jdkQzendiQzM5Si9pbXlIeFd2VUV2czFSZ2VkQURMS2lvOWxXZVRUbE9UZ0g1eDRKUktQRHA4R0orbFdaTmNNZnBLeHpYWGNZTDk1MEFsQVlkd0pndzhUbFFZbUI3OS9Ka1NtWS9iUXlhTEQwSlhpVTI0YjdQY09ha0RuYkhZTjg5bVVTc2hOUDZialNqMGZ2NVNEMzIvWFZyK0VUOXN0KzNyUTdiYXJXWFdqWEhzRytzWkJ6UUJVeFRZTGN2Q2J6aTFKcDh2Qkg2QUZxUmNnZ2pTdmlXc1dUb2ZYOXZQQmZPUEFmd1BNeE50S2Zpa0xzNW5MMlRISDRNNmg1NGdPNHpDMTNsWjg1NjVIdWJzUiszeGRhRkc3QUFDUmlnUHhTZ1JHT0lZZzE1bU1YR2VTMERKakFKRGpUTUxOU2FmaTd3MmZDWTFETHdTK0hzeC9HYWgyNElEL0N0bGw4ODlscHVYYWhTWUZ5MDRLUHNxNUdjYzRrNFhHNFdZZlZyWHZ3TEsyTW56UlVZRWF6K0FxVkNYYW9uQlNWQmJPaXgyTkMySUxrV0NMMURuUzNuV3hGNVBMSDBlbFZUY09LY3BaVmFQbmZOcmZ0d3c0QTJCV2JvQzgvSnZLcGZIamhRNytHczgrL0t2cGYzaTlaVDMyK2JyOC9ueXpyeE1mdFczRFIyM2JNSWMreE5TNFF0eWNkQnJHUkJpN1V6R1M3UGhEeWxuNDNlNjNETzNYS0tTcU53RG9Od0gwT3dQSTJIcHZza0xlR2dEbUxCUVhwcDdMbklGellrWVozbStUcnhNUDFLL0VhL3UraFpmOVduSStJQUp3Zm13QjVxYWVoMHhIb3FadDk4ZkxLczRwZnhRN3JUa0w2Q0szWTNqbGhMdjcvTVAxK3hDUTRKMEJPZmhOSlpMc09DMDZ4L0IrMzJqWmdMUEsvNG1YbXRkcFB2aUIvWFBNcFcybG1GVCtHSjVvL01Ld09hZWRGTnlTYk5tOUFwRndlUHJkSlRoQUF1Q0F0aGhLK2hubWlEZjA2WFdiNnNidmRyK0YyM2EvaldaZnArNzlkYkVYQy9jdXg2enFWOUJrUUg4QWNFWDhCS1RiNHczcHkyZ3FZWHAvWCs4ekFZellzakFkUkpaTmphRnFxTTI0b2g3MTNuWk1yM29lUzFvMkd0Wm5qNVh0T3pDdDhsbERTbjg3eUlhWmlSTjE3MGNFQXM3TzNiaXd6NGNyZlNZQVZ0VHBDS0prbUtTUGJ2WWEwaysxcHhtWFZTN0NwcTdkaHZUWG14M3Vla3lyZkc3UWJ4ZUNjVm44ZU9HdkpuVmk4enA5MC9yNllwOEpRSVhhNzlSQkVtT1B0MDMzUG1vOCsvQ3pxaGRNOFdDczJ0T01tZFV2Qi9TMndSOFpqZ1NjSEoydGF4L0NjTiszQWIwbWdJenRya3dDbmFKZlJGS2c5bmpiZEUwQzFaNW1YRkgxSEtvOHpicjE0YThkN25yOGV0ZnJVSFYrTkRndGZvS3U3UXYwNDZ4UzEvRGV2dEJyQWxCVTVaSyt2aWFKcFlLeHZEMm93MkQ2Vk8xcHhwVlZ6eHN5NWZiWGZ6dks4VlRqbDdyMk1UV3UwS3ExRXhWaTVhSmV2OURydHpPbTZCcU9GSlJYbXIvUi9GcG81c0hmNDRINlZmak8zYUJiKzNGS0JDWkVwdXZXdmtpTTNzZjBVUWxnN0dhWEU0QzVGcGxMaDFuZnRRc2Z0bTdWckwyZWUzNHpEMzRBOExBUEMvYnFleERWYWRHNXVyWXZDaEVtSHhqYmh6a3FBYlE2YkdjQ2lEVWtLaWxnOC9Zc1E2MjNOZWgyekhqUDM1OFZiZHZ4VldlbGJ1MmZMbUNSbFJFWWlOdW4ySTZxRW50VUFtQWZYMkJNU0ZJdzZyeXR1S0ZtTWRxQ09CbDNwNmZKOU5QKzNqeXA0N09BaVZGWmxxMFlwTkRSWTd1M1p3RHkvajlFck8vYWhjc3JGd1cwbSszempncGNzdlBwa0J2OEFMQzhiWnR1Y1VlU0hibUNkMW5xaFlIK0UwRHV4b1Zwc3VwdmFDbnQzb09wRmYvQ1k0MmZvMnNRaTRUMmV0c3dwKzVEWEZ2OWttRkxiYldtZ3ZGZTZ4YmQyaGU5elZwSDQ5SjJ1QTQ3UGZXd1JlVWV1L2VNY0QxRkpwUzFxRjI0Yis4S1BOWDBKWDRTbTQvSk1YbklkU1loelI0UE4zdXgxOXVHemQyMStLaHRPMWEyYjBlbjZoRWRjdENXdHBYaXBxUlRkV2w3bE5PeWgxNlIwMHVuQW5pNzV6Y09Td0FFeUxYL0lhemUyNDZYbTlmaDVlWjF1dmVWNFVqQTFOaENuQjF6REVZNms1RmlqNEdiZmFqenRtSmoxMjZzYU51T2o5cTM2WlpzMW5mdFFxZnFRWlNpZmFXNmtjNGt6ZHMwaXdOanZQY0VBSklKUU9yZlVIc3NmcDk4Sm1Za0hIL1VvcGtJc2lQT0dZRlJ6aFJjRmo4ZWU3eHRlS1RoTTd6VXZCWStqVmN1ZUZuRnQxMjdjR3IwQ0UzYkJZQXNDNThkb0I1eGtULzRMNWhaOVZBVVFJT3VKeTZGbjdFUncvRHVpRjloWnVMRVFhMllTN1hIWWtIYUJYZ3U4MnBkeW41OTU2N1h2RTBBaUZXT2VsMXVHUVNhbUZQdU92aVBjZkJma1RvN1RnSmczVCs1RkpUellrZmpyUkd6TUR5QWZmTm54b3pFa3V4Wm1pY0J2V3I1eFN0aWFoUWFKRUx0Vmc3dWZmNGhqZnRVV1Y5YTZ0V2ttRkY0YlBnVlFSVWlHZVZNd2FQcDB6UmRhOS9nNjlDc3JVUEZXSGdHQUFCTStGSFByMytZQVJDT0ZST09aR2FUWWtiaHlZenBtaXlPK1hITVNGeVZjTHdHVWUzWG9kTUR4bGpGNmxYdzZPQzJ4NE1KZ0EvNVRVa0M5ay83bjlKbzhQZjRYZktQTlh0eXp6cHREOVo3MjdGd2pQRTl2MVFBWU9LYUp4d0FGNGlMU0RLYm5tbS9RK05sc1duMk9FeU8wZWFZYnIydTFHMXF0eTd0bWdlUHhTcVhIVGlRQU9waTZnb2dId0JLQjJnNTdlL051YkhhbERSUDFPbEFFU3NzbEJwQVJIWW1SZ005dHdERWN2b3ZBZEIvOEFQQWhNaGVpOVA0TGRlaHo1TGQ5aUEyV0lVS1ZtazhjR0FoRUJIR1d2MjJ4eWpSaWdNWjlrU2syS1BoWVJWN3ZHMm84VFJydmhCR0QwWU1mbUQvK2dBdDZMVm1mNStxYi8xQlUyQWFCK0MxL2U5MVdCa3BqLzhLbkowVVhCRi9MQzZPRzROVG9rY2NkZC9jNU92RXl2YnRlTGw1SGI3dXJCSVVaZi9PaXgyTngzVzQ1KytOVTROekRSeGt3N0VhelNTT3ROUGRxRXU3SmpNU09MZ1VXTTBkeERtaFVpOG14WXlDSy9WODVQU3pmbnlJTFFyVDRpZGdXdndFckd6Zmp0bDFINXBxRzY1ZUQvejZza2VEUWliSFJRN1haUjhBQUpSN3JKOEFHSndESEhnR3dLQWNjYUdFcmw4T09SblBaRjdWNytBLzBxU1lQTHcvNG5wZDFyQUhRbzlYZlFNcDErQUtPeVZPdjVkVzM0ZkJESUJBdVFDZ3BLMS9NSWFBb2FJRENpVUVZSDdxRkxoU3p3L29NSWtrV3pTZXpaaUJjWUlMVUJwOTVlK3hzbjFIVUo5WFFMZzRicXhHMFJ5dElnd1NBSUJoT2VXdVNDWEMzcGtET2Y4ZnRKN0JQMnZJU1VHMUU2VTQ4SFRHZENUWm9yVUp6RThpcnZ6QS9zS2V5MXBMZzJyanZOalJHR2FQMHlpaXczV3FIbXh6NzlXbGJaTWhkN2R0aEtMYXlSeHowUkJBQUZ5cFUvQ0xJQWQvajNSN1BHNU4vckVtYmZsRDFKVWZBRjVzWG9kZFFaNzNkM1BTVWJVdE5iTzJxeG9lOXVuV3Zwa29RSzRDc0Q2UFVpMkdBSlNrWFJEMGxmOUkxeVpPMU8xcTFodFJWMzRBcVBXMjRwR0d6NEpxWTNMc2FFeU15dFFvb3FOOTJiRlR0N2JOaHFDbUt3cGcyZnBIV3VtWjlsK1hlS0xtYlR2SmhndDBmS0IxS0pGWC9tNzI0c2FheFdqd3RRZmNocE5zS0JwNm5vWlJIZTJMamdwZDJ6Y1RocEtpTU1PeUZSQzFRQUFXcGszVmJOcmZtM05pOG5ScnU0ZklLNytIZmJobDF4djR0bXRYVU8zY05YUVNjblVzMTlXaWRnVWRZMmhSa3hXQVpBTG9ROC9ndjFibnMrUDEvS0VHeEY3NWV3Yi9SMjNCbldjNEtXWVVyaCtpNzNtMUg3UnVEWnY3ZndCUVFNa0t3RElCOUtFazdRTGRCejhBcE5yME80akpxT1c5dmVrWi9NdmF5b0pxSno4aUZZOE12MHozVjFWdnRXelN1UWR6WVVheXdtRDVES0FYdDZXY3BjczlmMjg4ME9lcVk0WEJuK0ZJd0F1WlYrdGVwcXZXMnhwV0R3QUJBSVFVaFpnU1JjZGhOak1USitLMjVETU42NjlPZzZXeFI3TEs0SDh0YTZZaGIwbVd0R3kwZmlHUW85QVFCUVJMVjBEMDE5UzRRaFNuR1hzODRxYXVXazNiczlMZ3p6YWdSTGViZlZqVTlKWHUvWmdQUnlpUWhVQU95blVtNFMvRExvSE40SVdSd1Q0Z081UVZCdjl3ZXp4ZU5XandBOEFiTFJzME9XazVCRVhZR1hES2RjRDdEN1Y0YlBnVmh0ZUUzK3R0dzhyMjdacTBaWVhCYitTVkg5aGYvKytKeGk4TTZjdUVuQW9CVmkrQk9paEZxZWRoVEVTYTRmMyt2ZUV6VGFyYnlzRWZtUGRidCtCN2Q0TmgvWm1NdkFVQTlpK1NNZXFKLzZGV2Q1VGo1WDNCbitNbkIzOWd1dGlMKy9hdU5Ldy9FNUlKSUVweG9EaDFpdUg5VnJnYmNjdXVOK0JsTmFoMjVPQVAzS01OcTFIdGFUYTBUNU9KME82WWxoRDFtNlRUa2VGSU1MVFBTazhUWmxTL2lDWmZaMUR0V0dId0Q3RkY0WlhNYXcwZi9KV2VKanpXK0xtaGZacVJBc0Q2SlZEN2tPTk0wblZyYVc4cVBVMzRXZFVMUVpjRXM4TGd0NU9DeDRkZjZWZEZKUzB3Z0tLNnBlaG1yNkg5bWxCM1dDZUEyVU1uR3pxQTVPQS8zTXpFaVVKS295MXErZ3FyZ3F4S1pCSGRDZ05XUHdhbFYzbk9vZmhKYkw1aC9jbkJmN2dZeFluZkNpaUdzckZyTis3ZHU5endmazJxVzZFd25RSGNrbnlhWWN0OWFqejdNS1BxUlRuNEQzRmU3R2lrMkdJMGFXdXcybFUzYnQyOUJPNHcydkUzQUxjZFlaZ0FNaHdKK0duY09FUDZrbGYrM3AxclFBMkVRL25BdUhYM0Vud1h2dS84ZTlPdGdCRUd4NkFjYmxiaXlacWVVOThYT2ZqN05pNXltS2J0RFdSMjdRZWFMcm0yQnVwV1FHZ1NIWWFSYkNCY0ZxLy8xWCszdDBVTy9uNE0xZWg0c01GNHFQNFRUUlpjV1E2cmpRcUFldEZ4R09uMG1GemRmL2lhZloyWVdmMnlIUHo5ME9KNHNNRjR2bmtOL3Rid3FTRjloUnlGNmhVQVlYVlRkRm44ZUYzYlp3QzMxYjZOYmQzQjFaYTM4dUFIOW0rQzB0c3IrNzdCM0xxbHV2Y1Rxa2lsQm9YQ2FBWVFTWGFjSDZ0dkJkN0hHei9IaXJiZ2R2ZUpMdUI1ODY3WGRSMzhBSFRmZ1BOaTgxcjhxZmE5TUN6eU1YaXNxUFdLR2tZemdCT2lNblhkN2x2aGJzUkQ5WjhFMWNiNHlIVDhjL2kwa0M3Z09SaGFiWUh1emN2NzFtRk8zWWR5NkE5RVZSb1VnTU1tQVp5aTg2cXplWHVXQmJXOE5NVWVnMFVaVnlIU29QdmpReGwxNWUveFlXdXBMdS9qbjI5ZWc3dHIzNWRYL2tIaEJnV2s3QllkaGxGT2lkSXZBWHpWV1JuMDh0TGJrODlDcW9GUHgzc1llZVh2VWV0dHhZdk5helZ0OCtYbWRTaVNWLzVCWTZKYVJWRjhGYUlETVVJRTJYRjhWSVp1N1FlN3N5ekRrWUNyRW83WEtKckJNL3JLZjZoSEdqNEwrcHpBSHM4MmZZMjc2OTZYZzk4UEtsQ3VxSkh4NVlEMS85NEtJbElSb2RQVXVzYXpENnZhZ3J2Nlh4aFhhTWppcEVPSnVQSWZxdEhYZ2V0ckZxTXp5SXBJaTVxK3hydzlTNjMvUTZ3dGRrYjRkaXJWV2JkM01tRDU4NUJIT3ZVNy8rVHQxazFCMzNPZUhUTktvMmdHUitTVi8xQ2J1bmJqNnVvWFVlLzEvOHhBQnZCd3c2ZHd5Y0VmaU4wVnVhNHVCUUNJVVM0NkdyM3B1ZWQ4V1d2d2d5alhZZHllZU5GWC9pT3Q3YXpHeFpWUCsvWDY5SHQzQTM1ZS9USWVydjlFRHY0QU1MZ0NBUGJQaVlrcUFQNlJ3SGgwcDljQWExUGQyTmdkL0hQVVpMc3hPK042cnZ4bUdmdzlhano3TUt2bVZad1VsWVVaQ2NkalVtd2VrbXpSaDMyUG0zMzRzbU1uM21uZGpEZGJOZ1JkVGkyY0tWREtnWU1KZ0wremVob2Q0ZFNuNU5UNnJocE5maERkN05YOTlaL1pydnk5K2JxekNsOTNWc0VHUXJvakFXbjJXRGpKaHIzZWR0UjQ5d1g5dkVEYWo2RitEL1FrQUpVM2dheDlPa0NDVG1mTGJlL1daaUhsWG04YjRwMzZIZEprMWl0L1gzeGdWSHVhdzcxb3AyNEkyQWpzcndrSU1HOFVHbzBCb25WYUFWamhhZFNrbmZWZCtpM0hDSVVydjJRc2hmaUhCRkJWaDFKWXZEUllqRTRKb05tblRUbUZsVUh1SCtpTEVSdDdwSkRUVlRGNnpIYWdad1p3anN0TG9LMUNROUpaRkRsMGFiZGQxU1p2ZnRTK0RYczAzaUZubGxkOWt1bHNCazMzQVQwSkFBQXpieEFYajc0SWdLTFRNdzZ0MnUxVVBYaWs0VE5OMmdMa3RGL3FEeDBjNjRjdVBiUHNjd0FHMEtIcVUvb3dVc09aeFl2TmE3RlNnM0xWY3RvdjlZdDRVODh2ZjBnQUN2NG5KQmlEdEdvMFZUL1NrZStxZzZHQzhidmRTN0RESGZpYmhXNzJ5bW0vMUM5RlZiNDgrT3VlWDBRb2lWL0J3ZzhDMjNSS0FGb2ZhYlhQMTRWTGRqNkQ1UUZNM2V1OHJaaGUrYnljOWt2OTZhWkk3OEVDaVFjVHdJNjhXN3RCL0kyWW1QVFg2dFBuRm1CMFJJcm1iYmFwM2JpaFpqRm0xMzB3cUFlREh2YmgyYWF2TWFYaUtYelRWYU41UEpLVjhOY1Z1YTZEcjY2T1hIcTJHc0FweGdaa2pCcHZNMDZBOXR1Qmo0dk1nSjBVelplbCtzQjRvWGt0WG0vWmdNa3hvM0Z1YkI3R1J3NURtajBPRVdUSEhtOGJ2bmMzWUZYN0RpeHRMZFZzVzYxa2JieC9qQjlrUC9LTEJQekIySkNNc1VPbkduUXhpaE5qSTRaaGZkY3VYZHJ2VkQxNHQzVXozbTNkckV2N2g0cFdISmdVazRlZnhPWmpURVFhVXV3eGlDQTdhcjB0Mk9scHdrZHQyN0NzclN5Z25YdVNPU2pjVHdMdzJIaTEwMnZOSmNIZmFiUmt0emRUNHdwMVN3QkdzSk9DYXhNbjR0YWtIeU9sbDAxSnh6aFRjSXd6QlpOaThqQXY5WHdzYXZvS2p6YXV4ajZORmtGSmhtRzMzZkhsb2I5eFdBV0t1bEd1UFNEb2Y2a1JRTThqb1M2S0d3UEZzSk1HdFpWa2k4YkxtZGVpT0hWS3I0UC9TSkZreDYrVFRzTUhJMjVBUVVTcUFSRktHdHBRbTNmUFliVS9qaTVCdy9qUXNIQU05SjI3WHJkREliTWNpWmdVYSt4WmQxckljQ1RnblJHL0RLaFlhcFlqRVc5bXo4S3hrY04xaUV6U0EvY3l0bzlLQUVSc3laTVV1dGlyNnhQeW01Sk8xYTF0UFdRNEV2RHZyT3VDZW8wWnF6anhWTVowcE5uak5JeE0wdEZSWS91b0JCRG41YzhJYURVbUhtTjkzbEdoVzlzL2lzckdKSU5QdkExVWhpTUJyMlhOUktZak1laTJodG5qTUQvMWZBMmlrblRXa3RhZWRsVGwycU1Td09heExqY0RxNHlKeVZpcjIvV3RmRmFVT2xuSWdSNyswT0xLZjZRTDRnb3hJVEpkcy9Za0hSQ1dyejN4cHFPcXFmUlJocFlzZVJ2d1RWY04yblhhRXdEc2YxcCtSOG81dXJVZnJKN0JyOFdWLzFBRTRPcUVFelJ0VTlJV28vZGIrMTRUQUJPOUE4QnlCZGM4N01PeXRsSmQrN2d4NlJTY0VaMnJheCtCMEd2dzl6ZzNOaTlFMzRPRUJkWG1zNy9YMnhkNlRRRFYrWE5xQUE3dXBBdVRlcU5GMzAyUENnaFBaRnhwcWxka1d0N3o5eVhOSG9kVStURFFsQWo0Wk9lWTJiMlduT3J6SkFwbVpiRitJWW56ZVhzNWFyMzZQdU9NVXlLd0tPTXFYUWZjWUkxd0ROSDhucjh2YVFLT05aTUd4a0NmWTduUEJHQlhmZjhHb00rTGM0RjhZQ3pSZVJZQTdML3F2cEg5YzR4eWFyOVphTERHUjZaalNmWXN3eEtSWGljdlNVSHh1ZTNxbTMxOXNjOEVVREhXVlF0QXV4STFKdkpDODFwRGFzcW4yK1B4UnZZdmhMd2V2Q0xoV0N6T3VtNVFxL3Uwb25WSk0wa0RoSlYxbzF4Nyt2cnlBSWZSa1NWdkE2bzl6WWJNQWdCZ2lDMEtpekt2d3V5aGt4R2w2Rk9YOEZESnRtajhQZjFTUERUc0V0MEtvZmFtaTczWUxYY2ttZzR6djliZjEvdE5BQ3JiRmdPdzVJNlBSeHRYdzJmUWFTaUUvU3NGVitUY2pDbXhCYm84TFhlU0RiT0duSVNQYzMrRHkrTEg2OUJELzFhM2wrdTIxRm9LV0tmaWR2WTUvUWNHU0FBMWhmYzBnUEdXdGpHWnczZnVCbnpZYW13aDVFeEhJcDdNdUJJZjV0eUlTK1BId2FuQm9xRWh0aWpjbEhRcVZvLzhMZWFuVGtHQ1RiL0RSZnJ6YnVzV0lmMUsvV0Q4dTNMQzNVMzlmY3VBRjZNUnBTV1RWUEFLN2FJeWoxdytRWnlzQUFBTURVbEVRVlJuRXY2VGM1T3doMWN0YWhjK2JDM0Y4clp0K0xxekNvMitqa0Y5THNlWmhGT2lSdUQ4Mkh5Y0ZYT000Y2VLSDJtSHV4N25sVDl1Mkl4S0dpVENtVlg1Yy90OWpqZndiSlNac3NwS3lnQ0V4a0ozUDkyZWNoWituM3ltNkREQUFDcmNqU2ozTkdLbnV4RnRxaHR0YWpjSWhBUmJKQkp0VWNoMUpHR1VNOFhRQjNzRDhZRnhYZlhMK0t6OWU5R2hTSWZiVnBWZlZBQ2lmclB5d0pjK0lxYXk0bWVZY1o5bW9abklQeHIraTB2aXhtS2tNMWxvSElUOU01SmNaeEpnbnZFOW9QdjNycENEMzR3WVR3MDArSUVCM3dMc1ozUGJGZ0d3NUxHc2J2WmgvcDcvaUE0akpEM1Q5QlVlYi94Q2RCalMwZHh1aC9yOFlMNXhVQW1nZlB6c09nTDZmWjBReWxhMTc4QUx6V3RGaHhGU25tbjZDdlAzTEJNZGh0UWJ3c3Y5dmZzLzFLQ2ZIcWxRSHdTcys1Um4vcDVsMktqakNiMVc4bEx6T3N6ZnM4eTZQd3doVGdYK050anZIWFFDcUM1d2JRRERrbThEZ1AyM0FyZnNla08zRTRTczRxWG1kYmluN24wNStNMXJhVTMrM1BXRC9XYS8zaDh4MFYvOWp5ZDA3UFEwNGZiZGI4dlhXWDFZMVBTMUhQd21SOFIvOGV2Ny9lMGdxN1Q0V3dESCt2dTVVSEpONGdtNEwrMUMwV0dZeXN2TjYzQzNIUHdtUnh1cTh1Y2NONWluL3ozOFhrRkN6QS83KzVsUTgxTHpPanhZYjhtcWFBR1JnejgwTVBQOS9neCtJSUFFVUZsUStDSUJsajk2OXY4YS9vdW5teXg5WVBLZ1BOYjR1Uno4b1dGYmRVR0IzMi9xL0Y5RFN0TjlLcmpFNzgrRm9PSTkvOEhERForS0RrTUlCbkR2M3VXNGIrOEtPZmhEQUlIbmdLYjd2UnNyb0VYazFmbjhDa0FiQXZsc0tHRUFEOWQvZ2ovV3ZtdEkvUUN6OExBUHQrNWVJaGY1aEF6YVZKblBid1R5eWNCMmtaQkxKU0FzWmdFQXNIamZ0N2hoMTJKMHFKWmNESG1ZUGQ0MlhGdjlFdDV1MlNRNkZHblExRGtnVjBCWHFNQzNwak5UZHRtQ2RRdytMdUEyUXN3b1p3citiL2hsR0JzeFRIUW91dmk4b3dLMzdsNGlLL3VFbHJWVitVVW4rZnZ3cjBmZyswaUpHS1QrTWVEUGg2QWQ3bnI4ZE9jemVLenhjNmdXdWpQMnNvcUhHejdGMVZVdnlzRWZZa2psdXdNZC9FQXdNNEFEc2txTDN3RndjYkR0aEpwellrYmh6OE11UkxvOVhuUW9RVm5UV1lXaXVxWFkzRjByT2hUSlg0UTNxL0xuVGd1bWllQXJTZGpvTmdCaHQzNTJWZnNPbkYzK0tPN2J1MExYMDRiMDB1VHJoR3ZQTWx4Uitad2MvS0hKelQ3NlU3Q05hRktlTHF1MCtFRUFZWFU3Y0tqaDluamNQZlJjWEJJL3p2U240N1NxM1hpdTZXczgxdmk1M1BjUXlvanZxOHFmZDAvUXpXZ1JTMHJwL1hGUjZONEd3SnBQeHdZcHg1bUVXWWtuNGFxRTR3MnBBT3lQQmw4SG5tOWVnMmVhL29kOVBrdldlUTBmaExvSVJSMjlJODhWZEJsbXpTNVlXYVh6WndIMGpGYnRoYkprV3d5dUczSWlaaVFjajJFQ2o4dFN3Zml5WXllV3RHekUyeTJiME1WZVliRkkyaUhpNnlyejU3MmdTVnRhTkFKZ2YrM0EwcEwvZ0RCWnN6WkRuQUxDQ1ZHWnVDaHVES2JHRlJxU0RGUXd0blRWNHAzV3pYaTdaYk9zMVc4eEJLeXF6Qzg2TjVnbi8wZTBwNTBScFNXNUtuZ2pRcXFxblRFVUVNWkZEc09KVVZrNEtTb0xFNk95TkVrSUtoamZ1ZXZ4ZWNkT2ZORlJnUzg3ZGc2NnVyQVVjanBnb3dsVmVVWGZhZFdnNXMrc3NrdEw3bUx3bjdWdTE0b3lIQW5JY1NRaDI1R0liTWNRWkRrVGtXU0xSaFE1NENRYm9oVUhIR1JEaTY4TExXbzM5dm02MEtKMm9kclRqTy9jRFFmK3E1Y0hjb1FMcGo5V0ZSWnBXcE5EKzRmV3ExejJySFRsU3dBVE5XOWJrc0lVZ2I2dDNPMDdDZWU0TkgyUW8vMkpFdWU0dklxcTNnaUxWaEdXSkFIY1B1SmZhRDM0QVQwU0FJQ2RZMXpyd0hEcDBiWWtoUnNHaXZ5cDgrY1AzYzZVcWlwUS8weUFMS3NqU2NGZy9yUTZ2MEMzV3B6NkhTcEhMdFZuVTY4RDBLaGJINUprYmMwK2xXY0dVdWhqc0hROVZiSW16MVZOb0p2MDdFT1NMSXY0NWwxalhaVjZkcUg3c2JLVkJVV3ZnK2c1dmZ1UkpDc2hwcWVxOHVmcGZocVhJZWRLMjV5K213RmFaMFJma2hUcUNQU3RHaHZ6T3lQNk1pUUJWT1M2dXV3cVhRNmd3WWorSkNtRU5SSndlWFhXN1oxR2RHWklBZ0NBOGpGemRwTEtNd0RJWld1UzFEdVZRZGZzTENncU42cER3eElBQUZTT21mY1JFNFZOTVZGSjhnY3h6YWt1S0ZwcVpKK0dKZ0FBcUI3dEt3SHd0dEg5U3BLWkVmQkdaY0Vjdy9mUUdKNEFRQzZWWTJKbmdQaEx3L3VXSkZQaU5kM2RVVC9YYW91dlA0eFBBQUNxczI3djlDaU9Td0JvdHExUmtrSlV1ZDFqdjZqdTJEdmFSWFF1SkFFQVFHM2VQWHNWaFM0RzBDUXFCa2tTck5GRzZ0VHk4YlByUkFVZ0xBRUF3TTdSUlZ1WmNSbkNzS3F3RlBZOFJEeTlJdDlWS2pJSW9Ra0FBS29MNTM0QzRwOUR2aDZVd29lUFFGZFg1czliSVRvUTRRa0FBS3J5NTcxR3pMOENFRDRuY0VyaGlwbHdjMlZCMGV1aUF3Rk1rZ0FBb0xKdzNuTWd1bFYwSEpLa0s2SS9WT2ZQL1pmb01IcVlKZ0VBUUZWKzBUOUJkTHZvT0NSSkQwUzR1eXEvNkdIUmNSektWQWtBQUtyeWl4NG1SckhvT0NSSlM4UTh2ekovcnVtSzVacjJKQ3RaWFZpeUNpYk1xODZmYThxTG1ta1RBQUJrbFJiZkRPQ2ZNT0ZNUlpJR2dRbDBXMlZCMGQ5RkI5SVhVeWNBQU1nc25YOE5nWjRGWUJjZGl5VDV3UWZ3RFZVRjh4YUpEcVEvcGs4QUFKQlZOdjluWUhvZWdGTjBMSkkwQ04wRXV0WXNyL3I2RXhJSkFBQ3lTNHRQWitBdEFDbWlZNUdrZmpReDArWFZoVVVmaXc1a01FSW1BUUJBNW1iWEtMSXBId0RJRXgyTEpQV2kzRWJxVk5ITGUvMFJVZy9YcXNlNmR2aElQUTNBYXRHeFNOTGgrQ3U3eDNacUtBMStJTVFTQUFEc3luZlYrOXJVbjRDeFJIUXNrZ1RzTCtiQk1YRm5pOXpWRjZpUXVnVTRERE5sbHkyNGs4RUxBZGhFaHlPRkpXYndBOVg1ZkEvSUZaTDdXRUkzQVJ5UVVUci9IQUs5U2tDcTZGaWtzTklBNW11cUN1Y3RFeDFJTUVJK0FRREE4QjBMc214ZTlRMEFKNG1PUmJJK1pueGpJNXBtWlBWZXZZVGNNNERlN0JvMXA0cGpZczhDeU5TTExxVFFSMHhQMlNQVjA2d3crQUdMekFBT2xibDEvalFpZWhKQWt1aFlKRXZaQitaZlZ4WE9lMFYwSUZxeVhBSUFEdDRTUEEvZ2JOR3hTS0dQZ0ZVK20zcGRUWjZyV25Rc1dyTmtBZ0RRODViZ1ZnWS9BTG1FV0FxTWw1Z1hWaFp3Y2FnKzVSK0lkUlBBQVNPMkZ4K3YrdWhmQUo4Z09oWXBsUEFhbGVqNm12eTU2MFZIb2lmTEp3QUF3Q3FYUFR2ZDloc0dMd0FRS3pvY3lkUTZDVFMvTWovL0w2RHBsaTlVR3g0SjRJRHNiYTZSek1yallKd25PaGJKbEQ1UldiMnhwdEMxVFhRZ1JnbXJCQUFBWUthc3N1SmZnT2crTU5KRWh5T1pRaTBSN3FyTW4vdTg2RUNNRm40SjRJQzA5US9HUkRnNzdtQ2l1d0JFaW81SEVzTER3R09STnJWb1I1NnJSWFF3SW9SdEF1aXhmNHV4N1Y2QXJ4UWRpMlFjSnJ4SEN2MitLcThvck0rbkRQc0UwQ043Vzhsa1ZuRy9mRnRnZGJ4R2dYTFh6b0tpbGFJak1RT1pBSTZRdmExa3N1cmpCNGh3dk9oWUpBMFJOaDhvemYyNmlHTzR6VW9tZ040d1UzWnA4VVZNeWdLQUo0Z09Sd3JLVmlMOHVYSjB3VXZoOEZyUFh6SUI5SWNYMnpMTFNtY1E2QTZaQ0VJTGdiNVZtUitzTGxCZnRlb3FQaTNJQkRCSTJXVUx6bENoM2tXTUN5SC8zc3hzTlRIZlgxa3c5ejA1MVIrWS9FSDJVMmFwYXdLeDhnY1Fyb0xjWTJBV2JoQzl3aXIvdGJwdzdrYlJ3WVFTbVFBQ2xMM2h2aUZ3ZUs1a290OENQRTUwUEdGcUc0R2U2YmI3RnRXTmN1MFJIVXdva2dsQUE5bGJpeWVxQ200a3hqVUFZa1RIWTNIZEFMMURDcDZzekp1elFrN3pneU1UZ0laNlpnVXFZVHJ0cjBVZ2k1VnF3d2ZHS2xid210MnB2bDZSNjJvV0haQlZ5QVNnazR5dDl5YmJGTytGS25BbE1hWkFubTNvTHhYQUZ3VDZ0K0x6dlZZeDFsVXJPaUFya2duQUFGbWxydUhFeWtVTVRDSENaQWJpUk1ka1VpMGdMR2Z3VXB2UC90N09NYk4zaXc3STZtUUNNTmpFTlU4NGFtTnJ6N0NCcGpCb2lseGZnUFVNWGdwV2xxYTFwNjVlZStKTkh0RUJoUk9aQUFRYnRkMFY3MmJieWZDcFp6RG9kQkRPZ0hWM0ozb0JyR2RndFFMK3I5dm0rTGcyNzU2OW9vTUtaeklCbUV4T3VTdFNkZHRQWktnbkF6UUJqUEVBandVUUlUbzJQM1VCdEFYRUd3QnNKTWIvbkxiRU5UdnlidTBXSFpqMEE1a0FRc0VxbDMxRWhpMVBaWFVDbU1ZQkdNbmdIQUxsQWtnWEhOMXVCcGNyVU1vWjZ2Y0Uya1FLYmR4WjQ5dU9jMXhld2JGSkE1QUpJTVRsbExzaTRVYU9GNVJMakdGZ1NtYmlGSUtTQW5BeWdHU0FoZ0FjZmVBajhkai9ldEtCSCtvanRnSHdBUEFCT0ZBWWd6b0FiZ0xRQUZBRE0rOGxvQUZBUFJQVjJzbFhBU2NxS25KZFhRYitjU1dOL1g4VWtJdVBlUThwL3dBQUFBQkpSVTVFcmtKZ2dnPT1gXFxyXFxuXFxyXFxuJC5leHBvcnRzID0ge1xcclxcbiAgICBwaWNfaG9tZSxcXHJcXG4gICAgcGljX3NoYXJlLFxcclxcbiAgICBwaWNfcmVjeWNsZSxcXHJcXG4gICAgcGljX2xpbmtcXHJcXG59XFxyXFxuXCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJGaXhUYWJcIixcInBhdGhcIjpcIkZpeFRhYlwiLFwicnVsZVwiOlwidmFyIHsgZ2V0X3VzZXJfYmFzZV9pbmZvLCBnZXRfdXNlcl92aXBfaW5mbywgZ2V0X3VzZXJfc3RvcmFnZV9pbmZvLCBnZXRfdXNlcl9pbnZpdGVDb2RlLCBzdWJfcmVhZF9sb2NhbCB9ID1cXHJcXG4gICAgJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG52YXIgeyBzZWFyY2hfYmFyIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9TZWFyY2hCYXJBbmRDYXRlZ29yeScpXFxyXFxudmFyIHsgZ2VuZXJhdGVfcGF0aHMsIGdlbmVyYXRlX290aGVyX3NoYXJlX3BhdGhzLCBnZW5lcmF0ZV9ob21lX2NhdGVnb3J5X3BhdGhzLCBnZW5lcmF0ZV9kb3dubG9hZF9wYXRocyB9ID1cXHJcXG4gICAgJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvUGF0aCcpXFxyXFxudmFyIHsgaW52aXRlX2dvIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9JbnZpdGUnKVxcclxcbnZhciB7IHN0eWxlX2NvbG9yLCBkZWJ1Z19sb2cgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0RlYnVnJylcXHJcXG5cXHJcXG5mdW5jdGlvbiBmaXhfdGFiKHJlcykge1xcclxcbiAgICAvLyDnlKjmiLfkv6Hmga9cXHJcXG4gICAgbGV0IHVzZXJfYmFzZV9pbmZvID0gZ2V0X3VzZXJfYmFzZV9pbmZvKClcXHJcXG4gICAgbGV0IHVzZXJfdmlwX2luZm8gPSBnZXRfdXNlcl92aXBfaW5mbygpXFxyXFxuICAgIGxldCB1c2VyX3N0b3JhZ2VfaW5mbyA9IGdldF91c2VyX3N0b3JhZ2VfaW5mbygpXFxyXFxuICAgIGxldCB1c2VyX3N0b3JhZ2VfbGltaXQgPSAnMFRCJ1xcclxcbiAgICBsZXQgdXNlcl9zdG9yYWdlX3VzYWdlID0gJzBUQidcXHJcXG5cXHJcXG4gICAgLy8gcHV0TXlWYXIoJ3Nob3dfZW1haWwnLCAnMCcpXFxyXFxuXFxyXFxuICAgIGlmIChnZXRJdGVtKCdhY2Nlc3NfdG9rZW4nLCAnJykgPT0gJycpIHtcXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICB0aXRsZTogYOaCqOi/mOacqueZu+W9le+8jOivt+eCueWHu+i/m1xcXCLorr7nva4t5re75Yqg6LSm5Y+3XFxcIuaIluiAheWIt+aWsOS4gOS4i2AsXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICdhdmF0YXInLFxcclxcbiAgICAgICAgICAgIHBpY191cmw6IGBodHRwczovL215cGlrcGFrLmNvbS9mYXZpY29uLTMyeDMyLnBuZ2AsXFxyXFxuICAgICAgICAgICAgdXJsOiAnaGlrZXI6Ly9wYWdlL0FjY291bnRTZXR0aW5nI25vSGlzdG9yeSMjbm9SZWNvcmRIaXN0b3J5IycsXFxyXFxuICAgICAgICB9KVxcclxcbiAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgLy8g6Ieq5Yqo5Yi35paw6YKA6K+35LiA5qyhXFxyXFxuICAgICAgICBpZiAoZ2V0SXRlbSgnYXV0b19yZWZyZXNoX2ludml0ZScsICcwJykgPT0gJzEnKSB7XFxyXFxuICAgICAgICAgICAgaWYgKHVzZXJfdmlwX2luZm8uYmFzZS52aXBfc3RhdHVzID09ICdpbnZhbGlkJykge1xcclxcbiAgICAgICAgICAgICAgICBsZXQgaW52aXRlX3JlcyA9IGludml0ZV9nbyhnZXRfdXNlcl9pbnZpdGVDb2RlKCkuY29kZSlcXHJcXG4gICAgICAgICAgICAgICAgaWYgKCEoaW52aXRlX3JlcyA9PSAnaW52aXRlIGxpbWl0JykpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgIH0gZWxzZSB7XFxyXFxuICAgICAgICAgICAgICAgIGRlYnVnX2xvZygn5bey57uP5pivUHJlbWl1bemrmOe6p+eUqOaIt++8jOaXoOmcgOWIt+aWsOmCgOivtycpXFxyXFxuICAgICAgICAgICAgfVxcclxcbiAgICAgICAgfVxcclxcbiAgICAgICAgLy8gdXNlcl9iYXNlX2luZm8ubmFtZSA9ICfnsonlprknXFxyXFxuICAgICAgICAvLyBzdHlsZV9jb2xvcih1c2VyX3N0b3JhZ2VfbGltaXQgKyAnLycgKyB1c2VyX3N0b3JhZ2VfdXNhZ2UgKyAnICcsICcjZmZmZmZmJywgJ3NtYWxsJylcXHJcXG4gICAgICAgIHVzZXJfc3RvcmFnZV9saW1pdCA9IE51bWJlcih1c2VyX3N0b3JhZ2VfaW5mby5xdW90YS5saW1pdCkgLyAxMDk5NTExNjI3Nzc2XFxyXFxuICAgICAgICB1c2VyX3N0b3JhZ2VfdXNhZ2UgPSBOdW1iZXIodXNlcl9zdG9yYWdlX2luZm8ucXVvdGEudXNhZ2UpIC8gMTA5OTUxMTYyNzc3NlxcclxcbiAgICAgICAgZnVuY3Rpb24gZm9ybWF0TnVtYmVyKG51bWJlcikge1xcclxcbiAgICAgICAgICAgIGNvbnN0IHJvdW5kZWROdW1iZXIgPSBNYXRoLnJvdW5kKG51bWJlciAqIDEwMCkgLyAxMDBcXHJcXG4gICAgICAgICAgICByZXR1cm4gcm91bmRlZE51bWJlci50b1N0cmluZygpXFxyXFxuICAgICAgICB9XFxyXFxuICAgICAgICB1c2VyX3N0b3JhZ2VfbGltaXQgPSBmb3JtYXROdW1iZXIodXNlcl9zdG9yYWdlX2xpbWl0KSArICdUQidcXHJcXG4gICAgICAgIHVzZXJfc3RvcmFnZV91c2FnZSA9IGZvcm1hdE51bWJlcih1c2VyX3N0b3JhZ2VfdXNhZ2UpICsgJ1RCJ1xcclxcbiAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgIHRpdGxlOiBgJHtcXHJcXG4gICAgICAgICAgICAgICAgdXNlcl92aXBfaW5mby5iYXNlLnZpcF9zdGF0dXMgIT0gJ2ludmFsaWQnXFxyXFxuICAgICAgICAgICAgICAgICAgICA/IHN0eWxlX2NvbG9yKHVzZXJfYmFzZV9pbmZvLm5hbWUsICcjNTU5M0Y1JywgJ3N0cm9uZycpLnJlcGxhY2UoJ+KAmOKAmOKAmeKAmScsICcnKSArXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICcgKCcgK1xcclxcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZV9jb2xvcign6auY57qn55So5oi3JywgJyMyNEJCNzUnLCAnc21hbGwnKS5yZXBsYWNlKCfigJjigJjigJnigJknLCAnJykgK1xcclxcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZV9jb2xvcignICcgKyB1c2VyX3N0b3JhZ2VfdXNhZ2UgKyAnLycgKyB1c2VyX3N0b3JhZ2VfbGltaXQsICcjREMxNDNDJywgJ3NtYWxsJykucmVwbGFjZShcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICfigJjigJjigJnigJknLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJydcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgKSArXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICcpJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgOiBzdHlsZV9jb2xvcih1c2VyX2Jhc2VfaW5mby5uYW1lLCAnIzU1OTNGNScsICdzdHJvbmcnKS5yZXBsYWNlKCfigJjigJjigJnigJknLCAnJykgK1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAnICgnICtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGVfY29sb3IoJ+WPl+mZkCcsICcjQzYxODE2JywgJ3NtYWxsJykucmVwbGFjZSgn4oCY4oCY4oCZ4oCZJywgJycpICtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGVfY29sb3IoJyAnICsgdXNlcl9zdG9yYWdlX3VzYWdlICsgJy8nICsgdXNlcl9zdG9yYWdlX2xpbWl0LCAnI0RDMTQzQycsICdzbWFsbCcpLnJlcGxhY2UoXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAn4oCY4oCY4oCZ4oCZJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICcnXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICkgK1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAnKSdcXHJcXG4gICAgICAgICAgICB9YCxcXHJcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ2F2YXRhcicsXFxyXFxuICAgICAgICAgICAgcGljX3VybDogYGh0dHBzOi8vbXlwaWtwYWsuY29tL2Zhdmljb24tMzJ4MzIucG5nYCxcXHJcXG4gICAgICAgICAgICBkZXNjOiBg6LSm5Y+36K6+572u4pqZYCxcXHJcXG4gICAgICAgICAgICB1cmw6ICdoaWtlcjovL3BhZ2UvQWNjb3VudFNldHRpbmcjbm9IaXN0b3J5IyNub1JlY29yZEhpc3RvcnkjJyxcXHJcXG4gICAgICAgIH0pXFxyXFxuXFxyXFxuICAgICAgICAvLyDmkJzntKLmoI9cXHJcXG4gICAgICAgIHNlYXJjaF9iYXIocmVzKVxcclxcblxcclxcbiAgICAgICAgLy8g6Ze06ZqU5qCPXFxyXFxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDU7IGkrKykge1xcclxcbiAgICAgICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICAgICAgY29sX3R5cGU6ICdibGFua19ibG9jaycsXFxyXFxuICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgIH1cXHJcXG5cXHJcXG4gICAgICAgIC8vIOWFtuS7luS6uuWIhuS6q+iuoumYhVxcclxcbiAgICAgICAgaWYgKGdldE15VmFyKCdzaG93X2luZGV4JywgJzAnKSA9PSAnMScpIHtcXHJcXG4gICAgICAgICAgICBnZW5lcmF0ZV9vdGhlcl9zaGFyZV9wYXRocyhyZXMsIHN1Yl9yZWFkX2xvY2FsKCkpXFxyXFxuICAgICAgICB9IGVsc2UgaWYgKGdldE15VmFyKCdzaG93X2luZGV4JywgJzAnKSA9PSAnMCcpIHtcXHJcXG4gICAgICAgICAgICBnZW5lcmF0ZV9ob21lX2NhdGVnb3J5X3BhdGhzKHJlcylcXHJcXG4gICAgICAgIH0gZWxzZSB7XFxyXFxuICAgICAgICAgICAgZ2VuZXJhdGVfZG93bmxvYWRfcGF0aHMocmVzKVxcclxcbiAgICAgICAgICAgIHNldFByZVJlc3VsdChyZXMpXFxyXFxuICAgICAgICAgICAgcmV0dXJuXFxyXFxuICAgICAgICB9XFxyXFxuXFxyXFxuICAgICAgICAvLyDpnaLljIXlsZHot6/lvoQo5oyJ6ZKuKVxcclxcbiAgICAgICAgLy8gZ2VuZXJhdGVfcGF0aHMocmVzKVxcclxcbiAgICAgICAgLy8gbGV0IHBhdGhzX2tpbmRfcHJlID0gWydwYXRocycsICdzaF9wYXRocycsICdkb3dubG9hZF9wYXRocyddXFxyXFxuICAgICAgICBsZXQgcGF0aHNfa2luZF9wcmUgPSBbJ3BhdGhzJywgJ3NoX3BhdGhzJ11cXHJcXG4gICAgICAgIGxldCBwYXRoc19raW5kID0gcGF0aHNfa2luZF9wcmVbZ2V0TXlWYXIoJ3Nob3dfaW5kZXgnLCAnMCcpXVxcclxcbiAgICAgICAgbGV0IHNob3dfdGl0bGVzID0gWyfwn5OEJywgJ/Cfjp7vuI8nLCAn8J+WvO+4jyddXFxyXFxuXFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgLy8g8J+Onu+4jyDwn5OEIPCflrzvuI9cXHJcXG4gICAgICAgICAgICAvLyB0aXRsZTogZ2V0TXlWYXIoJ2xpc3Rfc2hvd19zdHlsZScsICcwJykgPT0gJzAnID8gJ/Cfk4QnIDogJ/CflrzvuI8nLFxcclxcbiAgICAgICAgICAgIHRpdGxlOiBzaG93X3RpdGxlc1tnZXRNeVZhcignbGlzdF9zaG93X3N0eWxlJywgJzAnKV0sXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICdmbGV4X2J1dHRvbicsXFxyXFxuICAgICAgICAgICAgdXJsOiAkKFsn8J+ThCDliJfooajmqKHlvI8nLCAn8J+Onu+4jyDnvKnnlaXlm77mqKHlvI8nLCAn8J+WvO+4jyDmvKvnlLvmqKHlvI8nXSwgMSwgJ+ivt+mAieaLqea1j+iniOaWueW8jycpLnNlbGVjdCgoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgIC8vIE1ZX0lOREVYXFxyXFxuICAgICAgICAgICAgICAgIC8vIGxldCBsaXN0X3Nob3dfc3R5bGUgPSBnZXRNeVZhcignbGlzdF9zaG93X3N0eWxlJywgJzAnKVxcclxcbiAgICAgICAgICAgICAgICAvLyBsaXN0X3Nob3dfc3R5bGUgPSBOdW1iZXIobGlzdF9zaG93X3N0eWxlKSArIDFcXHJcXG4gICAgICAgICAgICAgICAgLy8gaWYgKGxpc3Rfc2hvd19zdHlsZSA+IDIpIHtcXHJcXG4gICAgICAgICAgICAgICAgLy8gICAgIGxpc3Rfc2hvd19zdHlsZSA9IDBcXHJcXG4gICAgICAgICAgICAgICAgLy8gfVxcclxcbiAgICAgICAgICAgICAgICBwdXRNeVZhcignbGlzdF9zaG93X3N0eWxlJywgTVlfSU5ERVgpXFxyXFxuICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcclxcbiAgICAgICAgICAgIH0pLFxcclxcbiAgICAgICAgICAgIC8vIHVybDogJCgpLmxhenlSdWxlKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAvLyAgICAgbGV0IGxpc3Rfc2hvd19zdHlsZSA9IGdldE15VmFyKCdsaXN0X3Nob3dfc3R5bGUnLCAnMCcpXFxyXFxuICAgICAgICAgICAgLy8gICAgIGxpc3Rfc2hvd19zdHlsZSA9IE51bWJlcihsaXN0X3Nob3dfc3R5bGUpICsgMVxcclxcbiAgICAgICAgICAgIC8vICAgICBpZiAobGlzdF9zaG93X3N0eWxlID4gMikge1xcclxcbiAgICAgICAgICAgIC8vICAgICAgICAgbGlzdF9zaG93X3N0eWxlID0gMFxcclxcbiAgICAgICAgICAgIC8vICAgICB9XFxyXFxuICAgICAgICAgICAgLy8gICAgIHB1dE15VmFyKCdsaXN0X3Nob3dfc3R5bGUnLCBsaXN0X3Nob3dfc3R5bGUpXFxyXFxuXFxyXFxuICAgICAgICAgICAgLy8gICAgIC8vIGlmIChsaXN0X3Nob3dfc3R5bGUgPT0gJzAnKSB7XFxyXFxuICAgICAgICAgICAgLy8gICAgIC8vICAgICBwdXRNeVZhcignbGlzdF9zaG93X3N0eWxlJywgJzEnKVxcclxcbiAgICAgICAgICAgIC8vICAgICAvLyB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgIC8vICAgICAvLyAgICAgcHV0TXlWYXIoJ2xpc3Rfc2hvd19zdHlsZScsICcwJylcXHJcXG4gICAgICAgICAgICAvLyAgICAgLy8gfVxcclxcbiAgICAgICAgICAgIC8vICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgLy8gICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXHJcXG4gICAgICAgICAgICAvLyB9KSxcXHJcXG4gICAgICAgIH0pXFxyXFxuICAgICAgICBsZXQgbGlzdF9zaG93X3NvcnQgPSBnZXRNeVZhcignbGlzdF9zaG93X3NvcnQnLCAnMCcpXFxyXFxuICAgICAgICAvLyBsZXQgbGlzdF9zaG93X3NvcnRfdGl0bGVzID0gWyfwn5OWIOKsh++4jycsICfwn5OWIOKshu+4jycsICcw77iP4oOjIOKsh++4jycsICc577iP4oOjIOKshu+4jycsJ+KPsu+4jyDirIbvuI8nLCAn4o+y77iPIOKsh++4jycsICfwn5OmIOKshu+4jycsICfwn5OmIOKsh++4jyddXFxyXFxuICAgICAgICBsZXQgbGlzdF9zaG93X3NvcnRfdGl0bGVzID0gWyfwn5OWIOKsh++4jycsICfwn5OWIOKshu+4jycsICfij7LvuI8g4qyG77iPJywgJ+KPsu+4jyDirIfvuI8nLCAn8J+TpiDirIbvuI8nLCAn8J+TpiDirIfvuI8nXVxcclxcbiAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgIHRpdGxlOiBsaXN0X3Nob3dfc29ydF90aXRsZXNbbGlzdF9zaG93X3NvcnRdLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnZmxleF9idXR0b24nLFxcclxcbiAgICAgICAgICAgIHVybDogJChcXHJcXG4gICAgICAgICAgICAgICAgW1xcclxcbiAgICAgICAgICAgICAgICAgICAgJ/Cfk5Yg5ZCN5a2XKDAvQS0+OS9aKScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAn8J+TliDlkI3lrZcoOS9aLT4wL0EpJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICfij7LvuI8g5pe26Ze0KOaXpy0+5pawKScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAn4o+y77iPIOaXtumXtCjmlrAtPuaXpyknLFxcclxcbiAgICAgICAgICAgICAgICAgICAgJ/Cfk6Yg5aSn5bCPKOWkpy0+5bCPKScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAn8J+TpiDlpKflsI8o5bCPLT7lpKcpJyxcXHJcXG4gICAgICAgICAgICAgICAgXSxcXHJcXG4gICAgICAgICAgICAgICAgMixcXHJcXG4gICAgICAgICAgICAgICAgJ+ivt+mAieaLqeaOkuW6j+aWueW8jydcXHJcXG4gICAgICAgICAgICApLnNlbGVjdCgoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgIHB1dE15VmFyKCdsaXN0X3Nob3dfc29ydCcsIE1ZX0lOREVYKVxcclxcbiAgICAgICAgICAgICAgICAvLyAkLmxvZyhnZXRNeVZhcignbGlzdF9zaG93X3NvcnQnLCAnMCcpKVxcclxcbiAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXHJcXG4gICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgIH0pXFxyXFxuICAgICAgICBnZW5lcmF0ZV9wYXRocyhyZXMsIHBhdGhzX2tpbmQsICdIb21lJylcXHJcXG4gICAgfVxcclxcbiAgICBzZXRQcmVSZXN1bHQocmVzKVxcclxcbn1cXHJcXG5cXHJcXG4kLmV4cG9ydHMgPSB7XFxyXFxuICAgIGZpeF90YWIsXFxyXFxufVxcclxcblwifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwiQWNjb3VudFNldHRpbmdcIixcInBhdGhcIjpcIkFjY291bnRTZXR0aW5nXCIsXCJydWxlXCI6XCJqczpcXHJcXG52YXIgeyBwaWtwYWtfaW5pdCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG5waWtwYWtfaW5pdCgpXFxyXFxuc2V0UGFnZVRpdGxlKCfotKblj7forr7nva4nKVxcclxcbnZhciByZXMgPSBbXVxcclxcblxcclxcbnZhciB7IHN0eWxlX2NvbG9yIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9EZWJ1ZycpXFxyXFxudmFyIHsgZ2V0X3VzZXJfYmFzZV9pbmZvLCBnZXRfdXNlcl92aXBfaW5mb30gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcblxcclxcbmxldCB1c2VyX2Jhc2VfaW5mbyA9IGdldF91c2VyX2Jhc2VfaW5mbygpXFxyXFxubGV0IHVzZXJfdmlwX2luZm8gPSBnZXRfdXNlcl92aXBfaW5mbygpXFxyXFxuXFxyXFxucmVzLnB1c2goe1xcclxcbiAgICB0aXRsZTogJ/CfkaQg55So5oi35L+h5oGvJyxcXHJcXG4gICAgY29sX3R5cGU6ICd0ZXh0XzEnLFxcclxcbiAgICBleHRyYTogeyBsaW5lVmlzaWJsZTogZmFsc2UgfSxcXHJcXG59KVxcclxcblxcclxcbnJlcy5wdXNoKHtcXHJcXG4gICAgdGl0bGU6ICfmt7vliqDotKblj7cnLFxcclxcbiAgICBjb2xfdHlwZTogJ3RleHRfY2VudGVyXzEnLFxcclxcbiAgICBkZXNjOiAn5re75Yqg5aSa55So5oi3JyxcXHJcXG4gICAgdXJsOiAnaGlrZXI6Ly9wYWdlL0FkZEFjY291bnQjbm9IaXN0b3J5IyNub1JlY29yZEhpc3RvcnkjJyxcXHJcXG4gICAgZXh0cmE6IHsgbGluZVZpc2libGU6IGZhbHNlIH0sXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIGNvbF90eXBlOiAnbGluZScsXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiAn6LSm5Y+3566h55CGJyxcXHJcXG4gICAgY29sX3R5cGU6ICd0ZXh0X2NlbnRlcl8xJyxcXHJcXG4gICAgZGVzYzogJ+i/m+WFpei0puWPt+euoeeQhicsXFxyXFxuICAgIHVybDogJ2hpa2VyOi8vcGFnZS9NdWx0aXBsZUFjY291bnQjbm9IaXN0b3J5IyNub1JlY29yZEhpc3RvcnkjJyxcXHJcXG4gICAgZXh0cmE6IHsgbGluZVZpc2libGU6IGZhbHNlIH0sXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIGNvbF90eXBlOiAnbGluZScsXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiAn5b2T5YmN6LSm5Y+3JyxcXHJcXG4gICAgY29sX3R5cGU6ICd0ZXh0X2NlbnRlcl8xJyxcXHJcXG4gICAgZGVzYzogdXNlcl9iYXNlX2luZm8ubmFtZSA/IHVzZXJfYmFzZV9pbmZvLm5hbWUgKyAnXFxcXG4nICsgdXNlcl9iYXNlX2luZm8uZW1haWwgOiAn5pyq55m75b2V5oiW6ICF5pyq6YCJ5oup6LSm5Y+3JyxcXHJcXG4gICAgdXJsOiAnY29weTovLycgKyB1c2VyX2Jhc2VfaW5mby5lbWFpbCxcXHJcXG4gICAgZXh0cmE6IHsgbGluZVZpc2libGU6IGZhbHNlIH0sXFxyXFxufSlcXHJcXG5cXHJcXG5mb3IgKGxldCBpID0gMDsgaSA8IDU7IGkrKykge1xcclxcbiAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICBjb2xfdHlwZTogJ2xpbmUnLFxcclxcbiAgICB9KVxcclxcbn1cXHJcXG5cXHJcXG5zZXRSZXN1bHQocmVzKVxcclxcblwifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwiQWRkQWNjb3VudFwiLFwicGF0aFwiOlwiQWRkQWNjb3VudFwiLFwicnVsZVwiOlwianM6XFxyXFxudmFyIHsgcGlrcGFrX2luaXQgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxucGlrcGFrX2luaXQoKVxcclxcbnNldFBhZ2VUaXRsZSgn5re75Yqg6LSm5Y+3JylcXHJcXG52YXIgcmVzID0gW11cXHJcXG5cXHJcXG5jbGVhck15VmFyKCd0dXNlcm5hbWUnKVxcclxcbmNsZWFyTXlWYXIoJ3RwYXNzd2QnKVxcclxcblxcclxcbnJlcy5wdXNoKHtcXHJcXG4gICAgdGl0bGU6ICfwn5GkIOeUqOaIt+WQjScsXFxyXFxuICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXHJcXG4gICAgZXh0cmE6IHsgbGluZVZpc2libGU6IGZhbHNlIH0sXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiAn55So5oi35ZCNJyxcXHJcXG4gICAgY29sX3R5cGU6ICdpbnB1dCcsXFxyXFxuICAgIGRlc2M6ICfor7fovpPlhaXnlKjmiLflkI0o6YKu566xL+aJi+acuuWPtyknLFxcclxcbiAgICBleHRyYToge1xcclxcbiAgICAgICAgb25DaGFuZ2U6IFxcXCJwdXRNeVZhcigndHVzZXJuYW1lJywgaW5wdXQpXFxcIixcXHJcXG4gICAgICAgIHRpdGxlVmlzaWJsZTogZmFsc2UsXFxyXFxuICAgIH0sXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiAn8J+UkSDlr4bnoIEnLFxcclxcbiAgICBjb2xfdHlwZTogJ3RleHRfMScsXFxyXFxuICAgIGV4dHJhOiB7IGxpbmVWaXNpYmxlOiBmYWxzZSB9LFxcclxcbn0pXFxyXFxuXFxyXFxucmVzLnB1c2goe1xcclxcbiAgICB0aXRsZTogJ+WvhueggScsXFxyXFxuICAgIGNvbF90eXBlOiAnaW5wdXQnLFxcclxcbiAgICBkZXNjOiAn6K+36L6T5YWl5a+G56CBJyxcXHJcXG4gICAgZXh0cmE6IHtcXHJcXG4gICAgICAgIG9uQ2hhbmdlOiBcXFwicHV0TXlWYXIoJ3RwYXNzd2QnLCBpbnB1dClcXFwiLFxcclxcbiAgICAgICAgdGl0bGVWaXNpYmxlOiBmYWxzZSxcXHJcXG4gICAgfSxcXHJcXG59KVxcclxcblxcclxcbi8vIOmXtOmalOagj1xcclxcbmZvciAobGV0IGkgPSAwOyBpIDwgMTU7IGkrKykge1xcclxcbiAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICBjb2xfdHlwZTogJ2JsYW5rX2Jsb2NrJyxcXHJcXG4gICAgfSlcXHJcXG59XFxyXFxuXFxyXFxucmVzLnB1c2goe1xcclxcbiAgICB0aXRsZTogJ+a3u+WKoCcsXFxyXFxuICAgIHVybDogJCgpLmxhenlSdWxlKCgpID0+IHtcXHJcXG4gICAgICAgIGlmICghZ2V0TXlWYXIoJ3R1c2VybmFtZScsICcnKSB8fCAhZ2V0TXlWYXIoJ3RwYXNzd2QnLCAnJykpIHtcXHJcXG4gICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v55So5oi35ZCN5ZKM5a+G56CB5LiN6IO95Li656m6J1xcclxcbiAgICAgICAgfVxcclxcblxcclxcbiAgICAgICAgdmFyIHsgbG9naW5fY2hlY2sgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICBpZiAobG9naW5fY2hlY2soZ2V0TXlWYXIoJ3R1c2VybmFtZScsICcnKSwgZ2V0TXlWYXIoJ3RwYXNzd2QnLCAnJykpKSB7XFxyXFxuICAgICAgICAgICAgbGV0IG1fYWNjb3VudHMgPSBzdG9yYWdlMC5nZXRJdGVtKCdtX2FjY291bnRzJywgW10pXFxyXFxuICAgICAgICAgICAgbV9hY2NvdW50cy5wdXNoKHtcXHJcXG4gICAgICAgICAgICAgICAgbmFtZTogZ2V0TXlWYXIoJ3R1c2VybmFtZScsICcnKSxcXHJcXG4gICAgICAgICAgICAgICAgcGFzc3dkOiBnZXRNeVZhcigndHBhc3N3ZCcsICcnKSxcXHJcXG4gICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgIHN0b3JhZ2UwLnNldEl0ZW0oJ21fYWNjb3VudHMnLCBtX2FjY291bnRzKVxcclxcbiAgICAgICAgICAgIGlmIChtX2FjY291bnRzLmxlbmd0aCA9PSAxKSB7XFxyXFxuICAgICAgICAgICAgICAgIGN1cnJlbnRfYWNjb3VudCA9IG1fYWNjb3VudHNbMF1cXHJcXG4gICAgICAgICAgICAgICAgc2V0SXRlbSgnY3VycmVudF9hY2NvdW50X2luZGV4JywgJzAnKVxcclxcbiAgICAgICAgICAgICAgICBzZXRJdGVtKCd1c2VybmFtZScsIGN1cnJlbnRfYWNjb3VudC5uYW1lKVxcclxcbiAgICAgICAgICAgICAgICBzZXRJdGVtKCdwYXNzd2QnLCBjdXJyZW50X2FjY291bnQucGFzc3dkKVxcclxcbiAgICAgICAgICAgICAgICB2YXIgeyBsb2dpbiB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgbG9naW4oY3VycmVudF9hY2NvdW50Lm5hbWUsIGN1cnJlbnRfYWNjb3VudC5wYXNzd2QpXFxyXFxuICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+W3sue7j+WIh+aNouWIsOatpOi0puWPtydcXHJcXG4gICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/mt7vliqDmiJDlip/vvIzor7fljrvlpJrnlKjmiLfnrqHnkIbnlYzpnaLov5vooYzmk43kvZwnXFxyXFxuICAgICAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/mt7vliqDlpLHotKXvvIzor7fnoa7orqTnlKjmiLflkI3lkozlr4bnoIHmmK/lkKbmraPnoa4nXFxyXFxuICAgICAgICB9XFxyXFxuICAgIH0pLFxcclxcbiAgICBjb2xfdHlwZTogJ3RleHRfMicsXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiAn5riF56m6JyxcXHJcXG4gICAgdXJsOiAkKCkubGF6eVJ1bGUoKCkgPT4ge1xcclxcbiAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcclxcbiAgICB9KSxcXHJcXG4gICAgY29sX3R5cGU6ICd0ZXh0XzInLFxcclxcbn0pXFxyXFxuXFxyXFxuc2V0UmVzdWx0KHJlcylcXHJcXG5cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIk11bHRpcGxlQWNjb3VudFwiLFwicGF0aFwiOlwiTXVsdGlwbGVBY2NvdW50XCIsXCJydWxlXCI6XCJqczpcXHJcXG52YXIgeyBwaWtwYWtfaW5pdCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG5waWtwYWtfaW5pdCgpXFxyXFxuc2V0UGFnZVRpdGxlKCfotKblj7fnrqHnkIYnKVxcclxcbnZhciB7IHN0eWxlX2NvbG9yIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9EZWJ1ZycpXFxyXFxudmFyIHJlcyA9IFtdXFxyXFxudmFyIG1fYWNjb3VudHMgPSBzdG9yYWdlMC5nZXRJdGVtKCdtX2FjY291bnRzJywgW10pXFxyXFxuXFxyXFxuaWYgKG1fYWNjb3VudHMubGVuZ3RoID09IDApIHtcXHJcXG4gICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgdGl0bGU6IGDov5Tlm57kuIrkuIDpobXvvIzngrnlh7tcXFwi5re75Yqg6LSm5Y+3XFxcImAsXFxyXFxuICAgICAgICBjb2xfdHlwZTogJ3RleHRfY2VudGVyXzEnLFxcclxcbiAgICAgICAgdXJsOiAkKCkubGF6eVJ1bGUoKCkgPT4ge1xcclxcbiAgICAgICAgICAgIGJhY2sodHJ1ZSlcXHJcXG4gICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICB9KSxcXHJcXG4gICAgfSlcXHJcXG59IGVsc2Uge1xcclxcbiAgICBsZXQgY3VycmVudF9hY2NvdW50X2luZGV4ID0gTnVtYmVyKGdldEl0ZW0oJ2N1cnJlbnRfYWNjb3VudF9pbmRleCcsICctMScpKVxcclxcbiAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICB0aXRsZTogJ/CfkaQg5aSa55So5oi35L+h5oGvJyxcXHJcXG4gICAgICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXHJcXG4gICAgfSlcXHJcXG5cXHJcXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCAyOyBpKyspIHtcXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ2xpbmUnLFxcclxcbiAgICAgICAgfSlcXHJcXG4gICAgfVxcclxcblxcclxcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG1fYWNjb3VudHMubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICB0aXRsZTogYOeUqOaItyAke2l9YCxcXHJcXG4gICAgICAgICAgICAvLyBkZXNjOiBtX2FjY291bnRzW2ldLm5hbWUgKyAoY3VycmVudF9hY2NvdW50X2luZGV4ID09IGkgPyAnKOato+WcqOS9v+eUqCknIDogJycpLFxcclxcbiAgICAgICAgICAgIGRlc2M6XFxyXFxuICAgICAgICAgICAgICAgIGN1cnJlbnRfYWNjb3VudF9pbmRleCA9PSBpXFxyXFxuICAgICAgICAgICAgICAgICAgICA/IHN0eWxlX2NvbG9yKG1fYWNjb3VudHNbaV0ubmFtZSArICcgKOato+WcqOS9v+eUqCknLCAnIzU1OTNGNScsICdzdHJvbmcnKVxcclxcbiAgICAgICAgICAgICAgICAgICAgOiBtX2FjY291bnRzW2ldLm5hbWUsXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICd0ZXh0X2NlbnRlcl8xJyxcXHJcXG4gICAgICAgICAgICB1cmw6ICQoWyfkvb/nlKjotKblj7cnLCAn5Yig6Zmk6LSm5Y+3J10sIDIsICfor7fpgInmi6nmk43kvZwnKS5zZWxlY3QoXFxyXFxuICAgICAgICAgICAgICAgIChjdXJyZW50X2FjY291bnQsIGluZGV4KSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICBpZiAoaW5wdXQgPT0gJ+S9v+eUqOi0puWPtycpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRJdGVtKCdjdXJyZW50X2FjY291bnRfaW5kZXgnLCBpbmRleC50b1N0cmluZygpKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEl0ZW0oJ3VzZXJuYW1lJywgY3VycmVudF9hY2NvdW50Lm5hbWUpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0SXRlbSgncGFzc3dkJywgY3VycmVudF9hY2NvdW50LnBhc3N3ZClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB2YXIgeyBsb2dpbiB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgY2hlY2tfbG9naW4gPSBsb2dpbihjdXJyZW50X2FjY291bnQubmFtZSwgY3VycmVudF9hY2NvdW50LnBhc3N3ZClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2hlY2tfbG9naW4pIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5bey57uP5YiH5o2i5Yiw5q2k6LSm5Y+3J1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+i0puWPt+WkseaViO+8jOivt+ehruiupOi0puWPt+aYr+WQpuato+ehridcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IGNsZWFyX2FjY291bnQgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXJfYWNjb3VudCgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IG1fYWNjb3VudHMgPSBzdG9yYWdlMC5nZXRJdGVtKCdtX2FjY291bnRzJywgW10pXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgbV9hY2NvdW50cy5zcGxpY2UoaW5kZXgsIDEpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmFnZTAuc2V0SXRlbSgnbV9hY2NvdW50cycsIG1fYWNjb3VudHMpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/lt7Lnu4/liKDpmaTmraTotKblj7cnXFxyXFxuICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICAgICAgICAgIG1fYWNjb3VudHNbaV0sXFxyXFxuICAgICAgICAgICAgICAgIGlcXHJcXG4gICAgICAgICAgICApLFxcclxcbiAgICAgICAgfSlcXHJcXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMjsgaSsrKSB7XFxyXFxuICAgICAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ2xpbmUnLFxcclxcbiAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICB9XFxyXFxuICAgIH1cXHJcXG5cXHJcXG4gICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgdGl0bGU6IHN0eWxlX2NvbG9yKCfmuIXnqbrmiYDmnInotKblj7cnLCAnI0ZGM0Y1QicsICdzdHJvbmcnKSxcXHJcXG4gICAgICAgIGNvbF90eXBlOiAndGV4dF9jZW50ZXJfMScsXFxyXFxuICAgICAgICB1cmw6ICQoXFxcIuaYr+WQpua4heepuuaJgOaciei0puWPt1xcXCIpLmNvbmZpcm0oKCkgPT4ge1xcclxcbiAgICAgICAgICAgIHZhciB7IGNsZWFyX2FjY291bnRzX2luZm8gfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgY2xlYXJfYWNjb3VudHNfaW5mbygpXFxyXFxuICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/lt7Lnu4/muIXnqbrmiYDmnInotKblj7cnXFxyXFxuICAgICAgICB9KSxcXHJcXG4gICAgfSlcXHJcXG5cXHJcXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCAyOyBpKyspIHtcXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ2xpbmUnLFxcclxcbiAgICAgICAgfSlcXHJcXG4gICAgfVxcclxcbn1cXHJcXG5cXHJcXG5zZXRSZXN1bHQocmVzKVxcclxcblwifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwiT3RoZXJTZXR0aW5nXCIsXCJwYXRoXCI6XCJPdGhlclNldHRpbmdcIixcInJ1bGVcIjpcImpzOlxcclxcbnB1dE15VmFyKCdzdWJpdGVtX2FjdGlvbicsICdicm93c2UnKVxcclxcbnZhciB7IHBpa3Bha19pbml0IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbnBpa3Bha19pbml0KClcXHJcXG5zZXRQYWdlVGl0bGUoJ+WFtuS7luiuvue9ricpXFxyXFxudmFyIHJlcyA9IFtdXFxyXFxuXFxyXFxudmFyIHsgc3R5bGVfY29sb3IgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0RlYnVnJylcXHJcXG52YXIgeyBnZXRfdXNlcl9pbnZpdGVDb2RlIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcblxcclxcbmxldCB1c2VyX2ludml0ZUNvZGUgPSBnZXRfdXNlcl9pbnZpdGVDb2RlKClcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiAn8J+YiCDpgoDor7forr7nva4nLFxcclxcbiAgICBjb2xfdHlwZTogJ3RleHRfMScsXFxyXFxuICAgIGV4dHJhOiB7IGxpbmVWaXNpYmxlOiBmYWxzZSB9LFxcclxcbn0pXFxyXFxuXFxyXFxucmVzLnB1c2goe1xcclxcbiAgICB0aXRsZTogJ+mCgOivt+eggScsXFxyXFxuICAgIGRlc2M6IHVzZXJfaW52aXRlQ29kZS5jb2RlLFxcclxcbiAgICBjb2xfdHlwZTogJ3RleHRfY2VudGVyXzEnLFxcclxcbiAgICB1cmw6IGBjb3B5Oi8vJHt1c2VyX2ludml0ZUNvZGUuY29kZX1gLFxcclxcbiAgICAvLyBleHRyYTogeyBsaW5lVmlzaWJsZTogZmFsc2UgfSxcXHJcXG59KVxcclxcblxcclxcbnJlcy5wdXNoKHtcXHJcXG4gICAgY29sX3R5cGU6ICdsaW5lJyxcXHJcXG59KVxcclxcblxcclxcbnJlcy5wdXNoKHtcXHJcXG4gICAgdGl0bGU6IGDoh6rliqjpgoDor7dgLFxcclxcbiAgICBkZXNjOiBnZXRJdGVtKCdhdXRvX3JlZnJlc2hfaW52aXRlJywgJzAnKSA9PSAnMCcgPyAn5ZCmJyA6ICfmmK8nLFxcclxcbiAgICB1cmw6ICQoKS5sYXp5UnVsZSgoKSA9PiB7XFxyXFxuICAgICAgICBpZiAoZ2V0SXRlbSgnYXV0b19yZWZyZXNoX2ludml0ZScsICcwJykgPT0gJzAnKSB7XFxyXFxuICAgICAgICAgICAgc2V0SXRlbSgnYXV0b19yZWZyZXNoX2ludml0ZScsICcxJylcXHJcXG4gICAgICAgIH0gZWxzZSB7XFxyXFxuICAgICAgICAgICAgc2V0SXRlbSgnYXV0b19yZWZyZXNoX2ludml0ZScsICcwJylcXHJcXG4gICAgICAgIH1cXHJcXG4gICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXHJcXG4gICAgfSksXFxyXFxuICAgIGNvbF90eXBlOiAndGV4dF9jZW50ZXJfMScsXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIGNvbF90eXBlOiAnbGluZScsXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiBg5pyA6L+R6Ieq5Yqo6YKA6K+35pe26Ze0YCxcXHJcXG4gICAgZGVzYzogYCR7Z2V0SXRlbSgnaW52aXRlX3Jlc3VsdCcsICdGYWlsJykgPT0gJ0ZhaWwnID8gJ+mCgOivt+Wksei0pScgOiBnZXRJdGVtKCdpbnZpdGVfcmVzdWx0JywgJ0ZhaWwnKX0gKOWJqeS9measoeaVsDoke1xcclxcbiAgICAgICAgMyAtIE51bWJlcihnZXRNeVZhcignaW52aXRlX2N1cnJlbnRfY291bnQnLCAnMCcpKVxcclxcbiAgICB9KWAsXFxyXFxuICAgIHVybDogJ2hpa2VyOi8vZW1wdHknLFxcclxcbiAgICBjb2xfdHlwZTogJ3RleHRfY2VudGVyXzEnLFxcclxcbn0pXFxyXFxuXFxyXFxuZm9yIChsZXQgaSA9IDA7IGkgPCA1OyBpKyspIHtcXHJcXG4gICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgY29sX3R5cGU6ICdsaW5lJyxcXHJcXG4gICAgfSlcXHJcXG59XFxyXFxuXFxyXFxucmVzLnB1c2goe1xcclxcbiAgICB0aXRsZTogJ/CflJQg5YiG5Lqr6K6+572uJyxcXHJcXG4gICAgY29sX3R5cGU6ICd0ZXh0XzEnLFxcclxcbiAgICBleHRyYTogeyBsaW5lVmlzaWJsZTogZmFsc2UgfSxcXHJcXG59KVxcclxcblxcclxcbnJlcy5wdXNoKHtcXHJcXG4gICAgdGl0bGU6ICfkupHlj6Pku6QnLFxcclxcbiAgICBjb2xfdHlwZTogJ3RleHRfY2VudGVyXzEnLFxcclxcbiAgICBkZXNjOiAn5YiG5Lqr44CB5a+85YWl5LqR5Y+j5LukKOaKilBpa1Bha+WIhuS6q+mTvuaOpembhuWQiOeUqOS6keWPo+S7pOadpeWIhuS6q+OAgeWvvOWFpSknLFxcclxcbiAgICB1cmw6ICQoKS5sYXp5UnVsZSgoKSA9PiB7XFxyXFxuICAgICAgICBzaG93U2VsZWN0T3B0aW9ucyh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6ICfor7fpgInmi6nmk43kvZwnLFxcclxcbiAgICAgICAgICAgIG9wdGlvbnM6IFsn5a+85YWl5LqR5Y+j5LukJywgJ+WIhuS6q+S6keWPo+S7pCddLFxcclxcbiAgICAgICAgICAgIGNvbDogMSxcXHJcXG4gICAgICAgICAgICBqczogJC50b1N0cmluZygoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgIHN3aXRjaCAoTVlfSU5ERVgpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgMDpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJCgnJywgJ+ivt+i+k+WFpeacrOeoi+W6j+WIhuS6q+eahOS6keWPo+S7pCcpLmlucHV0KCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHsgY2xvdWRfaW1wb3J0IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEk/cnVsZT3nsonlprnniLFQaWtQYWsnKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dCA9IGlucHV0Lm1hdGNoKC9eKC4qPylAaW1wb3J0PWpzL20pWzFdXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsb3VkX2ltcG9ydChpbnB1dClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgcGFzdGVzID0gZ2V0UGFzdGVzKClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBzaG93U2VsZWN0T3B0aW9ucyh7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn6YCJ5oup5L2/55So5YiG5Lqr55qE5Ymq6LS05p2/JyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogcGFzdGVzLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2w6IDMsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IGNsb3VkX3NoYXJlLCBzdWJfcmVhZF9sb2NhbCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzaGFyZV9saW5rX3VybHMgPSBzdWJfcmVhZF9sb2NhbCgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2NvcHk6Ly8nICsgY2xvdWRfc2hhcmUoc2hhcmVfbGlua191cmxzLCBpbnB1dClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgfSksXFxyXFxuICAgICAgICB9KVxcclxcbiAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcclxcbiAgICB9KSxcXHJcXG4gICAgLy8gdXJsOiAkKFsn5a+85YWl5LqR5Y+j5LukJywgJ+WIhuS6q+S6keWPo+S7pCddKS5zZWxlY3QoKCkgPT4ge1xcclxcbiAgICAvLyAgICAgc3dpdGNoIChNWV9JTkRFWCkge1xcclxcbiAgICAvLyAgICAgICAgIGNhc2UgMDpcXHJcXG4gICAgLy8gICAgICAgICAgICAgJC50b1N0cmluZygoKT0+e1xcclxcbiAgICAvLyAgICAgICAgICAgICAgICAgJCgpLmlucHV0KCgpPT57fSlcXHJcXG4gICAgLy8gICAgICAgICAgICAgfSlcXHJcXG4gICAgLy8gICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgLy8gICAgICAgICBkZWZhdWx0OlxcclxcbiAgICAvLyAgICAgICAgICAgICBsZXQgcGFzdGVzID0gZ2V0UGFzdGVzKClcXHJcXG4gICAgLy8gICAgICAgICAgICAgc2hvd1NlbGVjdE9wdGlvbnMoe1xcclxcbiAgICAvLyAgICAgICAgICAgICAgICAgdGl0bGU6ICfpgInmi6nkvb/nlKjliIbkuqvnmoTliarotLTmnb8nLFxcclxcbiAgICAvLyAgICAgICAgICAgICAgICAgb3B0aW9uczogcGFzdGVzLFxcclxcbiAgICAvLyAgICAgICAgICAgICAgICAgY29sOiAzLFxcclxcbiAgICAvLyAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoKCkgPT4ge1xcclxcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgY2xvdWRfc2hhcmUsIHN1Yl9yZWFkX2xvY2FsIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgIGxldCBzaGFyZV9saW5rX3VybHMgPSBzdWJfcmVhZF9sb2NhbCgpXFxyXFxuICAgIC8vICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJjb3B5Oi8vXFxcIiArIGNsb3VkX3NoYXJlKHNoYXJlX2xpbmtfdXJscywgaW5wdXQpXFxyXFxuICAgIC8vICAgICAgICAgICAgICAgICB9KSxcXHJcXG4gICAgLy8gICAgICAgICAgICAgfSlcXHJcXG4gICAgLy8gICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgLy8gICAgIH1cXHJcXG5cXHJcXG4gICAgLy8gICAgIHJldHVybiBgaGlrZXI6Ly9lbXB0eWBcXHJcXG4gICAgLy8gfSksXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiAn5re75Yqg5YiG5LqrJyxcXHJcXG4gICAgY29sX3R5cGU6ICd0ZXh0X2NlbnRlcl8xJyxcXHJcXG4gICAgZGVzYzogJ+aZrumAmua3u+WKoOWIhuS6q+mTvuaOpeWSjOWvhueggeOAgeWumOaWueWkjeWItuWIhuS6q+mTvuaOpeOAgeaWh+acrOe8lui+keaooeW8j+a3u+WKoCcsXFxyXFxuICAgIHVybDogJChbJ+aZrumAmua3u+WKoCcsICflrpjmlrnlpI3liLbliIbkuqvmt7vliqAnLCAn5paH5pys57yW6L6R5re75YqgJ10pLnNlbGVjdCgoKSA9PiB7XFxyXFxuICAgICAgICByZXR1cm4gYGhpa2VyOi8vcGFnZS9TdWJTZXR0aW5nP3Nob3d0eXBlPSR7TVlfSU5ERVh9I25vSGlzdG9yeSMjbm9SZWNvcmRIaXN0b3J5I2BcXHJcXG4gICAgfSksXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiAn566h55CG5YiG5LqrJyxcXHJcXG4gICAgY29sX3R5cGU6ICd0ZXh0X2NlbnRlcl8xJyxcXHJcXG4gICAgZGVzYzogJ+aYvuekuuavj+S4gOadoVBpa1Bha+WIhuS6q+mTvuaOpeWSjOWvhuegge+8jOmAmui/h+eCueWHu+aTjeS9nCjnvJbovpHjgIHliKDpmaTjgIHlpI3liLbjgIHmjpLluo8pJyxcXHJcXG4gICAgdXJsOiAnaGlrZXI6Ly9wYWdlL1N1Ykl0ZW0jbm9IaXN0b3J5IyNub1JlY29yZEhpc3RvcnkjJyxcXHJcXG59KVxcclxcblxcclxcbmZvciAobGV0IGkgPSAwOyBpIDwgNTsgaSsrKSB7XFxyXFxuICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgIGNvbF90eXBlOiAnbGluZScsXFxyXFxuICAgIH0pXFxyXFxufVxcclxcblxcclxcbnJlcy5wdXNoKHtcXHJcXG4gICAgdGl0bGU6ICfwn5ShIOWFtuS7luiuvue9ricsXFxyXFxuICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXHJcXG4gICAgZXh0cmE6IHsgbGluZVZpc2libGU6IGZhbHNlIH0sXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiBg5qOA5p+l5pu05pawYCxcXHJcXG4gICAgZGVzYzogYOW9k+WJjeeJiOacrOWPtzogJHskLnVwZGF0ZV9pbmZvLnZlcnNpb259YCxcXHJcXG4gICAgdXJsOiAkKCcjbm9Mb2FkaW5nIycpLmxhenlSdWxlKCgpID0+IHtcXHJcXG4gICAgICAgIHNob3dMb2FkaW5nKFxcXCLmraPlnKjmo4Dmn6XmnIDmlrDniYjmnKxcXFwiKVxcclxcbiAgICAgICAgdmFyIHsgYXV0b191cGRhdGUgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICBsZXQgcmVzID0gYXV0b191cGRhdGUoKVxcclxcbiAgICAgICAgaGlkZUxvYWRpbmcoKVxcclxcbiAgICAgICAgaWYgKHJlcyA9PSAnbGF0ZXN0Jykge1xcclxcbiAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/lt7Lnu4/mmK/mnIDmlrDniYjvvIEnXFxyXFxuICAgICAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXHJcXG4gICAgICAgIH1cXHJcXG4gICAgfSksXFxyXFxuICAgIGNvbF90eXBlOiAndGV4dF9jZW50ZXJfMScsXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiBg5omT5Y2w6LCD6K+V5pel5b+XYCxcXHJcXG4gICAgZGVzYzogZ2V0SXRlbSgnZGVidWdfZW5hYmxlJywgJzAnKSA9PSAnMCcgPyAn5ZCmJyA6ICfmmK8nLFxcclxcbiAgICB1cmw6ICQoKS5sYXp5UnVsZSgoKSA9PiB7XFxyXFxuICAgICAgICBpZiAoZ2V0SXRlbSgnZGVidWdfZW5hYmxlJywgJzAnKSA9PSAnMCcpIHtcXHJcXG4gICAgICAgICAgICBzZXRJdGVtKCdkZWJ1Z19lbmFibGUnLCAnMScpXFxyXFxuICAgICAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgIHNldEl0ZW0oJ2RlYnVnX2VuYWJsZScsICcwJylcXHJcXG4gICAgICAgIH1cXHJcXG4gICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXHJcXG4gICAgfSksXFxyXFxuICAgIGNvbF90eXBlOiAndGV4dF9jZW50ZXJfMScsXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiBzdHlsZV9jb2xvcign6YeN572uUGlrUGFr5bCP56iL5bqPJywgJyNGRjNGNUInLCAnc3Ryb25nJyksXFxyXFxuICAgIGRlc2M6ICfliKDpmaTotKblj7fvvIzliKDpmaTmiYDmnInlj5jph4/vvIzliKDpmaTmiYDmnInliIbkuqvorqLpmIUo5Y+v6YCJKScsXFxyXFxuICAgIGNvbF90eXBlOiAndGV4dF9jZW50ZXJfMScsXFxyXFxuICAgIHVybDogJChbJ+mHjee9rijkv53nlZnliIbkuqvorqLpmIUpJywgJ+WujOWFqOmHjee9riddKS5zZWxlY3QoKCkgPT4ge1xcclxcbiAgICAgICAgc3dpdGNoIChpbnB1dCkge1xcclxcbiAgICAgICAgICAgIGNhc2UgJ+WujOWFqOmHjee9ric6XFxyXFxuICAgICAgICAgICAgICAgIGRlbGV0ZUZpbGUoJ2ZtX3Bpa3Bha19zdWIudHh0JylcXHJcXG4gICAgICAgICAgICBjYXNlICfph43nva4o5L+d55WZ5YiG5Lqr6K6i6ZiFKSc6XFxyXFxuICAgICAgICAgICAgICAgIC8vIOWIoOmZpOi0puWPt+S/oeaBr1xcclxcbiAgICAgICAgICAgICAgICB2YXIgeyBjbGVhcl9hY2NvdW50c19pbmZvIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICBjbGVhcl9hY2NvdW50c19pbmZvKClcXHJcXG5cXHJcXG4gICAgICAgICAgICAgICAgLy8g5Yig6Zmk5pu05paw5L+h5oGvXFxyXFxuICAgICAgICAgICAgICAgIGNsZWFyUHVibGljSXRlbSgnZm1fcGlrcGFrX2dsb2JhbCcpXFxyXFxuICAgICAgICAgICAgICAgIGNsZWFyUHVibGljSXRlbSgnZm1fcGlrcGFrX2dsb2JhbF91cGRhdGUnKVxcclxcblxcclxcbiAgICAgICAgICAgICAgICAvLyDliKDpmaTmr4/ml6XkuIDlj6Xkv6Hmga9cXHJcXG4gICAgICAgICAgICAgICAgZ2xvYmFsTWFwMC5jbGVhck15VmFyKCdkYXlzYXknKVxcclxcblxcclxcbiAgICAgICAgICAgICAgICAvLyDliKDpmaTmiYDmnInlj5jph49cXHJcXG4gICAgICAgICAgICAgICAgbGV0IGRfaXRlbXMgPSBbXFxyXFxuICAgICAgICAgICAgICAgICAgICAnYWNjZXNzX3Rva2VuJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdzaGFyZV9pZCcsXFxyXFxuICAgICAgICAgICAgICAgICAgICAnc2hhcmVfcGFzc19jb2RlX3Rva2VuJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdhdXRvX3JlZnJlc2hfaW52aXRlJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdpbnZpdGVfcmVzdWx0JyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdjdXJyZW50X2FjY291bnRfaW5kZXgnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgJ2RlYnVnX2VuYWJsZScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAnbV9hY2NvdW50cycsXFxyXFxuICAgICAgICAgICAgICAgIF1cXHJcXG5cXHJcXG4gICAgICAgICAgICAgICAgbGV0IGRfdmFycyA9IFtcXHJcXG4gICAgICAgICAgICAgICAgICAgICdzaG93X2luZGV4JyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdzaGFyZV9zaG93X2luZGV4JyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdob21lX2NhdGVnb3J5X2luZGV4JyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdkb3dubG9hZF9jYXRlZ29yeV9pbmRleCcsXFxyXFxuICAgICAgICAgICAgICAgICAgICAnbGlzdF9zaG93X3N0eWxlJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdsaXN0X3Nob3dfc29ydCcsXFxyXFxuICAgICAgICAgICAgICAgICAgICAnYWRkX2Rvd25sb2FkX2xpbmsnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgJ3R1c2VybmFtZScsXFxyXFxuICAgICAgICAgICAgICAgICAgICAndHBhc3N3ZCcsXFxyXFxuICAgICAgICAgICAgICAgICAgICAnaW52aXRlX2N1cnJlbnRfY291bnQnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgJ3RzdWJuYW1lJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICd0c3VibGluaycsXFxyXFxuICAgICAgICAgICAgICAgICAgICAndHN1YnBhc3N3ZCcsXFxyXFxuICAgICAgICAgICAgICAgICAgICAnc3ViaXRlbV9lZGl0X25hbWUnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgJ3N1Yml0ZW1fZWRpdF91cmwnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgJ3N1Yml0ZW1fZWRpdF9wYXNzd2QnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgJ3N1Yml0ZW1fYWN0aW9uJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdzb3J0XzFfcG9zJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdwYXRoc19raW5kJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdwYXRocycsXFxyXFxuICAgICAgICAgICAgICAgICAgICAnc2hfcGF0aHMnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgJ2ZpbGVfYWN0aW9uJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdzdF9pdGVtJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgICdleHBpcmVkX2RhdGUnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgJ2ZpcnN0X3NwbGFzaCcsXFxyXFxuICAgICAgICAgICAgICAgIF1cXHJcXG5cXHJcXG4gICAgICAgICAgICAgICAgZF9pdGVtcy5mb3JFYWNoKChlbGVfaXRlbSkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgY2xlYXJJdGVtKGVsZV9pdGVtKVxcclxcbiAgICAgICAgICAgICAgICB9KVxcclxcblxcclxcbiAgICAgICAgICAgICAgICBkX3ZhcnMuZm9yRWFjaCgoZWxlX3ZhcikgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgY2xlYXJNeVZhcihlbGVfdmFyKVxcclxcbiAgICAgICAgICAgICAgICB9KVxcclxcblxcclxcbiAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/lt7Lnu4/ph43nva5QaWtQYWvlsI/nqIvluo8nXFxyXFxuICAgICAgICB9XFxyXFxuICAgIH0pLFxcclxcbiAgICAvLyB1cmw6ICQoJ+aYr+WQpumHjee9rlBpa1Bha+Wwj+eoi+W6jycpLmNvbmZpcm0oKCkgPT4ge1xcclxcbiAgICAvLyAgICAgLy8g5Yig6Zmk6LSm5Y+35L+h5oGvXFxyXFxuICAgIC8vICAgICB2YXIgeyBjbGVhcl9hY2NvdW50c19pbmZvIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAvLyAgICAgY2xlYXJfYWNjb3VudHNfaW5mbygpXFxyXFxuXFxyXFxuICAgIC8vICAgICAvLyDliKDpmaTmm7TmlrDkv6Hmga9cXHJcXG4gICAgLy8gICAgIGNsZWFyUHVibGljSXRlbSgnZm1fcGlrcGFrX2dsb2JhbCcpXFxyXFxuICAgIC8vICAgICBjbGVhclB1YmxpY0l0ZW0oJ2ZtX3Bpa3Bha19nbG9iYWxfdXBkYXRlJylcXHJcXG5cXHJcXG4gICAgLy8gICAgIC8vIOWIoOmZpOavj+aXpeS4gOWPpeS/oeaBr1xcclxcbiAgICAvLyAgICAgZ2xvYmFsTWFwMC5jbGVhck15VmFyKCdkYXlzYXknKVxcclxcblxcclxcbiAgICAvLyAgICAgLy8g5Yig6Zmk5omA5pyJ5Y+Y6YePXFxyXFxuICAgIC8vICAgICBsZXQgZF9pdGVtcyA9IFtcXHJcXG4gICAgLy8gICAgICAgICAnYWNjZXNzX3Rva2VuJyxcXHJcXG4gICAgLy8gICAgICAgICAnc2hhcmVfaWQnLFxcclxcbiAgICAvLyAgICAgICAgICdzaGFyZV9wYXNzX2NvZGVfdG9rZW4nLFxcclxcbiAgICAvLyAgICAgICAgICdhdXRvX3JlZnJlc2hfaW52aXRlJyxcXHJcXG4gICAgLy8gICAgICAgICAnaW52aXRlX3Jlc3VsdCcsXFxyXFxuICAgIC8vICAgICAgICAgJ2N1cnJlbnRfYWNjb3VudF9pbmRleCcsXFxyXFxuICAgIC8vICAgICAgICAgJ2RlYnVnX2VuYWJsZScsXFxyXFxuICAgIC8vICAgICAgICAgJ21fYWNjb3VudHMnLFxcclxcbiAgICAvLyAgICAgXVxcclxcblxcclxcbiAgICAvLyAgICAgbGV0IGRfdmFycyA9IFtcXHJcXG4gICAgLy8gICAgICAgICAnc2hvd19pbmRleCcsXFxyXFxuICAgIC8vICAgICAgICAgJ3NoYXJlX3Nob3dfaW5kZXgnLFxcclxcbiAgICAvLyAgICAgICAgICdob21lX2NhdGVnb3J5X2luZGV4JyxcXHJcXG4gICAgLy8gICAgICAgICAnZG93bmxvYWRfY2F0ZWdvcnlfaW5kZXgnLFxcclxcbiAgICAvLyAgICAgICAgICdsaXN0X3Nob3dfc3R5bGUnLFxcclxcbiAgICAvLyAgICAgICAgICdsaXN0X3Nob3dfc29ydCcsXFxyXFxuICAgIC8vICAgICAgICAgJ2FkZF9kb3dubG9hZF9saW5rJyxcXHJcXG4gICAgLy8gICAgICAgICAndHVzZXJuYW1lJyxcXHJcXG4gICAgLy8gICAgICAgICAndHBhc3N3ZCcsXFxyXFxuICAgIC8vICAgICAgICAgJ2ludml0ZV9jdXJyZW50X2NvdW50JyxcXHJcXG4gICAgLy8gICAgICAgICAndHN1Ym5hbWUnLFxcclxcbiAgICAvLyAgICAgICAgICd0c3VibGluaycsXFxyXFxuICAgIC8vICAgICAgICAgJ3RzdWJwYXNzd2QnLFxcclxcbiAgICAvLyAgICAgICAgICdzdWJpdGVtX2VkaXRfbmFtZScsXFxyXFxuICAgIC8vICAgICAgICAgJ3N1Yml0ZW1fZWRpdF91cmwnLFxcclxcbiAgICAvLyAgICAgICAgICdzdWJpdGVtX2VkaXRfcGFzc3dkJyxcXHJcXG4gICAgLy8gICAgICAgICAnc3ViaXRlbV9hY3Rpb24nLFxcclxcbiAgICAvLyAgICAgICAgICdzb3J0XzFfcG9zJyxcXHJcXG4gICAgLy8gICAgICAgICAncGF0aHNfa2luZCcsXFxyXFxuICAgIC8vICAgICAgICAgJ3BhdGhzJyxcXHJcXG4gICAgLy8gICAgICAgICAnc2hfcGF0aHMnLFxcclxcbiAgICAvLyAgICAgICAgICdmaWxlX2FjdGlvbicsXFxyXFxuICAgIC8vICAgICAgICAgJ3N0X2l0ZW0nLFxcclxcbiAgICAvLyAgICAgICAgICdleHBpcmVkX2RhdGUnLFxcclxcbiAgICAvLyAgICAgXVxcclxcblxcclxcbiAgICAvLyAgICAgZF9pdGVtcy5mb3JFYWNoKChlbGVfaXRlbSkgPT4ge1xcclxcbiAgICAvLyAgICAgICAgIGNsZWFySXRlbShlbGVfaXRlbSlcXHJcXG4gICAgLy8gICAgIH0pXFxyXFxuXFxyXFxuICAgIC8vICAgICBkX3ZhcnMuZm9yRWFjaCgoZWxlX3ZhcikgPT4ge1xcclxcbiAgICAvLyAgICAgICAgIGNsZWFyTXlWYXIoZWxlX3ZhcilcXHJcXG4gICAgLy8gICAgIH0pXFxyXFxuXFxyXFxuICAgIC8vICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgIC8vICAgICByZXR1cm4gJ3RvYXN0Oi8v5bey57uP6YeN572uUGlrUGFr5bCP56iL5bqPJ1xcclxcbiAgICAvLyB9KSxcXHJcXG59KVxcclxcblxcclxcbmZvciAobGV0IGkgPSAwOyBpIDwgNTsgaSsrKSB7XFxyXFxuICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgIGNvbF90eXBlOiAnbGluZScsXFxyXFxuICAgIH0pXFxyXFxufVxcclxcblxcclxcbnNldFJlc3VsdChyZXMpXFxyXFxuXCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJTdWJTZXR0aW5nXCIsXCJwYXRoXCI6XCJTdWJTZXR0aW5nXCIsXCJydWxlXCI6XCJqczpcXHJcXG52YXIgeyBwaWtwYWtfaW5pdCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG5waWtwYWtfaW5pdCgpXFxyXFxudmFyIHJlcyA9IFtdXFxyXFxubGV0IHNob3dfdHlwZSA9IGdldFBhcmFtKCdzaG93dHlwZScsICcwJylcXHJcXG5sZXQgc2hvd190aXRsZXMgPSBbJ+aZrumAmua3u+WKoCcsICflrpjmlrnlpI3liLbliIbkuqvmt7vliqAnLCAn5paH5pys57yW6L6R5re75YqgJywgJ+e8lui+kVBpa1Bha+WIhuS6q+mTvuaOpSddXFxyXFxuXFxyXFxuaWYgKHNob3dfdHlwZSA9PSAzKSB7XFxyXFxuICAgIHNldFBhZ2VUaXRsZShg57yW6L6R5YiG5LqrYClcXHJcXG59IGVsc2Uge1xcclxcbiAgICBzZXRQYWdlVGl0bGUoYOa3u+WKoOWIhuS6qygke3Nob3dfdGl0bGVzW051bWJlcihzaG93X3R5cGUpXS5yZXBsYWNlKCfmt7vliqAnLCAnJyl9KWApXFxyXFxufVxcclxcbnN3aXRjaCAoc2hvd190eXBlKSB7XFxyXFxuICAgIGNhc2UgJzAnOlxcclxcbiAgICAgICAgY2xlYXJNeVZhcigndHN1Ym5hbWUnKVxcclxcbiAgICAgICAgY2xlYXJNeVZhcigndHN1YmxpbmsnKVxcclxcbiAgICAgICAgY2xlYXJNeVZhcigndHN1YnBhc3N3ZCcpXFxyXFxuXFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6ICfwn5OdIOWIhuS6q+WQjeWtlycsXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzEnLFxcclxcbiAgICAgICAgICAgIGV4dHJhOiB7IGxpbmVWaXNpYmxlOiBmYWxzZSB9LFxcclxcbiAgICAgICAgfSlcXHJcXG5cXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICB0aXRsZTogJ+WIhuS6q+WQjeWtlycsXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICdpbnB1dCcsXFxyXFxuICAgICAgICAgICAgZGVzYzogJ+ivt+i+k+WFpVBpa1Bha+WIhuS6q+WQjeWtlycsXFxyXFxuICAgICAgICAgICAgZXh0cmE6IHtcXHJcXG4gICAgICAgICAgICAgICAgb25DaGFuZ2U6IFxcXCJwdXRNeVZhcigndHN1Ym5hbWUnLCBpbnB1dClcXFwiLFxcclxcbiAgICAgICAgICAgICAgICB0aXRsZVZpc2libGU6IGZhbHNlLFxcclxcbiAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICB9KVxcclxcblxcclxcbiAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgIHRpdGxlOiAn8J+UlyDliIbkuqvpk77mjqUnLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXHJcXG4gICAgICAgICAgICBleHRyYTogeyBsaW5lVmlzaWJsZTogZmFsc2UgfSxcXHJcXG4gICAgICAgIH0pXFxyXFxuXFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6ICfliIbkuqvpk77mjqUnLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnaW5wdXQnLFxcclxcbiAgICAgICAgICAgIGRlc2M6ICfor7fovpPlhaVQaWtQYWvliIbkuqvpk77mjqUnLFxcclxcbiAgICAgICAgICAgIGV4dHJhOiB7XFxyXFxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlOiBcXFwicHV0TXlWYXIoJ3RzdWJsaW5rJywgaW5wdXQpXFxcIixcXHJcXG4gICAgICAgICAgICAgICAgdGl0bGVWaXNpYmxlOiBmYWxzZSxcXHJcXG4gICAgICAgICAgICB9LFxcclxcbiAgICAgICAgfSlcXHJcXG5cXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICB0aXRsZTogJ/CflJEg5YiG5Lqr5a+G56CBJyxcXHJcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfMScsXFxyXFxuICAgICAgICAgICAgZXh0cmE6IHsgbGluZVZpc2libGU6IGZhbHNlIH0sXFxyXFxuICAgICAgICB9KVxcclxcblxcclxcbiAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgIHRpdGxlOiAn5YiG5Lqr5a+G56CBJyxcXHJcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ2lucHV0JyxcXHJcXG4gICAgICAgICAgICBkZXNjOiAn6K+36L6T5YWlUGlrUGFr5YiG5Lqr5a+G56CBJyxcXHJcXG4gICAgICAgICAgICBleHRyYToge1xcclxcbiAgICAgICAgICAgICAgICBvbkNoYW5nZTogXFxcInB1dE15VmFyKCd0c3VicGFzc3dkJywgaW5wdXQpXFxcIixcXHJcXG4gICAgICAgICAgICAgICAgdGl0bGVWaXNpYmxlOiBmYWxzZSxcXHJcXG4gICAgICAgICAgICB9LFxcclxcbiAgICAgICAgfSlcXHJcXG5cXHJcXG4gICAgICAgIC8vIOmXtOmalOagj1xcclxcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxNTsgaSsrKSB7XFxyXFxuICAgICAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ2JsYW5rX2Jsb2NrJyxcXHJcXG4gICAgICAgICAgICB9KVxcclxcbiAgICAgICAgfVxcclxcblxcclxcbiAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgIHRpdGxlOiAn5re75YqgJyxcXHJcXG4gICAgICAgICAgICB1cmw6ICQoKS5sYXp5UnVsZSgoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgIGxldCB0c3VibmFtZSA9IGdldE15VmFyKCd0c3VibmFtZScpXFxyXFxuICAgICAgICAgICAgICAgIGxldCB0c3VibGluayA9IGdldE15VmFyKCd0c3VibGluaycpXFxyXFxuICAgICAgICAgICAgICAgIGxldCB0c3VicGFzc3dkID0gZ2V0TXlWYXIoJ3RzdWJwYXNzd2QnKVxcclxcbiAgICAgICAgICAgICAgICB2YXIgeyBzdWJfY2hlY2ssIHN1Yl9yZWFkX2xvY2FsLCBzdWJfd3JpdGVfbG9jYWwgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuXFxyXFxuICAgICAgICAgICAgICAgIGlmICghdHN1Ym5hbWUgfHwgIXRzdWJsaW5rKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5ZCN5a2X5ZKM5YiG5Lqr6ZO+5o6l5LiN6IO95Li656m6J1xcclxcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgICAgICAgICAgaWYgKHN1Yl9jaGVjayh0c3VibGluaykpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5bey57uP5a2Y5Zyo55u45ZCM5YiG5Lqr6ZO+5o6l77yM5Y+q6IO95Y6757yW6L6R6KaG55uWJ1xcclxcbiAgICAgICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgICAgICAgICAgbGV0IHNoYXJlX2xpbmtfdXJscyA9IHN1Yl9yZWFkX2xvY2FsKClcXHJcXG4gICAgICAgICAgICAgICAgICAgIHNoYXJlX2xpbmtfdXJscy5wdXNoKHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiB0c3VibmFtZSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHRzdWJsaW5rLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhc3N3ZDogdHN1YnBhc3N3ZCxcXHJcXG4gICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgICAgICBzdWJfd3JpdGVfbG9jYWwoc2hhcmVfbGlua191cmxzKVxcclxcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+a3u+WKoOWIhuS6q+mTvuaOpeaIkOWKnydcXHJcXG4gICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgIH0pLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8yJyxcXHJcXG4gICAgICAgIH0pXFxyXFxuXFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6ICfmuIXnqbonLFxcclxcbiAgICAgICAgICAgIHVybDogJCgpLmxhenlSdWxlKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgfSksXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzInLFxcclxcbiAgICAgICAgfSlcXHJcXG4gICAgICAgIGJyZWFrXFxyXFxuICAgIGNhc2UgJzEnOlxcclxcbiAgICAgICAgY2xlYXJNeVZhcigndHN1Ym5hbWUnKVxcclxcbiAgICAgICAgY2xlYXJNeVZhcigndHN1YmxpbmsnKVxcclxcbiAgICAgICAgY2xlYXJNeVZhcigndHN1YnBhc3N3ZCcpXFxyXFxuXFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6ICfwn5OdIOWIhuS6q+WQjeWtlycsXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzEnLFxcclxcbiAgICAgICAgICAgIGV4dHJhOiB7IGxpbmVWaXNpYmxlOiBmYWxzZSB9LFxcclxcbiAgICAgICAgfSlcXHJcXG5cXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICB0aXRsZTogJ+WIhuS6q+WQjeWtlycsXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICdpbnB1dCcsXFxyXFxuICAgICAgICAgICAgZGVzYzogJ+ivt+i+k+WFpVBpa1Bha+WIhuS6q+WQjeWtlycsXFxyXFxuICAgICAgICAgICAgZXh0cmE6IHtcXHJcXG4gICAgICAgICAgICAgICAgb25DaGFuZ2U6IFxcXCJwdXRNeVZhcigndHN1Ym5hbWUnLCBpbnB1dClcXFwiLFxcclxcbiAgICAgICAgICAgICAgICB0aXRsZVZpc2libGU6IGZhbHNlLFxcclxcbiAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICB9KVxcclxcblxcclxcbiAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgIHRpdGxlOiAn8J+mgCDovpPlhaXku47lrpjmlrnlpI3liLbnmoTliIbkuqvpk77mjqUnLFxcclxcbiAgICAgICAgICAgIHVybDogJ2hpa2VyOi8vZW1wdHknLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXHJcXG4gICAgICAgICAgICBleHRyYTogeyBsaW5lVmlzaWJsZTogZmFsc2UgfSxcXHJcXG4gICAgICAgIH0pXFxyXFxuXFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICdpbnB1dCcsXFxyXFxuICAgICAgICAgICAgZXh0cmE6IHtcXHJcXG4gICAgICAgICAgICAgICAgdHlwZTogJ3RleHRhcmVhJyxcXHJcXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAtMSxcXHJcXG4gICAgICAgICAgICAgICAgaGlnaGxpZ2h0OiB0cnVlLFxcclxcbiAgICAgICAgICAgICAgICBvbkNoYW5nZTogJC50b1N0cmluZygoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICBwdXRNeVZhcigndHN1YmxpbmsnLCBpbnB1dClcXHJcXG4gICAgICAgICAgICAgICAgfSksXFxyXFxuICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgIH0pXFxyXFxuXFxyXFxuICAgICAgICAvLyDpl7TpmpTmoI9cXHJcXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTA7IGkrKykge1xcclxcbiAgICAgICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICAgICAgY29sX3R5cGU6ICdibGFua19ibG9jaycsXFxyXFxuICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgIH1cXHJcXG5cXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICB0aXRsZTogJ+a3u+WKoCcsXFxyXFxuICAgICAgICAgICAgdXJsOiAkKCkubGF6eVJ1bGUoKCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICBsZXQgdHN1Ym5hbWUgPSBnZXRNeVZhcigndHN1Ym5hbWUnKVxcclxcbiAgICAgICAgICAgICAgICBsZXQgdHN1YmxpbmsgPSBnZXRNeVZhcigndHN1YmxpbmsnKVxcclxcbiAgICAgICAgICAgICAgICBsZXQgdHN1YnBhc3N3ZCA9IGdldE15VmFyKCd0c3VicGFzc3dkJylcXHJcXG4gICAgICAgICAgICAgICAgdmFyIHsgc3ViX2NoZWNrLCBzdWJfcmVhZF9sb2NhbCwgc3ViX3dyaXRlX2xvY2FsLCBzaGFyZV93ZWJfdXJsIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcblxcclxcbiAgICAgICAgICAgICAgICBpZiAoIXRzdWJuYW1lIHx8ICF0c3VibGluaykge1xcclxcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+WQjeWtl+WSjOWIhuS6q+mTvuaOpeS4jeiDveS4uuepuidcXHJcXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIHRzdWJsaW5rID0gc2hhcmVfd2ViX3VybCh0c3VibGluaylcXHJcXG4gICAgICAgICAgICAgICAgICAgIGlmIChzdWJfY2hlY2sodHN1YmxpbmspKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+W3sue7j+WtmOWcqOebuOWQjOWIhuS6q+mTvuaOpe+8jOWPquiDveWOu+e8lui+keimhueblidcXHJcXG4gICAgICAgICAgICAgICAgICAgIH1cXHJcXG5cXHJcXG4gICAgICAgICAgICAgICAgICAgIGxldCBzaGFyZV9saW5rX3VybHMgPSBzdWJfcmVhZF9sb2NhbCgpXFxyXFxuICAgICAgICAgICAgICAgICAgICBzaGFyZV9saW5rX3VybHMucHVzaCh7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogdHN1Ym5hbWUsXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB0c3VibGluayxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXNzd2Q6IHRzdWJwYXNzd2QsXFxyXFxuICAgICAgICAgICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgICAgICAgICAgc3ViX3dyaXRlX2xvY2FsKHNoYXJlX2xpbmtfdXJscylcXHJcXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/mt7vliqDliIbkuqvpk77mjqXmiJDlip8nXFxyXFxuICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfMicsXFxyXFxuICAgICAgICB9KVxcclxcblxcclxcbiAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgIHRpdGxlOiAn5riF56m6JyxcXHJcXG4gICAgICAgICAgICB1cmw6ICQoKS5sYXp5UnVsZSgoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcclxcbiAgICAgICAgICAgIH0pLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8yJyxcXHJcXG4gICAgICAgIH0pXFxyXFxuXFxyXFxuICAgICAgICBicmVha1xcclxcbiAgICBjYXNlICczJzpcXHJcXG4gICAgICAgIGNsZWFyTXlWYXIoJ3RzdWJuYW1lJylcXHJcXG4gICAgICAgIGNsZWFyTXlWYXIoJ3RzdWJsaW5rJylcXHJcXG4gICAgICAgIGNsZWFyTXlWYXIoJ3RzdWJwYXNzd2QnKVxcclxcblxcclxcbiAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgIHRpdGxlOiAn8J+TnSDliIbkuqvlkI3lrZcnLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXHJcXG4gICAgICAgICAgICBleHRyYTogeyBsaW5lVmlzaWJsZTogZmFsc2UgfSxcXHJcXG4gICAgICAgIH0pXFxyXFxuXFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6ICfliIbkuqvlkI3lrZcnLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnaW5wdXQnLFxcclxcbiAgICAgICAgICAgIGRlc2M6ICfor7fovpPlhaVQaWtQYWvliIbkuqvlkI3lrZcnLFxcclxcbiAgICAgICAgICAgIGV4dHJhOiB7XFxyXFxuICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogZ2V0TXlWYXIoJ3N1Yml0ZW1fZWRpdF9uYW1lJywgJycpLFxcclxcbiAgICAgICAgICAgICAgICBvbkNoYW5nZTogXFxcInB1dE15VmFyKCd0c3VibmFtZScsIGlucHV0KVxcXCIsXFxyXFxuICAgICAgICAgICAgICAgIHRpdGxlVmlzaWJsZTogZmFsc2UsXFxyXFxuICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgIH0pXFxyXFxuXFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6ICfwn5SXIOWIhuS6q+mTvuaOpScsXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzEnLFxcclxcbiAgICAgICAgICAgIGV4dHJhOiB7IGxpbmVWaXNpYmxlOiBmYWxzZSB9LFxcclxcbiAgICAgICAgfSlcXHJcXG5cXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICB0aXRsZTogJ+WIhuS6q+mTvuaOpScsXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICdpbnB1dCcsXFxyXFxuICAgICAgICAgICAgZGVzYzogJ+ivt+i+k+WFpVBpa1Bha+WIhuS6q+mTvuaOpScsXFxyXFxuICAgICAgICAgICAgZXh0cmE6IHtcXHJcXG4gICAgICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiBnZXRNeVZhcignc3ViaXRlbV9lZGl0X3VybCcsICcnKSxcXHJcXG4gICAgICAgICAgICAgICAgb25DaGFuZ2U6IFxcXCJwdXRNeVZhcigndHN1YmxpbmsnLCBpbnB1dClcXFwiLFxcclxcbiAgICAgICAgICAgICAgICB0aXRsZVZpc2libGU6IGZhbHNlLFxcclxcbiAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICB9KVxcclxcblxcclxcbiAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgIHRpdGxlOiAn8J+UkSDliIbkuqvlr4bnoIEnLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXHJcXG4gICAgICAgICAgICBleHRyYTogeyBsaW5lVmlzaWJsZTogZmFsc2UgfSxcXHJcXG4gICAgICAgIH0pXFxyXFxuXFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6ICfliIbkuqvlr4bnoIEnLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnaW5wdXQnLFxcclxcbiAgICAgICAgICAgIGRlc2M6ICfor7fovpPlhaVQaWtQYWvliIbkuqvlr4bnoIEnLFxcclxcbiAgICAgICAgICAgIGV4dHJhOiB7XFxyXFxuICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogZ2V0TXlWYXIoJ3N1Yml0ZW1fZWRpdF9wYXNzd2QnLCAnJyksXFxyXFxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlOiBcXFwicHV0TXlWYXIoJ3RzdWJwYXNzd2QnLCBpbnB1dClcXFwiLFxcclxcbiAgICAgICAgICAgICAgICB0aXRsZVZpc2libGU6IGZhbHNlLFxcclxcbiAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICB9KVxcclxcblxcclxcbiAgICAgICAgLy8g6Ze06ZqU5qCPXFxyXFxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDE1OyBpKyspIHtcXHJcXG4gICAgICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnYmxhbmtfYmxvY2snLFxcclxcbiAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICB9XFxyXFxuXFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6ICfkv67mlLknLFxcclxcbiAgICAgICAgICAgIHVybDogJCgpLmxhenlSdWxlKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgbGV0IHRzdWJuYW1lID0gZ2V0TXlWYXIoJ3RzdWJuYW1lJylcXHJcXG4gICAgICAgICAgICAgICAgbGV0IHRzdWJsaW5rID0gZ2V0TXlWYXIoJ3RzdWJsaW5rJylcXHJcXG4gICAgICAgICAgICAgICAgbGV0IHRzdWJwYXNzd2QgPSBnZXRNeVZhcigndHN1YnBhc3N3ZCcpXFxyXFxuICAgICAgICAgICAgICAgIHZhciB7IHN1Yl9jaGVjaywgc3ViX3JlYWRfbG9jYWwsIHN1Yl93cml0ZV9sb2NhbCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG5cXHJcXG4gICAgICAgICAgICAgICAgaWYgKCF0c3VibmFtZSB8fCAhdHN1YmxpbmspIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/lkI3lrZflkozliIbkuqvpk77mjqXkuI3og73kuLrnqbonXFxyXFxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICBsZXQgc2hhcmVfbGlua191cmxzID0gc3ViX3JlYWRfbG9jYWwoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgbGV0IHNoYXJlX2xpbmtfdXJsX2V4aXN0ID0gZmFsc2VcXHJcXG4gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2hhcmVfbGlua191cmxzLmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRzdWJsaW5rID09IHNoYXJlX2xpbmtfdXJsc1tpXS51cmwpIHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hhcmVfbGlua191cmxzW2ldLm5hbWUgPSB0c3VibmFtZVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGFyZV9saW5rX3VybF9leGlzdCA9IHRydWVcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICBpZiAoIXNoYXJlX2xpbmtfdXJsX2V4aXN0KSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgc2hhcmVfbGlua191cmxzLnB1c2goe1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiB0c3VibmFtZSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB0c3VibGluayxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFzc3dkOiB0c3VicGFzc3dkLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgICAgICBzdWJfd3JpdGVfbG9jYWwoc2hhcmVfbGlua191cmxzKVxcclxcbiAgICAgICAgICAgICAgICAgICAgLy8gYmFjayh0cnVlKVxcclxcbiAgICAgICAgICAgICAgICAgICAgLy8gcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcclxcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+S/ruaUueWIhuS6q+mTvuaOpeaIkOWKnydcXHJcXG4gICAgICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgIH0pLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8yJyxcXHJcXG4gICAgICAgIH0pXFxyXFxuXFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6ICfov5jljp8nLFxcclxcbiAgICAgICAgICAgIHVybDogJCgpLmxhenlSdWxlKCgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgfSksXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICd0ZXh0XzInLFxcclxcbiAgICAgICAgfSlcXHJcXG4gICAgICAgIGJyZWFrXFxyXFxuICAgIGRlZmF1bHQ6XFxyXFxuICAgICAgICBjbGVhck15VmFyKCd0c3VibmFtZScpXFxyXFxuICAgICAgICBjbGVhck15VmFyKCd0c3VibGluaycpXFxyXFxuICAgICAgICBjbGVhck15VmFyKCd0c3VicGFzc3dkJylcXHJcXG5cXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICB0aXRsZTogYPCfpoAg55u05o6l5paH5pys5qih5byP57yW6L6R6K6i6ZiF5paH5Lu25YaF5a65PGJyLz7moLzlvI86IDxici8+XFxyXFxuWzxici8+XFxyXFxuJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ezxici8+XFxyXFxuJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7XFxcIm5hbWVcXFwiOiBcXFwi57KJ5aa555qE5YiG5LqrXFxcIiw8YnIvPlxcclxcbiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1xcXCJ1cmxcXFwiOiBcXFwiaHR0cHM6Ly9teXBpa3Bhay5jb20vcy8qKipcXFwiLDxici8+XFxyXFxuJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7XFxcInBhc3N3ZFxcXCI6IFxcXCJlbW1tXFxcIjxici8+XFxyXFxuJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7fTxici8+XFxyXFxuXWAsXFxyXFxuICAgICAgICAgICAgdXJsOiAnaGlrZXI6Ly9lbXB0eScsXFxyXFxuICAgICAgICAgICAgY29sX3R5cGU6ICdyaWNoX3RleHQnLFxcclxcbiAgICAgICAgICAgIGV4dHJhOiB7IGxpbmVWaXNpYmxlOiBmYWxzZSB9LFxcclxcbiAgICAgICAgfSlcXHJcXG5cXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICBjb2xfdHlwZTogJ2lucHV0JyxcXHJcXG4gICAgICAgICAgICBleHRyYToge1xcclxcbiAgICAgICAgICAgICAgICB0eXBlOiAndGV4dGFyZWEnLFxcclxcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDgsXFxyXFxuICAgICAgICAgICAgICAgIGhpZ2hsaWdodDogdHJ1ZSxcXHJcXG4gICAgICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiByZWFkRmlsZSgnZm1fcGlrcGFrX3N1Yi50eHQnLCAwKSxcXHJcXG4gICAgICAgICAgICAgICAgb25DaGFuZ2U6ICQudG9TdHJpbmcoKCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3RzdWJsaW5rJywgaW5wdXQpXFxyXFxuICAgICAgICAgICAgICAgIH0pLFxcclxcbiAgICAgICAgICAgIH0sXFxyXFxuICAgICAgICB9KVxcclxcblxcclxcbiAgICAgICAgLy8g6Ze06ZqU5qCPXFxyXFxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEwOyBpKyspIHtcXHJcXG4gICAgICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnYmxhbmtfYmxvY2snLFxcclxcbiAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICB9XFxyXFxuXFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6ICfkv53lrZgnLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8yJyxcXHJcXG4gICAgICAgICAgICB1cmw6ICQoKS5sYXp5UnVsZSgoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgIHZhciB7IHN1Yl93cml0ZV9sb2NhbCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgbGV0IHNoYXJlX2xpbmtfdXJscyA9IGdldE15VmFyKCd0c3VibGluaycsICcnKVxcclxcbiAgICAgICAgICAgICAgICBpZiAoIXNoYXJlX2xpbmtfdXJscykge1xcclxcbiAgICAgICAgICAgICAgICAgICAgc2hhcmVfbGlua191cmxzID0gJ1tdJ1xcclxcbiAgICAgICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgICAgIHNoYXJlX2xpbmtfdXJscyA9IGV2YWwoc2hhcmVfbGlua191cmxzKVxcclxcbiAgICAgICAgICAgICAgICBzdWJfd3JpdGVfbG9jYWwoc2hhcmVfbGlua191cmxzKVxcclxcbiAgICAgICAgICAgICAgICAvLyByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/nvJbovpHliIbkuqvpk77mjqXmiJDlip8nXFxyXFxuICAgICAgICAgICAgfSksXFxyXFxuICAgICAgICB9KVxcclxcblxcclxcbiAgICAgICAgcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgIHRpdGxlOiAn6L+Y5Y6fJyxcXHJcXG4gICAgICAgICAgICB1cmw6ICQoKS5sYXp5UnVsZSgoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcclxcbiAgICAgICAgICAgIH0pLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8yJyxcXHJcXG4gICAgICAgIH0pXFxyXFxufVxcclxcblxcclxcbnNldFJlc3VsdChyZXMpXFxyXFxuXCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJTdWJJdGVtXCIsXCJwYXRoXCI6XCJTdWJJdGVtXCIsXCJydWxlXCI6XCJqczpcXHJcXG52YXIgeyBwaWtwYWtfaW5pdCwgc3ViX3JlYWRfbG9jYWwgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxudmFyIHsgc3R5bGVfY29sb3IgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0RlYnVnJylcXHJcXG5waWtwYWtfaW5pdCgpXFxyXFxudmFyIHJlcyA9IFtdXFxyXFxuc2V0UGFnZVRpdGxlKCfnrqHnkIbliIbkuqsnKVxcclxcbmxldCBzaGFyZV9saW5rX3VybHMgPSBzdWJfcmVhZF9sb2NhbCgpXFxyXFxuXFxyXFxucmVzLnB1c2goe1xcclxcbiAgICB0aXRsZTogYPCfk50g5b2T5YmN5YiG5Lqr5oC75pWw5Li6OiAke3N0eWxlX2NvbG9yKHNoYXJlX2xpbmtfdXJscy5sZW5ndGggKyAn5p2hJywgJyMyNEJCNzUnLCAnc3Ryb25nJyl9YCxcXHJcXG4gICAgY29sX3R5cGU6ICd0ZXh0XzEnLFxcclxcbiAgICB1cmw6ICdoaWtlcjovL2VtcHR5JyxcXHJcXG4gICAgLy8gcGljX3VybDogJ2h0dHBzOi8vbXlwaWtwYWsuY29tL2Zhdmljb24tMzJ4MzIucG5nJyxcXHJcXG59KVxcclxcblxcclxcbmZvciAobGV0IGkgPSAwOyBpIDwgc2hhcmVfbGlua191cmxzLmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgIGxldCB1cmwgPSAkKFsn57yW6L6RJywgJ+aWh+acrOe8lui+kScsICfliKDpmaQnLCAn5aSN5Yi25YiG5LqrJywgJ+aJi+WKqOaOkuW6jycsICfmmbrog73mjpLluo8nXSwgMykuc2VsZWN0KChpKSA9PiB7XFxyXFxuICAgICAgICB2YXIgeyBzdWJfcmVhZF9sb2NhbCwgc3ViX3dyaXRlX2xvY2FsLCBzaGFyZV93ZWJfdXJsIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgbGV0IHNoYXJlX2xpbmtfdXJscyA9IHN1Yl9yZWFkX2xvY2FsKClcXHJcXG4gICAgICAgIHN3aXRjaCAoTVlfSU5ERVgpIHtcXHJcXG4gICAgICAgICAgICBjYXNlIDA6XFxyXFxuICAgICAgICAgICAgICAgIHB1dE15VmFyKCdzdWJpdGVtX2VkaXRfbmFtZScsIHNoYXJlX2xpbmtfdXJsc1tpXS5uYW1lKVxcclxcbiAgICAgICAgICAgICAgICBwdXRNeVZhcignc3ViaXRlbV9lZGl0X3VybCcsIHNoYXJlX2xpbmtfdXJsc1tpXS51cmwpXFxyXFxuICAgICAgICAgICAgICAgIHB1dE15VmFyKCdzdWJpdGVtX2VkaXRfcGFzc3dkJywgc2hhcmVfbGlua191cmxzW2ldLnBhc3N3ZClcXHJcXG4gICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL3BhZ2UvU3ViU2V0dGluZz9zaG93dHlwZT0zI25vSGlzdG9yeSMjbm9SZWNvcmRIaXN0b3J5IydcXHJcXG4gICAgICAgICAgICBjYXNlIDE6XFxyXFxuICAgICAgICAgICAgICAgIHJldHVybiBgaGlrZXI6Ly9wYWdlL1N1YlNldHRpbmc/c2hvd3R5cGU9MiNub0hpc3RvcnkjI25vUmVjb3JkSGlzdG9yeSNgXFxyXFxuICAgICAgICAgICAgY2FzZSAyOlxcclxcbiAgICAgICAgICAgICAgICBjb25maXJtKHtcXHJcXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn5bCP56iL5bqP5o+Q56S6JyxcXHJcXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICfmmK/lkKbliKDpmaTliIbkuqvpk77mjqUnLFxcclxcbiAgICAgICAgICAgICAgICAgICAgY29uZmlybTogJC50b1N0cmluZyhcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAoaSwgc2hhcmVfbGlua191cmxzKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB7IHN1Yl93cml0ZV9sb2NhbCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hhcmVfbGlua191cmxzLnNwbGljZShpLCAxKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJfd3JpdGVfbG9jYWwoc2hhcmVfbGlua191cmxzKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/liKDpmaTliIbkuqvpk77mjqXmiJDlip8nXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBpLFxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNoYXJlX2xpbmtfdXJsc1xcclxcbiAgICAgICAgICAgICAgICAgICAgKSxcXHJcXG4gICAgICAgICAgICAgICAgICAgIGNhbmNlbDogJC50b1N0cmluZygoKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/lj5bmtojliKDpmaTliIbkuqvpk77mjqUnXFxyXFxuICAgICAgICAgICAgICAgICAgICB9KSxcXHJcXG4gICAgICAgICAgICAgICAgfSlcXHJcXG4gICAgICAgICAgICAgICAgYnJlYWtcXHJcXG4gICAgICAgICAgICBjYXNlIDM6XFxyXFxuICAgICAgICAgICAgICAgIGlmIChzaGFyZV9saW5rX3VybHNbaV0ucGFzc3dkKSB7XFxyXFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYGNvcHk6Ly8ke3NoYXJlX2xpbmtfdXJsc1tpXS51cmx9XFxcXG7lr4bnoIE6ICR7c2hhcmVfbGlua191cmxzW2ldLnBhc3N3ZH1cXFxcbuWkjeWItui/meauteWGheWuueWQjuaJk+W8gCBQaWtQYWstQXBw77yM55WF5Lqr5p6B6YCf56eS5pKtYFxcclxcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGBjb3B5Oi8vJHtzaGFyZV9saW5rX3VybHNbaV0udXJsfVxcXFxu5aSN5Yi26L+Z5q615YaF5a655ZCO5omT5byAIFBpa1Bhay1BcHDvvIznlYXkuqvmnoHpgJ/np5Lmkq1gXFxyXFxuICAgICAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAvLyByZXR1cm4gJ2NvcHk6Ly8nICsgc2hhcmVfd2ViX3VybChzaGFyZV9saW5rX3VybHNbaV0udXJsLCBzaGFyZV9saW5rX3VybHNbaV0ucGFzc3dkKVxcclxcbiAgICAgICAgICAgIGNhc2UgNDpcXHJcXG4gICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3N1Yml0ZW1fYWN0aW9uJywgJ3NvcnQnKVxcclxcbiAgICAgICAgICAgICAgICBwdXRNeVZhcignc29ydF8xX3BvcycsIGkpXFxyXFxuICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKClcXHJcXG4gICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+ivt+eCueWHu+S9oOimgeaUvueahOS9jee9ridcXHJcXG4gICAgICAgICAgICAvLyByZXR1cm4gJ2hpa2VyOi8vZW1wdHknXFxyXFxuICAgICAgICAgICAgZGVmYXVsdDpcXHJcXG4gICAgICAgICAgICAgICAgdmFyIHsgc29ydF9pdGVtc19saXN0IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9BUEknKVxcclxcbiAgICAgICAgICAgICAgICBsZXQgc2hhcmVfYXV0b19zb3J0X2xpc3QgPSBzb3J0X2l0ZW1zX2xpc3Qoc2hhcmVfbGlua191cmxzLCAwKVxcclxcbiAgICAgICAgICAgICAgICB2YXIgeyBzdWJfd3JpdGVfbG9jYWwgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0FQSScpXFxyXFxuICAgICAgICAgICAgICAgIHN1Yl93cml0ZV9sb2NhbChzaGFyZV9hdXRvX3NvcnRfbGlzdClcXHJcXG4gICAgICAgICAgICAgICAgLy8gc2hhcmVfYXV0b19zb3J0X2xpc3QuZm9yRWFjaCgoZWxlKSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgIC8vICAgICAkLmxvZyhlbGUubmFtZSlcXHJcXG4gICAgICAgICAgICAgICAgLy8gfSlcXHJcXG4gICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5pm66IO95o6S5bqP5oiQ5YqfJ1xcclxcbiAgICAgICAgfVxcclxcbiAgICB9LCBpKVxcclxcblxcclxcbiAgICBpZiAoZ2V0TXlWYXIoJ3N1Yml0ZW1fYWN0aW9uJywgJ2Jyb3dzZScpID09ICdzb3J0Jykge1xcclxcbiAgICAgICAgdXJsID0gJCgpLmxhenlSdWxlKChpKSA9PiB7XFxyXFxuICAgICAgICAgICAgdmFyIHsgc3ViX3JlYWRfbG9jYWwsIHN1Yl93cml0ZV9sb2NhbCB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvQVBJJylcXHJcXG4gICAgICAgICAgICBsZXQgc2hhcmVfbGlua191cmxzID0gc3ViX3JlYWRfbG9jYWwoKVxcclxcbiAgICAgICAgICAgIGxldCBzb3J0XzFfcG9zID0gZ2V0TXlWYXIoJ3NvcnRfMV9wb3MnLCAnMCcpXFxyXFxuICAgICAgICAgICAgbGV0IHRfc2hhcmVfbGlua191cmxzID0gW11cXHJcXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNoYXJlX2xpbmtfdXJscy5sZW5ndGg7IGkrKykge1xcclxcbiAgICAgICAgICAgICAgICB0X3NoYXJlX2xpbmtfdXJscy5wdXNoKHNoYXJlX2xpbmtfdXJsc1tpXSlcXHJcXG4gICAgICAgICAgICB9XFxyXFxuICAgICAgICAgICAgdF9zaGFyZV9saW5rX3VybHNbc29ydF8xX3Bvc10gPSBzaGFyZV9saW5rX3VybHNbaV1cXHJcXG4gICAgICAgICAgICB0X3NoYXJlX2xpbmtfdXJsc1tpXSA9IHNoYXJlX2xpbmtfdXJsc1tzb3J0XzFfcG9zXVxcclxcbiAgICAgICAgICAgIHNoYXJlX2xpbmtfdXJscyA9IHRfc2hhcmVfbGlua191cmxzXFxyXFxuICAgICAgICAgICAgc3ViX3dyaXRlX2xvY2FsKHNoYXJlX2xpbmtfdXJscylcXHJcXG4gICAgICAgICAgICBwdXRNeVZhcignc3ViaXRlbV9hY3Rpb24nLCAnYnJvd3NlJylcXHJcXG4gICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcclxcbiAgICAgICAgfSwgaSlcXHJcXG4gICAgfVxcclxcbiAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAvLyB0aXRsZTogc2hhcmVfbGlua191cmxzW2ldLm5hbWUsXFxyXFxuICAgICAgICB0aXRsZTpcXHJcXG4gICAgICAgICAgICBpICtcXHJcXG4gICAgICAgICAgICAxICtcXHJcXG4gICAgICAgICAgICAnLiAnICtcXHJcXG4gICAgICAgICAgICAoZ2V0TXlWYXIoJ3N1Yml0ZW1fYWN0aW9uJywgJ2Jyb3dzZScpID09ICdzb3J0JyAmJiBnZXRNeVZhcignc29ydF8xX3BvcycsICcwJykgPT0gaVxcclxcbiAgICAgICAgICAgICAgICA/IHN0eWxlX2NvbG9yKHNoYXJlX2xpbmtfdXJsc1tpXS5uYW1lLCAnIzdCNjhFRScsICdzdHJvbmcnKS5yZXBsYWNlKCfigJjigJjigJnigJknLCAnJylcXHJcXG4gICAgICAgICAgICAgICAgOiBzaGFyZV9saW5rX3VybHNbaV0ubmFtZSksXFxyXFxuICAgICAgICBkZXNjOlxcclxcbiAgICAgICAgICAgIHNoYXJlX2xpbmtfdXJsc1tpXS51cmwucmVwbGFjZSgnaHR0cHM6Ly9teXBpa3Bhay5jb20vcy8nLCAnJykgK1xcclxcbiAgICAgICAgICAgICcoJyArXFxyXFxuICAgICAgICAgICAgKHNoYXJlX2xpbmtfdXJsc1tpXS5wYXNzd2QgPyBzaGFyZV9saW5rX3VybHNbaV0ucGFzc3dkIDogJ+aXoCcpICtcXHJcXG4gICAgICAgICAgICAnKScsXFxyXFxuICAgICAgICBjb2xfdHlwZTogJ2F2YXRhcicsXFxyXFxuICAgICAgICB1cmw6IHVybCxcXHJcXG4gICAgICAgIHBpY191cmw6ICdodHRwczovL215cGlrcGFrLmNvbS9mYXZpY29uLTMyeDMyLnBuZycsXFxyXFxuICAgIH0pXFxyXFxufVxcclxcblxcclxcbnNldFJlc3VsdChyZXMpXFxyXFxuXCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJDbG91ZEltcG9ydFwiLFwicGF0aFwiOlwiQ2xvdWRJbXBvcnRcIixcInJ1bGVcIjpcInZhciB7Y2xvdWRfaW1wb3J0fSA9ICQucmVxdWlyZShcXFwiaGlrZXI6Ly9wYWdlL0FQST9ydWxlPeeyieWmueeIsVBpa1Bha1xcXCIpXFxyXFxuJC5leHBvcnRzID0gY2xvdWRfaW1wb3J0KGlucHV0KVxcclxcblwifV0iLCJpY29uIjoiaHR0cHM6Ly9teXBpa3Bhay5jb20vZmF2aWNvbi0zMngzMi5wbmciLCJwcm94eSI6IiJ9
Add Comment
Please, Sign In to add comment