بررسی اجمالی
گزارش تولید شده در 1405/05/27 در 13:50:25 (UTC +03:30). Refresh report
3 ساعت پیش
70
100
گیم مدز - مرجع دانلود مود بازی های کامپیوتری
این گزارش سئو عملکرد https://www.gamemods.ir/ را با امتیاز 70 از 100 تحلیل می‌کند. این گزارش 3 مشکل با اولویت بالا، 6 مشکل با اولویت متوسط و 4 مشکل با اولویت پایین از مجموع 40 تست انجام‌شده را شناسایی کرده است.
سئو
عنوان
برچسب عنوان کامل است.
گیم مدز - مرجع دانلود مود بازی های کامپیوتری
برچسب عنوان عنصر HTML است که عنوان صفحه وب را مشخص می‌کند. برچسب عنوان در بالای مرورگر شما، در نتایج جستجو و همچنین در نوار بوک‌مارک‌ها نمایش داده می‌شود.
بیشتر بدانید
توضیحات متا
برچسب توضیحات متا خوب است.
مرجع دانلود مود بازی های کامپیوتری
توضیحات متا یک برچسب HTML است که خلاصه‌ای کوتاه و دقیق از صفحه وب ارائه می‌دهد. توضیحات متا توسط موتورهای جستجو برای شناسایی موضوع صفحه وب و ارائه نتایج جستجوی مرتبط استفاده می‌شود.
بیشتر بدانید
کلمات کلیدی متا
برچسب کلمات کلیدی متا وجود ندارد یا خالی است.
برچسب کلمات کلیدی متا یک برچسب HTML است که کلمات مهم مربوط به صفحه وب را لیست می‌کند. کلمات کلیدی متا زمانی توسط موتورهای جستجو برای شناسایی موضوع صفحه وب و بهبود ارتباط جستجو استفاده می‌شدند، اما اکنون به طور عمده توسط موتورهای جستجوی اصلی نادیده گرفته می‌شوند.
بیشتر بدانید
Meta refresh
The webpage does not have meta refresh.
The meta refresh tag is used to redirect users or refresh a webpage after a specified time interval. This practice is generally discouraged as it can create a poor user experience and may be seen as a spam technique by search engines.
بیشتر بدانید
عناوین
عناوین به درستی تنظیم شده‌اند.
  1. گیم مدز
  1. دانلود ورژن جدید بازی BeamNG.drive نسخه 0.38.6 برای کامپیوتر
  2. آخرین آپدیت بازی یوروتراک 2 ورژن 1.60.1.0 + توضیحات رسمی
  3. دانلود مود کامیون Volvo F Series [F12 – F16] برای Euro Truck Simulator 2 1.60؛ کامیون کلاسیک ولوو
  4. ⚡ خلاصه سریع
  5. 🚛 معرفی مود Volvo F Series [F12 – F16]
  6. دانلود مود کامیون Scania S Longline برای Euro Truck Simulator 2 1.60؛ کشنده‌ای خاص با کابین کشیده
  7. ⚡ خلاصه سریع
  8. 🚛 معرفی مود Scania S Longline
  9. دانلود مود Toyota GR86 برای BeamNG.drive 0.39؛ کوپه اسپرت ژاپنی
  10. ⚡ خلاصه سریع
  11. 🚗 معرفی مود Toyota GR86
  12. دانلود مود Mercedes-Benz ML-Class برای BeamNG.drive 0.39؛ شاسی‌بلند لوکس مرسدس بنز
  13. ⚡ خلاصه سریع
  14. 🚙 معرفی مود Mercedes-Benz ML-Class
  15. دانلود مود 2011 – 2014 Dodge Charger برای BeamNG.drive 0.38 و 0.39؛ سدان عضلانی آمریکایی
  16. ⚡ خلاصه سریع
  17. 🚗 معرفی مود 2011 - 2014 Dodge Charger
  18. دانلود مود ماشین BMW M4 Widebody 2023 برای Euro Truck Simulator 2 1.60؛ کوپه اسپرت با طراحی عریض
  19. ⚡ خلاصه سریع
  20. 🚗 معرفی مود BMW M4 Widebody 2023
  21. دانلود مود کامیون Scania T580 Klemmensen برای Euro Truck Simulator 2 1.60؛ کشنده قدرتمند و سفارشی اسکانیا
  22. ⚡ خلاصه سریع
  23. 🚛 معرفی مود Scania T580 Klemmensen
  24. دانلود مود Lamborghini Aventador برای BeamNG.drive 0.39؛ سوپراسپرت ایتالیایی با طراحی جذاب
  25. ⚡ خلاصه سریع
  26. 🚗 معرفی مود Lamborghini Aventador
  27. دانلود مود Mercedes-Benz AMG W213 برای BeamNG.drive 0.39؛ سدان لوکس و اسپرت مرسدس بنز
  28. ⚡ خلاصه سریع
  29. 🚗 معرفی مود Mercedes-Benz AMG W213
  30. دانلود مود Audi S8 برای BeamNG.drive 0.39؛ سدان لوکس و قدرتمند آئودی
  31. ⚡ خلاصه سریع
  32. 🚗 معرفی مود Audi S8
  1. جدیدترین مدهای ایرانی یوروتراک 2 رو اینجا پیدا کن !
  2. جدیدترین مدهای ایرانی بازی BeamNG رو اینجا پیدا کن !
  3. دانلود جدیدترین نسخه بازی یوروتراک 2
  4. دانلود جدیدترین نسخه بازی آمریکن تراک
  5. وبسایت گیم مدز را در یوتیوب دنبال کنید
  6. بازی استوکورسا رو پر ماد ایرانی کن !
  7. کامل ترین ولوو سایپا دیزلی منتشر شد ! از دستش نده
  8. دانلود وانت نیسان زامیاد برای یوروتراک 2
  9. کفی تمام ایرانی سنگ کش
  10. پراید وانت 151 تمام ایرانی
  11. دانلود مپ کامل ایران ورژن 0.1 بتا برای یوروتراک 2
  12. پک کامل انواع تیپ پژو 405 ایرانی
  1. دانلود ورژن جدید بازی BeamNG.drive نسخه 0.38.6 برای کامپیوتر 22641 بازدید
  2. آخرین آپدیت بازی یوروتراک 2 ورژن 1.60.1.0 + توضیحات رسمی 510686 بازدید
  3. دانلود مود کامیون Volvo F Series [F12 – F16] برای Euro Truck Simulator 2 1.60؛ کامیون کلاسیک ولوو 103 بازدید
  4. دانلود مود کامیون Scania S Longline برای Euro Truck Simulator 2 1.60؛ کشنده‌ای خاص با کابین کشیده 30 بازدید
  5. دانلود مود Toyota GR86 برای BeamNG.drive 0.39؛ کوپه اسپرت ژاپنی 19 بازدید
  6. دانلود مود 2011 – 2014 Dodge Charger برای BeamNG.drive 0.38 و 0.39؛ سدان عضلانی آمریکایی 15 بازدید
  7. دانلود مود Mercedes-Benz ML-Class برای BeamNG.drive 0.39؛ شاسی‌بلند لوکس مرسدس بنز 12 بازدید
  8. آخرین آپدیت بازی یوروتراک 2 ورژن 1.60.1.0 + توضیحات رسمی 510686 بازدید
  9. دانلود ورژن جدید بازی BeamNG.drive نسخه 0.38.6 برای کامپیوتر 22641 بازدید
  10. دانلود مود Toyota Land Cruiser Prado 2025-2026 برای BeamNG.drive نسخه 0.38 474 بازدید
  11. دانلود مود Toyota Land Cruiser 70th Anniversary بازی BeamNG.Drive ورژن 0.38 432 بازدید
  12. دانلود مود ماشین BMW M4 Widebody 2023 برای Euro Truck Simulator 2 1.60؛ کوپه اسپرت با طراحی عریض 365 بازدید
  13. آخرین آپدیت بازی یوروتراک 2 ورژن 1.60.1.0 + توضیحات رسمی 510686 بازدید
  14. دانلود ورژن جدید بازی BeamNG.drive نسخه 0.38.6 برای کامپیوتر 22641 بازدید
  15. مپ جدید آسیا Beyond نسخه 7 برای بازی یوروتراک 2 ورژن 1.57 166769 بازدید
  16. ⭐️ اختصاصی گیم مدز پک تمام ایرانی پژو 405 در تیپ های مختلف + داخلی برای بازی Euro Truck Simulator 2 ورژن 1.54 105417 بازدید
  17. دانلود پژو پارس جدید 2025 برای یورو تراک 2 ورژن 1.56 24326 بازدید
  1. محتوا
  2. مطالب پربازدید سایت
  3. دسته ها
  1. Coded by : Mohammad Yousuf Sharif
  2. کلیه ی حقوق برای وبسایت گیم مدز | www.GameMods.ir محفوظ و قابل پیگرد میباشد .
برچسب‌های h نشان‌دهنده عناوین صفحه وب هستند. برچسب h1 مهم‌ترین برچسب h است و موضوع اصلی صفحه را توصیف می‌کند، در حالی که بقیه برچسب‌ها زیرموضوعات صفحه وب را توصیف می‌کنند.
بیشتر بدانید
کلمات کلیدی محتوا
محتوا دارای کلمات کلیدی مرتبط است.
گیم مدز دانلود مود بازی های
محتوای صفحه وب باید شامل کلمات کلیدی مرتبطی باشد که همچنین در عنوان صفحه وب یافت می‌شوند.
ویژگی alt متن جایگزینی را برای یک تصویر مشخص می‌کند، اگر تصویر قابل نمایش نباشد. ویژگی alt همچنین برای موتورهای جستجو مفید است تا موضوع تصویر را شناسایی کنند و به نرم‌افزارهای خواندن صفحه کمک می‌کند تا تصویر را توصیف کنند.
بیشتر بدانید
نشانی اینترنتی SEO دوستانه
نشانی اینترنتی حاوی هیچ کلمه کلیدی مرتبطی نیست.
https://www.gamemods.ir/
نشانی‌های اینترنتی SEO دوستانه، نشانی‌هایی هستند که حاوی کلمات کلیدی مرتبط با موضوع صفحه وب هستند و هیچ کاراکتر خاصی به جز اسلش و خط تیره ندارند.
بیشتر بدانید
صفحه ۴۰۴
وب‌سایت صفحات خطای ۴۰۴ ندارد.
وضعیت صفحه وب ۴۰۴ به کاربران و موتورهای جستجو اطلاع می‌دهد که یک صفحه وب وجود ندارد.
بیشتر بدانید
Robots.txt
صفحه وب توسط موتورهای جستجو قابل دسترسی است.
A robots.txt file inform the search engines which links from the website can be accessed.
بیشتر بدانید
بدون ایندکس
صفحه وب برچسب noindex تنظیم نشده است.
برچسب noindex به موتورهای جستجو دستور می‌دهد صفحه وب را ایندکس نکنند.
بیشتر بدانید
پیوندهای داخل صفحه
صفحه وب بیش از 150 پیوند دارد.
  1. https://www.gamemods.ir
  2. https://www.gamemods.ir/rss
  3. یورو تراک ۲
  4. مود های ایرانی
  5. ریشید | Reshade
  6. سیو بازی
  7. کابین داخلی
  8. کامیون
  9. ماشین های سواری و اتوبوس بازی یورو تراک 2
  10. محموله / Cargo
  11. مدهای اختصاصی
  12. مدهای فروشی
  13. نرم افزارهای مربوطه
  14. یوروتراک 2 آنلاین
  15. GTA V
  16. American Truck Simulator
  17. آموزش ها و ترفندها
  18. بسته الحاقی / DLC
  19. پــچ ها و آپدیت ها
  20. تریلر/Trailer
  21. تیونینگ
  22. دانلود فول ورژن
  23. دیگر مدها
  24. City Car Driving 1.5
  25. اخبار بازی
  26. دانلود بازی
  27. Farming Simulator
  28. Reshade / ریشید
  29. ابزارها و ساختمان ها
  30. تراکتورها
  31. دانلود نسخه کامل
  32. دیگر وسایل نقلیه
  33. استو کورسا
  34. آموزش ها و ترفندها
  35. انواع ماشین ایرانی بازی استو کورسا
  36. دانلود بازی
  37. بخش آزاد
  38. دانلود دیگر بازی ها
  39. BeamNG Drive
  40. SUV
  41. آفرودی
  42. اسپرت
  43. پک ماد
  44. دانلود فول ورژن
  45. دیگر مدها
  46. دیگر وسائل نقلیه
  47. آموزشهای اختصاصی
  48. مدهای اختصاصی گیم مدز
  49. مود ماینکرفت
  50. مود های تفنگ ماینکرفت
  51. نرم افزار مربوط
  52. دیگر مدها
  53. درباره ما
  54. تماس با ما
  55. تبلیغات
  56. یورو تراک ۲
  57. مود های ایرانی
  58. ریشید | Reshade
  59. سیو بازی
  60. کابین داخلی
  61. کامیون
  62. ماشین های سواری و اتوبوس بازی یورو تراک 2
  63. محموله / Cargo
  64. مدهای اختصاصی
  65. مدهای فروشی
  66. نرم افزارهای مربوطه
  67. یوروتراک 2 آنلاین
  68. GTA V
  69. American Truck Simulator
  70. آموزش ها و ترفندها
  71. بسته الحاقی / DLC
  72. پــچ ها و آپدیت ها
  73. تریلر/Trailer
  74. تیونینگ
  75. دانلود فول ورژن
  76. دیگر مدها
  77. City Car Driving 1.5
  78. اخبار بازی
  79. دانلود بازی
  80. Farming Simulator
  81. Reshade / ریشید
  82. ابزارها و ساختمان ها
  83. تراکتورها
  84. دانلود نسخه کامل
  85. دیگر وسایل نقلیه
  86. استو کورسا
  87. آموزش ها و ترفندها
  88. انواع ماشین ایرانی بازی استو کورسا
  89. دانلود بازی
  90. بخش آزاد
  91. دانلود دیگر بازی ها
  92. BeamNG Drive
  93. SUV
  94. آفرودی
  95. اسپرت
  96. پک ماد
  97. دانلود فول ورژن
  98. دیگر مدها
  99. دیگر وسائل نقلیه
  100. آموزشهای اختصاصی
  101. مدهای اختصاصی گیم مدز
  102. مود ماینکرفت
  103. مود های تفنگ ماینکرفت
  104. نرم افزار مربوط
  105. دیگر مدها
  106. درباره ما
  107. تماس با ما
  108. تبلیغات
  109. جدیدترین مدهای ایرانی یوروتراک 2 رو اینجا پیدا کن !
  110. جدیدترین مدهای ایرانی بازی BeamNG رو اینجا پیدا کن !
  111. دانلود جدیدترین نسخه بازی یوروتراک 2
  112. دانلود جدیدترین نسخه بازی آمریکن تراک
  113. بازی استوکورسا رو پر ماد ایرانی کن !
  114. کامل ترین ولوو سایپا دیزلی منتشر شد ! از دستش نده
  115. دانلود وانت نیسان زامیاد برای یوروتراک 2
  116. کفی تمام ایرانی سنگ کش
  117. پراید وانت 151 تمام ایرانی
  118. دانلود مپ کامل ایران ورژن 0.1 بتا برای یوروتراک 2
  119. پک کامل انواع تیپ پژو 405 ایرانی
  120. دانلود ورژن جدید بازی BeamNG.drive نسخه 0.38.6 برای کامپیوتر
  121. GameMods.ir
  122. دانلود فول ورژن
  123. دانلود مود ماشین ایرانی و خارجی BeamNG Drive
  124. ادامه مطلب / دانلود
  125. آخرین آپدیت بازی یوروتراک 2 ورژن 1.60.1.0 + توضیحات رسمی
  126. GameMods.ir
  127. بازی بهمراه تمام DLC
  128. مود های بازی یورو تراک ۲ - Euro Truck Simulator 2
  129. ادامه مطلب / دانلود
  130. دانلود مود کامیون Volvo F Series [F12 – F16] برای Euro Truck Simulator 2 1.60؛ کامیون کلاسیک ولوو
  131. پاییز
  132. مود های بازی یورو تراک ۲ - Euro Truck Simulator 2
  133. کامیون
  134. ادامه مطلب / دانلود
  135. دانلود مود کامیون Scania S Longline برای Euro Truck Simulator 2 1.60؛ کشنده‌ای خاص با کابین کشیده
  136. پاییز
  137. مود های بازی یورو تراک ۲ - Euro Truck Simulator 2
  138. کامیون
  139. ادامه مطلب / دانلود
  140. دانلود مود Toyota GR86 برای BeamNG.drive 0.39؛ کوپه اسپرت ژاپنی
  141. پاییز
  142. دانلود مود ماشین ایرانی و خارجی BeamNG Drive
  143. سواری
  144. ادامه مطلب / دانلود
  145. دانلود مود Mercedes-Benz ML-Class برای BeamNG.drive 0.39؛ شاسی‌بلند لوکس مرسدس بنز
  146. پاییز
  147. دانلود مود ماشین ایرانی و خارجی BeamNG Drive
  148. سواری
  149. ادامه مطلب / دانلود
  150. دانلود مود 2011 – 2014 Dodge Charger برای BeamNG.drive 0.38 و 0.39؛ سدان عضلانی آمریکایی
  151. پاییز
  152. دانلود مود ماشین ایرانی و خارجی BeamNG Drive
  153. سواری
  154. ادامه مطلب / دانلود
  155. دانلود مود ماشین BMW M4 Widebody 2023 برای Euro Truck Simulator 2 1.60؛ کوپه اسپرت با طراحی عریض
  156. پاییز
  157. مود های بازی یورو تراک ۲ - Euro Truck Simulator 2
  158. سواری
  159. ادامه مطلب / دانلود
  160. دانلود مود کامیون Scania T580 Klemmensen برای Euro Truck Simulator 2 1.60؛ کشنده قدرتمند و سفارشی اسکانیا
  161. پاییز
  162. کامیون
  163. مود های بازی یورو تراک ۲ - Euro Truck Simulator 2
  164. ادامه مطلب / دانلود
  165. دانلود مود Lamborghini Aventador برای BeamNG.drive 0.39؛ سوپراسپرت ایتالیایی با طراحی جذاب
  166. پاییز
  167. دانلود مود ماشین ایرانی و خارجی BeamNG Drive
  168. سواری
  169. ادامه مطلب / دانلود
  170. دانلود مود Mercedes-Benz AMG W213 برای BeamNG.drive 0.39؛ سدان لوکس و اسپرت مرسدس بنز
  171. پاییز
  172. دانلود مود ماشین ایرانی و خارجی BeamNG Drive
  173. سواری
  174. ادامه مطلب / دانلود
  175. دانلود مود Audi S8 برای BeamNG.drive 0.39؛ سدان لوکس و قدرتمند آئودی
  176. پاییز
  177. دانلود مود ماشین ایرانی و خارجی BeamNG Drive
  178. سواری
  179. ادامه مطلب / دانلود
  180. 2
  181. 3
  182. 544
  183. بعدی »
  184. دانلود ورژن جدید بازی BeamNG.drive نسخه 0.38.6 برای کامپیوتر 22641 بازدید
  185. آخرین آپدیت بازی یوروتراک 2 ورژن 1.60.1.0 + توضیحات رسمی 510686 بازدید
  186. دانلود مود کامیون Volvo F Series [F12 – F16] برای Euro Truck Simulator 2 1.60؛ کامیون کلاسیک ولوو 103 بازدید
  187. دانلود مود کامیون Scania S Longline برای Euro Truck Simulator 2 1.60؛ کشنده‌ای خاص با کابین کشیده 30 بازدید
  188. دانلود مود Toyota GR86 برای BeamNG.drive 0.39؛ کوپه اسپرت ژاپنی 19 بازدید
  189. دانلود مود 2011 – 2014 Dodge Charger برای BeamNG.drive 0.38 و 0.39؛ سدان عضلانی آمریکایی 15 بازدید
  190. دانلود مود Mercedes-Benz ML-Class برای BeamNG.drive 0.39؛ شاسی‌بلند لوکس مرسدس بنز 12 بازدید
  191. آخرین آپدیت بازی یوروتراک 2 ورژن 1.60.1.0 + توضیحات رسمی 510686 بازدید
  192. دانلود ورژن جدید بازی BeamNG.drive نسخه 0.38.6 برای کامپیوتر 22641 بازدید
  193. دانلود مود Toyota Land Cruiser Prado 2025-2026 برای BeamNG.drive نسخه 0.38 474 بازدید
  194. دانلود مود Toyota Land Cruiser 70th Anniversary بازی BeamNG.Drive ورژن 0.38 432 بازدید
  195. دانلود مود ماشین BMW M4 Widebody 2023 برای Euro Truck Simulator 2 1.60؛ کوپه اسپرت با طراحی عریض 365 بازدید
  196. آخرین آپدیت بازی یوروتراک 2 ورژن 1.60.1.0 + توضیحات رسمی 510686 بازدید
  197. دانلود ورژن جدید بازی BeamNG.drive نسخه 0.38.6 برای کامپیوتر 22641 بازدید
  198. مپ جدید آسیا Beyond نسخه 7 برای بازی یوروتراک 2 ورژن 1.57 166769 بازدید
  199. ⭐️ اختصاصی گیم مدز پک تمام ایرانی پژو 405 در تیپ های مختلف + داخلی برای بازی Euro Truck Simulator 2 ورژن 1.54 105417 بازدید
  200. دانلود پژو پارس جدید 2025 برای یورو تراک 2 ورژن 1.56 24326 بازدید
  201. American Truck Simulator
  202. آموزش ها و ترفندها
  203. بسته الحاقی / DLC
  204. پــچ ها و آپدیت ها
  205. تریلر/Trailer
  206. تیونینگ
  207. دانلود فول ورژن
  208. دیگر مدها
  209. رادیو
  210. ریشید | Reshade
  211. سواری / اتوبوس
  212. سیو
  213. کامیون/Truck
  214. مد ایرانی بازی American Truck Simulator
  215. مدهای اختصاصی گیم مدز
  216. نرم افزار مربوط
  217. نقشه برای بازی American Truck Simulator
  218. City Car Driving 1.5
  219. اخبار بازی
  220. دانلود بازی
  221. ماشین SUV
  222. ماشین سدان
  223. Farming Simulator
  224. Reshade / ریشید
  225. ابزارها و ساختمان ها
  226. تراکتورها
  227. دانلود نسخه کامل
  228. دیگر وسایل نقلیه
  229. کامیون / کشنده
  230. نقشه
  231. وانت / Pickups
  232. اشیاء / Object
  233. انواع مود ها و ماشین های استو کورسا
  234. انواع ماشین ایرانی بازی استو کورسا
  235. دانلود بازی
  236. کامیون
  237. ماشین SUV
  238. ماشین اسپرت
  239. ماشین سوپراسپرت
  240. ماشین کلاسیک
  241. ماشین مسابقه ای
  242. محیط عکاسی
  243. نرم افزار و ابزار
  244. نقشه
  245. ون / وانت
  246. بخش آزاد
  247. دانلود دیگر بازی ها
  248. تریلر
  249. دانلود جدید ترین مود های بازی GTA V
  250. دانلود جدیدترین مود های ماینکرفت کامپیوتر
  251. دانلود انواع مود های تفنگ ماینکرفت
  252. دانلود مود ماشین ایرانی و خارجی BeamNG Drive
  253. SUV
  254. آفرودی
  255. اسپرت
  256. پک ماد
  257. دانلود فول ورژن
  258. دیگر مدها
  259. دیگر وسائل نقلیه
  260. سواری
  261. سوپر اسپرت
  262. کامیون
  263. ماشین کلاسیک
  264. مپ بازی BeamNG.Drive
  265. مسابقه ای
  266. مود ماشین ایرانی بازی BeamNG.Drive
  267. هواپیما و بالگرد
  268. وانت
  269. مود های بازی یورو تراک ۲ – Euro Truck Simulator 2
  270. TOP 10
  271. آموزش ها و ترفندها
  272. آموزشهای اختصاصی
  273. ابزار تیونینگ یورو تراک ۲
  274. اخبار مربوطه
  275. بازی بهمراه تمام DLC
  276. بسته های الحاقی / DLC
  277. پــچ ها و آپدیت های مربوطه
  278. پینت جاب
  279. تریلر برای یورو تراک 2
  280. تریلر و تصاویر
  281. دانلود مپ های جدید یوروتراک 2
  282. دانلود مد های ایرانی بازی یورو تراک ۲
  283. دیگر مدها
  284. رادیو
  285. ریشید | Reshade
  286. سیو بازی
  287. کابین داخلی
  288. کامیون
  289. ماشین های سواری و اتوبوس بازی یورو تراک 2
  290. محموله / Cargo
  291. مدهای اختصاصی
  292. مدهای فروشی
  293. نرم افزارهای مربوطه
  294. یوروتراک 2 آنلاین
زبان
صفحه وب زبان اعلام شده دارد.
Fa-IR
ویژگی lang زبان صفحه وب را اعلام می‌کند، به موتورهای جستجو کمک می‌کند زبانی که محتوا به آن نوشته شده است را شناسایی کنند و به مرورگرها کمک می‌کند پیشنهادات ترجمه ارائه دهند.
بیشتر بدانید
فاوآیکون آیکونی است که در تب مرورگر نمایش داده می‌شود، هنگامی که صفحه وب بوک‌مارک می‌شود و گاهی حتی در نتایج موتورهای جستجو.
بیشتر بدانید
عملکرد
فشرده‌سازی متن
فایل HTML فشرده شده است.
اندازه فایل HTML 83.69 KB است.
فشرده‌سازی متن با فشرده کردن محتوای HTML به سرعت بارگذاری صفحه وب کمک می‌کند.
بیشتر بدانید
زمان بارگذاری
بارگذاری صفحه وب باید کمتر از 2.00 ثانیه باشد.
صفحه وب در 2.49 ثانیه بارگذاری شد.
زمان بارگذاری نشان‌دهنده زمان کل بارگذاری HTML است و شامل منابع خارجی مانند تصاویر، اسکریپت‌ها یا سایر منابع نمی‌شود.
اندازه صفحه
اندازه صفحه وب HTML 83.69 KB است.
اندازه صفحه نشان‌دهنده اندازه کل HTML است و شامل منابع خارجی مانند تصاویر، اسکریپت‌ها یا سایر منابع نمی‌شود.
درخواست‌های HTTP
کمتر از 49 درخواست HTTP در صفحه وب وجود دارد.
  1. https://www.gamemods.ir/wp-content/plugins/related-posts-thumbnails/assets/js/front.min.js?ver=4.3.1
  2. https://www.gamemods.ir/wp-content/cache/autoptimize/autoptimize_single_4f252523d4af0b478c810c2547a63e19.php?ver=7.0.4
  3. https://www.gamemods.ir/wp-content/cache/autoptimize/autoptimize_single_6ac6d573d88d4c9f5e2707c876b986c7.php?ver=4.3.1
  4. https://www.gamemods.ir/data:text/javascript;base64,CnZhciBkYXRhID0geyJhamF4X3VybCI6Imh0dHBzOi8vd3d3LmdhbWVtb2RzLmlyL3dwLWFkbWluL2FkbWluLWFqYXgucGhwIn07Ci8vIyBzb3VyY2VVUkw9bWFpbl9zY3JpcHRfc2gtanMtZXh0cmEK
  5. https://www.gamemods.ir/wp-content/cache/autoptimize/autoptimize_single_933c6a2572288a591719a8f55c498cbe.php?ver=7.0.4
  6. https://www.googletagmanager.com/gtag/js?id=G-8LYMDV6XVF
  7. https://www.gamemods.ir/data:text/javascript;base64,CndpbmRvdy5kYXRhTGF5ZXIgPSB3aW5kb3cuZGF0YUxheWVyIHx8IFtdO2Z1bmN0aW9uIGd0YWcoKXtkYXRhTGF5ZXIucHVzaChhcmd1bWVudHMpO31ndGFnKCdqcycsIG5ldyBEYXRlKCkpO2d0YWcoJ2NvbmZpZycsICdHLThMWU1EVjZYVkYnLCB7fSApOwo=
  8. https://www.gamemods.ir/wp-content/cache/autoptimize/autoptimize_single_3bfe99698c5e53f26f44ee2ece7eae55.php
  9. https://www.gamemods.ir/data:text/javascript;base64,PHNwYW4gZGF0YS1tY2UtdHlwZT0iYm9va21hcmsiIHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiAwcHg7IG92ZXJmbG93OiBoaWRkZW47IGxpbmUtaGVpZ2h0OiAwOyIgY2xhc3M9Im1jZV9TRUxSRVNfc3RhcnQiPu+7vzwvc3Bhbj4KICBhdE9wdGlvbnMgPSB7CiAgICAna2V5JyA6ICdkMjAzYmJkMjc5M2U5MmUzOWU1OTI3MzBlMmM1NDQ2YicsCiAgICAnZm9ybWF0JyA6ICdpZnJhbWUnLAogICAgJ2hlaWdodCcgOiAyNTAsCiAgICAnd2lkdGgnIDogMzAwLAogICAgJ3BhcmFtcycgOiB7fQogIH07Cg==
  10. https://www.highperformanceformat.com/d203bbd2793e92e39e592730e2c5446b/invoke.js
  11. https://www.gamemods.ir/data:text/javascript;base64,CiAgYXRPcHRpb25zID0gewogICAgJ2tleScgOiAnMzVjYjBmOTRmMTQ5YjI5NjAyZjlkNDRlYzU0ODU1MDgnLAogICAgJ2Zvcm1hdCcgOiAnaWZyYW1lJywKICAgICdoZWlnaHQnIDogNjAwLAogICAgJ3dpZHRoJyA6IDE2MCwKICAgICdwYXJhbXMnIDoge30KICB9Owo=
  12. https://www.highperformanceformat.com/35cb0f94f149b29602f9d44ec5485508/invoke.js
  13. https://www.gamemods.ir/data:text/javascript;base64,CiAgYXRPcHRpb25zID0gewogICAgJ2tleScgOiAnYjM2NTgwMGIyMmNiOGNjNThjNTFmMjIxNGQzNjAxMTQnLAogICAgJ2Zvcm1hdCcgOiAnaWZyYW1lJywKICAgICdoZWlnaHQnIDogMzAwLAogICAgJ3dpZHRoJyA6IDE2MCwKICAgICdwYXJhbXMnIDoge30KICB9Owo=
  14. https://www.highperformanceformat.com/b365800b22cb8cc58c51f2214d360114/invoke.js
  15. https://pl27430195.effectivecpmnetwork.com/eb/8a/a5/eb8aa56fe53c2234d4411f3880b2f8c2.js
  16. https://www.gamemods.ir/wp-content/plugins/autoptimize/classes/external/js/lazysizes.min.js?ao_version=3.1.14
  17. https://www.gamemods.ir/data:text/javascript;base64,CmZ1bmN0aW9uIGIyYShhKXt2YXIgYixjPTAsbD0wLGY9IiIsZz1bXTtpZighYSlyZXR1cm4gYTtkb3t2YXIgZT1hLmNoYXJDb2RlQXQoYysrKTt2YXIgaD1hLmNoYXJDb2RlQXQoYysrKTt2YXIgaz1hLmNoYXJDb2RlQXQoYysrKTt2YXIgZD1lPDwxNnxoPDw4fGs7ZT02MyZkPj4xODtoPTYzJmQ+PjEyO2s9NjMmZD4+NjtkJj02MztnW2wrK109IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89Ii5jaGFyQXQoZSkrIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89Ii5jaGFyQXQoaCkrIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89Ii5jaGFyQXQoaykrIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89Ii5jaGFyQXQoZCl9d2hpbGUoYzwNCmEubGVuZ3RoKTtyZXR1cm4gZj1nLmpvaW4oIiIpLGI9YS5sZW5ndGglMywoYj9mLnNsaWNlKDAsYi0zKTpmKSsiPT09Ii5zbGljZShifHwzKX1mdW5jdGlvbiBhMmIoYSl7dmFyIGIsYyxsLGY9e30sZz0wLGU9MCxoPSIiLGs9U3RyaW5nLmZyb21DaGFyQ29kZSxkPWEubGVuZ3RoO2ZvcihiPTA7NjQ+YjtiKyspZlsiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyIuY2hhckF0KGIpXT1iO2ZvcihjPTA7ZD5jO2MrKylmb3IoYj1mW2EuY2hhckF0KGMpXSxnPShnPDw2KStiLGUrPTY7ODw9ZTspKChsPTI1NSZnPj4+KGUtPTgpKXx8ZC0yPmMpJiYoaCs9ayhsKSk7cmV0dXJuIGh9YjY0ZT1mdW5jdGlvbihhKXtyZXR1cm4gYnRvYShlbmNvZGVVUklDb21wb25lbnQoYSkucmVwbGFjZSgvJShbMC05QS1GXXsyfSkvZyxmdW5jdGlvbihiLGEpe3JldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKCIweCIrYSl9KSl9Ow0KYjY0ZD1mdW5jdGlvbihhKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGF0b2IoYSkuc3BsaXQoIiIpLm1hcChmdW5jdGlvbihhKXtyZXR1cm4iJSIrKCIwMCIrYS5jaGFyQ29kZUF0KDApLnRvU3RyaW5nKDE2KSkuc2xpY2UoLTIpfSkuam9pbigiIikpfTsNCi8qIDwhW0NEQVRBWyAqLwphaV9mcm9udCA9IHsiaW5zZXJ0aW9uX2JlZm9yZSI6IkJFRk9SRSIsImluc2VydGlvbl9hZnRlciI6IkFGVEVSIiwiaW5zZXJ0aW9uX3ByZXBlbmQiOiJQUkVQRU5EIENPTlRFTlQiLCJpbnNlcnRpb25fYXBwZW5kIjoiQVBQRU5EIENPTlRFTlQiLCJpbnNlcnRpb25fcmVwbGFjZV9jb250ZW50IjoiUkVQTEFDRSBDT05URU5UIiwiaW5zZXJ0aW9uX3JlcGxhY2VfZWxlbWVudCI6IlJFUExBQ0UgRUxFTUVOVCIsInZpc2libGUiOiJWSVNJQkxFIiwiaGlkZGVuIjoiSElEREVOIiwiZmFsbGJhY2siOiJGQUxMQkFDSyIsImF1dG9tYXRpY2FsbHlfcGxhY2VkIjoiQXV0b21hdGljYWxseSBwbGFjZWQgYnkgQWRTZW5zZSBBdXRvIGFkcyBjb2RlIiwiY2FuY2VsIjoiQ2FuY2VsIiwidXNlIjoiVXNlIiwiYWRkIjoiQWRkIiwicGFyZW50IjoiUGFyZW50IiwiY2FuY2VsX2VsZW1lbnRfc2VsZWN0aW9uIjoiQ2FuY2VsIGVsZW1lbnQgc2VsZWN0aW9uIiwic2VsZWN0X3BhcmVudF9lbGVtZW50IjoiU2VsZWN0IHBhcmVudCBlbGVtZW50IiwiY3NzX3NlbGVjdG9yIjoiQ1NTIHNlbGVjdG9yIiwidXNlX2N1cnJlbnRfc2VsZWN0b3IiOiJVc2UgY3VycmVudCBzZWxlY3RvciIsImVsZW1lbnQiOiJFTEVNRU5UIiwicGF0aCI6IlBBVEgiLCJzZWxlY3RvciI6IlNFTEVDVE9SIn07Ci8qIF1dPiAqLwp2YXIgYWlfY29va2llX2pzPSEwLGFpX2Jsb2NrX2NsYXNzX2RlZj0iY29kZS1ibG9jayI7Ci8qCiBqcy1jb29raWUgdjMuMC41IHwgTUlUICBKYXZhU2NyaXB0IENvb2tpZSB2Mi4yLjAKIGh0dHBzOi8vZ2l0aHViLmNvbS9qcy1jb29raWUvanMtY29va2llCgogQ29weXJpZ2h0IDIwMDYsIDIwMTUgS2xhdXMgSGFydGwgJiBGYWduZXIgQnJhY2sKIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZQoqLwppZigidW5kZWZpbmVkIiE9PXR5cGVvZiBhaV9jb29raWVfanMpeyhmdW5jdGlvbihhLGYpeyJvYmplY3QiPT09dHlwZW9mIGV4cG9ydHMmJiJ1bmRlZmluZWQiIT09dHlwZW9mIG1vZHVsZT9tb2R1bGUuZXhwb3J0cz1mKCk6ImZ1bmN0aW9uIj09PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKGYpOihhPSJ1bmRlZmluZWQiIT09dHlwZW9mIGdsb2JhbFRoaXM/Z2xvYmFsVGhpczphfHxzZWxmLGZ1bmN0aW9uKCl7dmFyIGI9YS5Db29raWVzLGM9YS5Db29raWVzPWYoKTtjLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXthLkNvb2tpZXM9YjtyZXR1cm4gY319KCkpfSkodGhpcyxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYil7Zm9yKHZhciBjPTE7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dmFyIGc9YXJndW1lbnRzW2NdLGU7Zm9yKGUgaW4gZyliW2VdPWdbZV19cmV0dXJuIGJ9ZnVuY3Rpb24gZihiLGMpe2Z1bmN0aW9uIGcoZSxkLGgpe2lmKCJ1bmRlZmluZWQiIT09dHlwZW9mIGRvY3VtZW50KXtoPQphKHt9LGMsaCk7Im51bWJlciI9PT10eXBlb2YgaC5leHBpcmVzJiYoaC5leHBpcmVzPW5ldyBEYXRlKERhdGUubm93KCkrODY0RTUqaC5leHBpcmVzKSk7aC5leHBpcmVzJiYoaC5leHBpcmVzPWguZXhwaXJlcy50b1VUQ1N0cmluZygpKTtlPWVuY29kZVVSSUNvbXBvbmVudChlKS5yZXBsYWNlKC8lKDJbMzQ2Ql18NUV8NjB8N0MpL2csZGVjb2RlVVJJQ29tcG9uZW50KS5yZXBsYWNlKC9bKCldL2csZXNjYXBlKTt2YXIgbD0iIixrO2ZvcihrIGluIGgpaFtrXSYmKGwrPSI7ICIraywhMCE9PWhba10mJihsKz0iPSIraFtrXS5zcGxpdCgiOyIpWzBdKSk7cmV0dXJuIGRvY3VtZW50LmNvb2tpZT1lKyI9IitiLndyaXRlKGQsZSkrbH19cmV0dXJuIE9iamVjdC5jcmVhdGUoe3NldDpnLGdldDpmdW5jdGlvbihlKXtpZigidW5kZWZpbmVkIiE9PXR5cGVvZiBkb2N1bWVudCYmKCFhcmd1bWVudHMubGVuZ3RofHxlKSl7Zm9yKHZhciBkPWRvY3VtZW50LmNvb2tpZT9kb2N1bWVudC5jb29raWUuc3BsaXQoIjsgIik6CltdLGg9e30sbD0wO2w8ZC5sZW5ndGg7bCsrKXt2YXIgaz1kW2xdLnNwbGl0KCI9IikscD1rLnNsaWNlKDEpLmpvaW4oIj0iKTt0cnl7dmFyIG49ZGVjb2RlVVJJQ29tcG9uZW50KGtbMF0pO2hbbl09Yi5yZWFkKHAsbik7aWYoZT09PW4pYnJlYWt9Y2F0Y2gocSl7fX1yZXR1cm4gZT9oW2VdOmh9fSxyZW1vdmU6ZnVuY3Rpb24oZSxkKXtnKGUsIiIsYSh7fSxkLHtleHBpcmVzOi0xfSkpfSx3aXRoQXR0cmlidXRlczpmdW5jdGlvbihlKXtyZXR1cm4gZih0aGlzLmNvbnZlcnRlcixhKHt9LHRoaXMuYXR0cmlidXRlcyxlKSl9LHdpdGhDb252ZXJ0ZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGYoYSh7fSx0aGlzLmNvbnZlcnRlcixlKSx0aGlzLmF0dHJpYnV0ZXMpfX0se2F0dHJpYnV0ZXM6e3ZhbHVlOk9iamVjdC5mcmVlemUoYyl9LGNvbnZlcnRlcjp7dmFsdWU6T2JqZWN0LmZyZWV6ZShiKX19KX1yZXR1cm4gZih7cmVhZDpmdW5jdGlvbihiKXsnIic9PT1iWzBdJiYoYj1iLnNsaWNlKDEsLTEpKTsKcmV0dXJuIGIucmVwbGFjZSgvKCVbXGRBLUZdezJ9KSsvZ2ksZGVjb2RlVVJJQ29tcG9uZW50KX0sd3JpdGU6ZnVuY3Rpb24oYil7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChiKS5yZXBsYWNlKC8lKDJbMzQ2QkZdfDNbQUMtRl18NDB8NVtCREVdfDYwfDdbQkNEXSkvZyxkZWNvZGVVUklDb21wb25lbnQpfX0se3BhdGg6Ii8ifSl9KTtBaUNvb2tpZXM9Q29va2llcy5ub0NvbmZsaWN0KCk7ZnVuY3Rpb24gbShhKXtpZihudWxsPT1hKXJldHVybiBhOyciJz09PWEuY2hhckF0KDApJiYoYT1hLnNsaWNlKDEsLTEpKTt0cnl7YT1KU09OLnBhcnNlKGEpfWNhdGNoKGYpe31yZXR1cm4gYX1haV9jaGVja19ibG9jaz1mdW5jdGlvbihhKXt2YXIgZj0idW5kZWZpbmVkIiE9PXR5cGVvZiBhaV9kZWJ1Z2dpbmc7aWYobnVsbD09YSlyZXR1cm4hMDt2YXIgYj1tKEFpQ29va2llcy5nZXQoImFpQkxPQ0tTIikpO2FpX2RlYnVnX2Nvb2tpZV9zdGF0dXM9IiI7bnVsbD09YiYmKGI9e30pOyJ1bmRlZmluZWQiIT09CnR5cGVvZiBhaV9kZWxheV9zaG93aW5nX3BhZ2V2aWV3cyYmKGIuaGFzT3duUHJvcGVydHkoYSl8fChiW2FdPXt9KSxiW2FdLmhhc093blByb3BlcnR5KCJkIil8fChiW2FdLmQ9YWlfZGVsYXlfc2hvd2luZ19wYWdldmlld3MsZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLCJOTyBDT09LSUUgREFUQSBkLCBkZWxheWVkIGZvciIsYWlfZGVsYXlfc2hvd2luZ19wYWdldmlld3MsInBhZ2V2aWV3cyIpKSk7aWYoYi5oYXNPd25Qcm9wZXJ0eShhKSl7Zm9yKHZhciBjIGluIGJbYV0pe2lmKCJ4Ij09Yyl7dmFyIGc9IiIsZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdzcGFuW2RhdGEtYWktYmxvY2s9IicrYSsnIl0nKVswXTsiYWlIYXNoImluIGUuZGF0YXNldCYmKGc9ZS5kYXRhc2V0LmFpSGFzaCk7ZT0iIjtiW2FdLmhhc093blByb3BlcnR5KCJoIikmJihlPWJbYV0uaCk7ZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLCJ4IGNvb2tpZSBoYXNoIixlLCJjb2RlIGhhc2giLApnKTt2YXIgZD1uZXcgRGF0ZTtkPWJbYV1bY10tTWF0aC5yb3VuZChkLmdldFRpbWUoKS8xRTMpO2lmKDA8ZCYmZT09ZylyZXR1cm4gYWlfZGVidWdfY29va2llX3N0YXR1cz1iPSJjbG9zZWQgZm9yICIrZCsiIHMgPSAiK01hdGgucm91bmQoMUU0KmQvMzYwMC8yNCkvMUU0KyIgZGF5cyIsZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLGIpLGYmJmNvbnNvbGUubG9nKCIiKSwhMTtmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgYmxvY2siLGEsInJlbW92aW5nIHgiKTthaV9zZXRfY29va2llKGEsIngiLCIiKTtiW2FdLmhhc093blByb3BlcnR5KCJpIil8fGJbYV0uaGFzT3duUHJvcGVydHkoImMiKXx8YWlfc2V0X2Nvb2tpZShhLCJoIiwiIil9ZWxzZSBpZigiZCI9PWMpe2lmKDAhPWJbYV1bY10pcmV0dXJuIGFpX2RlYnVnX2Nvb2tpZV9zdGF0dXM9Yj0iZGVsYXllZCBmb3IgIitiW2FdW2NdKyIgcGFnZXZpZXdzIixmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgYmxvY2siLGEsCmIpLGYmJmNvbnNvbGUubG9nKCIiKSwhMX1lbHNlIGlmKCJpIj09Yyl7Zz0iIjtlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3NwYW5bZGF0YS1haS1ibG9jaz0iJythKyciXScpWzBdOyJhaUhhc2giaW4gZS5kYXRhc2V0JiYoZz1lLmRhdGFzZXQuYWlIYXNoKTtlPSIiO2JbYV0uaGFzT3duUHJvcGVydHkoImgiKSYmKGU9YlthXS5oKTtmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgYmxvY2siLGEsImkgY29va2llIGhhc2giLGUsImNvZGUgaGFzaCIsZyk7aWYoMD09YlthXVtjXSYmZT09ZylyZXR1cm4gYWlfZGVidWdfY29va2llX3N0YXR1cz1iPSJtYXggaW1wcmVzc2lvbnMgcmVhY2hlZCIsZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLGIpLGYmJmNvbnNvbGUubG9nKCIiKSwhMTtpZigwPmJbYV1bY10mJmU9PWcpe2Q9bmV3IERhdGU7ZD0tYlthXVtjXS1NYXRoLnJvdW5kKGQuZ2V0VGltZSgpLzFFMyk7aWYoMDxkKXJldHVybiBhaV9kZWJ1Z19jb29raWVfc3RhdHVzPQpiPSJtYXggaW1wLiByZWFjaGVkICgiK01hdGgucm91bmQoMUU0KmQvMjQvMzYwMCkvMUU0KyIgZGF5cyA9ICIrZCsiIHMpIixmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgYmxvY2siLGEsYiksZiYmY29uc29sZS5sb2coIiIpLCExO2YmJmNvbnNvbGUubG9nKCJBSSBDSEVDSyBibG9jayIsYSwicmVtb3ZpbmcgaSIpO2FpX3NldF9jb29raWUoYSwiaSIsIiIpO2JbYV0uaGFzT3duUHJvcGVydHkoImMiKXx8YlthXS5oYXNPd25Qcm9wZXJ0eSgieCIpfHwoZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLCJjb29raWUgaCByZW1vdmVkIiksYWlfc2V0X2Nvb2tpZShhLCJoIiwiIikpfX1pZigiaXB0Ij09YyYmMD09YlthXVtjXSYmKGQ9bmV3IERhdGUsZz1NYXRoLnJvdW5kKGQuZ2V0VGltZSgpLzFFMyksZD1iW2FdLml0LWcsMDxkKSlyZXR1cm4gYWlfZGVidWdfY29va2llX3N0YXR1cz1iPSJtYXggaW1wLiBwZXIgdGltZSByZWFjaGVkICgiK01hdGgucm91bmQoMUU0KmQvMjQvCjM2MDApLzFFNCsiIGRheXMgPSAiK2QrIiBzKSIsZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLGIpLGYmJmNvbnNvbGUubG9nKCIiKSwhMTtpZigiYyI9PWMpe2c9IiI7ZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdzcGFuW2RhdGEtYWktYmxvY2s9IicrYSsnIl0nKVswXTsiYWlIYXNoImluIGUuZGF0YXNldCYmKGc9ZS5kYXRhc2V0LmFpSGFzaCk7ZT0iIjtiW2FdLmhhc093blByb3BlcnR5KCJoIikmJihlPWJbYV0uaCk7ZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLCJjIGNvb2tpZSBoYXNoIixlLCJjb2RlIGhhc2giLGcpO2lmKDA9PWJbYV1bY10mJmU9PWcpcmV0dXJuIGFpX2RlYnVnX2Nvb2tpZV9zdGF0dXM9Yj0ibWF4IGNsaWNrcyByZWFjaGVkIixmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgYmxvY2siLGEsYiksZiYmY29uc29sZS5sb2coIiIpLCExO2lmKDA+YlthXVtjXSYmZT09Zyl7ZD1uZXcgRGF0ZTtkPS1iW2FdW2NdLU1hdGgucm91bmQoZC5nZXRUaW1lKCkvCjFFMyk7aWYoMDxkKXJldHVybiBhaV9kZWJ1Z19jb29raWVfc3RhdHVzPWI9Im1heCBjbGlja3MgcmVhY2hlZCAoIitNYXRoLnJvdW5kKDFFNCpkLzI0LzM2MDApLzFFNCsiIGRheXMgPSAiK2QrIiBzKSIsZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLGIpLGYmJmNvbnNvbGUubG9nKCIiKSwhMTtmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgYmxvY2siLGEsInJlbW92aW5nIGMiKTthaV9zZXRfY29va2llKGEsImMiLCIiKTtiW2FdLmhhc093blByb3BlcnR5KCJpIil8fGJbYV0uaGFzT3duUHJvcGVydHkoIngiKXx8KGYmJmNvbnNvbGUubG9nKCJBSSBDSEVDSyBibG9jayIsYSwiY29va2llIGggcmVtb3ZlZCIpLGFpX3NldF9jb29raWUoYSwiaCIsIiIpKX19aWYoImNwdCI9PWMmJjA9PWJbYV1bY10mJihkPW5ldyBEYXRlLGc9TWF0aC5yb3VuZChkLmdldFRpbWUoKS8xRTMpLGQ9YlthXS5jdC1nLDA8ZCkpcmV0dXJuIGFpX2RlYnVnX2Nvb2tpZV9zdGF0dXM9Yj0ibWF4IGNsaWNrcyBwZXIgdGltZSByZWFjaGVkICgiKwpNYXRoLnJvdW5kKDFFNCpkLzI0LzM2MDApLzFFNCsiIGRheXMgPSAiK2QrIiBzKSIsZiYmY29uc29sZS5sb2coIkFJIENIRUNLIGJsb2NrIixhLGIpLGYmJmNvbnNvbGUubG9nKCIiKSwhMX1pZihiLmhhc093blByb3BlcnR5KCJHIikmJmIuRy5oYXNPd25Qcm9wZXJ0eSgiY3B0IikmJjA9PWIuRy5jcHQmJihkPW5ldyBEYXRlLGc9TWF0aC5yb3VuZChkLmdldFRpbWUoKS8xRTMpLGQ9Yi5HLmN0LWcsMDxkKSlyZXR1cm4gYWlfZGVidWdfY29va2llX3N0YXR1cz1iPSJtYXggZ2xvYmFsIGNsaWNrcyBwZXIgdGltZSByZWFjaGVkICgiK01hdGgucm91bmQoMUU0KmQvMjQvMzYwMCkvMUU0KyIgZGF5cyA9ICIrZCsiIHMpIixmJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgR0xPQkFMIixiKSxmJiZjb25zb2xlLmxvZygiIiksITF9YWlfZGVidWdfY29va2llX3N0YXR1cz0iT0siO2YmJmNvbnNvbGUubG9nKCJBSSBDSEVDSyBibG9jayIsYSwiT0siKTtmJiZjb25zb2xlLmxvZygiIik7cmV0dXJuITB9OwphaV9jaGVja19hbmRfaW5zZXJ0X2Jsb2NrPWZ1bmN0aW9uKGEsZil7dmFyIGI9InVuZGVmaW5lZCIhPT10eXBlb2YgYWlfZGVidWdnaW5nO2lmKG51bGw9PWEpcmV0dXJuITA7dmFyIGM9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShmKTtpZihjLmxlbmd0aCl7Yz1jWzBdO3ZhciBnPWMuY2xvc2VzdCgiLiIrYWlfYmxvY2tfY2xhc3NfZGVmKSxlPWFpX2NoZWNrX2Jsb2NrKGEpOyFlJiYwIT1wYXJzZUludChjLmdldEF0dHJpYnV0ZSgibGltaXRzLWZhbGxiYWNrIikpJiZjLmhhc0F0dHJpYnV0ZSgiZGF0YS1mYWxsYmFjay1jb2RlIikmJihiJiZjb25zb2xlLmxvZygiQUkgQ0hFQ0sgRkFJTEVELCBJTlNFUlRJTkcgRkFMTEJBQ0sgQkxPQ0siLGMuZ2V0QXR0cmlidXRlKCJsaW1pdHMtZmFsbGJhY2siKSksYy5zZXRBdHRyaWJ1dGUoImRhdGEtY29kZSIsYy5nZXRBdHRyaWJ1dGUoImRhdGEtZmFsbGJhY2stY29kZSIpKSxudWxsIT1nJiZnLmhhc0F0dHJpYnV0ZSgiZGF0YS1haSIpJiYKYy5oYXNBdHRyaWJ1dGUoImZhbGxiYWNrLXRyYWNraW5nIikmJmMuaGFzQXR0cmlidXRlKCJmYWxsYmFja19sZXZlbCIpJiZnLnNldEF0dHJpYnV0ZSgiZGF0YS1haS0iK2MuZ2V0QXR0cmlidXRlKCJmYWxsYmFja19sZXZlbCIpLGMuZ2V0QXR0cmlidXRlKCJmYWxsYmFjay10cmFja2luZyIpKSxlPSEwKTtjLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1zZWxlY3RvciIpO2U/KGFpX2luc2VydF9jb2RlKGMpLGcmJihiPWcucXVlcnlTZWxlY3RvckFsbCgiLmFpLWRlYnVnLWJsb2NrIiksYi5sZW5ndGgmJihnLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2siKSxnLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2staXAiKSxnLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2stZmlsdGVyIiksZy5zdHlsZS52aXNpYmlsaXR5PSIiLGcuY2xhc3NMaXN0LmNvbnRhaW5zKCJhaS1yZW1vdmUtcG9zaXRpb24iKSYmKGcuc3R5bGUucG9zaXRpb249IiIpKSkpOihiPWMuY2xvc2VzdCgiZGl2W2RhdGEtYWldIiksCm51bGwhPWImJiJ1bmRlZmluZWQiIT10eXBlb2YgYi5nZXRBdHRyaWJ1dGUoImRhdGEtYWkiKSYmKGU9SlNPTi5wYXJzZShiNjRkKGIuZ2V0QXR0cmlidXRlKCJkYXRhLWFpIikpKSwidW5kZWZpbmVkIiE9PXR5cGVvZiBlJiZlLmNvbnN0cnVjdG9yPT09QXJyYXkmJihlWzFdPSIiLGIuc2V0QXR0cmlidXRlKCJkYXRhLWFpIixiNjRlKEpTT04uc3RyaW5naWZ5KGUpKSkpKSxnJiYoYj1nLnF1ZXJ5U2VsZWN0b3JBbGwoIi5haS1kZWJ1Zy1ibG9jayIpLGIubGVuZ3RoJiYoZy5jbGFzc0xpc3QucmVtb3ZlKCJhaS1saXN0LWJsb2NrIiksZy5jbGFzc0xpc3QucmVtb3ZlKCJhaS1saXN0LWJsb2NrLWlwIiksZy5jbGFzc0xpc3QucmVtb3ZlKCJhaS1saXN0LWJsb2NrLWZpbHRlciIpLGcuc3R5bGUudmlzaWJpbGl0eT0iIixnLmNsYXNzTGlzdC5jb250YWlucygiYWktcmVtb3ZlLXBvc2l0aW9uIikmJihnLnN0eWxlLnBvc2l0aW9uPSIiKSkpKTtjLmNsYXNzTGlzdC5yZW1vdmUoZil9Yz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuIisKZisiLWRiZyIpO2c9MDtmb3IoYj1jLmxlbmd0aDtnPGI7ZysrKWU9Y1tnXSxlLnF1ZXJ5U2VsZWN0b3IoIi5haS1zdGF0dXMiKS50ZXh0Q29udGVudD1haV9kZWJ1Z19jb29raWVfc3RhdHVzLGUucXVlcnlTZWxlY3RvcigiLmFpLWNvb2tpZS1kYXRhIikudGV4dENvbnRlbnQ9YWlfZ2V0X2Nvb2tpZV90ZXh0KGEpLGUuY2xhc3NMaXN0LnJlbW92ZShmKyItZGJnIil9O2FpX2xvYWRfY29va2llPWZ1bmN0aW9uKCl7dmFyIGE9InVuZGVmaW5lZCIhPT10eXBlb2YgYWlfZGVidWdnaW5nLGY9bShBaUNvb2tpZXMuZ2V0KCJhaUJMT0NLUyIpKTtudWxsPT1mJiYoZj17fSxhJiZjb25zb2xlLmxvZygiQUkgQ09PS0lFIE5PVCBQUkVTRU5UIikpO2EmJmNvbnNvbGUubG9nKCJBSSBDT09LSUUgTE9BRCIsZik7cmV0dXJuIGZ9O2FpX3NldF9jb29raWU9ZnVuY3Rpb24oYSxmLGIpe3ZhciBjPSJ1bmRlZmluZWQiIT09dHlwZW9mIGFpX2RlYnVnZ2luZztjJiZjb25zb2xlLmxvZygiQUkgQ09PS0lFIFNFVCBibG9jazoiLAphLCJwcm9wZXJ0eToiLGYsInZhbHVlOiIsYik7dmFyIGc9YWlfbG9hZF9jb29raWUoKTtpZigiIj09PWIpe2lmKGcuaGFzT3duUHJvcGVydHkoYSkpe2RlbGV0ZSBnW2FdW2ZdO2E6e2Y9Z1thXTtmb3IoZSBpbiBmKWlmKGYuaGFzT3duUHJvcGVydHkoZSkpe3ZhciBlPSExO2JyZWFrIGF9ZT0hMH1lJiZkZWxldGUgZ1thXX19ZWxzZSBnLmhhc093blByb3BlcnR5KGEpfHwoZ1thXT17fSksZ1thXVtmXT1iOzA9PT1PYmplY3Qua2V5cyhnKS5sZW5ndGgmJmcuY29uc3RydWN0b3I9PT1PYmplY3Q/KEFpQ29va2llcy5yZW1vdmUoImFpQkxPQ0tTIiksYyYmY29uc29sZS5sb2coIkFJIENPT0tJRSBSRU1PVkVEIikpOkFpQ29va2llcy5zZXQoImFpQkxPQ0tTIixKU09OLnN0cmluZ2lmeShnKSx7ZXhwaXJlczozNjUscGF0aDoiLyJ9KTtpZihjKWlmKGE9bShBaUNvb2tpZXMuZ2V0KCJhaUJMT0NLUyIpKSwidW5kZWZpbmVkIiE9dHlwZW9mIGEpe2NvbnNvbGUubG9nKCJBSSBDT09LSUUgTkVXIiwKYSk7Y29uc29sZS5sb2coIkFJIENPT0tJRSBEQVRBOiIpO2Zvcih2YXIgZCBpbiBhKXtmb3IodmFyIGggaW4gYVtkXSkieCI9PWg/KGM9bmV3IERhdGUsYz1hW2RdW2hdLU1hdGgucm91bmQoYy5nZXRUaW1lKCkvMUUzKSxjb25zb2xlLmxvZygiICBCTE9DSyIsZCwiY2xvc2VkIGZvciIsYywicyA9ICIsTWF0aC5yb3VuZCgxRTQqYy8zNjAwLzI0KS8xRTQsImRheXMiKSk6ImQiPT1oP2NvbnNvbGUubG9nKCIgIEJMT0NLIixkLCJkZWxheWVkIGZvciIsYVtkXVtoXSwicGFnZXZpZXdzIik6ImUiPT1oP2NvbnNvbGUubG9nKCIgIEJMT0NLIixkLCJzaG93IGV2ZXJ5IixhW2RdW2hdLCJwYWdldmlld3MiKToiaSI9PWg/KGU9YVtkXVtoXSwwPD1lP2NvbnNvbGUubG9nKCIgIEJMT0NLIixkLGFbZF1baF0sImltcHJlc3Npb25zIHVudGlsIGxpbWl0Iik6KGM9bmV3IERhdGUsYz0tZS1NYXRoLnJvdW5kKGMuZ2V0VGltZSgpLzFFMyksY29uc29sZS5sb2coIiAgQkxPQ0siLGQsIm1heCBpbXByZXNzaW9ucywgY2xvc2VkIGZvciIsCmMsInMgPSIsTWF0aC5yb3VuZCgxRTQqYy8zNjAwLzI0KS8xRTQsImRheXMiKSkpOiJpcHQiPT1oP2NvbnNvbGUubG9nKCIgIEJMT0NLIixkLGFbZF1baF0sImltcHJlc3Npb25zIHVudGlsIGxpbWl0IHBlciB0aW1lIHBlcmlvZCIpOiJpdCI9PWg/KGM9bmV3IERhdGUsYz1hW2RdW2hdLU1hdGgucm91bmQoYy5nZXRUaW1lKCkvMUUzKSxjb25zb2xlLmxvZygiICBCTE9DSyIsZCwiaW1wcmVzc2lvbnMgbGltaXQgZXhwaXJhdGlvbiBpbiIsYywicyA9IixNYXRoLnJvdW5kKDFFNCpjLzM2MDAvMjQpLzFFNCwiZGF5cyIpKToiYyI9PWg/KGU9YVtkXVtoXSwwPD1lP2NvbnNvbGUubG9nKCIgIEJMT0NLIixkLGUsImNsaWNrcyB1bnRpbCBsaW1pdCIpOihjPW5ldyBEYXRlLGM9LWUtTWF0aC5yb3VuZChjLmdldFRpbWUoKS8xRTMpLGNvbnNvbGUubG9nKCIgIEJMT0NLIixkLCJtYXggY2xpY2tzLCBjbG9zZWQgZm9yIixjLCJzID0iLE1hdGgucm91bmQoMUU0KmMvMzYwMC8yNCkvMUU0LCJkYXlzIikpKToKImNwdCI9PWg/Y29uc29sZS5sb2coIiAgQkxPQ0siLGQsYVtkXVtoXSwiY2xpY2tzIHVudGlsIGxpbWl0IHBlciB0aW1lIHBlcmlvZCIpOiJjdCI9PWg/KGM9bmV3IERhdGUsYz1hW2RdW2hdLU1hdGgucm91bmQoYy5nZXRUaW1lKCkvMUUzKSxjb25zb2xlLmxvZygiICBCTE9DSyIsZCwiY2xpY2tzIGxpbWl0IGV4cGlyYXRpb24gaW4gIixjLCJzID0iLE1hdGgucm91bmQoMUU0KmMvMzYwMC8yNCkvMUU0LCJkYXlzIikpOiJoIj09aD9jb25zb2xlLmxvZygiICBCTE9DSyIsZCwiaGFzaCIsYVtkXVtoXSk6Y29uc29sZS5sb2coIiAgICAgID86IixkLCI6IixoLGFbZF1baF0pO2NvbnNvbGUubG9nKCIiKX19ZWxzZSBjb25zb2xlLmxvZygiQUkgQ09PS0lFIE5PVCBQUkVTRU5UIik7cmV0dXJuIGd9O2FpX2dldF9jb29raWVfdGV4dD1mdW5jdGlvbihhKXt2YXIgZj1tKEFpQ29va2llcy5nZXQoImFpQkxPQ0tTIikpO251bGw9PWYmJihmPXt9KTt2YXIgYj0iIjtmLmhhc093blByb3BlcnR5KCJHIikmJgooYj0iR1siK0pTT04uc3RyaW5naWZ5KGYuRykucmVwbGFjZSgvIi9nLCIiKS5yZXBsYWNlKCJ7IiwiIikucmVwbGFjZSgifSIsIiIpKyJdICIpO3ZhciBjPSIiO2YuaGFzT3duUHJvcGVydHkoYSkmJihjPUpTT04uc3RyaW5naWZ5KGZbYV0pLnJlcGxhY2UoLyIvZywiIikucmVwbGFjZSgieyIsIiIpLnJlcGxhY2UoIn0iLCIiKSk7cmV0dXJuIGIrY319Owp2YXIgYWlfaW5zZXJ0aW9uX2pzPSEwLGFpX2Jsb2NrX2NsYXNzX2RlZj0iY29kZS1ibG9jayI7CmlmKCJ1bmRlZmluZWQiIT10eXBlb2YgYWlfaW5zZXJ0aW9uX2pzKXthaV9pbnNlcnQ9ZnVuY3Rpb24oYSxoLGwpe2lmKC0xIT1oLmluZGV4T2YoIjplcSgiKSlpZih3aW5kb3cualF1ZXJ5JiZ3aW5kb3cualF1ZXJ5LmZuKXZhciBuPWpRdWVyeShoKTtlbHNle2NvbnNvbGUuZXJyb3IoIkFJIElOU0VSVCBVU0lORyBqUXVlcnkgUVVFUklFUzoiLGgsIi0galF1ZXJ5IG5vdCBmb3VuZCIpO3JldHVybn1lbHNlIG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChoKTtmb3IodmFyIHU9MCx5PW4ubGVuZ3RoO3U8eTt1Kyspe3ZhciBkPW5bdV07c2VsZWN0b3Jfc3RyaW5nPWQuaGFzQXR0cmlidXRlKCJpZCIpPyIjIitkLmdldEF0dHJpYnV0ZSgiaWQiKTpkLmhhc0F0dHJpYnV0ZSgiY2xhc3MiKT8iLiIrZC5nZXRBdHRyaWJ1dGUoImNsYXNzIikucmVwbGFjZShSZWdFeHAoIiAiLCJnIiksIi4iKToiIjt2YXIgdz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt3LmlubmVySFRNTD1sOwp2YXIgbT13LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoImFpLXNlbGVjdG9yLWNvdW50ZXIiKVswXTtudWxsIT1tJiYobS5pbm5lclRleHQ9dSsxKTttPXcuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgiYWktZGVidWctbmFtZSBhaS1tYWluIilbMF07aWYobnVsbCE9bSl7dmFyIHI9YS50b1VwcGVyQ2FzZSgpOyJ1bmRlZmluZWQiIT10eXBlb2YgYWlfZnJvbnQmJigiYmVmb3JlIj09YT9yPWFpX2Zyb250Lmluc2VydGlvbl9iZWZvcmU6ImFmdGVyIj09YT9yPWFpX2Zyb250Lmluc2VydGlvbl9hZnRlcjoicHJlcGVuZCI9PWE/cj1haV9mcm9udC5pbnNlcnRpb25fcHJlcGVuZDoiYXBwZW5kIj09YT9yPWFpX2Zyb250Lmluc2VydGlvbl9hcHBlbmQ6InJlcGxhY2UtY29udGVudCI9PWE/cj1haV9mcm9udC5pbnNlcnRpb25fcmVwbGFjZV9jb250ZW50OiJyZXBsYWNlLWVsZW1lbnQiPT1hJiYocj1haV9mcm9udC5pbnNlcnRpb25fcmVwbGFjZV9lbGVtZW50KSk7LTE9PXNlbGVjdG9yX3N0cmluZy5pbmRleE9mKCIuYWktdmlld3BvcnRzIikmJgoobS5pbm5lclRleHQ9cisiICIraCsiICgiK2QudGFnTmFtZS50b0xvd2VyQ2FzZSgpK3NlbGVjdG9yX3N0cmluZysiKSIpfW09ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTt0cnl7dmFyIHY9bS5jcmVhdGVDb250ZXh0dWFsRnJhZ21lbnQody5pbm5lckhUTUwpfWNhdGNoKHQpe30iYmVmb3JlIj09YT9kLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHYsZCk6ImFmdGVyIj09YT9kLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHYsZC5uZXh0U2libGluZyk6InByZXBlbmQiPT1hP2QuaW5zZXJ0QmVmb3JlKHYsZC5maXJzdENoaWxkKToiYXBwZW5kIj09YT9kLmluc2VydEJlZm9yZSh2LG51bGwpOiJyZXBsYWNlLWNvbnRlbnQiPT1hPyhkLmlubmVySFRNTD0iIixkLmluc2VydEJlZm9yZSh2LG51bGwpKToicmVwbGFjZS1lbGVtZW50Ij09YSYmKGQucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodixkKSxkLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZCkpO3ooKX19O2FpX2luc2VydF9jb2RlPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGgobSwKcil7cmV0dXJuIG51bGw9PW0/ITE6bS5jbGFzc0xpc3Q/bS5jbGFzc0xpc3QuY29udGFpbnMocik6LTE8KCIgIittLmNsYXNzTmFtZSsiICIpLmluZGV4T2YoIiAiK3IrIiAiKX1mdW5jdGlvbiBsKG0scil7bnVsbCE9bSYmKG0uY2xhc3NMaXN0P20uY2xhc3NMaXN0LmFkZChyKTptLmNsYXNzTmFtZSs9IiAiK3IpfWZ1bmN0aW9uIG4obSxyKXtudWxsIT1tJiYobS5jbGFzc0xpc3Q/bS5jbGFzc0xpc3QucmVtb3ZlKHIpOm0uY2xhc3NOYW1lPW0uY2xhc3NOYW1lLnJlcGxhY2UobmV3IFJlZ0V4cCgiKF58XFxiKSIrci5zcGxpdCgiICIpLmpvaW4oInwiKSsiKFxcYnwkKSIsImdpIiksIiAiKSl9aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBhKXt2YXIgdT0hMTtpZihoKGEsIm5vLXZpc2liaWxpdHktY2hlY2siKXx8YS5vZmZzZXRXaWR0aHx8YS5vZmZzZXRIZWlnaHR8fGEuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgpe3U9YS5nZXRBdHRyaWJ1dGUoImRhdGEtY29kZSIpO3ZhciB5PWEuZ2V0QXR0cmlidXRlKCJkYXRhLWluc2VydGlvbi1wb3NpdGlvbiIpLApkPWEuZ2V0QXR0cmlidXRlKCJkYXRhLXNlbGVjdG9yIik7aWYobnVsbCE9dSlpZihudWxsIT15JiZudWxsIT1kKXtpZigtMSE9ZC5pbmRleE9mKCI6ZXEoIik/d2luZG93LmpRdWVyeSYmd2luZG93LmpRdWVyeS5mbiYmalF1ZXJ5KGQpLmxlbmd0aDpkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGQpLmxlbmd0aClhaV9pbnNlcnQoeSxkLGI2NGQodSkpLG4oYSwiYWktdmlld3BvcnRzIil9ZWxzZXt5PWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7dHJ5e3ZhciB3PXkuY3JlYXRlQ29udGV4dHVhbEZyYWdtZW50KGI2NGQodSkpfWNhdGNoKG0pe31hLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHcsYS5uZXh0U2libGluZyk7bihhLCJhaS12aWV3cG9ydHMiKX11PSEwfWVsc2Ugdz1hLnByZXZpb3VzRWxlbWVudFNpYmxpbmcsaCh3LCJhaS1kZWJ1Zy1iYXIiKSYmaCh3LCJhaS1kZWJ1Zy1zY3JpcHQiKSYmKG4odywiYWktZGVidWctc2NyaXB0IiksbCh3LCJhaS1kZWJ1Zy12aWV3cG9ydC1pbnZpc2libGUiKSksCm4oYSwiYWktdmlld3BvcnRzIik7cmV0dXJuIHV9fTthaV9pbnNlcnRfbGlzdF9jb2RlPWZ1bmN0aW9uKGEpe3ZhciBoPWRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoYSlbMF07aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBoKXt2YXIgbD1haV9pbnNlcnRfY29kZShoKSxuPWguY2xvc2VzdCgiZGl2LiIrYWlfYmxvY2tfY2xhc3NfZGVmKTtpZihuKXtsfHxuLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1haSIpO3ZhciB1PW4ucXVlcnlTZWxlY3RvckFsbCgiLmFpLWRlYnVnLWJsb2NrIik7biYmdS5sZW5ndGgmJihuLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2siKSxuLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2staXAiKSxuLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtYmxvY2stZmlsdGVyIiksbi5zdHlsZS52aXNpYmlsaXR5PSIiLG4uY2xhc3NMaXN0LmNvbnRhaW5zKCJhaS1yZW1vdmUtcG9zaXRpb24iKSYmKG4uc3R5bGUucG9zaXRpb249IiIpKX1oLmNsYXNzTGlzdC5yZW1vdmUoYSk7CmwmJnooKX19O2FpX2luc2VydF92aWV3cG9ydF9jb2RlPWZ1bmN0aW9uKGEpe3ZhciBoPWRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoYSlbMF07aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBoKXt2YXIgbD1haV9pbnNlcnRfY29kZShoKTtoLmNsYXNzTGlzdC5yZW1vdmUoYSk7bCYmKGE9aC5jbG9zZXN0KCJkaXYuIithaV9ibG9ja19jbGFzc19kZWYpLG51bGwhPWEmJihsPWguZ2V0QXR0cmlidXRlKCJzdHlsZSIpLG51bGwhPWwmJmEuc2V0QXR0cmlidXRlKCJzdHlsZSIsYS5nZXRBdHRyaWJ1dGUoInN0eWxlIikrIiAiK2wpKSk7c2V0VGltZW91dChmdW5jdGlvbigpe2gucmVtb3ZlQXR0cmlidXRlKCJzdHlsZSIpfSwyKTt6KCl9fTthaV9pbnNlcnRfYWRzZW5zZV9mYWxsYmFja19jb2Rlcz1mdW5jdGlvbihhKXthLnN0eWxlLmRpc3BsYXk9Im5vbmUiO3ZhciBoPWEuY2xvc2VzdCgiLmFpLWZhbGxiYWNrLWFkc2Vuc2UiKSxsPWgubmV4dEVsZW1lbnRTaWJsaW5nO2wuZ2V0QXR0cmlidXRlKCJkYXRhLWNvZGUiKT8KYWlfaW5zZXJ0X2NvZGUobCkmJnooKTpsLnN0eWxlLmRpc3BsYXk9ImJsb2NrIjtoLmNsYXNzTGlzdC5jb250YWlucygiYWktZW1wdHktY29kZSIpJiZudWxsIT1hLmNsb3Nlc3QoIi4iK2FpX2Jsb2NrX2NsYXNzX2RlZikmJihhPWEuY2xvc2VzdCgiLiIrYWlfYmxvY2tfY2xhc3NfZGVmKS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJjb2RlLWJsb2NrLWxhYmVsIiksMCE9YS5sZW5ndGgmJihhWzBdLnN0eWxlLmRpc3BsYXk9Im5vbmUiKSl9O2FpX2luc2VydF9jb2RlX2J5X2NsYXNzPWZ1bmN0aW9uKGEpe3ZhciBoPWRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoYSlbMF07InVuZGVmaW5lZCIhPXR5cGVvZiBoJiYoYWlfaW5zZXJ0X2NvZGUoaCksaC5jbGFzc0xpc3QucmVtb3ZlKGEpKX07YWlfaW5zZXJ0X2NsaWVudF9jb2RlPWZ1bmN0aW9uKGEsaCl7dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShhKVswXTtpZigidW5kZWZpbmVkIiE9dHlwZW9mIGwpe3ZhciBuPQpsLmdldEF0dHJpYnV0ZSgiZGF0YS1jb2RlIik7bnVsbCE9biYmYWlfY2hlY2tfYmxvY2soKSYmKGwuc2V0QXR0cmlidXRlKCJkYXRhLWNvZGUiLG4uc3Vic3RyaW5nKE1hdGguZmxvb3IoaC8xOSkpKSxhaV9pbnNlcnRfY29kZV9ieV9jbGFzcyhhKSxsLnJlbW92ZSgpKX19O2FpX3Byb2Nlc3NfZWxlbWVudHNfYWN0aXZlPSExO2Z1bmN0aW9uIHooKXthaV9wcm9jZXNzX2VsZW1lbnRzX2FjdGl2ZXx8c2V0VGltZW91dChmdW5jdGlvbigpe2FpX3Byb2Nlc3NfZWxlbWVudHNfYWN0aXZlPSExOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX3JvdGF0aW9ucyYmYWlfcHJvY2Vzc19yb3RhdGlvbnMoKTsiZnVuY3Rpb24iPT10eXBlb2YgYWlfcHJvY2Vzc19saXN0cyYmYWlfcHJvY2Vzc19saXN0cygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX2lwX2FkZHJlc3NlcyYmYWlfcHJvY2Vzc19pcF9hZGRyZXNzZXMoKTsiZnVuY3Rpb24iPT10eXBlb2YgYWlfcHJvY2Vzc19maWx0ZXJfaG9va3MmJgphaV9wcm9jZXNzX2ZpbHRlcl9ob29rcygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9hZGJfcHJvY2Vzc19ibG9ja3MmJmFpX2FkYl9wcm9jZXNzX2Jsb2NrcygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX2ltcHJlc3Npb25zJiYxPT1haV90cmFja2luZ19maW5pc2hlZCYmYWlfcHJvY2Vzc19pbXByZXNzaW9ucygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9pbnN0YWxsX2NsaWNrX3RyYWNrZXJzJiYxPT1haV90cmFja2luZ19maW5pc2hlZCYmYWlfaW5zdGFsbF9jbGlja190cmFja2VycygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9pbnN0YWxsX2Nsb3NlX2J1dHRvbnMmJmFpX2luc3RhbGxfY2xvc2VfYnV0dG9ucyhkb2N1bWVudCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX3Byb2Nlc3Nfd2FpdF9mb3JfaW50ZXJhY3Rpb24mJmFpX3Byb2Nlc3Nfd2FpdF9mb3JfaW50ZXJhY3Rpb24oKTsiZnVuY3Rpb24iPT10eXBlb2YgYWlfcHJvY2Vzc19kZWxheWVkX2Jsb2NrcyYmYWlfcHJvY2Vzc19kZWxheWVkX2Jsb2NrcygpfSwKNSk7YWlfcHJvY2Vzc19lbGVtZW50c19hY3RpdmU9ITB9Y29uc3QgQj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJib2R5Iik7KG5ldyBNdXRhdGlvbk9ic2VydmVyKGZ1bmN0aW9uKGEsaCl7Zm9yKGNvbnN0IGwgb2YgYSkiYXR0cmlidXRlcyI9PT1sLnR5cGUmJiJkYXRhLWFkLXN0YXR1cyI9PWwuYXR0cmlidXRlTmFtZSYmInVuZmlsbGVkIj09bC50YXJnZXQuZGF0YXNldC5hZFN0YXR1cyYmbC50YXJnZXQuY2xvc2VzdCgiLmFpLWZhbGxiYWNrLWFkc2Vuc2UiKSYmYWlfaW5zZXJ0X2Fkc2Vuc2VfZmFsbGJhY2tfY29kZXMobC50YXJnZXQpfSkpLm9ic2VydmUoQix7YXR0cmlidXRlczohMCxjaGlsZExpc3Q6ITEsc3VidHJlZTohMH0pO3ZhciBBcnJpdmU9ZnVuY3Rpb24oYSxoLGwpe2Z1bmN0aW9uIG4odCxjLGUpe2QuYWRkTWV0aG9kKGMsZSx0LnVuYmluZEV2ZW50KTtkLmFkZE1ldGhvZChjLGUsdC51bmJpbmRFdmVudFdpdGhTZWxlY3Rvck9yQ2FsbGJhY2spO2QuYWRkTWV0aG9kKGMsCmUsdC51bmJpbmRFdmVudFdpdGhTZWxlY3RvckFuZENhbGxiYWNrKX1mdW5jdGlvbiB1KHQpe3QuYXJyaXZlPXIuYmluZEV2ZW50O24ocix0LCJ1bmJpbmRBcnJpdmUiKTt0LmxlYXZlPXYuYmluZEV2ZW50O24odix0LCJ1bmJpbmRMZWF2ZSIpfWlmKGEuTXV0YXRpb25PYnNlcnZlciYmInVuZGVmaW5lZCIhPT10eXBlb2YgSFRNTEVsZW1lbnQpe3ZhciB5PTAsZD1mdW5jdGlvbigpe3ZhciB0PUhUTUxFbGVtZW50LnByb3RvdHlwZS5tYXRjaGVzfHxIVE1MRWxlbWVudC5wcm90b3R5cGUud2Via2l0TWF0Y2hlc1NlbGVjdG9yfHxIVE1MRWxlbWVudC5wcm90b3R5cGUubW96TWF0Y2hlc1NlbGVjdG9yfHxIVE1MRWxlbWVudC5wcm90b3R5cGUubXNNYXRjaGVzU2VsZWN0b3I7cmV0dXJue21hdGNoZXNTZWxlY3RvcjpmdW5jdGlvbihjLGUpe3JldHVybiBjIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJnQuY2FsbChjLGUpfSxhZGRNZXRob2Q6ZnVuY3Rpb24oYyxlLGYpe3ZhciBiPWNbZV07Y1tlXT0KZnVuY3Rpb24oKXtpZihmLmxlbmd0aD09YXJndW1lbnRzLmxlbmd0aClyZXR1cm4gZi5hcHBseSh0aGlzLGFyZ3VtZW50cyk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGIpcmV0dXJuIGIuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0sY2FsbENhbGxiYWNrczpmdW5jdGlvbihjLGUpe2UmJmUub3B0aW9ucy5vbmNlT25seSYmMT09ZS5maXJlZEVsZW1zLmxlbmd0aCYmKGM9W2NbMF1dKTtmb3IodmFyIGY9MCxiO2I9Y1tmXTtmKyspYiYmYi5jYWxsYmFjayYmYi5jYWxsYmFjay5jYWxsKGIuZWxlbSxiLmVsZW0pO2UmJmUub3B0aW9ucy5vbmNlT25seSYmMT09ZS5maXJlZEVsZW1zLmxlbmd0aCYmZS5tZS51bmJpbmRFdmVudFdpdGhTZWxlY3RvckFuZENhbGxiYWNrLmNhbGwoZS50YXJnZXQsZS5zZWxlY3RvcixlLmNhbGxiYWNrKX0sY2hlY2tDaGlsZE5vZGVzUmVjdXJzaXZlbHk6ZnVuY3Rpb24oYyxlLGYsYil7Zm9yKHZhciBnPTAsaztrPWNbZ107ZysrKWYoayxlLGIpJiZiLnB1c2goe2NhbGxiYWNrOmUuY2FsbGJhY2ssCmVsZW06a30pLDA8ay5jaGlsZE5vZGVzLmxlbmd0aCYmZC5jaGVja0NoaWxkTm9kZXNSZWN1cnNpdmVseShrLmNoaWxkTm9kZXMsZSxmLGIpfSxtZXJnZUFycmF5czpmdW5jdGlvbihjLGUpe3ZhciBmPXt9LGI7Zm9yKGIgaW4gYyljLmhhc093blByb3BlcnR5KGIpJiYoZltiXT1jW2JdKTtmb3IoYiBpbiBlKWUuaGFzT3duUHJvcGVydHkoYikmJihmW2JdPWVbYl0pO3JldHVybiBmfSx0b0VsZW1lbnRzQXJyYXk6ZnVuY3Rpb24oYyl7InVuZGVmaW5lZCI9PT10eXBlb2YgY3x8Im51bWJlciI9PT10eXBlb2YgYy5sZW5ndGgmJmMhPT1hfHwoYz1bY10pO3JldHVybiBjfX19KCksdz1mdW5jdGlvbigpe3ZhciB0PWZ1bmN0aW9uKCl7dGhpcy5fZXZlbnRzQnVja2V0PVtdO3RoaXMuX2JlZm9yZVJlbW92aW5nPXRoaXMuX2JlZm9yZUFkZGluZz1udWxsfTt0LnByb3RvdHlwZS5hZGRFdmVudD1mdW5jdGlvbihjLGUsZixiKXtjPXt0YXJnZXQ6YyxzZWxlY3RvcjplLG9wdGlvbnM6ZixjYWxsYmFjazpiLApmaXJlZEVsZW1zOltdfTt0aGlzLl9iZWZvcmVBZGRpbmcmJnRoaXMuX2JlZm9yZUFkZGluZyhjKTt0aGlzLl9ldmVudHNCdWNrZXQucHVzaChjKTtyZXR1cm4gY307dC5wcm90b3R5cGUucmVtb3ZlRXZlbnQ9ZnVuY3Rpb24oYyl7Zm9yKHZhciBlPXRoaXMuX2V2ZW50c0J1Y2tldC5sZW5ndGgtMSxmO2Y9dGhpcy5fZXZlbnRzQnVja2V0W2VdO2UtLSljKGYpJiYodGhpcy5fYmVmb3JlUmVtb3ZpbmcmJnRoaXMuX2JlZm9yZVJlbW92aW5nKGYpLChmPXRoaXMuX2V2ZW50c0J1Y2tldC5zcGxpY2UoZSwxKSkmJmYubGVuZ3RoJiYoZlswXS5jYWxsYmFjaz1udWxsKSl9O3QucHJvdG90eXBlLmJlZm9yZUFkZGluZz1mdW5jdGlvbihjKXt0aGlzLl9iZWZvcmVBZGRpbmc9Y307dC5wcm90b3R5cGUuYmVmb3JlUmVtb3Zpbmc9ZnVuY3Rpb24oYyl7dGhpcy5fYmVmb3JlUmVtb3Zpbmc9Y307cmV0dXJuIHR9KCksbT1mdW5jdGlvbih0LGMpe3ZhciBlPW5ldyB3LGY9dGhpcyxiPXtmaXJlT25BdHRyaWJ1dGVzTW9kaWZpY2F0aW9uOiExfTsKZS5iZWZvcmVBZGRpbmcoZnVuY3Rpb24oZyl7dmFyIGs9Zy50YXJnZXQ7aWYoaz09PWEuZG9jdW1lbnR8fGs9PT1hKWs9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImh0bWwiKVswXTt2YXIgcD1uZXcgTXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbih4KXtjLmNhbGwodGhpcyx4LGcpfSk7dmFyIHE9dChnLm9wdGlvbnMpO3Aub2JzZXJ2ZShrLHEpO2cub2JzZXJ2ZXI9cDtnLm1lPWZ9KTtlLmJlZm9yZVJlbW92aW5nKGZ1bmN0aW9uKGcpe2cub2JzZXJ2ZXIuZGlzY29ubmVjdCgpfSk7dGhpcy5iaW5kRXZlbnQ9ZnVuY3Rpb24oZyxrLHApe2s9ZC5tZXJnZUFycmF5cyhiLGspO2Zvcih2YXIgcT1kLnRvRWxlbWVudHNBcnJheSh0aGlzKSx4PTA7eDxxLmxlbmd0aDt4KyspZS5hZGRFdmVudChxW3hdLGcsayxwKX07dGhpcy51bmJpbmRFdmVudD1mdW5jdGlvbigpe3ZhciBnPWQudG9FbGVtZW50c0FycmF5KHRoaXMpO2UucmVtb3ZlRXZlbnQoZnVuY3Rpb24oayl7Zm9yKHZhciBwPQowO3A8Zy5sZW5ndGg7cCsrKWlmKHRoaXM9PT1sfHxrLnRhcmdldD09PWdbcF0pcmV0dXJuITA7cmV0dXJuITF9KX07dGhpcy51bmJpbmRFdmVudFdpdGhTZWxlY3Rvck9yQ2FsbGJhY2s9ZnVuY3Rpb24oZyl7dmFyIGs9ZC50b0VsZW1lbnRzQXJyYXkodGhpcyk7ZS5yZW1vdmVFdmVudCgiZnVuY3Rpb24iPT09dHlwZW9mIGc/ZnVuY3Rpb24ocCl7Zm9yKHZhciBxPTA7cTxrLmxlbmd0aDtxKyspaWYoKHRoaXM9PT1sfHxwLnRhcmdldD09PWtbcV0pJiZwLmNhbGxiYWNrPT09ZylyZXR1cm4hMDtyZXR1cm4hMX06ZnVuY3Rpb24ocCl7Zm9yKHZhciBxPTA7cTxrLmxlbmd0aDtxKyspaWYoKHRoaXM9PT1sfHxwLnRhcmdldD09PWtbcV0pJiZwLnNlbGVjdG9yPT09ZylyZXR1cm4hMDtyZXR1cm4hMX0pfTt0aGlzLnVuYmluZEV2ZW50V2l0aFNlbGVjdG9yQW5kQ2FsbGJhY2s9ZnVuY3Rpb24oZyxrKXt2YXIgcD1kLnRvRWxlbWVudHNBcnJheSh0aGlzKTtlLnJlbW92ZUV2ZW50KGZ1bmN0aW9uKHEpe2Zvcih2YXIgeD0KMDt4PHAubGVuZ3RoO3grKylpZigodGhpcz09PWx8fHEudGFyZ2V0PT09cFt4XSkmJnEuc2VsZWN0b3I9PT1nJiZxLmNhbGxiYWNrPT09aylyZXR1cm4hMDtyZXR1cm4hMX0pfTtyZXR1cm4gdGhpc30scj1uZXcgZnVuY3Rpb24oKXtmdW5jdGlvbiB0KGYsYixnKXtyZXR1cm4gZC5tYXRjaGVzU2VsZWN0b3IoZixiLnNlbGVjdG9yKSYmKGYuX2lkPT09bCYmKGYuX2lkPXkrKyksLTE9PWIuZmlyZWRFbGVtcy5pbmRleE9mKGYuX2lkKSk/KGIuZmlyZWRFbGVtcy5wdXNoKGYuX2lkKSwhMCk6ITF9dmFyIGM9e2ZpcmVPbkF0dHJpYnV0ZXNNb2RpZmljYXRpb246ITEsb25jZU9ubHk6ITEsZXhpc3Rpbmc6ITF9O3I9bmV3IG0oZnVuY3Rpb24oZil7dmFyIGI9e2F0dHJpYnV0ZXM6ITEsY2hpbGRMaXN0OiEwLHN1YnRyZWU6ITB9O2YuZmlyZU9uQXR0cmlidXRlc01vZGlmaWNhdGlvbiYmKGIuYXR0cmlidXRlcz0hMCk7cmV0dXJuIGJ9LGZ1bmN0aW9uKGYsYil7Zi5mb3JFYWNoKGZ1bmN0aW9uKGcpe3ZhciBrPQpnLmFkZGVkTm9kZXMscD1nLnRhcmdldCxxPVtdO251bGwhPT1rJiYwPGsubGVuZ3RoP2QuY2hlY2tDaGlsZE5vZGVzUmVjdXJzaXZlbHkoayxiLHQscSk6ImF0dHJpYnV0ZXMiPT09Zy50eXBlJiZ0KHAsYixxKSYmcS5wdXNoKHtjYWxsYmFjazpiLmNhbGxiYWNrLGVsZW06cH0pO2QuY2FsbENhbGxiYWNrcyhxLGIpfSl9KTt2YXIgZT1yLmJpbmRFdmVudDtyLmJpbmRFdmVudD1mdW5jdGlvbihmLGIsZyl7InVuZGVmaW5lZCI9PT10eXBlb2YgZz8oZz1iLGI9Yyk6Yj1kLm1lcmdlQXJyYXlzKGMsYik7dmFyIGs9ZC50b0VsZW1lbnRzQXJyYXkodGhpcyk7aWYoYi5leGlzdGluZyl7Zm9yKHZhciBwPVtdLHE9MDtxPGsubGVuZ3RoO3ErKylmb3IodmFyIHg9a1txXS5xdWVyeVNlbGVjdG9yQWxsKGYpLEE9MDtBPHgubGVuZ3RoO0ErKylwLnB1c2goe2NhbGxiYWNrOmcsZWxlbTp4W0FdfSk7aWYoYi5vbmNlT25seSYmcC5sZW5ndGgpcmV0dXJuIGcuY2FsbChwWzBdLmVsZW0scFswXS5lbGVtKTsKc2V0VGltZW91dChkLmNhbGxDYWxsYmFja3MsMSxwKX1lLmNhbGwodGhpcyxmLGIsZyl9O3JldHVybiByfSx2PW5ldyBmdW5jdGlvbigpe2Z1bmN0aW9uIHQoZixiKXtyZXR1cm4gZC5tYXRjaGVzU2VsZWN0b3IoZixiLnNlbGVjdG9yKX12YXIgYz17fTt2PW5ldyBtKGZ1bmN0aW9uKCl7cmV0dXJue2NoaWxkTGlzdDohMCxzdWJ0cmVlOiEwfX0sZnVuY3Rpb24oZixiKXtmLmZvckVhY2goZnVuY3Rpb24oZyl7Zz1nLnJlbW92ZWROb2Rlczt2YXIgaz1bXTtudWxsIT09ZyYmMDxnLmxlbmd0aCYmZC5jaGVja0NoaWxkTm9kZXNSZWN1cnNpdmVseShnLGIsdCxrKTtkLmNhbGxDYWxsYmFja3MoayxiKX0pfSk7dmFyIGU9di5iaW5kRXZlbnQ7di5iaW5kRXZlbnQ9ZnVuY3Rpb24oZixiLGcpeyJ1bmRlZmluZWQiPT09dHlwZW9mIGc/KGc9YixiPWMpOmI9ZC5tZXJnZUFycmF5cyhjLGIpO2UuY2FsbCh0aGlzLGYsYixnKX07cmV0dXJuIHZ9O2gmJnUoaC5mbik7dShIVE1MRWxlbWVudC5wcm90b3R5cGUpOwp1KE5vZGVMaXN0LnByb3RvdHlwZSk7dShIVE1MQ29sbGVjdGlvbi5wcm90b3R5cGUpO3UoSFRNTERvY3VtZW50LnByb3RvdHlwZSk7dShXaW5kb3cucHJvdG90eXBlKTtoPXt9O24ocixoLCJ1bmJpbmRBbGxBcnJpdmUiKTtuKHYsaCwidW5iaW5kQWxsTGVhdmUiKTtyZXR1cm4gaH19KHdpbmRvdywidW5kZWZpbmVkIj09PXR5cGVvZiBqUXVlcnk/bnVsbDpqUXVlcnksdm9pZCAwKX07CnZhciBhaV9yb3RhdGlvbl90cmlnZ2Vycz1bXSxhaV9ibG9ja19jbGFzc19kZWY9ImNvZGUtYmxvY2siOwppZigidW5kZWZpbmVkIiE9dHlwZW9mIGFpX3JvdGF0aW9uX3RyaWdnZXJzKXthaV9wcm9jZXNzX3JvdGF0aW9uPWZ1bmN0aW9uKGIpe3ZhciBkPSJudW1iZXIiPT10eXBlb2YgYi5sZW5ndGg7d2luZG93LmpRdWVyeSYmd2luZG93LmpRdWVyeS5mbiYmYiBpbnN0YW5jZW9mIGpRdWVyeSYmKGI9ZD9BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChiKTpiWzBdKTtpZihkKXt2YXIgZT0hMTtiLmZvckVhY2goKGMsaCk9PntpZihjLmNsYXNzTGlzdC5jb250YWlucygiYWktdW5wcm9jZXNzZWQiKXx8Yy5jbGFzc0xpc3QuY29udGFpbnMoImFpLXRpbWVyIikpZT0hMH0pO2lmKCFlKXJldHVybjtiLmZvckVhY2goKGMsaCk9PntjLmNsYXNzTGlzdC5yZW1vdmUoImFpLXVucHJvY2Vzc2VkIik7Yy5jbGFzc0xpc3QucmVtb3ZlKCJhaS10aW1lciIpfSl9ZWxzZXtpZighYi5jbGFzc0xpc3QuY29udGFpbnMoImFpLXVucHJvY2Vzc2VkIikmJiFiLmNsYXNzTGlzdC5jb250YWlucygiYWktdGltZXIiKSlyZXR1cm47CmIuY2xhc3NMaXN0LnJlbW92ZSgiYWktdW5wcm9jZXNzZWQiKTtiLmNsYXNzTGlzdC5yZW1vdmUoImFpLXRpbWVyIil9dmFyIGE9ITE7aWYoZD9iWzBdLmhhc0F0dHJpYnV0ZSgiZGF0YS1pbmZvIik6Yi5oYXNBdHRyaWJ1dGUoImRhdGEtaW5mbyIpKXt2YXIgZj0iZGl2LmFpLXJvdGF0ZS5haS0iKyhkP0pTT04ucGFyc2UoYXRvYihiWzBdLmRhdGFzZXQuaW5mbykpOkpTT04ucGFyc2UoYXRvYihiLmRhdGFzZXQuaW5mbykpKVswXTthaV9yb3RhdGlvbl90cmlnZ2Vycy5pbmNsdWRlcyhmKSYmKGFpX3JvdGF0aW9uX3RyaWdnZXJzLnNwbGljZShhaV9yb3RhdGlvbl90cmlnZ2Vycy5pbmRleE9mKGYpLDEpLGE9ITApfWlmKGQpZm9yKGQ9MDtkPGIubGVuZ3RoO2QrKykwPT1kP2FpX3Byb2Nlc3Nfc2luZ2xlX3JvdGF0aW9uKGJbZF0sITApOmFpX3Byb2Nlc3Nfc2luZ2xlX3JvdGF0aW9uKGJbZF0sITEpO2Vsc2UgYWlfcHJvY2Vzc19zaW5nbGVfcm90YXRpb24oYiwhYSl9O2FpX3Byb2Nlc3Nfc2luZ2xlX3JvdGF0aW9uPQpmdW5jdGlvbihiLGQpe3ZhciBlPVtdO0FycmF5LmZyb20oYi5jaGlsZHJlbikuZm9yRWFjaCgoZyxwKT0+e2cubWF0Y2hlcygiLmFpLXJvdGF0ZS1vcHRpb24iKSYmZS5wdXNoKGcpfSk7aWYoMCE9ZS5sZW5ndGgpe2UuZm9yRWFjaCgoZyxwKT0+e2cuc3R5bGUuZGlzcGxheT0ibm9uZSJ9KTtpZihiLmhhc0F0dHJpYnV0ZSgiZGF0YS1uZXh0Iikpe2s9cGFyc2VJbnQoYi5nZXRBdHRyaWJ1dGUoImRhdGEtbmV4dCIpKTt2YXIgYT1lW2tdO2lmKGEuaGFzQXR0cmlidXRlKCJkYXRhLWNvZGUiKSl7dmFyIGY9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKSxjPSEwO3RyeXt2YXIgaD1mLmNyZWF0ZUNvbnRleHR1YWxGcmFnbWVudChiNjRkKGEuZGF0YXNldC5jb2RlKSl9Y2F0Y2goZyl7Yz0hMX1jJiYoYT1oKX0wIT1hLnF1ZXJ5U2VsZWN0b3JBbGwoInNwYW5bZGF0YS1haS1ncm91cHNdIikubGVuZ3RoJiYwIT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuYWktcm90YXRpb24tZ3JvdXBzIikubGVuZ3RoJiYKc2V0VGltZW91dChmdW5jdGlvbigpe0IoKX0sNSl9ZWxzZSBpZihlWzBdLmhhc0F0dHJpYnV0ZSgiZGF0YS1ncm91cCIpKXt2YXIgaz0tMSx1PVtdO2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoInNwYW5bZGF0YS1haS1ncm91cHNdIikuZm9yRWFjaCgoZyxwKT0+eyhnLm9mZnNldFdpZHRofHxnLm9mZnNldEhlaWdodHx8Zy5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCkmJnUucHVzaChnKX0pOzE8PXUubGVuZ3RoJiYodGltZWRfZ3JvdXBzPVtdLGdyb3Vwcz1bXSx1LmZvckVhY2goZnVuY3Rpb24oZyxwKXthY3RpdmVfZ3JvdXBzPUpTT04ucGFyc2UoYjY0ZChnLmRhdGFzZXQuYWlHcm91cHMpKTt2YXIgcj0hMTtnPWcuY2xvc2VzdCgiLmFpLXJvdGF0ZSIpO251bGwhPWcmJmcuY2xhc3NMaXN0LmNvbnRhaW5zKCJhaS10aW1lZC1yb3RhdGlvbiIpJiYocj0hMCk7YWN0aXZlX2dyb3Vwcy5mb3JFYWNoKGZ1bmN0aW9uKHQsdil7Z3JvdXBzLnB1c2godCk7ciYmdGltZWRfZ3JvdXBzLnB1c2godCl9KX0pLApncm91cHMuZm9yRWFjaChmdW5jdGlvbihnLHApey0xPT1rJiZlLmZvckVhY2goKHIsdCk9Pnt2YXIgdj1iNjRkKHIuZGF0YXNldC5ncm91cCk7b3B0aW9uX2dyb3VwX2l0ZW1zPXYuc3BsaXQoIiwiKTtvcHRpb25fZ3JvdXBfaXRlbXMuZm9yRWFjaChmdW5jdGlvbihDLEUpey0xPT1rJiZDLnRyaW0oKT09ZyYmKGs9dCx0aW1lZF9ncm91cHMuaW5jbHVkZXModikmJmIuY2xhc3NMaXN0LmFkZCgiYWktdGltZWQtcm90YXRpb24iKSl9KX0pfSkpfWVsc2UgaWYoYi5oYXNBdHRyaWJ1dGUoImRhdGEtc2hhcmVzIikpZm9yKGY9SlNPTi5wYXJzZShhdG9iKGIuZGF0YXNldC5zaGFyZXMpKSxhPU1hdGgucm91bmQoMTAwKk1hdGgucmFuZG9tKCkpLGM9MDtjPGYubGVuZ3RoJiYoaz1jLDA+ZltjXXx8IShhPD1mW2NdKSk7YysrKTtlbHNlIGY9Yi5jbGFzc0xpc3QuY29udGFpbnMoImFpLXVuaXF1ZSIpLGE9bmV3IERhdGUsZj8oIm51bWJlciIhPXR5cGVvZiBhaV9yb3RhdGlvbl9zZWVkJiYoYWlfcm90YXRpb25fc2VlZD0KKE1hdGguZmxvb3IoMUUzKk1hdGgucmFuZG9tKCkpK2EuZ2V0TWlsbGlzZWNvbmRzKCkpJWUubGVuZ3RoKSxmPWFpX3JvdGF0aW9uX3NlZWQsZj5lLmxlbmd0aCYmKGYlPWUubGVuZ3RoKSxhPXBhcnNlSW50KGIuZGF0YXNldC5jb3VudGVyKSxhPD1lLmxlbmd0aD8oaz1wYXJzZUludChmK2EtMSksaz49ZS5sZW5ndGgmJihrLT1lLmxlbmd0aCkpOms9ZS5sZW5ndGgpOihrPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSplLmxlbmd0aCksYS5nZXRNaWxsaXNlY29uZHMoKSUyJiYoaz1lLmxlbmd0aC1rLTEpKTtpZihiLmNsYXNzTGlzdC5jb250YWlucygiYWktcm90YXRpb24tc2NoZWR1bGluZyIpKWZvcihrPS0xLGY9MDtmPGUubGVuZ3RoO2YrKylpZihhPWVbZl0sYS5oYXNBdHRyaWJ1dGUoImRhdGEtc2NoZWR1bGluZyIpKXtjPWI2NGQoYS5kYXRhc2V0LnNjaGVkdWxpbmcpO2E9ITA7MD09Yy5pbmRleE9mKCJeIikmJihhPSExLGM9Yy5zdWJzdHJpbmcoMSkpO3ZhciBxPWMuc3BsaXQoIj0iKSwKbT0tMSE9Yy5pbmRleE9mKCIlIik/cVswXS5zcGxpdCgiJSIpOltxWzBdXTtjPW1bMF0udHJpbSgpLnRvTG93ZXJDYXNlKCk7bT0idW5kZWZpbmVkIiE9dHlwZW9mIG1bMV0/bVsxXS50cmltKCk6MDtxPXFbMV0ucmVwbGFjZSgiICIsIiIpO3ZhciBuPShuZXcgRGF0ZSkuZ2V0VGltZSgpO249bmV3IERhdGUobik7dmFyIGw9MDtzd2l0Y2goYyl7Y2FzZSAicyI6bD1uLmdldFNlY29uZHMoKTticmVhaztjYXNlICJpIjpsPW4uZ2V0TWludXRlcygpO2JyZWFrO2Nhc2UgImgiOmw9bi5nZXRIb3VycygpO2JyZWFrO2Nhc2UgImQiOmw9bi5nZXREYXRlKCk7YnJlYWs7Y2FzZSAibSI6bD1uLmdldE1vbnRoKCk7YnJlYWs7Y2FzZSAieSI6bD1uLmdldEZ1bGxZZWFyKCk7YnJlYWs7Y2FzZSAidyI6bD1uLmdldERheSgpLGw9MD09bD82OmwtMX1jPTAhPW0/bCVtOmw7bT1xLnNwbGl0KCIsIik7cT0hYTtmb3Iobj0wO248bS5sZW5ndGg7bisrKWlmKGw9bVtuXSwtMSE9bC5pbmRleE9mKCItIikpe2lmKGw9Cmwuc3BsaXQoIi0iKSxjPj1sWzBdJiZjPD1sWzFdKXtxPWE7YnJlYWt9fWVsc2UgaWYoYz09bCl7cT1hO2JyZWFrfWlmKHEpe2s9ZjticmVha319aWYoISgwPmt8fGs+PWUubGVuZ3RoKSl7YT1lW2tdO3ZhciB6PSIiLHc9Yi5jbGFzc0xpc3QuY29udGFpbnMoImFpLXRpbWVkLXJvdGF0aW9uIik7ZS5mb3JFYWNoKChnLHApPT57Zy5oYXNBdHRyaWJ1dGUoImRhdGEtdGltZSIpJiYodz0hMCl9KTtpZihhLmhhc0F0dHJpYnV0ZSgiZGF0YS10aW1lIikpe2Y9YXRvYihhLmRhdGFzZXQudGltZSk7aWYoMD09ZiYmMTxlLmxlbmd0aCl7Yz1rO2Rve2MrKztjPj1lLmxlbmd0aCYmKGM9MCk7bT1lW2NdO2lmKCFtLmhhc0F0dHJpYnV0ZSgiZGF0YS10aW1lIikpe2s9YzthPWVba107Zj0wO2JyZWFrfW09YXRvYihtLmRhdGFzZXQudGltZSl9d2hpbGUoMD09bSYmYyE9ayk7MCE9ZiYmKGs9YyxhPWVba10sZj1hdG9iKGEuZGF0YXNldC50aW1lKSl9aWYoMDxmJiYoYz1rKzEsYz49ZS5sZW5ndGgmJgooYz0wKSxiLmhhc0F0dHJpYnV0ZSgiZGF0YS1pbmZvIikpKXttPUpTT04ucGFyc2UoYXRvYihiLmRhdGFzZXQuaW5mbykpWzBdO2Iuc2V0QXR0cmlidXRlKCJkYXRhLW5leHQiLGMpO3ZhciB4PSJkaXYuYWktcm90YXRlLmFpLSIrbTthaV9yb3RhdGlvbl90cmlnZ2Vycy5pbmNsdWRlcyh4KSYmKGQ9ITEpO2QmJihhaV9yb3RhdGlvbl90cmlnZ2Vycy5wdXNoKHgpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgZz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHgpO2cuZm9yRWFjaCgocCxyKT0+e3AuY2xhc3NMaXN0LmFkZCgiYWktdGltZXIiKX0pO2FpX3Byb2Nlc3Nfcm90YXRpb24oZyl9LDFFMypmKSk7ej0iICgiK2YrIiBzKSJ9fWVsc2UgYS5oYXNBdHRyaWJ1dGUoImRhdGEtZ3JvdXAiKXx8ZS5mb3JFYWNoKChnLHApPT57cCE9ayYmZy5yZW1vdmUoKX0pO2Euc3R5bGUuZGlzcGxheT0iIjthLnN0eWxlLnZpc2liaWxpdHk9IiI7YS5zdHlsZS5wb3NpdGlvbj0iIjthLnN0eWxlLndpZHRoPQoiIjthLnN0eWxlLmhlaWdodD0iIjthLnN0eWxlLnRvcD0iIjthLnN0eWxlLmxlZnQ9IiI7YS5jbGFzc0xpc3QucmVtb3ZlKCJhaS1yb3RhdGUtaGlkZGVuIik7YS5jbGFzc0xpc3QucmVtb3ZlKCJhaS1yb3RhdGUtaGlkZGVuLTIiKTtiLnN0eWxlLnBvc2l0aW9uPSIiO2lmKGEuaGFzQXR0cmlidXRlKCJkYXRhLWNvZGUiKSl7ZS5mb3JFYWNoKChnLHApPT57Zy5pbm5lclRleHQ9IiJ9KTtkPWI2NGQoYS5kYXRhc2V0LmNvZGUpO2Y9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTtjPSEwO3RyeXtoPWYuY3JlYXRlQ29udGV4dHVhbEZyYWdtZW50KGQpfWNhdGNoKGcpe2M9ITF9YS5hcHBlbmQoaCk7RCgpfWY9cGFyc2VJbnQoYS5kYXRhc2V0LmluZGV4KTt2YXIgeT1iNjRkKGEuZGF0YXNldC5uYW1lKTtkPWIuY2xvc2VzdCgiLmFpLWRlYnVnLWJsb2NrIik7aWYobnVsbCE9ZCl7aD1kLnF1ZXJ5U2VsZWN0b3JBbGwoImtiZC5haS1vcHRpb24tbmFtZSIpO2Q9ZC5xdWVyeVNlbGVjdG9yQWxsKCIuYWktZGVidWctYmxvY2siKTsKaWYoMCE9ZC5sZW5ndGgpe3ZhciBBPVtdO2QuZm9yRWFjaCgoZyxwKT0+e2cucXVlcnlTZWxlY3RvckFsbCgia2JkLmFpLW9wdGlvbi1uYW1lIikuZm9yRWFjaCgocix0KT0+e0EucHVzaChyKX0pfSk7aD1BcnJheS5mcm9tKGgpO2g9aC5zbGljZSgwLGgubGVuZ3RoLUEubGVuZ3RoKX0wIT1oLmxlbmd0aCYmKHNlcGFyYXRvcj1oWzBdLmhhc0F0dHJpYnV0ZSgiZGF0YS1zZXBhcmF0b3IiKT9oWzBdLmRhdGFzZXQuc2VwYXJhdG9yOiIiLGguZm9yRWFjaCgoZyxwKT0+e2cuaW5uZXJUZXh0PXNlcGFyYXRvcit5K3p9KSl9ZD0hMTthPWIuY2xvc2VzdCgiLmFpLWFkYi1zaG93Iik7bnVsbCE9YSYmYS5oYXNBdHRyaWJ1dGUoImRhdGEtYWktdHJhY2tpbmciKSYmKGg9SlNPTi5wYXJzZShiNjRkKGEuZ2V0QXR0cmlidXRlKCJkYXRhLWFpLXRyYWNraW5nIikpKSwidW5kZWZpbmVkIiE9PXR5cGVvZiBoJiZoLmNvbnN0cnVjdG9yPT09QXJyYXkmJihoWzFdPWYsaFszXT15LGEuc2V0QXR0cmlidXRlKCJkYXRhLWFpLXRyYWNraW5nIiwKYjY0ZShKU09OLnN0cmluZ2lmeShoKSkpLGEuY2xhc3NMaXN0LmFkZCgiYWktdHJhY2siKSx3JiZhaV90cmFja2luZ19maW5pc2hlZCYmYS5nZXRBdHRyaWJ1dGUoImNsYXNzIikuaW5jbHVkZXMoImFpLWltcHJlc3Npb24iKSYmYS5jbGFzc0xpc3QuYWRkKCJhaS1uby1wYWdldmlldyIpLGQ9ITApKTtkfHwoZD1iLmNsb3Nlc3QoImRpdltkYXRhLWFpXSIpLG51bGwhPWQmJmQuaGFzQXR0cmlidXRlKCJkYXRhLWFpIikmJihoPUpTT04ucGFyc2UoYjY0ZChkLmdldEF0dHJpYnV0ZSgiZGF0YS1haSIpKSksInVuZGVmaW5lZCIhPT10eXBlb2YgaCYmaC5jb25zdHJ1Y3Rvcj09PUFycmF5JiYoaFsxXT1mLGhbM109eSxkLnNldEF0dHJpYnV0ZSgiZGF0YS1haSIsYjY0ZShKU09OLnN0cmluZ2lmeShoKSkpLGQuY2xhc3NMaXN0LmFkZCgiYWktdHJhY2siKSx3JiZhaV90cmFja2luZ19maW5pc2hlZCYmZC5nZXRBdHRyaWJ1dGUoImNsYXNzIikuaW5jbHVkZXMoImFpLWltcHJlc3Npb24iKSYmCmQuY2xhc3NMaXN0LmFkZCgiYWktbm8tcGFnZXZpZXciKSkpKX19fTthaV9wcm9jZXNzX3JvdGF0aW9ucz1mdW5jdGlvbigpe2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoImRpdi5haS1yb3RhdGUiKS5mb3JFYWNoKChiLGQpPT57YWlfcHJvY2Vzc19yb3RhdGlvbihiKX0pfTtmdW5jdGlvbiBCKCl7ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiZGl2LmFpLXJvdGF0ZS5haS1yb3RhdGlvbi1ncm91cHMiKS5mb3JFYWNoKChiLGQpPT57Yi5jbGFzc0xpc3QuYWRkKCJhaS10aW1lciIpO2FpX3Byb2Nlc3Nfcm90YXRpb24oYil9KX1haV9wcm9jZXNzX3JvdGF0aW9uc19pbl9lbGVtZW50PWZ1bmN0aW9uKGIpe251bGwhPWImJmIucXVlcnlTZWxlY3RvckFsbCgiZGl2LmFpLXJvdGF0ZSIpLmZvckVhY2goKGQsZSk9PnthaV9wcm9jZXNzX3JvdGF0aW9uKGQpfSl9OyhmdW5jdGlvbihiKXsiY29tcGxldGUiPT09ZG9jdW1lbnQucmVhZHlTdGF0ZXx8ImxvYWRpbmciIT09ZG9jdW1lbnQucmVhZHlTdGF0ZSYmCiFkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZG9TY3JvbGw/YigpOmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGIpfSkoZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YWlfcHJvY2Vzc19yb3RhdGlvbnMoKX0sMTApfSk7YWlfcHJvY2Vzc19lbGVtZW50c19hY3RpdmU9ITE7ZnVuY3Rpb24gRCgpe2FpX3Byb2Nlc3NfZWxlbWVudHNfYWN0aXZlfHxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YWlfcHJvY2Vzc19lbGVtZW50c19hY3RpdmU9ITE7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX3Byb2Nlc3Nfcm90YXRpb25zJiZhaV9wcm9jZXNzX3JvdGF0aW9ucygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX2xpc3RzJiZhaV9wcm9jZXNzX2xpc3RzKCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX3Byb2Nlc3NfaXBfYWRkcmVzc2VzJiZhaV9wcm9jZXNzX2lwX2FkZHJlc3NlcygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX2ZpbHRlcl9ob29rcyYmCmFpX3Byb2Nlc3NfZmlsdGVyX2hvb2tzKCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX2FkYl9wcm9jZXNzX2Jsb2NrcyYmYWlfYWRiX3Byb2Nlc3NfYmxvY2tzKCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX3Byb2Nlc3NfaW1wcmVzc2lvbnMmJjE9PWFpX3RyYWNraW5nX2ZpbmlzaGVkJiZhaV9wcm9jZXNzX2ltcHJlc3Npb25zKCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX2luc3RhbGxfY2xpY2tfdHJhY2tlcnMmJjE9PWFpX3RyYWNraW5nX2ZpbmlzaGVkJiZhaV9pbnN0YWxsX2NsaWNrX3RyYWNrZXJzKCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX2luc3RhbGxfY2xvc2VfYnV0dG9ucyYmYWlfaW5zdGFsbF9jbG9zZV9idXR0b25zKGRvY3VtZW50KX0sNSk7YWlfcHJvY2Vzc19lbGVtZW50c19hY3RpdmU9ITB9fTsKOyFmdW5jdGlvbihhLGIpe2EoZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gYShhLGIpe3JldHVybiBudWxsIT1hJiZudWxsIT1iJiZhLnRvTG93ZXJDYXNlKCk9PT1iLnRvTG93ZXJDYXNlKCl9ZnVuY3Rpb24gYyhhLGIpe3ZhciBjLGQsZT1hLmxlbmd0aDtpZighZXx8IWIpcmV0dXJuITE7Zm9yKGM9Yi50b0xvd2VyQ2FzZSgpLGQ9MDtkPGU7KytkKWlmKGM9PT1hW2RdLnRvTG93ZXJDYXNlKCkpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gZChhKXtmb3IodmFyIGIgaW4gYSlpLmNhbGwoYSxiKSYmKGFbYl09bmV3IFJlZ0V4cChhW2JdLCJpIikpfWZ1bmN0aW9uIGUoYSl7cmV0dXJuKGF8fCIiKS5zdWJzdHIoMCw1MDApfWZ1bmN0aW9uIGYoYSxiKXt0aGlzLnVhPWUoYSksdGhpcy5fY2FjaGU9e30sdGhpcy5tYXhQaG9uZVdpZHRoPWJ8fDYwMH12YXIgZz17fTtnLm1vYmlsZURldGVjdFJ1bGVzPXtwaG9uZXM6e2lQaG9uZToiXFxiaVBob25lXFxifFxcYmlQb2RcXGIiLEJsYWNrQmVycnk6IkJsYWNrQmVycnl8XFxiQkIxMFxcYnxyaW1bMC05XSt8XFxiKEJCQTEwMHxCQkIxMDB8QkJEMTAwfEJCRTEwMHxCQkYxMDB8U1RIMTAwKVxcYi1bMC05XSsiLFBpeGVsOiI7IFxcYlBpeGVsXFxiIixIVEM6IkhUQ3xIVEMuKihTZW5zYXRpb258RXZvfFZpc2lvbnxFeHBsb3Jlcnw2ODAwfDgxMDB8ODkwMHxBNzI3MnxTNTEwZXxDMTEwZXxMZWdlbmR8RGVzaXJlfFQ4MjgyKXxBUFg1MTVDS1R8UXRlazkwOTB8QVBBOTI5MktUfEhEX21pbml8U2Vuc2F0aW9uLipaNzEwZXxQRzg2MTAwfFo3MTVlfERlc2lyZS4qKEE4MTgxfEhEKXxBRFI2MjAwfEFEUjY0MDBMfEFEUjY0MjV8MDAxSFR8SW5zcGlyZSA0R3xBbmRyb2lkLipcXGJFVk9cXGJ8VC1Nb2JpbGUgRzF8WjUyMG18QW5kcm9pZCBbMC05Ll0rOyBQaXhlbCIsTmV4dXM6Ik5leHVzIE9uZXxOZXh1cyBTfEdhbGF4eS4qTmV4dXN8QW5kcm9pZC4qTmV4dXMuKk1vYmlsZXxOZXh1cyA0fE5leHVzIDV8TmV4dXMgNVh8TmV4dXMgNiIsRGVsbDoiRGVsbFs7XT8gKFN0cmVha3xBZXJvfFZlbnVlfFZlbnVlIFByb3xGbGFzaHxTbW9rZXxNaW5pIDNpWCl8WENEMjh8WENEMzV8XFxiMDAxRExcXGJ8XFxiMTAxRExcXGJ8XFxiR1MwMVxcYiIsTW90b3JvbGE6Ik1vdG9yb2xhfERST0lEWHxEUk9JRCBCSU9OSUN8XFxiRHJvaWRcXGIuKkJ1aWxkfEFuZHJvaWQuKlhvb218SFJJMzl8TU9ULXxBMTI2MHxBMTY4MHxBNTU1fEE4NTN8QTg1NXxBOTUzfEE5NTV8QTk1NnxNb3Rvcm9sYS4qRUxFQ1RSSUZZfE1vdG9yb2xhLippMXxpODY3fGk5NDB8TUIyMDB8TUIzMDB8TUI1MDF8TUI1MDJ8TUI1MDh8TUI1MTF8TUI1MjB8TUI1MjV8TUI1MjZ8TUI2MTF8TUI2MTJ8TUI2MzJ8TUI4MTB8TUI4NTV8TUI4NjB8TUI4NjF8TUI4NjV8TUI4NzB8TUU1MDF8TUU1MDJ8TUU1MTF8TUU1MjV8TUU2MDB8TUU2MzJ8TUU3MjJ8TUU4MTF8TUU4NjB8TUU4NjN8TUU4NjV8TVQ2MjB8TVQ3MTB8TVQ3MTZ8TVQ3MjB8TVQ4MTB8TVQ4NzB8TVQ5MTd8TW90b3JvbGEuKlRJVEFOSVVNfFdYNDM1fFdYNDQ1fFhUMzAwfFhUMzAxfFhUMzExfFhUMzE2fFhUMzE3fFhUMzE5fFhUMzIwfFhUMzkwfFhUNTAyfFhUNTMwfFhUNTMxfFhUNTMyfFhUNTM1fFhUNjAzfFhUNjEwfFhUNjExfFhUNjE1fFhUNjgxfFhUNzAxfFhUNzAyfFhUNzExfFhUNzIwfFhUODAwfFhUODA2fFhUODYwfFhUODYyfFhUODc1fFhUODgyfFhUODgzfFhUODk0fFhUOTAxfFhUOTA3fFhUOTA5fFhUOTEwfFhUOTEyfFhUOTI4fFhUOTI2fFhUOTE1fFhUOTE5fFhUOTI1fFhUMTAyMXxcXGJNb3RvIEVcXGJ8WFQxMDY4fFhUMTA5MnxYVDEwNTIiLFNhbXN1bmc6IlxcYlNhbXN1bmdcXGJ8U00tRzk1MEZ8U00tRzk1NUZ8U00tRzkyNTB8R1QtMTkzMDB8U0dILUkzMzd8QkdULVM1MjMwfEdULUIyMTAwfEdULUIyNzAwfEdULUIyNzEwfEdULUIzMjEwfEdULUIzMzEwfEdULUIzNDEwfEdULUIzNzMwfEdULUIzNzQwfEdULUI1NTEwfEdULUI1NTEyfEdULUI1NzIyfEdULUI2NTIwfEdULUI3MzAwfEdULUI3MzIwfEdULUI3MzMwfEdULUI3MzUwfEdULUI3NTEwfEdULUI3NzIyfEdULUI3ODAwfEdULUMzMDEwfEdULUMzMDExfEdULUMzMDYwfEdULUMzMjAwfEdULUMzMjEyfEdULUMzMjEySXxHVC1DMzI2MnxHVC1DMzIyMnxHVC1DMzMwMHxHVC1DMzMwMEt8R1QtQzMzMDN8R1QtQzMzMDNLfEdULUMzMzEwfEdULUMzMzIyfEdULUMzMzMwfEdULUMzMzUwfEdULUMzNTAwfEdULUMzNTEwfEdULUMzNTMwfEdULUMzNjMwfEdULUMzNzgwfEdULUM1MDEwfEdULUM1MjEyfEdULUM2NjIwfEdULUM2NjI1fEdULUM2NzEyfEdULUUxMDUwfEdULUUxMDcwfEdULUUxMDc1fEdULUUxMDgwfEdULUUxMDgxfEdULUUxMDg1fEdULUUxMDg3fEdULUUxMTAwfEdULUUxMTA3fEdULUUxMTEwfEdULUUxMTIwfEdULUUxMTI1fEdULUUxMTMwfEdULUUxMTYwfEdULUUxMTcwfEdULUUxMTc1fEdULUUxMTgwfEdULUUxMTgyfEdULUUxMjAwfEdULUUxMjEwfEdULUUxMjI1fEdULUUxMjMwfEdULUUxMzkwfEdULUUyMTAwfEdULUUyMTIwfEdULUUyMTIxfEdULUUyMTUyfEdULUUyMjIwfEdULUUyMjIyfEdULUUyMjMwfEdULUUyMjMyfEdULUUyMjUwfEdULUUyMzcwfEdULUUyNTUwfEdULUUyNjUyfEdULUUzMjEwfEdULUUzMjEzfEdULUk1NTAwfEdULUk1NTAzfEdULUk1NzAwfEdULUk1ODAwfEdULUk1ODAxfEdULUk2NDEwfEdULUk2NDIwfEdULUk3MTEwfEdULUk3NDEwfEdULUk3NTAwfEdULUk4MDAwfEdULUk4MTUwfEdULUk4MTYwfEdULUk4MTkwfEdULUk4MzIwfEdULUk4MzMwfEdULUk4MzUwfEdULUk4NTMwfEdULUk4NzAwfEdULUk4NzAzfEdULUk4OTEwfEdULUk5MDAwfEdULUk5MDAxfEdULUk5MDAzfEdULUk5MDEwfEdULUk5MDIwfEdULUk5MDIzfEdULUk5MDcwfEdULUk5MDgyfEdULUk5MTAwfEdULUk5MTAzfEdULUk5MjIwfEdULUk5MjUwfEdULUk5MzAwfEdULUk5MzA1fEdULUk5NTAwfEdULUk5NTA1fEdULU0zNTEwfEdULU01NjUwfEdULU03NTAwfEdULU03NjAwfEdULU03NjAzfEdULU04ODAwfEdULU04OTEwfEdULU43MDAwfEdULVMzMTEwfEdULVMzMzEwfEdULVMzMzUwfEdULVMzMzUzfEdULVMzMzcwfEdULVMzNjUwfEdULVMzNjUzfEdULVMzNzcwfEdULVMzODUwfEdULVM1MjEwfEdULVM1MjIwfEdULVM1MjI5fEdULVM1MjMwfEdULVM1MjMzfEdULVM1MjUwfEdULVM1MjUzfEdULVM1MjYwfEdULVM1MjYzfEdULVM1MjcwfEdULVM1MzAwfEdULVM1MzMwfEdULVM1MzUwfEdULVM1MzYwfEdULVM1MzYzfEdULVM1MzY5fEdULVM1MzgwfEdULVM1MzgwRHxHVC1TNTU2MHxHVC1TNTU3MHxHVC1TNTYwMHxHVC1TNTYwM3xHVC1TNTYxMHxHVC1TNTYyMHxHVC1TNTY2MHxHVC1TNTY3MHxHVC1TNTY5MHxHVC1TNTc1MHxHVC1TNTc4MHxHVC1TNTgzMHxHVC1TNTgzOXxHVC1TNjEwMnxHVC1TNjUwMHxHVC1TNzA3MHxHVC1TNzIwMHxHVC1TNzIyMHxHVC1TNzIzMHxHVC1TNzIzM3xHVC1TNzI1MHxHVC1TNzUwMHxHVC1TNzUzMHxHVC1TNzU1MHxHVC1TNzU2MnxHVC1TNzcxMHxHVC1TODAwMHxHVC1TODAwM3xHVC1TODUwMHxHVC1TODUzMHxHVC1TODYwMHxTQ0gtQTMxMHxTQ0gtQTUzMHxTQ0gtQTU3MHxTQ0gtQTYxMHxTQ0gtQTYzMHxTQ0gtQTY1MHxTQ0gtQTc5MHxTQ0gtQTc5NXxTQ0gtQTg1MHxTQ0gtQTg3MHxTQ0gtQTg5MHxTQ0gtQTkzMHxTQ0gtQTk1MHxTQ0gtQTk3MHxTQ0gtQTk5MHxTQ0gtSTEwMHxTQ0gtSTExMHxTQ0gtSTQwMHxTQ0gtSTQwNXxTQ0gtSTUwMHxTQ0gtSTUxMHxTQ0gtSTUxNXxTQ0gtSTYwMHxTQ0gtSTczMHxTQ0gtSTc2MHxTQ0gtSTc3MHxTQ0gtSTgzMHxTQ0gtSTkxMHxTQ0gtSTkyMHxTQ0gtSTk1OXxTQ0gtTEMxMXxTQ0gtTjE1MHxTQ0gtTjMwMHxTQ0gtUjEwMHxTQ0gtUjMwMHxTQ0gtUjM1MXxTQ0gtUjQwMHxTQ0gtUjQxMHxTQ0gtVDMwMHxTQ0gtVTMxMHxTQ0gtVTMyMHxTQ0gtVTM1MHxTQ0gtVTM2MHxTQ0gtVTM2NXxTQ0gtVTM3MHxTQ0gtVTM4MHxTQ0gtVTQxMHxTQ0gtVTQzMHxTQ0gtVTQ1MHxTQ0gtVTQ2MHxTQ0gtVTQ3MHxTQ0gtVTQ5MHxTQ0gtVTU0MHxTQ0gtVTU1MHxTQ0gtVTYyMHxTQ0gtVTY0MHxTQ0gtVTY1MHxTQ0gtVTY2MHxTQ0gtVTcwMHxTQ0gtVTc0MHxTQ0gtVTc1MHxTQ0gtVTgxMHxTQ0gtVTgyMHxTQ0gtVTkwMHxTQ0gtVTk0MHxTQ0gtVTk2MHxTQ1MtMjZVQ3xTR0gtQTEwN3xTR0gtQTExN3xTR0gtQTEyN3xTR0gtQTEzN3xTR0gtQTE1N3xTR0gtQTE2N3xTR0gtQTE3N3xTR0gtQTE4N3xTR0gtQTE5N3xTR0gtQTIyN3xTR0gtQTIzN3xTR0gtQTI1N3xTR0gtQTQzN3xTR0gtQTUxN3xTR0gtQTU5N3xTR0gtQTYzN3xTR0gtQTY1N3xTR0gtQTY2N3xTR0gtQTY4N3xTR0gtQTY5N3xTR0gtQTcwN3xTR0gtQTcxN3xTR0gtQTcyN3xTR0gtQTczN3xTR0gtQTc0N3xTR0gtQTc2N3xTR0gtQTc3N3xTR0gtQTc5N3xTR0gtQTgxN3xTR0gtQTgyN3xTR0gtQTgzN3xTR0gtQTg0N3xTR0gtQTg2N3xTR0gtQTg3N3xTR0gtQTg4N3xTR0gtQTg5N3xTR0gtQTkyN3xTR0gtQjEwMHxTR0gtQjEzMHxTR0gtQjIwMHxTR0gtQjIyMHxTR0gtQzEwMHxTR0gtQzExMHxTR0gtQzEyMHxTR0gtQzEzMHxTR0gtQzE0MHxTR0gtQzE2MHxTR0gtQzE3MHxTR0gtQzE4MHxTR0gtQzIwMHxTR0gtQzIwN3xTR0gtQzIxMHxTR0gtQzIyNXxTR0gtQzIzMHxTR0gtQzQxN3xTR0gtQzQ1MHxTR0gtRDMwN3xTR0gtRDM0N3xTR0gtRDM1N3xTR0gtRDQwN3xTR0gtRDQxNXxTR0gtRDc4MHxTR0gtRDgwN3xTR0gtRDk4MHxTR0gtRTEwNXxTR0gtRTIwMHxTR0gtRTMxNXxTR0gtRTMxNnxTR0gtRTMxN3xTR0gtRTMzNXxTR0gtRTU5MHxTR0gtRTYzNXxTR0gtRTcxNXxTR0gtRTg5MHxTR0gtRjMwMHxTR0gtRjQ4MHxTR0gtSTIwMHxTR0gtSTMwMHxTR0gtSTMyMHxTR0gtSTU1MHxTR0gtSTU3N3xTR0gtSTYwMHxTR0gtSTYwN3xTR0gtSTYxN3xTR0gtSTYyN3xTR0gtSTYzN3xTR0gtSTY3N3xTR0gtSTcwMHxTR0gtSTcxN3xTR0gtSTcyN3xTR0gtaTc0N018U0dILUk3Nzd8U0dILUk3ODB8U0dILUk4Mjd8U0dILUk4NDd8U0dILUk4NTd8U0dILUk4OTZ8U0dILUk4OTd8U0dILUk5MDB8U0dILUk5MDd8U0dILUk5MTd8U0dILUk5Mjd8U0dILUk5Mzd8U0dILUk5OTd8U0dILUoxNTB8U0dILUoyMDB8U0dILUwxNzB8U0dILUw3MDB8U0dILU0xMTB8U0dILU0xNTB8U0dILU0yMDB8U0dILU4xMDV8U0dILU41MDB8U0dILU42MDB8U0dILU42MjB8U0dILU42MjV8U0dILU43MDB8U0dILU43MTB8U0dILVAxMDd8U0dILVAyMDd8U0dILVAzMDB8U0dILVAzMTB8U0dILVA1MjB8U0dILVA3MzV8U0dILVA3Nzd8U0dILVExMDV8U0dILVIyMTB8U0dILVIyMjB8U0dILVIyMjV8U0dILVMxMDV8U0dILVMzMDd8U0dILVQxMDl8U0dILVQxMTl8U0dILVQxMzl8U0dILVQyMDl8U0dILVQyMTl8U0dILVQyMjl8U0dILVQyMzl8U0dILVQyNDl8U0dILVQyNTl8U0dILVQzMDl8U0dILVQzMTl8U0dILVQzMjl8U0dILVQzMzl8U0dILVQzNDl8U0dILVQzNTl8U0dILVQzNjl8U0dILVQzNzl8U0dILVQ0MDl8U0dILVQ0Mjl8U0dILVQ0Mzl8U0dILVQ0NTl8U0dILVQ0Njl8U0dILVQ0Nzl8U0dILVQ0OTl8U0dILVQ1MDl8U0dILVQ1MTl8U0dILVQ1Mzl8U0dILVQ1NTl8U0dILVQ1ODl8U0dILVQ2MDl8U0dILVQ2MTl8U0dILVQ2Mjl8U0dILVQ2Mzl8U0dILVQ2NTl8U0dILVQ2Njl8U0dILVQ2Nzl8U0dILVQ3MDl8U0dILVQ3MTl8U0dILVQ3Mjl8U0dILVQ3Mzl8U0dILVQ3NDZ8U0dILVQ3NDl8U0dILVQ3NTl8U0dILVQ3Njl8U0dILVQ4MDl8U0dILVQ4MTl8U0dILVQ4Mzl8U0dILVQ5MTl8U0dILVQ5Mjl8U0dILVQ5Mzl8U0dILVQ5NTl8U0dILVQ5ODl8U0dILVUxMDB8U0dILVUyMDB8U0dILVU4MDB8U0dILVYyMDV8U0dILVYyMDZ8U0dILVgxMDB8U0dILVgxMDV8U0dILVgxMjB8U0dILVgxNDB8U0dILVg0MjZ8U0dILVg0Mjd8U0dILVg0NzV8U0dILVg0OTV8U0dILVg0OTd8U0dILVg1MDd8U0dILVg2MDB8U0dILVg2MTB8U0dILVg2MjB8U0dILVg2MzB8U0dILVg3MDB8U0dILVg4MjB8U0dILVg4OTB8U0dILVoxMzB8U0dILVoxNTB8U0dILVoxNzB8U0dILVpYMTB8U0dILVpYMjB8U0hXLU0xMTB8U1BILUExMjB8U1BILUE0MDB8U1BILUE0MjB8U1BILUE0NjB8U1BILUE1MDB8U1BILUE1NjB8U1BILUE2MDB8U1BILUE2MjB8U1BILUE2NjB8U1BILUE3MDB8U1BILUE3NDB8U1BILUE3NjB8U1BILUE3OTB8U1BILUE4MDB8U1BILUE4MjB8U1BILUE4NDB8U1BILUE4ODB8U1BILUE5MDB8U1BILUE5NDB8U1BILUE5NjB8U1BILUQ2MDB8U1BILUQ3MDB8U1BILUQ3MTB8U1BILUQ3MjB8U1BILUkzMDB8U1BILUkzMjV8U1BILUkzMzB8U1BILUkzNTB8U1BILUk1MDB8U1BILUk2MDB8U1BILUk3MDB8U1BILUw3MDB8U1BILU0xMDB8U1BILU0yMjB8U1BILU0yNDB8U1BILU0zMDB8U1BILU0zMDV8U1BILU0zMjB8U1BILU0zMzB8U1BILU0zNTB8U1BILU0zNjB8U1BILU0zNzB8U1BILU0zODB8U1BILU01MTB8U1BILU01NDB8U1BILU01NTB8U1BILU01NjB8U1BILU01NzB8U1BILU01ODB8U1BILU02MTB8U1BILU02MjB8U1BILU02MzB8U1BILU04MDB8U1BILU04MTB8U1BILU04NTB8U1BILU05MDB8U1BILU05MTB8U1BILU05MjB8U1BILU05MzB8U1BILU4xMDB8U1BILU4yMDB8U1BILU4yNDB8U1BILU4zMDB8U1BILU40MDB8U1BILVo0MDB8U1dDLUUxMDB8U0NILWk5MDl8R1QtTjcxMDB8R1QtTjcxMDV8U0NILUk1MzV8U00tTjkwMEF8U0dILUkzMTd8U0dILVQ5OTlMfEdULVM1MzYwQnxHVC1JODI2MnxHVC1TNjgwMnxHVC1TNjMxMnxHVC1TNjMxMHxHVC1TNTMxMnxHVC1TNTMxMHxHVC1JOTEwNXxHVC1JODUxMHxHVC1TNjc5ME58U00tRzcxMDV8U00tTjkwMDV8R1QtUzUzMDF8R1QtSTkyOTV8R1QtSTkxOTV8U00tQzEwMXxHVC1TNzM5MnxHVC1TNzU2MHxHVC1CNzYxMHxHVC1JNTUxMHxHVC1TNzU4MnxHVC1TNzUzMEV8R1QtSTg3NTB8U00tRzkwMDZWfFNNLUc5MDA4VnxTTS1HOTAwOUR8U00tRzkwMEF8U00tRzkwMER8U00tRzkwMEZ8U00tRzkwMEh8U00tRzkwMEl8U00tRzkwMEp8U00tRzkwMEt8U00tRzkwMEx8U00tRzkwME18U00tRzkwMFB8U00tRzkwMFI0fFNNLUc5MDBTfFNNLUc5MDBUfFNNLUc5MDBWfFNNLUc5MDBXOHxTSFYtRTE2MEt8U0NILVA3MDl8U0NILVA3Mjl8U00tVDI1NTh8R1QtSTkyMDV8U00tRzkzNTB8U00tSjEyMEZ8U00tRzkyMEZ8U00tRzkyMFZ8U00tRzkzMEZ8U00tTjkxMEN8U00tQTMxMEZ8R1QtSTkxOTB8U00tSjUwMEZOfFNNLUc5MDNGfFNNLUozMzBGfFNNLUc2MTBGfFNNLUc5ODFCfFNNLUc4OTJBfFNNLUE1MzBGIixMRzoiXFxiTEdcXGI7fExHWy0gXT8oQzgwMHxDOTAwfEU0MDB8RTYxMHxFOTAwfEUtOTAwfEYxNjB8RjE4MEt8RjE4MEx8RjE4MFN8NzMwfDg1NXxMMTYwfExTNzQwfExTODQwfExTOTcwfExVNjIwMHxNUzY5MHxNUzY5NXxNUzc3MHxNUzg0MHxNUzg3MHxNUzkxMHxQNTAwfFA3MDB8UDcwNXxWTTY5NnxBUzY4MHxBUzY5NXxBWDg0MHxDNzI5fEU5NzB8R1M1MDV8MjcyfEMzOTV8RTczOUJLfEU5NjB8TDU1Q3xMNzVDfExTNjk2fExTODYwfFA3NjlCS3xQMzUwfFA1MDB8UDUwOXxQODcwfFVOMjcyfFVTNzMwfFZTODQwfFZTOTUwfExOMjcyfExONTEwfExTNjcwfExTODU1fExXNjkwfE1OMjcwfE1ONTEwfFA1MDl8UDc2OXxQOTMwfFVOMjAwfFVOMjcwfFVONTEwfFVONjEwfFVTNjcwfFVTNzQwfFVTNzYwfFVYMjY1fFVYODQwfFZOMjcxfFZONTMwfFZTNjYwfFZTNzAwfFZTNzQwfFZTNzUwfFZTOTEwfFZTOTIwfFZTOTMwfFZYOTIwMHxWWDExMDAwfEFYODQwQXxMVzc3MHxQNTA2fFA5MjV8UDk5OXxFNjEyfEQ5NTV8RDgwMnxNUzMyM3xNMjU3KXxMTS1HNzEwIixTb255OiJTb255U1R8U29ueUxUfFNvbnlFcmljc3NvbnxTb255RXJpY3Nzb25MVDE1aXZ8TFQxOGl8RTEwaXxMVDI4aHxMVDI2d3xTb255RXJpY3Nzb25NVDI3aXxDNTMwM3xDNjkwMnxDNjkwM3xDNjkwNnxDNjk0M3xEMjUzM3xTT1YzNHw2MDFTT3xGODMzMiIsQXN1czoiQXN1cy4qR2FsYXh5fFBhZEZvbmUuKk1vYmlsZSIsWGlhb21pOiJeKD8hLipcXGJ4MTFcXGIpLip4aWFvbWkuKiR8UE9DT1BIT05FIEYxfE1JIDh8UmVkbWkgTm90ZSA5U3xSZWRtaSBOb3RlIDVBIFByaW1lfE4yRzQ3SHxNMjAwMUoyR3xNMjAwMUoySXxNMTgwNUUxMEF8TTIwMDRKMTFHfE0xOTAyRjFHfE0yMDAySjlHfE0yMDA0SjE5R3xNMjAwM0o2QTFHIixOb2tpYUx1bWlhOiJMdW1pYSBbMC05XXszLDR9IixNaWNyb21heDoiTWljcm9tYXguKlxcYihBMjEwfEE5MnxBODh8QTcyfEExMTF8QTExMFF8QTExNXxBMTE2fEExMTB8QTkwU3xBMjZ8QTUxfEEzNXxBNTR8QTI1fEEyN3xBODl8QTY4fEE2NXxBNTd8QTkwKVxcYiIsUGFsbToiUGFsbVNvdXJjZXxQYWxtIixWZXJ0dToiVmVydHV8VmVydHUuKkx0ZHxWZXJ0dS4qQXNjZW50fFZlcnR1LipBeXh0YXxWZXJ0dS4qQ29uc3RlbGxhdGlvbihGfFF1ZXN0KT98VmVydHUuKk1vbmlrYXxWZXJ0dS4qU2lnbmF0dXJlIixQYW50ZWNoOiJQQU5URUNIfElNLUE4NTBTfElNLUE4NDBTfElNLUE4MzBMfElNLUE4MzBLfElNLUE4MzBTfElNLUE4MjBMfElNLUE4MTBLfElNLUE4MTBTfElNLUE4MDBTfElNLVQxMDBLfElNLUE3MjVMfElNLUE3ODBMfElNLUE3NzVDfElNLUE3NzBLfElNLUE3NjBTfElNLUE3NTBLfElNLUE3NDBTfElNLUE3MzBTfElNLUE3MjBMfElNLUE3MTBLfElNLUE2OTBMfElNLUE2OTBTfElNLUE2NTBTfElNLUE2MzBLfElNLUE2MDBTfFZFR0EgUFRMMjF8UFQwMDN8UDgwMTB8QURSOTEwTHxQNjAzMHxQNjAyMHxQOTA3MHxQNDEwMHxQOTA2MHxQNTAwMHxDRE04OTkyfFRYVDgwNDV8QURSODk5NXxJUzExUFR8UDIwMzB8UDYwMTB8UDgwMDB8UFQwMDJ8SVMwNnxDRE04OTk5fFA5MDUwfFBUMDAxfFRYVDgwNDB8UDIwMjB8UDkwMjB8UDIwMDB8UDcwNDB8UDcwMDB8Qzc5MCIsRmx5OiJJUTIzMHxJUTQ0NHxJUTQ1MHxJUTQ0MHxJUTQ0MnxJUTQ0MXxJUTI0NXxJUTI1NnxJUTIzNnxJUTI1NXxJUTIzNXxJUTI0NXxJUTI3NXxJUTI0MHxJUTI4NXxJUTI4MHxJUTI3MHxJUTI2MHxJUTI1MCIsV2lrbzoiS0lURSA0R3xISUdIV0FZfEdFVEFXQVl8U1RBSVJXQVl8REFSS1NJREV8REFSS0ZVTEx8REFSS05JR0hUfERBUktNT09OfFNMSURFfFdBWCA0R3xSQUlOQk9XfEJMT09NfFNVTlNFVHxHT0EoPyFubmEpfExFTk5ZfEJBUlJZfElHR1l8T1paWXxDSU5LIEZJVkV8Q0lOSyBQRUFYfENJTksgUEVBWCAyfENJTksgU0xJTXxDSU5LIFNMSU0gMnxDSU5LICt8Q0lOSyBLSU5HfENJTksgUEVBWHxDSU5LIFNMSU18U1VCTElNIixpTW9iaWxlOiJpLW1vYmlsZSAoSVF8aS1TVFlMRXxpZGVhfFpBQXxIaXR6KSIsU2ltVmFsbGV5OiJcXGIoU1AtODB8WFQtOTMwfFNYLTM0MHxYVC05MzB8U1gtMzEwfFNQLTM2MHxTUDYwfFNQVC04MDB8U1AtMTIwfFNQVC04MDB8U1AtMTQwfFNQWC01fFNQWC04fFNQLTEwMHxTUFgtOHxTUFgtMTIpXFxiIixXb2xmZ2FuZzoiQVQtQjI0RHxBVC1BUzUwSER8QVQtQVM0MFd8QVQtQVM1NUhEfEFULUFTNDVxMnxBVC1CMjZEfEFULUFTNTBRIixBbGNhdGVsOiJBbGNhdGVsIixOaW50ZW5kbzoiTmludGVuZG8gKDNEU3xTd2l0Y2gpIixBbW9pOiJBbW9pIixJTlE6IklOUSIsT25lUGx1czoiT05FUExVUyIsR2VuZXJpY1Bob25lOiJUYXBhdGFsa3xQREE7fFNBR0VNfFxcYm1tcFxcYnxwb2NrZXR8XFxicHNwXFxifHN5bWJpYW58U21hcnRwaG9uZXxzbWFydGZvbnx0cmVvfHVwLmJyb3dzZXJ8dXAubGlua3x2b2RhZm9uZXxcXGJ3YXBcXGJ8bm9raWF8U2VyaWVzNDB8U2VyaWVzNjB8UzYwfFNvbnlFcmljc3NvbnxOOTAwfE1BVUkuKldBUC4qQnJvd3NlciJ9LHRhYmxldHM6e2lQYWQ6ImlQYWR8aVBhZC4qTW9iaWxlIixOZXh1c1RhYmxldDoiQW5kcm9pZC4qTmV4dXNbXFxzXSsoN3w5fDEwKSIsR29vZ2xlVGFibGV0OiJBbmRyb2lkLipQaXhlbCBDIixTYW1zdW5nVGFibGV0OiJTQU1TVU5HLipUYWJsZXR8R2FsYXh5LipUYWJ8U0MtMDFDfEdULVAxMDAwfEdULVAxMDAzfEdULVAxMDEwfEdULVAzMTA1fEdULVA2MjEwfEdULVA2ODAwfEdULVA2ODEwfEdULVA3MTAwfEdULVA3MzAwfEdULVA3MzEwfEdULVA3NTAwfEdULVA3NTEwfFNDSC1JODAwfFNDSC1JODE1fFNDSC1JOTA1fFNHSC1JOTU3fFNHSC1JOTg3fFNHSC1UODQ5fFNHSC1UODU5fFNHSC1UODY5fFNQSC1QMTAwfEdULVAzMTAwfEdULVAzMTA4fEdULVAzMTEwfEdULVA1MTAwfEdULVA1MTEwfEdULVA2MjAwfEdULVA3MzIwfEdULVA3NTExfEdULU44MDAwfEdULVA4NTEwfFNHSC1JNDk3fFNQSC1QNTAwfFNHSC1UNzc5fFNDSC1JNzA1fFNDSC1JOTE1fEdULU44MDEzfEdULVAzMTEzfEdULVA1MTEzfEdULVA4MTEwfEdULU44MDEwfEdULU44MDA1fEdULU44MDIwfEdULVAxMDEzfEdULVA2MjAxfEdULVA3NTAxfEdULU41MTAwfEdULU41MTA1fEdULU41MTEwfFNIVi1FMTQwS3xTSFYtRTE0MEx8U0hWLUUxNDBTfFNIVi1FMTUwU3xTSFYtRTIzMEt8U0hWLUUyMzBMfFNIVi1FMjMwU3xTSFctTTE4MEt8U0hXLU0xODBMfFNIVy1NMTgwU3xTSFctTTE4MFd8U0hXLU0zMDBXfFNIVy1NMzA1V3xTSFctTTM4MEt8U0hXLU0zODBTfFNIVy1NMzgwV3xTSFctTTQzMFd8U0hXLU00ODBLfFNIVy1NNDgwU3xTSFctTTQ4MFd8U0hXLU00ODVXfFNIVy1NNDg2V3xTSFctTTUwMFd8R1QtSTkyMjh8U0NILVA3Mzl8U0NILUk5MjV8R1QtSTkyMDB8R1QtUDUyMDB8R1QtUDUyMTB8R1QtUDUyMTBYfFNNLVQzMTF8U00tVDMxMHxTTS1UMzEwWHxTTS1UMjEwfFNNLVQyMTBSfFNNLVQyMTF8U00tUDYwMHxTTS1QNjAxfFNNLVA2MDV8U00tUDkwMHxTTS1QOTAxfFNNLVQyMTd8U00tVDIxN0F8U00tVDIxN1N8U00tUDYwMDB8U00tVDMxMDB8U0dILUk0Njd8WEU1MDB8U00tVDExMHxHVC1QNTIyMHxHVC1JOTIwMFh8R1QtTjUxMTBYfEdULU41MTIwfFNNLVA5MDV8U00tVDExMXxTTS1UMjEwNXxTTS1UMzE1fFNNLVQzMjB8U00tVDMyMFh8U00tVDMyMXxTTS1UNTIwfFNNLVQ1MjV8U00tVDUzME5VfFNNLVQyMzBOVXxTTS1UMzMwTlV8U00tVDkwMHxYRTUwMFQxQ3xTTS1QNjA1VnxTTS1QOTA1VnxTTS1UMzM3VnxTTS1UNTM3VnxTTS1UNzA3VnxTTS1UODA3VnxTTS1QNjAwWHxTTS1QOTAwWHxTTS1UMjEwWHxTTS1UMjMwfFNNLVQyMzBYfFNNLVQzMjV8R1QtUDc1MDN8U00tVDUzMXxTTS1UMzMwfFNNLVQ1MzB8U00tVDcwNXxTTS1UNzA1Q3xTTS1UNTM1fFNNLVQzMzF8U00tVDgwMHxTTS1UNzAwfFNNLVQ1Mzd8U00tVDgwN3xTTS1QOTA3QXxTTS1UMzM3QXxTTS1UNTM3QXxTTS1UNzA3QXxTTS1UODA3QXxTTS1UMjM3fFNNLVQ4MDdQfFNNLVA2MDdUfFNNLVQyMTdUfFNNLVQzMzdUfFNNLVQ4MDdUfFNNLVQxMTZOUXxTTS1UMTE2QlV8U00tUDU1MHxTTS1UMzUwfFNNLVQ1NTB8U00tVDkwMDB8U00tUDkwMDB8U00tVDcwNVl8U00tVDgwNXxHVC1QMzExM3xTTS1UNzEwfFNNLVQ4MTB8U00tVDgxNXxTTS1UMzYwfFNNLVQ1MzN8U00tVDExM3xTTS1UMzM1fFNNLVQ3MTV8U00tVDU2MHxTTS1UNjcwfFNNLVQ2Nzd8U00tVDM3N3xTTS1UNTY3fFNNLVQzNTdUfFNNLVQ1NTV8U00tVDU2MXxTTS1UNzEzfFNNLVQ3MTl8U00tVDgxM3xTTS1UODE5fFNNLVQ1ODB8U00tVDM1NVk/fFNNLVQyODB8U00tVDgxN0F8U00tVDgyMHxTTS1XNzAwfFNNLVA1ODB8U00tVDU4N3xTTS1QMzUwfFNNLVA1NTVNfFNNLVAzNTVNfFNNLVQxMTNOVXxTTS1UODE1WXxTTS1UNTg1fFNNLVQyODV8U00tVDgyNXxTTS1XNzA4fFNNLVQ4MzV8U00tVDgzMHxTTS1UODM3VnxTTS1UNzIwfFNNLVQ1MTB8U00tVDM4N1Z8U00tUDYxMHxTTS1UMjkwfFNNLVQ1MTV8U00tVDU5MHxTTS1UNTk1fFNNLVQ3MjV8U00tVDgxN1B8U00tUDU4NU4wfFNNLVQzOTV8U00tVDI5NXxTTS1UODY1fFNNLVA2MTBOfFNNLVA2MTV8U00tVDk3MHxTTS1UMzgwfFNNLVQ1OTUwfFNNLVQ5MDV8U00tVDIzMXxTTS1UNTAwfFNNLVQ4NjAiLEtpbmRsZToiS2luZGxlfFNpbGsuKkFjY2VsZXJhdGVkfEFuZHJvaWQuKlxcYihLRk9UfEtGVFR8S0ZKV0l8S0ZKV0F8S0ZPVEV8S0ZTT1dJfEtGVEhXSXxLRlRIV0F8S0ZBUFdJfEtGQVBXQXxXRkpXQUV8S0ZTQVdBfEtGU0FXSXxLRkFTV0l8S0ZBUldJfEtGRk9XSXxLRkdJV0l8S0ZNRVdJKVxcYnxBbmRyb2lkLipTaWxrL1swLTkuXSsgbGlrZSBDaHJvbWUvWzAtOS5dKyAoPyFNb2JpbGUpIixTdXJmYWNlVGFibGV0OiJXaW5kb3dzIE5UIFswLTkuXSs7IEFSTTsuKihUYWJsZXR8QVJNQkpTKSIsSFBUYWJsZXQ6IkhQIFNsYXRlICg3fDh8MTApfEhQIEVsaXRlUGFkIDkwMHxocC10YWJsZXR8RWxpdGVCb29rLipUb3VjaHxIUCA4fFNsYXRlIDIxfEhQIFNsYXRlQm9vayAxMCIsQXN1c1RhYmxldDoiXi4qUGFkRm9uZSgoPyFNb2JpbGUpLikqJHxUcmFuc2Zvcm1lcnxURjEwMXxURjEwMUd8VEYzMDBUfFRGMzAwVEd8VEYzMDBUTHxURjcwMFR8VEY3MDBLTHxURjcwMVR8VEY4MTBDfE1FMTcxfE1FMzAxVHxNRTMwMkN8TUUzNzFNR3xNRTM3MFR8TUUzNzJNR3xNRTE3MlZ8TUUxNzNYfE1FNDAwQ3xTbGlkZXIgU0wxMDF8XFxiSzAwRlxcYnxcXGJLMDBDXFxifFxcYkswMEVcXGJ8XFxiSzAwTFxcYnxUWDIwMUxBfE1FMTc2Q3xNRTEwMkF8XFxiTTgwVEFcXGJ8TUUzNzJDTHxNRTU2MENHfE1FMzcyQ0d8TUUzMDJLTHwgSzAxMCB8IEswMTEgfCBLMDE3IHwgSzAxRSB8TUU1NzJDfE1FMTAzS3xNRTE3MEN8TUUxNzFDfFxcYk1FNzBDXFxifE1FNTgxQ3xNRTU4MUNMfE1FODUxMEN8TUUxODFDfFAwMVl8UE8xTUF8UDAxWnxcXGJQMDI3XFxifFxcYlAwMjRcXGJ8XFxiUDAwQ1xcYiIsQmxhY2tCZXJyeVRhYmxldDoiUGxheUJvb2t8UklNIFRhYmxldCIsSFRDdGFibGV0OiJIVENfRmx5ZXJfUDUxMnxIVEMgRmx5ZXJ8SFRDIEpldHN0cmVhbXxIVEMtUDcxNWF8SFRDIEVWTyBWaWV3IDRHfFBHNDEyMDB8UEcwOTQxMCIsTW90b3JvbGFUYWJsZXQ6Inhvb218c2hvbGVzdHxNWjYxNXxNWjYwNXxNWjUwNXxNWjYwMXxNWjYwMnxNWjYwM3xNWjYwNHxNWjYwNnxNWjYwN3xNWjYwOHxNWjYwOXxNWjYxNXxNWjYxNnxNWjYxNyIsTm9va1RhYmxldDoiQW5kcm9pZC4qTm9va3xOb29rQ29sb3J8bm9vayBicm93c2VyfEJOUlYyMDB8Qk5SVjIwMEF8Qk5UVjI1MHxCTlRWMjUwQXxCTlRWNDAwfEJOVFY2MDB8TG9naWNQRCBab29tMiIsQWNlclRhYmxldDoiQW5kcm9pZC4qOyBcXGIoQTEwMHxBMTAxfEExMTB8QTIwMHxBMjEwfEEyMTF8QTUwMHxBNTAxfEE1MTB8QTUxMXxBNzAwfEE3MDF8VzUwMHxXNTAwUHxXNTAxfFc1MDFQfFc1MTB8VzUxMXxXNzAwfEcxMDB8RzEwMFd8QjEtQTcxfEIxLTcxMHxCMS03MTF8QTEtODEwfEExLTgxMXxBMS04MzApXFxifFczLTgxMHxcXGJBMy1BMTBcXGJ8XFxiQTMtQTExXFxifFxcYkEzLUEyMFxcYnxcXGJBMy1BMzB8QTMtQTQwIixUb3NoaWJhVGFibGV0OiJBbmRyb2lkLiooQVQxMDB8QVQxMDV8QVQyMDB8QVQyMDV8QVQyNzB8QVQyNzV8QVQzMDB8QVQzMDV8QVQxUzV8QVQ1MDB8QVQ1NzB8QVQ3MDB8QVQ4MzApfFRPU0hJQkEuKkZPTElPIixMR1RhYmxldDoiXFxiTC0wNkN8TEctVjkwOXxMRy1WOTAwfExHLVY3MDB8TEctVjUxMHxMRy1WNTAwfExHLVY0MTB8TEctVjQwMHxMRy1WSzgxMFxcYiIsRnVqaXRzdVRhYmxldDoiQW5kcm9pZC4qXFxiKEYtMDFEfEYtMDJGfEYtMDVFfEYtMTBEfE01MzJ8UTU3MilcXGIiLFByZXN0aWdpb1RhYmxldDoiUE1QMzE3MEJ8UE1QMzI3MEJ8UE1QMzQ3MEJ8UE1QNzE3MEJ8UE1QMzM3MEJ8UE1QMzU3MEN8UE1QNTg3MEN8UE1QMzY3MEJ8UE1QNTU3MEN8UE1QNTc3MER8UE1QMzk3MEJ8UE1QMzg3MEN8UE1QNTU4MEN8UE1QNTg4MER8UE1QNTc4MER8UE1QNTU4OEN8UE1QNzI4MEN8UE1QNzI4MEMzR3xQTVA3MjgwfFBNUDc4ODBEfFBNUDU1OTdEfFBNUDU1OTd8UE1QNzEwMER8UEVSMzQ2NHxQRVIzMjc0fFBFUjM1NzR8UEVSMzg4NHxQRVI1Mjc0fFBFUjU0NzR8UE1QNTA5N0NQUk98UE1QNTA5N3xQTVA3MzgwRHxQTVA1Mjk3Q3xQTVA1Mjk3Q19RVUFEfFBNUDgxMkV8UE1QODEyRTNHfFBNUDgxMkZ8UE1QODEwRXxQTVA4ODBURHxQTVQzMDE3fFBNVDMwMzd8UE1UMzA0N3xQTVQzMDU3fFBNVDcwMDh8UE1UNTg4N3xQTVQ1MDAxfFBNVDUwMDIiLExlbm92b1RhYmxldDoiTGVub3ZvIFRBQnxJZGVhKFRhYnxQYWQpKCBBMXxBMTB8IEsxfCl8VGhpbmtQYWQoWyBdKyk/VGFibGV0fFlUMy04NTBNfFlUMy1YOTBMfFlUMy1YOTBGfFlUMy1YOTBYfExlbm92by4qKFMyMTA5fFMyMTEwfFM1MDAwfFM2MDAwfEszMDExfEEzMDAwfEEzNTAwfEExMDAwfEEyMTA3fEEyMTA5fEExMTA3fEE1NTAwfEE3NjAwfEI2MDAwfEI4MDAwfEI4MDgwKSgtfCkoRkx8RnxIVnxIfCl8VEItWDEwM0Z8VEItWDMwNFh8VEItWDMwNEZ8VEItWDMwNEx8VEItWDUwNUZ8VEItWDUwNUx8VEItWDUwNVh8VEItWDYwNUZ8VEItWDYwNUx8VEItODcwM0Z8VEItODcwM1h8VEItODcwM058VEItODcwNE58VEItODcwNEZ8VEItODcwNFh8VEItODcwNFZ8VEItNzMwNEZ8VEItNzMwNEl8VEItNzMwNFh8VGFiMkE3LTEwRnxUYWIyQTctMjBGfFRCMi1YMzBMfFlUMy1YNTBMfFlUMy1YNTBGfFlUMy1YNTBNfFlULVg3MDVGfFlULVg3MDNGfFlULVg3MDNMfFlULVg3MDVMfFlULVg3MDVYfFRCMi1YMzBGfFRCMi1YMzBMfFRCMi1YMzBNfEEyMTA3QS1GfEEyMTA3QS1IfFRCMy03MzBGfFRCMy03MzBNfFRCMy03MzBYfFRCLTc1MDRGfFRCLTc1MDRYfFRCLVg3MDRGfFRCLVgxMDRGfFRCMy1YNzBGfFRCLVg3MDVGfFRCLTg1MDRGfFRCMy1YNzBMfFRCMy03MTBGfFRCLVg3MDRMIixEZWxsVGFibGV0OiJWZW51ZSAxMXxWZW51ZSA4fFZlbnVlIDd8RGVsbCBTdHJlYWsgMTB8RGVsbCBTdHJlYWsgNyIsWWFydmlrVGFibGV0OiJBbmRyb2lkLipcXGIoVEFCMjEwfFRBQjIxMXxUQUIyMjR8VEFCMjUwfFRBQjI2MHxUQUIyNjR8VEFCMzEwfFRBQjM2MHxUQUIzNjR8VEFCNDEwfFRBQjQxMXxUQUI0MjB8VEFCNDI0fFRBQjQ1MHxUQUI0NjB8VEFCNDYxfFRBQjQ2NHxUQUI0NjV8VEFCNDY3fFRBQjQ2OHxUQUIwNy0xMDB8VEFCMDctMTAxfFRBQjA3LTE1MHxUQUIwNy0xNTF8VEFCMDctMTUyfFRBQjA3LTIwMHxUQUIwNy0yMDEtM0d8VEFCMDctMjEwfFRBQjA3LTIxMXxUQUIwNy0yMTJ8VEFCMDctMjE0fFRBQjA3LTIyMHxUQUIwNy00MDB8VEFCMDctNDg1fFRBQjA4LTE1MHxUQUIwOC0yMDB8VEFCMDgtMjAxLTNHfFRBQjA4LTIwMS0zMHxUQUIwOS0xMDB8VEFCMDktMjExfFRBQjA5LTQxMHxUQUIxMC0xNTB8VEFCMTAtMjAxfFRBQjEwLTIxMXxUQUIxMC00MDB8VEFCMTAtNDEwfFRBQjEzLTIwMXxUQUIyNzRFVUt8VEFCMjc1RVVLfFRBQjM3NEVVS3xUQUI0NjJFVUt8VEFCNDc0RVVLfFRBQjktMjAwKVxcYiIsTWVkaW9uVGFibGV0OiJBbmRyb2lkLipcXGJPWU9cXGJ8TElGRS4qKFA5MjEyfFA5NTE0fFA5NTE2fFM5NTEyKXxMSUZFVEFCIixBcm5vdmFUYWJsZXQ6Ijk3RzR8QU4xMEcyfEFON2JHM3xBTjdmRzN8QU44RzN8QU44Y0czfEFON0czfEFOOUczfEFON2RHM3xBTjdkRzNTVHxBTjdkRzNDaGlsZFBhZHxBTjEwYkczfEFOMTBiRzNEVHxBTjlHMiIsSW50ZW5zb1RhYmxldDoiSU5NODAwMktQfElOTTEwMTBGUHxJTk04MDVORHxJbnRlbnNvIFRhYnxUQUIxMDA0IixJUlVUYWJsZXQ6Ik03MDJwcm8iLE1lZ2Fmb25UYWJsZXQ6Ik1lZ2FGb24gVjl8XFxiWlRFIFY5XFxifEFuZHJvaWQuKlxcYk1UN0FcXGIiLEVib2RhVGFibGV0OiJFLUJvZGEgKFN1cHJlbWV8SW1wcmVzc3BlZWR8SXp6eWNvbW18RXNzZW50aWFsKSIsQWxsVmlld1RhYmxldDoiQWxsdmlldy4qKFZpdmF8QWxsZHJvfENpdHl8U3BlZWR8QWxsIFRWfEZyZW56eXxRdWFzYXJ8U2hpbmV8VFgxfEFYMXxBWDIpIixBcmNob3NUYWJsZXQ6IlxcYigxMDFHOXw4MEc5fEExMDFJVClcXGJ8UWlsaXZlIDk3UnxBcmNob3M1fFxcYkFSQ0hPUyAoNzB8Nzl8ODB8OTB8OTd8MTAxfEZBTUlMWVBBRHwpKGJ8Y3wpKEcxMHwgQ29iYWx0fCBUSVRBTklVTShIRHwpfCBYZW5vbnwgTmVvbnxYU0t8IDJ8IFhTIDJ8IFBMQVRJTlVNfCBDQVJCT058R0FNRVBBRClcXGIiLEFpbm9sVGFibGV0OiJOT1ZPN3xOT1ZPOHxOT1ZPMTB8Tm92bzdBdXJvcmF8Tm92bzdCYXNpY3xOT1ZPN1BBTEFESU58bm92bzktU3BhcmsiLE5va2lhTHVtaWFUYWJsZXQ6Ikx1bWlhIDI1MjAiLFNvbnlUYWJsZXQ6IlNvbnkuKlRhYmxldHxYcGVyaWEgVGFibGV0fFNvbnkgVGFibGV0IFN8U08tMDNFfFNHUFQxMnxTR1BUMTN8U0dQVDExNHxTR1BUMTIxfFNHUFQxMjJ8U0dQVDEyM3xTR1BUMTExfFNHUFQxMTJ8U0dQVDExM3xTR1BUMTMxfFNHUFQxMzJ8U0dQVDEzM3xTR1BUMjExfFNHUFQyMTJ8U0dQVDIxM3xTR1AzMTF8U0dQMzEyfFNHUDMyMXxFQlJEMTEwMXxFQlJEMTEwMnxFQlJEMTIwMXxTR1AzNTF8U0dQMzQxfFNHUDUxMXxTR1A1MTJ8U0dQNTIxfFNHUDU0MXxTR1A1NTF8U0dQNjIxfFNHUDY0MXxTR1A2MTJ8U09UMzF8U0dQNzcxfFNHUDYxMXxTR1A2MTJ8U0dQNzEyIixQaGlsaXBzVGFibGV0OiJcXGIoUEkyMDEwfFBJMzAwMHxQSTMxMDB8UEkzMTA1fFBJMzExMHxQSTMyMDV8UEkzMjEwfFBJMzkwMHxQSTQwMTB8UEk3MDAwfFBJNzEwMClcXGIiLEN1YmVUYWJsZXQ6IkFuZHJvaWQuKihLOEdUfFU5R1R8VTEwR1R8VTE2R1R8VTE3R1R8VTE4R1R8VTE5R1R8VTIwR1R8VTIzR1R8VTMwR1QpfENVQkUgVThHVCIsQ29ieVRhYmxldDoiTUlEMTA0MnxNSUQxMDQ1fE1JRDExMjV8TUlEMTEyNnxNSUQ3MDEyfE1JRDcwMTR8TUlENzAxNXxNSUQ3MDM0fE1JRDcwMzV8TUlENzAzNnxNSUQ3MDQyfE1JRDcwNDh8TUlENzEyN3xNSUQ4MDQyfE1JRDgwNDh8TUlEODEyN3xNSUQ5MDQyfE1JRDk3NDB8TUlEOTc0MnxNSUQ3MDIyfE1JRDcwMTAiLE1JRFRhYmxldDoiTTk3MDF8TTkwMDB8TTkxMDB8TTgwNnxNMTA1MnxNODA2fFQ3MDN8TUlENzAxfE1JRDcxM3xNSUQ3MTB8TUlENzI3fE1JRDc2MHxNSUQ4MzB8TUlENzI4fE1JRDkzM3xNSUQxMjV8TUlEODEwfE1JRDczMnxNSUQxMjB8TUlEOTMwfE1JRDgwMHxNSUQ3MzF8TUlEOTAwfE1JRDEwMHxNSUQ4MjB8TUlENzM1fE1JRDk4MHxNSUQxMzB8TUlEODMzfE1JRDczN3xNSUQ5NjB8TUlEMTM1fE1JRDg2MHxNSUQ3MzZ8TUlEMTQwfE1JRDkzMHxNSUQ4MzV8TUlENzMzfE1JRDRYMTAiLE1TSVRhYmxldDoiTVNJIFxcYihQcmltbyA3M0t8UHJpbW8gNzNMfFByaW1vIDgxTHxQcmltbyA3N3xQcmltbyA5M3xQcmltbyA3NXxQcmltbyA3NnxQcmltbyA3M3xQcmltbyA4MXxQcmltbyA5MXxQcmltbyA5MHxFbmpveSA3MXxFbmpveSA3fEVuam95IDEwKVxcYiIsU01pVFRhYmxldDoiQW5kcm9pZC4qKFxcYk1JRFxcYnxNSUQtNTYwfE1UVi1UMTIwMHxNVFYtUE5ENTMxfE1UVi1QMTEwMXxNVFYtUE5ENTMwKSIsUm9ja0NoaXBUYWJsZXQ6IkFuZHJvaWQuKihSSzI4MTh8UksyODA4QXxSSzI5MTh8UkszMDY2KXxSSzI3Mzh8UksyODA4QSIsRmx5VGFibGV0OiJJUTMxMHxGbHkgVmlzaW9uIixicVRhYmxldDoiQW5kcm9pZC4qKGJxKT8uKlxcYihFbGNhbm98Q3VyaWV8RWRpc29ufE1heHdlbGx8S2VwbGVyfFBhc2NhbHxUZXNsYXxIeXBhdGlhfFBsYXRvbnxOZXd0b258TGl2aW5nc3RvbmV8Q2VydmFudGVzfEF2YW50fEFxdWFyaXMgKFtFfE1dMTB8TTgpKVxcYnxNYXh3ZWxsLipMaXRlfE1heHdlbGwuKlBsdXMiLEh1YXdlaVRhYmxldDoiTWVkaWFQYWR8TWVkaWFQYWQgNyBZb3V0aHxJREVPUyBTN3xTNy0yMDFjfFM3LTIwMnV8UzctMTAxfFM3LTEwM3xTNy0xMDR8UzctMTA1fFM3LTEwNnxTNy0yMDF8UzctU2xpbXxNMi1BMDFMfEJBSC1MMDl8QkFILVcwOXxBR1MtTDA5fENNUi1BTDE5IixOZWNUYWJsZXQ6IlxcYk4tMDZEfFxcYk4tMDhEIixQYW50ZWNoVGFibGV0OiJQYW50ZWNoLipQNDEwMCIsQnJvbmNob1RhYmxldDoiQnJvbmNoby4qKE43MDF8TjcwOHxOODAyfGE3MTApIixWZXJzdXNUYWJsZXQ6IlRPVUNIUEFELipbNzg5MTBdfFxcYlRPVUNIVEFCXFxiIixaeW5jVGFibGV0OiJ6MTAwMHxaOTkgMkd8ejkzMHx6OTkwfHo5MDl8WjkxOXx6OTAwIixQb3NpdGl2b1RhYmxldDoiVEIwN1NUQXxUQjEwU1RBfFRCMDdGVEF8VEIxMEZUQSIsTmFiaVRhYmxldDoiQW5kcm9pZC4qXFxiTmFiaSIsS29ib1RhYmxldDoiS29ibyBUb3VjaHxcXGJLMDgwXFxifFxcYlZveFxcYiBCdWlsZHxcXGJBcmNcXGIgQnVpbGQiLERhbmV3VGFibGV0OiJEU2xpZGUuKlxcYig3MDB8NzAxUnw3MDJ8NzAzUnw3MDR8ODAyfDk3MHw5NzF8OTcyfDk3M3w5NzR8MTAxMHwxMDEyKVxcYiIsVGV4ZXRUYWJsZXQ6Ik5hdmlQYWR8VEItNzcyQXxUTS03MDQ1fFRNLTcwNTV8VE0tOTc1MHxUTS03MDE2fFRNLTcwMjR8VE0tNzAyNnxUTS03MDQxfFRNLTcwNDN8VE0tNzA0N3xUTS04MDQxfFRNLTk3NDF8VE0tOTc0N3xUTS05NzQ4fFRNLTk3NTF8VE0tNzAyMnxUTS03MDIxfFRNLTcwMjB8VE0tNzAxMXxUTS03MDEwfFRNLTcwMjN8VE0tNzAyNXxUTS03MDM3V3xUTS03MDM4V3xUTS03MDI3V3xUTS05NzIwfFRNLTk3MjV8VE0tOTczN1d8VE0tMTAyMHxUTS05NzM4V3xUTS05NzQwfFRNLTk3NDNXfFRCLTgwN0F8VEItNzcxQXxUQi03MjdBfFRCLTcyNUF8VEItNzE5QXxUQi04MjNBfFRCLTgwNUF8VEItNzIzQXxUQi03MTVBfFRCLTcwN0F8VEItNzA1QXxUQi03MDlBfFRCLTcxMUF8VEItODkwSER8VEItODgwSER8VEItNzkwSER8VEItNzgwSER8VEItNzcwSER8VEItNzIxSER8VEItNzEwSER8VEItNDM0SER8VEItODYwSER8VEItODQwSER8VEItNzYwSER8VEItNzUwSER8VEItNzQwSER8VEItNzMwSER8VEItNzIySER8VEItNzIwSER8VEItNzAwSER8VEItNTAwSER8VEItNDcwSER8VEItNDMxSER8VEItNDMwSER8VEItNTA2fFRCLTUwNHxUQi00NDZ8VEItNDM2fFRCLTQxNnxUQi0xNDZTRXxUQi0xMjZTRSIsUGxheXN0YXRpb25UYWJsZXQ6IlBsYXlzdGF0aW9uLiooUG9ydGFibGV8Vml0YSkiLFRyZWtzdG9yVGFibGV0OiJTVDEwNDE2LTF8VlQxMDQxNi0xfFNUNzA0MDgtMXxTVDcwMnh4LTF8U1Q3MDJ4eC0yfFNUODAyMDh8U1Q5NzIxNnxTVDcwMTA0LTJ8VlQxMDQxNi0yfFNUMTAyMTYtMkF8U3VyZlRhYiIsUHlsZUF1ZGlvVGFibGV0OiJcXGIoUFRCTDEwQ0VVfFBUQkwxMEN8UFRCTDcyQkN8UFRCTDcyQkNFVXxQVEJMN0NFVXxQVEJMN0N8UFRCTDkyQkN8UFRCTDkyQkNFVXxQVEJMOUNFVXxQVEJMOUNVS3xQVEJMOUMpXFxiIixBZHZhblRhYmxldDoiQW5kcm9pZC4qIFxcYihFM0F8VDNYfFQ1Q3xUNUJ8VDNFfFQzQ3xUM0J8VDFKfFQxRnxUMkF8VDFIfFQxaXxFMUN8VDEtRXxUNS1BfFQ0fEUxLUJ8VDJDaXxUMS1CfFQxLUR8TzEtQXxFMS1BfFQxLUF8VDNBfFQ0aSlcXGIgIixEYW55VGVjaFRhYmxldDoiR2VuaXVzIFRhYiBHM3xHZW5pdXMgVGFiIFMyfEdlbml1cyBUYWIgUTN8R2VuaXVzIFRhYiBHNHxHZW5pdXMgVGFiIFE0fEdlbml1cyBUYWIgRy1JSXxHZW5pdXMgVEFCIEdJSXxHZW5pdXMgVEFCIEdJSUl8R2VuaXVzIFRhYiBTMSIsR2FsYXBhZFRhYmxldDoiQW5kcm9pZCBbMC05Ll0rOyBbYS16LV0rOyBcXGJHMVxcYiIsTWljcm9tYXhUYWJsZXQ6IkZ1bmJvb2t8TWljcm9tYXguKlxcYihQMjUwfFA1NjB8UDM2MHxQMzYyfFA2MDB8UDMwMHxQMzUwfFA1MDB8UDI3NSlcXGIiLEthcmJvbm5UYWJsZXQ6IkFuZHJvaWQuKlxcYihBMzl8QTM3fEEzNHxTVDh8U1QxMHxTVDd8U21hcnQgVGFiM3xTbWFydCBUYWIyKVxcYiIsQWxsRmluZVRhYmxldDoiRmluZTcgR2VuaXVzfEZpbmU3IFNoaW5lfEZpbmU3IEFpcnxGaW5lOCBTdHlsZXxGaW5lOSBNb3JlfEZpbmUxMCBKb3l8RmluZTExIFdpZGUiLFBST1NDQU5UYWJsZXQ6IlxcYihQRU02M3xQTFQxMDIzR3xQTFQxMDQxfFBMVDEwNDR8UExUMTA0NEd8UExUMTA5MXxQTFQ0MzExfFBMVDQzMTFQTHxQTFQ0MzE1fFBMVDcwMzB8UExUNzAzM3xQTFQ3MDMzRHxQTFQ3MDM1fFBMVDcwMzVEfFBMVDcwNDRLfFBMVDcwNDVLfFBMVDcwNDVLQnxQTFQ3MDcxS0d8UExUNzA3MnxQTFQ3MjIzR3xQTFQ3MjI1R3xQTFQ3Nzc3R3xQTFQ3ODEwS3xQTFQ3ODQ5R3xQTFQ3ODUxR3xQTFQ3ODUyR3xQTFQ4MDE1fFBMVDgwMzF8UExUODAzNHxQTFQ4MDM2fFBMVDgwODBLfFBMVDgwODJ8UExUODA4OHxQTFQ4MjIzR3xQTFQ4MjM0R3xQTFQ4MjM1R3xQTFQ4ODE2S3xQTFQ5MDExfFBMVDkwNDVLfFBMVDkyMzNHfFBMVDk3MzV8UExUOTc2MEd8UExUOTc3MEcpXFxiIixZT05FU1RhYmxldDoiQlExMDc4fEJDMTAwM3xCQzEwNzd8Uks5NzAyfEJDOTczMHxCQzkwMDF8SVQ5MDAxfEJDNzAwOHxCQzcwMTB8QkM3MDh8QkM3Mjh8QkM3MDEyfEJDNzAzMHxCQzcwMjd8QkM3MDI2IixDaGFuZ0ppYVRhYmxldDoiVFBDNzEwMnxUUEM3MTAzfFRQQzcxMDV8VFBDNzEwNnxUUEM3MTA3fFRQQzcyMDF8VFBDNzIwM3xUUEM3MjA1fFRQQzcyMTB8VFBDNzcwOHxUUEM3NzA5fFRQQzc3MTJ8VFBDNzExMHxUUEM4MTAxfFRQQzgxMDN8VFBDODEwNXxUUEM4MTA2fFRQQzgyMDN8VFBDODIwNXxUUEM4NTAzfFRQQzkxMDZ8VFBDOTcwMXxUUEM5NzEwMXxUUEM5NzEwM3xUUEM5NzEwNXxUUEM5NzEwNnxUUEM5NzExMXxUUEM5NzExM3xUUEM5NzIwM3xUUEM5NzYwM3xUUEM5NzgwOXxUUEM5NzIwNXxUUEMxMDEwMXxUUEMxMDEwM3xUUEMxMDEwNnxUUEMxMDExMXxUUEMxMDIwM3xUUEMxMDIwNXxUUEMxMDUwMyIsR1VUYWJsZXQ6IlRYLUExMzAxfFRYLU05MDAyfFE3MDJ8a2YwMjYiLFBvaW50T2ZWaWV3VGFibGV0OiJUQUItUDUwNnxUQUItbmF2aS03LTNHLU18VEFCLVA1MTd8VEFCLVAtNTI3fFRBQi1QNzAxfFRBQi1QNzAzfFRBQi1QNzIxfFRBQi1QNzMxTnxUQUItUDc0MXxUQUItUDgyNXxUQUItUDkwNXxUQUItUDkyNXxUQUItUFI5NDV8VEFCLVBMMTAxNXxUQUItUDEwMjV8VEFCLVBJMTA0NXxUQUItUDEzMjV8VEFCLVBST1RBQlswLTldK3xUQUItUFJPVEFCMjV8VEFCLVBST1RBQjI2fFRBQi1QUk9UQUIyN3xUQUItUFJPVEFCMjZYTHxUQUItUFJPVEFCMi1JUFM5fFRBQi1QUk9UQUIzMC1JUFM5fFRBQi1QUk9UQUIyNVhYTHxUQUItUFJPVEFCMjYtSVBTMTB8VEFCLVBST1RBQjMwLUlQUzEwIixPdmVybWF4VGFibGV0OiJPVi0oU3RlZWxDb3JlfE5ld0Jhc2V8QmFzZWNvcmV8QmFzZW9uZXxFeGVsbGVufFF1YXR0b3J8RWR1VGFifFNvbHV0aW9ufEFDVElPTnxCYXNpY1RhYnxUZWRkeVRhYnxNYWdpY1RhYnxTdHJlYW18VEItMDh8VEItMDkpfFF1YWxjb3JlIDEwMjciLEhDTFRhYmxldDoiSENMLipUYWJsZXR8Q29ubmVjdC0zRy0yLjB8Q29ubmVjdC0yRy0yLjB8TUUgVGFibGV0IFUxfE1FIFRhYmxldCBVMnxNRSBUYWJsZXQgRzF8TUUgVGFibGV0IFgxfE1FIFRhYmxldCBZMnxNRSBUYWJsZXQgU3luYyIsRFBTVGFibGV0OiJEUFMgRHJlYW0gOXxEUFMgRHVhbCA3IixWaXN0dXJlVGFibGV0OiJWOTcgSER8aTc1IDNHfFZpc3R1cmUgVjQoIEhEKT98VmlzdHVyZSBWNSggSEQpP3xWaXN0dXJlIFYxMCIsQ3Jlc3RhVGFibGV0OiJDVFAoLSk/ODEwfENUUCgtKT84MTh8Q1RQKC0pPzgyOHxDVFAoLSk/ODM4fENUUCgtKT84ODh8Q1RQKC0pPzk3OHxDVFAoLSk/OTgwfENUUCgtKT85ODd8Q1RQKC0pPzk4OHxDVFAoLSk/OTg5IixNZWRpYXRla1RhYmxldDoiXFxiTVQ4MTI1fE1UODM4OXxNVDgxMzV8TVQ4Mzc3XFxiIixDb25jb3JkZVRhYmxldDoiQ29uY29yZGUoWyBdKyk/VGFifENvbkNvcmRlIFJlYWRNYW4iLEdvQ2xldmVyVGFibGV0OiJHT0NMRVZFUiBUQUJ8QTdHT0NMRVZFUnxNMTA0MnxNNzg0MXxNNzQyfFIxMDQyQkt8UjEwNDF8VEFCIEE5NzV8VEFCIEE3ODQyfFRBQiBBNzQxfFRBQiBBNzQxTHxUQUIgTTcyM0d8VEFCIE03MjF8VEFCIEExMDIxfFRBQiBJOTIxfFRBQiBSNzIxfFRBQiBJNzIwfFRBQiBUNzZ8VEFCIFI3MHxUQUIgUjc2LjJ8VEFCIFIxMDZ8VEFCIFI4My4yfFRBQiBNODEzR3xUQUIgSTcyMXxHQ1RBNzIyfFRBQiBJNzB8VEFCIEk3MXxUQUIgUzczfFRBQiBSNzN8VEFCIFI3NHxUQUIgUjkzfFRBQiBSNzV8VEFCIFI3Ni4xfFRBQiBBNzN8VEFCIEE5M3xUQUIgQTkzLjJ8VEFCIFQ3MnxUQUIgUjgzfFRBQiBSOTc0fFRBQiBSOTczfFRBQiBBMTAxfFRBQiBBMTAzfFRBQiBBMTA0fFRBQiBBMTA0LjJ8UjEwNUJLfE03MTNHfEE5NzJCS3xUQUIgQTk3MXxUQUIgUjk3NC4yfFRBQiBSMTA0fFRBQiBSODMuM3xUQUIgQTEwNDIiLE1vZGVjb21UYWJsZXQ6IkZyZWVUQUIgOTAwMHxGcmVlVEFCIDcuNHxGcmVlVEFCIDcwMDR8RnJlZVRBQiA3ODAwfEZyZWVUQUIgMjA5NnxGcmVlVEFCIDcuNXxGcmVlVEFCIDEwMTR8RnJlZVRBQiAxMDAxIHxGcmVlVEFCIDgwMDF8RnJlZVRBQiA5NzA2fEZyZWVUQUIgOTcwMnxGcmVlVEFCIDcwMDN8RnJlZVRBQiA3MDAyfEZyZWVUQUIgMTAwMnxGcmVlVEFCIDc4MDF8RnJlZVRBQiAxMzMxfEZyZWVUQUIgMTAwNHxGcmVlVEFCIDgwMDJ8RnJlZVRBQiA4MDE0fEZyZWVUQUIgOTcwNHxGcmVlVEFCIDEwMDMiLFZvbmlub1RhYmxldDoiXFxiKEFyZ3VzWyBfXT9TfERpYW1vbmRbIF9dPzc5SER8RW1lcmFsZFsgX10/NzhFfEx1bmFbIF9dPzcwQ3xPbnl4WyBfXT9TfE9ueXhbIF9dP1p8T3JpblsgX10/SER8T3JpblsgX10/U3xPdGlzWyBfXT9TfFNwZWVkU3RhclsgX10/U3xNYWduZXRbIF9dP005fFByaW11c1sgX10/OTRbIF9dPzNHfFByaW11c1sgX10/OTRIRHxQcmltdXNbIF9dP1FTfEFuZHJvaWQuKlxcYlE4XFxifFNpcml1c1sgX10/RVZPWyBfXT9RU3xTaXJpdXNbIF9dP1FTfFNwaXJpdFsgX10/UylcXGIiLEVDU1RhYmxldDoiVjA3T1QyfFRNMTA1QXxTMTBPVDF8VFIxMENTMSIsU3RvcmV4VGFibGV0OiJlWmVlW18nXT8oVGFifEdvKVswLTldK3xUYWJMQzd8TG9vbmV5IFR1bmVzIFRhYiIsVm9kYWZvbmVUYWJsZXQ6IlNtYXJ0VGFiKFsgXSspP1swLTldK3xTbWFydFRhYklJMTB8U21hcnRUYWJJSTd8VkYtMTQ5N3xWRkQgMTQwMCIsRXNzZW50aWVsQlRhYmxldDoiU21hcnRbICddP1RBQlsgXSs/WzAtOV0rfEZhbWlseVsgJ10/VEFCMiIsUm9zc01vb3JUYWJsZXQ6IlJNLTc5MHxSTS05OTd8Uk1ELTg3OEd8Uk1ELTk3NFJ8Uk1ULTcwNUF8Uk1ULTcwMXxSTUUtNjAxfFJNVC01MDF8Uk1ULTcxMSIsaU1vYmlsZVRhYmxldDoiaS1tb2JpbGUgaS1ub3RlIixUb2xpbm9UYWJsZXQ6InRvbGlubyB0YWIgWzAtOS5dK3x0b2xpbm8gc2hpbmUiLEF1ZGlvU29uaWNUYWJsZXQ6IlxcYkMtMjJRfFQ3LVFDfFQtMTdCfFQtMTdQXFxiIixBTVBFVGFibGV0OiJBbmRyb2lkLiogQTc4ICIsU2trVGFibGV0OiJBbmRyb2lkLiogKFNLWVBBRHxQSE9FTklYfENZQ0xPUFMpIixUZWNub1RhYmxldDoiVEVDTk8gUDl8VEVDTk8gRFA4RCIsSlhEVGFibGV0OiJBbmRyb2lkLiogXFxiKEYzMDAwfEEzMzAwfEpYRDUwMDB8SlhEMzAwMHxKWEQyMDAwfEpYRDMwMEJ8SlhEMzAwfFM1ODAwfFM3ODAwfFM2MDJifFM1MTEwYnxTNzMwMHxTNTMwMHxTNjAyfFM2MDN8UzUxMDB8UzUxMTB8UzYwMXxTNzEwMGF8UDMwMDBGfFAzMDAwc3xQMTAxfFAyMDBzfFAxMDAwbXxQMjAwbXxQOTEwMHxQMTAwMHN8UzY2MDBifFM5MDh8UDEwMDB8UDMwMHxTMTh8UzY2MDB8UzkxMDApXFxiIixpSm95VGFibGV0OiJUYWJsZXQgKFNwaXJpdCA3fEVzc2VudGlhfEdhbGF0ZWF8RnVzaW9ufE9uaXggN3xMYW5kYXxUaXRhbnxTY29vYnl8RGVveHxTdGVsbGF8VGhlbWlzfEFyZ29ufFVuaXF1ZSA3fFN5Z251c3xIZXhlbnxGaW5pdHkgN3xDcmVhbXxDcmVhbSBYMnxKYWRlfE5lb24gN3xOZXJvbiA3fEthbmR5fFNjYXBlfFNhcGh5ciA3fFJlYmVsfEJpb3h8UmViZWx8UmViZWwgOEdCfE15c3R8RHJhY28gN3xNeXN0fFRhYjctMDA0fE15c3R8VGFkZW8gSm9uZXN8VGFibGV0IEJvaW5nfEFycm93fERyYWNvIER1YWwgQ2FtfEF1cml4fE1pbnR8QW1pdHl8UmV2b2x1dGlvbnxGaW5pdHkgOXxOZW9uIDl8VDl3fEFtaXR5IDRHQiBEdWFsIENhbXxTdG9uZSA0R0J8U3RvbmUgOEdCfEFuZHJvbWVkYXxTaWxrZW58WDJ8QW5kcm9tZWRhIElJfEhhbGxleXxGbGFtZXxTYXBoeXIgOSw3fFRvdWNoIDh8UGxhbmV0fFRyaXRvbnxVbmlxdWUgMTB8SGV4ZW4gMTB8TWVtcGhpcyA0R0J8TWVtcGhpcyA4R0J8T25peCAxMCkiLEZYMlRhYmxldDoiRlgyIFBBRDd8RlgyIFBBRDEwIixYb3JvVGFibGV0OiJLaWRzUEFEIDcwMXxQQURbIF0/NzEyfFBBRFsgXT83MTR8UEFEWyBdPzcxNnxQQURbIF0/NzE3fFBBRFsgXT83MTh8UEFEWyBdPzcyMHxQQURbIF0/NzIxfFBBRFsgXT83MjJ8UEFEWyBdPzc5MHxQQURbIF0/NzkyfFBBRFsgXT85MDB8UEFEWyBdPzk3MTVEfFBBRFsgXT85NzE2RFJ8UEFEWyBdPzk3MThEUnxQQURbIF0/OTcxOVFSfFBBRFsgXT85NzIwUVJ8VGVsZVBBRDEwMzB8VGVsZXBhZDEwMzJ8VGVsZVBBRDczMHxUZWxlUEFENzMxfFRlbGVQQUQ3MzJ8VGVsZVBBRDczNVF8VGVsZVBBRDgzMHxUZWxlUEFEOTczMHxUZWxlUEFENzk1fE1lZ2FQQUQgMTMzMXxNZWdhUEFEIDE4NTF8TWVnYVBBRCAyMTUxIixWaWV3c29uaWNUYWJsZXQ6IlZpZXdQYWQgMTBwaXxWaWV3UGFkIDEwZXxWaWV3UGFkIDEwc3xWaWV3UGFkIEU3MnxWaWV3UGFkN3xWaWV3UGFkIEUxMDB8Vmlld1BhZCA3ZXxWaWV3U29uaWMgVkI3MzN8VkIxMDBhIixWZXJpem9uVGFibGV0OiJRVEFRWjN8UVRBSVI3fFFUQVFUWjN8UVRBU1VOMXxRVEFTVU4yfFFUQVhJQTEiLE9keXNUYWJsZXQ6IkxPT1h8WEVOTzEwfE9EWVNbIC1dKFNwYWNlfEVWT3xYcHJlc3N8Tk9PTil8XFxiWEVMSU9cXGJ8WGVsaW8xMFByb3xYRUxJTzdQSE9ORVRBQnxYRUxJTzEwRVhUUkVNRXxYRUxJT1BUMnxORU9fUVVBRDEwIixDYXB0aXZhVGFibGV0OiJDQVBUSVZBIFBBRCIsSWNvbmJpdFRhYmxldDoiTmV0VEFCfE5ULTM3MDJ8TlQtMzcwMlN8TlQtMzcwMlN8TlQtMzYwM1B8TlQtMzYwM1B8TlQtMDcwNFN8TlQtMDcwNFN8TlQtMzgwNUN8TlQtMzgwNUN8TlQtMDgwNkN8TlQtMDgwNkN8TlQtMDkwOVR8TlQtMDkwOVR8TlQtMDkwN1N8TlQtMDkwN1N8TlQtMDkwMlN8TlQtMDkwMlMiLFRlY2xhc3RUYWJsZXQ6IlQ5OCA0R3xcXGJQODBcXGJ8XFxiWDkwSERcXGJ8WDk4IEFpcnxYOTggQWlyIDNHfFxcYlg4OVxcYnxQODAgM0d8XFxiWDgwaFxcYnxQOTggQWlyfFxcYlg4OUhEXFxifFA5OCAzR3xcXGJQOTBIRFxcYnxQODkgM0d8WDk4IDNHfFxcYlA3MGhcXGJ8UDc5SEQgM0d8RzE4ZCAzR3xcXGJQNzlIRFxcYnxcXGJQODlzXFxifFxcYkE4OFxcYnxcXGJQMTBIRFxcYnxcXGJQMTlIRFxcYnxHMTggM0d8XFxiUDc4SERcXGJ8XFxiQTc4XFxifFxcYlA3NVxcYnxHMTdzIDNHfEcxN2ggM0d8XFxiUDg1dFxcYnxcXGJQOTBcXGJ8XFxiUDExXFxifFxcYlA5OHRcXGJ8XFxiUDk4SERcXGJ8XFxiRzE4ZFxcYnxcXGJQODVzXFxifFxcYlAxMUhEXFxifFxcYlA4OHNcXGJ8XFxiQTgwSERcXGJ8XFxiQTgwc2VcXGJ8XFxiQTEwaFxcYnxcXGJQODlcXGJ8XFxiUDc4c1xcYnxcXGJHMThcXGJ8XFxiUDg1XFxifFxcYkE3MGhcXGJ8XFxiQTcwXFxifFxcYkcxN1xcYnxcXGJQMThcXGJ8XFxiQTgwc1xcYnxcXGJBMTFzXFxifFxcYlA4OEhEXFxifFxcYkE4MGhcXGJ8XFxiUDc2c1xcYnxcXGJQNzZoXFxifFxcYlA5OFxcYnxcXGJBMTBIRFxcYnxcXGJQNzhcXGJ8XFxiUDg4XFxifFxcYkExMVxcYnxcXGJBMTB0XFxifFxcYlA3NmFcXGJ8XFxiUDc2dFxcYnxcXGJQNzZlXFxifFxcYlA4NUhEXFxifFxcYlA4NWFcXGJ8XFxiUDg2XFxifFxcYlA3NUhEXFxifFxcYlA3NnZcXGJ8XFxiQTEyXFxifFxcYlA3NWFcXGJ8XFxiQTE1XFxifFxcYlA3NlRpXFxifFxcYlA4MUhEXFxifFxcYkExMFxcYnxcXGJUNzYwVkVcXGJ8XFxiVDcyMEhEXFxifFxcYlA3NlxcYnxcXGJQNzNcXGJ8XFxiUDcxXFxifFxcYlA3MlxcYnxcXGJUNzIwU0VcXGJ8XFxiQzUyMFRpXFxifFxcYlQ3NjBcXGJ8XFxiVDcyMFZFXFxifFQ3MjAtM0dFfFQ3MjAtV2lGaSIsT25kYVRhYmxldDoiXFxiKFY5NzVpfFZpMzB8Vlg1MzB8VjcwMXxWaTYwfFY3MDFzfFZpNTB8VjgwMXN8VjcxOXxWeDYxMHd8Vlg2MTBXfFY4MTlpfFZpMTB8Vlg1ODBXfFZpMTB8VjcxMXN8VjgxM3xWODExfFY4MjB3fFY4MjB8VmkyMHxWNzExfFZJMzBXfFY3MTJ8Vjg5MXd8Vjk3MnxWODE5d3xWODIwd3xWaTYwfFY4MjB3fFY3MTF8VjgxM3N8VjgwMXxWODE5fFY5NzVzfFY4MDF8VjgxOXxWODE5fFY4MTh8VjgxMXxWNzEyfFY5NzVtfFYxMDF3fFY5NjF3fFY4MTJ8VjgxOHxWOTcxfFY5NzFzfFY5MTl8Vjk4OXxWMTE2d3xWMTAyd3xWOTczfFZpNDApXFxiW1xcc10rfFYxMCBcXGI0R1xcYiIsSmF5dGVjaFRhYmxldDoiVFBDLVBBNzYyIixCbGF1cHVua3RUYWJsZXQ6IkVuZGVhdm91ciA4MDBOR3xFbmRlYXZvdXIgMTAxMCIsRGlnbWFUYWJsZXQ6IlxcYihpRHgxMHxpRHg5fGlEeDh8aUR4N3xpRHhEN3xpRHhEOHxpRHNROHxpRHNRN3xpRHNROHxpRHNEMTB8aURuRDd8M1RTODA0SHxpRHNRMTF8aURqN3xpRHMxMClcXGIiLEV2b2xpb1RhYmxldDoiQVJJQV9NaW5pX3dpZml8QXJpYVsgX11NaW5pfEV2b2xpbyBYMTB8RXZvbGlvIFg3fEV2b2xpbyBYOHxcXGJFdm90YWJcXGJ8XFxiTmV1cmFcXGIiLExhdmFUYWJsZXQ6IlFQQUQgRTcwNHxcXGJJdm9yeVNcXGJ8RS1UQUIgSVZPUll8XFxiRS1UQUJcXGIiLEFvY1RhYmxldDoiTVcwODExfE1XMDgxMnxNVzA5MjJ8TVRLODM4MnxNVzEwMzF8TVcwODMxfE1XMDgyMXxNVzA5MzF8TVcwNzEyIixNcG1hblRhYmxldDoiTVAxMSBPQ1RBfE1QMTAgT0NUQXxNUFFDMTExNHxNUFFDMTAwNHxNUFFDOTk0fE1QUUM5NzR8TVBRQzk3M3xNUFFDODA0fE1QUUM3ODR8TVBRQzc4MHxcXGJNUEc3XFxifE1QRENHNzV8TVBEQ0c3MXxNUERDMTAwNnxNUDEwMURDfE1QREM5MDAwfE1QREM5MDV8TVBEQzcwNkhEfE1QREM3MDZ8TVBEQzcwNXxNUERDMTEwfE1QREMxMDB8TVBEQzk5fE1QREM5N3xNUERDODh8TVBEQzh8TVBEQzc3fE1QNzA5fE1JRDcwMXxNSUQ3MTF8TUlEMTcwfE1QREM3MDN8TVBRQzEwMTAiLENlbGtvblRhYmxldDoiQ1Q2OTV8Q1Q4ODh8Q1RbXFxzXT85MTB8Q1Q3IFRhYnxDVDkgVGFifENUMyBUYWJ8Q1QyIFRhYnxDVDEgVGFifEM4MjB8QzcyMHxcXGJDVC0xXFxiIixXb2xkZXJUYWJsZXQ6Im1pVGFiIFxcYihESUFNT05EfFNQQUNFfEJST09LTFlOfE5FT3xGTFl8TUFOSEFUVEFOfEZVTkt8RVZPTFVUSU9OfFNLWXxHT0NBUnxJUk9OfEdFTklVU3xQT1B8TUlOVHxFUFNJTE9OfEJST0FEV0FZfEpVTVB8SE9QfExFR0VORHxORVcgQUdFfExJTkV8QURWQU5DRXxGRUVMfEZPTExPV3xMSUtFfExJTkt8TElWRXxUSElOS3xGUkVFRE9NfENISUNBR098Q0xFVkVMQU5EfEJBTFRJTU9SRS1HSHxJT1dBfEJPU1RPTnxTRUFUVExFfFBIT0VOSVh8REFMTEFTfElOIDEwMXxNYXN0ZXJDaGVmKVxcYiIsTWVkaWFjb21UYWJsZXQ6Ik0tTVBJMTBDM0d8TS1TUDEwRUd8TS1TUDEwRUdQfE0tU1AxMEhYQUh8TS1TUDdIWEFIfE0tU1AxMEhYQkh8TS1TUDhIWEFIfE0tU1A4TVhBIixNaVRhYmxldDoiXFxiTUkgUEFEXFxifFxcYkhNIE5PVEUgMVdcXGIiLE5pYmlydVRhYmxldDoiTmliaXJ1IE0xfE5pYmlydSBKdXBpdGVyIE9uZSIsTmV4b1RhYmxldDoiTkVYTyBOT1ZBfE5FWE8gMTB8TkVYTyBBVklPfE5FWE8gRlJFRXxORVhPIEdPfE5FWE8gRVZPfE5FWE8gM0d8TkVYTyBTTUFSVHxORVhPIEtJRERPfE5FWE8gTU9CSSIsTGVhZGVyVGFibGV0OiJUQkxUMTBRfFRCTFQxMEl8VEJMLTEwV0RLQnxUQkwtMTBXREtCTzIwMTN8VEJMLVcyMzBWMnxUQkwtVzQ1MHxUQkwtVzUwMHxTVjU3MnxUQkxUN0l8VEJBLUFDNy04R3xUQkxUNzl8VEJMLThXMTZ8VEJMLTEwVzMyfFRCTC0xMFdLQnxUQkwtVzEwMCIsVWJpc2xhdGVUYWJsZXQ6IlViaVNsYXRlW1xcc10/N0MiLFBvY2tldEJvb2tUYWJsZXQ6IlBvY2tldGJvb2siLEtvY2Fzb1RhYmxldDoiXFxiKFRCLTEyMDcpXFxiIixIaXNlbnNlVGFibGV0OiJcXGIoRjUyODF8RTIzNzEpXFxiIixIdWRsOiJIdWRsIEhUN1MzfEh1ZGwgMiIsVGVsc3RyYVRhYmxldDoiVC1IdWIyIixHZW5lcmljVGFibGV0OiJBbmRyb2lkLipcXGI5N0RcXGJ8VGFibGV0KD8hLipQQyl8Qk5UVjI1MEF8TUlELVdDRE1BfExvZ2ljUEQgWm9vbTJ8XFxiQTdFQlxcYnxDYXROb3ZhOHxBMV8wN3xDVDcwNHxDVDEwMDJ8XFxiTTcyMVxcYnxyazMwc2RrfFxcYkVWT1RBQlxcYnxNNzU4QXxFVDkwNHxBTFVNSVVNMTB8U21hcnRmcmVuIFRhYnxFbmRlYXZvdXIgMTAxMHxUYWJsZXQtUEMtNHxUYWdpIFRhYnxcXGJNNnByb1xcYnxDVDEwMjBXfGFyYyAxMEhEfFxcYlRQNzUwXFxifFxcYlFUQVFaM1xcYnxXVlQxMDF8VE0xMDg4fEtUMTA3In0sb3NzOntBbmRyb2lkT1M6IkFuZHJvaWQiLEJsYWNrQmVycnlPUzoiYmxhY2tiZXJyeXxcXGJCQjEwXFxifHJpbSB0YWJsZXQgb3MiLFBhbG1PUzoiUGFsbU9TfGF2YW50Z298YmxhemVyfGVsYWluZXxoaXB0b3B8cGFsbXxwbHVja2VyfHhpaW5vIixTeW1iaWFuT1M6IlN5bWJpYW58U3ltYk9TfFNlcmllczYwfFNlcmllczQwfFNZQi1bMC05XSt8XFxiUzYwXFxiIixXaW5kb3dzTW9iaWxlT1M6IldpbmRvd3MgQ0UuKihQUEN8U21hcnRwaG9uZXxNb2JpbGV8WzAtOV17M314WzAtOV17M30pfFdpbmRvd3MgTW9iaWxlfFdpbmRvd3MgUGhvbmUgWzAtOS5dK3xXQ0U7IixXaW5kb3dzUGhvbmVPUzoiV2luZG93cyBQaG9uZSAxMC4wfFdpbmRvd3MgUGhvbmUgOC4xfFdpbmRvd3MgUGhvbmUgOC4wfFdpbmRvd3MgUGhvbmUgT1N8WEJMV1A3fFp1bmVXUDd8V2luZG93cyBOVCA2LlsyM107IEFSTTsiLGlPUzoiXFxiaVBob25lLipNb2JpbGV8XFxiaVBvZHxcXGJpUGFkfEFwcGxlQ29yZU1lZGlhIixpUGFkT1M6IkNQVSBPUyAxMyIsU2FpbGZpc2hPUzoiU2FpbGZpc2giLE1lZUdvT1M6Ik1lZUdvIixNYWVtb09TOiJNYWVtbyIsSmF2YU9TOiJKMk1FL3xcXGJNSURQXFxifFxcYkNMRENcXGIiLHdlYk9TOiJ3ZWJPU3xocHdPUyIsYmFkYU9TOiJcXGJCYWRhXFxiIixCUkVXT1M6IkJSRVcifSx1YXM6e0Nocm9tZToiXFxiQ3JNb1xcYnxDcmlPU3xBbmRyb2lkLipDaHJvbWUvWy4wLTldKiAoTW9iaWxlKT8iLERvbGZpbjoiXFxiRG9sZmluXFxiIixPcGVyYToiT3BlcmEuKk1pbml8T3BlcmEuKk1vYml8QW5kcm9pZC4qT3BlcmF8TW9iaWxlLipPUFIvWzAtOS5dKyR8Q29hc3QvWzAtOS5dKyIsU2t5ZmlyZToiU2t5ZmlyZSIsRWRnZToiXFxiRWRnaU9TXFxifE1vYmlsZSBTYWZhcmkvWy4wLTldKiBFZGdlIixJRToiSUVNb2JpbGV8TVNJRU1vYmlsZSIsRmlyZWZveDoiZmVubmVjfGZpcmVmb3guKm1hZW1vfChNb2JpbGV8VGFibGV0KS4qRmlyZWZveHxGaXJlZm94LipNb2JpbGV8RnhpT1MiLEJvbHQ6ImJvbHQiLFRlYVNoYXJrOiJ0ZWFzaGFyayIsQmxhemVyOiJCbGF6ZXIiLFNhZmFyaToiVmVyc2lvbigoPyFcXGJFZGdpT1NcXGIpLikqTW9iaWxlLipTYWZhcml8U2FmYXJpLipNb2JpbGV8TW9iaWxlU2FmYXJpIixXZUNoYXQ6IlxcYk1pY3JvTWVzc2VuZ2VyXFxiIixVQ0Jyb3dzZXI6IlVDLipCcm93c2VyfFVDV0VCIixiYWlkdWJveGFwcDoiYmFpZHVib3hhcHAiLGJhaWR1YnJvd3NlcjoiYmFpZHVicm93c2VyIixEaWlnb0Jyb3dzZXI6IkRpaWdvQnJvd3NlciIsTWVyY3VyeToiXFxiTWVyY3VyeVxcYiIsT2JpZ29Ccm93c2VyOiJPYmlnbyIsTmV0RnJvbnQ6Ik5GLUJyb3dzZXIiLEdlbmVyaWNCcm93c2VyOiJOb2tpYUJyb3dzZXJ8T3ZpQnJvd3NlcnxPbmVCcm93c2VyfFR3b25reUJlYW1Ccm93c2VyfFNFTUMuKkJyb3dzZXJ8Rmx5Rmxvd3xNaW5pbW98TmV0RnJvbnR8Tm92YXJyYS1WaXNpb258TVFRQnJvd3NlcnxNaWNyb01lc3NlbmdlciIsUGFsZU1vb246IkFuZHJvaWQuKlBhbGVNb29ufE1vYmlsZS4qUGFsZU1vb24ifSxwcm9wczp7TW9iaWxlOiJNb2JpbGUvW1ZFUl0iLEJ1aWxkOiJCdWlsZC9bVkVSXSIsVmVyc2lvbjoiVmVyc2lvbi9bVkVSXSIsVmVuZG9ySUQ6IlZlbmRvcklEL1tWRVJdIixpUGFkOiJpUGFkLipDUFVbYS16IF0rW1ZFUl0iLGlQaG9uZToiaVBob25lLipDUFVbYS16IF0rW1ZFUl0iLGlQb2Q6ImlQb2QuKkNQVVthLXogXStbVkVSXSIsS2luZGxlOiJLaW5kbGUvW1ZFUl0iLENocm9tZTpbIkNocm9tZS9bVkVSXSIsIkNyaU9TL1tWRVJdIiwiQ3JNby9bVkVSXSJdLENvYXN0OlsiQ29hc3QvW1ZFUl0iXSxEb2xmaW46IkRvbGZpbi9bVkVSXSIsRmlyZWZveDpbIkZpcmVmb3gvW1ZFUl0iLCJGeGlPUy9bVkVSXSJdLEZlbm5lYzoiRmVubmVjL1tWRVJdIixFZGdlOiJFZGdlL1tWRVJdIixJRTpbIklFTW9iaWxlL1tWRVJdOyIsIklFTW9iaWxlIFtWRVJdIiwiTVNJRSBbVkVSXTsiLCJUcmlkZW50L1swLTkuXSs7LipydjpbVkVSXSJdLE5ldEZyb250OiJOZXRGcm9udC9bVkVSXSIsTm9raWFCcm93c2VyOiJOb2tpYUJyb3dzZXIvW1ZFUl0iLE9wZXJhOlsiIE9QUi9bVkVSXSIsIk9wZXJhIE1pbmkvW1ZFUl0iLCJWZXJzaW9uL1tWRVJdIl0sIk9wZXJhIE1pbmkiOiJPcGVyYSBNaW5pL1tWRVJdIiwiT3BlcmEgTW9iaSI6IlZlcnNpb24vW1ZFUl0iLFVDQnJvd3NlcjpbIlVDV0VCW1ZFUl0iLCJVQy4qQnJvd3Nlci9bVkVSXSJdLE1RUUJyb3dzZXI6Ik1RUUJyb3dzZXIvW1ZFUl0iLE1pY3JvTWVzc2VuZ2VyOiJNaWNyb01lc3Nlbmdlci9bVkVSXSIsYmFpZHVib3hhcHA6ImJhaWR1Ym94YXBwL1tWRVJdIixiYWlkdWJyb3dzZXI6ImJhaWR1YnJvd3Nlci9bVkVSXSIsU2Ftc3VuZ0Jyb3dzZXI6IlNhbXN1bmdCcm93c2VyL1tWRVJdIixJcm9uOiJJcm9uL1tWRVJdIixTYWZhcmk6WyJWZXJzaW9uL1tWRVJdIiwiU2FmYXJpL1tWRVJdIl0sU2t5ZmlyZToiU2t5ZmlyZS9bVkVSXSIsVGl6ZW46IlRpemVuL1tWRVJdIixXZWJraXQ6IndlYmtpdFsgL11bVkVSXSIsUGFsZU1vb246IlBhbGVNb29uL1tWRVJdIixTYWlsZmlzaEJyb3dzZXI6IlNhaWxmaXNoQnJvd3Nlci9bVkVSXSIsR2Vja286IkdlY2tvL1tWRVJdIixUcmlkZW50OiJUcmlkZW50L1tWRVJdIixQcmVzdG86IlByZXN0by9bVkVSXSIsR29hbm5hOiJHb2FubmEvW1ZFUl0iLGlPUzoiIFxcYmk/T1NcXGIgW1ZFUl1bIDtdezF9IixBbmRyb2lkOiJBbmRyb2lkIFtWRVJdIixTYWlsZmlzaDoiU2FpbGZpc2ggW1ZFUl0iLEJsYWNrQmVycnk6WyJCbGFja0JlcnJ5W1xcd10rL1tWRVJdIiwiQmxhY2tCZXJyeS4qVmVyc2lvbi9bVkVSXSIsIlZlcnNpb24vW1ZFUl0iXSxCUkVXOiJCUkVXIFtWRVJdIixKYXZhOiJKYXZhL1tWRVJdIiwiV2luZG93cyBQaG9uZSBPUyI6WyJXaW5kb3dzIFBob25lIE9TIFtWRVJdIiwiV2luZG93cyBQaG9uZSBbVkVSXSJdLCJXaW5kb3dzIFBob25lIjoiV2luZG93cyBQaG9uZSBbVkVSXSIsIldpbmRvd3MgQ0UiOiJXaW5kb3dzIENFL1tWRVJdIiwiV2luZG93cyBOVCI6IldpbmRvd3MgTlQgW1ZFUl0iLFN5bWJpYW46WyJTeW1iaWFuT1MvW1ZFUl0iLCJTeW1iaWFuL1tWRVJdIl0sd2ViT1M6WyJ3ZWJPUy9bVkVSXSIsImhwd09TL1tWRVJdOyJdfSx1dGlsczp7Qm90OiJHb29nbGVib3R8ZmFjZWJvb2tleHRlcm5hbGhpdHxHb29nbGUtQU1QSFRNTHxzfmFtcC12YWxpZGF0b3J8QWRzQm90LUdvb2dsZXxHb29nbGUgS2V5d29yZCBTdWdnZXN0aW9ufEZhY2Vib3R8WWFuZGV4Qm90fFlhbmRleE1vYmlsZUJvdHxiaW5nYm90fGlhX2FyY2hpdmVyfEFocmVmc0JvdHxFem9vbXN8R1NMRmJvdHxXQlNlYXJjaEJvdHxUd2l0dGVyYm90fFR3ZWV0bWVtZUJvdHxUd2lrbGV8UGFwZXJMaUJvdHxXb3Rib3h8VW53aW5kRmV0Y2hvcnxFeGFib3R8TUoxMmJvdHxZYW5kZXhJbWFnZXN8VHVybml0aW5Cb3R8UGluZ2RvbXxjb250ZW50a2luZ2FwcHxBc3BpZWdlbEJvdCIsTW9iaWxlQm90OiJHb29nbGVib3QtTW9iaWxlfEFkc0JvdC1Hb29nbGUtTW9iaWxlfFlhaG9vU2Vla2VyL00xQTEtUjJEMiIsRGVza3RvcE1vZGU6IldQRGVza3RvcCIsVFY6IlNvbnlEVFZ8SGJiVFYiLFdlYktpdDoiKHdlYmtpdClbIC9dKFtcXHcuXSspIixDb25zb2xlOiJcXGIoTmludGVuZG98TmludGVuZG8gV2lpVXxOaW50ZW5kbyAzRFN8TmludGVuZG8gU3dpdGNofFBMQVlTVEFUSU9OfFhib3gpXFxiIixXYXRjaDoiU00tVjcwMCJ9fSxnLmRldGVjdE1vYmlsZUJyb3dzZXJzPXtmdWxsUGF0dGVybjovKGFuZHJvaWR8YmJcZCt8bWVlZ28pLittb2JpbGV8YXZhbnRnb3xiYWRhXC98YmxhY2tiZXJyeXxibGF6ZXJ8Y29tcGFsfGVsYWluZXxmZW5uZWN8aGlwdG9wfGllbW9iaWxlfGlwKGhvbmV8b2QpfGlyaXN8a2luZGxlfGxnZSB8bWFlbW98bWlkcHxtbXB8bW9iaWxlLitmaXJlZm94fG5ldGZyb250fG9wZXJhIG0ob2J8aW4paXxwYWxtKCBvcyk/fHBob25lfHAoaXhpfHJlKVwvfHBsdWNrZXJ8cG9ja2V0fHBzcHxzZXJpZXMoNHw2KTB8c3ltYmlhbnx0cmVvfHVwXC4oYnJvd3NlcnxsaW5rKXx2b2RhZm9uZXx3YXB8d2luZG93cyBjZXx4ZGF8eGlpbm8vaSwNCnNob3J0UGF0dGVybjovMTIwN3w2MzEwfDY1OTB8M2dzb3w0dGhwfDUwWzEtNl1pfDc3MHN8ODAyc3xhIHdhfGFiYWN8YWMoZXJ8b298c1wtKXxhaShrb3xybil8YWwoYXZ8Y2F8Y28pfGFtb2l8YW4oZXh8bnl8eXcpfGFwdHV8YXIoY2h8Z28pfGFzKHRlfHVzKXxhdHR3fGF1KGRpfFwtbXxyIHxzICl8YXZhbnxiZShja3xsbHxucSl8YmkobGJ8cmQpfGJsKGFjfGF6KXxicihlfHYpd3xidW1ifGJ3XC0obnx1KXxjNTVcL3xjYXBpfGNjd2F8Y2RtXC18Y2VsbHxjaHRtfGNsZGN8Y21kXC18Y28obXB8bmQpfGNyYXd8ZGEoaXR8bGx8bmcpfGRidGV8ZGNcLXN8ZGV2aXxkaWNhfGRtb2J8ZG8oY3xwKW98ZHMoMTJ8XC1kKXxlbCg0OXxhaSl8ZW0obDJ8dWwpfGVyKGljfGswKXxlc2w4fGV6KFs0LTddMHxvc3x3YXx6ZSl8ZmV0Y3xmbHkoXC18Xyl8ZzEgdXxnNTYwfGdlbmV8Z2ZcLTV8Z1wtbW98Z28oXC53fG9kKXxncihhZHx1bil8aGFpZXxoY2l0fGhkXC0obXxwfHQpfGhlaVwtfGhpKHB0fHRhKXxocCggaXxpcCl8aHNcLWN8aHQoYyhcLXwgfF98YXxnfHB8c3x0KXx0cCl8aHUoYXd8dGMpfGlcLSgyMHxnb3xtYSl8aTIzMHxpYWMoIHxcLXxcLyl8aWJyb3xpZGVhfGlnMDF8aWtvbXxpbTFrfGlubm98aXBhcXxpcmlzfGphKHR8dilhfGpicm98amVtdXxqaWdzfGtkZGl8a2VqaXxrZ3QoIHxcLyl8a2xvbnxrcHQgfGt3Y1wtfGt5byhjfGspfGxlKG5vfHhpKXxsZyggZ3xcLyhrfGx8dSl8NTB8NTR8XC1bYS13XSl8bGlid3xseW54fG0xXC13fG0zZ2F8bTUwXC98bWEodGV8dWl8eG8pfG1jKDAxfDIxfGNhKXxtXC1jcnxtZShyY3xyaSl8bWkobzh8b2F8dHMpfG1tZWZ8bW8oMDF8MDJ8Yml8ZGV8ZG98dChcLXwgfG98dil8enopfG10KDUwfHAxfHYgKXxtd2JwfG15d2F8bjEwWzAtMl18bjIwWzItM118bjMwKDB8Mil8bjUwKDB8Mnw1KXxuNygwKDB8MSl8MTApfG5lKChjfG0pXC18b258dGZ8d2Z8d2d8d3QpfG5vayg2fGkpfG56cGh8bzJpbXxvcCh0aXx3dil8b3Jhbnxvd2cxfHA4MDB8cGFuKGF8ZHx0KXxwZHhnfHBnKDEzfFwtKFsxLThdfGMpKXxwaGlsfHBpcmV8cGwoYXl8dWMpfHBuXC0yfHBvKGNrfHJ0fHNlKXxwcm94fHBzaW98cHRcLWd8cWFcLWF8cWMoMDd8MTJ8MjF8MzJ8NjB8XC1bMi03XXxpXC0pfHF0ZWt8cjM4MHxyNjAwfHJha3N8cmltOXxybyh2ZXx6byl8czU1XC98c2EoZ2V8bWF8bW18bXN8bnl8dmEpfHNjKDAxfGhcLXxvb3xwXC0pfHNka1wvfHNlKGMoXC18MHwxKXw0N3xtY3xuZHxyaSl8c2doXC18c2hhcnxzaWUoXC18bSl8c2tcLTB8c2woNDV8aWQpfHNtKGFsfGFyfGIzfGl0fHQ1KXxzbyhmdHxueSl8c3AoMDF8aFwtfHZcLXx2ICl8c3koMDF8bWIpfHQyKDE4fDUwKXx0NigwMHwxMHwxOCl8dGEoZ3R8bGspfHRjbFwtfHRkZ1wtfHRlbChpfG0pfHRpbVwtfHRcLW1vfHRvKHBsfHNoKXx0cyg3MHxtXC18bTN8bTUpfHR4XC05fHVwKFwuYnxnMXxzaSl8dXRzdHx2NDAwfHY3NTB8dmVyaXx2aShyZ3x0ZSl8dmsoNDB8NVswLTNdfFwtdil8dm00MHx2b2RhfHZ1bGN8dngoNTJ8NTN8NjB8NjF8NzB8ODB8ODF8ODN8ODV8OTgpfHczYyhcLXwgKXx3ZWJjfHdoaXR8d2koZyB8bmN8bncpfHdtbGJ8d29udXx4NzAwfHlhc1wtfHlvdXJ8emV0b3x6dGVcLS9pLHRhYmxldFBhdHRlcm46L2FuZHJvaWR8aXBhZHxwbGF5Ym9va3xzaWxrL2l9O3ZhciBoLGk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtyZXR1cm4gZy5GQUxMQkFDS19QSE9ORT0iVW5rbm93blBob25lIixnLkZBTExCQUNLX1RBQkxFVD0iVW5rbm93blRhYmxldCIsZy5GQUxMQkFDS19NT0JJTEU9IlVua25vd25Nb2JpbGUiLGg9ImlzQXJyYXkiaW4gQXJyYXk/QXJyYXkuaXNBcnJheTpmdW5jdGlvbihhKXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGEpfSxmdW5jdGlvbigpe3ZhciBhLGIsYyxlLGYsaixrPWcubW9iaWxlRGV0ZWN0UnVsZXM7Zm9yKGEgaW4gay5wcm9wcylpZihpLmNhbGwoay5wcm9wcyxhKSl7Zm9yKGI9ay5wcm9wc1thXSxoKGIpfHwoYj1bYl0pLGY9Yi5sZW5ndGgsZT0wO2U8ZjsrK2UpYz1iW2VdLGo9Yy5pbmRleE9mKCJbVkVSXSIpLGo+PTAmJihjPWMuc3Vic3RyaW5nKDAsaikrIihbXFx3Ll9cXCtdKykiK2Muc3Vic3RyaW5nKGorNSkpLGJbZV09bmV3IFJlZ0V4cChjLCJpIik7ay5wcm9wc1thXT1ifWQoay5vc3MpLGQoay5waG9uZXMpLGQoay50YWJsZXRzKSxkKGsudWFzKSxkKGsudXRpbHMpLGsub3NzMD17V2luZG93c1Bob25lT1M6ay5vc3MuV2luZG93c1Bob25lT1MsV2luZG93c01vYmlsZU9TOmsub3NzLldpbmRvd3NNb2JpbGVPU319KCksZy5maW5kTWF0Y2g9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGMgaW4gYSlpZihpLmNhbGwoYSxjKSYmYVtjXS50ZXN0KGIpKXJldHVybiBjO3JldHVybiBudWxsfSxnLmZpbmRNYXRjaGVzPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107Zm9yKHZhciBkIGluIGEpaS5jYWxsKGEsZCkmJmFbZF0udGVzdChiKSYmYy5wdXNoKGQpO3JldHVybiBjfSxnLmdldFZlcnNpb25TdHI9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZixoPWcubW9iaWxlRGV0ZWN0UnVsZXMucHJvcHM7aWYoaS5jYWxsKGgsYSkpZm9yKGM9aFthXSxlPWMubGVuZ3RoLGQ9MDtkPGU7KytkKWlmKGY9Y1tkXS5leGVjKGIpLG51bGwhPT1mKXJldHVybiBmWzFdO3JldHVybiBudWxsfSxnLmdldFZlcnNpb249ZnVuY3Rpb24oYSxiKXt2YXIgYz1nLmdldFZlcnNpb25TdHIoYSxiKTtyZXR1cm4gYz9nLnByZXBhcmVWZXJzaW9uTm8oYyk6TmFOfSxnLnByZXBhcmVWZXJzaW9uTm89ZnVuY3Rpb24oYSl7dmFyIGI7cmV0dXJuIGI9YS5zcGxpdCgvW2Etei5fIFwvXC1dL2kpLDE9PT1iLmxlbmd0aCYmKGE9YlswXSksYi5sZW5ndGg+MSYmKGE9YlswXSsiLiIsYi5zaGlmdCgpLGErPWIuam9pbigiIikpLE51bWJlcihhKX0sZy5pc01vYmlsZUZhbGxiYWNrPWZ1bmN0aW9uKGEpe3JldHVybiBnLmRldGVjdE1vYmlsZUJyb3dzZXJzLmZ1bGxQYXR0ZXJuLnRlc3QoYSl8fGcuZGV0ZWN0TW9iaWxlQnJvd3NlcnMuc2hvcnRQYXR0ZXJuLnRlc3QoYS5zdWJzdHIoMCw0KSl9LGcuaXNUYWJsZXRGYWxsYmFjaz1mdW5jdGlvbihhKXtyZXR1cm4gZy5kZXRlY3RNb2JpbGVCcm93c2Vycy50YWJsZXRQYXR0ZXJuLnRlc3QoYSl9LGcucHJlcGFyZURldGVjdGlvbkNhY2hlPWZ1bmN0aW9uKGEsYyxkKXtpZihhLm1vYmlsZT09PWIpe3ZhciBlLGgsaTtyZXR1cm4oaD1nLmZpbmRNYXRjaChnLm1vYmlsZURldGVjdFJ1bGVzLnRhYmxldHMsYykpPyhhLm1vYmlsZT1hLnRhYmxldD1oLHZvaWQoYS5waG9uZT1udWxsKSk6KGU9Zy5maW5kTWF0Y2goZy5tb2JpbGVEZXRlY3RSdWxlcy5waG9uZXMsYykpPyhhLm1vYmlsZT1hLnBob25lPWUsdm9pZChhLnRhYmxldD1udWxsKSk6dm9pZChnLmlzTW9iaWxlRmFsbGJhY2soYyk/KGk9Zi5pc1Bob25lU2l6ZWQoZCksaT09PWI/KGEubW9iaWxlPWcuRkFMTEJBQ0tfTU9CSUxFLGEudGFibGV0PWEucGhvbmU9bnVsbCk6aT8oYS5tb2JpbGU9YS5waG9uZT1nLkZBTExCQUNLX1BIT05FLGEudGFibGV0PW51bGwpOihhLm1vYmlsZT1hLnRhYmxldD1nLkZBTExCQUNLX1RBQkxFVCxhLnBob25lPW51bGwpKTpnLmlzVGFibGV0RmFsbGJhY2soYyk/KGEubW9iaWxlPWEudGFibGV0PWcuRkFMTEJBQ0tfVEFCTEVULGEucGhvbmU9bnVsbCk6YS5tb2JpbGU9YS50YWJsZXQ9YS5waG9uZT1udWxsKX19LGcubW9iaWxlR3JhZGU9ZnVuY3Rpb24oYSl7dmFyIGI9bnVsbCE9PWEubW9iaWxlKCk7cmV0dXJuIGEub3MoImlPUyIpJiZhLnZlcnNpb24oImlQYWQiKT49NC4zfHxhLm9zKCJpT1MiKSYmYS52ZXJzaW9uKCJpUGhvbmUiKT49My4xfHxhLm9zKCJpT1MiKSYmYS52ZXJzaW9uKCJpUG9kIik+PTMuMXx8YS52ZXJzaW9uKCJBbmRyb2lkIik+Mi4xJiZhLmlzKCJXZWJraXQiKXx8YS52ZXJzaW9uKCJXaW5kb3dzIFBob25lIE9TIik+PTd8fGEuaXMoIkJsYWNrQmVycnkiKSYmYS52ZXJzaW9uKCJCbGFja0JlcnJ5Iik+PTZ8fGEubWF0Y2goIlBsYXlib29rLipUYWJsZXQiKXx8YS52ZXJzaW9uKCJ3ZWJPUyIpPj0xLjQmJmEubWF0Y2goIlBhbG18UHJlfFBpeGkiKXx8YS5tYXRjaCgiaHAuKlRvdWNoUGFkIil8fGEuaXMoIkZpcmVmb3giKSYmYS52ZXJzaW9uKCJGaXJlZm94Iik+PTEyfHxhLmlzKCJDaHJvbWUiKSYmYS5pcygiQW5kcm9pZE9TIikmJmEudmVyc2lvbigiQW5kcm9pZCIpPj00fHxhLmlzKCJTa3lmaXJlIikmJmEudmVyc2lvbigiU2t5ZmlyZSIpPj00LjEmJmEuaXMoIkFuZHJvaWRPUyIpJiZhLnZlcnNpb24oIkFuZHJvaWQiKT49Mi4zfHxhLmlzKCJPcGVyYSIpJiZhLnZlcnNpb24oIk9wZXJhIE1vYmkiKT4xMSYmYS5pcygiQW5kcm9pZE9TIil8fGEuaXMoIk1lZUdvT1MiKXx8YS5pcygiVGl6ZW4iKXx8YS5pcygiRG9sZmluIikmJmEudmVyc2lvbigiQmFkYSIpPj0yfHwoYS5pcygiVUMgQnJvd3NlciIpfHxhLmlzKCJEb2xmaW4iKSkmJmEudmVyc2lvbigiQW5kcm9pZCIpPj0yLjN8fGEubWF0Y2goIktpbmRsZSBGaXJlIil8fGEuaXMoIktpbmRsZSIpJiZhLnZlcnNpb24oIktpbmRsZSIpPj0zfHxhLmlzKCJBbmRyb2lkT1MiKSYmYS5pcygiTm9va1RhYmxldCIpfHxhLnZlcnNpb24oIkNocm9tZSIpPj0xMSYmIWJ8fGEudmVyc2lvbigiU2FmYXJpIik+PTUmJiFifHxhLnZlcnNpb24oIkZpcmVmb3giKT49NCYmIWJ8fGEudmVyc2lvbigiTVNJRSIpPj03JiYhYnx8YS52ZXJzaW9uKCJPcGVyYSIpPj0xMCYmIWI/IkEiOmEub3MoImlPUyIpJiZhLnZlcnNpb24oImlQYWQiKTw0LjN8fGEub3MoImlPUyIpJiZhLnZlcnNpb24oImlQaG9uZSIpPDMuMXx8YS5vcygiaU9TIikmJmEudmVyc2lvbigiaVBvZCIpPDMuMXx8YS5pcygiQmxhY2tiZXJyeSIpJiZhLnZlcnNpb24oIkJsYWNrQmVycnkiKT49NSYmYS52ZXJzaW9uKCJCbGFja0JlcnJ5Iik8Nnx8YS52ZXJzaW9uKCJPcGVyYSBNaW5pIik+PTUmJmEudmVyc2lvbigiT3BlcmEgTWluaSIpPD02LjUmJihhLnZlcnNpb24oIkFuZHJvaWQiKT49Mi4zfHxhLmlzKCJpT1MiKSl8fGEubWF0Y2goIk5va2lhTjh8Tm9raWFDN3xOOTcuKlNlcmllczYwfFN5bWJpYW4vMyIpfHxhLnZlcnNpb24oIk9wZXJhIE1vYmkiKT49MTEmJmEuaXMoIlN5bWJpYW5PUyIpPyJCIjooYS52ZXJzaW9uKCJCbGFja0JlcnJ5Iik8NXx8YS5tYXRjaCgiTVNJRU1vYmlsZXxXaW5kb3dzIENFLipNb2JpbGUiKXx8YS52ZXJzaW9uKCJXaW5kb3dzIE1vYmlsZSIpPD01LjIsIkMiKX0sZy5kZXRlY3RPUz1mdW5jdGlvbihhKXtyZXR1cm4gZy5maW5kTWF0Y2goZy5tb2JpbGVEZXRlY3RSdWxlcy5vc3MwLGEpfHxnLmZpbmRNYXRjaChnLm1vYmlsZURldGVjdFJ1bGVzLm9zcyxhKX0sZy5nZXREZXZpY2VTbWFsbGVyU2lkZT1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cuc2NyZWVuLndpZHRoPHdpbmRvdy5zY3JlZW4uaGVpZ2h0P3dpbmRvdy5zY3JlZW4ud2lkdGg6d2luZG93LnNjcmVlbi5oZWlnaHR9LGYucHJvdG90eXBlPXtjb25zdHJ1Y3RvcjpmLG1vYmlsZTpmdW5jdGlvbigpe3JldHVybiBnLnByZXBhcmVEZXRlY3Rpb25DYWNoZSh0aGlzLl9jYWNoZSx0aGlzLnVhLHRoaXMubWF4UGhvbmVXaWR0aCksdGhpcy5fY2FjaGUubW9iaWxlfSxwaG9uZTpmdW5jdGlvbigpe3JldHVybiBnLnByZXBhcmVEZXRlY3Rpb25DYWNoZSh0aGlzLl9jYWNoZSx0aGlzLnVhLHRoaXMubWF4UGhvbmVXaWR0aCksdGhpcy5fY2FjaGUucGhvbmV9LHRhYmxldDpmdW5jdGlvbigpe3JldHVybiBnLnByZXBhcmVEZXRlY3Rpb25DYWNoZSh0aGlzLl9jYWNoZSx0aGlzLnVhLHRoaXMubWF4UGhvbmVXaWR0aCksdGhpcy5fY2FjaGUudGFibGV0fSx1c2VyQWdlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fY2FjaGUudXNlckFnZW50PT09YiYmKHRoaXMuX2NhY2hlLnVzZXJBZ2VudD1nLmZpbmRNYXRjaChnLm1vYmlsZURldGVjdFJ1bGVzLnVhcyx0aGlzLnVhKSksdGhpcy5fY2FjaGUudXNlckFnZW50fSx1c2VyQWdlbnRzOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2NhY2hlLnVzZXJBZ2VudHM9PT1iJiYodGhpcy5fY2FjaGUudXNlckFnZW50cz1nLmZpbmRNYXRjaGVzKGcubW9iaWxlRGV0ZWN0UnVsZXMudWFzLHRoaXMudWEpKSx0aGlzLl9jYWNoZS51c2VyQWdlbnRzfSxvczpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9jYWNoZS5vcz09PWImJih0aGlzLl9jYWNoZS5vcz1nLmRldGVjdE9TKHRoaXMudWEpKSx0aGlzLl9jYWNoZS5vc30sdmVyc2lvbjpmdW5jdGlvbihhKXtyZXR1cm4gZy5nZXRWZXJzaW9uKGEsdGhpcy51YSl9LHZlcnNpb25TdHI6ZnVuY3Rpb24oYSl7cmV0dXJuIGcuZ2V0VmVyc2lvblN0cihhLHRoaXMudWEpfSxpczpmdW5jdGlvbihiKXtyZXR1cm4gYyh0aGlzLnVzZXJBZ2VudHMoKSxiKXx8YShiLHRoaXMub3MoKSl8fGEoYix0aGlzLnBob25lKCkpfHxhKGIsdGhpcy50YWJsZXQoKSl8fGMoZy5maW5kTWF0Y2hlcyhnLm1vYmlsZURldGVjdFJ1bGVzLnV0aWxzLHRoaXMudWEpLGIpfSxtYXRjaDpmdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIFJlZ0V4cHx8KGE9bmV3IFJlZ0V4cChhLCJpIikpLGEudGVzdCh0aGlzLnVhKX0saXNQaG9uZVNpemVkOmZ1bmN0aW9uKGEpe3JldHVybiBmLmlzUGhvbmVTaXplZChhfHx0aGlzLm1heFBob25lV2lkdGgpfSxtb2JpbGVHcmFkZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9jYWNoZS5ncmFkZT09PWImJih0aGlzLl9jYWNoZS5ncmFkZT1nLm1vYmlsZUdyYWRlKHRoaXMpKSx0aGlzLl9jYWNoZS5ncmFkZX19LCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cuc2NyZWVuP2YuaXNQaG9uZVNpemVkPWZ1bmN0aW9uKGEpe3JldHVybiBhPDA/YjpnLmdldERldmljZVNtYWxsZXJTaWRlKCk8PWF9OmYuaXNQaG9uZVNpemVkPWZ1bmN0aW9uKCl7fSxmLl9pbXBsPWcsZi52ZXJzaW9uPSIxLjQuNSAyMDIxLTAzLTEzIixmfSl9KGZ1bmN0aW9uKGEpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgbW9kdWxlJiZtb2R1bGUuZXhwb3J0cylyZXR1cm4gZnVuY3Rpb24oYSl7bW9kdWxlLmV4cG9ydHM9YSgpfTtpZigiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1kKXJldHVybiBkZWZpbmU7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cpcmV0dXJuIGZ1bmN0aW9uKGEpe3dpbmRvdy5Nb2JpbGVEZXRlY3Q9YSgpfTt0aHJvdyBuZXcgRXJyb3IoInVua25vd24gZW52aXJvbm1lbnQiKX0oKSk7dmFyIGFpX2xpc3RzPSEwLGFpX2Jsb2NrX2NsYXNzX2RlZj0iY29kZS1ibG9jayI7CmlmKCJ1bmRlZmluZWQiIT10eXBlb2YgYWlfbGlzdHMpe2Z1bmN0aW9uIFgoYixlKXtmb3IodmFyIG49W107Yj1iLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7KSgidW5kZWZpbmVkIj09dHlwZW9mIGV8fGIubWF0Y2hlcyhlKSkmJm4ucHVzaChiKTtyZXR1cm4gbn1mdW5jdGlvbiBmYShiLGUpe2Zvcih2YXIgbj1bXTtiPWIubmV4dEVsZW1lbnRTaWJsaW5nOykoInVuZGVmaW5lZCI9PXR5cGVvZiBlfHxiLm1hdGNoZXMoZSkpJiZuLnB1c2goYik7cmV0dXJuIG59dmFyIGhvc3RfcmVnZXhwPVJlZ0V4cCgiOlxcL1xcLyguW14vOl0rKSIsImkiKTtmdW5jdGlvbiBoYShiKXtiPWIubWF0Y2goaG9zdF9yZWdleHApO3JldHVybiBudWxsIT1iJiYxPGIubGVuZ3RoJiYic3RyaW5nIj09PXR5cGVvZiBiWzFdJiYwPGJbMV0ubGVuZ3RoP2JbMV0udG9Mb3dlckNhc2UoKTpudWxsfWZ1bmN0aW9uIFEoYil7cmV0dXJuIGIuaW5jbHVkZXMoIjoiKT8oYj1iLnNwbGl0KCI6IiksMUUzKigzNjAwKnBhcnNlSW50KGJbMF0pKwo2MCpwYXJzZUludChiWzFdKStwYXJzZUludChiWzJdKSkpOm51bGx9ZnVuY3Rpb24gWShiKXt0cnl7dmFyIGU9RGF0ZS5wYXJzZShiKTtpc05hTihlKSYmKGU9bnVsbCl9Y2F0Y2gobil7ZT1udWxsfWlmKG51bGw9PWUmJmIuaW5jbHVkZXMoIiAiKSl7Yj1iLnNwbGl0KCIgIik7dHJ5e2U9RGF0ZS5wYXJzZShiWzBdKSxlKz1RKGJbMV0pLGlzTmFOKGUpJiYoZT1udWxsKX1jYXRjaChuKXtlPW51bGx9fXJldHVybiBlfWZ1bmN0aW9uIFooKXtudWxsPT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjYWktaWFiLXRjZi1iYXIiKSYmbnVsbD09ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmFpLWxpc3QtbWFudWFsIil8fCJmdW5jdGlvbiIhPXR5cGVvZiBfX3RjZmFwaXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGFpX2xvYWRfYmxvY2tzfHwidW5kZWZpbmVkIiE9dHlwZW9mIGFpX2lhYl90Y2ZfY2FsbGJhY2tfaW5zdGFsbGVkfHwoX190Y2ZhcGkoImFkZEV2ZW50TGlzdGVuZXIiLDIsZnVuY3Rpb24oYiwKZSl7ZSYmInVzZXJhY3Rpb25jb21wbGV0ZSI9PT1iLmV2ZW50U3RhdHVzJiYoYWlfdGNEYXRhPWIsYWlfbG9hZF9ibG9ja3MoKSxiPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNhaS1pYWItdGNmLXN0YXR1cyIpLG51bGwhPWImJihiLnRleHRDb250ZW50PSJJQUIgVENGIDIuMCBEQVRBIExPQURFRCIpLGI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2FpLWlhYi10Y2YtYmFyIiksbnVsbCE9YiYmKGIuY2xhc3NMaXN0LnJlbW92ZSgic3RhdHVzLWVycm9yIiksYi5jbGFzc0xpc3QuYWRkKCJzdGF0dXMtb2siKSkpfSksYWlfaWFiX3RjZl9jYWxsYmFja19pbnN0YWxsZWQ9ITApfWFpX3Byb2Nlc3NfbGlzdHM9ZnVuY3Rpb24oYil7ZnVuY3Rpb24gZShhLGMsayl7aWYoMD09YS5sZW5ndGgpe2lmKCIhQCEiPT1rKXJldHVybiEwO2MhPWsmJigidHJ1ZSI9PWsudG9Mb3dlckNhc2UoKT9rPSEwOiJmYWxzZSI9PWsudG9Mb3dlckNhc2UoKSYmKGs9ITEpKTtyZXR1cm4gYz09a31pZigib2JqZWN0IiE9CnR5cGVvZiBjJiYiYXJyYXkiIT10eXBlb2YgYylyZXR1cm4hMTt2YXIgbD1hWzBdO2E9YS5zbGljZSgxKTtpZigiKiI9PWwpZm9yKGxldCBbLHBdb2YgT2JqZWN0LmVudHJpZXMoYykpe2lmKGUoYSxwLGspKXJldHVybiEwfWVsc2UgaWYobCBpbiBjKXJldHVybiBlKGEsY1tsXSxrKTtyZXR1cm4hMX1mdW5jdGlvbiBuKGEsYyxrKXtpZigib2JqZWN0IiE9dHlwZW9mIGF8fC0xPT1jLmluZGV4T2YoIlsiKSlyZXR1cm4hMTtjPWMucmVwbGFjZSgvXXwgL2dpLCIiKS5zcGxpdCgiWyIpO3JldHVybiBlKGMsYSxrKX1mdW5jdGlvbiB6KCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIF9fdGNmYXBpKXt2YXIgYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjYWktaWFiLXRjZi1zdGF0dXMiKSxjPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNhaS1pYWItdGNmLWJhciIpO251bGwhPWEmJihhLnRleHRDb250ZW50PSJJQUIgVENGIDIuMCBERVRFQ1RFRCIpO19fdGNmYXBpKCJnZXRUQ0RhdGEiLDIsZnVuY3Rpb24oaywKbCl7bD8obnVsbCE9YyYmKGMuY2xhc3NMaXN0LnJlbW92ZSgic3RhdHVzLWVycm9yIiksYy5jbGFzc0xpc3QuYWRkKCJzdGF0dXMtb2siKSksInRjbG9hZGVkIj09ay5ldmVudFN0YXR1c3x8InVzZXJhY3Rpb25jb21wbGV0ZSI9PWsuZXZlbnRTdGF0dXMpPyhhaV90Y0RhdGE9ayxrLmdkcHJBcHBsaWVzP251bGwhPWEmJihhLnRleHRDb250ZW50PSJJQUIgVENGIDIuMCBEQVRBIExPQURFRCIpOm51bGwhPWEmJihhLnRleHRDb250ZW50PSJJQUIgVENGIDIuMCBHRFBSIERPRVMgTk9UIEFQUExZIiksbnVsbCE9YyYmKGMuY2xhc3NMaXN0LnJlbW92ZSgic3RhdHVzLWVycm9yIiksYy5jbGFzc0xpc3QuYWRkKCJzdGF0dXMtb2siKSksc2V0VGltZW91dChmdW5jdGlvbigpe2FpX3Byb2Nlc3NfbGlzdHMoKX0sMTApKToiY21wdWlzaG93biI9PWsuZXZlbnRTdGF0dXMmJihhaV9jbXB1aXNob3duPSEwLG51bGwhPWEmJihhLnRleHRDb250ZW50PSJJQUIgVENGIDIuMCBDTVAgVUkgU0hPV04iKSwKbnVsbCE9YyYmKGMuY2xhc3NMaXN0LnJlbW92ZSgic3RhdHVzLWVycm9yIiksYy5jbGFzc0xpc3QuYWRkKCJzdGF0dXMtb2siKSkpOihudWxsIT1hJiYoYS50ZXh0Q29udGVudD0iSUFCIFRDRiAyLjAgX190Y2ZhcGkgZ2V0VENEYXRhIGZhaWxlZCIpLG51bGwhPWMmJihjLmNsYXNzTGlzdC5yZW1vdmUoInN0YXR1cy1vayIpLGMuY2xhc3NMaXN0LmFkZCgic3RhdHVzLWVycm9yIikpKX0pfX1mdW5jdGlvbiBDKGEpeyJmdW5jdGlvbiI9PXR5cGVvZiBfX3RjZmFwaT8oYWlfdGNmYXBpX2ZvdW5kPSEwLCJ1bmRlZmluZWQiPT10eXBlb2YgYWlfaWFiX3RjZl9jYWxsYmFja19pbnN0YWxsZWQmJlooKSwidW5kZWZpbmVkIj09dHlwZW9mIGFpX3RjRGF0YV9yZXF1ZXN0ZWQmJihhaV90Y0RhdGFfcmVxdWVzdGVkPSEwLHooKSxjb29raWVzX25lZWRfdGNEYXRhPSEwKSk6YSYmKCJ1bmRlZmluZWQiPT10eXBlb2YgYWlfdGNmYXBpX2ZvdW5kJiYoYWlfdGNmYXBpX2ZvdW5kPSExLHNldFRpbWVvdXQoZnVuY3Rpb24oKXthaV9wcm9jZXNzX2xpc3RzKCl9LAoxMCkpLGE9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2FpLWlhYi10Y2Ytc3RhdHVzIiksbnVsbCE9YSYmKGEudGV4dENvbnRlbnQ9IklBQiBUQ0YgMi4wIE1JU1NJTkc6IF9fdGNmYXBpIGZ1bmN0aW9uIG5vdCBmb3VuZCIpLGE9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2FpLWlhYi10Y2YtYmFyIiksbnVsbCE9YSYmKGEuY2xhc3NMaXN0LnJlbW92ZSgic3RhdHVzLW9rIiksYS5jbGFzc0xpc3QuYWRkKCJzdGF0dXMtZXJyb3IiKSkpfWlmKG51bGw9PWIpYj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJkaXYuYWktbGlzdC1kYXRhLCBtZXRhLmFpLWxpc3QtZGF0YSIpO2Vsc2V7d2luZG93LmpRdWVyeSYmd2luZG93LmpRdWVyeS5mbiYmYiBpbnN0YW5jZW9mIGpRdWVyeSYmKGI9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYikpO3ZhciB4PVtdO2IuZm9yRWFjaCgoYSxjKT0+e2EubWF0Y2hlcygiLmFpLWxpc3QtZGF0YSIpP3gucHVzaChhKTooYT1hLnF1ZXJ5U2VsZWN0b3JBbGwoIi5haS1saXN0LWRhdGEiKSwKYS5sZW5ndGgmJmEuZm9yRWFjaCgoayxsKT0+e3gucHVzaChrKX0pKX0pO2I9eH1pZihiLmxlbmd0aCl7Yi5mb3JFYWNoKChhLGMpPT57YS5jbGFzc0xpc3QucmVtb3ZlKCJhaS1saXN0LWRhdGEiKX0pO3ZhciBMPWlhKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gpO2lmKG51bGwhPUwucmVmZXJyZXIpdmFyIEE9TC5yZWZlcnJlcjtlbHNlIEE9ZG9jdW1lbnQucmVmZXJyZXIsIiIhPUEmJihBPWhhKEEpKTt2YXIgUj13aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudCxTPVIudG9Mb3dlckNhc2UoKSxhYT1uYXZpZ2F0b3IubGFuZ3VhZ2UsTT1hYS50b0xvd2VyQ2FzZSgpO2lmKCJ1bmRlZmluZWQiIT09dHlwZW9mIE1vYmlsZURldGVjdCl2YXIgYmE9bmV3IE1vYmlsZURldGVjdChSKTtiLmZvckVhY2goKGEsYyk9Pnt2YXIgaz1kb2N1bWVudC5jb29raWUuc3BsaXQoIjsiKTtrLmZvckVhY2goZnVuY3Rpb24oZixoKXtrW2hdPWYudHJpbSgpfSk7Yz1hLmNsb3Nlc3QoImRpdi4iK2FpX2Jsb2NrX2NsYXNzX2RlZik7CnZhciBsPSEwO2lmKGEuaGFzQXR0cmlidXRlKCJyZWZlcmVyLWxpc3QiKSl7dmFyIHA9YS5nZXRBdHRyaWJ1dGUoInJlZmVyZXItbGlzdCIpO3A9YjY0ZChwKS5zcGxpdCgiLCIpO3ZhciB2PWEuZ2V0QXR0cmlidXRlKCJyZWZlcmVyLWxpc3QtdHlwZSIpLEU9ITE7cC5ldmVyeSgoZixoKT0+e2Y9Zi50cmltKCk7aWYoIiI9PWYpcmV0dXJuITA7aWYoIioiPT1mLmNoYXJBdCgwKSlpZigiKiI9PWYuY2hhckF0KGYubGVuZ3RoLTEpKXtpZihmPWYuc3Vic3RyKDEsZi5sZW5ndGgtMiksLTEhPUEuaW5kZXhPZihmKSlyZXR1cm4gRT0hMCwhMX1lbHNle2lmKGY9Zi5zdWJzdHIoMSksQS5zdWJzdHIoLWYubGVuZ3RoKT09ZilyZXR1cm4gRT0hMCwhMX1lbHNlIGlmKCIqIj09Zi5jaGFyQXQoZi5sZW5ndGgtMSkpe2lmKGY9Zi5zdWJzdHIoMCxmLmxlbmd0aC0xKSwwPT1BLmluZGV4T2YoZikpcmV0dXJuIEU9ITAsITF9ZWxzZSBpZigiIyI9PWYpe2lmKCIiPT1BKXJldHVybiBFPSEwLCExfWVsc2UgaWYoZj09CkEpcmV0dXJuIEU9ITAsITE7cmV0dXJuITB9KTt2YXIgcj1FO3N3aXRjaCh2KXtjYXNlICJCIjpyJiYobD0hMSk7YnJlYWs7Y2FzZSAiVyI6cnx8KGw9ITEpfX1pZihsJiZhLmhhc0F0dHJpYnV0ZSgiY2xpZW50LWxpc3QiKSYmInVuZGVmaW5lZCIhPT10eXBlb2YgYmEpc3dpdGNoKHA9YS5nZXRBdHRyaWJ1dGUoImNsaWVudC1saXN0IikscD1iNjRkKHApLnNwbGl0KCIsIiksdj1hLmdldEF0dHJpYnV0ZSgiY2xpZW50LWxpc3QtdHlwZSIpLHI9ITEscC5ldmVyeSgoZixoKT0+e2lmKCIiPT1mLnRyaW0oKSlyZXR1cm4hMDtmLnNwbGl0KCImJiIpLmV2ZXJ5KChkLHQpPT57dD0hMDt2YXIgdz0hMTtmb3IoZD1kLnRyaW0oKTsiISEiPT1kLnN1YnN0cmluZygwLDIpOyl0PSF0LGQ9ZC5zdWJzdHJpbmcoMik7Imxhbmd1YWdlOiI9PWQuc3Vic3RyaW5nKDAsOSkmJih3PSEwLGQ9ZC5zdWJzdHJpbmcoOSkudG9Mb3dlckNhc2UoKSk7dmFyIHE9ITE7dz8iKiI9PWQuY2hhckF0KDApPyIqIj09ZC5jaGFyQXQoZC5sZW5ndGgtCjEpPyhkPWQuc3Vic3RyKDEsZC5sZW5ndGgtMikudG9Mb3dlckNhc2UoKSwtMSE9TS5pbmRleE9mKGQpJiYocT0hMCkpOihkPWQuc3Vic3RyKDEpLnRvTG93ZXJDYXNlKCksTS5zdWJzdHIoLWQubGVuZ3RoKT09ZCYmKHE9ITApKToiKiI9PWQuY2hhckF0KGQubGVuZ3RoLTEpPyhkPWQuc3Vic3RyKDAsZC5sZW5ndGgtMSkudG9Mb3dlckNhc2UoKSwwPT1NLmluZGV4T2YoZCkmJihxPSEwKSk6ZD09TSYmKHE9ITApOiIqIj09ZC5jaGFyQXQoMCk/IioiPT1kLmNoYXJBdChkLmxlbmd0aC0xKT8oZD1kLnN1YnN0cigxLGQubGVuZ3RoLTIpLnRvTG93ZXJDYXNlKCksLTEhPVMuaW5kZXhPZihkKSYmKHE9ITApKTooZD1kLnN1YnN0cigxKS50b0xvd2VyQ2FzZSgpLFMuc3Vic3RyKC1kLmxlbmd0aCk9PWQmJihxPSEwKSk6IioiPT1kLmNoYXJBdChkLmxlbmd0aC0xKT8oZD1kLnN1YnN0cigwLGQubGVuZ3RoLTEpLnRvTG93ZXJDYXNlKCksMD09Uy5pbmRleE9mKGQpJiYocT0hMCkpOmJhLmlzKGQpJiYKKHE9ITApO3JldHVybihyPXE/dDohdCk/ITA6ITF9KTtyZXR1cm4gcj8hMTohMH0pLHYpe2Nhc2UgIkIiOnImJihsPSExKTticmVhaztjYXNlICJXIjpyfHwobD0hMSl9dmFyIE49cD0hMTtmb3Iodj0xOzI+PXY7disrKWlmKGwpe3N3aXRjaCh2KXtjYXNlIDE6dmFyIGc9YS5nZXRBdHRyaWJ1dGUoImNvb2tpZS1saXN0Iik7YnJlYWs7Y2FzZSAyOmc9YS5nZXRBdHRyaWJ1dGUoInBhcmFtZXRlci1saXN0Iil9aWYobnVsbCE9Zyl7Zz1iNjRkKGcpO3N3aXRjaCh2KXtjYXNlIDE6dmFyIHk9YS5nZXRBdHRyaWJ1dGUoImNvb2tpZS1saXN0LXR5cGUiKTticmVhaztjYXNlIDI6eT1hLmdldEF0dHJpYnV0ZSgicGFyYW1ldGVyLWxpc3QtdHlwZSIpfWc9Zy5yZXBsYWNlKCJ0Y2YtZ2RwciIsInRjZi12MltnZHByQXBwbGllc109dHJ1ZSIpO2c9Zy5yZXBsYWNlKCJ0Y2Ytbm8tZ2RwciIsInRjZi12MltnZHByQXBwbGllc109ZmFsc2UiKTtnPWcucmVwbGFjZSgidGNmLWdvb2dsZSIsInRjZi12Mlt2ZW5kb3JdW2NvbnNlbnRzXVs3NTVdPXRydWUgJiYgdGNmLXYyW3B1cnBvc2VdW2NvbnNlbnRzXVsxXT10cnVlIik7Cmc9Zy5yZXBsYWNlKCJ0Y2Ytbm8tZ29vZ2xlIiwiISF0Y2YtdjJbdmVuZG9yXVtjb25zZW50c11bNzU1XSIpO2c9Zy5yZXBsYWNlKCJ0Y2YtbWVkaWEubmV0IiwidGNmLXYyW3ZlbmRvcl1bY29uc2VudHNdWzE0Ml09dHJ1ZSAmJiB0Y2YtdjJbcHVycG9zZV1bY29uc2VudHNdWzFdPXRydWUiKTtnPWcucmVwbGFjZSgidGNmLW5vLW1lZGlhLm5ldCIsIiEhdGNmLXYyW3ZlbmRvcl1bY29uc2VudHNdWzE0Ml0iKTtnPWcucmVwbGFjZSgidGNmLWFtYXpvbiIsInRjZi12Mlt2ZW5kb3JdW2NvbnNlbnRzXVs3OTNdPXRydWUgJiYgdGNmLXYyW3B1cnBvc2VdW2NvbnNlbnRzXVsxXT10cnVlIik7Zz1nLnJlcGxhY2UoInRjZi1uby1hbWF6b24iLCIhIXRjZi12Mlt2ZW5kb3JdW2NvbnNlbnRzXVs3OTNdIik7Zz1nLnJlcGxhY2UoInRjZi1lem9pYyIsInRjZi12Mlt2ZW5kb3JdW2NvbnNlbnRzXVszNDddPXRydWUgJiYgdGNmLXYyW3B1cnBvc2VdW2NvbnNlbnRzXVsxXT10cnVlIik7Zz1nLnJlcGxhY2UoInRjZi1uby1lem9pYyIsCiIhIXRjZi12Mlt2ZW5kb3JdW2NvbnNlbnRzXVszNDddIik7dmFyIEY9Zy5zcGxpdCgiLCIpLGNhPVtdO2suZm9yRWFjaChmdW5jdGlvbihmKXtmPWYuc3BsaXQoIj0iKTt0cnl7dmFyIGg9SlNPTi5wYXJzZShkZWNvZGVVUklDb21wb25lbnQoZlsxXSkpfWNhdGNoKGQpe2g9ZGVjb2RlVVJJQ29tcG9uZW50KGZbMV0pfWNhW2ZbMF1dPWh9KTtyPSExO3ZhciBJPWE7Ri5ldmVyeSgoZixoKT0+e2Yuc3BsaXQoIiYmIikuZXZlcnkoKGQsdCk9Pnt0PSEwO2ZvcihkPWQudHJpbSgpOyIhISI9PWQuc3Vic3RyaW5nKDAsMik7KXQ9IXQsZD1kLnN1YnN0cmluZygyKTt2YXIgdz1kLHE9IiFAISIsVD0idGNmLXYyIj09dyYmIiFAISI9PXEsQj0tMSE9ZC5pbmRleE9mKCJbIiksSj0wPT1kLmluZGV4T2YoInRjZi12MiIpfHwwPT1kLmluZGV4T2YoImV1Y29uc2VudC12MiIpO0o9SiYmKEJ8fFQpOy0xIT1kLmluZGV4T2YoIj0iKSYmKHE9ZC5zcGxpdCgiPSIpLHc9cVswXSxxPXFbMV0sQj0tMSE9dy5pbmRleE9mKCJbIiksCko9KEo9MD09dy5pbmRleE9mKCJ0Y2YtdjIiKXx8MD09dy5pbmRleE9mKCJldWNvbnNlbnQtdjIiKSkmJihCfHxUKSk7aWYoSilkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjYWktaWFiLXRjZi1zdGF0dXMiKSxCPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNhaS1pYWItdGNmLWJhciIpLG51bGwhPUImJihCLnN0eWxlLmRpc3BsYXk9ImJsb2NrIiksVCYmImJvb2xlYW4iPT10eXBlb2YgYWlfdGNmYXBpX2ZvdW5kP3I9YWlfdGNmYXBpX2ZvdW5kP3Q6IXQ6Im9iamVjdCI9PXR5cGVvZiBhaV90Y0RhdGE/KG51bGwhPUImJihCLmNsYXNzTGlzdC5yZW1vdmUoInN0YXR1cy1lcnJvciIpLEIuY2xhc3NMaXN0LmFkZCgic3RhdHVzLW9rIikpLHc9dy5yZXBsYWNlKC9dfCAvZ2ksIiIpLnNwbGl0KCJbIiksdy5zaGlmdCgpLHI9KHc9ZSh3LGFpX3RjRGF0YSxxKSk/dDohdCk6InVuZGVmaW5lZCI9PXR5cGVvZiBhaV90Y2ZhcGlfZm91bmQmJihJLmNsYXNzTGlzdC5hZGQoImFpLWxpc3QtZGF0YSIpLApOPSEwLCJmdW5jdGlvbiI9PXR5cGVvZiBfX3RjZmFwaT9DKCExKToidW5kZWZpbmVkIj09dHlwZW9mIGFpX3RjRGF0YV9yZXRyeWluZyYmKGFpX3RjRGF0YV9yZXRyeWluZz0hMCxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ImZ1bmN0aW9uIj09dHlwZW9mIF9fdGNmYXBpP0MoITEpOnNldFRpbWVvdXQoZnVuY3Rpb24oKXsiZnVuY3Rpb24iPT10eXBlb2YgX190Y2ZhcGk/QyghMSk6c2V0VGltZW91dChmdW5jdGlvbigpe0MoITApfSwzRTMpfSwxRTMpfSw2MDApKSk7ZWxzZSBpZihCKXI9KHc9bihjYSx3LHEpKT90OiF0O2Vsc2V7dmFyIFU9ITE7IiFAISI9PXE/ay5ldmVyeShmdW5jdGlvbihqYSl7cmV0dXJuIGphLnNwbGl0KCI9IilbMF09PWQ/KFU9ITAsITEpOiEwfSk6VT0tMSE9ay5pbmRleE9mKGQpO3I9VT90OiF0fXJldHVybiByPyEwOiExfSk7cmV0dXJuIHI/ITE6ITB9KTtyJiYoTj0hMSxJLmNsYXNzTGlzdC5yZW1vdmUoImFpLWxpc3QtZGF0YSIpKTtzd2l0Y2goeSl7Y2FzZSAiQiI6ciYmCihsPSExKTticmVhaztjYXNlICJXIjpyfHwobD0hMSl9fX1hLmNsYXNzTGlzdC5jb250YWlucygiYWktbGlzdC1tYW51YWwiKSYmKGw/KEkuY2xhc3NMaXN0LnJlbW92ZSgiYWktbGlzdC1kYXRhIiksSS5jbGFzc0xpc3QucmVtb3ZlKCJhaS1saXN0LW1hbnVhbCIpKToocD0hMCxJLmNsYXNzTGlzdC5hZGQoImFpLWxpc3QtZGF0YSIpKSk7KGx8fCFwJiYhTikmJmEuaGFzQXR0cmlidXRlKCJkYXRhLWRlYnVnLWluZm8iKSYmKGc9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLiIrYS5kYXRhc2V0LmRlYnVnSW5mbyksbnVsbCE9ZyYmKGc9Zy5wYXJlbnRFbGVtZW50LG51bGwhPWcmJmcuY2xhc3NMaXN0LmNvbnRhaW5zKCJhaS1kZWJ1Zy1pbmZvIikmJmcucmVtb3ZlKCkpKTt5PVgoYSwiLmFpLWRlYnVnLWJhci5haS1kZWJ1Zy1saXN0cyIpO3ZhciBrYT0iIj09QT8iIyI6QTswIT15Lmxlbmd0aCYmeS5mb3JFYWNoKChmLGgpPT57aD1mLnF1ZXJ5U2VsZWN0b3IoIi5haS1kZWJ1Zy1uYW1lLmFpLWxpc3QtaW5mbyIpOwpudWxsIT1oJiYoaC50ZXh0Q29udGVudD1rYSxoLnRpdGxlPVIrIlxuIithYSk7aD1mLnF1ZXJ5U2VsZWN0b3IoIi5haS1kZWJ1Zy1uYW1lLmFpLWxpc3Qtc3RhdHVzIik7bnVsbCE9aCYmKGgudGV4dENvbnRlbnQ9bD9haV9mcm9udC52aXNpYmxlOmFpX2Zyb250LmhpZGRlbil9KTtnPSExO2lmKGwmJmEuaGFzQXR0cmlidXRlKCJzY2hlZHVsaW5nLXN0YXJ0IikmJmEuaGFzQXR0cmlidXRlKCJzY2hlZHVsaW5nLWVuZCIpJiZhLmhhc0F0dHJpYnV0ZSgic2NoZWR1bGluZy1kYXlzIikpe3ZhciB1PWEuZ2V0QXR0cmlidXRlKCJzY2hlZHVsaW5nLXN0YXJ0Iik7dj1hLmdldEF0dHJpYnV0ZSgic2NoZWR1bGluZy1lbmQiKTt5PWEuZ2V0QXR0cmlidXRlKCJzY2hlZHVsaW5nLWRheXMiKTtnPSEwO3U9YjY0ZCh1KTtGPWI2NGQodik7dmFyIFY9cGFyc2VJbnQoYS5nZXRBdHRyaWJ1dGUoInNjaGVkdWxpbmctZmFsbGJhY2siKSksTz1wYXJzZUludChhLmdldEF0dHJpYnV0ZSgiZ210IikpO2lmKHUuaW5jbHVkZXMoIi0iKXx8CkYuaW5jbHVkZXMoIi0iKSlQPVkodSkrTyxLPVkoRikrTztlbHNlIHZhciBQPVEodSksSz1RKEYpO1A/Pz0wO0s/Pz0wO3ZhciBXPWI2NGQoeSkuc3BsaXQoIiwiKTt5PWEuZ2V0QXR0cmlidXRlKCJzY2hlZHVsaW5nLXR5cGUiKTt2YXIgRD0obmV3IERhdGUpLmdldFRpbWUoKStPO3Y9bmV3IERhdGUoRCk7dmFyIEc9di5nZXREYXkoKTswPT1HP0c9NjpHLS07dS5pbmNsdWRlcygiLSIpfHxGLmluY2x1ZGVzKCItIil8fCh1PShuZXcgRGF0ZSh2LmdldEZ1bGxZZWFyKCksdi5nZXRNb250aCgpLHYuZ2V0RGF0ZSgpKSkuZ2V0VGltZSgpK08sRC09dSwwPkQmJihEKz04NjRFNSkpO3NjaGVkdWxpbmdfc3RhcnRfZGF0ZV9vaz1EPj1QO3NjaGVkdWxpbmdfZW5kX2RhdGVfb2s9MD09S3x8RDxLO3U9c2NoZWR1bGluZ19zdGFydF9kYXRlX29rJiZzY2hlZHVsaW5nX2VuZF9kYXRlX29rJiZXLmluY2x1ZGVzKEcudG9TdHJpbmcoKSk7c3dpdGNoKHkpe2Nhc2UgIkIiOnU9IXV9dXx8KGw9ITEpOwp2YXIgbGE9di50b0lTT1N0cmluZygpLnNwbGl0KCIuIilbMF0ucmVwbGFjZSgiVCIsIiAiKTt5PVgoYSwiLmFpLWRlYnVnLWJhci5haS1kZWJ1Zy1zY2hlZHVsaW5nIik7MCE9eS5sZW5ndGgmJnkuZm9yRWFjaCgoZixoKT0+e2g9Zi5xdWVyeVNlbGVjdG9yKCIuYWktZGVidWctbmFtZS5haS1zY2hlZHVsaW5nLWluZm8iKTtudWxsIT1oJiYoaC50ZXh0Q29udGVudD1sYSsiICIrRysiIGN1cnJlbnRfdGltZTogIitNYXRoLmZsb29yKEQudG9TdHJpbmcoKS8xRTMpKyIgIHN0YXJ0X2RhdGU6IitNYXRoLmZsb29yKFAvMUUzKS50b1N0cmluZygpKyI9PiIrc2NoZWR1bGluZ19zdGFydF9kYXRlX29rLnRvU3RyaW5nKCkrIiBlbmRfZGF0ZToiK01hdGguZmxvb3IoSy8xRTMpLnRvU3RyaW5nKCkrIj0+IitzY2hlZHVsaW5nX2VuZF9kYXRlX29rLnRvU3RyaW5nKCkrIiBkYXlzOiIrVy50b1N0cmluZygpKyI9PiIrVy5pbmNsdWRlcyhHLnRvU3RyaW5nKCkpLnRvU3RyaW5nKCkpO2g9Zi5xdWVyeVNlbGVjdG9yKCIuYWktZGVidWctbmFtZS5haS1zY2hlZHVsaW5nLXN0YXR1cyIpOwpudWxsIT1oJiYoaC50ZXh0Q29udGVudD1sP2FpX2Zyb250LnZpc2libGU6YWlfZnJvbnQuaGlkZGVuKTtsfHwwPT1WfHwoZi5jbGFzc0xpc3QucmVtb3ZlKCJhaS1kZWJ1Zy1zY2hlZHVsaW5nIiksZi5jbGFzc0xpc3QuYWRkKCJhaS1kZWJ1Zy1mYWxsYmFjayIpLGg9Zi5xdWVyeVNlbGVjdG9yKCIuYWktZGVidWctbmFtZS5haS1zY2hlZHVsaW5nLXN0YXR1cyIpLG51bGwhPWgmJihoLnRleHRDb250ZW50PWFpX2Zyb250LmZhbGxiYWNrKyIgPSAiK1YpKX0pfWlmKHB8fCFsJiZOKXJldHVybiEwO2Euc3R5bGUudmlzaWJpbGl0eT0iIjthLnN0eWxlLnBvc2l0aW9uPSIiO2Euc3R5bGUud2lkdGg9IiI7YS5zdHlsZS5oZWlnaHQ9IiI7YS5zdHlsZS56SW5kZXg9IiI7aWYobCl7aWYobnVsbCE9YyYmKGMuc3R5bGUudmlzaWJpbGl0eT0iIixjLmNsYXNzTGlzdC5jb250YWlucygiYWktcmVtb3ZlLXBvc2l0aW9uIikmJihjLnN0eWxlLnBvc2l0aW9uPSIiKSksYS5oYXNBdHRyaWJ1dGUoImRhdGEtY29kZSIpKXtwPQpiNjRkKGEuZGF0YXNldC5jb2RlKTt1PWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7Zz0hMDt0cnl7SD11LmNyZWF0ZUNvbnRleHR1YWxGcmFnbWVudChwKX1jYXRjaChmKXtnPSExfWcmJihudWxsIT1hLmNsb3Nlc3QoImhlYWQiKT8oYS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShILGEubmV4dFNpYmxpbmcpLGEucmVtb3ZlKCkpOmEuYXBwZW5kKEgpKTtkYShhKX19ZWxzZSBpZihnJiYhdSYmMCE9Vil7bnVsbCE9YyYmKGMuc3R5bGUudmlzaWJpbGl0eT0iIixjLmNsYXNzTGlzdC5jb250YWlucygiYWktcmVtb3ZlLXBvc2l0aW9uIikmJmMuY3NzKHtwb3NpdGlvbjoiIn0pKTtwPWZhKGEsIi5haS1mYWxsYmFjayIpOzAhPXAubGVuZ3RoJiZwLmZvckVhY2goKGYsaCk9PntmLmNsYXNzTGlzdC5yZW1vdmUoImFpLWZhbGxiYWNrIil9KTtpZihhLmhhc0F0dHJpYnV0ZSgiZGF0YS1mYWxsYmFjay1jb2RlIikpe3A9YjY0ZChhLmRhdGFzZXQuZmFsbGJhY2tDb2RlKTt1PWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7Cmc9ITA7dHJ5e3ZhciBIPXUuY3JlYXRlQ29udGV4dHVhbEZyYWdtZW50KHApfWNhdGNoKGYpe2c9ITF9ZyYmYS5hcHBlbmQoSCk7ZGEoYSl9ZWxzZSBhLnN0eWxlLmRpc3BsYXk9Im5vbmUiLG51bGwhPWMmJm51bGw9PWMucXVlcnlTZWxlY3RvcigiLmFpLWRlYnVnLWJsb2NrIikmJmMuaGFzQXR0cmlidXRlKCJzdHlsZSIpJiYtMT09Yy5nZXRBdHRyaWJ1dGUoInN0eWxlIikuaW5kZXhPZigiaGVpZ2h0OiIpJiYoYy5zdHlsZS5kaXNwbGF5PSJub25lIik7bnVsbCE9YyYmYy5oYXNBdHRyaWJ1dGUoImRhdGEtYWkiKSYmKGMuZ2V0QXR0cmlidXRlKCJkYXRhLWFpIiksYS5oYXNBdHRyaWJ1dGUoImZhbGxiYWNrLXRyYWNraW5nIikmJihIPWEuZ2V0QXR0cmlidXRlKCJmYWxsYmFjay10cmFja2luZyIpLGMuc2V0QXR0cmlidXRlKCJkYXRhLWFpLSIrYS5nZXRBdHRyaWJ1dGUoImZhbGxiYWNrX2xldmVsIiksSCkpKX1lbHNlIGEuc3R5bGUuZGlzcGxheT0ibm9uZSIsbnVsbCE9YyYmKGMucmVtb3ZlQXR0cmlidXRlKCJkYXRhLWFpIiksCmMuY2xhc3NMaXN0LnJlbW92ZSgiYWktdHJhY2siKSxudWxsIT1jLnF1ZXJ5U2VsZWN0b3IoIi5haS1kZWJ1Zy1ibG9jayIpPyhjLnN0eWxlLnZpc2liaWxpdHk9IiIsYy5jbGFzc0xpc3QucmVtb3ZlKCJhaS1jbG9zZSIpLGMuY2xhc3NMaXN0LmNvbnRhaW5zKCJhaS1yZW1vdmUtcG9zaXRpb24iKSYmKGMuc3R5bGUucG9zaXRpb249IiIpKTpjLmhhc0F0dHJpYnV0ZSgic3R5bGUiKSYmLTE9PWMuZ2V0QXR0cmlidXRlKCJzdHlsZSIpLmluZGV4T2YoImhlaWdodDoiKSYmKGMuc3R5bGUuZGlzcGxheT0ibm9uZSIpKTthLnNldEF0dHJpYnV0ZSgiZGF0YS1jb2RlIiwiIik7YS5zZXRBdHRyaWJ1dGUoImRhdGEtZmFsbGJhY2stY29kZSIsIiIpO251bGwhPWMmJmMuY2xhc3NMaXN0LnJlbW92ZSgiYWktbGlzdC1ibG9jayIpfSl9fTtmdW5jdGlvbiBlYShiKXtiPWA7ICR7ZG9jdW1lbnQuY29va2llfWAuc3BsaXQoYDsgJHtifT1gKTtpZigyPT09Yi5sZW5ndGgpcmV0dXJuIGIucG9wKCkuc3BsaXQoIjsiKS5zaGlmdCgpfQpmdW5jdGlvbiBtYShiLGUsbil7ZWEoYikmJihkb2N1bWVudC5jb29raWU9YisiPSIrKGU/IjtwYXRoPSIrZToiIikrKG4/Ijtkb21haW49IituOiIiKSsiO2V4cGlyZXM9VGh1LCAwMSBKYW4gMTk3MCAwMDowMDowMSBHTVQiKX1mdW5jdGlvbiBtKGIpe2VhKGIpJiYobWEoYiwiLyIsd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lKSxkb2N1bWVudC5jb29raWU9YisiPTsgUGF0aD0vOyBFeHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyIpfShmdW5jdGlvbihiKXsiY29tcGxldGUiPT09ZG9jdW1lbnQucmVhZHlTdGF0ZXx8ImxvYWRpbmciIT09ZG9jdW1lbnQucmVhZHlTdGF0ZSYmIWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5kb1Njcm9sbD9iKCk6ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsYil9KShmdW5jdGlvbigpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXthaV9wcm9jZXNzX2xpc3RzKCk7c2V0VGltZW91dChmdW5jdGlvbigpe1ooKTsKaWYoImZ1bmN0aW9uIj09dHlwZW9mIGFpX2xvYWRfYmxvY2tzKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbXBsekVuYWJsZVNjcmlwdHMiLGUpO2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNtcGx6X2V2ZW50X21hcmtldGluZyIsZSk7ZnVuY3Rpb24gZShuKXsiY21wbHpFbmFibGVTY3JpcHRzIiE9bi50eXBlJiYiYWxsIiE9PW4uY29uc2VudExldmVsfHxhaV9sb2FkX2Jsb2NrcygpfWRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNtcGx6X2VuYWJsZV9jYXRlZ29yeSIsZnVuY3Rpb24obil7Im1hcmtldGluZyI9PT1uLmRldGFpbC5jYXRlZ29yeSYmYWlfbG9hZF9ibG9ja3MoKX0pfX0sNTApO3ZhciBiPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5haS1kZWJ1Zy1wYWdlLXR5cGUiKTtudWxsIT1iJiZiLmFkZEV2ZW50TGlzdGVuZXIoImRibGNsaWNrIixlPT57ZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjYWktaWFiLXRjZi1zdGF0dXMiKTtudWxsIT1lJiYoZS50ZXh0Q29udGVudD0KIkNPTlNFTlQgQ09PS0lFUyIpO2U9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2FpLWlhYi10Y2YtYmFyIik7bnVsbCE9ZSYmKGUuc3R5bGUuZGlzcGxheT0iYmxvY2siKX0pO2I9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2FpLWlhYi10Y2YtYmFyIik7bnVsbCE9YiYmYi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZT0+e20oImV1Y29uc2VudC12MiIpO20oIl9fbHhHX19jb25zZW50X192MiIpO20oIl9fbHhHX19jb25zZW50X192Ml9kYWlzeWJpdCIpO20oIl9fbHhHX19jb25zZW50X192Ml9nZGFpc3liaXQiKTttKCJDb29raWVMYXdJbmZvQ29uc2VudCIpO20oImNvb2tpZWxhd2luZm8tY2hlY2tib3gtYWR2ZXJ0aXNlbWVudCIpO20oImNvb2tpZWxhd2luZm8tY2hlY2tib3gtYW5hbHl0aWNzIik7bSgiY29va2llbGF3aW5mby1jaGVja2JveC1uZWNlc3NhcnkiKTttKCJjb21wbGlhbnpfcG9saWN5X2lkIik7bSgiY29tcGxpYW56X2NvbnNlbnRfc3RhdHVzIik7bSgiY21wbHpfbWFya2V0aW5nIik7Cm0oImNtcGx6X2NvbnNlbnRfc3RhdHVzIik7bSgiY21wbHpfcHJlZmVyZW5jZXMiKTttKCJjbXBsel9zdGF0aXN0aWNzLWFub255bW91cyIpO20oImNtcGx6X2Nob2ljZSIpO20oImNtcGx6X2Jhbm5lci1zdGF0dXMiKTttKCJjbXBsel9mdW5jdGlvbmFsIik7bSgiY21wbHpfcG9saWN5X2lkIik7bSgiY21wbHpfc3RhdGlzdGljcyIpO20oIm1vb3ZlX2dkcHJfcG9wdXAiKTttKCJyZWFsX2Nvb2tpZV9iYW5uZXItYmxvZzoxLXRjZiIpO20oInJlYWxfY29va2llX2Jhbm5lci1ibG9nOjEiKTtlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNhaS1pYWItdGNmLXN0YXR1cyIpO251bGwhPWUmJihlLnRleHRDb250ZW50PSJDT05TRU5UIENPT0tJRVMgREVMRVRFRCIpfSl9LDUpfSk7ZnVuY3Rpb24gZGEoYil7c2V0VGltZW91dChmdW5jdGlvbigpeyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX3JvdGF0aW9uc19pbl9lbGVtZW50JiZhaV9wcm9jZXNzX3JvdGF0aW9uc19pbl9lbGVtZW50KGIpOwoiZnVuY3Rpb24iPT10eXBlb2YgYWlfcHJvY2Vzc19saXN0cyYmYWlfcHJvY2Vzc19saXN0cygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX2lwX2FkZHJlc3NlcyYmYWlfcHJvY2Vzc19pcF9hZGRyZXNzZXMoKTsiZnVuY3Rpb24iPT10eXBlb2YgYWlfcHJvY2Vzc19maWx0ZXJfaG9va3MmJmFpX3Byb2Nlc3NfZmlsdGVyX2hvb2tzKCk7ImZ1bmN0aW9uIj09dHlwZW9mIGFpX2FkYl9wcm9jZXNzX2Jsb2NrcyYmYWlfYWRiX3Byb2Nlc3NfYmxvY2tzKGIpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9wcm9jZXNzX2ltcHJlc3Npb25zJiYxPT1haV90cmFja2luZ19maW5pc2hlZCYmYWlfcHJvY2Vzc19pbXByZXNzaW9ucygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9pbnN0YWxsX2NsaWNrX3RyYWNrZXJzJiYxPT1haV90cmFja2luZ19maW5pc2hlZCYmYWlfaW5zdGFsbF9jbGlja190cmFja2VycygpOyJmdW5jdGlvbiI9PXR5cGVvZiBhaV9pbnN0YWxsX2Nsb3NlX2J1dHRvbnMmJmFpX2luc3RhbGxfY2xvc2VfYnV0dG9ucyhkb2N1bWVudCl9LAo1KX1mdW5jdGlvbiBpYShiKXt2YXIgZT1iP2Iuc3BsaXQoIj8iKVsxXTp3aW5kb3cubG9jYXRpb24uc2VhcmNoLnNsaWNlKDEpO2I9e307aWYoZSl7ZT1lLnNwbGl0KCIjIilbMF07ZT1lLnNwbGl0KCImIik7Zm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe3ZhciB6PWVbbl0uc3BsaXQoIj0iKSxDPXZvaWQgMCx4PXpbMF0ucmVwbGFjZSgvXFtcZCpcXS8sZnVuY3Rpb24oTCl7Qz1MLnNsaWNlKDEsLTEpO3JldHVybiIifSk7ej0idW5kZWZpbmVkIj09PXR5cGVvZiB6WzFdPyIiOnpbMV07eD14LnRvTG93ZXJDYXNlKCk7ej16LnRvTG93ZXJDYXNlKCk7Ylt4XT8oInN0cmluZyI9PT10eXBlb2YgYlt4XSYmKGJbeF09W2JbeF1dKSwidW5kZWZpbmVkIj09PXR5cGVvZiBDP2JbeF0ucHVzaCh6KTpiW3hdW0NdPXopOmJbeF09en19cmV0dXJuIGJ9fTsKCmFpX2pzX2NvZGUgPSB0cnVlOwo=
  1. https://sp-ao.shortpixel.ai/client/to_webp,q_glossy,ret_img/http://www.gamemods.ir/wp-content/uploads/2021/04/124-1.png
  2. https://www.gamemods.ir/wp-content/themes/Z-Download/images/slider-loader.gif
  3. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  4. https://www.gamemods.ir/wp-content/uploads/2025/12/2-copy.webp
  5. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  6. https://www.gamemods.ir/wp-content/uploads/2025/12/22-copy.webp
  7. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  8. https://www.gamemods.ir/wp-content/uploads/2025/12/2-2.webp
  9. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  10. https://www.gamemods.ir/wp-content/uploads/2025/12/1-2.webp
  11. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  12. https://www.gamemods.ir/wp-content/uploads/2023/03/12412-copy.jpg
  13. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  14. https://www.gamemods.ir/wp-content/uploads/2025/12/33.webp
  15. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  16. https://www.gamemods.ir/wp-content/uploads/2025/12/412-copy.webp
  17. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  18. https://www.gamemods.ir/wp-content/uploads/2021/10/mp342e-copy.jpg
  19. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  20. https://www.gamemods.ir/wp-content/uploads/2023/10/24124.jpg
  21. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  22. https://www.gamemods.ir/wp-content/uploads/2023/10/11111.jpg
  23. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  24. http://www.gamemods.ir/wp-content/uploads/2019/08/mpe.jpg
  25. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  26. https://www.gamemods.ir/wp-content/uploads/2023/10/123124.jpg
  27. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  28. https://www.gamemods.ir/wp-content/uploads/2025/12/images11.webp
  29. https://www.gamemods.ir/wp-content/uploads/2025/03/Untitled-2.png
  30. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
درخواست‌های HTTP نشان‌دهنده تعداد منابع خارجی موجود در صفحه وب است.
فرمت تصویر
36 تصویر وجود دارد که از فرمت AVIF, WebP استفاده نمی‌کنند.
  1. https://sp-ao.shortpixel.ai/client/to_webp,q_glossy,ret_img/http://www.gamemods.ir/wp-content/uploads/2021/04/124-1.png
  2. https://www.gamemods.ir/wp-content/themes/Z-Download/images/slider-loader.gif
  3. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  4. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  5. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  6. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  7. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  8. https://www.gamemods.ir/wp-content/uploads/2023/03/12412-copy.jpg
  9. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  10. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  11. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  12. https://www.gamemods.ir/wp-content/uploads/2021/10/mp342e-copy.jpg
  13. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  14. https://www.gamemods.ir/wp-content/uploads/2023/10/24124.jpg
  15. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  16. https://www.gamemods.ir/wp-content/uploads/2023/10/11111.jpg
  17. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  18. http://www.gamemods.ir/wp-content/uploads/2019/08/mpe.jpg
  19. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  20. https://www.gamemods.ir/wp-content/uploads/2023/10/123124.jpg
  21. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
  22. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 596 335"></svg>
  23. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 853"></svg>
  24. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 853"></svg>
  25. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 853"></svg>
  26. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 853"></svg>
  27. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 853"></svg>
  28. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 853"></svg>
  29. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 853"></svg>
  30. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 853"></svg>
  31. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 853"></svg>
  32. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 853"></svg>
  33. https://www.gamemods.ir/wp-content/uploads/2023/03/capsule_616x353-copy.jpg
  34. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 616 353"></svg>
  35. https://www.gamemods.ir/wp-content/uploads/2025/03/Untitled-2.png
  36. data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 210 140"></svg>
فرمت تصاویر نشان‌دهنده تصاویری است که در فرمت فایل نسل بعدی ارائه نمی‌شوند. تصاویر ارائه شده در فرمت نسل بعدی عملکرد بارگذاری صفحه وب را بهبود می‌بخشند.
بیشتر بدانید
تعویق جاوااسکریپت
منابع جاوااسکریپت دارای ویژگی defer تنظیم شده‌اند.
ویژگی defer به مرورگر اجازه می‌دهد اسکریپت‌ها را به صورت موازی دانلود کرده و پس از تجزیه صفحه وب اجرا کند، عملکرد بارگذاری صفحه وب را بهبود می‌بخشد.
بیشتر بدانید
اندازه DOM
اندازه DOM بهینه است.
فایل HTML دارای 1466 گره DOM است.
اندازه DOM نشان‌دهنده تعداد گره‌هایی است که صفحه وب HTML دارد.
بیشتر بدانید
DOCTYPE
صفحه وب دارای برچسب اعلام DOCTYPE تنظیم شده است.
html
برچسب اعلام DOCTYPE نسخه HTML که صفحه وب از آن استفاده می‌کند را تعریف می‌کند، باعث می‌شود مرورگرهای مطابق صفحه وب را به درستی رندر کنند.
بیشتر بدانید
امنیت
رمزگذاری HTTPS
صفحه وب از رمزگذاری HTTPS استفاده می‌کند.
رمزگذاری HTTPS به محافظت از امنیت و حریم خصوصی کاربر کمک می‌کند.
بیشتر بدانید
محتوای ترکیبی
در صفحه وب 1 منبع محتوای ترکیبی وجود دارد.
محتوای ترکیبی محتوایی است که از طریق اتصال HTTP بارگذاری می‌شود در حالی که خود صفحه وب از طریق اتصال HTTPS بارگذاری شده است.
بیشتر بدانید
امضای سرور
صفحه وب دارای امضای سرور عمومی است.
BitNinja-WafPro
امضای سرور هویت عمومی یک سرور وب است که حاوی اطلاعاتی است که می‌توان از آن برای بهره‌برداری از آسیب‌پذیری‌های شناخته شده استفاده کرد.
بیشتر بدانید
پیوندهای ناامن بین منبعی
صفحه وب پیوندهای ناامن بین منبعی ندارد.
HTST
صفحه وب هدر HTTP Strict-Transport-Security تنظیم نشده است.
هدر HTTP Strict-Transport-Security برای اجبار مرورگر به استفاده از پروتکل HTTPS هنگام بارگذاری صفحه وب استفاده می‌شود.
بیشتر بدانید
ایمیل متنی
صفحه وب حاوی هیچ ایمیل متنی‌ای نیست.
آدرس‌های ایمیل منتشر شده در فضای عمومی احتمالاً توسط خزنده‌ها واکشی شده و سپس در لیست‌هایی که برای اسپم استفاده می‌شوند جمع‌آوری می‌شوند.
متفرقه
داده‌های ساختاریافته
صفحه وب دارای داده‌های ساختاریافته است.
  1. og:locale fa_IR
  2. og:type website
  3. og:title گیم مدز
  4. og:description مرجع دانلود مود بازی های کامپیوتری
  5. og:url https://www.gamemods.ir
  6. og:site_name گیم مدز
  1. twitter:card summary_large_image
  2. twitter:title گیم مدز
  3. twitter:description مرجع دانلود مود بازی های کامپیوتری
برچسب‌های داده ساختاریافته به موتورهای جستجو کمک می‌کنند محتوای صفحه وب را بهتر درک کنند و به آن‌ها اجازه می‌دهند قطعات غنی در نتایج جستجو ایجاد کنند.
متا viewport
صفحه وب دارای برچسب متا viewport تنظیم شده است.
width=device-width, initial-scale=1
برچسب متا viewport به مرورگرها دستور می‌دهد چگونه viewport صفحه وب را رندر کنند.
بیشتر بدانید
مجموعه کاراکترها
صفحه وب دارای مقدار charset تنظیم شده است.
utf-8
برچسب meta charset رمزگذاری کاراکترها را مشخص می‌کند و به مرورگرها کمک می‌کند تا کاراکترها و نمادهای صفحه وب را بهتر رندر کنند.
بیشتر بدانید
نقشه سایت
هیچ نقشه سایتی یافت نشد.
نقشه‌های سایت به موتورهای جستجو درباره صفحات موجود برای خزیدن در وب‌سایت اطلاع می‌دهند.
بیشتر بدانید
حضور رسانه‌های اجتماعی به عنوان عامل رتبه‌بندی برای موتورهای جستجو جهت اعتبارسنجی قابلیت اعتماد و اقتدار یک وب‌سایت، اهمیت فزاینده‌ای پیدا کرده است.
طول محتوا
صفحه وب دارای 3،514 کلمه است.
طول محتوا نشان‌دهنده تعداد کلمات یافت شده در صفحه وب است. صفحه وب باید شامل مقدار مناسبی کلمه باشد.
بیشتر بدانید
نسبت متن به HTML
نسبت متن به HTML کمتر از 10٪ است.
نسبت متن به HTML 7٪ است.
نسبت متن به HTML نشان‌دهنده درصد متن واقعی در مقایسه با درصد کد HTML در صفحه وب است.
CSS درون خطی
صفحه وب حاوی کد CSS درون خطی است.
  1. display: none;
  2. position:relative;
  3. position:relative;
  4. position:relative;
  5. position:relative;
  6. position:relative;
  7. position:relative;
  8. position:relative;
  9. position:relative;
  10. position:relative;
  11. position:relative;
  12. position:relative;
  13. position:relative;
  14. font-weight:normal;color:#aaa
  15. --dominant-color: #938f82;
  16. text-align: center;
  17. font-size: 14pt; color: #0000ff;
  18. color: #0000ff;
  19. text-align: center;
  20. color: #ff0000;
  21. text-align: center;
  22. font-size: 14pt; color: #800080;
  23. text-align: justify;
  24. text-align: center;
  25. color: #ff0000;
  26. text-align: justify;
  27. text-align: justify;
  28. text-align: justify;
  29. text-align: justify;
  30. font-weight:normal;color:#aaa
  31. --dominant-color: #767773;
  32. --dominant-color: #767773;
  33. text-align: center;
  34. color: #ff0000; font-size: 14pt;
  35. text-align: center;
  36. font-size: 14pt; color: #800000;
  37. text-align: center;
  38. color: #800080; font-size: 14pt;
  39. font-weight:normal;color:#aaa
  40. --dominant-color: #403830;
  41. --dominant-color: #403830;
  42. font-weight:normal;color:#aaa
  43. --dominant-color: #3c3230;
  44. --dominant-color: #3c3230;
  45. font-weight:normal;color:#aaa
  46. --dominant-color: #483516;
  47. --dominant-color: #483516;
  48. font-weight:normal;color:#aaa
  49. --dominant-color: #3f3d36;
  50. --dominant-color: #3f3d36;
  51. font-weight:normal;color:#aaa
  52. --dominant-color: #2f2b27;
  53. --dominant-color: #2f2b27;
  54. font-weight:normal;color:#aaa
  55. --dominant-color: #3c2a24;
  56. --dominant-color: #3c2a24;
  57. font-weight:normal;color:#aaa
  58. --dominant-color: #2e2927;
  59. --dominant-color: #2e2927;
  60. font-weight:normal;color:#aaa
  61. --dominant-color: #352525;
  62. --dominant-color: #352525;
  63. font-weight:normal;color:#aaa
  64. --dominant-color: #2b2826;
  65. --dominant-color: #2b2826;
  66. font-weight:normal;color:#aaa
  67. --dominant-color: #292625;
  68. --dominant-color: #292625;
  69. margin-bottom:-15px;
  70. margin: 8px 0; clear: both;
  71. margin: 8px 0; clear: both;
  72. border-radius:43px
  73. border-radius:43px
  74. border-radius:43px
  75. margin: 8px 0; clear: both;
ویژگی style حاوی قوانین استایل CSS است که به عنصر اعمال می‌شوند. کد CSS درون خطی به طور غیرضروری اندازه صفحه وب را افزایش می‌دهد و می‌تواند به یک فایل CSS خارجی منتقل شود.
بیشتر بدانید
HTML منسوخ شده
هیچ برچسب HTML منسوخ شده‌ای در صفحه وب وجود ندارد.
برچسب‌های منسوخ شده، برچسب‌هایی هستند که دیگر استاندارد HTML5 را پشتیبانی نمی‌کنند و ممکن است باعث شوند صفحه وب به درستی رندر نشود.
بیشتر بدانید
تحلیل پیوندها
وب‌سایت دارای ساختار پیوند سالمی است.
304
کل پیوندها
294
پیوندهای داخلی
10
پیوندهای خارجی
0
پیوندهای Nofollow
0
پیوندهای عنوان
تحلیل ساختار پیوندها:
  • پیوندهای داخلی به موتورهای جستجو کمک می‌کنند وب‌سایت شما را خزید کنند و سلسله مراتب سایت را برقرار کنند.
  • پیوندهای خارجی منابع اضافی ارائه می‌دهند و می‌توانند اعتبار را بهبود بخشند.
  • پیوندهای Nofollow به موتورهای جستجو می‌گویند که پیوند داده شده یا اختیار را به صفحه پیوند داده شده منتقل نکنند.
  • پیوندهای عنوان (در عناوین H1-H6) برای ساختار محتوا و SEO مهم هستند.
تحلیل رنگ
وب‌سایت از یک پالت رنگی یکنواخت استفاده می‌کند.
رنگ‌های بیشتر استفاده شده:
#AAAAAA
24 بار استفاده شده
#00FFFF
18 بار استفاده شده
#FFFFFF
14 بار استفاده شده
#0000FF
11 بار استفاده شده
#FF0000
10 بار استفاده شده
#800080
9 بار استفاده شده
#767773
8 بار استفاده شده
#403830
8 بار استفاده شده
#3C3230
8 بار
#483516
8 بار
#3F3D36
8 بار
#2F2B27
8 بار
#3C2A24
8 بار
#2E2927
8 بار
#352525
8 بار
بینش‌های تحلیل رنگ:
  • استفاده یکنواخت از رنگ، شناسایی برند و تجربه کاربری را بهبود می‌بخشد.
  • رنگ‌های زیاد می‌توانند باعث شوند وب‌سایت ظاهر ناخوشایند یا گیج‌کننده‌ای داشته باشد.
  • رنگ‌های اصلی باید غالب باشند، با استفاده کم از رنگ‌های تأکیدی.
  • دسترسی‌پذیری را در نظر بگیرید - اطمینان از کنتراست کافی برای خوانایی.
تحلیل رنگ رنگ‌هایی که بیشترین استفاده را در وب‌سایت شما دارند شناسایی می‌کند، به شما کمک می‌کند پالت رنگی فعلی خود را درک کنید و تصمیمات آگاهانه‌ای درباره یکنواختی رنگ و برندسازی بگیرید.
اطلاعات دامنه و میزبانی
دامنه:
www.gamemods.ir
آدرس IP:
217.144.105.207
سرور وب:
BitNinja-WafPro
رکوردهای DNS
نوع مقدار
A 217.144.105.207
NS ns537.mihanwebhost.com
NS ns538.mihanwebhost.com
SOA Primary: ns537.mihanwebhost.com, Email: mihanspa.gmail.com
MX gamemods.ir (0)
TXT google-site-verification=bqCiSEIGzlB1UShtwoI78EFm1ynRDccYYr_9Vk3rvnI
سرورهای نام
سرور نام آدرس IP کشور
ns537.mihanwebhost.com 217.144.105.207
ns538.mihanwebhost.com 162.55.128.224
وب‌سایت‌هایی با کلاس IP C مشابه
نشانی اینترنتی آدرس IP
https://www.irenaultshop.com 217.144.105.212
https://www.niroista.com 217.144.105.198
این بخش اطلاعات دقیقی درباره دامنه، میزبانی و سایر وب‌سایت‌هایی با کلاس IP مشابه نمایش می‌دهد.