video_info 2.8.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (276) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/unit_test.yml +39 -0
  3. data/Guardfile +1 -1
  4. data/README.md +8 -21
  5. data/lib/video_info.rb +2 -3
  6. data/lib/video_info/provider.rb +3 -2
  7. data/lib/video_info/providers/vimeo_scraper.rb +12 -2
  8. data/lib/video_info/providers/youtube.rb +4 -0
  9. data/lib/video_info/providers/youtube_api.rb +1 -1
  10. data/lib/video_info/providers/youtube_scraper.rb +42 -25
  11. data/lib/video_info/providers/youtubeplaylist_api.rb +15 -1
  12. data/lib/video_info/version.rb +1 -1
  13. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_invalid_video_url/_available_/1_2_2_1_1.yml +26 -37
  14. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_valid_video/_available_/1_2_1_1_1.yml +26 -35
  15. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_author/1_3_7_1.yml +31 -40
  16. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_author_thumbnail/1_3_9_1.yml +31 -40
  17. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_author_url/1_3_8_1.yml +31 -40
  18. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_date/should_show_correct_date.yml +31 -40
  19. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_description/1_3_10_1.yml +31 -40
  20. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_duration/1_3_12_1.yml +31 -40
  21. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_keywords/1_3_11_1.yml +31 -40
  22. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_thumbnail/{1_3_19_1.yml → 1_3_21_1.yml} +31 -40
  23. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_thumbnail_large/1_3_18_1.yml +31 -40
  24. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_thumbnail_medium/1_3_17_1.yml +31 -40
  25. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_thumbnail_small/1_3_16_1.yml +31 -40
  26. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_title/1_3_6_1.yml +31 -40
  27. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/_view_count/{1_3_20_1.yml → 1_3_22_1.yml} +31 -40
  28. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/_available_/with_password_required_video/_available_/1_2_3_1_1.yml +38 -37
  29. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/_available_/with_password_required_video/_available_/2_2_3_1_1.yml +28 -25
  30. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/_available_/with_this_video_does_not_exist_video/_available_/1_2_2_1_1.yml +44 -41
  31. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/_available_/with_this_video_does_not_exist_video/_available_/2_2_2_1_1.yml +26 -23
  32. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/_available_/with_valid_video/_available_/1_2_1_1_1.yml +46 -38
  33. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/_available_/with_valid_video/_available_/2_2_1_1_1.yml +24 -23
  34. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/author/1_13_2_1.yml +33 -31
  35. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/author_thumbnail/1_13_3_1.yml +33 -31
  36. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/author_url/1_13_4_1.yml +32 -28
  37. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/available_/1_13_1_1.yml +33 -31
  38. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/date/1_13_7_1.yml +34 -34
  39. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/description/1_13_6_1.yml +33 -30
  40. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/duration/1_13_8_1.yml +34 -32
  41. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/height/1_13_10_1.yml +33 -30
  42. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/keywords/1_13_9_1.yml +34 -34
  43. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/thumbnail_large/1_13_14_1.yml +34 -33
  44. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/thumbnail_medium/1_13_13_1.yml +34 -33
  45. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/thumbnail_small/1_13_12_1.yml +34 -33
  46. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/title/1_13_5_1.yml +33 -31
  47. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/view_count/1_13_15_1.yml +34 -33
  48. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_unavailable_video/width/1_13_11_1.yml +34 -33
  49. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_author/1_3_20_1.yml +158 -0
  50. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_author/2_3_20_1.yml +80 -0
  51. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_author_thumbnail/1_3_19_1.yml +158 -0
  52. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_author_thumbnail/2_3_19_1.yml +85 -0
  53. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_author_url/1_3_21_1.yml +159 -0
  54. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_author_url/2_3_21_1.yml +80 -0
  55. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_date/should_have_correct_upload_date.yml +82 -68
  56. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_description/1_3_7_1.yml +44 -34
  57. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_description/2_3_7_1.yml +36 -35
  58. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_duration/1_3_9_1.yml +45 -37
  59. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_duration/2_3_9_1.yml +39 -33
  60. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_height/1_3_11_1.yml +46 -38
  61. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_height/2_3_11_1.yml +36 -35
  62. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_keywords/should_return_a_string_list_of_keywords.yml +85 -71
  63. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_thumbnail/1_3_18_1.yml +236 -0
  64. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_thumbnail/2_3_18_1.yml +82 -0
  65. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_thumbnail_large/1_3_15_1.yml +67 -53
  66. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_thumbnail_large/2_3_15_1.yml +37 -34
  67. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_thumbnail_medium/1_3_14_1.yml +67 -54
  68. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_thumbnail_medium/2_3_14_1.yml +37 -32
  69. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_thumbnail_small/1_3_13_1.yml +67 -53
  70. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_thumbnail_small/2_3_13_1.yml +37 -32
  71. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_title/1_3_6_1.yml +45 -36
  72. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_title/2_3_6_1.yml +39 -33
  73. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_view_count/1_3_22_1.yml +158 -0
  74. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_view_count/2_3_22_1.yml +84 -0
  75. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_width/1_3_10_1.yml +46 -40
  76. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_width/2_3_10_1.yml +37 -34
  77. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_141349194/thumbnail/1_12_1_1.yml +234 -0
  78. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_141349194/thumbnail/2_12_1_1.yml +78 -0
  79. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_141349194/thumbnail_large/1_12_2_1.yml +233 -0
  80. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_141349194/thumbnail_large/2_12_2_1.yml +78 -0
  81. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_141349194/thumbnail_medium/1_12_3_1.yml +235 -0
  82. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_141349194/thumbnail_medium/2_12_3_1.yml +73 -0
  83. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_141349194/thumbnail_small/1_12_4_1.yml +234 -0
  84. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_141349194/thumbnail_small/2_12_4_1.yml +77 -0
  85. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/_available_/with_invalid_video/_available_/1_2_2_1_1.yml +25 -17
  86. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/_available_/with_valid_video/_available_/1_2_1_1_1.yml +28 -18
  87. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_pxonqr42is/_duration/1_4_7_1.yml +33 -25
  88. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_pxonqr42is/_height/1_4_9_1.yml +33 -25
  89. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_pxonqr42is/_thumbnail_large/1_4_12_1.yml +33 -24
  90. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_pxonqr42is/_thumbnail_medium/1_4_11_1.yml +34 -25
  91. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_pxonqr42is/_thumbnail_small/1_4_10_1.yml +33 -25
  92. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_pxonqr42is/_title/1_4_6_1.yml +33 -24
  93. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_pxonqr42is/_width/1_4_8_1.yml +33 -24
  94. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_rs1me54mpw/_duration/1_3_7_1.yml +33 -25
  95. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_rs1me54mpw/_height/1_3_9_1.yml +33 -23
  96. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_rs1me54mpw/_thumbnail/{1_3_13_1.yml → 1_3_15_1.yml} +33 -23
  97. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_rs1me54mpw/_thumbnail_large/1_3_12_1.yml +33 -23
  98. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_rs1me54mpw/_thumbnail_medium/1_3_11_1.yml +33 -23
  99. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_rs1me54mpw/_thumbnail_small/1_3_10_1.yml +33 -25
  100. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_rs1me54mpw/_title/1_3_6_1.yml +33 -25
  101. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Wistia/with_video_rs1me54mpw/_width/1_3_8_1.yml +33 -23
  102. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_available_/1_2_2_1_1.yml +20 -442
  103. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_available_/2_2_2_1_1.yml +81 -21
  104. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_date/1_2_2_11_1.yml +24 -446
  105. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_date/2_2_2_11_1.yml +81 -21
  106. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_description/1_2_2_8_1.yml +25 -449
  107. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_description/2_2_2_8_1.yml +81 -21
  108. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_duration/1_2_2_10_1.yml +24 -450
  109. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_duration/2_2_2_10_1.yml +81 -21
  110. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_keywords/1_2_2_9_1.yml +23 -449
  111. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_keywords/2_2_2_9_1.yml +81 -21
  112. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_title/1_2_2_7_1.yml +24 -446
  113. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_title/2_2_2_7_1.yml +81 -21
  114. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_view_count/1_2_2_18_1.yml +59 -0
  115. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_view_count/2_2_2_18_1.yml +114 -0
  116. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_valid_video/_available_/1_2_1_1_1.yml +23 -20
  117. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_valid_video/_available_/2_2_1_1_1.yml +152 -90
  118. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_video_removed_because_of_copyright_claim/_available_/1_2_3_1_1.yml +23 -447
  119. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_video_removed_because_of_copyright_claim/_available_/2_2_3_1_1.yml +81 -21
  120. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_a_video_without_description/_description/1_1_1_1.yml +59 -0
  121. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_date/should_return_date_video_was_posted.yml +181 -110
  122. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_description/1_17_7_1.yml +22 -19
  123. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_description/2_17_7_1.yml +152 -90
  124. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_duration/1_17_9_1.yml +23 -20
  125. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_duration/2_17_9_1.yml +152 -90
  126. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_keywords/1_17_8_1.yml +23 -20
  127. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_keywords/2_17_8_1.yml +152 -90
  128. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_title/1_17_6_1.yml +20 -17
  129. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_title/2_17_6_1.yml +152 -90
  130. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_view_count/1_17_17_1.yml +59 -0
  131. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_view_count/2_17_17_1.yml +187 -0
  132. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_author/1_3_6_1.yml +74 -15
  133. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_author/2_3_6_1.yml +152 -90
  134. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_author_thumbnail/1_3_7_1.yml +74 -15
  135. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_author_thumbnail/2_3_7_1.yml +271 -144
  136. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_author_url/1_3_8_1.yml +21 -18
  137. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_author_url/2_3_8_1.yml +271 -144
  138. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_author_url/can_be_called_twice_and_receive_the_same_value.yml +391 -0
  139. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_date/should_return_date_video_was_posted.yml +173 -108
  140. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_description/1_3_10_1.yml +23 -19
  141. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_description/2_3_10_1.yml +152 -90
  142. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_duration/1_3_12_1.yml +21 -18
  143. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_duration/2_3_12_1.yml +152 -90
  144. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_keywords/1_3_11_1.yml +21 -18
  145. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_keywords/2_3_11_1.yml +152 -90
  146. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_title/1_3_9_1.yml +23 -20
  147. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_title/2_3_9_1.yml +152 -90
  148. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_view_count/1_3_21_1.yml +59 -0
  149. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_view_count/2_3_21_1.yml +187 -0
  150. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/_available_/with_invalid_playlist/_available_/1_2_2_1_1.yml +87 -27
  151. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/_available_/with_list_url/_available_/1_2_3_1_1.yml +120 -60
  152. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/_available_/with_valid_playlist/_available_/1_2_1_1_1.yml +120 -60
  153. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_author/1_3_21_1.yml +165 -0
  154. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_author_thumbnail/1_3_22_1.yml +274 -0
  155. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_author_url/1_3_23_1.yml +274 -0
  156. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_description/1_3_7_1.yml +131 -71
  157. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_keywords/1_3_8_1.yml +131 -71
  158. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_thumbnail/1_3_18_1.yml +165 -0
  159. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_thumbnail_large/1_3_15_1.yml +131 -71
  160. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_thumbnail_large_2x/1_3_16_1.yml +165 -0
  161. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_thumbnail_maxres/1_3_17_1.yml +165 -0
  162. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_thumbnail_medium/1_3_14_1.yml +131 -71
  163. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_thumbnail_small/1_3_13_1.yml +131 -71
  164. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_title/1_3_6_1.yml +131 -71
  165. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_videos/returns_list_of_videos_in_playlist.yml +78 -231
  166. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_that_does_not_exist_in_embed_path/_videos/1_4_2_1.yml +81 -21
  167. data/spec/lib/video_info/providers/dailymotion_spec.rb +6 -6
  168. data/spec/lib/video_info/providers/vimeo_spec.rb +21 -21
  169. data/spec/lib/video_info/providers/wistia_spec.rb +6 -6
  170. data/spec/lib/video_info/providers/youtube_playlist_spec.rb +22 -28
  171. data/spec/lib/video_info/providers/youtube_scraper_spec.rb +4 -2
  172. data/spec/lib/video_info/providers/youtube_spec.rb +28 -26
  173. data/spec/lib/video_info_spec.rb +0 -4
  174. data/spec/spec_helper.rb +6 -1
  175. data/tmp/rspec_guard_result +25 -0
  176. data/video_info.gemspec +4 -4
  177. metadata +85 -215
  178. data/.travis.yml +0 -21
  179. data/lib/video_info/providers/vkontakte.rb +0 -208
  180. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_author/1_3_18_1.yml +0 -150
  181. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_author/2_3_18_1.yml +0 -79
  182. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_author_thumbnail/1_3_17_1.yml +0 -150
  183. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_author_thumbnail/2_3_17_1.yml +0 -79
  184. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_author_url/1_3_19_1.yml +0 -150
  185. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_author_url/2_3_19_1.yml +0 -79
  186. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_thumbnail/1_3_16_1.yml +0 -222
  187. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_thumbnail/2_3_16_1.yml +0 -79
  188. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_view_count/1_3_20_1.yml +0 -150
  189. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_136971428/_view_count/2_3_20_1.yml +0 -79
  190. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_193970014/thumbnail/1_12_1_1.yml +0 -222
  191. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_193970014/thumbnail/2_12_1_1.yml +0 -75
  192. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_193970014/thumbnail_large/1_12_2_1.yml +0 -222
  193. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_193970014/thumbnail_large/2_12_2_1.yml +0 -75
  194. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_193970014/thumbnail_medium/1_12_3_1.yml +0 -222
  195. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_193970014/thumbnail_medium/2_12_3_1.yml +0 -75
  196. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_193970014/thumbnail_small/1_12_4_1.yml +0 -222
  197. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/with_video_193970014/thumbnail_small/2_12_4_1.yml +0 -75
  198. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/_available_/with_hashes/available_/1_2_6_1_1.yml +0 -86
  199. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/_available_/with_invalid_video/available_/1_2_2_1_1.yml +0 -50
  200. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/_available_/with_private_video/available_/1_2_3_1_1.yml +0 -132
  201. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/_available_/with_redirect/available_/1_2_4_1_1.yml +0 -134
  202. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/_available_/with_redirect_to_main_page_for_auth/available_/1_2_5_1_1.yml +0 -85
  203. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/_available_/with_valid_video/available_/1_2_1_1_1.yml +0 -87
  204. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_from_kirill_lyanoi_z_video2152699_168591741_2F56fd229a9dfe2dcdbe/author/1_5_14_1.yml +0 -48
  205. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_from_kirill_lyanoi_z_video2152699_168591741_2F56fd229a9dfe2dcdbe/author_thumbnail/1_5_15_1.yml +0 -48
  206. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_from_kirill_lyanoi_z_video2152699_168591741_2F56fd229a9dfe2dcdbe/author_url/1_5_16_1.yml +0 -48
  207. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_from_kirill_lyanoi_z_video2152699_168591741_2F56fd229a9dfe2dcdbe/description/1_5_8_1.yml +0 -48
  208. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_from_kirill_lyanoi_z_video2152699_168591741_2F56fd229a9dfe2dcdbe/duration/1_5_10_1.yml +0 -48
  209. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_from_kirill_lyanoi_z_video2152699_168591741_2F56fd229a9dfe2dcdbe/embed_code/1_5_6_1.yml +0 -48
  210. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_from_kirill_lyanoi_z_video2152699_168591741_2F56fd229a9dfe2dcdbe/embed_url/1_5_5_1.yml +0 -48
  211. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_from_kirill_lyanoi_z_video2152699_168591741_2F56fd229a9dfe2dcdbe/height/1_5_12_1.yml +0 -48
  212. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_from_kirill_lyanoi_z_video2152699_168591741_2F56fd229a9dfe2dcdbe/thumbnail_small/1_5_18_1.yml +0 -48
  213. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_from_kirill_lyanoi_z_video2152699_168591741_2F56fd229a9dfe2dcdbe/title/1_5_7_1.yml +0 -48
  214. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_from_kirill_lyanoi_z_video2152699_168591741_2F56fd229a9dfe2dcdbe/view_count/1_5_13_1.yml +0 -48
  215. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_from_kirill_lyanoi_z_video2152699_168591741_2F56fd229a9dfe2dcdbe/width/1_5_11_1.yml +0 -50
  216. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_https_/vk_com/id44052340_z_video61291456_159590018_2F2521d92730a272a9ea/author/1_3_7_1.yml +0 -48
  217. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_https_/vk_com/id44052340_z_video61291456_159590018_2F2521d92730a272a9ea/embed_code/1_3_6_1.yml +0 -48
  218. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_https_/vk_com/id44052340_z_video61291456_159590018_2F2521d92730a272a9ea/embed_url/1_3_5_1.yml +0 -48
  219. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_https_/vk_com/id44052340_z_video61291456_159590018_2F2521d92730a272a9ea/title/1_3_4_1.yml +0 -48
  220. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video-54799401_165822734/title/1_7_4_1.yml +0 -48
  221. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video3552522_171340713/embed_url/1_10_1_1.yml +0 -48
  222. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_161598544/description/1_6_8_1.yml +0 -48
  223. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_161598544/duration/1_6_10_1.yml +0 -48
  224. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_161598544/embed_code/1_6_6_1.yml +0 -48
  225. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_161598544/embed_url/1_6_5_1.yml +0 -48
  226. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_161598544/height/1_6_12_1.yml +0 -48
  227. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_161598544/title/1_6_7_1.yml +0 -48
  228. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_161598544/view_count/1_6_13_1.yml +0 -48
  229. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_161598544/width/1_6_11_1.yml +0 -48
  230. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_videos43640822_/video43640822_168790809/author/1_4_5_1.yml +0 -48
  231. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_videos43640822_/video43640822_168790809/author_thumbnail/1_4_6_1.yml +0 -48
  232. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_videos43640822_/video43640822_168790809/author_url/1_4_7_1.yml +0 -48
  233. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_videos43640822_/video43640822_168790809/title/1_4_4_1.yml +0 -48
  234. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/foo/_available/1_2_2_1_1.yml +0 -1447
  235. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/foo/_available/2_2_2_1_1.yml +0 -156
  236. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_available_/1_2_3_1_1.yml +0 -485
  237. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_available_/2_2_3_1_1.yml +0 -54
  238. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_date/1_2_3_11_1.yml +0 -481
  239. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_date/2_2_3_11_1.yml +0 -54
  240. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_description/1_2_3_8_1.yml +0 -483
  241. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_description/2_2_3_8_1.yml +0 -54
  242. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_duration/1_2_3_10_1.yml +0 -484
  243. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_duration/2_2_3_10_1.yml +0 -54
  244. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_keywords/1_2_3_9_1.yml +0 -484
  245. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_keywords/2_2_3_9_1.yml +0 -54
  246. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_title/1_2_3_7_1.yml +0 -484
  247. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_title/2_2_3_7_1.yml +0 -54
  248. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_view_count/1_2_2_17_1.yml +0 -485
  249. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_view_count/1_2_3_17_1.yml +0 -485
  250. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_view_count/2_2_2_17_1.yml +0 -54
  251. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_unavailable_video/_view_count/2_2_3_17_1.yml +0 -54
  252. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_video_removed_because_of_copyright_claim/_available_/1_2_4_1_1.yml +0 -484
  253. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/_available_/with_video_removed_because_of_copyright_claim/_available_/2_2_4_1_1.yml +0 -54
  254. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_view_count/1_17_16_1.yml +0 -56
  255. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_full_screen_video_URLs/_view_count/2_17_16_1.yml +0 -125
  256. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_view_count/1_3_20_1.yml +0 -56
  257. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/_view_count/2_3_20_1.yml +0 -125
  258. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/_available_/with_invalid_playlist/_available_/2_2_2_1_1.yml +0 -60
  259. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/_available_/with_list_url/_available_/2_2_3_1_1.yml +0 -94
  260. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/_available_/with_valid_playlist/_available_/2_2_1_1_1.yml +0 -94
  261. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_author/1_3_19_1.yml +0 -105
  262. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_author/2_3_19_1.yml +0 -105
  263. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_author_thumbnail/1_3_20_1.yml +0 -189
  264. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_author_thumbnail/2_3_20_1.yml +0 -189
  265. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_author_url/1_3_21_1.yml +0 -189
  266. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_author_url/2_3_21_1.yml +0 -189
  267. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_description/2_3_7_1.yml +0 -105
  268. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_keywords/2_3_8_1.yml +0 -105
  269. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_thumbnail/1_3_16_1.yml +0 -105
  270. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_thumbnail/2_3_16_1.yml +0 -105
  271. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_thumbnail_large/2_3_15_1.yml +0 -105
  272. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_thumbnail_medium/2_3_14_1.yml +0 -105
  273. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_thumbnail_small/2_3_13_1.yml +0 -105
  274. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/_title/2_3_6_1.yml +0 -105
  275. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_that_does_not_exist_in_embed_path/_videos/2_4_2_1.yml +0 -54
  276. data/spec/lib/video_info/providers/vkontakte_spec.rb +0 -236
@@ -1,85 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: http://vk.com:443/video?z=video39576223_166315543/pl_cat_updates
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- Accept-Encoding:
11
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Mozilla/5.0 (Linux; VideoInfo)
16
- - Ruby
17
- Host:
18
- - vk.com
19
- response:
20
- status:
21
- code: 400
22
- message: Bad Request
23
- headers:
24
- Server:
25
- - Apache
26
- Date:
27
- - Mon, 27 Mar 2017 21:01:24 GMT
28
- Content-Type:
29
- - text/html
30
- Content-Length:
31
- - '265'
32
- Connection:
33
- - close
34
- body:
35
- encoding: UTF-8
36
- string: "<html>\r\n<head><title>400 The plain HTTP request was sent to HTTPS
37
- port</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>400 Bad Request</h1></center>\r\n<center>The
38
- plain HTTP request was sent to HTTPS port</center>\r\n<hr><center>Apache</center>\r\n</body>\r\n</html>\r\n"
39
- http_version:
40
- recorded_at: Mon, 27 Mar 2017 21:01:24 GMT
41
- - request:
42
- method: post
43
- uri: https://vk.com/al_video.php
44
- body:
45
- encoding: US-ASCII
46
- string: User-Agent=VideoInfo%2F2.7&act=show&al=1&autoplay=0&module=profile&video=39576223_166315543
47
- headers:
48
- Accept-Encoding:
49
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
50
- Accept:
51
- - "*/*"
52
- User-Agent:
53
- - Mozilla/5.0 (Linux; VideoInfo)
54
- - Ruby
55
- response:
56
- status:
57
- code: 200
58
- message: OK
59
- headers:
60
- Server:
61
- - Apache
62
- Date:
63
- - Mon, 27 Mar 2017 21:01:26 GMT
64
- Content-Type:
65
- - text/html; charset=windows-1251
66
- Content-Length:
67
- - '98'
68
- Connection:
69
- - keep-alive
70
- X-Powered-By:
71
- - PHP/3.12334
72
- Set-Cookie:
73
- - remixlang=3; expires=Wed, 21 Mar 2018 00:47:55 GMT; path=/; domain=.vk.com
74
- Pragma:
75
- - no-cache
76
- Cache-Control:
77
- - no-store
78
- Strict-Transport-Security:
79
- - max-age=0
80
- body:
81
- encoding: ASCII-8BIT
82
- string: "<!--3326840723228<!><!>3<!>3704<!>8<!>Access denied (5)<!><!>57460364<!><!pageview_candidate>"
83
- http_version:
84
- recorded_at: Mon, 27 Mar 2017 21:01:26 GMT
85
- recorded_with: VCR 3.0.3
@@ -1,87 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: http://vk.com:443/videos39576223?z=video39576223_165607445/pl_39576223_-2
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- Accept-Encoding:
11
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Mozilla/5.0 (Linux; VideoInfo)
16
- - Ruby
17
- Host:
18
- - vk.com
19
- response:
20
- status:
21
- code: 400
22
- message: Bad Request
23
- headers:
24
- Server:
25
- - Apache
26
- Date:
27
- - Mon, 27 Mar 2017 21:01:18 GMT
28
- Content-Type:
29
- - text/html
30
- Content-Length:
31
- - '267'
32
- Connection:
33
- - close
34
- body:
35
- encoding: UTF-8
36
- string: "<html>\r\n<head><title>400 The plain HTTP request was sent to HTTPS
37
- port</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>400 Bad Request</h1></center>\r\n<center>The
38
- plain HTTP request was sent to HTTPS port</center>\r\n<hr><center> Apache
39
- </center>\r\n</body>\r\n</html>\r\n"
40
- http_version:
41
- recorded_at: Mon, 27 Mar 2017 21:01:19 GMT
42
- - request:
43
- method: post
44
- uri: https://vk.com/al_video.php
45
- body:
46
- encoding: US-ASCII
47
- string: User-Agent=VideoInfo%2F2.7&act=show&al=1&autoplay=0&module=profile&video=39576223_165607445
48
- headers:
49
- Accept-Encoding:
50
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
51
- Accept:
52
- - "*/*"
53
- User-Agent:
54
- - Mozilla/5.0 (Linux; VideoInfo)
55
- - Ruby
56
- response:
57
- status:
58
- code: 200
59
- message: OK
60
- headers:
61
- Server:
62
- - Apache
63
- Date:
64
- - Mon, 27 Mar 2017 21:01:19 GMT
65
- Content-Type:
66
- - text/html; charset=windows-1251
67
- Content-Length:
68
- - '10435'
69
- Connection:
70
- - keep-alive
71
- X-Powered-By:
72
- - PHP/3.12334
73
- Set-Cookie:
74
- - remixlang=3; expires=Thu, 05 Apr 2018 15:35:36 GMT; path=/; domain=.vk.com
75
- Pragma:
76
- - no-cache
77
- Cache-Control:
78
- - no-store
79
- Strict-Transport-Security:
80
- - max-age=0
81
- body:
82
- encoding: ASCII-8BIT
83
- string: !binary |-
84
- PCEtLTMzMjY4NDA3MjMyMjg8IT51aV9tZWRpYV9zZWxlY3Rvci5qcyx1aV9tZWRpYV9zZWxlY3Rvci5jc3MsZW1vamkuanMsbm90aWZpZXIuY3NzLHZpZGVvdmlldy5qcyx2aWRlb3ZpZXcuY3NzLHBhZ2UuanMscGFnZS5jc3MscG9zdC5jc3MsdWlfY29udHJvbHMuanMsdWlfY29udHJvbHMuY3NzPCE+MzwhPjM3MDQ8IT4wPCE+9S/0ICZxdW90O9Hl7OXp7e7lIOTl6+4mcXVvdDs8IT48ZGl2IGlkPSJ2aWRlb19ib3hfd3JhcDM5NTc2MjIzXzE2NTYwNzQ0NSIgY2xhc3M9InZpZGVvX2JveF93cmFwIj4KICA8ZGl2IGNsYXNzPSJ2aWRlb19ib3hfbXNnIj4KICAgIDxkaXYgY2xhc3M9InZpZGVvX2JveF9tc2dfYmFja2dyb3VuZCIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vcHAudXNlcmFwaS5jb20vYzEyOTQ3L3UyNzA5MTQ4L3ZpZGVvL2xfN2NhZWIxNWUuanBnKTsiPjwvZGl2PgogICAgPGRpdiBjbGFzcz0idmlkZW9fYm94X21zZ190ZXh0Ij5UaGUgbGF0ZXN0IHZlcnNpb24gb2YgPGEgaHJlZj0iaHR0cDovL2dldC5hZG9iZS5jb20vZmxhc2giIHRhcmdldD0iX2JsYW5rIj5GbGFzaCZuYnNwO1BsYXllcjwvYT4gaXMgcmVxdWlyZWQgdG8gdmlldyB2aWRlb3MuPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjwhPgphZGRUZW1wbGF0ZXMoeyJfIjoiXyIsImF1ZGlvX3JvdyI6IjxkaXYgY2xhc3M9XCJhdWRpb19yb3cgX2F1ZGlvX3JvdyBfYXVkaW9fcm93XyUxJV8lMCUgJWNscyUgY2xlYXJfZml4XCIgb25jbGljaz1cInJldHVybiBnZXRBdWRpb1BsYXllcigpLnRvZ2dsZUF1ZGlvKHRoaXMsIGV2ZW50KVwiIGRhdGEtYXVkaW89XCIlc2VyaWFsaXplZCVcIiBkYXRhLWZ1bGwtaWQ9XCIlMSVfJTAlXCIgaWQ9XCJhdWRpb18lMSVfJTAlXCI+XG4gIDxkaXYgY2xhc3M9XCJhdWRpb19wbGF5X3dyYXBcIiBkYXRhLW5vZHJhZz1cIjFcIj48YnV0dG9uIGNsYXNzPVwiYXVkaW9fcGxheSBfYXVkaW9fcGxheVwiIGlkPVwicGxheV8lMSVfJTAlXCIgYXJpYS1sYWJlbD1cIlwiPjxcL2J1dHRvbj48XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJhdWRpb19pbmZvXCI+XG4gICAgPGRpdiBjbGFzcz1cImF1ZGlvX2R1cmF0aW9uX3dyYXAgX2F1ZGlvX2R1cmF0aW9uX3dyYXBcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJhdWRpb19ocV9sYWJlbFwiPjxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJhdWRpb19kdXJhdGlvbiBfYXVkaW9fZHVyYXRpb25cIj4lZHVyYXRpb24lPFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdHNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwicmVjb21cIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiIG9uY2xpY2s9XCJBdWRpb1BhZ2UodGhpcykuc2hvd1JlY29tcyh0aGlzLCAnJTElXyUwJScsIGV2ZW50KVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwibmV4dFwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cImdldEF1ZGlvUGxheWVyKCkuc2V0TmV4dCh0aGlzLCBldmVudClcIj48ZGl2PjxcL2Rpdj48XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdWRpb19hY3RcIiBpZD1cImVkaXRcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiIG9uY2xpY2s9XCJBdWRpb1BhZ2UodGhpcykuZWRpdEF1ZGlvKHRoaXMsICclMSVfJTAlJywgZXZlbnQpXCI+PGRpdj48XC9kaXY+PFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0IF9hdWRpb19hY3RfZGVsZXRlXCIgaWQ9XCJkZWxldGVcIiBvbmNsaWNrPVwiQXVkaW9QYWdlKHRoaXMpLmRlbGV0ZUF1ZGlvKHRoaXMsICclMSVfJTAlJywgZXZlbnQpXCIgb25tb3VzZW92ZXI9XCJhdWRpb1Nob3dBY3Rpb25Ub29sdGlwKHRoaXMsICclMSVfJTAlJylcIj48ZGl2PjxcL2Rpdj48XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdWRpb19hY3RcIiBpZD1cImFkZFwiIG9uY2xpY2s9XCJyZXR1cm4gYWRkQXVkaW8odGhpcywgZXZlbnQpXCIgb25tb3VzZW92ZXI9XCJhdWRpb1Nob3dBY3Rpb25Ub29sdGlwKHRoaXMsICclMSVfJTAlJylcIj48ZGl2PjxcL2Rpdj48XC9kaXY+XG4gICAgICAgIFxuICAgICAgICBcbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImF1ZGlvX3RpdGxlX3dyYXBcIlxuICAgICA+PGEgaHJlZj1cIiVzZWFyY2hfaHJlZiVcIiBvbm1vdXNlb3Zlcj1cInNldFRpdGxlKHRoaXMpXCIgbm9kcmFnPVwiMVwiIG9uY2xpY2s9XCJyZXR1cm4gYXVkaW9TZWFyY2hQZXJmb3JtZXIodGhpcywgZXZlbnQpXCIgY2xhc3M9XCJhdWRpb19wZXJmb3JtZXJcIj4lNCU8XC9hXG4gICAgID48c3BhbiBjbGFzcz1cImF1ZGlvX2luZm9fZGl2aWRlclwiPiZuZGFzaDs8XC9zcGFuXG4gICAgID48c3BhbiBjbGFzcz1cImF1ZGlvX3RpdGxlIF9hdWRpb190aXRsZVwiIG9ubW91c2VvdmVyPVwic2V0VGl0bGUodGhpcywgZG9tUE4odGhpcykpXCJcbiAgICAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9fdGl0bGVfaW5uZXJcIiB0YWJpbmRleD1cIjBcIiBub2RyYWc9XCIxXCIgYXJpYS1sYWJlbD1cIiUzJVwiIG9uY2xpY2s9XCJyZXR1cm4gdG9nZ2xlQXVkaW9MeXJpY3MoZXZlbnQsIHRoaXMsICclMSVfJTAlJywgJyU5JScpXCI+JTMlPFwvc3Bhbj5cbiAgICAgICAgXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYXVkaW9fYXV0aG9yXCIgb25jbGljaz1cImN1ci5jYW5jZWxDbGljaz10cnVlXCI+JTglPFwvc3Bhbj5cbiAgICAgIDxcL3NwYW5cbiAgICA+PFwvZGl2PlxuICA8XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJfYXVkaW9fcGxheWVyX3dyYXBcIj48XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJfYXVkaW9fbHlyaWNzX3dyYXAgYXVkaW9fbHlyaWNzXCIgZGF0YS1ub2RyYWc9XCIxXCI+PFwvZGl2PlxuPFwvZGl2PiIsImF1ZGlvX2JpdHNfdG9fY2xzIjoie1wiMVwiOlwiaW5saW5lZFwiLFwiMlwiOlwibHlyaWNzXCIsXCI0XCI6XCJjYW5lZGl0XCIsXCI4XCI6XCJjYW5hZGRcIixcIjY0XCI6XCJyZWNvbXNcIixcIjE2XCI6XCJjbGFpbWVkXCIsXCIzMlwiOlwiY2xhaW1lZF90aXRsZVwiLFwiMjU2XCI6XCJmcm9tX3F1ZXVlXCIsXCI1MTJcIjpcImhxXCIsXCIzMjc2OFwiOlwibHRiXCIsXCIxNjM4NFwiOlwibHBiXCIsXCI0MDk2XCI6XCJjbGFpbV9oaWRkZW5cIixcIjIwNDhcIjpcImNsYWltX21vZGVcIixcIjgxOTJcIjpcImNsYWltX3VtYVwifSJ9KTsKbXZjdXIubXZEYXRhLmFkZGVkVmlkZW8gPSAnMzk1NzYyMjNfMTY1NjA3NDQ1JzsgCm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvSGFzaCA9ICc1ZDlkZjczYmJjYWJiY2I5MmInOyAKbXZjdXIubXZEYXRhLmFkZGVkVmlkZW9TaGFyZUhhc2ggPSAnODZmYWY4ZTJlZWU4YzQ1NmI2JzsKbXZjdXIubXZEYXRhLm5lZWRzTmV3ID0gMTs8IT4KCjxkaXYgY2xhc3M9Im12X2luZm9fd2lkZV9jb2x1bW4gZmxfbCI+CiAgCiAgPGRpdiBjbGFzcz0ibXZfdGl0bGVfYmxvY2siPgogICAgPGRpdiBpZD0ibXZfdmlld3MiIGNsYXNzPSJtdl92aWV3c19jb3VudCAiIG9ubW91c2VvdmVyPSIiPjkgdmlld3M8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3RpdGxlIiBpZD0ibXZfdGl0bGUiPvUv9CAmcXVvdDvR5ezl6e3u5SDk5evuJnF1b3Q7PC9kaXY+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfYWN0aW9uc19ibG9jayIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImZsYXRfYnV0dG9uIHNlY29uZGFyeSBidXR0b25fbGlnaHQgbXZfc2hhcmVfYnV0dG9uIiBzdHlsZT0iZGlzcGxheTpub25lOyIgb25jbGljaz0idmlkZW92aWV3LnNlbmRWaWRlbygpOyI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X3NoYXJlX2ljb24iPjwvc3Bhbj5TaGFyZQogICAgICA8L2Rpdj4KICAgICAgPGRpdiBpZD0ibXZfYWRkX3dyYXAiPjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJmbGF0X2J1dHRvbiBzZWNvbmRhcnkgYnV0dG9uX2xpZ2h0IG12X2VkaXRfYnV0dG9uIiBvbmNsaWNrPSJyZXR1cm4gdmlkZW92aWV3LnNob3dFZGl0Qm94KDE2NTYwNzQ0NSwgMzk1NzYyMjMpIiBpZD0ibXZfZWRpdF9idXR0b24iPgogICAgICAgIDxzcGFuIGNsYXNzPSJtdl9lZGl0X2ljb24iPjwvc3Bhbj5FZGl0IHZpZGVvCiAgICAgIDwvZGl2PgogICAgICAKICAgICAgPGRpdiBjbGFzcz0ibXZfbW9yZSBmbF9sIiBpZD0ibXZfbW9yZSI+TW9yZTwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+CiAgCiAgPGRpdiBjbGFzcz0ibXZfYXV0aG9yX2Jsb2NrIj4KICAgIDxkaXYgY2xhc3M9ImNsZWFyX2ZpeCI+CiAgICAgIDxhIGhyZWY9Ii9kcmFrbWFpbCIgY2xhc3M9Im12X2F1dGhvcl9waG90b193cmFwIGZsX2wiPgogICAgICAgIDxpbWcgaWQ9Im12X2F1dGhvcl9waG90byIgY2xhc3M9Im12X2F1dGhvcl9waG90byIgc3JjPSJodHRwczovL3BwLnVzZXJhcGkuY29tL2M2MjQ1MjEvdjYyNDUyMTIyMy8zYzI4OC9sVmNWVzdMTm5yUS5qcGciPgogICAgICA8L2E+CiAgICAgIDxkaXYgY2xhc3M9Im12X2F1dGhvcl9pbmZvIGZsX2wiPgogICAgICAgIDxkaXYgY2xhc3M9Im12X2F1dGhvcl9uYW1lIj4KICAgICAgICAgIDxhIGNsYXNzPSJtZW1fbGluayIgaHJlZj0iL2RyYWttYWlsIj5BbGV4YW5kZXIgTWFzbG92PC9hPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im12X2luZm9fZGF0ZSI+SnVuIDEyLCAyMDEzIGF0IDM6MjUgcG08L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIAogICAgICAKICAgIDwvZGl2PgogIDwvZGl2PgogIDxkaXYgY2xhc3M9Im12X2Rlc2NyaXB0aW9uX2Jsb2NrIj4KICA8ZGl2IGNsYXNzPSJzZWxlY3RfZml4IGNsZWFyX2ZpeCI+CiAgICA8ZGl2IGlkPSJtdl9kZXNjcmlwdGlvbiIgY2xhc3M9Im12X2Rlc2MiPgogIDxkaXYgY2xhc3M9ImpzX212X2Rlc2NyX2ZpZWxkIGNhbnRfZWRpdCIgaWQ9Im12X2Rlc2NyX2ZpZWxkIj7P8Ojs5ffg7ejlOiDo5y3n4CDr5e3oIOgg4eXn5+Dr4OHl8O3u4+4g7+7i5eTl7ej/IO7k7e7j7iDj4OLt/urgLezu7fLg5ujx8uAg4iD06Ov87OUg7vLx8/Lx8uLz/vIg8e7i8OXs5e3t++Ug8e/l9v309OXq8vsg6CDj8ODs7vLt7vHy/CDw8/Hx6u7pIPDl9+gsIO7k7eDq7iDq7uzo8fHo5ekgw+7xzO7x9Ojr/Ozu9O7t5OAg4vHlIOblIPDl+OXt7iDh++vuIO/z8fLo8vwg5ePuIOIg7ODx8e7i++kg7/Du6uDyLiAmcXVvdDvN4OTl/vH8IO3l6ujlIO3l5O7k5evq6CDt5SDv7uzl+OD+8iDi4Owg7+7r8/fo8vwg6PHy6O3t7uUg8+Tu4i4uPC9kaXY+CiAgPGEgaWQ9Im12X2Rlc2NyX2V4cGFuZF90b2dnbGUiIGNsYXNzPSJ3YWxsX3Bvc3RfbW9yZSIgc3R5bGU9IiIgb25jbGljaz0iVmlkZW92aWV3LmV4cGFuZERlc2NyKHRoaXMpIj5FeHBhbmQgdGV4dIU8L2E+CiAgPGRpdiBpZD0ibXZfZGVzY19mdWxsX3RleHQiPs/w6Ozl9+Dt6OU6IOjnLefgIOvl7egg6CDh5efn4Ovg4eXw7e7j7iDv7uLl5OXt6P8g7uTt7uPuIOPg4u3+6uAt7O7t8uDm6PHy4CDiIPTo6/zs5SDu8vHz8vHy4vP+8iDx7uLw5ezl7e375SDx7+X2/fT05ery+yDoIOPw4Ozu8u3u8fL8IPDz8fHq7ukg8OX36Cwg7uTt4OruIOru7Ojx8ejl6SDD7vHM7vH06Ov87O707u3k4CDi8eUg5uUg8OX45e3uIOH76+4g7/Px8ujy/CDl4+4g4iDs4PHx7uL76SDv8O7q4PIuICZxdW90O83g5OX+8fwg7eXq6OUg7eXk7uTl6+roIO3lIO/u7OX44P7yIOLg7CDv7uvz9+jy/CDo8fLo7e3u5SDz5O7i7uv88fLi6OUg7vIg8eXj7iwg7eUg7+7h7v7x/CD98u7j7iDx6+7i4Cwg6ujt7vjl5OXi8OAsIO/u8u7sIOgg6vDu4vz+IPHt//Lu4+4g7eAg5uji7u/o8e379SDv8O7x8u7w4PUgyvPn/Ozo7fHq7uPuIOvl8e7v4PDq4CZxdW90OyAo0OXm6PHx5fAg6CDo8e/u6+3o8uXr/CDj6+Di7e7pIPDu6+ggwC7RLiDR8vPv6O0pLjwvZGl2PgogIDxkaXYgY2xhc3M9InByICIgaWQ9Im12X2lubGluZV9lZGl0X3ByIj48ZGl2IGNsYXNzPSJwcl9idCI+PC9kaXY+PGRpdiBjbGFzcz0icHJfYnQiPjwvZGl2PjxkaXYgY2xhc3M9InByX2J0Ij48L2Rpdj48L2Rpdj4KPC9kaXY+CiAgPC9kaXY+CjwvZGl2PgogIDxkaXYgY2xhc3M9Im12X2NvbW1lbnRzX2Jsb2NrIHdhbGxfbW9kdWxlIj4KICAgIDxkaXYgaWQ9InBvc3QzOTU3NjIyM192aWRlbzE2NTYwNzQ0NW12Ij4KICAgICAgPGRpdiBpZD0ibXZfY29tbWVudHNfd3JhcCI+CiAgPGRpdiBpZD0ibXZfY29tbWVudHNfaGVhZGVyIiBvbmNsaWNrPSJWaWRlb3ZpZXcubW9yZUNvbW1lbnRzKCk7IiBjbGFzcz0ibXZfY29tbWVudHNfZXhwYW5kZWQiPjwvZGl2PgogIDxkaXYgaWQ9Im12X2NvbW1lbnRzX3N1bW1hcnkiIGNsYXNzPSJtdl9jb21tZW50c19zdW1tYXJ5IG12X2NvbW1lbnRzX2V4cGFuZGVkIiBzdHlsZT0iZGlzcGxheTpub25lOyI+PC9kaXY+CiAgPGRpdiBpZD0ibXZfY29tbWVudHMiPjwvZGl2Pgo8L2Rpdj4KICAgICAgCiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9Im12X2luZm9fbmFycm93X2NvbHVtbiBmbF9yIj4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9ibG9jayI+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21fYmxvY2tfdGl0bGUiPk90aGVyIHZpZGVvczwvZGl2PgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8tNDUyODAwNTVfNDU2MjM5ODE0IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCctNDUyODAwNTVfNDU2MjM5ODE0JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M2MzkyMjQvdjYzOTIyNDA1NS8xNGY1ZS9rSGFpR1FNdk5iay5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4zOjI0PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvLTQ1MjgwMDU1XzQ1NjIzOTgxNCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnLTQ1MjgwMDU1XzQ1NjIzOTgxNCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9Isrg4uXwIO3gIO/l8e3+IEl0IEFpbiB0IE1lIC0gS3lnbyAmYW1wOyBTZWxlbmEgR29tZXog7vIg7/Dl6vDg8e379SBCb3ljZSBBdmVudWUiPsrg4uXwIO3gIO/l8e3+IEl0IEFpbiB0IE1lIC0gS3lnbyAmYW1wOyBTZWxlbmEgR29tZXog7vIg7/Dl6vDg8e379SBCb3ljZSBBdmVudWU8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjY4LDkyOCB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvLTkzODA4MzE3XzQ1NjI0MDY3OCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnLTkzODA4MzE3XzQ1NjI0MDY3OCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjM5MzIwL3Y2MzkzMjAzMTcvMTQ2ZTkvMjV2NXJrMTVJY3cuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+NDozODwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlby05MzgwODMxN180NTYyNDA2NzgiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJy05MzgwODMxN180NTYyNDA2NzgnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSLE5eLz+OrgIOIg7uTo7e736vMg8fvj8ODr4CDv5fHt/iDn4CD25evz/iDj8PPv7/MiPsTl4vP46uAg4iDu5Ojt7vfq8yDx++Pw4OvgIO/l8e3+IOfgIPbl6/P+IOPw8+/v8zwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+ODYsNzYyIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8tNDUyODAwNTVfNDU2MjM5ODA1IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCctNDUyODAwNTVfNDU2MjM5ODA1JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M2MzgwMjAvdjYzODAyMDA1NS8zNTk4Zi9LelYwSzZXdDZzay5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4zOjE3PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvLTQ1MjgwMDU1XzQ1NjIzOTgwNSIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnLTQ1MjgwMDU1XzQ1NjIzOTgwNScsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9Isrg4uXwIO3gIO/l8e3+IEthdHkgUGVycnkgLSBDaGFpbmVkIFRvIFRoZSBSaHl0aG0gKENvdmVyIFJhdWFuKSI+yuDi5fAg7eAg7+Xx7f4gS2F0eSBQZXJyeSAtIENoYWluZWQgVG8gVGhlIFJoeXRobSAoQ292ZXIgUmF1YW4pPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj4yMDksMjM5IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8tNjY2NjY5NzNfNDU2MjM5NDA1IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCctNjY2NjY5NzNfNDU2MjM5NDA1JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M2MzkzMTkvdjYzOTMxOTE2My9lY2NiL29USjBUNmdqVEIwLmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjU6MzA8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8tNjY2NjY5NzNfNDU2MjM5NDA1IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCctNjY2NjY5NzNfNDU2MjM5NDA1JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iR0VFSyDN7uLu8fLoLiBCcmF6emVycyDx7f/r4CCrz/Do5/Dg6iDiIOTu8e/l9eD1uyDk6/8g4ufw7vHr+/UsIOAg4iDA7OXw6OrlIODw5fHy7uLg6+ggxObu6uXw4CI+R0VFSyDN7uLu8fLoLiBCcmF6emVycyDx7f/r4CCrz/Do5/Dg6iDiIOTu8e/l9eD1uyDk6/8g4ufw7vHr+/UsIOAg4iDA7OXw6OrlIODw5fHy7uLg6+ggxObu6uXw4DwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MTksNzI1IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8tMzc0MTYwMThfNDU2MjM5MDU3IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCctMzc0MTYwMThfNDU2MjM5MDU3JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M4MzY2MjUvdjgzNjYyNTAxOC8yZTg4Yi9na21pX1ZScndIRS5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4xOjAwPC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvLTM3NDE2MDE4XzQ1NjIzOTA1NyIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnLTM3NDE2MDE4XzQ1NjIzOTA1NycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IsDt7eAgyuvo4uvl7eQg5Ov/IEhhcnBlciYjMzk7cyBCYXphYXIg0O7x8ej/Ij7A7e3gIMrr6OLr5e3kIOTr/yBIYXJwZXImIzM5O3MgQmF6YWFyINDu8fHo/zwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+NzcsMjI5IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8tNTIyNTc3MTBfNDU2MjM5MDc4IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCctNTIyNTc3MTBfNDU2MjM5MDc4JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M2Mzk3MjgvdjYzOTcyODQ2My8xNWI4YS93WVNGUmRZUWtzNC5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4yNzoxNzwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlby01MjI1NzcxMF80NTYyMzkwNzgiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJy01MjI1NzcxMF80NTYyMzkwNzgnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSJCb2xzaG9pIFRoZWF0cmUgb2YgUnVzc2lhIC8gwe7r/Pju6SDy5eDy8CDQ7vHx6OgglyBMaXZlIj5Cb2xzaG9pIFRoZWF0cmUgb2YgUnVzc2lhIC8gwe7r/Pju6SDy5eDy8CDQ7vHx6OgglyBMaXZlPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj45MCwyOTUgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlby0yNzQzOTM2N180NTYyNDA4OTAiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJy0yNzQzOTM2N180NTYyNDA4OTAnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzYzNzkyNy92NjM3OTI3MzY3LzM3OTA5L25ZaXZGMUM4alFVLmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjM6MjI8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8tMjc0MzkzNjdfNDU2MjQwODkwIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCctMjc0MzkzNjdfNDU2MjQwODkwJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iUk9DS0FCWUUgLSBDbGVhbiBCYW5kaXQgKOrg4uXwIOIg7OD46O3lKSBTaGlybGV5IFNldGlhICBLSFMgQ09WRVIiPlJPQ0tBQllFIC0gQ2xlYW4gQmFuZGl0ICjq4OLl8CDiIOzg+Ojt5SkgU2hpcmxleSBTZXRpYSAgS0hTIENPVkVSPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj4zMDMsOTM4IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8tMjM5NzgxXzQ1NjIzOTA1NCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnLTIzOTc4MV80NTYyMzkwNTQnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzgzNzIzOC92ODM3MjM4NzgxLzNiZjNiL01BanVCTEhnNzh3LmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjI6MDE8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8tMjM5NzgxXzQ1NjIzOTA1NCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnLTIzOTc4MV80NTYyMzkwNTQnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSLP8ODi7iDt4CDy5e/r7i4gyujw6OvrIMji4O3u4iAo0cHP1ykiPs/w4OLuIO3gIPLl7+vuLiDK6PDo6+sgyOLg7e7iICjRwc/XKTwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+NDUsMzg1IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8tNDUyODAwNTVfNDU2MjM5ODE0IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCctNDUyODAwNTVfNDU2MjM5ODE0JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M2MzkyMjQvdjYzOTIyNDA1NS8xNGY1ZS9rSGFpR1FNdk5iay5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4zOjI0PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvLTQ1MjgwMDU1XzQ1NjIzOTgxNCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnLTQ1MjgwMDU1XzQ1NjIzOTgxNCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9Isrg4uXwIO3gIO/l8e3+IEl0IEFpbiB0IE1lIC0gS3lnbyAmYW1wOyBTZWxlbmEgR29tZXog7vIg7/Dl6vDg8e379SBCb3ljZSBBdmVudWUiPsrg4uXwIO3gIO/l8e3+IEl0IEFpbiB0IE1lIC0gS3lnbyAmYW1wOyBTZWxlbmEgR29tZXog7vIg7/Dl6vDg8e379SBCb3ljZSBBdmVudWU8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjY4LDkyOCB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvLTM1MzMyNF80NTYyNDA0MTkiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJy0zNTMzMjRfNDU2MjQwNDE5JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL2NzNTQxNjA2LnVzZXJhcGkuY29tL2M4MzY0MjAvdjgzNjQyMDk0MS8yZTllNi9DODljaDV6TjMwdy5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4xMToyNjwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlby0zNTMzMjRfNDU2MjQwNDE5IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCctMzUzMzI0XzQ1NjI0MDQxOScsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IqvP8Ojn8ODqIOIg5O7x7+X14PW7LCBMZWFndWUgb2YgTGVnZW5kcyDoIOjj8O7i7ukg7e7z8uHz6iDu8iBBY2VyIOIg7+Xw5eTg9+Ugq83g4ujj4PLu8CD26PTw7uLu4+4g7Ojw4LsgKOL77/Px6iA4KSI+q8/w6Ofw4Oog4iDk7vHv5fXg9bssIExlYWd1ZSBvZiBMZWdlbmRzIOgg6OPw7uLu6SDt7vPy4fPqIO7yIEFjZXIg4iDv5fDl5OD35SCrzeDi6OPg8u7wIPbo9PDu4u7j7iDs6PDguyAo4vvv8/HqIDgpPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj4zMCw0MDggdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj48IT48IT48IWpzb24+eyJsYW5nIjp7Imdsb2JhbF9zaG9ydF9kYXRlX3RpbWUiOlsiIiwie2RheX0ge21vbnRofSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInllc3RlcmRheSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInRvZGF5IGF0IHtob3VyfTp7bWludXRlfSB7YW1fcG19IiwidG9tb3Jyb3cgYXQge2hvdXJ9OnttaW51dGV9IHthbV9wbX0iXSwicmVwbHlfdG9fcG9zdCI6IllvdXIgY29tbWVudC4uIiwid2FsbF9NX3JlcGxpZXNfb2ZfTiI6WyIiLCIlcyBjb21tZW50IG9mIHtsaW5rfXthbGx9e1wvbGlua30iLCIlcyBjb21tZW50cyBvZiB7bGlua317YWxsfXtcL2xpbmt9Il0sIndhbGxfbW9yZV9yZXBsaWVzIjpbIiIsInNob3cgJXMgbW9yZSBjb21tZW50Iiwic2hvdyAlcyBtb3JlIGNvbW1lbnRzIl0sIndhbGxfYWxsX3JlcGxpZXMiOiJhbGwgY29tbWVudHMiLCJkb250X2F0dGFjaCI6IlJlbW92ZSBhdHRhY2htZW50IiwidmlkZW9fWF9jb21tcyI6WyIiLCIlcyBjb21tZW50IiwiJXMgY29tbWVudHMiXSwidmlkZW9fZWRpdCI6IkVkaXQgdmlkZW8iLCJ2aWRlb19lZGl0X2Rlc2MiOiJFZGl0IGRlc2NyaXB0aW9uIiwidmlkZW9fZWRpdF9kZXNjX2ludHJvIjoiRW50ZXIgZGVzY3JpcHRpb24iLCJ2aWRlb19zaG93X3ByZXZpb3VzX2NvbW1lbnRzIjpbIiIsIlNob3cgJXMgcHJldmlvdXMgY29tbWVudCIsIlNob3cgJXMgcHJldmlvdXMgY29tbWVudHMiXSwidmlkZW9fYXJlX3lvdV9zdXJlX2Nsb3NlIjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGNsb3NlIHRoaXMgdmlkZW8/IiwidmlkZW9fYXJlX3lvdV9zdXJlX2Nsb3NlX3RpdGxlIjoiQ2xvc2UgdmlkZW8iLCJwcm9maWxlX21lbnRpb25fbm90X2ZvdW5kIjoiVXNlciB3YXMgbm90IGZvdW5kIiwicHJvZmlsZV9tZW50aW9uX3N0YXJ0X3R5cGluZyI6IlN0YXJ0IHR5cGluZyBhIG5hbWUuLiIsInZpZGVvX2FsYnVtX2lzX3ByaXZhdGVfdHQiOiJUaGlzIGFsYnVtIGlzIHByaXZhdGUiLCJ2aWRlb19hZGRfdG9fbXlfcGxheWxpc3QiOiJBZGQgdG8gTXkgVmlkZW9zIiwidmlkZW9fYWRkZWRfdG9fbXlfcGxheWxpc3QiOiJBZGRlZCIsInZpZGVvX2NoYW5nZXNfc2F2ZWQiOiJDaGFuZ2VzIHNhdmVkIiwidmlkZW9fYWRkX2FsYnVtIjoiQ3JlYXRlIGFsYnVtIiwidmlkZW9fYWRkX3ByaXZhdGVfYWxidW0iOiJDcmVhdGUgYSBwcml2YXRlIGFsYnVtIiwidmlkZW9fYWRkX3RvX2dyb3VwIjoiQWRkIHRvIGNvbW11bml0eSIsInZpZGVvX2V4cG9ydF9hY3Rpb24iOiJFeHBvcnQiLCJ2aWRlb19zdGF0aXN0aWNzIjoiU3RhdGlzdGljcyIsInZpZGVvX2NvbXBsYWluIjoiUmVwb3J0IiwidmlkZW9fc2VsZWN0X2FsYnVtcyI6IlNlbGVjdCBhbGJ1bXMiLCJ2aWRlb190Y19zdXJlX2RlbGV0ZSI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyB2aWRlbz88YnI+PGJyPllvdSB3aWxsIG5vdCBiZSBhYmxlIHRvIHJlc3RvcmUgdGFncyBhbmQgY29tbWVudHMuIiwidmlkZW9fdGNfZGVsZXRlIjoiRGVsZXRlIiwidmlkZW9fZGVsZXRlX2RpYWxvZ190aXRsZSI6IkRlbGV0ZSB2aWRlbyIsInZpZGVvX2RlbGV0ZV9ib3hfbm9fdGl0bGUiOiJObyIsInZpZGVvX21lbnVfZGVsZXRlIjoiRGVsZXRlIHZpZGVvIiwidmlkZW9fdmlld3NfY291bnRfdHRfdGV4dCI6Ik9yaWdpbmFsIHZpZGVvIHZpZXdzICh0b3RhbCB2aWV3cykiLCJ2aWRlb19vbmx5X3ByaXZhdGVfdmlkZW8iOiJUaGlzIHZpZGVvIGNhbiBvbmx5IGJlIGFkZGVkIHRvIGEgcHJpdmF0ZSBhbGJ1bSIsInZpZGVvX2xlYXZlX2Nsb3NlZF9ncm91cF90aXRsZSI6IkxlYXZlIGNsb3NlZCBjb21tdW5pdHkiLCJ2aWRlb19sZWF2ZV9jbG9zZWRfZ3JvdXBfdGV4dCI6IllvdSBhcmUgYWJvdXQgdG8gbGVhdmUgYSBjbG9zZWQgY29tbXVuaXR5LiBJdCBtYXkgbm90IGJlIHRoYXQgZWFzeSB0byBjb21lIGJhY2suIExlYXZlIHRoZSBjb21tdW5pdHk/IiwidmlkZW9fbGVhdmVfYWRtaW5lZF9ncm91cF90ZXh0IjoiWW91IGFyZSBhbiA8Yj5hZG1pbmlzdHJhdG9yPFwvYj4gaW4gdGhpcyBjb21tdW5pdHkuIFlvdSB3aWxsIGxvc2UgdGhpcyBwb3NpdGlvbiBpZiB5b3UgbGVhdmUgbm93LiBMZWF2ZSB0aGUgY29tbXVuaXR5PyIsInZpZGVvX3ZpZXdfc3Vic2NyaWJlX3RvX2F1dGhvciI6IlN1YnNjcmliZSIsInZpZGVvX3ZpZXdfc3Vic2NyaWJlZF9tc2ciOiJGb2xsb3dpbmciLCJ2aWRlb19wbGF5ZXJfbmV4dF90aXRsZSI6Ik5leHQgdmlkZW8iLCJ2aWRlb19pX2xpa2UiOiJMaWtlIiwidmlkZW9fc2hhcmVfd2l0aF9mcmllbmRzIjoiU2hhcmUiLCJ2aWRlb19hZGRfZmxhc2giOiJBZGQgdG8gTXkgVmlkZW9zIiwidmlkZW9fYWRkZWRfZmxhc2giOiJWaWRlbyBhZGRlZCB0byBNeSBWaWRlb3MiLCJ2aWRlb19jb21tZW50c19zdW1tYXJ5IjpbIiIsIiVzIGNvbW1lbnQiLCIlcyBjb21tZW50cyJdLCJ2aWRlb19OX3ZpZXdzX2xpc3QiOlsiIiwiJXMgdmlldyIsIiVzIHZpZXdzIl0sInZpZGVvX3BsYXlsaXN0X3JldmVyc2VfdHQiOiJSZXZlcnNlIG9yZGVyIiwidmlkZW9fcGxheWxpc3RfYXV0b3BsYXlfZGlzYWJsZV90dCI6IkRpc2FibGUgYXV0b3BsYXkiLCJ2aWRlb19wbGF5bGlzdF9hdXRvcGxheV9lbmFibGVfdHQiOiJFbmFibGUgYXV0b3BsYXkiLCJ2aWRlb19saXZlX05fd2F0Y2hpbmciOlsiIiwiJXMgaXMgd2F0Y2hpbmcgbm93IiwiJXMgYXJlIHdhdGNoaW5nIG5vdyJdLCJ2aWRlb19saXZlX2NoYXRfbXNnX3Rvb19sb25nIjoiVGhlIG1lc3NhZ2UgaXMgdG9vIGxvbmciLCJ2aWRlb19saXZlX2NoYXRfdG9vX2Zhc3QiOiJUb28gZmFzdIUiLCJ2aWRlb19hcmlhX21pbmltaXplX3BsYXlsaXN0IjoiSGlkZSBwbGF5bGlzdCIsInZpZGVvX2FyaWFfZXhwYW5kX3BsYXlsaXN0IjoiU2hvdyBwbGF5bGlzdCIsInZpZGVvX2FyaWFfbWluaW1pemVfY2hhdCI6IkhpZGUgY2hhdCIsInZpZGVvX2FyaWFfZXhwYW5kX2NoYXQiOiJFeHBhbmQgY2hhdCIsInZpZGVvX2xpdmVfbm90aWZ5X3N1YnNjcmliZWQiOiJTdHJlYW0gbm90aWZpY2F0aW9ucyBlbmFibGVkIiwidmlkZW9fbGl2ZV9ub3RpZnlfdW5zdWJzY3JpYmVkIjoiU3RyZWFtIG5vdGlmaWNhdGlvbnMgZGlzYWJsZWQiLCJ2aWRlb19saXZlX3lvdV9oYXZlX1hfbW9uZXkiOiJZb3UgaGF2ZSB7bW9uZXl9IiwidmlkZW9fdW5mb2xsb3dfZnJpZW5kX3RpdGxlIjoiUmVtb3ZlIGZyb20gZnJpZW5kcyIsInZpZGVvX3VuZm9sbG93X2ZyaWVuZF90ZXh0IjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlbW92ZSBBbGV4YW5kZXIgZnJvbSB5b3VyIGZyaWVuZCBsaXN0PyJ9LCJtdkRhdGEiOnsidGl0bGUiOiL1XC/0ICZxdW90O9Hl7OXp7e7lIOTl6+4mcXVvdDsiLCJkZXNjIjoiz/Do7OX34O3o5Tog6Oct5+Ag6+Xt6CDoIOHl5+fg6+Dh5fDt7uPuIO/u4uXk5e3o/yDu5O3u4+4g4+Di7f7q4C3s7u3y4Obo8fLgIOIg9Ojr/OzlIO7y8fPy8fLi8/7yIPHu4vDl7OXt7fvlIPHv5fb99PTl6vL7IOgg4/Dg7O7y7e7x8vwg8PPx8eru6SDw5ffoLCDu5O3g6u4g6u7s6PHx6OXpIMPu8czu8fTo6/zs7vTu7eTgIOLx5SDm5SDw5fjl7e4g4fvr7iDv8/Hy6PL8IOXj7iDiIOzg8fHu4vvpIO/w7urg8i4gJnF1b3Q7zeDk5f7x/CDt5ero5SDt5eTu5OXr6ugg7eUg7+7s5fjg/vIg4uDsIO/u6/P36PL8IOjx8ujt7e7lIPPk7uLu6/zx8uLo5SDu8iDx5ePuLCDt5SDv7uHu/vH8IP3y7uPuIPHr7uLgLCDq6O3u+OXk5eLw4Cwg7+7y7uwg6CDq8O7i/P4g8e3/8u7j7iDt4CDm6OLu7+jx7fv1IO/w7vHy7vDg9SDK8+f87Ojt8eru4+4g6+Xx7u/g8OrgJnF1b3Q7ICjQ5ebo8fHl8CDoIOjx7+7r7ejy5ev8IOPr4OLt7ukg8O7r6CDALtEuINHy8+/o7SkuIiwib2lkIjozOTU3NjIyMywidmlkIjoxNjU2MDc0NDUsImF1dGhvcklkIjozOTU3NjIyMywiYXV0aG9yUGhvdG8iOiJodHRwczpcL1wvcHAudXNlcmFwaS5jb21cL2M2MjQ1MjFcL3Y2MjQ1MjEyMjNcLzNjMjg4XC9sVmNWVzdMTm5yUS5qcGciLCJhdXRob3JIcmVmIjoiXC9kcmFrbWFpbCIsInZpZGVvUmF3IjoiMzk1NzYyMjNfMTY1NjA3NDQ1IiwiaGFzaCI6IjRlYWIzMzgxYTM1NmZkNTcyMCIsImxpa2VIYXNoIjoiMTNmYzFlZjdjMjQ5YWRjNTUwIiwiZWRpdEhhc2giOiIiLCJlZGl0RnJvbURyb3Bkb3duIjowLCJoaWRlRWRpdCI6bnVsbCwiY29tbXNob3duIjowLCJjb21tY291bnQiOjAsImxpa2VkIjpmYWxzZSwibGlrZXMiOjAsImFkZGVkIjowLCJjYW5fYWRkIjowLCJhZGRfaGFzaCI6IjkzNDlmMWI0NTAxNGY2NzRkZSIsIm5vbGlrZXMiOjEsImR1cmF0aW9uIjoxNjAsInZzZWdzU2l6ZSI6MTYuMDAwMDAwLCJwbGF5bGlzdHMiOltdLCJ1cGxvYWRlZCI6ZmFsc2UsInB1Ymxpc2hlZCI6dHJ1ZSwibm9Db250cm9scyI6ZmFsc2UsInBsYXlsaXN0QWRkSGFzaCI6IjkzNDlmMWI0NTAxNGY2NzRkZSIsImRlbGV0ZUhhc2giOiIiLCJyZXBvcnRSZWFzb25zIjpbXSwicmVwb3J0SGFzaCI6Ijc3ZWJlZmVlMzg1ZDZiNzM0ZCIsImluZm8iOlszOTU3NjIyMywxNjU2MDc0NDUsImh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzEyOTQ3XC91MjcwOTE0OFwvdmlkZW9cL2xfN2NhZWIxNWUuanBnIiwi9Vwv9CAmcXVvdDvR5ezl6e3u5SDk5evuJnF1b3Q7IiwxNjM4NCwiMjo0MCIsIiIsIiIsIjxhIGhyZWY9XCJcL2RyYWttYWlsXCIgY2xhc3M9XCJtZW1fbGlua1wiPkFsZXhhbmRlciBNYXNsb3Y8XC9hPiIsMTM3MTAzOTkxMSw5XSwiY2FuRXhwb3J0IjoxLCJpc1ZpZGVvQWRzIjpmYWxzZSwiZGVsZXRlRnJvbUFsbEFsYnVtc0hhc2giOiIiLCJpc19saXZlIjowLCJpc19hY3RpdmVfbGl2ZSI6MCwiUExBWUxJU1RfQURERURfSUQiOi0yLCJQTEFZTElTVF9VUExPQURFRF9JRCI6LTEsIm5vUHVibGljQWRkIjpmYWxzZSwiUExBWUVSX0ZVTExfV0lEVEgiOjk2MCwiUExBWUVSX0ZVTExfSEVJR0hUIjo1NDAsIlBMQVlFUl9QTF9XSURUSCI6NzIwLCJQTEFZRVJfUExfSEVJR0hUIjo0MDUsImxfdHlwZSI6Miwia3oiOjAsInRuc19tb25ldGl6ZWQiOmZhbHNlfSwid2FsbFRwbCI6eyJyZXBseV9ib3giOiI8ZGl2IGlkPVwicmVwbHlfYm94X3dyYXAlcG9zdF9pZCVcIj48ZGl2IGNsYXNzPVwicmVwbHlfYm94X2lubmVyX3dyYXBcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X2Zha2Vib3hfd3JhcFwiIGlkPVwicmVwbHlfZmFrZWJveCVwb3N0X2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5zaG93RWRpdFJlcGx5KCclcG9zdF9pZCUnLCBldmVudClcIiBkYXRhLW93bmVyLXBob3RvPVwiJW93bmVyX3Bob3RvJVwiIGRhdGEtb3duZXItaHJlZj1cIiVvd25lcl9ocmVmJVwiPlxuICAgIDxkaXYgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJcIj5cbiAgPGEgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfbGlua1wiIGhyZWY9XCJcL2lkXCIgb25jbGljaz1cInJldHVybiBuYXYuZ28odGhpcywgZXZlbnQpXCI+XG4gICAgPGltZyBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9pbWFnZVwiIHNyYz1cIlwvaW1hZ2VzXC9jYW1lcmFfNTAucG5nXCIgXC8+XG4gIDxcL2E+XG48XC9kaXY+JXVzZXJfaW1hZ2UlXG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2Zha2Vib3hcIj5MZWF2ZSBhIGNvbW1lbnQuLi48XC9kaXY+PFwvZGl2PlxuPFwvZGl2PjxcL2Rpdj48aW5wdXQgdHlwZT1cImhpZGRlblwiIGlkPVwicG9zdF9oYXNoJXBvc3RfaWQlXCIgdmFsdWU9XCIxNDkwNjQ4NDc5XzI5ZGI1NTQ4YTBkY2E0NzhjNlwiIGNhbl9yZXBseV9hc19ncm91cD1cIiVjYW5fcmVwbHlfYXNfZ3JvdXAlXCIgXC8+IiwicmVwbHlfZm9ybSI6IjxkaXYgaWQ9XCJyZXBseV9ib3glcG9zdF9pZCVcIiBjbGFzcz1cInN1Ym1pdF9wb3N0X2JveCByZXBseV9ib3ggY2xlYXJfZml4IF9zdWJtaXRfcG9zdF9ib3hcIiBvbmNsaWNrPVwicmV0dXJuIGNhbmNlbEV2ZW50KGV2ZW50KVwiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfZm9ybVwiPlxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJyZXBseV90byVwb3N0X2lkJVwiIHZhbHVlPVwiXCIgXC8+XG4gICAgPGRpdiBjbGFzcz1cInBvc3RfZmllbGRfdXNlclwiPlxuICA8YSBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9saW5rXCIgaHJlZj1cIlwvaWRcIiBvbmNsaWNrPVwicmV0dXJuIG5hdi5nbyh0aGlzLCBldmVudClcIj5cbiAgICA8aW1nIGNsYXNzPVwicG9zdF9maWVsZF91c2VyX2ltYWdlXCIgc3JjPVwiXC9pbWFnZXNcL2NhbWVyYV81MC5wbmdcIiBcLz5cbiAgPFwvYT5cbjxcL2Rpdj4ldXNlcl9pbWFnZSVcbiAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZmllbGRfd3JhcCBfZW1vamlfZmllbGRfd3JhcFwiPlxuICAgICAgPGRpdiBpZD1cInJlcGx5X3NtaWxlJXBvc3RfaWQlXCIgY2xhc3M9XCJlbW9qaV9zbWlsZV93cmFwICBfZW1vamlfd3JhcFwiPlxuICA8ZGl2IGNsYXNzPVwiZW1vamlfc21pbGUgX2Vtb2ppX2J0blwiIHRpdGxlPVwiVXNlIHRoZSBUQUIga2V5IHRvIGluc2VydCBlbW9qaSBmYXN0ZXJcIiBvbm1vdXNlb3Zlcj1cInJldHVybiBFbW9qaS5zaG93KHRoaXMsIGV2ZW50KTtcIiBvbm1vdXNlb3V0PVwicmV0dXJuIEVtb2ppLmhpZGUodGhpcywgZXZlbnQpO1wiIG9uY2xpY2s9XCJyZXR1cm4gY2FuY2VsRXZlbnQoZXZlbnQpO1wiPlxuICAgIDxkaXYgY2xhc3M9XCJlbW9qaV9zbWlsZV9pY29uXCI+PFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+XG4gICAgICA8ZGl2IGlkPVwicmVwbHlfZmllbGQlcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X2ZpZWxkIHN1Ym1pdF9wb3N0X2ZpZWxkXCIgb25mb2N1cz1cInJldHVybiBXYWxsLnNob3dFZGl0UmVwbHkoJyVwb3N0X2lkJScsIGV2ZW50KTtcIiBjb250ZW50ZWRpdGFibGU9XCJ0cnVlXCIgcGxhY2Vob2xkZXI9XCJMZWF2ZSBhIGNvbW1lbnQuLi5cIj48XC9kaXY+XG4gICAgPFwvZGl2PlxuICAgIDxkaXYgaWQ9XCJzdWJtaXRfcmVwbHklcG9zdF9pZCVcIiBjbGFzcz1cInN1Ym1pdF9wb3N0IGNsZWFyX2ZpeFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X3dhcm4gY2xlYXJcIiBpZD1cInJlcGx5X3dhcm4lcG9zdF9pZCVcIj48XC9kaXY+XG4gICAgICA8ZGl2IGlkPVwicmVwbHlfbWVkaWFfcHJldmlldyVwb3N0X2lkJVwiIGNsYXNzPVwicmVwbHlfbWVkaWFfcHJldmlldyBjbGVhcl9maXggbWVkaWFfcHJldmlld1wiPjxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJhZGRwb3N0X2J1dHRvbl93cmFwXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJmbGF0X2J1dHRvbiBhZGRwb3N0X2J1dHRvblwiIGlkPVwicmVwbHlfYnV0dG9uJXBvc3RfaWQlXCIgb25jbGljaz1cIndhbGwuc2VuZFJlcGx5KCclcG9zdF9pZCUnLCBldmVudCwge30pO1wiIG9ubW91c2VvdmVyPVwid2FsbC5yZXBseVN1Ym1pdFRvb2x0aXAoJyVwb3N0X2lkJScsIDEsIHRoaXMpO1wiIG9ubW91c2VvdXQ9XCJ3YWxsLnJlcGx5U3VibWl0VG9vbHRpcCgnJXBvc3RfaWQlJywgMCwgdGhpcyk7XCI+UG9zdDxcL2J1dHRvbj5cbiAgICAgIDxcL2Rpdj5cbiAgICAgICVhZGRfYnV0dG9ucyVcbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlX2FkZF9tZWRpYVwiIGlkPVwicmVwbHlfYWRkX21lZGlhXyVwb3N0X2lkJVwiPjxcL2Rpdj5cbiAgICAgIDxkaXYgaWQ9XCJyZXBseV90b190aXRsZSVwb3N0X2lkJVwiIGNsYXNzPVwicmVwbHlfdG9fdGl0bGUgYWRkcG9zdF9wb3B0XCI+PFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsInJlcGx5X2Zvcm1fb2ZmaWNpYWwiOiI8ZGl2IGNsYXNzPVwiYWRkcG9zdF9vcHQgY2hlY2tib3hfb2ZmaWNpYWxcIiBpZD1cInJlcGx5X2FzX2dyb3VwJXBvc3RfaWQlXCIgb25jbGljaz1cIndhbGwucmVwbHlBc0dyb3VwKHRoaXMpO1wiIG9ubW91c2VvdmVyPVwid2FsbC5yZXBseUFzR3JvdXBPdmVyKHRoaXMsICdvbiBiZWhhbGYgb2YgdGhlIHVzZXInLCAncG9zdCBhcyBjb21tdW5pdHknKTtcIiBvbmZvY3VzPVwid2FsbC5yZXBseUFzR3JvdXBPdmVyKHRoaXMsICdvbiBiZWhhbGYgb2YgdGhlIHVzZXInLCAncG9zdCBhcyBjb21tdW5pdHknKTtcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwiYnV0dG9uXCIgYXJpYS1sYWJlbD1cIm9uIGJlaGFsZiBvZiB0aGUgdXNlclwiPlxuICA8aW1nIGNsYXNzPVwidGh1bWJfb2ZmXCIgc3JjPVwiXC9pbWFnZXNcL2NhbWVyYV81MC5wbmdcIiBcLz5cbiAgPGltZyBjbGFzcz1cInRodW1iX29uXCIgc3JjPVwiJW93bmVyX3Bob3RvJVwiIFwvPlxuPFwvZGl2PiIsInJlcGx5X2Zvcm1fZ3JvdXBfaW1hZ2UiOiI8ZGl2IGNsYXNzPVwicG9zdF9maWVsZF9ncm91cFwiPlxuICA8YSBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9saW5rXCIgaHJlZj1cIiVvd25lcl9ocmVmJVwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KVwiPlxuICAgIDxpbWcgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfaW1hZ2VcIiBzcmM9XCIlb3duZXJfcGhvdG8lXCIgXC8+XG4gIDxcL2E+XG48XC9kaXY+IiwicmVwbHlfbXVsdGlsaW5lIjpmYWxzZSwicmVwbHlfbXVsdGlsaW5lX2ludHJvIjp0cnVlLCJyZXBseV9saW5rX3dyYXAiOiI8ZGl2IGNsYXNzPVwicmVwbHlfbGlua193cmFwXCI+XG4gIDxhIGNsYXNzPVwicmVwbHlfbGluayBfcmVwbHlfbG5rXCI+UmVwbHk8XC9hPlxuPFwvZGl2PiIsInJlcGx5X2xpbmtfdG8iOiIgPGEgY2xhc3M9XCJyZXBseV90b1wiPnJlcGxpZWQgdG8gJXRvX3VzZXIlPFwvYT4iLCJyZXBseV9mYXN0IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAgX3Bvc3RcIiBkYXRhLXBvc3QtaWQ9XCIlcmVwbHlfaWQlXCIgPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfd3JhcCBfcmVwbHlfY29udGVudCBfcG9zdF9jb250ZW50IGNsZWFyX2ZpeFwiPlxuICAgIFxuICAgIDxhIGNsYXNzPVwicmVwbHlfaW1hZ2VcIiBocmVmPVwiXC9pZFwiPlxuICAgICAgPGltZyBzcmM9XCJcL2ltYWdlc1wvY2FtZXJhXzUwLnBuZ1wiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIGNsYXNzPVwicmVwbHlfaW1nXCIgYWx0PVwiREVMRVRFRFwiIFwvPlxuICAgIDxcL2E+XG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2NvbnRlbnRcIiA+XG4gICAgICBcbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9hdXRob3JcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJhdXRob3JcIiBocmVmPVwiXC9pZFwiIGRhdGEtZnJvbS1pZD1cIjBcIj5ERUxFVEVEPFwvYT4ldG9fbGluayVcbiAgICAgIDxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV90ZXh0XCIgPjxkaXYgY2xhc3M9XCJ3YWxsX3JlcGx5X3RleHRcIj4lbWVzc2FnZSU8XC9kaXY+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2Zvb3RlciBjbGVhcl9maXhcIiBpZD1cIndwZV9ib3R0b20lcmVwbHlfaWQlXCI+XG4gICAgICAgIFxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZGF0ZVwiPiVkYXRlJTxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPlxuICA8YSBjbGFzcz1cInJlcGx5X2xpbmsgX3JlcGx5X2xua1wiPlJlcGx5PFwvYT5cbjxcL2Rpdj5cbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJyZXBseV9tdWx0aWxpbmVfaGludCI6IjxkaXYgY2xhc3M9XCJyZXBseV9zdWJtaXRfaGludF93cmFwXCIgIG9uY2xpY2s9XCJzdG9wRXZlbnQoZXZlbnQpO1wiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfc3VibWl0X2hpbnRfdGl0bGVcIj5TaG9ydGN1dHM8XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJyZXBseV9zdWJtaXRfaGludF9vcHRzXCIgaWQ9XCJyZXBseV9zdWJtaXRfaGludF9vcHRzXCI+XG4gICAgPGRpdiBjbGFzcz1cInJhZGlvYnRuICVkaXNhYmxlZCUgXCIgZGF0YS12YWw9XCIwXCIgb25jbGljaz1cInJhZGlvYnRuKHRoaXMsIDAsICdyZXBseV9zdWJtaXQnKTsgd2FsbC5vblJlcGx5U3VibWl0Q2hhbmdlZCgwKTtcIj48ZGl2IGNsYXNzPVwicmFkaW9idG5fbGFiZWxcIj48Yj5FbnRlcjxcL2I+IJcgc2VuZCBtZXNzYWdlPGJyPjxiPlNoaWZ0K0VudGVyPFwvYj4glyBuZXcgbGluZTxcL2Rpdj48XC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInJhZGlvYnRuICVlbmFibGVkJSBcIiBkYXRhLXZhbD1cIjFcIiBvbmNsaWNrPVwicmFkaW9idG4odGhpcywgMSwgJ3JlcGx5X3N1Ym1pdCcpOyB3YWxsLm9uUmVwbHlTdWJtaXRDaGFuZ2VkKDEpO1wiPjxkaXYgY2xhc3M9XCJyYWRpb2J0bl9sYWJlbFwiPjxiPkN0cmwrRW50ZXI8XC9iPiCXIHNlbmQgbWVzc2FnZTxicj48Yj5FbnRlcjxcL2I+IJcgbmV3IGxpbmU8XC9kaXY+PFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwicmVwbHlfYnV0dG9uIjoiPGEgaHJlZj1cIiNcIiBjbGFzcz1cInBvc3RfcmVwbHkgX3JlcGx5X3dyYXBcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwuc2hvd0VkaXRSZXBseSgnJXBvc3RfaWQlJywgZXZlbnQpXCI+XG4gIDxpIGNsYXNzPVwicG9zdF9yZXBseV9pY29uIF9pY29uXCI+PFwvaT5cbiAgPHNwYW4gY2xhc3M9XCJwb3N0X3JlcGx5X2xpbmsgX2xpbmtcIj5Db21tZW50PFwvc3Bhbj5cbiAgPHNwYW4gY2xhc3M9XCJwb3N0X3JlcGx5X2NvdW50IF9jb3VudFwiPjxcL3NwYW4+XG48XC9hPiIsInJlcGx5X2xpbmsiOiI8c3BhbiBpZD1cInJlcGx5X2xpbmslcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJyZXBseV9saW5rXCIgb25jbGljaz1cInJldHVybiBXYWxsLnNob3dFZGl0UmVwbHkoJyVwb3N0X2lkJScsIGV2ZW50KVwiPkNvbW1lbnQ8XC9hPjxcL3NwYW4+Iiwib3duX3JlcGx5X2xpbmsiOiI8c3BhbiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPjxhIGNsYXNzPVwicmVwbHlfbGlua1wiIG9uY2xpY2s9XCJXYWxsLmxpa2VTaGFyZUN1c3RvbSgnJXBvc3RfaWQlJylcIj5SZXBseTxcL2E+PFwvc3Bhbj4iLCJlZGl0X2xpbmsiOiI8c3BhbiBjbGFzcz1cImRpdmlkZVwiPnw8XC9zcGFuPjxhIG9uY2xpY2s9XCJ3YWxsLmVkaXRQb3N0KHRoaXMsICclcG9zdF9pZCUnKVwiPkVkaXQgPFwvYT4iLCJwb3N0IjoiPGRpdiBpZD1cInBvc3QlcG9zdF9pZCVcIiBjbGFzcz1cIl9wb3N0IHBvc3QgcGFnZV9ibG9ja1wiIGRhdGEtcG9zdC1pZD1cIiVwb3N0X2lkJVwiIG9uY2xpY2s9XCJ3YWxsLnBvc3RDbGljaygnJXBvc3RfaWQlJywgZXZlbnQpO1wiID5cbiAgPGRpdiBjbGFzcz1cIl9wb3N0X2NvbnRlbnRcIj5cbiAgICBcbiAgICA8ZGl2IGNsYXNzPVwicG9zdF9oZWFkZXJcIj5cbiAgICAgIDxhIGNsYXNzPVwicG9zdF9pbWFnZSVvbmxpbmVfY2xhc3MlXCIgaHJlZj1cIiVsaW5rJVwiPlxuICAgICAgICA8aW1nIHNyYz1cIiVwaG90byVcIiBkYXRhLXBvc3QtaWQ9XCIlcG9zdF9pZCVcIiBkYXRhLXBvc3QtY2xpY2stdHlwZT1cInBvc3Rfb3duZXJfaW1nXCIgd2lkdGg9XCI1MFwiIGhlaWdodD1cIjUwXCIgY2xhc3M9XCJwb3N0X2ltZ1wiIFwvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCI+LjxcL3NwYW4+XG4gICAgICA8XC9hPlxuICAgICAgPGRpdiBjbGFzcz1cInBvc3RfaGVhZGVyX2luZm9cIj5cbiAgICAgICAgPGg1IGNsYXNzPVwicG9zdF9hdXRob3JcIj4lbmFtZSU8XC9oNT5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBvc3RfZGF0ZVwiPjxhIGNsYXNzPVwicG9zdF9saW5rXCIgaHJlZj1cIlwvd2FsbCVwb3N0X2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gc2hvd1dpa2koe3c6ICd3YWxsJXBvc3RfaWQlJ30sIGZhbHNlLCBldmVudCk7XCI+JWRhdGUlPFwvYT48XC9kaXY+XG4gICAgICAgICVhY3Rpb25zJVxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicG9zdF9jb250ZW50XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicG9zdF9pbmZvXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3YWxsX3RleHRcIj4ldGV4dCU8XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwb3N0X2Z1bGxfbGlrZV93cmFwIGNsZWFyX2ZpeFwiPlxuICA8ZGl2IGNsYXNzPVwicG9zdF9mdWxsX2xpa2VcIj5cbiAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwicG9zdF9saWtlIF9saWtlX3dyYXAgbm9fbGlrZXNcIiBvbm1vdXNlb3Zlcj1cIldhbGwubGlrZXNTaG93KHRoaXMsICclcG9zdF9pZCUnKVwiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5saWtlSXQodGhpcywgJyVwb3N0X2lkJScsICcxNDkwNjQ4NDc5XzMxYjNjMWY1YTAyZjhiZDExNicsIGV2ZW50KTtcIj5cbiAgICAgIDxpIGNsYXNzPVwicG9zdF9saWtlX2ljb24gX2ljb25cIj48XC9pPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwb3N0X2xpa2VfbGluayBfbGlua1wiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3RfbGlrZV9jb3VudCBfY291bnRcIj48XC9zcGFuPlxuICAgIDxcL2E+XG4gICAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCIgb25jbGljaz1cIldhbGwubGlrZXNTaG93TGlzdCh0aGlzLCAnJXBvc3RfaWQlJylcIj5TaG93IGxpa2VzPFwvc3Bhbj5cbiAgICAlcmVwbHlfYnV0dG9uJVxuICAgIDxhIGhyZWY9XCIjXCIgY2xhc3M9XCJwb3N0X3NoYXJlIF9zaGFyZV93cmFwIG5vX3NoYXJlc1wiICBvbm1vdXNlb3Zlcj1cIldhbGwuc2hhcmVzU2hvdyh0aGlzLCAnJXBvc3RfaWQlJylcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwuc2hhcmVzT3BlbihldmVudCwgJyVwb3N0X2lkJScpO1wiPlxuICAgICAgPGkgY2xhc3M9XCJwb3N0X3NoYXJlX2ljb24gX2ljb25cIj48XC9pPlxuICAgICAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3Rfc2hhcmVfbGluayBfbGlua1wiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3Rfc2hhcmVfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbiAgICA8XC9hPlxuICAgIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiIG9uY2xpY2s9XCJXYWxsLnNoYXJlc1Nob3dMaXN0KHRoaXMsICclcG9zdF9pZCUnKVwiPlNob3cgc2hhcmVkIGNvcGllczxcL3NwYW4+XG4gICAgXG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInBvc3Rfdmlld3MgX3ZpZXdzX3dyYXAgbm9fdmlld3MgX2F1dG9fdXBkYXRlXCIgb25tb3VzZW92ZXI9XCJXYWxsLnZpZXdzVXBkYXRlKHRoaXMsICclcG9zdF9pZCUnKVwiPlxuICA8aSBjbGFzcz1cInBvc3Rfdmlld3NfaWNvbiBfaWNvblwiPjxcL2k+XG4gIDxzcGFuIGNsYXNzPVwicG9zdF92aWV3c19jb3VudCBfY291bnRcIj48XC9zcGFuPlxuPFwvZGl2PlxuPFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbGllc1wiPjxkaXYgY2xhc3M9XCJyZXBsaWVzX3dyYXBcIiBpZD1cInJlcGxpZXNfd3JhcCVwb3N0X2lkJVwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGxpZXNfbGlzdCBfcmVwbGllc19saXN0XCIgaWQ9XCJyZXBsaWVzJXBvc3RfaWQlXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBpZD1cInN0YXJ0X3JlcGx5JXBvc3RfaWQlXCIgdmFsdWU9XCJcIlwvPjxcL2Rpdj5cbiAgJXJlcGx5X2JveCVcbjxcL2Rpdj48XC9kaXY+XG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICAgIFxuICA8XC9kaXY+XG4gIFxuPFwvZGl2PiIsInJlcGx5IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAlY2xhc3NuYW1lJSBfcG9zdFwiIGRhdGEtcG9zdC1pZD1cIiVyZXBseV9pZCVcIiAlYXR0ciU+XG4gIDxkaXYgY2xhc3M9XCJyZXBseV93cmFwIF9yZXBseV9jb250ZW50IF9wb3N0X2NvbnRlbnQgY2xlYXJfZml4XCI+XG4gICAgXG4gICAgPGEgY2xhc3M9XCJyZXBseV9pbWFnZVwiIGhyZWY9XCIlbGluayVcIj5cbiAgICAgIDxpbWcgc3JjPVwiJXBob3RvJVwiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIGNsYXNzPVwicmVwbHlfaW1nXCIgYWx0PVwiJW5hbWUlXCIgXC8+XG4gICAgPFwvYT5cbiAgICA8ZGl2IGNsYXNzPVwicmVwbHlfY29udGVudFwiID5cbiAgICAgICVhY3Rpb25zJVxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2F1dGhvclwiPlxuICAgICAgICA8YSBjbGFzcz1cImF1dGhvclwiIGhyZWY9XCIlbGluayVcIiBkYXRhLWZyb20taWQ9XCIlcmVwbHlfdWlkJVwiPiVuYW1lJTxcL2E+JXRvX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfdGV4dFwiID4ldGV4dCU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZm9vdGVyIGNsZWFyX2ZpeFwiIGlkPVwid3BlX2JvdHRvbSVyZXBseV9pZCVcIj5cbiAgICAgICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cImxpa2Vfd3JhcCBfbGlrZV93cmFwIG5vX2xpa2VzXCIgb25jbGljaz1cInJldHVybiBXYWxsLmxpa2VJdCh0aGlzLCAnJWxpa2VfaWQlJywgJzE0OTA2NDg0NzlfMzFiM2MxZjVhMDJmOGJkMTE2JywgZXZlbnQpO1wiIG9ubW91c2VvdmVyPVwiV2FsbC5saWtlc1Nob3codGhpcywgJyVsaWtlX2lkJScpXCI+XG4gIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIj5MaWtlPFwvc3Bhbj5cbiAgPGkgY2xhc3M9XCJsaWtlX2ljb24gX2ljb25cIj48XC9pPlxuICA8c3BhbiBjbGFzcz1cImxpa2VfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbjxcL2E+XG48c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIiBvbmNsaWNrPVwiV2FsbC5saWtlc1Nob3dMaXN0KHRoaXMsICclbGlrZV9pZCUnKVwiPlNob3cgbGlrZXM8XC9zcGFuPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZGF0ZVwiPjxhIGNsYXNzPVwid2RfbG5rXCIgaHJlZj1cIlwvd2FsbCVwb3N0X2lkJT9yZXBseT0lcmVwbHlfbXNnX2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KVwiPiVkYXRlJTxcL2E+PFwvZGl2PlxuICAgICAgICAlYW5zd2VyX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwiZGVsIjoiPGEgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfaXRlbVwiIG9uY2xpY2s9XCJ3YWxsLmRlbGV0ZVBvc3QodGhpcywgJyVwb3N0X2lkJScsICcxNDkwNjQ4NDc5X2Q2YWUxOTZjMGM2OTk5NTJlNScpOyByZXR1cm4gZmFsc2U7XCI+RGVsZXRlIHBvc3Q8XC9hPiIsInNwYW0iOiI8YSBjbGFzcz1cInVpX2FjdGlvbnNfbWVudV9pdGVtXCIgb25jbGljaz1cIndhbGwubWFya0FzU3BhbSh0aGlzLCAnJXBvc3RfaWQlJywgJzE0OTA2NDg0NzlfMWJhY2Q2N2NjYTA0ZDU4N2NhJyk7IHJldHVybiBmYWxzZTtcIj5SZXBvcnQ8XC9hPiIsImVkaXQiOiI8YSBjbGFzcz1cInVpX2FjdGlvbnNfbWVudV9pdGVtXCIgb25jbGljaz1cIndhbGwuZWRpdFBvc3QodGhpcywgJyVwb3N0X2lkJScpOyByZXR1cm4gZmFsc2U7XCI+RWRpdCA8XC9hPiIsInBvc3RfYWN0aW9ucyI6IjxkaXYgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfd3JhcCBfdWlfbWVudV93cmFwIFwiIG9ubW91c2VvdmVyPVwidWlBY3Rpb25zTWVudS5zaG93KHRoaXMpO1wiIG9ubW91c2VvdXQgPVwidWlBY3Rpb25zTWVudS5oaWRlKHRoaXMpO1wiPlxuICA8ZGl2IGNsYXNzPVwidWlfYWN0aW9uc19tZW51X2ljb25zXCIgIHRhYmluZGV4PVwiMFwiIGFyaWEtbGFiZWw9XCJBY3Rpb25zXCIgcm9sZT1cImJ1dHRvblwiIG9uY2xpY2s9XCJ1aUFjdGlvbnNNZW51LmtleVRvZ2dsZSh0aGlzLCBldmVudCk7XCI+PHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPkFjdGlvbnM8XC9zcGFuPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInVpX2FjdGlvbnNfbWVudSBfdWlfbWVudVwiID4lYWN0aW9ucyU8XC9kaXY+XG48XC9kaXY+IiwiZGVsX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRGVsZXRlXCIgb25jbGljaz1cIndhbGwuZGVsZXRlUG9zdCh0aGlzLCAnJXJlcGx5X2lkJScsICcxNDkwNjQ4NDc5X2Q2YWUxOTZjMGM2OTk5NTJlNScpO1wiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJEZWxldGVcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4iLCJzcGFtX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiUmVwb3J0XCIgb25jbGljaz1cIndhbGwubWFya0FzU3BhbSh0aGlzLCAnJXJlcGx5X2lkJScsICcxNDkwNjQ4NDc5XzFiYWNkNjdjY2EwNGQ1ODdjYScpO1wiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJSZXBvcnRcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4iLCJlZGl0X3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2VkaXQlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9lZGl0X2J1dHRvbiByZXBseV9hY3Rpb24gZmxfclwiIGRhdGEtdGl0bGU9XCJFZGl0IFwiIG9uY2xpY2s9XCJ3YWxsLmVkaXRQb3N0KHRoaXMsICclcmVwbHlfaWQlJyk7XCIgb25tb3VzZW92ZXI9XCJzaG93VGl0bGUodGhpcyk7XCIgYXJpYS1sYWJlbD1cIkVkaXQgXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+IiwicmVwbHlfYWN0aW9ucyI6IjxkaXYgY2xhc3M9XCJmbF9yIHBvc3RfYWN0aW9uc193cmFwXCI+PGRpdiBjbGFzcz1cInBvc3RfYWN0aW9uc1wiPiVhY3Rpb25zJTxcL2Rpdj48XC9kaXY+IiwicG9sbF9zdGF0cyI6IjxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfc3RhdFwiJWhhbmRsZXJzJT5cbiAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF90ZXh0XCI+JW9wdGlvbl90ZXh0JTxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF9yb3dfd3JhcFwiPlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93X3BlcmNlbnRcIj4lcGVyY2VudCUlPFwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93JXJvd19jbGFzcyVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcGVyY2VudFwiIHN0eWxlPVwid2lkdGg6ICVjc3NfcGVyY2VudCUlXCI+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF9yb3dfY291bnRcIj4lY291bnQlPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsInBvbGxfaGFzaCI6IjE0OTA2NDg0NzlfZjk1ZDBkZGE4YzIxYTJmMzczIiwiZGF0ZV9mb3JtYXQiOiJ0b2RheSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInRpbWVfc3lzdGVtIjpbInBtIiwiYW0iXSwiYWJzX3RpbWVzdGFtcCI6MTQ5MDY0ODQ3OSwibGFuZyI6eyJ3YWxsX01fcmVwbGllc19vZl9OIjpbIiIsIiVzIGNvbW1lbnQgb2Yge2xpbmt9e2FsbH17XC9saW5rfSIsIiVzIGNvbW1lbnRzIG9mIHtsaW5rfXthbGx9e1wvbGlua30iXSwid2FsbF9oaWRlX3JlcGxpZXMiOiJIaWRlIGNvbW1lbnRzIiwid2FsbF9zaG93X25fb2ZfbV9sYXN0IjpbIiIsIlNob3cgbGF0ZXN0ICVzIGNvbW1lbnQgb3V0IG9mIHtjb3VudH0iLCJTaG93IGxhdGVzdCAlcyBjb21tZW50cyBvdXQgb2Yge2NvdW50fSJdLCJ3YWxsX3Nob3dfYWxsX25fcmVwbGllcyI6WyIiLCJTaG93ICVzIGNvbW1lbnQiLCJTaG93IGFsbCAlcyBjb21tZW50cyJdLCJ3YWxsX05fcmVwbGllcyI6WyIiLCIlcyBjb21tZW50IiwiJXMgY29tbWVudHMiXSwid2FsbF90aHJlZV9sYXN0X3JlcGxpZXMiOiJsYXN0IHRocmVlIHBvc3RzIiwid2FsbF9hbGxfcmVwbGllcyI6ImFsbCBjb21tZW50cyIsIndhbGxfeF9uZXdfcmVwbGllc19tb3JlIjpbIiIsIiVzIG5ldyBjb21tZW50IGFkZGVkIiwiJXMgbmV3IGNvbW1lbnRzIGFkZGVkIl0sIndhbGxfWF9wZW9wbGVfdm90ZWQiOlsiIiwiPGI+JXM8XC9iPiBwZXJzb24gdm90ZWQuIiwiPGI+JXM8XC9iPiBwZW9wbGUgdm90ZWQuIl0sIndhbGxfcmVwbHlfc3VibWl0X2hpbnRfMSI6IlNoaWZ0K0VudGVyIJcgbmV3IGxpbmUiLCJ3YWxsX3JlcGx5X3N1Ym1pdF9oaW50XzIiOiJDdHJsK0VudGVyIJYgc2VuZCBtZXNzYWdlIiwid2FsbF9yZXBseV9zdWJtaXRfaGludF8xX21vcmUiOiJFbnRlciCXIHNlbmQgbWVzc2FnZSwgU2hpZnQrRW50ZXIglyBuZXcgbGluZSIsIndhbGxfcmVwbHlfc3VibWl0X2hpbnRfMl9tb3JlIjoiRW50ZXIglyBuZXcgbGluZSwgQ3RybCtFbnRlciCXIHNlbmQgbWVzc2FnZSIsIndhbGxfcmVwbHlfcG9zdCI6IlJlcGx5Iiwid2FsbF9yZXBsaWVkX3RvX2dyb3VwIjoidGhlIGFkbWluIiwid2FsbF9yZXBseV9hc191c2VyIjoib24gYmVoYWxmIG9mIHRoZSB1c2VyIiwid2FsbF9yZXBseV9hc19ncm91cCI6InBvc3QgYXMgY29tbXVuaXR5Iiwid2FsbF9hZGRfcGhvdG9fZXJyb3IiOiJVbmFibGUgdG8gdXBsb2FkIHRoZSBpbWFnZSIsIndhbGxfanVzdF9ub3ciOlsiIiwiT25lIHNlY29uZCBhZ28iLCJUd28gc2Vjb25kcyBhZ28iLCJUaHJlZSBzZWNvbmRzIGFnbyIsIkZvdXIgc2Vjb25kcyBhZ28iLCJGaXZlIHNlY29uZHMgYWdvIl0sIndhbGxfWF9zZWNvbmRzX2Fnb193b3JkcyI6WyIiLCJPbmUgc2Vjb25kIGFnbyIsIlR3byBzZWNvbmRzIGFnbyIsIlRocmVlIHNlY29uZHMgYWdvIiwiRm91ciBzZWNvbmRzIGFnbyIsIkZpdmUgc2Vjb25kcyBhZ28iXSwid2FsbF9YX3NlY29uZHNfYWdvIjpbIiIsIiVzIHNlY29uZCBhZ28iLCIlcyBzZWNvbmRzIGFnbyJdLCJ3YWxsX1hfbWludXRlc19hZ29fd29yZHMiOlsiIiwib25lIG1pbnV0ZSBhZ28iLCJ0d28gbWludXRlcyBhZ28iLCJ0aHJlZSBtaW51dGVzIGFnbyIsIjQgbWludXRlcyBhZ28iLCI1IG1pbnV0ZXMgYWdvIl0sIndhbGxfWF9taW51dGVzX2FnbyI6WyIiLCIlcyBtaW51dGUgYWdvIiwiJXMgbWludXRlcyBhZ28iXSwid2FsbF9YX2hvdXJzX2Fnb193b3JkcyI6WyIiLCJvbmUgaG91ciBhZ28iLCJ0d28gaG91cnMgYWdvIiwidGhyZWUgaG91cnMgYWdvIiwiZm91ciBob3VycyBhZ28iLCJmaXZlIGhvdXJzIGFnbyJdLCJ3YWxsX1hfaG91cnNfYWdvIjpbIiIsIiVzIGhvdXIgYWdvIiwiJXMgaG91cnMgYWdvIl19fSwic2hhcmVfdGltZWhhc2giOiIxNDkwNjQ4NDc5X2ZhZTNkN2I4ODkyMTZiMDk5YSIsImNvbW1lbnRzVHBsIjp7InJlcGx5IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAgX3Bvc3RcIiBkYXRhLXBvc3QtaWQ9XCIlcmVwbHlfaWQlXCIgIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbWVudENsaWNrKHRoaXMsIGV2ZW50LCAlZnJvbV9pZCUsICVyZXBseV9tc2dfaWQlKVwiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfd3JhcCBfcmVwbHlfY29udGVudCBfcG9zdF9jb250ZW50IGNsZWFyX2ZpeFwiPlxuICAgIFxuICAgIDxhIGNsYXNzPVwicmVwbHlfaW1hZ2VcIiBocmVmPVwiJWhyZWYlXCI+XG4gICAgICA8aW1nIHNyYz1cIiVwaG90byVcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiBjbGFzcz1cInJlcGx5X2ltZ1wiIGFsdD1cIiVuYW1lJVwiIFwvPlxuICAgIDxcL2E+XG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2NvbnRlbnRcIiA+XG4gICAgICAlYWN0aW9ucyVcbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9hdXRob3JcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJhdXRob3JcIiBocmVmPVwiJWhyZWYlXCIgZGF0YS1mcm9tLWlkPVwiJWZyb21faWQlXCI+JW5hbWUlPFwvYT4ldG9fbGluayVcbiAgICAgIDxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV90ZXh0XCIgPiVtZXNzYWdlJTxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9mb290ZXIgY2xlYXJfZml4XCIgaWQ9XCJ3cGVfYm90dG9tJXJlcGx5X2lkJVwiPlxuICAgICAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwibGlrZV93cmFwIF9saWtlX3dyYXAgbm9fbGlrZXNcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwubGlrZUl0KHRoaXMsICclcG9zdF9vaWQldmlkZW9fY29tbWVudCVyZXBseV9tc2dfaWQlbXYnLCAnMTQ5MDY0ODQ3OV8zMWIzYzFmNWEwMmY4YmQxMTYnLCBldmVudCk7XCIgb25tb3VzZW92ZXI9XCJXYWxsLmxpa2VzU2hvdyh0aGlzLCAnJXBvc3Rfb2lkJXZpZGVvX2NvbW1lbnQlcmVwbHlfbXNnX2lkJW12JylcIj5cbiAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPkxpa2U8XC9zcGFuPlxuICA8aSBjbGFzcz1cImxpa2VfaWNvbiBfaWNvblwiPjxcL2k+XG4gIDxzcGFuIGNsYXNzPVwibGlrZV9jb3VudCBfY291bnRcIj48XC9zcGFuPlxuPFwvYT5cbjxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiIG9uY2xpY2s9XCJXYWxsLmxpa2VzU2hvd0xpc3QodGhpcywgJyVwb3N0X29pZCV2aWRlb19jb21tZW50JXJlcGx5X21zZ19pZCVtdicpXCI+U2hvdyBsaWtlczxcL3NwYW4+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9kYXRlXCI+JWRhdGUlPFwvZGl2PlxuICAgICAgICBcbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJhY3Rpb25zIjoiPGRpdiBjbGFzcz1cImZsX3IgcG9zdF9hY3Rpb25zX3dyYXBcIj48ZGl2IGNsYXNzPVwicG9zdF9hY3Rpb25zXCI+JWFjdGlvbnMlPFwvZGl2PjxcL2Rpdj4iLCJlZGl0X3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2VkaXQlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9lZGl0X2J1dHRvbiByZXBseV9hY3Rpb24gZmxfclwiIGRhdGEtdGl0bGU9XCJFZGl0XCIgb25jbGljaz1cIldhbGwuZWRpdFBvc3QodGhpcywgJyVyZXBseV9pZCUnKVwiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJFZGl0XCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+IiwiZGVsX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRGVsZXRlXCIgb25jbGljaz1cIlZpZGVvdmlldy5jb21tQWN0aW9uKCdkZWxldGUnLCAlcG9zdF9vaWQlLCAlcmVwbHlfbXNnX2lkJSwgJzE0OTA2NDg0NzlfOTBiMTdhODk5MDYwZjZiMTYyJywgJ212JylcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiRGVsZXRlXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+Iiwic3BhbV9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9kZWxldGUlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9kZWxldGVfYnV0dG9uIHJlcGx5X2FjdGlvbiBmbF9yXCIgZGF0YS10aXRsZT1cIlJlcG9ydFwiIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbUFjdGlvbignc3BhbScsICVwb3N0X29pZCUsICVyZXBseV9tc2dfaWQlLCAnMTQ5MDY0ODQ3OV85MGIxN2E4OTkwNjBmNmIxNjInLCAnbXYnKVwiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJSZXBvcnRcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4ifSwicG9zdCI6IjM5NTc2MjIzX3ZpZGVvMTY1NjA3NDQ1bXYiLCJtYXhSZXBseUxlbmd0aCI6MTYzODQsIm1heENoYXRSZXBseUxlbmd0aCI6NjAwLCJtYXhEZXNjcmlwdGlvbkxlbmd0aCI6MTAyNCwicHVibGlzaEFjdGlvbiI6IiIsInBsX2xpc3QiOjAsImlzX3ZrX3BsYXllciI6MSwiaXNfZmx2IjpmYWxzZSwiY2FudFBsYXkiOjAsInBsYXllciI6eyJ0eXBlIjoidmsiLCJwYXJhbXMiOlt7ImxhbmdfYWRkIjoiQWRkIHRvIE15IFZpZGVvcyIsImxhbmdfYWRkZWQiOiJWaWRlbyBhZGRlZCB0byBNeSBWaWRlb3MiLCJsYW5nX3NoYXJlIjoiU2hhcmUiLCJsYW5nX2xpa2UiOiJMaWtlIiwibGFuZ19kb25hdGUiOiJEb25hdGUiLCJsYW5nX3N1YnNjcmliZSI6IlN1YnNjcmliZSIsImxhbmdfc3Vic2NyaWJlZCI6IkZvbGxvd2luZyIsImxhbmdfdm9sdW1lX29uIjoiVW5tdXRlIiwibGFuZ192b2x1bWVfb2ZmIjoiTXV0ZSIsImxhbmdfdm9sdW1lIjoiVm9sdW1lIiwibGFuZ19oZHNkIjoiQ2hhbmdlIFZpZGVvIFF1YWxpdHkiLCJsYW5nX3F1YWxpdHlfYXV0byI6IkF1dG8iLCJsYW5nX29wZW5fcG9wdXAiOiJFeHBhbmQiLCJsYW5nX2Z1bGxzY3JlZW4iOiJGdWxsIFNjcmVlbiIsImxhbmdfd2luZG93IjoiTWluaW1pemUiLCJsYW5nX3JvdGF0ZSI6IlJvdGF0ZSIsImxhbmdfYWRzX2xpbmsiOiJBZHZlcnRpc2VyJiMzOTtzIFNpdGUiLCJsYW5nX2FkcyI6IkFkcyIsImxhbmdfYWRzX3NraXAiOiJTa2lwIGFkIiwibGFuZ19hZHNfc2tpcF90aW1lIjoiU2tpcCBhZHMgaW4ge3RpbWV9IHMiLCJsYW5nX3JlcG9ydF9wcm9ibGVtIjoiUmVwb3J0IGEgcHJvYmxlbS4uIiwibGFuZ19wbGF5IjoiUGxheSIsImxhbmdfcGF1c2UiOiJQYXVzZSIsImxhbmdfcmVwbGF5IjoiUmVwbGF5IiwibGFuZ19uZXh0IjoiTmV4dCB2aWRlbyIsImxhbmdfbmV4dF9jYW5jZWwiOiJDYW5jZWwiLCJsYW5nX2dvdG9fb3JpZ192aWRlbyI6IkdvIHRvIFZpZGVvIiwibGFuZ19nb3RvX2FkdmVydGlzZXJzX3NpdGUiOiJHbyB0byB0aGUgd2Vic2l0ZSIsImxhbmdfYnV5X3RpY2tldHMiOm51bGwsImxhbmdfbG9hZF9lcnJvciI6IkFuIGVycm9yIG9jY3VycmVkIGR1cmluZyBsb2FkaW5nLiBQbGVhc2UgdHJ5IGFnYWluIGxhdGVyLiIsImxhbmdfZXJyX2NvZGUiOiJFcnJvciBjb2RlOiB7Y29kZX0iLCJsYW5nX2JhZF9icm93c2VyIjoiU29ycnksIHlvdXIgYnJvd3NlciBpc24mIzM5O3Qgc3VwcG9ydGVkIGF0IHRoZSBtb21lbnQiLCJsYW5nX2xpdmUiOiJMaXZlIiwibGFuZ19saXZlX3N0YXJ0aW5nX3Nvb24iOiJUaGUgbGl2ZSB3aWxsIHN0YXJ0IHNvb24iLCJsYW5nX2xpdmVfZmFpbGVkIjoiQW4gZXJyb3Igb2NjdXJyZWQgd2hpbGUgc3RyZWFtaW5nIiwibGFuZ19saXZlX3dhaXRfcmVjb3JkIjoiVGhlIGxpdmUgaGFzIGZpbmlzaGVkIGFuZCB3aWxsIHNvb24gYmVjb21lIGF2YWlsYWJsZSBpbiByZXBsYXkiLCJsYW5nX2xpdmVfdXNlcl9zZW50X2dpZnQiOlsiIiwic2VudCBhIGdpZnQiLCJzZW50IGEgZ2lmdCJdLCJsYW5nX2xpdmVfdXNlcl9zZW50X3N1cGVyY29tbWVudCI6WyIiLCJzZW50IGEgc3VwZXIgbWVzc2FnZSIsInNlbnQgYSBzdXBlciBtZXNzYWdlIl0sImxhbmdfbGl2ZV9kb3dubG9hZF9hcHAiOiJEb3dubG9hZCBhcHAiLCJsYW5nX2F1dG9wbGF5X3ZvbHVtZV9oaW50Ijoi0WxpY2sgdG8gdHVybiBvbiB0aGUgc291bmQiLCJsYW5nX2F1dG9wbGF5X2V4cGFuZF9oaW50IjoiQ2xpY2sgdG8gZXhwYW5kIiwibGFuZ190aW1lZF9idXR0b25fZ290byI6Is/l8OXp8ugiLCJsYW5nX3RpbWVkX2J1dHRvbl9vcGVuIjoiT3BlbiIsImxhbmdfdGltZWRfYnV0dG9uX2J1eSI6IkJ1eSIsImxhbmdfdGltZWRfYnV0dG9uX2J1eV90aWNrZXRzIjoiQnV5IHRpY2tldHMiLCJsYW5nX3RpbWVkX2J1dHRvbl9jaGVja2luIjpudWxsLCJsYW5nX3RpbWVkX2J1dHRvbl9pbnN0YWxsIjoi0/Hy4O3u4ujy/CIsImxhbmdfdGltZWRfYnV0dG9uX2NvbnRhY3QiOiLR4v/n4PL88f8iLCJsYW5nX3RpbWVkX2J1dHRvbl9maWxsIjoix+Dv7uvt6PL8IiwibGFuZ190aW1lZF9idXR0b25fbGVhcm5fbW9yZSI6Ik1vcmUiLCJsYW5nX2NtZW51X2NvcHlfdmlkZW9fbGluayI6IkNvcHkgdmlkZW8gbGluayIsImxhbmdfY21lbnVfY29weV90aW1lY29kZV9saW5rIjoiQ29weSBsaW5rIHdpdGggdGltZWNvZGUiLCJsYW5nX2NtZW51X2NvcHlfZW1iZWRfY29kZSI6IkNvcHkgZW1iZWQgY29kZSIsImxhbmdfY21lbnVfZW5hYmxlX2xvb3AiOiJFbmFibGUgbG9vcCIsImxhbmdfY21lbnVfZGlzYWJsZV9sb29wIjoiRGlzYWJsZSBsb29wIiwibGFuZ19jbWVudV9wbGF5YmFja19zcGVlZCI6IlBsYXliYWNrIHNwZWVkIiwibGFuZ19jbWVudV9yZXBvcnRfZXJyb3IiOiJSZXBvcnQgYSBwcm9ibGVtLi4iLCJsYW5nX2NtZW51X2NvcHlfZGVidWciOiJDb3B5IGRlYnVnIGluZm8iLCJsYW5nX2FyaWFfdmlkZW9wbGF5ZXIiOiJWSyBWaWRlbyBQbGF5ZXIiLCJsYW5nX2FyaWFfdm9sdW1lX3NsaWRlciI6IlZvbHVtZSBzbGlkZXIiLCJsYW5nX2FyaWFfdm9sdW1lX211dGVkIjoiVm9sdW1lIGlzIG11dGVkIiwibGFuZ19hcmlhX3RpbWVsaW5lX3NsaWRlciI6IlRpbWUgc2xpZGVyIiwibGFuZ19hcmlhX3RpbWVsaW5lX3ZhbHVlIjoie3RpbWV9ICh0b3RhbCBkdXJhdGlvbiB7ZHVyYXRpb259KSIsImxhbmdfYXJpYV9lbnRlcl9mdWxsc2NyZWVuIjoiRW50ZXIgZnVsbCBzY3JlZW4gbW9kZSIsImxhbmdfYXJpYV9leGl0X2Z1bGxzY3JlZW4iOiJFeGl0IGZ1bGwgc2NyZWVuIG1vZGUiLCJsYW5nX2FyaWFfcXVhbGl0eV9jdXJyZW50IjoiQ3VycmVudCBxdWFsaXR5IGlzIHtxdWFsaXR5fSIsInZpZGVvX3BsYXlfaGQiOiJXYXRjaCBpbiBIRCIsInZpZGVvX3N0b3BfbG9hZGluZyI6IlN0b3AgRG93bmxvYWQiLCJ2aWRlb19wbGF5ZXJfdmVyc2lvbiI6IlZLIFZpZGVvIFBsYXllciIsInZpZGVvX2dldF92aWRlb19jb2RlIjoiQ29weSBlbWJlZCBjb2RlIiwidmlkZW9fZ2V0X2N1cnJlbnRfdXJsIjoiQ29weSBsaW5rIHdpdGggdGltZWNvZGUiLCJ2aWRlb19sb2FkX2Vycm9yIjoiQW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIGxvYWRpbmcuIFBsZWFzZSB0cnkgYWdhaW4gbGF0ZXIuIiwiZ290b19vcmlnX3ZpZGVvIjoiR28gdG8gVmlkZW8iLCJ2aWQiOjE2NTYwNzQ0NSwib2lkIjozOTU3NjIyMywibWRfdGl0bGUiOiL1XC/0ICZxdW90O9Hl7OXp7e7lIOTl6+4mcXVvdDsiLCJtZF9hdXRob3IiOiJBbGV4YW5kZXIgTWFzbG92IiwiYXV0aG9yX2lkIjozOTU3NjIyMywiYXV0aG9yX2hyZWYiOiJcL2RyYWttYWlsIiwiYXV0aG9yX3Bob3RvIjoiaHR0cHM6XC9cL3BwLnVzZXJhcGkuY29tXC9jNjI0NTIxXC92NjI0NTIxMjIzXC8zYzI4OFwvbFZjVlc3TE5uclEuanBnIiwiaGFzaCI6IjZmYzlhYjA0NjBkYTgwYWViY2I3NzcxMTk3YTE3NWI4IiwiaGFzaDIiOiJmMTA4YzM1MWI3ZmM2ZjM4IiwiaXNfZXh0IjowLCJkdXJhdGlvbiI6MTYwLCJ0IjoiIiwidmlnb19jaWQiOiJjZmNkMjA4NDk1ZDU2NWVmNjZlN2RmZjlmOTg3NjRkYSIsInZpZXdlcl9pZCI6MCwicG9zdF9pZCI6bnVsbCwibW9kdWxlIjoicHJvZmlsZSIsImciOjAsImEiOjAsImNpcyI6MCwicmVjb21tZW5kX3NpZyI6ImRiMGQ1YzBmYzU2MDk4YjdlNTU5YWM5Y2VmZTc0OWY2IiwiZXJyb3Jfc3RhdF9oYXNoIjoiMTQ5MDY0ODQ3OV8xY2FhZGIzZjAyYmNkYTQwZjEiLCJhZHNfc3RhdF9oYXNoIjoiYTYwMzJiZDFjMWNiNjc5ZDg3IiwiYWRzX2NvbXNjb3JlX2MzIjoiIiwiYWRzX3R5cGUiOi0xLCJhZHNfY2F0IjoxMywiYWRzX3NpdGV6b25lIjo1LCJhZHNfcmVmZXJyZXIiOiIiLCJhZHNfZWlkMSI6MTAwNTQ5NTE0LCJhZHNfcHVpZDUiOjE0LCJhZHNfcHVpZDYiOjg2LCJhZHNfcHVpZDM0IjowLCJhZHNfcGwiOjIxNDY5LCJhZHNfcGxfdHlwZSI6Im90aGVyIiwiYWRzX3NhZmUiOjEsIm5vbGlrZXMiOjEsImhkIjozLCJoZF9kZWYiOi0xLCJhbmdsZSI6MC4wMDAwMDAsImltZ19hbmdsZSI6MC4wMDAwMDAsInJlcGVhdCI6MCwidXJsMjQwIjoiaHR0cHM6XC9cL2NzMTI5NDcudXNlcmFwaS5jb21cL3UyNzA5MTQ4XC92aWRlb3NcL2E2MmVlNWEyNWQuMjQwLm1wND9leHRyYT1Qa09nSGpJaDhqUXAyZmN5MjJsZS1aQ0R6VkhzeUJVai1CRlJueUl3ajZpbkRlWUtJcHpaTjVBRkxjaGx0ejVWZlc1WlhVaG4zYjJ0STlkX3QwUDc1YUxCUGNNQjdBWk12VGhNeW5QUHAyQlNpM1pUME9qdDhnM29pTFEiLCJ1cmwzNjAiOiJodHRwczpcL1wvY3MxMjk0Ny51c2VyYXBpLmNvbVwvdTI3MDkxNDhcL3ZpZGVvc1wvYTYyZWU1YTI1ZC4zNjAubXA0P2V4dHJhPVBrT2dIakloOGpRcDJmY3kyMmxlLVpDRHpWSHN5QlVqLUJGUm55SXdqNmluRGVZS0lwelpONUFGTGNobHR6NVZmVzVaWFVobjNiMnRJOWRfdDBQNzVhTEJQY01CN0FaTXZUaE15blBQcDJCU2kzWlQwT2p0OGczb2lMUSIsInVybDQ4MCI6Imh0dHBzOlwvXC9jczEyOTQ3LnVzZXJhcGkuY29tXC91MjcwOTE0OFwvdmlkZW9zXC9hNjJlZTVhMjVkLjQ4MC5tcDQ/ZXh0cmE9UGtPZ0hqSWg4alFwMmZjeTIybGUtWkNEelZIc3lCVWotQkZSbnlJd2o2aW5EZVlLSXB6Wk41QUZMY2hsdHo1VmZXNVpYVWhuM2IydEk5ZF90MFA3NWFMQlBjTUI3QVpNdlRoTXluUFBwMkJTaTNaVDBPanQ4ZzNvaUxRIiwidXJsNzIwIjoiaHR0cHM6XC9cL2NzMTI5NDcudXNlcmFwaS5jb21cL3UyNzA5MTQ4XC92aWRlb3NcL2E2MmVlNWEyNWQuNzIwLm1wND9leHRyYT1Qa09nSGpJaDhqUXAyZmN5MjJsZS1aQ0R6VkhzeUJVai1CRlJueUl3ajZpbkRlWUtJcHpaTjVBRkxjaGx0ejVWZlc1WlhVaG4zYjJ0STlkX3QwUDc1YUxCUGNNQjdBWk12VGhNeW5QUHAyQlNpM1pUME9qdDhnM29pTFEiLCJqcGciOiJodHRwczpcL1wvcHAudXNlcmFwaS5jb21cL2MxMjk0N1wvdTI3MDkxNDhcL3ZpZGVvXC9sXzdjYWViMTVlLmpwZyIsIm5vbG9nbyI6MSwic2hvd19uZXh0IjowLCJsaWtlZCI6MCwiYWRkX2hhc2giOiI5MzQ5ZjFiNDUwMTRmNjc0ZGUiLCJhZGRlZCI6MCwiY2FuX2FkZCI6MCwibm9fdGl0bGUiOjAsInZzZWdzX3NpemUiOjE2LjAwMDAwMCwidnNlZ3NfaGFzaCI6ImZhZTJmOThjYmFmOWFkMmJiNiJ9XX19PCE+PCFwYWdldmlld19jYW5kaWRhdGU+
85
- http_version:
86
- recorded_at: Mon, 27 Mar 2017 21:01:19 GMT
87
- recorded_with: VCR 3.0.3
@@ -1,48 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://vk.com/al_video.php
6
- body:
7
- encoding: US-ASCII
8
- string: User-Agent=VideoInfo%2F2.7&act=show&al=1&autoplay=0&module=profile&video=2152699_168591741
9
- headers:
10
- Accept-Encoding:
11
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Mozilla/5.0 (Linux; VideoInfo)
16
- - Ruby
17
- response:
18
- status:
19
- code: 200
20
- message: OK
21
- headers:
22
- Server:
23
- - Apache
24
- Date:
25
- - Mon, 27 Mar 2017 21:01:43 GMT
26
- Content-Type:
27
- - text/html; charset=windows-1251
28
- Content-Length:
29
- - '10351'
30
- Connection:
31
- - keep-alive
32
- X-Powered-By:
33
- - PHP/3.12334
34
- Set-Cookie:
35
- - remixlang=3; expires=Mon, 26 Mar 2018 12:41:08 GMT; path=/; domain=.vk.com
36
- Pragma:
37
- - no-cache
38
- Cache-Control:
39
- - no-store
40
- Strict-Transport-Security:
41
- - max-age=0
42
- body:
43
- encoding: ASCII-8BIT
44
- string: !binary |-
45
- PCEtLTMzMjY4NDA3MjMyMjg8IT51aV9tZWRpYV9zZWxlY3Rvci5qcyx1aV9tZWRpYV9zZWxlY3Rvci5jc3MsZW1vamkuanMsbm90aWZpZXIuY3NzLHZpZGVvdmlldy5qcyx2aWRlb3ZpZXcuY3NzLHBhZ2UuanMscGFnZS5jc3MscG9zdC5jc3MsdWlfY29udHJvbHMuanMsdWlfY29udHJvbHMuY3NzPCE+MzwhPjM3MDQ8IT4wPCE+QkVBVCBTT1VMIFNURVAglyBSREMxNCBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwLCBNYXkgMS0yLCBNb3Njb3cgMjAxNDwhPjxkaXYgY2xhc3M9InZpZGVvX2JveF93cmFwIj4KICA8ZGl2IGlkPSJ2aWRlb19wbGF5ZXIiPgogICAgPGRpdiBpZD0idmlkZW9feXQiIHRhYmluZGV4PSIwIiBzdHlsZT0id2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvdXRsaW5lOjA7Ij4KICAgICAgPGlmcmFtZSBjbGFzcz0idmlkZW9feXRfcGxheWVyIiB0eXBlPSJ0ZXh0L2h0bWwiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHNyYz0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvNFRod3M1d3E1R0k/ZW5hYmxlanNhcGk9MSZhdXRvcGxheT0wJnN0YXJ0PTAmYXV0b2hpZGU9MSZ3bW9kZT1vcGFxdWUmc2hvd2luZm89MCZvcmlnaW49aHR0cHM6Ly92ay5jb20mZnM9MSZyZWw9MCZjY19sb2FkX3BvbGljeT0wJml2X2xvYWRfcG9saWN5PTMiIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PCE+CmFkZFRlbXBsYXRlcyh7Il8iOiJfIiwiYXVkaW9fcm93IjoiPGRpdiBjbGFzcz1cImF1ZGlvX3JvdyBfYXVkaW9fcm93IF9hdWRpb19yb3dfJTElXyUwJSAlY2xzJSBjbGVhcl9maXhcIiBvbmNsaWNrPVwicmV0dXJuIGdldEF1ZGlvUGxheWVyKCkudG9nZ2xlQXVkaW8odGhpcywgZXZlbnQpXCIgZGF0YS1hdWRpbz1cIiVzZXJpYWxpemVkJVwiIGRhdGEtZnVsbC1pZD1cIiUxJV8lMCVcIiBpZD1cImF1ZGlvXyUxJV8lMCVcIj5cbiAgPGRpdiBjbGFzcz1cImF1ZGlvX3BsYXlfd3JhcFwiIGRhdGEtbm9kcmFnPVwiMVwiPjxidXR0b24gY2xhc3M9XCJhdWRpb19wbGF5IF9hdWRpb19wbGF5XCIgaWQ9XCJwbGF5XyUxJV8lMCVcIiBhcmlhLWxhYmVsPVwiXCI+PFwvYnV0dG9uPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cImF1ZGlvX2luZm9cIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fZHVyYXRpb25fd3JhcCBfYXVkaW9fZHVyYXRpb25fd3JhcFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2hxX2xhYmVsXCI+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2R1cmF0aW9uIF9hdWRpb19kdXJhdGlvblwiPiVkdXJhdGlvbiU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0c1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0XCIgaWQ9XCJyZWNvbVwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cIkF1ZGlvUGFnZSh0aGlzKS5zaG93UmVjb21zKHRoaXMsICclMSVfJTAlJywgZXZlbnQpXCI+PGRpdj48XC9kaXY+PFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0XCIgaWQ9XCJuZXh0XCIgb25tb3VzZW92ZXI9XCJhdWRpb1Nob3dBY3Rpb25Ub29sdGlwKHRoaXMsICclMSVfJTAlJylcIiBvbmNsaWNrPVwiZ2V0QXVkaW9QbGF5ZXIoKS5zZXROZXh0KHRoaXMsIGV2ZW50KVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwiZWRpdFwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cIkF1ZGlvUGFnZSh0aGlzKS5lZGl0QXVkaW8odGhpcywgJyUxJV8lMCUnLCBldmVudClcIj48ZGl2PjxcL2Rpdj48XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdWRpb19hY3QgX2F1ZGlvX2FjdF9kZWxldGVcIiBpZD1cImRlbGV0ZVwiIG9uY2xpY2s9XCJBdWRpb1BhZ2UodGhpcykuZGVsZXRlQXVkaW8odGhpcywgJyUxJV8lMCUnLCBldmVudClcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwiYWRkXCIgb25jbGljaz1cInJldHVybiBhZGRBdWRpbyh0aGlzLCBldmVudClcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgXG4gICAgICAgIFxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fdGl0bGVfd3JhcFwiXG4gICAgID48YSBocmVmPVwiJXNlYXJjaF9ocmVmJVwiIG9ubW91c2VvdmVyPVwic2V0VGl0bGUodGhpcylcIiBub2RyYWc9XCIxXCIgb25jbGljaz1cInJldHVybiBhdWRpb1NlYXJjaFBlcmZvcm1lcih0aGlzLCBldmVudClcIiBjbGFzcz1cImF1ZGlvX3BlcmZvcm1lclwiPiU0JTxcL2FcbiAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9faW5mb19kaXZpZGVyXCI+Jm5kYXNoOzxcL3NwYW5cbiAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9fdGl0bGUgX2F1ZGlvX3RpdGxlXCIgb25tb3VzZW92ZXI9XCJzZXRUaXRsZSh0aGlzLCBkb21QTih0aGlzKSlcIlxuICAgICAgICA+PHNwYW4gY2xhc3M9XCJhdWRpb190aXRsZV9pbm5lclwiIHRhYmluZGV4PVwiMFwiIG5vZHJhZz1cIjFcIiBhcmlhLWxhYmVsPVwiJTMlXCIgb25jbGljaz1cInJldHVybiB0b2dnbGVBdWRpb0x5cmljcyhldmVudCwgdGhpcywgJyUxJV8lMCUnLCAnJTklJylcIj4lMyU8XC9zcGFuPlxuICAgICAgICBcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJhdWRpb19hdXRob3JcIiBvbmNsaWNrPVwiY3VyLmNhbmNlbENsaWNrPXRydWVcIj4lOCU8XC9zcGFuPlxuICAgICAgPFwvc3BhblxuICAgID48XC9kaXY+XG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIl9hdWRpb19wbGF5ZXJfd3JhcFwiPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIl9hdWRpb19seXJpY3Nfd3JhcCBhdWRpb19seXJpY3NcIiBkYXRhLW5vZHJhZz1cIjFcIj48XC9kaXY+XG48XC9kaXY+IiwiYXVkaW9fYml0c190b19jbHMiOiJ7XCIxXCI6XCJpbmxpbmVkXCIsXCIyXCI6XCJseXJpY3NcIixcIjRcIjpcImNhbmVkaXRcIixcIjhcIjpcImNhbmFkZFwiLFwiNjRcIjpcInJlY29tc1wiLFwiMTZcIjpcImNsYWltZWRcIixcIjMyXCI6XCJjbGFpbWVkX3RpdGxlXCIsXCIyNTZcIjpcImZyb21fcXVldWVcIixcIjUxMlwiOlwiaHFcIixcIjMyNzY4XCI6XCJsdGJcIixcIjE2Mzg0XCI6XCJscGJcIixcIjQwOTZcIjpcImNsYWltX2hpZGRlblwiLFwiMjA0OFwiOlwiY2xhaW1fbW9kZVwiLFwiODE5MlwiOlwiY2xhaW1fdW1hXCJ9In0pO2N1ci5pbmNWaWV3cyA9IGZ1bmN0aW9uKCkgewogIHZhciBvaWR2aWQgPSAnMjE1MjY5OV8xNjg1OTE3NDEnOwogIGlmIChjdXIudmlkZW9JbmMgJiYgY3VyLnZpZGVvSW5jW29pZHZpZF0pIHsKICAgIHJldHVybjsKICB9CiAgaWYgKCFjdXIudmlkZW9JbmMpIHsKICAgIGN1ci52aWRlb0luYyA9IHt9OwogICAgY3VyLnZpZGVvU3RhcnRlZCA9IHt9OwogIH0KICBjdXIudmlkZW9JbmNbb2lkdmlkXSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICBjdXIudmlkZW9JbmNbb2lkdmlkXSA9ICdmaW5pc2hlZCc7CiAgICB2YXIgbSA9IHdpbmRvdy5WaWRlbyA/IFZpZGVvdmlldy5nZXRWaWRlb01vZHVsZShvaWR2aWQpIDogY3VyLm1vZHVsZTsKICAgIHZhciBvaWQgPSAyMTUyNjk5OwogICAgaWYgKG9pZCkgewogICAgICBhamF4LnBvc3QoImFsX3ZpZGVvLnBocCIsIHthY3Q6J2luY192aWV3X2NvdW50ZXInLCBvaWQ6b2lkLCB2aWQ6MTY4NTkxNzQxLCBoYXNoOic3Mjk1YjM5Nzg0OTdmMDg2OThiOGNjYjdkMzBhMGM2NicsIG1vZHVsZTogbX0pOwogICAgfQogIH0sIDUwMDApOwogIGN1ci52aWRlb1N0YXJ0ZWRbb2lkdmlkXSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICBjdXIudmlkZW9TdGFydGVkW29pZHZpZF0gPSAnZmluaXNoZWQnOwogICAgdmFyIG0gPSB3aW5kb3cuVmlkZW8gPyBWaWRlb3ZpZXcuZ2V0VmlkZW9Nb2R1bGUob2lkdmlkKSA6IGN1ci5tb2R1bGU7CgogICAgdmFyIHZpZGVvY2F0ID0gJyc7CiAgICBpZiAod2luZG93LlZpZGVvY2F0ICYmIHdpbmRvdy5WaWRlbyAmJiBWaWRlby5pc0luQ2F0YWxvZygpKSB7CiAgICAgIHZhciBwbElkID0gVmlkZW9QbGF5bGlzdC5nZXRDdXJMaXN0SWQoKTsKICAgICAgaWYgKFZpZGVvY2F0LmlzVG9wM1BsYXlsaXN0KHBsSWQpKSB7CiAgICAgICAgdmlkZW9jYXQgPSAnZmVhdHVyZWQnOwogICAgICB9IGVsc2UgewogICAgICAgIHZpZGVvY2F0ID0gcGxJZDsKICAgICAgfQogICAgfQoKICAgIHZhciBvaWQgPSAyMTUyNjk5OwogICAgaWYgKG9pZCkgewogICAgICB3aW5kb3cubXZjdXIgPSB3aW5kb3cubXZjdXIgfHwge307CiAgICAgIG12Y3VyLnZpZXdTdGFydGVkVGltZXN0YW1wID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CiAgICAgIGFqYXgucG9zdCgiYWxfdmlkZW8ucGhwIiwge2FjdDondmlkZW9fdmlld19zdGFydGVkJywgb2lkOm9pZCwgdmlkOjE2ODU5MTc0MSwgaGFzaDonNzI5NWIzOTc4NDk3ZjA4Njk4YjhjY2I3ZDMwYTBjNjYnLCBtb2R1bGU6IG0sIHZpZGVvY2F0OiB2aWRlb2NhdH0pOwogICAgfQogIH0sIDApOwogIGN1ci5kZXN0cm95LnB1c2goZnVuY3Rpb24gKCkgewogICAgaWYgKGN1ci52aWRlb0luY1tvaWR2aWRdICYmIGN1ci52aWRlb0luY1tvaWR2aWRdICE9ICdmaW5pc2hlZCcpIHsKICAgICAgY2xlYXJUaW1lb3V0KGN1ci52aWRlb0luY1tvaWR2aWRdKTsKICAgIH0KICAgIGlmIChjdXIudmlkZW9TdGFydGVkW29pZHZpZF0gJiYgY3VyLnZpZGVvU3RhcnRlZFtvaWR2aWRdICE9ICdmaW5pc2hlZCcpIHsKICAgICAgY2xlYXJUaW1lb3V0KGN1ci52aWRlb1N0YXJ0ZWRbb2lkdmlkXSk7CiAgICB9CiAgfSk7Cn07Cm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvID0gJzIxNTI2OTlfMTY4NTkxNzQxJzsgCm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvSGFzaCA9ICdkNGVhNDY4N2YwMWNjMWVlOWQnOyAKbXZjdXIubXZEYXRhLmFkZGVkVmlkZW9TaGFyZUhhc2ggPSAnOGJhOGZkYWZjZjQ2ZTFiYzY4JzsKbXZjdXIubXZEYXRhLm5lZWRzTmV3ID0gMTs8IT4KCjxkaXYgY2xhc3M9Im12X2luZm9fd2lkZV9jb2x1bW4gZmxfbCI+CiAgCiAgPGRpdiBjbGFzcz0ibXZfdGl0bGVfYmxvY2siPgogICAgPGRpdiBpZD0ibXZfdmlld3MiIGNsYXNzPSJtdl92aWV3c19jb3VudCAiIG9ubW91c2VvdmVyPSIiPjM3IHZpZXdzPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl90aXRsZSIgaWQ9Im12X3RpdGxlIj5CRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0PC9kaXY+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfYWN0aW9uc19ibG9jayIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImZsYXRfYnV0dG9uIHNlY29uZGFyeSBidXR0b25fbGlnaHQgbXZfc2hhcmVfYnV0dG9uIiBzdHlsZT0iZGlzcGxheTpub25lOyIgb25jbGljaz0idmlkZW92aWV3LnNlbmRWaWRlbygpOyI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X3NoYXJlX2ljb24iPjwvc3Bhbj5TaGFyZQogICAgICA8L2Rpdj4KICAgICAgPGRpdiBpZD0ibXZfYWRkX3dyYXAiPjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJmbGF0X2J1dHRvbiBzZWNvbmRhcnkgYnV0dG9uX2xpZ2h0IG12X2VkaXRfYnV0dG9uIiBvbmNsaWNrPSJyZXR1cm4gdmlkZW92aWV3LnNob3dFZGl0Qm94KDE2ODU5MTc0MSwgMjE1MjY5OSkiIGlkPSJtdl9lZGl0X2J1dHRvbiI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X2VkaXRfaWNvbiI+PC9zcGFuPkVkaXQgdmlkZW8KICAgICAgPC9kaXY+CiAgICAgIAogICAgICA8ZGl2IGNsYXNzPSJtdl9tb3JlIGZsX2wiIGlkPSJtdl9tb3JlIj5Nb3JlPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KICAKICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfYmxvY2siPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgPGEgaHJlZj0iL2x5YW5vaS5raXJpbGwiIGNsYXNzPSJtdl9hdXRob3JfcGhvdG9fd3JhcCBmbF9sIj4KICAgICAgICA8aW1nIGlkPSJtdl9hdXRob3JfcGhvdG8iIGNsYXNzPSJtdl9hdXRob3JfcGhvdG8iIHNyYz0iaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjIzODI0L3Y2MjM4MjQ2OTkvNTU1NzUvQ0NRWjI5bDBCOWsuanBnIj4KICAgICAgPC9hPgogICAgICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfaW5mbyBmbF9sIj4KICAgICAgICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfbmFtZSI+CiAgICAgICAgICA8YSBjbGFzcz0ibWVtX2xpbmsiIGhyZWY9Ii9seWFub2kua2lyaWxsIj5LaXJpbGwgTHlhbm95PC9hPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im12X2luZm9fZGF0ZSI+TWF5IDEyLCAyMDE0IGF0IDk6MjMgYW0gZnJvbSA8YSBocmVmPSIvYXdheS5waHA/dG89aHR0cCUzQSUyRiUyRnd3dy55b3V0dWJlLmNvbSUyRndhdGNoJTNGdiUzRDRUaHdzNXdxNUdJIiB0YXJnZXQ9Il9ibGFuayI+WW91VHViZTwvYT4gPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgCiAgICA8L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJtdl9kZXNjcmlwdGlvbl9ibG9jayI+CiAgPGRpdiBjbGFzcz0ic2VsZWN0X2ZpeCBjbGVhcl9maXgiPgogICAgPGRpdiBpZD0ibXZfZGVzY3JpcHRpb24iIGNsYXNzPSJtdl9kZXNjIj4KICA8ZGl2IGNsYXNzPSJqc19tdl9kZXNjcl9maWVsZCBjYW50X2VkaXQiIGlkPSJtdl9kZXNjcl9maWVsZCI+QkVBVCBTT1VMIFNURVAgJiM5NzMzOyBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwICYjOTczMzsgMS0yIOzg/ywgzO7x6uLgIDIwMTQ8YnI+Q2hvcmVvZ3JhcGh5OiBLYXRpZTxicj48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZwcm9qZWN0ODE4LmNvbSIgdGFyZ2V0PSJfYmxhbmsiIHRhcmdldD0iX2JsYW5rIj5wcm9qZWN0ODE4LmNvbTwvYT4gfCA8YSBocmVmPSJodHRwOi8vdmsuY29tL3Byb2plY3Q4MThydXNzaWEiIG1lbnRpb25faWQ9InByb2plY3Q4MThydXNzaWEiIG9uY2xpY2s9InJldHVybiBtZW50aW9uQ2xpY2sodGhpcywgZXZlbnQpIiBvbm1vdXNlb3Zlcj0ibWVudGlvbk92ZXIodGhpcykiPnZrLmNvbS9wcm9qZWN0ODE4cnVzc2lhPC9hPiB8IDxhIGhyZWY9Imh0dHA6Ly92ay5jb20vcHJvamVjdDgxOCIgbWVudGlvbl9pZD0icHJvamVjdDgxOCIgb25jbGljaz0icmV0dXJuIG1lbnRpb25DbGljayh0aGlzLCBldmVudCkiIG9ubW91c2VvdmVyPSJtZW50aW9uT3Zlcih0aGlzKSI+dmsuY29tL3Byb2plY3Q4MTg8L2E+PGJyPi4uPC9kaXY+CiAgPGEgaWQ9Im12X2Rlc2NyX2V4cGFuZF90b2dnbGUiIGNsYXNzPSJ3YWxsX3Bvc3RfbW9yZSIgc3R5bGU9IiIgb25jbGljaz0iVmlkZW92aWV3LmV4cGFuZERlc2NyKHRoaXMpIj5FeHBhbmQgdGV4dIU8L2E+CiAgPGRpdiBpZD0ibXZfZGVzY19mdWxsX3RleHQiPkJFQVQgU09VTCBTVEVQICYjOTczMzsgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCAmIzk3MzM7IDEtMiDs4P8sIMzu8eri4CAyMDE0PGJyPkNob3Jlb2dyYXBoeTogS2F0aWU8YnI+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGcHJvamVjdDgxOC5jb20iIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+cHJvamVjdDgxOC5jb208L2E+IHwgPGEgaHJlZj0iaHR0cDovL3ZrLmNvbS9wcm9qZWN0ODE4cnVzc2lhIiBtZW50aW9uX2lkPSJwcm9qZWN0ODE4cnVzc2lhIiBvbmNsaWNrPSJyZXR1cm4gbWVudGlvbkNsaWNrKHRoaXMsIGV2ZW50KSIgb25tb3VzZW92ZXI9Im1lbnRpb25PdmVyKHRoaXMpIj52ay5jb20vcHJvamVjdDgxOHJ1c3NpYTwvYT4gfCA8YSBocmVmPSJodHRwOi8vdmsuY29tL3Byb2plY3Q4MTgiIG1lbnRpb25faWQ9InByb2plY3Q4MTgiIG9uY2xpY2s9InJldHVybiBtZW50aW9uQ2xpY2sodGhpcywgZXZlbnQpIiBvbm1vdXNlb3Zlcj0ibWVudGlvbk92ZXIodGhpcykiPnZrLmNvbS9wcm9qZWN0ODE4PC9hPjxicj48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZmYWNlYm9vay5jb20lMkZQcm9qZWN0ODE4UnVzc2lhIiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPmZhY2Vib29rLmNvbS9Qcm9qZWN0ODE4UnVzc2lhPC9hPjxicj48YSBocmVmPSIvYXdheS5waHA/dG89aHR0cCUzQSUyRiUyRmluc3RhZ3JhbS5jb20lMkZwcm9qZWN0ODE4IiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPmluc3RhZ3JhbS5jb20vcHJvamVjdDgxODwvYT48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZ0d2l0dGVyLmNvbSUyRnByb2plY3Q4MTgiIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+dHdpdHRlci5jb20vcHJvamVjdDgxODwvYT48YnI+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGeW91dHViZS5jb20lMkZQcm9qZWN0ODE4UnVzc2lhIiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPnlvdXR1YmUuY29tL1Byb2plY3Q4MThSdXNzaWE8L2E+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGeW91dHViZS5jb20lMkZQcm9qZWN0ODE4Y2hhbXAiIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+eW91dHViZS5jb20vUHJvamVjdDgxOGNoYW1wPC9hPjwvZGl2PgogIDxkaXYgY2xhc3M9InByICIgaWQ9Im12X2lubGluZV9lZGl0X3ByIj48ZGl2IGNsYXNzPSJwcl9idCI+PC9kaXY+PGRpdiBjbGFzcz0icHJfYnQiPjwvZGl2PjxkaXYgY2xhc3M9InByX2J0Ij48L2Rpdj48L2Rpdj4KPC9kaXY+CiAgPC9kaXY+CjwvZGl2PgogIDxkaXYgY2xhc3M9Im12X2NvbW1lbnRzX2Jsb2NrIHdhbGxfbW9kdWxlIj4KICAgIDxkaXYgaWQ9InBvc3QyMTUyNjk5X3ZpZGVvMTY4NTkxNzQxbXYiPgogICAgICA8ZGl2IGlkPSJtdl9jb21tZW50c193cmFwIj4KICA8ZGl2IGlkPSJtdl9jb21tZW50c19oZWFkZXIiIG9uY2xpY2s9IlZpZGVvdmlldy5tb3JlQ29tbWVudHMoKTsiIGNsYXNzPSJtdl9jb21tZW50c19leHBhbmRlZCI+PC9kaXY+CiAgPGRpdiBpZD0ibXZfY29tbWVudHNfc3VtbWFyeSIgY2xhc3M9Im12X2NvbW1lbnRzX3N1bW1hcnkgbXZfY29tbWVudHNfZXhwYW5kZWQiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij48L2Rpdj4KICA8ZGl2IGlkPSJtdl9jb21tZW50cyI+PC9kaXY+CjwvZGl2PgogICAgICAKICAgIDwvZGl2PgogIDwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0ibXZfaW5mb19uYXJyb3dfY29sdW1uIGZsX3IiPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2Jsb2NrIj4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9ibG9ja190aXRsZSI+T3RoZXIgdmlkZW9zPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4OTg4OTY0IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODk4ODk2NCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTA3NDEwL3UzNjM1NTE1L3ZpZGVvL2xfMjc3M2VmYWIuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MzoyNDwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4OTg4OTY0IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODk4ODk2NCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IkZSRUFLIEdPLUdPIE1JWNLF0MjfIj5GUkVBSyBHTy1HTyBNSVjSxdDI3zwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+NyB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjc3MDUwMTgiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY3NzA1MDE4JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M1NDAyMDYvdTQ0ODg5MjMvdmlkZW8vbF8zZTY1Mzk4Zi5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4wOjMwPC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjc3MDUwMTgiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY3NzA1MDE4JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iyuDx8ujt4yAtQXJ0LiBkYW5jZSBzaG93ICZxdW90OyBCSUdvb0RlZS4iPsrg8fLo7eMgLUFydC4gZGFuY2Ugc2hvdyAmcXVvdDsgQklHb29EZWUuPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj4xMDUgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzExMDI3ODEyXzQ1NjIzOTE3MyIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMTEwMjc4MTJfNDU2MjM5MTczJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M4MzY0MzYvdjgzNjQzNjgxMi9lZmUyL1Z4ZEVxVTh5SkFnLmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjA6MTc8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8xMTAyNzgxMl80NTYyMzkxNzMiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzExMDI3ODEyXzQ1NjIzOTE3MycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IlBhcmFub2lhIDIwMTYgxeLx8uXj7eXl4uAgwO3g8fLg8ej/Ij5QYXJhbm9pYSAyMDE2IMXi8fLl4+3l5eLgIMDt4PHy4PHo/zwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MjgyIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8tNTM5MjEwMDJfNDU2MjM5ODYxIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCctNTM5MjEwMDJfNDU2MjM5ODYxJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL2NzNTQxNjA2LnVzZXJhcGkuY29tL2M4MzcxMjQvdjgzNzEyNDAwMi8zNzAwZC9sTlFmczZXV0haZy5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4xOjE4PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvLTUzOTIxMDAyXzQ1NjIzOTg2MSIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnLTUzOTIxMDAyXzQ1NjIzOTg2MScsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9ItXu8O744P8g4e7w/OHgIHwgVGhlIEdvb2QgRmlnaHQgfCDS8OXp6+XwIj7V7vDu+OD/IOHu8Pzh4CB8IFRoZSBHb29kIEZpZ2h0IHwg0vDl6evl8DwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+OTIsMDUzIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2ODk4ODk3NyIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjg5ODg5NzcnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzU0MDMwMS91MjQ2MTA1MDg5L3ZpZGVvL2xfZGI3MWI2NjYuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MDozMDwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4OTg4OTc3IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODk4ODk3NycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9Ik1peC3y5fDo/yD47vMg1PDo6iDY7vMiPk1peC3y5fDo/yD47vMg1PDo6iDY7vM8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjIyIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2Mzk0MjkxNCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjM5NDI5MTQnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzUyNjYxMS91NTU4MDE1NTMvdmlkZW8vbF8yMGU3ZjMwMC5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4zOjU2PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjM5NDI5MTQiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTYzOTQyOTE0JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iz+7k6PPs7fvlIPHy8ODx8uguICI+z+7k6PPs7fvlIPHy8ODx8uguIDwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MzQgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYxNTMzMDQyIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2MTUzMzA0MicsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTEwNDE1L3UxNDM0ODI3MS92aWRlby9sXzdlMDVhMGZkLmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjM6NTI8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2MTUzMzA0MiIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjE1MzMwNDInLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSLA7fLu7SDK4Ozg6+jy5Ojt7uIgLSDD7uvu8fPp8uUg5+Ag7OXt/yI+wO3y7u0gyuDs4Ovo8uTo7e7iIC0gw+7r7vHz6fLlIOfgIOzl7f88L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjIxNCB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjI0NTU3OTgiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTYyNDU1Nzk4JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M2MDc4L3UzMjA2NzAyL3ZpZGVvL2xfYTMzNTE0OGYuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+Mjo0MTwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYyNDU1Nzk4IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2MjQ1NTc5OCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IkxpcHRvbiBEYW5jZSAtIM/w6PHu5eTo7f/p8f8g6iDy4O328yYjMzM7ICj06+X47O7hIO3gIMLEzdUpIj5MaXB0b24gRGFuY2UgLSDP8Ojx7uXk6O3/6fH/IOog8uDt9vMmIzMzOyAo9Ovl+Ozu4SDt4CDCxM3VKTwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MzIgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYzODYyOTc4IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2Mzg2Mjk3OCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTIzMzE3L3UzMjA2NzAyL3ZpZGVvL2xfYWE0YWZmYmIuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MzoyMjwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYzODYyOTc4IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2Mzg2Mjk3OCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IldpdGhvdXQgYSBmYWNlICAo0uDr4O3y6+ji4P8gIMzu6+7k5eb8KSAxIj5XaXRob3V0IGEgZmFjZSAgKNLg6+Dt8uvo4uD/ICDM7uvu5OXm/CkgMTwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+OTggdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4OTg4OTQ5IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODk4ODk0OScsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTQwMzA1L3UyNDYxMDUwODkvdmlkZW8vbF9jMGFkMjFlNS5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4wOjQzPC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjg5ODg5NDkiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY4OTg4OTQ5JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iTWl4LfLl8Oj/Ij5NaXgt8uXw6P88L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjQgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj48IT48IT48IWpzb24+eyJsYW5nIjp7Imdsb2JhbF9zaG9ydF9kYXRlX3RpbWUiOlsiIiwie2RheX0ge21vbnRofSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInllc3RlcmRheSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInRvZGF5IGF0IHtob3VyfTp7bWludXRlfSB7YW1fcG19IiwidG9tb3Jyb3cgYXQge2hvdXJ9OnttaW51dGV9IHthbV9wbX0iXSwicmVwbHlfdG9fcG9zdCI6IllvdXIgY29tbWVudC4uIiwid2FsbF9NX3JlcGxpZXNfb2ZfTiI6WyIiLCIlcyBjb21tZW50IG9mIHtsaW5rfXthbGx9e1wvbGlua30iLCIlcyBjb21tZW50cyBvZiB7bGlua317YWxsfXtcL2xpbmt9Il0sIndhbGxfbW9yZV9yZXBsaWVzIjpbIiIsInNob3cgJXMgbW9yZSBjb21tZW50Iiwic2hvdyAlcyBtb3JlIGNvbW1lbnRzIl0sIndhbGxfYWxsX3JlcGxpZXMiOiJhbGwgY29tbWVudHMiLCJkb250X2F0dGFjaCI6IlJlbW92ZSBhdHRhY2htZW50IiwidmlkZW9fWF9jb21tcyI6WyIiLCIlcyBjb21tZW50IiwiJXMgY29tbWVudHMiXSwidmlkZW9fZWRpdCI6IkVkaXQgdmlkZW8iLCJ2aWRlb19lZGl0X2Rlc2MiOiJFZGl0IGRlc2NyaXB0aW9uIiwidmlkZW9fZWRpdF9kZXNjX2ludHJvIjoiRW50ZXIgZGVzY3JpcHRpb24iLCJ2aWRlb19zaG93X3ByZXZpb3VzX2NvbW1lbnRzIjpbIiIsIlNob3cgJXMgcHJldmlvdXMgY29tbWVudCIsIlNob3cgJXMgcHJldmlvdXMgY29tbWVudHMiXSwidmlkZW9fYXJlX3lvdV9zdXJlX2Nsb3NlIjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGNsb3NlIHRoaXMgdmlkZW8/IiwidmlkZW9fYXJlX3lvdV9zdXJlX2Nsb3NlX3RpdGxlIjoiQ2xvc2UgdmlkZW8iLCJwcm9maWxlX21lbnRpb25fbm90X2ZvdW5kIjoiVXNlciB3YXMgbm90IGZvdW5kIiwicHJvZmlsZV9tZW50aW9uX3N0YXJ0X3R5cGluZyI6IlN0YXJ0IHR5cGluZyBhIG5hbWUuLiIsInZpZGVvX2FsYnVtX2lzX3ByaXZhdGVfdHQiOiJUaGlzIGFsYnVtIGlzIHByaXZhdGUiLCJ2aWRlb19hZGRfdG9fbXlfcGxheWxpc3QiOiJBZGQgdG8gTXkgVmlkZW9zIiwidmlkZW9fYWRkZWRfdG9fbXlfcGxheWxpc3QiOiJBZGRlZCIsInZpZGVvX2NoYW5nZXNfc2F2ZWQiOiJDaGFuZ2VzIHNhdmVkIiwidmlkZW9fYWRkX2FsYnVtIjoiQ3JlYXRlIGFsYnVtIiwidmlkZW9fYWRkX3ByaXZhdGVfYWxidW0iOiJDcmVhdGUgYSBwcml2YXRlIGFsYnVtIiwidmlkZW9fYWRkX3RvX2dyb3VwIjoiQWRkIHRvIGNvbW11bml0eSIsInZpZGVvX2V4cG9ydF9hY3Rpb24iOiJFeHBvcnQiLCJ2aWRlb19zdGF0aXN0aWNzIjoiU3RhdGlzdGljcyIsInZpZGVvX2NvbXBsYWluIjoiUmVwb3J0IiwidmlkZW9fc2VsZWN0X2FsYnVtcyI6IlNlbGVjdCBhbGJ1bXMiLCJ2aWRlb190Y19zdXJlX2RlbGV0ZSI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyB2aWRlbz88YnI+PGJyPllvdSB3aWxsIG5vdCBiZSBhYmxlIHRvIHJlc3RvcmUgdGFncyBhbmQgY29tbWVudHMuIiwidmlkZW9fdGNfZGVsZXRlIjoiRGVsZXRlIiwidmlkZW9fZGVsZXRlX2RpYWxvZ190aXRsZSI6IkRlbGV0ZSB2aWRlbyIsInZpZGVvX2RlbGV0ZV9ib3hfbm9fdGl0bGUiOiJObyIsInZpZGVvX21lbnVfZGVsZXRlIjoiRGVsZXRlIHZpZGVvIiwidmlkZW9fdmlld3NfY291bnRfdHRfdGV4dCI6Ik9yaWdpbmFsIHZpZGVvIHZpZXdzICh0b3RhbCB2aWV3cykiLCJ2aWRlb19vbmx5X3ByaXZhdGVfdmlkZW8iOiJUaGlzIHZpZGVvIGNhbiBvbmx5IGJlIGFkZGVkIHRvIGEgcHJpdmF0ZSBhbGJ1bSIsInZpZGVvX2xlYXZlX2Nsb3NlZF9ncm91cF90aXRsZSI6IkxlYXZlIGNsb3NlZCBjb21tdW5pdHkiLCJ2aWRlb19sZWF2ZV9jbG9zZWRfZ3JvdXBfdGV4dCI6IllvdSBhcmUgYWJvdXQgdG8gbGVhdmUgYSBjbG9zZWQgY29tbXVuaXR5LiBJdCBtYXkgbm90IGJlIHRoYXQgZWFzeSB0byBjb21lIGJhY2suIExlYXZlIHRoZSBjb21tdW5pdHk/IiwidmlkZW9fbGVhdmVfYWRtaW5lZF9ncm91cF90ZXh0IjoiWW91IGFyZSBhbiA8Yj5hZG1pbmlzdHJhdG9yPFwvYj4gaW4gdGhpcyBjb21tdW5pdHkuIFlvdSB3aWxsIGxvc2UgdGhpcyBwb3NpdGlvbiBpZiB5b3UgbGVhdmUgbm93LiBMZWF2ZSB0aGUgY29tbXVuaXR5PyIsInZpZGVvX3ZpZXdfc3Vic2NyaWJlX3RvX2F1dGhvciI6IlN1YnNjcmliZSIsInZpZGVvX3ZpZXdfc3Vic2NyaWJlZF9tc2ciOiJGb2xsb3dpbmciLCJ2aWRlb19wbGF5ZXJfbmV4dF90aXRsZSI6Ik5leHQgdmlkZW8iLCJ2aWRlb19pX2xpa2UiOiJMaWtlIiwidmlkZW9fc2hhcmVfd2l0aF9mcmllbmRzIjoiU2hhcmUiLCJ2aWRlb19hZGRfZmxhc2giOiJBZGQgdG8gTXkgVmlkZW9zIiwidmlkZW9fYWRkZWRfZmxhc2giOiJWaWRlbyBhZGRlZCB0byBNeSBWaWRlb3MiLCJ2aWRlb19jb21tZW50c19zdW1tYXJ5IjpbIiIsIiVzIGNvbW1lbnQiLCIlcyBjb21tZW50cyJdLCJ2aWRlb19OX3ZpZXdzX2xpc3QiOlsiIiwiJXMgdmlldyIsIiVzIHZpZXdzIl0sInZpZGVvX3BsYXlsaXN0X3JldmVyc2VfdHQiOiJSZXZlcnNlIG9yZGVyIiwidmlkZW9fcGxheWxpc3RfYXV0b3BsYXlfZGlzYWJsZV90dCI6IkRpc2FibGUgYXV0b3BsYXkiLCJ2aWRlb19wbGF5bGlzdF9hdXRvcGxheV9lbmFibGVfdHQiOiJFbmFibGUgYXV0b3BsYXkiLCJ2aWRlb19saXZlX05fd2F0Y2hpbmciOlsiIiwiJXMgaXMgd2F0Y2hpbmcgbm93IiwiJXMgYXJlIHdhdGNoaW5nIG5vdyJdLCJ2aWRlb19saXZlX2NoYXRfbXNnX3Rvb19sb25nIjoiVGhlIG1lc3NhZ2UgaXMgdG9vIGxvbmciLCJ2aWRlb19saXZlX2NoYXRfdG9vX2Zhc3QiOiJUb28gZmFzdIUiLCJ2aWRlb19hcmlhX21pbmltaXplX3BsYXlsaXN0IjoiSGlkZSBwbGF5bGlzdCIsInZpZGVvX2FyaWFfZXhwYW5kX3BsYXlsaXN0IjoiU2hvdyBwbGF5bGlzdCIsInZpZGVvX2FyaWFfbWluaW1pemVfY2hhdCI6IkhpZGUgY2hhdCIsInZpZGVvX2FyaWFfZXhwYW5kX2NoYXQiOiJFeHBhbmQgY2hhdCIsInZpZGVvX2xpdmVfbm90aWZ5X3N1YnNjcmliZWQiOiJTdHJlYW0gbm90aWZpY2F0aW9ucyBlbmFibGVkIiwidmlkZW9fbGl2ZV9ub3RpZnlfdW5zdWJzY3JpYmVkIjoiU3RyZWFtIG5vdGlmaWNhdGlvbnMgZGlzYWJsZWQiLCJ2aWRlb19saXZlX3lvdV9oYXZlX1hfbW9uZXkiOiJZb3UgaGF2ZSB7bW9uZXl9IiwidmlkZW9fdW5mb2xsb3dfZnJpZW5kX3RpdGxlIjoiUmVtb3ZlIGZyb20gZnJpZW5kcyIsInZpZGVvX3VuZm9sbG93X2ZyaWVuZF90ZXh0IjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlbW92ZSBLaXJpbGwgZnJvbSB5b3VyIGZyaWVuZCBsaXN0PyJ9LCJtdkRhdGEiOnsidGl0bGUiOiJCRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0IiwiZGVzYyI6IkJFQVQgU09VTCBTVEVQICYjOTczMzsgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCAmIzk3MzM7IDEtMiDs4P8sIMzu8eri4CAyMDE0PGJyPkNob3Jlb2dyYXBoeTogS2F0aWU8YnI+PGJyPnByb2plY3Q4MTguY29tIHwgdmsuY29tXC9wcm9qZWN0ODE4cnVzc2lhIHwgdmsuY29tXC9wcm9qZWN0ODE4PGJyPjxicj5mYWNlYm9vay5jb21cL1Byb2plY3Q4MThSdXNzaWE8YnI+aW5zdGFncmFtLmNvbVwvcHJvamVjdDgxODxicj50d2l0dGVyLmNvbVwvcHJvamVjdDgxODxicj48YnI+eW91dHViZS5jb21cL1Byb2plY3Q4MThSdXNzaWE8YnI+eW91dHViZS5jb21cL1Byb2plY3Q4MThjaGFtcCIsIm9pZCI6MjE1MjY5OSwidmlkIjoxNjg1OTE3NDEsImF1dGhvcklkIjoyMTUyNjk5LCJhdXRob3JQaG90byI6Imh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzYyMzgyNFwvdjYyMzgyNDY5OVwvNTU1NzVcL0NDUVoyOWwwQjlrLmpwZyIsImF1dGhvckhyZWYiOiJcL2x5YW5vaS5raXJpbGwiLCJ2aWRlb1JhdyI6IjIxNTI2OTlfMTY4NTkxNzQxIiwiaGFzaCI6IjAyMzY0NmMwYmM3MTEwYWQ5MSIsImxpa2VIYXNoIjoiMzBjYzE4OTJmODFkZWI2MjM1IiwiZWRpdEhhc2giOiIiLCJlZGl0RnJvbURyb3Bkb3duIjowLCJoaWRlRWRpdCI6bnVsbCwiY29tbXNob3duIjowLCJjb21tY291bnQiOjAsImxpa2VkIjpmYWxzZSwibGlrZXMiOjAsImFkZGVkIjowLCJjYW5fYWRkIjowLCJhZGRfaGFzaCI6ImZmYjg0MmQwY2U2ZmMxNjhhNyIsIm5vbGlrZXMiOjEsImR1cmF0aW9uIjoyOTksInZzZWdzU2l6ZSI6MjkuMDAwMDAwLCJwbGF5bGlzdHMiOltdLCJ1cGxvYWRlZCI6ZmFsc2UsInB1Ymxpc2hlZCI6dHJ1ZSwibm9Db250cm9scyI6ZmFsc2UsInBsYXlsaXN0QWRkSGFzaCI6ImZmYjg0MmQwY2U2ZmMxNjhhNyIsImRlbGV0ZUhhc2giOiIiLCJyZXBvcnRSZWFzb25zIjpbXSwicmVwb3J0SGFzaCI6IjFkY2MzZjJkNDE2OWY1NTBjMCIsImluZm8iOlsyMTUyNjk5LDE2ODU5MTc0MSwiaHR0cHM6XC9cL3BwLnVzZXJhcGkuY29tXC9jNjE3ODMxXC91OTYxMjMzMDNcL3ZpZGVvXC9sXzI3ZTRmZjVjLmpwZyIsIkJFQVQgU09VTCBTVEVQIJcgUkRDMTQgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCwgTWF5IDEtMiwgTW9zY293IDIwMTQiLDMsIjQ6NTkiLCIiLCIiLCI8YSBocmVmPVwiXC9seWFub2kua2lyaWxsXCIgY2xhc3M9XCJtZW1fbGlua1wiPktpcmlsbCBMeWFub3k8XC9hPiIsMTM5OTg3NTc4MywzN10sImNhbkV4cG9ydCI6MSwiaXNWaWRlb0FkcyI6ZmFsc2UsImRlbGV0ZUZyb21BbGxBbGJ1bXNIYXNoIjoiIiwiaXNfbGl2ZSI6MCwiaXNfYWN0aXZlX2xpdmUiOjAsIlBMQVlMSVNUX0FEREVEX0lEIjotMiwiUExBWUxJU1RfVVBMT0FERURfSUQiOi0xLCJub1B1YmxpY0FkZCI6ZmFsc2UsIlBMQVlFUl9GVUxMX1dJRFRIIjo5NjAsIlBMQVlFUl9GVUxMX0hFSUdIVCI6NTQwLCJQTEFZRVJfUExfV0lEVEgiOjcyMCwiUExBWUVSX1BMX0hFSUdIVCI6NDA1LCJsX3R5cGUiOjIsImt6IjowLCJ0bnNfbW9uZXRpemVkIjp0cnVlfSwid2FsbFRwbCI6eyJyZXBseV9ib3giOiI8ZGl2IGlkPVwicmVwbHlfYm94X3dyYXAlcG9zdF9pZCVcIj48ZGl2IGNsYXNzPVwicmVwbHlfYm94X2lubmVyX3dyYXBcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X2Zha2Vib3hfd3JhcFwiIGlkPVwicmVwbHlfZmFrZWJveCVwb3N0X2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5zaG93RWRpdFJlcGx5KCclcG9zdF9pZCUnLCBldmVudClcIiBkYXRhLW93bmVyLXBob3RvPVwiJW93bmVyX3Bob3RvJVwiIGRhdGEtb3duZXItaHJlZj1cIiVvd25lcl9ocmVmJVwiPlxuICAgIDxkaXYgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJcIj5cbiAgPGEgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfbGlua1wiIGhyZWY9XCJcL2lkXCIgb25jbGljaz1cInJldHVybiBuYXYuZ28odGhpcywgZXZlbnQpXCI+XG4gICAgPGltZyBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9pbWFnZVwiIHNyYz1cIlwvaW1hZ2VzXC9jYW1lcmFfNTAucG5nXCIgXC8+XG4gIDxcL2E+XG48XC9kaXY+JXVzZXJfaW1hZ2UlXG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2Zha2Vib3hcIj5MZWF2ZSBhIGNvbW1lbnQuLi48XC9kaXY+PFwvZGl2PlxuPFwvZGl2PjxcL2Rpdj48aW5wdXQgdHlwZT1cImhpZGRlblwiIGlkPVwicG9zdF9oYXNoJXBvc3RfaWQlXCIgdmFsdWU9XCIxNDkwNjQ4NTAzXzE3NzVkMjYyM2ViYTk5MDU5MlwiIGNhbl9yZXBseV9hc19ncm91cD1cIiVjYW5fcmVwbHlfYXNfZ3JvdXAlXCIgXC8+IiwicmVwbHlfZm9ybSI6IjxkaXYgaWQ9XCJyZXBseV9ib3glcG9zdF9pZCVcIiBjbGFzcz1cInN1Ym1pdF9wb3N0X2JveCByZXBseV9ib3ggY2xlYXJfZml4IF9zdWJtaXRfcG9zdF9ib3hcIiBvbmNsaWNrPVwicmV0dXJuIGNhbmNlbEV2ZW50KGV2ZW50KVwiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfZm9ybVwiPlxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJyZXBseV90byVwb3N0X2lkJVwiIHZhbHVlPVwiXCIgXC8+XG4gICAgPGRpdiBjbGFzcz1cInBvc3RfZmllbGRfdXNlclwiPlxuICA8YSBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9saW5rXCIgaHJlZj1cIlwvaWRcIiBvbmNsaWNrPVwicmV0dXJuIG5hdi5nbyh0aGlzLCBldmVudClcIj5cbiAgICA8aW1nIGNsYXNzPVwicG9zdF9maWVsZF91c2VyX2ltYWdlXCIgc3JjPVwiXC9pbWFnZXNcL2NhbWVyYV81MC5wbmdcIiBcLz5cbiAgPFwvYT5cbjxcL2Rpdj4ldXNlcl9pbWFnZSVcbiAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZmllbGRfd3JhcCBfZW1vamlfZmllbGRfd3JhcFwiPlxuICAgICAgPGRpdiBpZD1cInJlcGx5X3NtaWxlJXBvc3RfaWQlXCIgY2xhc3M9XCJlbW9qaV9zbWlsZV93cmFwICBfZW1vamlfd3JhcFwiPlxuICA8ZGl2IGNsYXNzPVwiZW1vamlfc21pbGUgX2Vtb2ppX2J0blwiIHRpdGxlPVwiVXNlIHRoZSBUQUIga2V5IHRvIGluc2VydCBlbW9qaSBmYXN0ZXJcIiBvbm1vdXNlb3Zlcj1cInJldHVybiBFbW9qaS5zaG93KHRoaXMsIGV2ZW50KTtcIiBvbm1vdXNlb3V0PVwicmV0dXJuIEVtb2ppLmhpZGUodGhpcywgZXZlbnQpO1wiIG9uY2xpY2s9XCJyZXR1cm4gY2FuY2VsRXZlbnQoZXZlbnQpO1wiPlxuICAgIDxkaXYgY2xhc3M9XCJlbW9qaV9zbWlsZV9pY29uXCI+PFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+XG4gICAgICA8ZGl2IGlkPVwicmVwbHlfZmllbGQlcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X2ZpZWxkIHN1Ym1pdF9wb3N0X2ZpZWxkXCIgb25mb2N1cz1cInJldHVybiBXYWxsLnNob3dFZGl0UmVwbHkoJyVwb3N0X2lkJScsIGV2ZW50KTtcIiBjb250ZW50ZWRpdGFibGU9XCJ0cnVlXCIgcGxhY2Vob2xkZXI9XCJMZWF2ZSBhIGNvbW1lbnQuLi5cIj48XC9kaXY+XG4gICAgPFwvZGl2PlxuICAgIDxkaXYgaWQ9XCJzdWJtaXRfcmVwbHklcG9zdF9pZCVcIiBjbGFzcz1cInN1Ym1pdF9wb3N0IGNsZWFyX2ZpeFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X3dhcm4gY2xlYXJcIiBpZD1cInJlcGx5X3dhcm4lcG9zdF9pZCVcIj48XC9kaXY+XG4gICAgICA8ZGl2IGlkPVwicmVwbHlfbWVkaWFfcHJldmlldyVwb3N0X2lkJVwiIGNsYXNzPVwicmVwbHlfbWVkaWFfcHJldmlldyBjbGVhcl9maXggbWVkaWFfcHJldmlld1wiPjxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJhZGRwb3N0X2J1dHRvbl93cmFwXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJmbGF0X2J1dHRvbiBhZGRwb3N0X2J1dHRvblwiIGlkPVwicmVwbHlfYnV0dG9uJXBvc3RfaWQlXCIgb25jbGljaz1cIndhbGwuc2VuZFJlcGx5KCclcG9zdF9pZCUnLCBldmVudCwge30pO1wiIG9ubW91c2VvdmVyPVwid2FsbC5yZXBseVN1Ym1pdFRvb2x0aXAoJyVwb3N0X2lkJScsIDEsIHRoaXMpO1wiIG9ubW91c2VvdXQ9XCJ3YWxsLnJlcGx5U3VibWl0VG9vbHRpcCgnJXBvc3RfaWQlJywgMCwgdGhpcyk7XCI+UG9zdDxcL2J1dHRvbj5cbiAgICAgIDxcL2Rpdj5cbiAgICAgICVhZGRfYnV0dG9ucyVcbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlX2FkZF9tZWRpYVwiIGlkPVwicmVwbHlfYWRkX21lZGlhXyVwb3N0X2lkJVwiPjxcL2Rpdj5cbiAgICAgIDxkaXYgaWQ9XCJyZXBseV90b190aXRsZSVwb3N0X2lkJVwiIGNsYXNzPVwicmVwbHlfdG9fdGl0bGUgYWRkcG9zdF9wb3B0XCI+PFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsInJlcGx5X2Zvcm1fb2ZmaWNpYWwiOiI8ZGl2IGNsYXNzPVwiYWRkcG9zdF9vcHQgY2hlY2tib3hfb2ZmaWNpYWxcIiBpZD1cInJlcGx5X2FzX2dyb3VwJXBvc3RfaWQlXCIgb25jbGljaz1cIndhbGwucmVwbHlBc0dyb3VwKHRoaXMpO1wiIG9ubW91c2VvdmVyPVwid2FsbC5yZXBseUFzR3JvdXBPdmVyKHRoaXMsICdvbiBiZWhhbGYgb2YgdGhlIHVzZXInLCAncG9zdCBhcyBjb21tdW5pdHknKTtcIiBvbmZvY3VzPVwid2FsbC5yZXBseUFzR3JvdXBPdmVyKHRoaXMsICdvbiBiZWhhbGYgb2YgdGhlIHVzZXInLCAncG9zdCBhcyBjb21tdW5pdHknKTtcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwiYnV0dG9uXCIgYXJpYS1sYWJlbD1cIm9uIGJlaGFsZiBvZiB0aGUgdXNlclwiPlxuICA8aW1nIGNsYXNzPVwidGh1bWJfb2ZmXCIgc3JjPVwiXC9pbWFnZXNcL2NhbWVyYV81MC5wbmdcIiBcLz5cbiAgPGltZyBjbGFzcz1cInRodW1iX29uXCIgc3JjPVwiJW93bmVyX3Bob3RvJVwiIFwvPlxuPFwvZGl2PiIsInJlcGx5X2Zvcm1fZ3JvdXBfaW1hZ2UiOiI8ZGl2IGNsYXNzPVwicG9zdF9maWVsZF9ncm91cFwiPlxuICA8YSBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9saW5rXCIgaHJlZj1cIiVvd25lcl9ocmVmJVwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KVwiPlxuICAgIDxpbWcgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfaW1hZ2VcIiBzcmM9XCIlb3duZXJfcGhvdG8lXCIgXC8+XG4gIDxcL2E+XG48XC9kaXY+IiwicmVwbHlfbXVsdGlsaW5lIjpmYWxzZSwicmVwbHlfbXVsdGlsaW5lX2ludHJvIjp0cnVlLCJyZXBseV9saW5rX3dyYXAiOiI8ZGl2IGNsYXNzPVwicmVwbHlfbGlua193cmFwXCI+XG4gIDxhIGNsYXNzPVwicmVwbHlfbGluayBfcmVwbHlfbG5rXCI+UmVwbHk8XC9hPlxuPFwvZGl2PiIsInJlcGx5X2xpbmtfdG8iOiIgPGEgY2xhc3M9XCJyZXBseV90b1wiPnJlcGxpZWQgdG8gJXRvX3VzZXIlPFwvYT4iLCJyZXBseV9mYXN0IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAgX3Bvc3RcIiBkYXRhLXBvc3QtaWQ9XCIlcmVwbHlfaWQlXCIgPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfd3JhcCBfcmVwbHlfY29udGVudCBfcG9zdF9jb250ZW50IGNsZWFyX2ZpeFwiPlxuICAgIFxuICAgIDxhIGNsYXNzPVwicmVwbHlfaW1hZ2VcIiBocmVmPVwiXC9pZFwiPlxuICAgICAgPGltZyBzcmM9XCJcL2ltYWdlc1wvY2FtZXJhXzUwLnBuZ1wiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIGNsYXNzPVwicmVwbHlfaW1nXCIgYWx0PVwiREVMRVRFRFwiIFwvPlxuICAgIDxcL2E+XG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2NvbnRlbnRcIiA+XG4gICAgICBcbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9hdXRob3JcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJhdXRob3JcIiBocmVmPVwiXC9pZFwiIGRhdGEtZnJvbS1pZD1cIjBcIj5ERUxFVEVEPFwvYT4ldG9fbGluayVcbiAgICAgIDxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV90ZXh0XCIgPjxkaXYgY2xhc3M9XCJ3YWxsX3JlcGx5X3RleHRcIj4lbWVzc2FnZSU8XC9kaXY+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2Zvb3RlciBjbGVhcl9maXhcIiBpZD1cIndwZV9ib3R0b20lcmVwbHlfaWQlXCI+XG4gICAgICAgIFxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZGF0ZVwiPiVkYXRlJTxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPlxuICA8YSBjbGFzcz1cInJlcGx5X2xpbmsgX3JlcGx5X2xua1wiPlJlcGx5PFwvYT5cbjxcL2Rpdj5cbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJyZXBseV9tdWx0aWxpbmVfaGludCI6IjxkaXYgY2xhc3M9XCJyZXBseV9zdWJtaXRfaGludF93cmFwXCIgIG9uY2xpY2s9XCJzdG9wRXZlbnQoZXZlbnQpO1wiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfc3VibWl0X2hpbnRfdGl0bGVcIj5TaG9ydGN1dHM8XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJyZXBseV9zdWJtaXRfaGludF9vcHRzXCIgaWQ9XCJyZXBseV9zdWJtaXRfaGludF9vcHRzXCI+XG4gICAgPGRpdiBjbGFzcz1cInJhZGlvYnRuICVkaXNhYmxlZCUgXCIgZGF0YS12YWw9XCIwXCIgb25jbGljaz1cInJhZGlvYnRuKHRoaXMsIDAsICdyZXBseV9zdWJtaXQnKTsgd2FsbC5vblJlcGx5U3VibWl0Q2hhbmdlZCgwKTtcIj48ZGl2IGNsYXNzPVwicmFkaW9idG5fbGFiZWxcIj48Yj5FbnRlcjxcL2I+IJcgc2VuZCBtZXNzYWdlPGJyPjxiPlNoaWZ0K0VudGVyPFwvYj4glyBuZXcgbGluZTxcL2Rpdj48XC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInJhZGlvYnRuICVlbmFibGVkJSBcIiBkYXRhLXZhbD1cIjFcIiBvbmNsaWNrPVwicmFkaW9idG4odGhpcywgMSwgJ3JlcGx5X3N1Ym1pdCcpOyB3YWxsLm9uUmVwbHlTdWJtaXRDaGFuZ2VkKDEpO1wiPjxkaXYgY2xhc3M9XCJyYWRpb2J0bl9sYWJlbFwiPjxiPkN0cmwrRW50ZXI8XC9iPiCXIHNlbmQgbWVzc2FnZTxicj48Yj5FbnRlcjxcL2I+IJcgbmV3IGxpbmU8XC9kaXY+PFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwicmVwbHlfYnV0dG9uIjoiPGEgaHJlZj1cIiNcIiBjbGFzcz1cInBvc3RfcmVwbHkgX3JlcGx5X3dyYXBcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwuc2hvd0VkaXRSZXBseSgnJXBvc3RfaWQlJywgZXZlbnQpXCI+XG4gIDxpIGNsYXNzPVwicG9zdF9yZXBseV9pY29uIF9pY29uXCI+PFwvaT5cbiAgPHNwYW4gY2xhc3M9XCJwb3N0X3JlcGx5X2xpbmsgX2xpbmtcIj5Db21tZW50PFwvc3Bhbj5cbiAgPHNwYW4gY2xhc3M9XCJwb3N0X3JlcGx5X2NvdW50IF9jb3VudFwiPjxcL3NwYW4+XG48XC9hPiIsInJlcGx5X2xpbmsiOiI8c3BhbiBpZD1cInJlcGx5X2xpbmslcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJyZXBseV9saW5rXCIgb25jbGljaz1cInJldHVybiBXYWxsLnNob3dFZGl0UmVwbHkoJyVwb3N0X2lkJScsIGV2ZW50KVwiPkNvbW1lbnQ8XC9hPjxcL3NwYW4+Iiwib3duX3JlcGx5X2xpbmsiOiI8c3BhbiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPjxhIGNsYXNzPVwicmVwbHlfbGlua1wiIG9uY2xpY2s9XCJXYWxsLmxpa2VTaGFyZUN1c3RvbSgnJXBvc3RfaWQlJylcIj5SZXBseTxcL2E+PFwvc3Bhbj4iLCJlZGl0X2xpbmsiOiI8c3BhbiBjbGFzcz1cImRpdmlkZVwiPnw8XC9zcGFuPjxhIG9uY2xpY2s9XCJ3YWxsLmVkaXRQb3N0KHRoaXMsICclcG9zdF9pZCUnKVwiPkVkaXQgPFwvYT4iLCJwb3N0IjoiPGRpdiBpZD1cInBvc3QlcG9zdF9pZCVcIiBjbGFzcz1cIl9wb3N0IHBvc3QgcGFnZV9ibG9ja1wiIGRhdGEtcG9zdC1pZD1cIiVwb3N0X2lkJVwiIG9uY2xpY2s9XCJ3YWxsLnBvc3RDbGljaygnJXBvc3RfaWQlJywgZXZlbnQpO1wiID5cbiAgPGRpdiBjbGFzcz1cIl9wb3N0X2NvbnRlbnRcIj5cbiAgICBcbiAgICA8ZGl2IGNsYXNzPVwicG9zdF9oZWFkZXJcIj5cbiAgICAgIDxhIGNsYXNzPVwicG9zdF9pbWFnZSVvbmxpbmVfY2xhc3MlXCIgaHJlZj1cIiVsaW5rJVwiPlxuICAgICAgICA8aW1nIHNyYz1cIiVwaG90byVcIiBkYXRhLXBvc3QtaWQ9XCIlcG9zdF9pZCVcIiBkYXRhLXBvc3QtY2xpY2stdHlwZT1cInBvc3Rfb3duZXJfaW1nXCIgd2lkdGg9XCI1MFwiIGhlaWdodD1cIjUwXCIgY2xhc3M9XCJwb3N0X2ltZ1wiIFwvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCI+LjxcL3NwYW4+XG4gICAgICA8XC9hPlxuICAgICAgPGRpdiBjbGFzcz1cInBvc3RfaGVhZGVyX2luZm9cIj5cbiAgICAgICAgPGg1IGNsYXNzPVwicG9zdF9hdXRob3JcIj4lbmFtZSU8XC9oNT5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBvc3RfZGF0ZVwiPjxhIGNsYXNzPVwicG9zdF9saW5rXCIgaHJlZj1cIlwvd2FsbCVwb3N0X2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gc2hvd1dpa2koe3c6ICd3YWxsJXBvc3RfaWQlJ30sIGZhbHNlLCBldmVudCk7XCI+JWRhdGUlPFwvYT48XC9kaXY+XG4gICAgICAgICVhY3Rpb25zJVxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicG9zdF9jb250ZW50XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicG9zdF9pbmZvXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3YWxsX3RleHRcIj4ldGV4dCU8XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwb3N0X2Z1bGxfbGlrZV93cmFwIGNsZWFyX2ZpeFwiPlxuICA8ZGl2IGNsYXNzPVwicG9zdF9mdWxsX2xpa2VcIj5cbiAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwicG9zdF9saWtlIF9saWtlX3dyYXAgbm9fbGlrZXNcIiBvbm1vdXNlb3Zlcj1cIldhbGwubGlrZXNTaG93KHRoaXMsICclcG9zdF9pZCUnKVwiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5saWtlSXQodGhpcywgJyVwb3N0X2lkJScsICcxNDkwNjQ4NTAzX2E1YjA3MzlkNmMxMTdmNzM0OScsIGV2ZW50KTtcIj5cbiAgICAgIDxpIGNsYXNzPVwicG9zdF9saWtlX2ljb24gX2ljb25cIj48XC9pPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwb3N0X2xpa2VfbGluayBfbGlua1wiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3RfbGlrZV9jb3VudCBfY291bnRcIj48XC9zcGFuPlxuICAgIDxcL2E+XG4gICAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCIgb25jbGljaz1cIldhbGwubGlrZXNTaG93TGlzdCh0aGlzLCAnJXBvc3RfaWQlJylcIj5TaG93IGxpa2VzPFwvc3Bhbj5cbiAgICAlcmVwbHlfYnV0dG9uJVxuICAgIDxhIGhyZWY9XCIjXCIgY2xhc3M9XCJwb3N0X3NoYXJlIF9zaGFyZV93cmFwIG5vX3NoYXJlc1wiICBvbm1vdXNlb3Zlcj1cIldhbGwuc2hhcmVzU2hvdyh0aGlzLCAnJXBvc3RfaWQlJylcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwuc2hhcmVzT3BlbihldmVudCwgJyVwb3N0X2lkJScpO1wiPlxuICAgICAgPGkgY2xhc3M9XCJwb3N0X3NoYXJlX2ljb24gX2ljb25cIj48XC9pPlxuICAgICAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3Rfc2hhcmVfbGluayBfbGlua1wiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3Rfc2hhcmVfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbiAgICA8XC9hPlxuICAgIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiIG9uY2xpY2s9XCJXYWxsLnNoYXJlc1Nob3dMaXN0KHRoaXMsICclcG9zdF9pZCUnKVwiPlNob3cgc2hhcmVkIGNvcGllczxcL3NwYW4+XG4gICAgXG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInBvc3Rfdmlld3MgX3ZpZXdzX3dyYXAgbm9fdmlld3MgX2F1dG9fdXBkYXRlXCIgb25tb3VzZW92ZXI9XCJXYWxsLnZpZXdzVXBkYXRlKHRoaXMsICclcG9zdF9pZCUnKVwiPlxuICA8aSBjbGFzcz1cInBvc3Rfdmlld3NfaWNvbiBfaWNvblwiPjxcL2k+XG4gIDxzcGFuIGNsYXNzPVwicG9zdF92aWV3c19jb3VudCBfY291bnRcIj48XC9zcGFuPlxuPFwvZGl2PlxuPFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbGllc1wiPjxkaXYgY2xhc3M9XCJyZXBsaWVzX3dyYXBcIiBpZD1cInJlcGxpZXNfd3JhcCVwb3N0X2lkJVwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGxpZXNfbGlzdCBfcmVwbGllc19saXN0XCIgaWQ9XCJyZXBsaWVzJXBvc3RfaWQlXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBpZD1cInN0YXJ0X3JlcGx5JXBvc3RfaWQlXCIgdmFsdWU9XCJcIlwvPjxcL2Rpdj5cbiAgJXJlcGx5X2JveCVcbjxcL2Rpdj48XC9kaXY+XG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICAgIFxuICA8XC9kaXY+XG4gIFxuPFwvZGl2PiIsInJlcGx5IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAlY2xhc3NuYW1lJSBfcG9zdFwiIGRhdGEtcG9zdC1pZD1cIiVyZXBseV9pZCVcIiAlYXR0ciU+XG4gIDxkaXYgY2xhc3M9XCJyZXBseV93cmFwIF9yZXBseV9jb250ZW50IF9wb3N0X2NvbnRlbnQgY2xlYXJfZml4XCI+XG4gICAgXG4gICAgPGEgY2xhc3M9XCJyZXBseV9pbWFnZVwiIGhyZWY9XCIlbGluayVcIj5cbiAgICAgIDxpbWcgc3JjPVwiJXBob3RvJVwiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIGNsYXNzPVwicmVwbHlfaW1nXCIgYWx0PVwiJW5hbWUlXCIgXC8+XG4gICAgPFwvYT5cbiAgICA8ZGl2IGNsYXNzPVwicmVwbHlfY29udGVudFwiID5cbiAgICAgICVhY3Rpb25zJVxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2F1dGhvclwiPlxuICAgICAgICA8YSBjbGFzcz1cImF1dGhvclwiIGhyZWY9XCIlbGluayVcIiBkYXRhLWZyb20taWQ9XCIlcmVwbHlfdWlkJVwiPiVuYW1lJTxcL2E+JXRvX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfdGV4dFwiID4ldGV4dCU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZm9vdGVyIGNsZWFyX2ZpeFwiIGlkPVwid3BlX2JvdHRvbSVyZXBseV9pZCVcIj5cbiAgICAgICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cImxpa2Vfd3JhcCBfbGlrZV93cmFwIG5vX2xpa2VzXCIgb25jbGljaz1cInJldHVybiBXYWxsLmxpa2VJdCh0aGlzLCAnJWxpa2VfaWQlJywgJzE0OTA2NDg1MDNfYTViMDczOWQ2YzExN2Y3MzQ5JywgZXZlbnQpO1wiIG9ubW91c2VvdmVyPVwiV2FsbC5saWtlc1Nob3codGhpcywgJyVsaWtlX2lkJScpXCI+XG4gIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIj5MaWtlPFwvc3Bhbj5cbiAgPGkgY2xhc3M9XCJsaWtlX2ljb24gX2ljb25cIj48XC9pPlxuICA8c3BhbiBjbGFzcz1cImxpa2VfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbjxcL2E+XG48c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIiBvbmNsaWNrPVwiV2FsbC5saWtlc1Nob3dMaXN0KHRoaXMsICclbGlrZV9pZCUnKVwiPlNob3cgbGlrZXM8XC9zcGFuPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZGF0ZVwiPjxhIGNsYXNzPVwid2RfbG5rXCIgaHJlZj1cIlwvd2FsbCVwb3N0X2lkJT9yZXBseT0lcmVwbHlfbXNnX2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KVwiPiVkYXRlJTxcL2E+PFwvZGl2PlxuICAgICAgICAlYW5zd2VyX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwiZGVsIjoiPGEgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfaXRlbVwiIG9uY2xpY2s9XCJ3YWxsLmRlbGV0ZVBvc3QodGhpcywgJyVwb3N0X2lkJScsICcxNDkwNjQ4NTAzXzBiZjBjNmIyNTgzNGUxOWEwMicpOyByZXR1cm4gZmFsc2U7XCI+RGVsZXRlIHBvc3Q8XC9hPiIsInNwYW0iOiI8YSBjbGFzcz1cInVpX2FjdGlvbnNfbWVudV9pdGVtXCIgb25jbGljaz1cIndhbGwubWFya0FzU3BhbSh0aGlzLCAnJXBvc3RfaWQlJywgJzE0OTA2NDg1MDNfOWU5ODA0NjM2MDJiYzBjZDk0Jyk7IHJldHVybiBmYWxzZTtcIj5SZXBvcnQ8XC9hPiIsImVkaXQiOiI8YSBjbGFzcz1cInVpX2FjdGlvbnNfbWVudV9pdGVtXCIgb25jbGljaz1cIndhbGwuZWRpdFBvc3QodGhpcywgJyVwb3N0X2lkJScpOyByZXR1cm4gZmFsc2U7XCI+RWRpdCA8XC9hPiIsInBvc3RfYWN0aW9ucyI6IjxkaXYgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfd3JhcCBfdWlfbWVudV93cmFwIFwiIG9ubW91c2VvdmVyPVwidWlBY3Rpb25zTWVudS5zaG93KHRoaXMpO1wiIG9ubW91c2VvdXQgPVwidWlBY3Rpb25zTWVudS5oaWRlKHRoaXMpO1wiPlxuICA8ZGl2IGNsYXNzPVwidWlfYWN0aW9uc19tZW51X2ljb25zXCIgIHRhYmluZGV4PVwiMFwiIGFyaWEtbGFiZWw9XCJBY3Rpb25zXCIgcm9sZT1cImJ1dHRvblwiIG9uY2xpY2s9XCJ1aUFjdGlvbnNNZW51LmtleVRvZ2dsZSh0aGlzLCBldmVudCk7XCI+PHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPkFjdGlvbnM8XC9zcGFuPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInVpX2FjdGlvbnNfbWVudSBfdWlfbWVudVwiID4lYWN0aW9ucyU8XC9kaXY+XG48XC9kaXY+IiwiZGVsX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRGVsZXRlXCIgb25jbGljaz1cIndhbGwuZGVsZXRlUG9zdCh0aGlzLCAnJXJlcGx5X2lkJScsICcxNDkwNjQ4NTAzXzBiZjBjNmIyNTgzNGUxOWEwMicpO1wiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJEZWxldGVcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4iLCJzcGFtX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiUmVwb3J0XCIgb25jbGljaz1cIndhbGwubWFya0FzU3BhbSh0aGlzLCAnJXJlcGx5X2lkJScsICcxNDkwNjQ4NTAzXzllOTgwNDYzNjAyYmMwY2Q5NCcpO1wiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJSZXBvcnRcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4iLCJlZGl0X3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2VkaXQlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9lZGl0X2J1dHRvbiByZXBseV9hY3Rpb24gZmxfclwiIGRhdGEtdGl0bGU9XCJFZGl0IFwiIG9uY2xpY2s9XCJ3YWxsLmVkaXRQb3N0KHRoaXMsICclcmVwbHlfaWQlJyk7XCIgb25tb3VzZW92ZXI9XCJzaG93VGl0bGUodGhpcyk7XCIgYXJpYS1sYWJlbD1cIkVkaXQgXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+IiwicmVwbHlfYWN0aW9ucyI6IjxkaXYgY2xhc3M9XCJmbF9yIHBvc3RfYWN0aW9uc193cmFwXCI+PGRpdiBjbGFzcz1cInBvc3RfYWN0aW9uc1wiPiVhY3Rpb25zJTxcL2Rpdj48XC9kaXY+IiwicG9sbF9zdGF0cyI6IjxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfc3RhdFwiJWhhbmRsZXJzJT5cbiAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF90ZXh0XCI+JW9wdGlvbl90ZXh0JTxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF9yb3dfd3JhcFwiPlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93X3BlcmNlbnRcIj4lcGVyY2VudCUlPFwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93JXJvd19jbGFzcyVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcGVyY2VudFwiIHN0eWxlPVwid2lkdGg6ICVjc3NfcGVyY2VudCUlXCI+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF9yb3dfY291bnRcIj4lY291bnQlPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsInBvbGxfaGFzaCI6IjE0OTA2NDg1MDNfNmI4NzJmOWQ2Yjk1NzliODM0IiwiZGF0ZV9mb3JtYXQiOiJ0b2RheSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInRpbWVfc3lzdGVtIjpbInBtIiwiYW0iXSwiYWJzX3RpbWVzdGFtcCI6MTQ5MDY0ODUwMywibGFuZyI6eyJ3YWxsX01fcmVwbGllc19vZl9OIjpbIiIsIiVzIGNvbW1lbnQgb2Yge2xpbmt9e2FsbH17XC9saW5rfSIsIiVzIGNvbW1lbnRzIG9mIHtsaW5rfXthbGx9e1wvbGlua30iXSwid2FsbF9oaWRlX3JlcGxpZXMiOiJIaWRlIGNvbW1lbnRzIiwid2FsbF9zaG93X25fb2ZfbV9sYXN0IjpbIiIsIlNob3cgbGF0ZXN0ICVzIGNvbW1lbnQgb3V0IG9mIHtjb3VudH0iLCJTaG93IGxhdGVzdCAlcyBjb21tZW50cyBvdXQgb2Yge2NvdW50fSJdLCJ3YWxsX3Nob3dfYWxsX25fcmVwbGllcyI6WyIiLCJTaG93ICVzIGNvbW1lbnQiLCJTaG93IGFsbCAlcyBjb21tZW50cyJdLCJ3YWxsX05fcmVwbGllcyI6WyIiLCIlcyBjb21tZW50IiwiJXMgY29tbWVudHMiXSwid2FsbF90aHJlZV9sYXN0X3JlcGxpZXMiOiJsYXN0IHRocmVlIHBvc3RzIiwid2FsbF9hbGxfcmVwbGllcyI6ImFsbCBjb21tZW50cyIsIndhbGxfeF9uZXdfcmVwbGllc19tb3JlIjpbIiIsIiVzIG5ldyBjb21tZW50IGFkZGVkIiwiJXMgbmV3IGNvbW1lbnRzIGFkZGVkIl0sIndhbGxfWF9wZW9wbGVfdm90ZWQiOlsiIiwiPGI+JXM8XC9iPiBwZXJzb24gdm90ZWQuIiwiPGI+JXM8XC9iPiBwZW9wbGUgdm90ZWQuIl0sIndhbGxfcmVwbHlfc3VibWl0X2hpbnRfMSI6IlNoaWZ0K0VudGVyIJcgbmV3IGxpbmUiLCJ3YWxsX3JlcGx5X3N1Ym1pdF9oaW50XzIiOiJDdHJsK0VudGVyIJYgc2VuZCBtZXNzYWdlIiwid2FsbF9yZXBseV9zdWJtaXRfaGludF8xX21vcmUiOiJFbnRlciCXIHNlbmQgbWVzc2FnZSwgU2hpZnQrRW50ZXIglyBuZXcgbGluZSIsIndhbGxfcmVwbHlfc3VibWl0X2hpbnRfMl9tb3JlIjoiRW50ZXIglyBuZXcgbGluZSwgQ3RybCtFbnRlciCXIHNlbmQgbWVzc2FnZSIsIndhbGxfcmVwbHlfcG9zdCI6IlJlcGx5Iiwid2FsbF9yZXBsaWVkX3RvX2dyb3VwIjoidGhlIGFkbWluIiwid2FsbF9yZXBseV9hc191c2VyIjoib24gYmVoYWxmIG9mIHRoZSB1c2VyIiwid2FsbF9yZXBseV9hc19ncm91cCI6InBvc3QgYXMgY29tbXVuaXR5Iiwid2FsbF9hZGRfcGhvdG9fZXJyb3IiOiJVbmFibGUgdG8gdXBsb2FkIHRoZSBpbWFnZSIsIndhbGxfanVzdF9ub3ciOlsiIiwiT25lIHNlY29uZCBhZ28iLCJUd28gc2Vjb25kcyBhZ28iLCJUaHJlZSBzZWNvbmRzIGFnbyIsIkZvdXIgc2Vjb25kcyBhZ28iLCJGaXZlIHNlY29uZHMgYWdvIl0sIndhbGxfWF9zZWNvbmRzX2Fnb193b3JkcyI6WyIiLCJPbmUgc2Vjb25kIGFnbyIsIlR3byBzZWNvbmRzIGFnbyIsIlRocmVlIHNlY29uZHMgYWdvIiwiRm91ciBzZWNvbmRzIGFnbyIsIkZpdmUgc2Vjb25kcyBhZ28iXSwid2FsbF9YX3NlY29uZHNfYWdvIjpbIiIsIiVzIHNlY29uZCBhZ28iLCIlcyBzZWNvbmRzIGFnbyJdLCJ3YWxsX1hfbWludXRlc19hZ29fd29yZHMiOlsiIiwib25lIG1pbnV0ZSBhZ28iLCJ0d28gbWludXRlcyBhZ28iLCJ0aHJlZSBtaW51dGVzIGFnbyIsIjQgbWludXRlcyBhZ28iLCI1IG1pbnV0ZXMgYWdvIl0sIndhbGxfWF9taW51dGVzX2FnbyI6WyIiLCIlcyBtaW51dGUgYWdvIiwiJXMgbWludXRlcyBhZ28iXSwid2FsbF9YX2hvdXJzX2Fnb193b3JkcyI6WyIiLCJvbmUgaG91ciBhZ28iLCJ0d28gaG91cnMgYWdvIiwidGhyZWUgaG91cnMgYWdvIiwiZm91ciBob3VycyBhZ28iLCJmaXZlIGhvdXJzIGFnbyJdLCJ3YWxsX1hfaG91cnNfYWdvIjpbIiIsIiVzIGhvdXIgYWdvIiwiJXMgaG91cnMgYWdvIl19fSwic2hhcmVfdGltZWhhc2giOiIxNDkwNjQ4NTAzXzg4NzU0MTEzY2IwMTY1YThkNyIsImNvbW1lbnRzVHBsIjp7InJlcGx5IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAgX3Bvc3RcIiBkYXRhLXBvc3QtaWQ9XCIlcmVwbHlfaWQlXCIgIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbWVudENsaWNrKHRoaXMsIGV2ZW50LCAlZnJvbV9pZCUsICVyZXBseV9tc2dfaWQlKVwiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfd3JhcCBfcmVwbHlfY29udGVudCBfcG9zdF9jb250ZW50IGNsZWFyX2ZpeFwiPlxuICAgIFxuICAgIDxhIGNsYXNzPVwicmVwbHlfaW1hZ2VcIiBocmVmPVwiJWhyZWYlXCI+XG4gICAgICA8aW1nIHNyYz1cIiVwaG90byVcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiBjbGFzcz1cInJlcGx5X2ltZ1wiIGFsdD1cIiVuYW1lJVwiIFwvPlxuICAgIDxcL2E+XG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2NvbnRlbnRcIiA+XG4gICAgICAlYWN0aW9ucyVcbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9hdXRob3JcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJhdXRob3JcIiBocmVmPVwiJWhyZWYlXCIgZGF0YS1mcm9tLWlkPVwiJWZyb21faWQlXCI+JW5hbWUlPFwvYT4ldG9fbGluayVcbiAgICAgIDxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV90ZXh0XCIgPiVtZXNzYWdlJTxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9mb290ZXIgY2xlYXJfZml4XCIgaWQ9XCJ3cGVfYm90dG9tJXJlcGx5X2lkJVwiPlxuICAgICAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwibGlrZV93cmFwIF9saWtlX3dyYXAgbm9fbGlrZXNcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwubGlrZUl0KHRoaXMsICclcG9zdF9vaWQldmlkZW9fY29tbWVudCVyZXBseV9tc2dfaWQlbXYnLCAnMTQ5MDY0ODUwM19hNWIwNzM5ZDZjMTE3ZjczNDknLCBldmVudCk7XCIgb25tb3VzZW92ZXI9XCJXYWxsLmxpa2VzU2hvdyh0aGlzLCAnJXBvc3Rfb2lkJXZpZGVvX2NvbW1lbnQlcmVwbHlfbXNnX2lkJW12JylcIj5cbiAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPkxpa2U8XC9zcGFuPlxuICA8aSBjbGFzcz1cImxpa2VfaWNvbiBfaWNvblwiPjxcL2k+XG4gIDxzcGFuIGNsYXNzPVwibGlrZV9jb3VudCBfY291bnRcIj48XC9zcGFuPlxuPFwvYT5cbjxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiIG9uY2xpY2s9XCJXYWxsLmxpa2VzU2hvd0xpc3QodGhpcywgJyVwb3N0X29pZCV2aWRlb19jb21tZW50JXJlcGx5X21zZ19pZCVtdicpXCI+U2hvdyBsaWtlczxcL3NwYW4+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9kYXRlXCI+JWRhdGUlPFwvZGl2PlxuICAgICAgICBcbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJhY3Rpb25zIjoiPGRpdiBjbGFzcz1cImZsX3IgcG9zdF9hY3Rpb25zX3dyYXBcIj48ZGl2IGNsYXNzPVwicG9zdF9hY3Rpb25zXCI+JWFjdGlvbnMlPFwvZGl2PjxcL2Rpdj4iLCJlZGl0X3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2VkaXQlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9lZGl0X2J1dHRvbiByZXBseV9hY3Rpb24gZmxfclwiIGRhdGEtdGl0bGU9XCJFZGl0XCIgb25jbGljaz1cIldhbGwuZWRpdFBvc3QodGhpcywgJyVyZXBseV9pZCUnKVwiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJFZGl0XCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+IiwiZGVsX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRGVsZXRlXCIgb25jbGljaz1cIlZpZGVvdmlldy5jb21tQWN0aW9uKCdkZWxldGUnLCAlcG9zdF9vaWQlLCAlcmVwbHlfbXNnX2lkJSwgJzE0OTA2NDg1MDNfMjU2NmU0ZjFkN2I1OTEzZjI2JywgJ212JylcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiRGVsZXRlXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+Iiwic3BhbV9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9kZWxldGUlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9kZWxldGVfYnV0dG9uIHJlcGx5X2FjdGlvbiBmbF9yXCIgZGF0YS10aXRsZT1cIlJlcG9ydFwiIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbUFjdGlvbignc3BhbScsICVwb3N0X29pZCUsICVyZXBseV9tc2dfaWQlLCAnMTQ5MDY0ODUwM18yNTY2ZTRmMWQ3YjU5MTNmMjYnLCAnbXYnKVwiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJSZXBvcnRcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4ifSwicG9zdCI6IjIxNTI2OTlfdmlkZW8xNjg1OTE3NDFtdiIsIm1heFJlcGx5TGVuZ3RoIjoxNjM4NCwibWF4Q2hhdFJlcGx5TGVuZ3RoIjo2MDAsIm1heERlc2NyaXB0aW9uTGVuZ3RoIjoxMDI0LCJwdWJsaXNoQWN0aW9uIjoiIiwicGxfbGlzdCI6MCwiaXNfdmtfcGxheWVyIjowLCJpc19mbHYiOmZhbHNlLCJjYW50UGxheSI6MCwicGxheWVyIjp7InR5cGUiOiJ5b3V0dWJlIiwicGFyYW1zIjpbeyJsYW5nX2FkZCI6IkFkZCB0byBNeSBWaWRlb3MiLCJsYW5nX2FkZGVkIjoiVmlkZW8gYWRkZWQgdG8gTXkgVmlkZW9zIiwibGFuZ19zaGFyZSI6IlNoYXJlIiwibGFuZ19saWtlIjoiTGlrZSIsImxhbmdfZG9uYXRlIjoiRG9uYXRlIiwibGFuZ19zdWJzY3JpYmUiOiJTdWJzY3JpYmUiLCJsYW5nX3N1YnNjcmliZWQiOiJGb2xsb3dpbmciLCJsYW5nX3ZvbHVtZV9vbiI6IlVubXV0ZSIsImxhbmdfdm9sdW1lX29mZiI6Ik11dGUiLCJsYW5nX3ZvbHVtZSI6IlZvbHVtZSIsImxhbmdfaGRzZCI6IkNoYW5nZSBWaWRlbyBRdWFsaXR5IiwibGFuZ19xdWFsaXR5X2F1dG8iOiJBdXRvIiwibGFuZ19vcGVuX3BvcHVwIjoiRXhwYW5kIiwibGFuZ19mdWxsc2NyZWVuIjoiRnVsbCBTY3JlZW4iLCJsYW5nX3dpbmRvdyI6Ik1pbmltaXplIiwibGFuZ19yb3RhdGUiOiJSb3RhdGUiLCJsYW5nX2Fkc19saW5rIjoiQWR2ZXJ0aXNlciYjMzk7cyBTaXRlIiwibGFuZ19hZHMiOiJBZHMiLCJsYW5nX2Fkc19za2lwIjoiU2tpcCBhZCIsImxhbmdfYWRzX3NraXBfdGltZSI6IlNraXAgYWRzIGluIHt0aW1lfSBzIiwibGFuZ19yZXBvcnRfcHJvYmxlbSI6IlJlcG9ydCBhIHByb2JsZW0uLiIsImxhbmdfcGxheSI6IlBsYXkiLCJsYW5nX3BhdXNlIjoiUGF1c2UiLCJsYW5nX3JlcGxheSI6IlJlcGxheSIsImxhbmdfbmV4dCI6Ik5leHQgdmlkZW8iLCJsYW5nX25leHRfY2FuY2VsIjoiQ2FuY2VsIiwibGFuZ19nb3RvX29yaWdfdmlkZW8iOiJHbyB0byBWaWRlbyIsImxhbmdfZ290b19hZHZlcnRpc2Vyc19zaXRlIjoiR28gdG8gdGhlIHdlYnNpdGUiLCJsYW5nX2J1eV90aWNrZXRzIjpudWxsLCJsYW5nX2xvYWRfZXJyb3IiOiJBbiBlcnJvciBvY2N1cnJlZCBkdXJpbmcgbG9hZGluZy4gUGxlYXNlIHRyeSBhZ2FpbiBsYXRlci4iLCJsYW5nX2Vycl9jb2RlIjoiRXJyb3IgY29kZToge2NvZGV9IiwibGFuZ19iYWRfYnJvd3NlciI6IlNvcnJ5LCB5b3VyIGJyb3dzZXIgaXNuJiMzOTt0IHN1cHBvcnRlZCBhdCB0aGUgbW9tZW50IiwibGFuZ19saXZlIjoiTGl2ZSIsImxhbmdfbGl2ZV9zdGFydGluZ19zb29uIjoiVGhlIGxpdmUgd2lsbCBzdGFydCBzb29uIiwibGFuZ19saXZlX2ZhaWxlZCI6IkFuIGVycm9yIG9jY3VycmVkIHdoaWxlIHN0cmVhbWluZyIsImxhbmdfbGl2ZV93YWl0X3JlY29yZCI6IlRoZSBsaXZlIGhhcyBmaW5pc2hlZCBhbmQgd2lsbCBzb29uIGJlY29tZSBhdmFpbGFibGUgaW4gcmVwbGF5IiwibGFuZ19saXZlX3VzZXJfc2VudF9naWZ0IjpbIiIsInNlbnQgYSBnaWZ0Iiwic2VudCBhIGdpZnQiXSwibGFuZ19saXZlX3VzZXJfc2VudF9zdXBlcmNvbW1lbnQiOlsiIiwic2VudCBhIHN1cGVyIG1lc3NhZ2UiLCJzZW50IGEgc3VwZXIgbWVzc2FnZSJdLCJsYW5nX2xpdmVfZG93bmxvYWRfYXBwIjoiRG93bmxvYWQgYXBwIiwibGFuZ19hdXRvcGxheV92b2x1bWVfaGludCI6ItFsaWNrIHRvIHR1cm4gb24gdGhlIHNvdW5kIiwibGFuZ19hdXRvcGxheV9leHBhbmRfaGludCI6IkNsaWNrIHRvIGV4cGFuZCIsImxhbmdfdGltZWRfYnV0dG9uX2dvdG8iOiLP5fDl6fLoIiwibGFuZ190aW1lZF9idXR0b25fb3BlbiI6Ik9wZW4iLCJsYW5nX3RpbWVkX2J1dHRvbl9idXkiOiJCdXkiLCJsYW5nX3RpbWVkX2J1dHRvbl9idXlfdGlja2V0cyI6IkJ1eSB0aWNrZXRzIiwibGFuZ190aW1lZF9idXR0b25fY2hlY2tpbiI6bnVsbCwibGFuZ190aW1lZF9idXR0b25faW5zdGFsbCI6ItPx8uDt7uLo8vwiLCJsYW5nX3RpbWVkX2J1dHRvbl9jb250YWN0Ijoi0eL/5+Dy/PH/IiwibGFuZ190aW1lZF9idXR0b25fZmlsbCI6Isfg7+7r7ejy/CIsImxhbmdfdGltZWRfYnV0dG9uX2xlYXJuX21vcmUiOiJNb3JlIiwibGFuZ19jbWVudV9jb3B5X3ZpZGVvX2xpbmsiOiJDb3B5IHZpZGVvIGxpbmsiLCJsYW5nX2NtZW51X2NvcHlfdGltZWNvZGVfbGluayI6IkNvcHkgbGluayB3aXRoIHRpbWVjb2RlIiwibGFuZ19jbWVudV9jb3B5X2VtYmVkX2NvZGUiOiJDb3B5IGVtYmVkIGNvZGUiLCJsYW5nX2NtZW51X2VuYWJsZV9sb29wIjoiRW5hYmxlIGxvb3AiLCJsYW5nX2NtZW51X2Rpc2FibGVfbG9vcCI6IkRpc2FibGUgbG9vcCIsImxhbmdfY21lbnVfcGxheWJhY2tfc3BlZWQiOiJQbGF5YmFjayBzcGVlZCIsImxhbmdfY21lbnVfcmVwb3J0X2Vycm9yIjoiUmVwb3J0IGEgcHJvYmxlbS4uIiwibGFuZ19jbWVudV9jb3B5X2RlYnVnIjoiQ29weSBkZWJ1ZyBpbmZvIiwibGFuZ19hcmlhX3ZpZGVvcGxheWVyIjoiVksgVmlkZW8gUGxheWVyIiwibGFuZ19hcmlhX3ZvbHVtZV9zbGlkZXIiOiJWb2x1bWUgc2xpZGVyIiwibGFuZ19hcmlhX3ZvbHVtZV9tdXRlZCI6IlZvbHVtZSBpcyBtdXRlZCIsImxhbmdfYXJpYV90aW1lbGluZV9zbGlkZXIiOiJUaW1lIHNsaWRlciIsImxhbmdfYXJpYV90aW1lbGluZV92YWx1ZSI6Int0aW1lfSAodG90YWwgZHVyYXRpb24ge2R1cmF0aW9ufSkiLCJsYW5nX2FyaWFfZW50ZXJfZnVsbHNjcmVlbiI6IkVudGVyIGZ1bGwgc2NyZWVuIG1vZGUiLCJsYW5nX2FyaWFfZXhpdF9mdWxsc2NyZWVuIjoiRXhpdCBmdWxsIHNjcmVlbiBtb2RlIiwibGFuZ19hcmlhX3F1YWxpdHlfY3VycmVudCI6IkN1cnJlbnQgcXVhbGl0eSBpcyB7cXVhbGl0eX0iLCJ2aWRlb19wbGF5X2hkIjoiV2F0Y2ggaW4gSEQiLCJ2aWRlb19zdG9wX2xvYWRpbmciOiJTdG9wIERvd25sb2FkIiwidmlkZW9fcGxheWVyX3ZlcnNpb24iOiJWSyBWaWRlbyBQbGF5ZXIiLCJ2aWRlb19nZXRfdmlkZW9fY29kZSI6IkNvcHkgZW1iZWQgY29kZSIsInZpZGVvX2dldF9jdXJyZW50X3VybCI6IkNvcHkgbGluayB3aXRoIHRpbWVjb2RlIiwidmlkZW9fbG9hZF9lcnJvciI6IkFuIGVycm9yIG9jY3VycmVkIGR1cmluZyBsb2FkaW5nLiBQbGVhc2UgdHJ5IGFnYWluIGxhdGVyLiIsImdvdG9fb3JpZ192aWRlbyI6IkdvIHRvIFZpZGVvIiwidmlkIjoxNjg1OTE3NDEsIm9pZCI6MjE1MjY5OSwibWRfdGl0bGUiOiJCRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0IiwibWRfYXV0aG9yIjoiS2lyaWxsIEx5YW5veSIsImF1dGhvcl9pZCI6MjE1MjY5OSwiYXV0aG9yX2hyZWYiOiJcL2x5YW5vaS5raXJpbGwiLCJhdXRob3JfcGhvdG8iOiJodHRwczpcL1wvcHAudXNlcmFwaS5jb21cL2M2MjM4MjRcL3Y2MjM4MjQ2OTlcLzU1NTc1XC9DQ1FaMjlsMEI5ay5qcGciLCJoYXNoIjoiNzI5NWIzOTc4NDk3ZjA4Njk4YjhjY2I3ZDMwYTBjNjYiLCJoYXNoMiI6ImVhMWQzZGI5ODgxODEyNWQiLCJpc19leHQiOjAsImR1cmF0aW9uIjoyOTksInQiOiIiLCJ2aWdvX2NpZCI6ImNmY2QyMDg0OTVkNTY1ZWY2NmU3ZGZmOWY5ODc2NGRhIiwidmlld2VyX2lkIjowLCJwb3N0X2lkIjpudWxsLCJtb2R1bGUiOiJwcm9maWxlIiwiZyI6MCwiYSI6MCwiY2lzIjowLCJyZWNvbW1lbmRfc2lnIjoiNDYxMTY4NzZhMmYxMGFhYmY0MmE4NzYyYzUzNDAzOGUiLCJlcnJvcl9zdGF0X2hhc2giOiIxNDkwNjQ4NTAzXzU4MDhiMzJhNWQ4YzA3MTFkZCIsIm5vX2FkcyI6MSwibm9saWtlcyI6MSwiZXh0cmEiOiIyMSIsImV4dHJhX2RhdGEiOiI0VGh3czV3cTVHSSIsInRodW1iIjoiaHR0cHM6XC9cL3BwLnVzZXJhcGkuY29tXC9jNjE3ODMxXC91OTYxMjMzMDNcL3ZpZGVvXC9sXzI3ZTRmZjVjLmpwZyIsImpwZyI6Imh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzYxNzgzMVwvdTk2MTIzMzAzXC92aWRlb1wveF81YmIwNTc4Zi5qcGciLCJoZCI6MCwibm9sb2dvIjoxLCJzaG93X25leHQiOjAsImxpa2VkIjowLCJhZGRfaGFzaCI6ImZmYjg0MmQwY2U2ZmMxNjhhNyIsImFkZGVkIjowLCJjYW5fYWRkIjowLCJub190aXRsZSI6MCwidnNlZ3Nfc2l6ZSI6MjkuMDAwMDAwLCJ2c2Vnc19oYXNoIjoiMzkxNDQxZWIwMzg5YTI0MTQ2IiwicmVwb3J0X2Vycm9yX2hhc2giOiIzODM3MTllMGM4ZjU0NjY1OWEifV19fTwhPjwhcGFnZXZpZXdfY2FuZGlkYXRlPg==
46
- http_version:
47
- recorded_at: Mon, 27 Mar 2017 21:01:43 GMT
48
- recorded_with: VCR 3.0.3
@@ -1,48 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://vk.com/al_video.php
6
- body:
7
- encoding: US-ASCII
8
- string: User-Agent=VideoInfo%2F2.7&act=show&al=1&autoplay=0&module=profile&video=2152699_168591741
9
- headers:
10
- Accept-Encoding:
11
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Mozilla/5.0 (Linux; VideoInfo)
16
- - Ruby
17
- response:
18
- status:
19
- code: 200
20
- message: OK
21
- headers:
22
- Server:
23
- - Apache
24
- Date:
25
- - Mon, 27 Mar 2017 21:01:44 GMT
26
- Content-Type:
27
- - text/html; charset=windows-1251
28
- Content-Length:
29
- - '10265'
30
- Connection:
31
- - keep-alive
32
- X-Powered-By:
33
- - PHP/3.12334
34
- Set-Cookie:
35
- - remixlang=3; expires=Tue, 20 Mar 2018 17:27:47 GMT; path=/; domain=.vk.com
36
- Pragma:
37
- - no-cache
38
- Cache-Control:
39
- - no-store
40
- Strict-Transport-Security:
41
- - max-age=0
42
- body:
43
- encoding: ASCII-8BIT
44
- string: !binary |-
45
- PCEtLTMzMjY4NDA3MjMyMjg8IT51aV9tZWRpYV9zZWxlY3Rvci5qcyx1aV9tZWRpYV9zZWxlY3Rvci5jc3MsZW1vamkuanMsbm90aWZpZXIuY3NzLHZpZGVvdmlldy5qcyx2aWRlb3ZpZXcuY3NzLHBhZ2UuanMscGFnZS5jc3MscG9zdC5jc3MsdWlfY29udHJvbHMuanMsdWlfY29udHJvbHMuY3NzPCE+MzwhPjM3MDQ8IT4wPCE+QkVBVCBTT1VMIFNURVAglyBSREMxNCBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwLCBNYXkgMS0yLCBNb3Njb3cgMjAxNDwhPjxkaXYgY2xhc3M9InZpZGVvX2JveF93cmFwIj4KICA8ZGl2IGlkPSJ2aWRlb19wbGF5ZXIiPgogICAgPGRpdiBpZD0idmlkZW9feXQiIHRhYmluZGV4PSIwIiBzdHlsZT0id2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvdXRsaW5lOjA7Ij4KICAgICAgPGlmcmFtZSBjbGFzcz0idmlkZW9feXRfcGxheWVyIiB0eXBlPSJ0ZXh0L2h0bWwiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHNyYz0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvNFRod3M1d3E1R0k/ZW5hYmxlanNhcGk9MSZhdXRvcGxheT0wJnN0YXJ0PTAmYXV0b2hpZGU9MSZ3bW9kZT1vcGFxdWUmc2hvd2luZm89MCZvcmlnaW49aHR0cHM6Ly92ay5jb20mZnM9MSZyZWw9MCZjY19sb2FkX3BvbGljeT0wJml2X2xvYWRfcG9saWN5PTMiIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PCE+CmFkZFRlbXBsYXRlcyh7Il8iOiJfIiwiYXVkaW9fcm93IjoiPGRpdiBjbGFzcz1cImF1ZGlvX3JvdyBfYXVkaW9fcm93IF9hdWRpb19yb3dfJTElXyUwJSAlY2xzJSBjbGVhcl9maXhcIiBvbmNsaWNrPVwicmV0dXJuIGdldEF1ZGlvUGxheWVyKCkudG9nZ2xlQXVkaW8odGhpcywgZXZlbnQpXCIgZGF0YS1hdWRpbz1cIiVzZXJpYWxpemVkJVwiIGRhdGEtZnVsbC1pZD1cIiUxJV8lMCVcIiBpZD1cImF1ZGlvXyUxJV8lMCVcIj5cbiAgPGRpdiBjbGFzcz1cImF1ZGlvX3BsYXlfd3JhcFwiIGRhdGEtbm9kcmFnPVwiMVwiPjxidXR0b24gY2xhc3M9XCJhdWRpb19wbGF5IF9hdWRpb19wbGF5XCIgaWQ9XCJwbGF5XyUxJV8lMCVcIiBhcmlhLWxhYmVsPVwiXCI+PFwvYnV0dG9uPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cImF1ZGlvX2luZm9cIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fZHVyYXRpb25fd3JhcCBfYXVkaW9fZHVyYXRpb25fd3JhcFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2hxX2xhYmVsXCI+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2R1cmF0aW9uIF9hdWRpb19kdXJhdGlvblwiPiVkdXJhdGlvbiU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0c1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0XCIgaWQ9XCJyZWNvbVwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cIkF1ZGlvUGFnZSh0aGlzKS5zaG93UmVjb21zKHRoaXMsICclMSVfJTAlJywgZXZlbnQpXCI+PGRpdj48XC9kaXY+PFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0XCIgaWQ9XCJuZXh0XCIgb25tb3VzZW92ZXI9XCJhdWRpb1Nob3dBY3Rpb25Ub29sdGlwKHRoaXMsICclMSVfJTAlJylcIiBvbmNsaWNrPVwiZ2V0QXVkaW9QbGF5ZXIoKS5zZXROZXh0KHRoaXMsIGV2ZW50KVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwiZWRpdFwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cIkF1ZGlvUGFnZSh0aGlzKS5lZGl0QXVkaW8odGhpcywgJyUxJV8lMCUnLCBldmVudClcIj48ZGl2PjxcL2Rpdj48XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdWRpb19hY3QgX2F1ZGlvX2FjdF9kZWxldGVcIiBpZD1cImRlbGV0ZVwiIG9uY2xpY2s9XCJBdWRpb1BhZ2UodGhpcykuZGVsZXRlQXVkaW8odGhpcywgJyUxJV8lMCUnLCBldmVudClcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwiYWRkXCIgb25jbGljaz1cInJldHVybiBhZGRBdWRpbyh0aGlzLCBldmVudClcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgXG4gICAgICAgIFxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fdGl0bGVfd3JhcFwiXG4gICAgID48YSBocmVmPVwiJXNlYXJjaF9ocmVmJVwiIG9ubW91c2VvdmVyPVwic2V0VGl0bGUodGhpcylcIiBub2RyYWc9XCIxXCIgb25jbGljaz1cInJldHVybiBhdWRpb1NlYXJjaFBlcmZvcm1lcih0aGlzLCBldmVudClcIiBjbGFzcz1cImF1ZGlvX3BlcmZvcm1lclwiPiU0JTxcL2FcbiAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9faW5mb19kaXZpZGVyXCI+Jm5kYXNoOzxcL3NwYW5cbiAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9fdGl0bGUgX2F1ZGlvX3RpdGxlXCIgb25tb3VzZW92ZXI9XCJzZXRUaXRsZSh0aGlzLCBkb21QTih0aGlzKSlcIlxuICAgICAgICA+PHNwYW4gY2xhc3M9XCJhdWRpb190aXRsZV9pbm5lclwiIHRhYmluZGV4PVwiMFwiIG5vZHJhZz1cIjFcIiBhcmlhLWxhYmVsPVwiJTMlXCIgb25jbGljaz1cInJldHVybiB0b2dnbGVBdWRpb0x5cmljcyhldmVudCwgdGhpcywgJyUxJV8lMCUnLCAnJTklJylcIj4lMyU8XC9zcGFuPlxuICAgICAgICBcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJhdWRpb19hdXRob3JcIiBvbmNsaWNrPVwiY3VyLmNhbmNlbENsaWNrPXRydWVcIj4lOCU8XC9zcGFuPlxuICAgICAgPFwvc3BhblxuICAgID48XC9kaXY+XG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIl9hdWRpb19wbGF5ZXJfd3JhcFwiPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIl9hdWRpb19seXJpY3Nfd3JhcCBhdWRpb19seXJpY3NcIiBkYXRhLW5vZHJhZz1cIjFcIj48XC9kaXY+XG48XC9kaXY+IiwiYXVkaW9fYml0c190b19jbHMiOiJ7XCIxXCI6XCJpbmxpbmVkXCIsXCIyXCI6XCJseXJpY3NcIixcIjRcIjpcImNhbmVkaXRcIixcIjhcIjpcImNhbmFkZFwiLFwiNjRcIjpcInJlY29tc1wiLFwiMTZcIjpcImNsYWltZWRcIixcIjMyXCI6XCJjbGFpbWVkX3RpdGxlXCIsXCIyNTZcIjpcImZyb21fcXVldWVcIixcIjUxMlwiOlwiaHFcIixcIjMyNzY4XCI6XCJsdGJcIixcIjE2Mzg0XCI6XCJscGJcIixcIjQwOTZcIjpcImNsYWltX2hpZGRlblwiLFwiMjA0OFwiOlwiY2xhaW1fbW9kZVwiLFwiODE5MlwiOlwiY2xhaW1fdW1hXCJ9In0pO2N1ci5pbmNWaWV3cyA9IGZ1bmN0aW9uKCkgewogIHZhciBvaWR2aWQgPSAnMjE1MjY5OV8xNjg1OTE3NDEnOwogIGlmIChjdXIudmlkZW9JbmMgJiYgY3VyLnZpZGVvSW5jW29pZHZpZF0pIHsKICAgIHJldHVybjsKICB9CiAgaWYgKCFjdXIudmlkZW9JbmMpIHsKICAgIGN1ci52aWRlb0luYyA9IHt9OwogICAgY3VyLnZpZGVvU3RhcnRlZCA9IHt9OwogIH0KICBjdXIudmlkZW9JbmNbb2lkdmlkXSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICBjdXIudmlkZW9JbmNbb2lkdmlkXSA9ICdmaW5pc2hlZCc7CiAgICB2YXIgbSA9IHdpbmRvdy5WaWRlbyA/IFZpZGVvdmlldy5nZXRWaWRlb01vZHVsZShvaWR2aWQpIDogY3VyLm1vZHVsZTsKICAgIHZhciBvaWQgPSAyMTUyNjk5OwogICAgaWYgKG9pZCkgewogICAgICBhamF4LnBvc3QoImFsX3ZpZGVvLnBocCIsIHthY3Q6J2luY192aWV3X2NvdW50ZXInLCBvaWQ6b2lkLCB2aWQ6MTY4NTkxNzQxLCBoYXNoOic3Mjk1YjM5Nzg0OTdmMDg2OThiOGNjYjdkMzBhMGM2NicsIG1vZHVsZTogbX0pOwogICAgfQogIH0sIDUwMDApOwogIGN1ci52aWRlb1N0YXJ0ZWRbb2lkdmlkXSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICBjdXIudmlkZW9TdGFydGVkW29pZHZpZF0gPSAnZmluaXNoZWQnOwogICAgdmFyIG0gPSB3aW5kb3cuVmlkZW8gPyBWaWRlb3ZpZXcuZ2V0VmlkZW9Nb2R1bGUob2lkdmlkKSA6IGN1ci5tb2R1bGU7CgogICAgdmFyIHZpZGVvY2F0ID0gJyc7CiAgICBpZiAod2luZG93LlZpZGVvY2F0ICYmIHdpbmRvdy5WaWRlbyAmJiBWaWRlby5pc0luQ2F0YWxvZygpKSB7CiAgICAgIHZhciBwbElkID0gVmlkZW9QbGF5bGlzdC5nZXRDdXJMaXN0SWQoKTsKICAgICAgaWYgKFZpZGVvY2F0LmlzVG9wM1BsYXlsaXN0KHBsSWQpKSB7CiAgICAgICAgdmlkZW9jYXQgPSAnZmVhdHVyZWQnOwogICAgICB9IGVsc2UgewogICAgICAgIHZpZGVvY2F0ID0gcGxJZDsKICAgICAgfQogICAgfQoKICAgIHZhciBvaWQgPSAyMTUyNjk5OwogICAgaWYgKG9pZCkgewogICAgICB3aW5kb3cubXZjdXIgPSB3aW5kb3cubXZjdXIgfHwge307CiAgICAgIG12Y3VyLnZpZXdTdGFydGVkVGltZXN0YW1wID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CiAgICAgIGFqYXgucG9zdCgiYWxfdmlkZW8ucGhwIiwge2FjdDondmlkZW9fdmlld19zdGFydGVkJywgb2lkOm9pZCwgdmlkOjE2ODU5MTc0MSwgaGFzaDonNzI5NWIzOTc4NDk3ZjA4Njk4YjhjY2I3ZDMwYTBjNjYnLCBtb2R1bGU6IG0sIHZpZGVvY2F0OiB2aWRlb2NhdH0pOwogICAgfQogIH0sIDApOwogIGN1ci5kZXN0cm95LnB1c2goZnVuY3Rpb24gKCkgewogICAgaWYgKGN1ci52aWRlb0luY1tvaWR2aWRdICYmIGN1ci52aWRlb0luY1tvaWR2aWRdICE9ICdmaW5pc2hlZCcpIHsKICAgICAgY2xlYXJUaW1lb3V0KGN1ci52aWRlb0luY1tvaWR2aWRdKTsKICAgIH0KICAgIGlmIChjdXIudmlkZW9TdGFydGVkW29pZHZpZF0gJiYgY3VyLnZpZGVvU3RhcnRlZFtvaWR2aWRdICE9ICdmaW5pc2hlZCcpIHsKICAgICAgY2xlYXJUaW1lb3V0KGN1ci52aWRlb1N0YXJ0ZWRbb2lkdmlkXSk7CiAgICB9CiAgfSk7Cn07Cm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvID0gJzIxNTI2OTlfMTY4NTkxNzQxJzsgCm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvSGFzaCA9ICdkNGVhNDY4N2YwMWNjMWVlOWQnOyAKbXZjdXIubXZEYXRhLmFkZGVkVmlkZW9TaGFyZUhhc2ggPSAnOGJhOGZkYWZjZjQ2ZTFiYzY4JzsKbXZjdXIubXZEYXRhLm5lZWRzTmV3ID0gMTs8IT4KCjxkaXYgY2xhc3M9Im12X2luZm9fd2lkZV9jb2x1bW4gZmxfbCI+CiAgCiAgPGRpdiBjbGFzcz0ibXZfdGl0bGVfYmxvY2siPgogICAgPGRpdiBpZD0ibXZfdmlld3MiIGNsYXNzPSJtdl92aWV3c19jb3VudCAiIG9ubW91c2VvdmVyPSIiPjM3IHZpZXdzPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl90aXRsZSIgaWQ9Im12X3RpdGxlIj5CRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0PC9kaXY+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfYWN0aW9uc19ibG9jayIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImZsYXRfYnV0dG9uIHNlY29uZGFyeSBidXR0b25fbGlnaHQgbXZfc2hhcmVfYnV0dG9uIiBzdHlsZT0iZGlzcGxheTpub25lOyIgb25jbGljaz0idmlkZW92aWV3LnNlbmRWaWRlbygpOyI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X3NoYXJlX2ljb24iPjwvc3Bhbj5TaGFyZQogICAgICA8L2Rpdj4KICAgICAgPGRpdiBpZD0ibXZfYWRkX3dyYXAiPjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJmbGF0X2J1dHRvbiBzZWNvbmRhcnkgYnV0dG9uX2xpZ2h0IG12X2VkaXRfYnV0dG9uIiBvbmNsaWNrPSJyZXR1cm4gdmlkZW92aWV3LnNob3dFZGl0Qm94KDE2ODU5MTc0MSwgMjE1MjY5OSkiIGlkPSJtdl9lZGl0X2J1dHRvbiI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X2VkaXRfaWNvbiI+PC9zcGFuPkVkaXQgdmlkZW8KICAgICAgPC9kaXY+CiAgICAgIAogICAgICA8ZGl2IGNsYXNzPSJtdl9tb3JlIGZsX2wiIGlkPSJtdl9tb3JlIj5Nb3JlPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KICAKICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfYmxvY2siPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgPGEgaHJlZj0iL2x5YW5vaS5raXJpbGwiIGNsYXNzPSJtdl9hdXRob3JfcGhvdG9fd3JhcCBmbF9sIj4KICAgICAgICA8aW1nIGlkPSJtdl9hdXRob3JfcGhvdG8iIGNsYXNzPSJtdl9hdXRob3JfcGhvdG8iIHNyYz0iaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjIzODI0L3Y2MjM4MjQ2OTkvNTU1NzUvQ0NRWjI5bDBCOWsuanBnIj4KICAgICAgPC9hPgogICAgICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfaW5mbyBmbF9sIj4KICAgICAgICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfbmFtZSI+CiAgICAgICAgICA8YSBjbGFzcz0ibWVtX2xpbmsiIGhyZWY9Ii9seWFub2kua2lyaWxsIj5LaXJpbGwgTHlhbm95PC9hPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im12X2luZm9fZGF0ZSI+TWF5IDEyLCAyMDE0IGF0IDk6MjMgYW0gZnJvbSA8YSBocmVmPSIvYXdheS5waHA/dG89aHR0cCUzQSUyRiUyRnd3dy55b3V0dWJlLmNvbSUyRndhdGNoJTNGdiUzRDRUaHdzNXdxNUdJIiB0YXJnZXQ9Il9ibGFuayI+WW91VHViZTwvYT4gPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgCiAgICA8L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJtdl9kZXNjcmlwdGlvbl9ibG9jayI+CiAgPGRpdiBjbGFzcz0ic2VsZWN0X2ZpeCBjbGVhcl9maXgiPgogICAgPGRpdiBpZD0ibXZfZGVzY3JpcHRpb24iIGNsYXNzPSJtdl9kZXNjIj4KICA8ZGl2IGNsYXNzPSJqc19tdl9kZXNjcl9maWVsZCBjYW50X2VkaXQiIGlkPSJtdl9kZXNjcl9maWVsZCI+QkVBVCBTT1VMIFNURVAgJiM5NzMzOyBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwICYjOTczMzsgMS0yIOzg/ywgzO7x6uLgIDIwMTQ8YnI+Q2hvcmVvZ3JhcGh5OiBLYXRpZTxicj48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZwcm9qZWN0ODE4LmNvbSIgdGFyZ2V0PSJfYmxhbmsiIHRhcmdldD0iX2JsYW5rIj5wcm9qZWN0ODE4LmNvbTwvYT4gfCA8YSBocmVmPSJodHRwOi8vdmsuY29tL3Byb2plY3Q4MThydXNzaWEiIG1lbnRpb25faWQ9InByb2plY3Q4MThydXNzaWEiIG9uY2xpY2s9InJldHVybiBtZW50aW9uQ2xpY2sodGhpcywgZXZlbnQpIiBvbm1vdXNlb3Zlcj0ibWVudGlvbk92ZXIodGhpcykiPnZrLmNvbS9wcm9qZWN0ODE4cnVzc2lhPC9hPiB8IDxhIGhyZWY9Imh0dHA6Ly92ay5jb20vcHJvamVjdDgxOCIgbWVudGlvbl9pZD0icHJvamVjdDgxOCIgb25jbGljaz0icmV0dXJuIG1lbnRpb25DbGljayh0aGlzLCBldmVudCkiIG9ubW91c2VvdmVyPSJtZW50aW9uT3Zlcih0aGlzKSI+dmsuY29tL3Byb2plY3Q4MTg8L2E+PGJyPi4uPC9kaXY+CiAgPGEgaWQ9Im12X2Rlc2NyX2V4cGFuZF90b2dnbGUiIGNsYXNzPSJ3YWxsX3Bvc3RfbW9yZSIgc3R5bGU9IiIgb25jbGljaz0iVmlkZW92aWV3LmV4cGFuZERlc2NyKHRoaXMpIj5FeHBhbmQgdGV4dIU8L2E+CiAgPGRpdiBpZD0ibXZfZGVzY19mdWxsX3RleHQiPkJFQVQgU09VTCBTVEVQICYjOTczMzsgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCAmIzk3MzM7IDEtMiDs4P8sIMzu8eri4CAyMDE0PGJyPkNob3Jlb2dyYXBoeTogS2F0aWU8YnI+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGcHJvamVjdDgxOC5jb20iIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+cHJvamVjdDgxOC5jb208L2E+IHwgPGEgaHJlZj0iaHR0cDovL3ZrLmNvbS9wcm9qZWN0ODE4cnVzc2lhIiBtZW50aW9uX2lkPSJwcm9qZWN0ODE4cnVzc2lhIiBvbmNsaWNrPSJyZXR1cm4gbWVudGlvbkNsaWNrKHRoaXMsIGV2ZW50KSIgb25tb3VzZW92ZXI9Im1lbnRpb25PdmVyKHRoaXMpIj52ay5jb20vcHJvamVjdDgxOHJ1c3NpYTwvYT4gfCA8YSBocmVmPSJodHRwOi8vdmsuY29tL3Byb2plY3Q4MTgiIG1lbnRpb25faWQ9InByb2plY3Q4MTgiIG9uY2xpY2s9InJldHVybiBtZW50aW9uQ2xpY2sodGhpcywgZXZlbnQpIiBvbm1vdXNlb3Zlcj0ibWVudGlvbk92ZXIodGhpcykiPnZrLmNvbS9wcm9qZWN0ODE4PC9hPjxicj48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZmYWNlYm9vay5jb20lMkZQcm9qZWN0ODE4UnVzc2lhIiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPmZhY2Vib29rLmNvbS9Qcm9qZWN0ODE4UnVzc2lhPC9hPjxicj48YSBocmVmPSIvYXdheS5waHA/dG89aHR0cCUzQSUyRiUyRmluc3RhZ3JhbS5jb20lMkZwcm9qZWN0ODE4IiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPmluc3RhZ3JhbS5jb20vcHJvamVjdDgxODwvYT48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZ0d2l0dGVyLmNvbSUyRnByb2plY3Q4MTgiIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+dHdpdHRlci5jb20vcHJvamVjdDgxODwvYT48YnI+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGeW91dHViZS5jb20lMkZQcm9qZWN0ODE4UnVzc2lhIiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPnlvdXR1YmUuY29tL1Byb2plY3Q4MThSdXNzaWE8L2E+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGeW91dHViZS5jb20lMkZQcm9qZWN0ODE4Y2hhbXAiIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+eW91dHViZS5jb20vUHJvamVjdDgxOGNoYW1wPC9hPjwvZGl2PgogIDxkaXYgY2xhc3M9InByICIgaWQ9Im12X2lubGluZV9lZGl0X3ByIj48ZGl2IGNsYXNzPSJwcl9idCI+PC9kaXY+PGRpdiBjbGFzcz0icHJfYnQiPjwvZGl2PjxkaXYgY2xhc3M9InByX2J0Ij48L2Rpdj48L2Rpdj4KPC9kaXY+CiAgPC9kaXY+CjwvZGl2PgogIDxkaXYgY2xhc3M9Im12X2NvbW1lbnRzX2Jsb2NrIHdhbGxfbW9kdWxlIj4KICAgIDxkaXYgaWQ9InBvc3QyMTUyNjk5X3ZpZGVvMTY4NTkxNzQxbXYiPgogICAgICA8ZGl2IGlkPSJtdl9jb21tZW50c193cmFwIj4KICA8ZGl2IGlkPSJtdl9jb21tZW50c19oZWFkZXIiIG9uY2xpY2s9IlZpZGVvdmlldy5tb3JlQ29tbWVudHMoKTsiIGNsYXNzPSJtdl9jb21tZW50c19leHBhbmRlZCI+PC9kaXY+CiAgPGRpdiBpZD0ibXZfY29tbWVudHNfc3VtbWFyeSIgY2xhc3M9Im12X2NvbW1lbnRzX3N1bW1hcnkgbXZfY29tbWVudHNfZXhwYW5kZWQiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij48L2Rpdj4KICA8ZGl2IGlkPSJtdl9jb21tZW50cyI+PC9kaXY+CjwvZGl2PgogICAgICAKICAgIDwvZGl2PgogIDwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0ibXZfaW5mb19uYXJyb3dfY29sdW1uIGZsX3IiPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2Jsb2NrIj4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9ibG9ja190aXRsZSI+T3RoZXIgdmlkZW9zPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYyNDU1Nzk4IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2MjQ1NTc5OCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjA3OC91MzIwNjcwMi92aWRlby9sX2EzMzUxNDhmLmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjI6NDE8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2MjQ1NTc5OCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjI0NTU3OTgnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSJMaXB0b24gRGFuY2UgLSDP8Ojx7uXk6O3/6fH/IOog8uDt9vMmIzMzOyAo9Ovl+Ozu4SDt4CDCxM3VKSI+TGlwdG9uIERhbmNlIC0gz/Do8e7l5Ojt/+nx/yDqIPLg7fbzJiMzMzsgKPTr5fjs7uEg7eAgwsTN1Sk8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjMyIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2ODgxNjIwNCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjg4MTYyMDQnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzYxOTkyNy91MjE1MjY5OS92aWRlby9sX2VmZDFjNzA5LmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjA6NTY8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2ODgxNjIwNCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjg4MTYyMDQnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSJUd29NYW4gcHJvamVjdC4gUHJvbW8yIj5Ud29NYW4gcHJvamVjdC4gUHJvbW8yPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj41NCB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjgyODI0NDMiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY4MjgyNDQzJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M1NDAzMDQvdTU4MTA1NzI4L3ZpZGVvL2xfOGZkNTg1ZmUuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+Mjo1NjwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4MjgyNDQzIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODI4MjQ0MycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9Ik5vIG5hbWUiPk5vIG5hbWU8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjE3IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2Mzk0MjkxNCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjM5NDI5MTQnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzUyNjYxMS91NTU4MDE1NTMvdmlkZW8vbF8yMGU3ZjMwMC5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4zOjU2PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjM5NDI5MTQiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTYzOTQyOTE0JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iz+7k6PPs7fvlIPHy8ODx8uguICI+z+7k6PPs7fvlIPHy8ODx8uguIDwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MzQgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4MzMxMzU0IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODMzMTM1NCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjA3NjIwL3U0Mzg5ODY2L3ZpZGVvL2xfYWIxMTY2Y2IuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MzoyNTwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4MzMxMzU0IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODMzMTM1NCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9ItLl4PLw4Ovo5+7i4O3t7uUg7vLq8Pvy6OUg6u7t6vPw8eAgJnF1b3Q7zO7x6u7i8ero5SDs4PHy5fDgLTIwMTQmcXVvdDsvLyDKwNEguTciPtLl4PLw4Ovo5+7i4O3t7uUg7vLq8Pvy6OUg6u7t6vPw8eAgJnF1b3Q7zO7x6u7i8ero5SDs4PHy5fDgLTIwMTQmcXVvdDsvLyDKwNEguTc8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjQyIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2ODk4ODk3NyIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjg5ODg5NzcnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzU0MDMwMS91MjQ2MTA1MDg5L3ZpZGVvL2xfZGI3MWI2NjYuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MDozMDwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4OTg4OTc3IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODk4ODk3NycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9Ik1peC3y5fDo/yD47vMg1PDo6iDY7vMiPk1peC3y5fDo/yD47vMg1PDo6iDY7vM8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjIyIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2MTUzMzA0MiIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjE1MzMwNDInLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzUxMDQxNS91MTQzNDgyNzEvdmlkZW8vbF83ZTA1YTBmZC5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4zOjUyPC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjE1MzMwNDIiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTYxNTMzMDQyJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iwO3y7u0gyuDs4Ovo8uTo7e7iIC0gw+7r7vHz6fLlIOfgIOzl7f8iPsDt8u7tIMrg7ODr6PLk6O3u4iAtIMPu6+7x8+ny5SDn4CDs5e3/PC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj4yMTQgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY2OTUyNjA2IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2Njk1MjYwNicsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTM0MjIxL3U1NDEzNzAvdmlkZW8vbF83YWI1NDc1Ni5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4wOjA5PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjY5NTI2MDYiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY2OTUyNjA2JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iTm8gbmFtZSI+Tm8gbmFtZTwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MTYzIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2Njk1MjU5OSIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjY5NTI1OTknLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzUxMzIxOS91MjE0OTc0ODczL3ZpZGVvL2xfYmU2ZTM2OWQuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+NDowNjwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY2OTUyNTk5IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2Njk1MjU5OScsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IsHl5yDt4Ofi4O3o/yI+weXnIO3g5+Lg7ej/PC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj40MCB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjc3MTE3MDMiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY3NzExNzAzJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M2MDc0MjAvdTEzOTU0MDEzL3ZpZGVvL2xfYzI3ZmYxMjkuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MjoyOTwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY3NzExNzAzIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2NzcxMTcwMycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IlBBUlRZIDExNCAuWyBTRUNSRVQgUExBQ0VdIj5QQVJUWSAxMTQgLlsgU0VDUkVUIFBMQUNFXTwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+NDUgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj48IT48IT48IWpzb24+eyJsYW5nIjp7Imdsb2JhbF9zaG9ydF9kYXRlX3RpbWUiOlsiIiwie2RheX0ge21vbnRofSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInllc3RlcmRheSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInRvZGF5IGF0IHtob3VyfTp7bWludXRlfSB7YW1fcG19IiwidG9tb3Jyb3cgYXQge2hvdXJ9OnttaW51dGV9IHthbV9wbX0iXSwicmVwbHlfdG9fcG9zdCI6IllvdXIgY29tbWVudC4uIiwid2FsbF9NX3JlcGxpZXNfb2ZfTiI6WyIiLCIlcyBjb21tZW50IG9mIHtsaW5rfXthbGx9e1wvbGlua30iLCIlcyBjb21tZW50cyBvZiB7bGlua317YWxsfXtcL2xpbmt9Il0sIndhbGxfbW9yZV9yZXBsaWVzIjpbIiIsInNob3cgJXMgbW9yZSBjb21tZW50Iiwic2hvdyAlcyBtb3JlIGNvbW1lbnRzIl0sIndhbGxfYWxsX3JlcGxpZXMiOiJhbGwgY29tbWVudHMiLCJkb250X2F0dGFjaCI6IlJlbW92ZSBhdHRhY2htZW50IiwidmlkZW9fWF9jb21tcyI6WyIiLCIlcyBjb21tZW50IiwiJXMgY29tbWVudHMiXSwidmlkZW9fZWRpdCI6IkVkaXQgdmlkZW8iLCJ2aWRlb19lZGl0X2Rlc2MiOiJFZGl0IGRlc2NyaXB0aW9uIiwidmlkZW9fZWRpdF9kZXNjX2ludHJvIjoiRW50ZXIgZGVzY3JpcHRpb24iLCJ2aWRlb19zaG93X3ByZXZpb3VzX2NvbW1lbnRzIjpbIiIsIlNob3cgJXMgcHJldmlvdXMgY29tbWVudCIsIlNob3cgJXMgcHJldmlvdXMgY29tbWVudHMiXSwidmlkZW9fYXJlX3lvdV9zdXJlX2Nsb3NlIjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGNsb3NlIHRoaXMgdmlkZW8/IiwidmlkZW9fYXJlX3lvdV9zdXJlX2Nsb3NlX3RpdGxlIjoiQ2xvc2UgdmlkZW8iLCJwcm9maWxlX21lbnRpb25fbm90X2ZvdW5kIjoiVXNlciB3YXMgbm90IGZvdW5kIiwicHJvZmlsZV9tZW50aW9uX3N0YXJ0X3R5cGluZyI6IlN0YXJ0IHR5cGluZyBhIG5hbWUuLiIsInZpZGVvX2FsYnVtX2lzX3ByaXZhdGVfdHQiOiJUaGlzIGFsYnVtIGlzIHByaXZhdGUiLCJ2aWRlb19hZGRfdG9fbXlfcGxheWxpc3QiOiJBZGQgdG8gTXkgVmlkZW9zIiwidmlkZW9fYWRkZWRfdG9fbXlfcGxheWxpc3QiOiJBZGRlZCIsInZpZGVvX2NoYW5nZXNfc2F2ZWQiOiJDaGFuZ2VzIHNhdmVkIiwidmlkZW9fYWRkX2FsYnVtIjoiQ3JlYXRlIGFsYnVtIiwidmlkZW9fYWRkX3ByaXZhdGVfYWxidW0iOiJDcmVhdGUgYSBwcml2YXRlIGFsYnVtIiwidmlkZW9fYWRkX3RvX2dyb3VwIjoiQWRkIHRvIGNvbW11bml0eSIsInZpZGVvX2V4cG9ydF9hY3Rpb24iOiJFeHBvcnQiLCJ2aWRlb19zdGF0aXN0aWNzIjoiU3RhdGlzdGljcyIsInZpZGVvX2NvbXBsYWluIjoiUmVwb3J0IiwidmlkZW9fc2VsZWN0X2FsYnVtcyI6IlNlbGVjdCBhbGJ1bXMiLCJ2aWRlb190Y19zdXJlX2RlbGV0ZSI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyB2aWRlbz88YnI+PGJyPllvdSB3aWxsIG5vdCBiZSBhYmxlIHRvIHJlc3RvcmUgdGFncyBhbmQgY29tbWVudHMuIiwidmlkZW9fdGNfZGVsZXRlIjoiRGVsZXRlIiwidmlkZW9fZGVsZXRlX2RpYWxvZ190aXRsZSI6IkRlbGV0ZSB2aWRlbyIsInZpZGVvX2RlbGV0ZV9ib3hfbm9fdGl0bGUiOiJObyIsInZpZGVvX21lbnVfZGVsZXRlIjoiRGVsZXRlIHZpZGVvIiwidmlkZW9fdmlld3NfY291bnRfdHRfdGV4dCI6Ik9yaWdpbmFsIHZpZGVvIHZpZXdzICh0b3RhbCB2aWV3cykiLCJ2aWRlb19vbmx5X3ByaXZhdGVfdmlkZW8iOiJUaGlzIHZpZGVvIGNhbiBvbmx5IGJlIGFkZGVkIHRvIGEgcHJpdmF0ZSBhbGJ1bSIsInZpZGVvX2xlYXZlX2Nsb3NlZF9ncm91cF90aXRsZSI6IkxlYXZlIGNsb3NlZCBjb21tdW5pdHkiLCJ2aWRlb19sZWF2ZV9jbG9zZWRfZ3JvdXBfdGV4dCI6IllvdSBhcmUgYWJvdXQgdG8gbGVhdmUgYSBjbG9zZWQgY29tbXVuaXR5LiBJdCBtYXkgbm90IGJlIHRoYXQgZWFzeSB0byBjb21lIGJhY2suIExlYXZlIHRoZSBjb21tdW5pdHk/IiwidmlkZW9fbGVhdmVfYWRtaW5lZF9ncm91cF90ZXh0IjoiWW91IGFyZSBhbiA8Yj5hZG1pbmlzdHJhdG9yPFwvYj4gaW4gdGhpcyBjb21tdW5pdHkuIFlvdSB3aWxsIGxvc2UgdGhpcyBwb3NpdGlvbiBpZiB5b3UgbGVhdmUgbm93LiBMZWF2ZSB0aGUgY29tbXVuaXR5PyIsInZpZGVvX3ZpZXdfc3Vic2NyaWJlX3RvX2F1dGhvciI6IlN1YnNjcmliZSIsInZpZGVvX3ZpZXdfc3Vic2NyaWJlZF9tc2ciOiJGb2xsb3dpbmciLCJ2aWRlb19wbGF5ZXJfbmV4dF90aXRsZSI6Ik5leHQgdmlkZW8iLCJ2aWRlb19pX2xpa2UiOiJMaWtlIiwidmlkZW9fc2hhcmVfd2l0aF9mcmllbmRzIjoiU2hhcmUiLCJ2aWRlb19hZGRfZmxhc2giOiJBZGQgdG8gTXkgVmlkZW9zIiwidmlkZW9fYWRkZWRfZmxhc2giOiJWaWRlbyBhZGRlZCB0byBNeSBWaWRlb3MiLCJ2aWRlb19jb21tZW50c19zdW1tYXJ5IjpbIiIsIiVzIGNvbW1lbnQiLCIlcyBjb21tZW50cyJdLCJ2aWRlb19OX3ZpZXdzX2xpc3QiOlsiIiwiJXMgdmlldyIsIiVzIHZpZXdzIl0sInZpZGVvX3BsYXlsaXN0X3JldmVyc2VfdHQiOiJSZXZlcnNlIG9yZGVyIiwidmlkZW9fcGxheWxpc3RfYXV0b3BsYXlfZGlzYWJsZV90dCI6IkRpc2FibGUgYXV0b3BsYXkiLCJ2aWRlb19wbGF5bGlzdF9hdXRvcGxheV9lbmFibGVfdHQiOiJFbmFibGUgYXV0b3BsYXkiLCJ2aWRlb19saXZlX05fd2F0Y2hpbmciOlsiIiwiJXMgaXMgd2F0Y2hpbmcgbm93IiwiJXMgYXJlIHdhdGNoaW5nIG5vdyJdLCJ2aWRlb19saXZlX2NoYXRfbXNnX3Rvb19sb25nIjoiVGhlIG1lc3NhZ2UgaXMgdG9vIGxvbmciLCJ2aWRlb19saXZlX2NoYXRfdG9vX2Zhc3QiOiJUb28gZmFzdIUiLCJ2aWRlb19hcmlhX21pbmltaXplX3BsYXlsaXN0IjoiSGlkZSBwbGF5bGlzdCIsInZpZGVvX2FyaWFfZXhwYW5kX3BsYXlsaXN0IjoiU2hvdyBwbGF5bGlzdCIsInZpZGVvX2FyaWFfbWluaW1pemVfY2hhdCI6IkhpZGUgY2hhdCIsInZpZGVvX2FyaWFfZXhwYW5kX2NoYXQiOiJFeHBhbmQgY2hhdCIsInZpZGVvX2xpdmVfbm90aWZ5X3N1YnNjcmliZWQiOiJTdHJlYW0gbm90aWZpY2F0aW9ucyBlbmFibGVkIiwidmlkZW9fbGl2ZV9ub3RpZnlfdW5zdWJzY3JpYmVkIjoiU3RyZWFtIG5vdGlmaWNhdGlvbnMgZGlzYWJsZWQiLCJ2aWRlb19saXZlX3lvdV9oYXZlX1hfbW9uZXkiOiJZb3UgaGF2ZSB7bW9uZXl9IiwidmlkZW9fdW5mb2xsb3dfZnJpZW5kX3RpdGxlIjoiUmVtb3ZlIGZyb20gZnJpZW5kcyIsInZpZGVvX3VuZm9sbG93X2ZyaWVuZF90ZXh0IjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlbW92ZSBLaXJpbGwgZnJvbSB5b3VyIGZyaWVuZCBsaXN0PyJ9LCJtdkRhdGEiOnsidGl0bGUiOiJCRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0IiwiZGVzYyI6IkJFQVQgU09VTCBTVEVQICYjOTczMzsgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCAmIzk3MzM7IDEtMiDs4P8sIMzu8eri4CAyMDE0PGJyPkNob3Jlb2dyYXBoeTogS2F0aWU8YnI+PGJyPnByb2plY3Q4MTguY29tIHwgdmsuY29tXC9wcm9qZWN0ODE4cnVzc2lhIHwgdmsuY29tXC9wcm9qZWN0ODE4PGJyPjxicj5mYWNlYm9vay5jb21cL1Byb2plY3Q4MThSdXNzaWE8YnI+aW5zdGFncmFtLmNvbVwvcHJvamVjdDgxODxicj50d2l0dGVyLmNvbVwvcHJvamVjdDgxODxicj48YnI+eW91dHViZS5jb21cL1Byb2plY3Q4MThSdXNzaWE8YnI+eW91dHViZS5jb21cL1Byb2plY3Q4MThjaGFtcCIsIm9pZCI6MjE1MjY5OSwidmlkIjoxNjg1OTE3NDEsImF1dGhvcklkIjoyMTUyNjk5LCJhdXRob3JQaG90byI6Imh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzYyMzgyNFwvdjYyMzgyNDY5OVwvNTU1NzVcL0NDUVoyOWwwQjlrLmpwZyIsImF1dGhvckhyZWYiOiJcL2x5YW5vaS5raXJpbGwiLCJ2aWRlb1JhdyI6IjIxNTI2OTlfMTY4NTkxNzQxIiwiaGFzaCI6IjAyMzY0NmMwYmM3MTEwYWQ5MSIsImxpa2VIYXNoIjoiMzBjYzE4OTJmODFkZWI2MjM1IiwiZWRpdEhhc2giOiIiLCJlZGl0RnJvbURyb3Bkb3duIjowLCJoaWRlRWRpdCI6bnVsbCwiY29tbXNob3duIjowLCJjb21tY291bnQiOjAsImxpa2VkIjpmYWxzZSwibGlrZXMiOjAsImFkZGVkIjowLCJjYW5fYWRkIjowLCJhZGRfaGFzaCI6ImZmYjg0MmQwY2U2ZmMxNjhhNyIsIm5vbGlrZXMiOjEsImR1cmF0aW9uIjoyOTksInZzZWdzU2l6ZSI6MjkuMDAwMDAwLCJwbGF5bGlzdHMiOltdLCJ1cGxvYWRlZCI6ZmFsc2UsInB1Ymxpc2hlZCI6dHJ1ZSwibm9Db250cm9scyI6ZmFsc2UsInBsYXlsaXN0QWRkSGFzaCI6ImZmYjg0MmQwY2U2ZmMxNjhhNyIsImRlbGV0ZUhhc2giOiIiLCJyZXBvcnRSZWFzb25zIjpbXSwicmVwb3J0SGFzaCI6IjFkY2MzZjJkNDE2OWY1NTBjMCIsImluZm8iOlsyMTUyNjk5LDE2ODU5MTc0MSwiaHR0cHM6XC9cL3BwLnVzZXJhcGkuY29tXC9jNjE3ODMxXC91OTYxMjMzMDNcL3ZpZGVvXC9sXzI3ZTRmZjVjLmpwZyIsIkJFQVQgU09VTCBTVEVQIJcgUkRDMTQgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCwgTWF5IDEtMiwgTW9zY293IDIwMTQiLDMsIjQ6NTkiLCIiLCIiLCI8YSBocmVmPVwiXC9seWFub2kua2lyaWxsXCIgY2xhc3M9XCJtZW1fbGlua1wiPktpcmlsbCBMeWFub3k8XC9hPiIsMTM5OTg3NTc4MywzN10sImNhbkV4cG9ydCI6MSwiaXNWaWRlb0FkcyI6ZmFsc2UsImRlbGV0ZUZyb21BbGxBbGJ1bXNIYXNoIjoiIiwiaXNfbGl2ZSI6MCwiaXNfYWN0aXZlX2xpdmUiOjAsIlBMQVlMSVNUX0FEREVEX0lEIjotMiwiUExBWUxJU1RfVVBMT0FERURfSUQiOi0xLCJub1B1YmxpY0FkZCI6ZmFsc2UsIlBMQVlFUl9GVUxMX1dJRFRIIjo5NjAsIlBMQVlFUl9GVUxMX0hFSUdIVCI6NTQwLCJQTEFZRVJfUExfV0lEVEgiOjcyMCwiUExBWUVSX1BMX0hFSUdIVCI6NDA1LCJsX3R5cGUiOjIsImt6IjowLCJ0bnNfbW9uZXRpemVkIjp0cnVlfSwid2FsbFRwbCI6eyJyZXBseV9ib3giOiI8ZGl2IGlkPVwicmVwbHlfYm94X3dyYXAlcG9zdF9pZCVcIj48ZGl2IGNsYXNzPVwicmVwbHlfYm94X2lubmVyX3dyYXBcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X2Zha2Vib3hfd3JhcFwiIGlkPVwicmVwbHlfZmFrZWJveCVwb3N0X2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5zaG93RWRpdFJlcGx5KCclcG9zdF9pZCUnLCBldmVudClcIiBkYXRhLW93bmVyLXBob3RvPVwiJW93bmVyX3Bob3RvJVwiIGRhdGEtb3duZXItaHJlZj1cIiVvd25lcl9ocmVmJVwiPlxuICAgIDxkaXYgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJcIj5cbiAgPGEgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfbGlua1wiIGhyZWY9XCJcL2lkXCIgb25jbGljaz1cInJldHVybiBuYXYuZ28odGhpcywgZXZlbnQpXCI+XG4gICAgPGltZyBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9pbWFnZVwiIHNyYz1cIlwvaW1hZ2VzXC9jYW1lcmFfNTAucG5nXCIgXC8+XG4gIDxcL2E+XG48XC9kaXY+JXVzZXJfaW1hZ2UlXG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2Zha2Vib3hcIj5MZWF2ZSBhIGNvbW1lbnQuLi48XC9kaXY+PFwvZGl2PlxuPFwvZGl2PjxcL2Rpdj48aW5wdXQgdHlwZT1cImhpZGRlblwiIGlkPVwicG9zdF9oYXNoJXBvc3RfaWQlXCIgdmFsdWU9XCIxNDkwNjQ4NTA0XzU5OGZkN2U5MDU3ZjRkNmI3NFwiIGNhbl9yZXBseV9hc19ncm91cD1cIiVjYW5fcmVwbHlfYXNfZ3JvdXAlXCIgXC8+IiwicmVwbHlfZm9ybSI6IjxkaXYgaWQ9XCJyZXBseV9ib3glcG9zdF9pZCVcIiBjbGFzcz1cInN1Ym1pdF9wb3N0X2JveCByZXBseV9ib3ggY2xlYXJfZml4IF9zdWJtaXRfcG9zdF9ib3hcIiBvbmNsaWNrPVwicmV0dXJuIGNhbmNlbEV2ZW50KGV2ZW50KVwiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfZm9ybVwiPlxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJyZXBseV90byVwb3N0X2lkJVwiIHZhbHVlPVwiXCIgXC8+XG4gICAgPGRpdiBjbGFzcz1cInBvc3RfZmllbGRfdXNlclwiPlxuICA8YSBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9saW5rXCIgaHJlZj1cIlwvaWRcIiBvbmNsaWNrPVwicmV0dXJuIG5hdi5nbyh0aGlzLCBldmVudClcIj5cbiAgICA8aW1nIGNsYXNzPVwicG9zdF9maWVsZF91c2VyX2ltYWdlXCIgc3JjPVwiXC9pbWFnZXNcL2NhbWVyYV81MC5wbmdcIiBcLz5cbiAgPFwvYT5cbjxcL2Rpdj4ldXNlcl9pbWFnZSVcbiAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZmllbGRfd3JhcCBfZW1vamlfZmllbGRfd3JhcFwiPlxuICAgICAgPGRpdiBpZD1cInJlcGx5X3NtaWxlJXBvc3RfaWQlXCIgY2xhc3M9XCJlbW9qaV9zbWlsZV93cmFwICBfZW1vamlfd3JhcFwiPlxuICA8ZGl2IGNsYXNzPVwiZW1vamlfc21pbGUgX2Vtb2ppX2J0blwiIHRpdGxlPVwiVXNlIHRoZSBUQUIga2V5IHRvIGluc2VydCBlbW9qaSBmYXN0ZXJcIiBvbm1vdXNlb3Zlcj1cInJldHVybiBFbW9qaS5zaG93KHRoaXMsIGV2ZW50KTtcIiBvbm1vdXNlb3V0PVwicmV0dXJuIEVtb2ppLmhpZGUodGhpcywgZXZlbnQpO1wiIG9uY2xpY2s9XCJyZXR1cm4gY2FuY2VsRXZlbnQoZXZlbnQpO1wiPlxuICAgIDxkaXYgY2xhc3M9XCJlbW9qaV9zbWlsZV9pY29uXCI+PFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+XG4gICAgICA8ZGl2IGlkPVwicmVwbHlfZmllbGQlcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X2ZpZWxkIHN1Ym1pdF9wb3N0X2ZpZWxkXCIgb25mb2N1cz1cInJldHVybiBXYWxsLnNob3dFZGl0UmVwbHkoJyVwb3N0X2lkJScsIGV2ZW50KTtcIiBjb250ZW50ZWRpdGFibGU9XCJ0cnVlXCIgcGxhY2Vob2xkZXI9XCJMZWF2ZSBhIGNvbW1lbnQuLi5cIj48XC9kaXY+XG4gICAgPFwvZGl2PlxuICAgIDxkaXYgaWQ9XCJzdWJtaXRfcmVwbHklcG9zdF9pZCVcIiBjbGFzcz1cInN1Ym1pdF9wb3N0IGNsZWFyX2ZpeFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X3dhcm4gY2xlYXJcIiBpZD1cInJlcGx5X3dhcm4lcG9zdF9pZCVcIj48XC9kaXY+XG4gICAgICA8ZGl2IGlkPVwicmVwbHlfbWVkaWFfcHJldmlldyVwb3N0X2lkJVwiIGNsYXNzPVwicmVwbHlfbWVkaWFfcHJldmlldyBjbGVhcl9maXggbWVkaWFfcHJldmlld1wiPjxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJhZGRwb3N0X2J1dHRvbl93cmFwXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJmbGF0X2J1dHRvbiBhZGRwb3N0X2J1dHRvblwiIGlkPVwicmVwbHlfYnV0dG9uJXBvc3RfaWQlXCIgb25jbGljaz1cIndhbGwuc2VuZFJlcGx5KCclcG9zdF9pZCUnLCBldmVudCwge30pO1wiIG9ubW91c2VvdmVyPVwid2FsbC5yZXBseVN1Ym1pdFRvb2x0aXAoJyVwb3N0X2lkJScsIDEsIHRoaXMpO1wiIG9ubW91c2VvdXQ9XCJ3YWxsLnJlcGx5U3VibWl0VG9vbHRpcCgnJXBvc3RfaWQlJywgMCwgdGhpcyk7XCI+UG9zdDxcL2J1dHRvbj5cbiAgICAgIDxcL2Rpdj5cbiAgICAgICVhZGRfYnV0dG9ucyVcbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlX2FkZF9tZWRpYVwiIGlkPVwicmVwbHlfYWRkX21lZGlhXyVwb3N0X2lkJVwiPjxcL2Rpdj5cbiAgICAgIDxkaXYgaWQ9XCJyZXBseV90b190aXRsZSVwb3N0X2lkJVwiIGNsYXNzPVwicmVwbHlfdG9fdGl0bGUgYWRkcG9zdF9wb3B0XCI+PFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsInJlcGx5X2Zvcm1fb2ZmaWNpYWwiOiI8ZGl2IGNsYXNzPVwiYWRkcG9zdF9vcHQgY2hlY2tib3hfb2ZmaWNpYWxcIiBpZD1cInJlcGx5X2FzX2dyb3VwJXBvc3RfaWQlXCIgb25jbGljaz1cIndhbGwucmVwbHlBc0dyb3VwKHRoaXMpO1wiIG9ubW91c2VvdmVyPVwid2FsbC5yZXBseUFzR3JvdXBPdmVyKHRoaXMsICdvbiBiZWhhbGYgb2YgdGhlIHVzZXInLCAncG9zdCBhcyBjb21tdW5pdHknKTtcIiBvbmZvY3VzPVwid2FsbC5yZXBseUFzR3JvdXBPdmVyKHRoaXMsICdvbiBiZWhhbGYgb2YgdGhlIHVzZXInLCAncG9zdCBhcyBjb21tdW5pdHknKTtcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwiYnV0dG9uXCIgYXJpYS1sYWJlbD1cIm9uIGJlaGFsZiBvZiB0aGUgdXNlclwiPlxuICA8aW1nIGNsYXNzPVwidGh1bWJfb2ZmXCIgc3JjPVwiXC9pbWFnZXNcL2NhbWVyYV81MC5wbmdcIiBcLz5cbiAgPGltZyBjbGFzcz1cInRodW1iX29uXCIgc3JjPVwiJW93bmVyX3Bob3RvJVwiIFwvPlxuPFwvZGl2PiIsInJlcGx5X2Zvcm1fZ3JvdXBfaW1hZ2UiOiI8ZGl2IGNsYXNzPVwicG9zdF9maWVsZF9ncm91cFwiPlxuICA8YSBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9saW5rXCIgaHJlZj1cIiVvd25lcl9ocmVmJVwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KVwiPlxuICAgIDxpbWcgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfaW1hZ2VcIiBzcmM9XCIlb3duZXJfcGhvdG8lXCIgXC8+XG4gIDxcL2E+XG48XC9kaXY+IiwicmVwbHlfbXVsdGlsaW5lIjpmYWxzZSwicmVwbHlfbXVsdGlsaW5lX2ludHJvIjp0cnVlLCJyZXBseV9saW5rX3dyYXAiOiI8ZGl2IGNsYXNzPVwicmVwbHlfbGlua193cmFwXCI+XG4gIDxhIGNsYXNzPVwicmVwbHlfbGluayBfcmVwbHlfbG5rXCI+UmVwbHk8XC9hPlxuPFwvZGl2PiIsInJlcGx5X2xpbmtfdG8iOiIgPGEgY2xhc3M9XCJyZXBseV90b1wiPnJlcGxpZWQgdG8gJXRvX3VzZXIlPFwvYT4iLCJyZXBseV9mYXN0IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAgX3Bvc3RcIiBkYXRhLXBvc3QtaWQ9XCIlcmVwbHlfaWQlXCIgPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfd3JhcCBfcmVwbHlfY29udGVudCBfcG9zdF9jb250ZW50IGNsZWFyX2ZpeFwiPlxuICAgIFxuICAgIDxhIGNsYXNzPVwicmVwbHlfaW1hZ2VcIiBocmVmPVwiXC9pZFwiPlxuICAgICAgPGltZyBzcmM9XCJcL2ltYWdlc1wvY2FtZXJhXzUwLnBuZ1wiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIGNsYXNzPVwicmVwbHlfaW1nXCIgYWx0PVwiREVMRVRFRFwiIFwvPlxuICAgIDxcL2E+XG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2NvbnRlbnRcIiA+XG4gICAgICBcbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9hdXRob3JcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJhdXRob3JcIiBocmVmPVwiXC9pZFwiIGRhdGEtZnJvbS1pZD1cIjBcIj5ERUxFVEVEPFwvYT4ldG9fbGluayVcbiAgICAgIDxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV90ZXh0XCIgPjxkaXYgY2xhc3M9XCJ3YWxsX3JlcGx5X3RleHRcIj4lbWVzc2FnZSU8XC9kaXY+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2Zvb3RlciBjbGVhcl9maXhcIiBpZD1cIndwZV9ib3R0b20lcmVwbHlfaWQlXCI+XG4gICAgICAgIFxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZGF0ZVwiPiVkYXRlJTxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPlxuICA8YSBjbGFzcz1cInJlcGx5X2xpbmsgX3JlcGx5X2xua1wiPlJlcGx5PFwvYT5cbjxcL2Rpdj5cbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJyZXBseV9tdWx0aWxpbmVfaGludCI6IjxkaXYgY2xhc3M9XCJyZXBseV9zdWJtaXRfaGludF93cmFwXCIgIG9uY2xpY2s9XCJzdG9wRXZlbnQoZXZlbnQpO1wiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfc3VibWl0X2hpbnRfdGl0bGVcIj5TaG9ydGN1dHM8XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJyZXBseV9zdWJtaXRfaGludF9vcHRzXCIgaWQ9XCJyZXBseV9zdWJtaXRfaGludF9vcHRzXCI+XG4gICAgPGRpdiBjbGFzcz1cInJhZGlvYnRuICVkaXNhYmxlZCUgXCIgZGF0YS12YWw9XCIwXCIgb25jbGljaz1cInJhZGlvYnRuKHRoaXMsIDAsICdyZXBseV9zdWJtaXQnKTsgd2FsbC5vblJlcGx5U3VibWl0Q2hhbmdlZCgwKTtcIj48ZGl2IGNsYXNzPVwicmFkaW9idG5fbGFiZWxcIj48Yj5FbnRlcjxcL2I+IJcgc2VuZCBtZXNzYWdlPGJyPjxiPlNoaWZ0K0VudGVyPFwvYj4glyBuZXcgbGluZTxcL2Rpdj48XC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInJhZGlvYnRuICVlbmFibGVkJSBcIiBkYXRhLXZhbD1cIjFcIiBvbmNsaWNrPVwicmFkaW9idG4odGhpcywgMSwgJ3JlcGx5X3N1Ym1pdCcpOyB3YWxsLm9uUmVwbHlTdWJtaXRDaGFuZ2VkKDEpO1wiPjxkaXYgY2xhc3M9XCJyYWRpb2J0bl9sYWJlbFwiPjxiPkN0cmwrRW50ZXI8XC9iPiCXIHNlbmQgbWVzc2FnZTxicj48Yj5FbnRlcjxcL2I+IJcgbmV3IGxpbmU8XC9kaXY+PFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwicmVwbHlfYnV0dG9uIjoiPGEgaHJlZj1cIiNcIiBjbGFzcz1cInBvc3RfcmVwbHkgX3JlcGx5X3dyYXBcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwuc2hvd0VkaXRSZXBseSgnJXBvc3RfaWQlJywgZXZlbnQpXCI+XG4gIDxpIGNsYXNzPVwicG9zdF9yZXBseV9pY29uIF9pY29uXCI+PFwvaT5cbiAgPHNwYW4gY2xhc3M9XCJwb3N0X3JlcGx5X2xpbmsgX2xpbmtcIj5Db21tZW50PFwvc3Bhbj5cbiAgPHNwYW4gY2xhc3M9XCJwb3N0X3JlcGx5X2NvdW50IF9jb3VudFwiPjxcL3NwYW4+XG48XC9hPiIsInJlcGx5X2xpbmsiOiI8c3BhbiBpZD1cInJlcGx5X2xpbmslcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJyZXBseV9saW5rXCIgb25jbGljaz1cInJldHVybiBXYWxsLnNob3dFZGl0UmVwbHkoJyVwb3N0X2lkJScsIGV2ZW50KVwiPkNvbW1lbnQ8XC9hPjxcL3NwYW4+Iiwib3duX3JlcGx5X2xpbmsiOiI8c3BhbiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPjxhIGNsYXNzPVwicmVwbHlfbGlua1wiIG9uY2xpY2s9XCJXYWxsLmxpa2VTaGFyZUN1c3RvbSgnJXBvc3RfaWQlJylcIj5SZXBseTxcL2E+PFwvc3Bhbj4iLCJlZGl0X2xpbmsiOiI8c3BhbiBjbGFzcz1cImRpdmlkZVwiPnw8XC9zcGFuPjxhIG9uY2xpY2s9XCJ3YWxsLmVkaXRQb3N0KHRoaXMsICclcG9zdF9pZCUnKVwiPkVkaXQgPFwvYT4iLCJwb3N0IjoiPGRpdiBpZD1cInBvc3QlcG9zdF9pZCVcIiBjbGFzcz1cIl9wb3N0IHBvc3QgcGFnZV9ibG9ja1wiIGRhdGEtcG9zdC1pZD1cIiVwb3N0X2lkJVwiIG9uY2xpY2s9XCJ3YWxsLnBvc3RDbGljaygnJXBvc3RfaWQlJywgZXZlbnQpO1wiID5cbiAgPGRpdiBjbGFzcz1cIl9wb3N0X2NvbnRlbnRcIj5cbiAgICBcbiAgICA8ZGl2IGNsYXNzPVwicG9zdF9oZWFkZXJcIj5cbiAgICAgIDxhIGNsYXNzPVwicG9zdF9pbWFnZSVvbmxpbmVfY2xhc3MlXCIgaHJlZj1cIiVsaW5rJVwiPlxuICAgICAgICA8aW1nIHNyYz1cIiVwaG90byVcIiBkYXRhLXBvc3QtaWQ9XCIlcG9zdF9pZCVcIiBkYXRhLXBvc3QtY2xpY2stdHlwZT1cInBvc3Rfb3duZXJfaW1nXCIgd2lkdGg9XCI1MFwiIGhlaWdodD1cIjUwXCIgY2xhc3M9XCJwb3N0X2ltZ1wiIFwvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCI+LjxcL3NwYW4+XG4gICAgICA8XC9hPlxuICAgICAgPGRpdiBjbGFzcz1cInBvc3RfaGVhZGVyX2luZm9cIj5cbiAgICAgICAgPGg1IGNsYXNzPVwicG9zdF9hdXRob3JcIj4lbmFtZSU8XC9oNT5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBvc3RfZGF0ZVwiPjxhIGNsYXNzPVwicG9zdF9saW5rXCIgaHJlZj1cIlwvd2FsbCVwb3N0X2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gc2hvd1dpa2koe3c6ICd3YWxsJXBvc3RfaWQlJ30sIGZhbHNlLCBldmVudCk7XCI+JWRhdGUlPFwvYT48XC9kaXY+XG4gICAgICAgICVhY3Rpb25zJVxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicG9zdF9jb250ZW50XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicG9zdF9pbmZvXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3YWxsX3RleHRcIj4ldGV4dCU8XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwb3N0X2Z1bGxfbGlrZV93cmFwIGNsZWFyX2ZpeFwiPlxuICA8ZGl2IGNsYXNzPVwicG9zdF9mdWxsX2xpa2VcIj5cbiAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwicG9zdF9saWtlIF9saWtlX3dyYXAgbm9fbGlrZXNcIiBvbm1vdXNlb3Zlcj1cIldhbGwubGlrZXNTaG93KHRoaXMsICclcG9zdF9pZCUnKVwiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5saWtlSXQodGhpcywgJyVwb3N0X2lkJScsICcxNDkwNjQ4NTA0X2ZlNjRiM2ZlZjFmYTFiNWYzMicsIGV2ZW50KTtcIj5cbiAgICAgIDxpIGNsYXNzPVwicG9zdF9saWtlX2ljb24gX2ljb25cIj48XC9pPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwb3N0X2xpa2VfbGluayBfbGlua1wiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3RfbGlrZV9jb3VudCBfY291bnRcIj48XC9zcGFuPlxuICAgIDxcL2E+XG4gICAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCIgb25jbGljaz1cIldhbGwubGlrZXNTaG93TGlzdCh0aGlzLCAnJXBvc3RfaWQlJylcIj5TaG93IGxpa2VzPFwvc3Bhbj5cbiAgICAlcmVwbHlfYnV0dG9uJVxuICAgIDxhIGhyZWY9XCIjXCIgY2xhc3M9XCJwb3N0X3NoYXJlIF9zaGFyZV93cmFwIG5vX3NoYXJlc1wiICBvbm1vdXNlb3Zlcj1cIldhbGwuc2hhcmVzU2hvdyh0aGlzLCAnJXBvc3RfaWQlJylcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwuc2hhcmVzT3BlbihldmVudCwgJyVwb3N0X2lkJScpO1wiPlxuICAgICAgPGkgY2xhc3M9XCJwb3N0X3NoYXJlX2ljb24gX2ljb25cIj48XC9pPlxuICAgICAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3Rfc2hhcmVfbGluayBfbGlua1wiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3Rfc2hhcmVfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbiAgICA8XC9hPlxuICAgIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiIG9uY2xpY2s9XCJXYWxsLnNoYXJlc1Nob3dMaXN0KHRoaXMsICclcG9zdF9pZCUnKVwiPlNob3cgc2hhcmVkIGNvcGllczxcL3NwYW4+XG4gICAgXG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInBvc3Rfdmlld3MgX3ZpZXdzX3dyYXAgbm9fdmlld3MgX2F1dG9fdXBkYXRlXCIgb25tb3VzZW92ZXI9XCJXYWxsLnZpZXdzVXBkYXRlKHRoaXMsICclcG9zdF9pZCUnKVwiPlxuICA8aSBjbGFzcz1cInBvc3Rfdmlld3NfaWNvbiBfaWNvblwiPjxcL2k+XG4gIDxzcGFuIGNsYXNzPVwicG9zdF92aWV3c19jb3VudCBfY291bnRcIj48XC9zcGFuPlxuPFwvZGl2PlxuPFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbGllc1wiPjxkaXYgY2xhc3M9XCJyZXBsaWVzX3dyYXBcIiBpZD1cInJlcGxpZXNfd3JhcCVwb3N0X2lkJVwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGxpZXNfbGlzdCBfcmVwbGllc19saXN0XCIgaWQ9XCJyZXBsaWVzJXBvc3RfaWQlXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBpZD1cInN0YXJ0X3JlcGx5JXBvc3RfaWQlXCIgdmFsdWU9XCJcIlwvPjxcL2Rpdj5cbiAgJXJlcGx5X2JveCVcbjxcL2Rpdj48XC9kaXY+XG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICAgIFxuICA8XC9kaXY+XG4gIFxuPFwvZGl2PiIsInJlcGx5IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAlY2xhc3NuYW1lJSBfcG9zdFwiIGRhdGEtcG9zdC1pZD1cIiVyZXBseV9pZCVcIiAlYXR0ciU+XG4gIDxkaXYgY2xhc3M9XCJyZXBseV93cmFwIF9yZXBseV9jb250ZW50IF9wb3N0X2NvbnRlbnQgY2xlYXJfZml4XCI+XG4gICAgXG4gICAgPGEgY2xhc3M9XCJyZXBseV9pbWFnZVwiIGhyZWY9XCIlbGluayVcIj5cbiAgICAgIDxpbWcgc3JjPVwiJXBob3RvJVwiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIGNsYXNzPVwicmVwbHlfaW1nXCIgYWx0PVwiJW5hbWUlXCIgXC8+XG4gICAgPFwvYT5cbiAgICA8ZGl2IGNsYXNzPVwicmVwbHlfY29udGVudFwiID5cbiAgICAgICVhY3Rpb25zJVxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2F1dGhvclwiPlxuICAgICAgICA8YSBjbGFzcz1cImF1dGhvclwiIGhyZWY9XCIlbGluayVcIiBkYXRhLWZyb20taWQ9XCIlcmVwbHlfdWlkJVwiPiVuYW1lJTxcL2E+JXRvX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfdGV4dFwiID4ldGV4dCU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZm9vdGVyIGNsZWFyX2ZpeFwiIGlkPVwid3BlX2JvdHRvbSVyZXBseV9pZCVcIj5cbiAgICAgICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cImxpa2Vfd3JhcCBfbGlrZV93cmFwIG5vX2xpa2VzXCIgb25jbGljaz1cInJldHVybiBXYWxsLmxpa2VJdCh0aGlzLCAnJWxpa2VfaWQlJywgJzE0OTA2NDg1MDRfZmU2NGIzZmVmMWZhMWI1ZjMyJywgZXZlbnQpO1wiIG9ubW91c2VvdmVyPVwiV2FsbC5saWtlc1Nob3codGhpcywgJyVsaWtlX2lkJScpXCI+XG4gIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIj5MaWtlPFwvc3Bhbj5cbiAgPGkgY2xhc3M9XCJsaWtlX2ljb24gX2ljb25cIj48XC9pPlxuICA8c3BhbiBjbGFzcz1cImxpa2VfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbjxcL2E+XG48c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIiBvbmNsaWNrPVwiV2FsbC5saWtlc1Nob3dMaXN0KHRoaXMsICclbGlrZV9pZCUnKVwiPlNob3cgbGlrZXM8XC9zcGFuPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZGF0ZVwiPjxhIGNsYXNzPVwid2RfbG5rXCIgaHJlZj1cIlwvd2FsbCVwb3N0X2lkJT9yZXBseT0lcmVwbHlfbXNnX2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KVwiPiVkYXRlJTxcL2E+PFwvZGl2PlxuICAgICAgICAlYW5zd2VyX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwiZGVsIjoiPGEgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfaXRlbVwiIG9uY2xpY2s9XCJ3YWxsLmRlbGV0ZVBvc3QodGhpcywgJyVwb3N0X2lkJScsICcxNDkwNjQ4NTA0X2MzNjRmOWFhMTBhYjdiZDc2ZScpOyByZXR1cm4gZmFsc2U7XCI+RGVsZXRlIHBvc3Q8XC9hPiIsInNwYW0iOiI8YSBjbGFzcz1cInVpX2FjdGlvbnNfbWVudV9pdGVtXCIgb25jbGljaz1cIndhbGwubWFya0FzU3BhbSh0aGlzLCAnJXBvc3RfaWQlJywgJzE0OTA2NDg1MDRfNWZlMTdlNzk5YTdiMmEwNDdiJyk7IHJldHVybiBmYWxzZTtcIj5SZXBvcnQ8XC9hPiIsImVkaXQiOiI8YSBjbGFzcz1cInVpX2FjdGlvbnNfbWVudV9pdGVtXCIgb25jbGljaz1cIndhbGwuZWRpdFBvc3QodGhpcywgJyVwb3N0X2lkJScpOyByZXR1cm4gZmFsc2U7XCI+RWRpdCA8XC9hPiIsInBvc3RfYWN0aW9ucyI6IjxkaXYgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfd3JhcCBfdWlfbWVudV93cmFwIFwiIG9ubW91c2VvdmVyPVwidWlBY3Rpb25zTWVudS5zaG93KHRoaXMpO1wiIG9ubW91c2VvdXQgPVwidWlBY3Rpb25zTWVudS5oaWRlKHRoaXMpO1wiPlxuICA8ZGl2IGNsYXNzPVwidWlfYWN0aW9uc19tZW51X2ljb25zXCIgIHRhYmluZGV4PVwiMFwiIGFyaWEtbGFiZWw9XCJBY3Rpb25zXCIgcm9sZT1cImJ1dHRvblwiIG9uY2xpY2s9XCJ1aUFjdGlvbnNNZW51LmtleVRvZ2dsZSh0aGlzLCBldmVudCk7XCI+PHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPkFjdGlvbnM8XC9zcGFuPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInVpX2FjdGlvbnNfbWVudSBfdWlfbWVudVwiID4lYWN0aW9ucyU8XC9kaXY+XG48XC9kaXY+IiwiZGVsX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRGVsZXRlXCIgb25jbGljaz1cIndhbGwuZGVsZXRlUG9zdCh0aGlzLCAnJXJlcGx5X2lkJScsICcxNDkwNjQ4NTA0X2MzNjRmOWFhMTBhYjdiZDc2ZScpO1wiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJEZWxldGVcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4iLCJzcGFtX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiUmVwb3J0XCIgb25jbGljaz1cIndhbGwubWFya0FzU3BhbSh0aGlzLCAnJXJlcGx5X2lkJScsICcxNDkwNjQ4NTA0XzVmZTE3ZTc5OWE3YjJhMDQ3YicpO1wiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJSZXBvcnRcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4iLCJlZGl0X3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2VkaXQlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9lZGl0X2J1dHRvbiByZXBseV9hY3Rpb24gZmxfclwiIGRhdGEtdGl0bGU9XCJFZGl0IFwiIG9uY2xpY2s9XCJ3YWxsLmVkaXRQb3N0KHRoaXMsICclcmVwbHlfaWQlJyk7XCIgb25tb3VzZW92ZXI9XCJzaG93VGl0bGUodGhpcyk7XCIgYXJpYS1sYWJlbD1cIkVkaXQgXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+IiwicmVwbHlfYWN0aW9ucyI6IjxkaXYgY2xhc3M9XCJmbF9yIHBvc3RfYWN0aW9uc193cmFwXCI+PGRpdiBjbGFzcz1cInBvc3RfYWN0aW9uc1wiPiVhY3Rpb25zJTxcL2Rpdj48XC9kaXY+IiwicG9sbF9zdGF0cyI6IjxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfc3RhdFwiJWhhbmRsZXJzJT5cbiAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF90ZXh0XCI+JW9wdGlvbl90ZXh0JTxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF9yb3dfd3JhcFwiPlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93X3BlcmNlbnRcIj4lcGVyY2VudCUlPFwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93JXJvd19jbGFzcyVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcGVyY2VudFwiIHN0eWxlPVwid2lkdGg6ICVjc3NfcGVyY2VudCUlXCI+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF9yb3dfY291bnRcIj4lY291bnQlPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsInBvbGxfaGFzaCI6IjE0OTA2NDg1MDRfMDdmZWFhZGI5MmRiMTM1OGM4IiwiZGF0ZV9mb3JtYXQiOiJ0b2RheSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInRpbWVfc3lzdGVtIjpbInBtIiwiYW0iXSwiYWJzX3RpbWVzdGFtcCI6MTQ5MDY0ODUwNCwibGFuZyI6eyJ3YWxsX01fcmVwbGllc19vZl9OIjpbIiIsIiVzIGNvbW1lbnQgb2Yge2xpbmt9e2FsbH17XC9saW5rfSIsIiVzIGNvbW1lbnRzIG9mIHtsaW5rfXthbGx9e1wvbGlua30iXSwid2FsbF9oaWRlX3JlcGxpZXMiOiJIaWRlIGNvbW1lbnRzIiwid2FsbF9zaG93X25fb2ZfbV9sYXN0IjpbIiIsIlNob3cgbGF0ZXN0ICVzIGNvbW1lbnQgb3V0IG9mIHtjb3VudH0iLCJTaG93IGxhdGVzdCAlcyBjb21tZW50cyBvdXQgb2Yge2NvdW50fSJdLCJ3YWxsX3Nob3dfYWxsX25fcmVwbGllcyI6WyIiLCJTaG93ICVzIGNvbW1lbnQiLCJTaG93IGFsbCAlcyBjb21tZW50cyJdLCJ3YWxsX05fcmVwbGllcyI6WyIiLCIlcyBjb21tZW50IiwiJXMgY29tbWVudHMiXSwid2FsbF90aHJlZV9sYXN0X3JlcGxpZXMiOiJsYXN0IHRocmVlIHBvc3RzIiwid2FsbF9hbGxfcmVwbGllcyI6ImFsbCBjb21tZW50cyIsIndhbGxfeF9uZXdfcmVwbGllc19tb3JlIjpbIiIsIiVzIG5ldyBjb21tZW50IGFkZGVkIiwiJXMgbmV3IGNvbW1lbnRzIGFkZGVkIl0sIndhbGxfWF9wZW9wbGVfdm90ZWQiOlsiIiwiPGI+JXM8XC9iPiBwZXJzb24gdm90ZWQuIiwiPGI+JXM8XC9iPiBwZW9wbGUgdm90ZWQuIl0sIndhbGxfcmVwbHlfc3VibWl0X2hpbnRfMSI6IlNoaWZ0K0VudGVyIJcgbmV3IGxpbmUiLCJ3YWxsX3JlcGx5X3N1Ym1pdF9oaW50XzIiOiJDdHJsK0VudGVyIJYgc2VuZCBtZXNzYWdlIiwid2FsbF9yZXBseV9zdWJtaXRfaGludF8xX21vcmUiOiJFbnRlciCXIHNlbmQgbWVzc2FnZSwgU2hpZnQrRW50ZXIglyBuZXcgbGluZSIsIndhbGxfcmVwbHlfc3VibWl0X2hpbnRfMl9tb3JlIjoiRW50ZXIglyBuZXcgbGluZSwgQ3RybCtFbnRlciCXIHNlbmQgbWVzc2FnZSIsIndhbGxfcmVwbHlfcG9zdCI6IlJlcGx5Iiwid2FsbF9yZXBsaWVkX3RvX2dyb3VwIjoidGhlIGFkbWluIiwid2FsbF9yZXBseV9hc191c2VyIjoib24gYmVoYWxmIG9mIHRoZSB1c2VyIiwid2FsbF9yZXBseV9hc19ncm91cCI6InBvc3QgYXMgY29tbXVuaXR5Iiwid2FsbF9hZGRfcGhvdG9fZXJyb3IiOiJVbmFibGUgdG8gdXBsb2FkIHRoZSBpbWFnZSIsIndhbGxfanVzdF9ub3ciOlsiIiwiT25lIHNlY29uZCBhZ28iLCJUd28gc2Vjb25kcyBhZ28iLCJUaHJlZSBzZWNvbmRzIGFnbyIsIkZvdXIgc2Vjb25kcyBhZ28iLCJGaXZlIHNlY29uZHMgYWdvIl0sIndhbGxfWF9zZWNvbmRzX2Fnb193b3JkcyI6WyIiLCJPbmUgc2Vjb25kIGFnbyIsIlR3byBzZWNvbmRzIGFnbyIsIlRocmVlIHNlY29uZHMgYWdvIiwiRm91ciBzZWNvbmRzIGFnbyIsIkZpdmUgc2Vjb25kcyBhZ28iXSwid2FsbF9YX3NlY29uZHNfYWdvIjpbIiIsIiVzIHNlY29uZCBhZ28iLCIlcyBzZWNvbmRzIGFnbyJdLCJ3YWxsX1hfbWludXRlc19hZ29fd29yZHMiOlsiIiwib25lIG1pbnV0ZSBhZ28iLCJ0d28gbWludXRlcyBhZ28iLCJ0aHJlZSBtaW51dGVzIGFnbyIsIjQgbWludXRlcyBhZ28iLCI1IG1pbnV0ZXMgYWdvIl0sIndhbGxfWF9taW51dGVzX2FnbyI6WyIiLCIlcyBtaW51dGUgYWdvIiwiJXMgbWludXRlcyBhZ28iXSwid2FsbF9YX2hvdXJzX2Fnb193b3JkcyI6WyIiLCJvbmUgaG91ciBhZ28iLCJ0d28gaG91cnMgYWdvIiwidGhyZWUgaG91cnMgYWdvIiwiZm91ciBob3VycyBhZ28iLCJmaXZlIGhvdXJzIGFnbyJdLCJ3YWxsX1hfaG91cnNfYWdvIjpbIiIsIiVzIGhvdXIgYWdvIiwiJXMgaG91cnMgYWdvIl19fSwic2hhcmVfdGltZWhhc2giOiIxNDkwNjQ4NTA0XzFiMmFiMTNhZjU2ZDU5NTQ2ZSIsImNvbW1lbnRzVHBsIjp7InJlcGx5IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAgX3Bvc3RcIiBkYXRhLXBvc3QtaWQ9XCIlcmVwbHlfaWQlXCIgIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbWVudENsaWNrKHRoaXMsIGV2ZW50LCAlZnJvbV9pZCUsICVyZXBseV9tc2dfaWQlKVwiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfd3JhcCBfcmVwbHlfY29udGVudCBfcG9zdF9jb250ZW50IGNsZWFyX2ZpeFwiPlxuICAgIFxuICAgIDxhIGNsYXNzPVwicmVwbHlfaW1hZ2VcIiBocmVmPVwiJWhyZWYlXCI+XG4gICAgICA8aW1nIHNyYz1cIiVwaG90byVcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiBjbGFzcz1cInJlcGx5X2ltZ1wiIGFsdD1cIiVuYW1lJVwiIFwvPlxuICAgIDxcL2E+XG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2NvbnRlbnRcIiA+XG4gICAgICAlYWN0aW9ucyVcbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9hdXRob3JcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJhdXRob3JcIiBocmVmPVwiJWhyZWYlXCIgZGF0YS1mcm9tLWlkPVwiJWZyb21faWQlXCI+JW5hbWUlPFwvYT4ldG9fbGluayVcbiAgICAgIDxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV90ZXh0XCIgPiVtZXNzYWdlJTxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9mb290ZXIgY2xlYXJfZml4XCIgaWQ9XCJ3cGVfYm90dG9tJXJlcGx5X2lkJVwiPlxuICAgICAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwibGlrZV93cmFwIF9saWtlX3dyYXAgbm9fbGlrZXNcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwubGlrZUl0KHRoaXMsICclcG9zdF9vaWQldmlkZW9fY29tbWVudCVyZXBseV9tc2dfaWQlbXYnLCAnMTQ5MDY0ODUwNF9mZTY0YjNmZWYxZmExYjVmMzInLCBldmVudCk7XCIgb25tb3VzZW92ZXI9XCJXYWxsLmxpa2VzU2hvdyh0aGlzLCAnJXBvc3Rfb2lkJXZpZGVvX2NvbW1lbnQlcmVwbHlfbXNnX2lkJW12JylcIj5cbiAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPkxpa2U8XC9zcGFuPlxuICA8aSBjbGFzcz1cImxpa2VfaWNvbiBfaWNvblwiPjxcL2k+XG4gIDxzcGFuIGNsYXNzPVwibGlrZV9jb3VudCBfY291bnRcIj48XC9zcGFuPlxuPFwvYT5cbjxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiIG9uY2xpY2s9XCJXYWxsLmxpa2VzU2hvd0xpc3QodGhpcywgJyVwb3N0X29pZCV2aWRlb19jb21tZW50JXJlcGx5X21zZ19pZCVtdicpXCI+U2hvdyBsaWtlczxcL3NwYW4+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9kYXRlXCI+JWRhdGUlPFwvZGl2PlxuICAgICAgICBcbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJhY3Rpb25zIjoiPGRpdiBjbGFzcz1cImZsX3IgcG9zdF9hY3Rpb25zX3dyYXBcIj48ZGl2IGNsYXNzPVwicG9zdF9hY3Rpb25zXCI+JWFjdGlvbnMlPFwvZGl2PjxcL2Rpdj4iLCJlZGl0X3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2VkaXQlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9lZGl0X2J1dHRvbiByZXBseV9hY3Rpb24gZmxfclwiIGRhdGEtdGl0bGU9XCJFZGl0XCIgb25jbGljaz1cIldhbGwuZWRpdFBvc3QodGhpcywgJyVyZXBseV9pZCUnKVwiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJFZGl0XCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+IiwiZGVsX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRGVsZXRlXCIgb25jbGljaz1cIlZpZGVvdmlldy5jb21tQWN0aW9uKCdkZWxldGUnLCAlcG9zdF9vaWQlLCAlcmVwbHlfbXNnX2lkJSwgJzE0OTA2NDg1MDRfYjYyMTM5OTc0MGUxZWE3MjYxJywgJ212JylcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiRGVsZXRlXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+Iiwic3BhbV9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9kZWxldGUlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9kZWxldGVfYnV0dG9uIHJlcGx5X2FjdGlvbiBmbF9yXCIgZGF0YS10aXRsZT1cIlJlcG9ydFwiIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbUFjdGlvbignc3BhbScsICVwb3N0X29pZCUsICVyZXBseV9tc2dfaWQlLCAnMTQ5MDY0ODUwNF9iNjIxMzk5NzQwZTFlYTcyNjEnLCAnbXYnKVwiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJSZXBvcnRcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4ifSwicG9zdCI6IjIxNTI2OTlfdmlkZW8xNjg1OTE3NDFtdiIsIm1heFJlcGx5TGVuZ3RoIjoxNjM4NCwibWF4Q2hhdFJlcGx5TGVuZ3RoIjo2MDAsIm1heERlc2NyaXB0aW9uTGVuZ3RoIjoxMDI0LCJwdWJsaXNoQWN0aW9uIjoiIiwicGxfbGlzdCI6MCwiaXNfdmtfcGxheWVyIjowLCJpc19mbHYiOmZhbHNlLCJjYW50UGxheSI6MCwicGxheWVyIjp7InR5cGUiOiJ5b3V0dWJlIiwicGFyYW1zIjpbeyJsYW5nX2FkZCI6IkFkZCB0byBNeSBWaWRlb3MiLCJsYW5nX2FkZGVkIjoiVmlkZW8gYWRkZWQgdG8gTXkgVmlkZW9zIiwibGFuZ19zaGFyZSI6IlNoYXJlIiwibGFuZ19saWtlIjoiTGlrZSIsImxhbmdfZG9uYXRlIjoiRG9uYXRlIiwibGFuZ19zdWJzY3JpYmUiOiJTdWJzY3JpYmUiLCJsYW5nX3N1YnNjcmliZWQiOiJGb2xsb3dpbmciLCJsYW5nX3ZvbHVtZV9vbiI6IlVubXV0ZSIsImxhbmdfdm9sdW1lX29mZiI6Ik11dGUiLCJsYW5nX3ZvbHVtZSI6IlZvbHVtZSIsImxhbmdfaGRzZCI6IkNoYW5nZSBWaWRlbyBRdWFsaXR5IiwibGFuZ19xdWFsaXR5X2F1dG8iOiJBdXRvIiwibGFuZ19vcGVuX3BvcHVwIjoiRXhwYW5kIiwibGFuZ19mdWxsc2NyZWVuIjoiRnVsbCBTY3JlZW4iLCJsYW5nX3dpbmRvdyI6Ik1pbmltaXplIiwibGFuZ19yb3RhdGUiOiJSb3RhdGUiLCJsYW5nX2Fkc19saW5rIjoiQWR2ZXJ0aXNlciYjMzk7cyBTaXRlIiwibGFuZ19hZHMiOiJBZHMiLCJsYW5nX2Fkc19za2lwIjoiU2tpcCBhZCIsImxhbmdfYWRzX3NraXBfdGltZSI6IlNraXAgYWRzIGluIHt0aW1lfSBzIiwibGFuZ19yZXBvcnRfcHJvYmxlbSI6IlJlcG9ydCBhIHByb2JsZW0uLiIsImxhbmdfcGxheSI6IlBsYXkiLCJsYW5nX3BhdXNlIjoiUGF1c2UiLCJsYW5nX3JlcGxheSI6IlJlcGxheSIsImxhbmdfbmV4dCI6Ik5leHQgdmlkZW8iLCJsYW5nX25leHRfY2FuY2VsIjoiQ2FuY2VsIiwibGFuZ19nb3RvX29yaWdfdmlkZW8iOiJHbyB0byBWaWRlbyIsImxhbmdfZ290b19hZHZlcnRpc2Vyc19zaXRlIjoiR28gdG8gdGhlIHdlYnNpdGUiLCJsYW5nX2J1eV90aWNrZXRzIjpudWxsLCJsYW5nX2xvYWRfZXJyb3IiOiJBbiBlcnJvciBvY2N1cnJlZCBkdXJpbmcgbG9hZGluZy4gUGxlYXNlIHRyeSBhZ2FpbiBsYXRlci4iLCJsYW5nX2Vycl9jb2RlIjoiRXJyb3IgY29kZToge2NvZGV9IiwibGFuZ19iYWRfYnJvd3NlciI6IlNvcnJ5LCB5b3VyIGJyb3dzZXIgaXNuJiMzOTt0IHN1cHBvcnRlZCBhdCB0aGUgbW9tZW50IiwibGFuZ19saXZlIjoiTGl2ZSIsImxhbmdfbGl2ZV9zdGFydGluZ19zb29uIjoiVGhlIGxpdmUgd2lsbCBzdGFydCBzb29uIiwibGFuZ19saXZlX2ZhaWxlZCI6IkFuIGVycm9yIG9jY3VycmVkIHdoaWxlIHN0cmVhbWluZyIsImxhbmdfbGl2ZV93YWl0X3JlY29yZCI6IlRoZSBsaXZlIGhhcyBmaW5pc2hlZCBhbmQgd2lsbCBzb29uIGJlY29tZSBhdmFpbGFibGUgaW4gcmVwbGF5IiwibGFuZ19saXZlX3VzZXJfc2VudF9naWZ0IjpbIiIsInNlbnQgYSBnaWZ0Iiwic2VudCBhIGdpZnQiXSwibGFuZ19saXZlX3VzZXJfc2VudF9zdXBlcmNvbW1lbnQiOlsiIiwic2VudCBhIHN1cGVyIG1lc3NhZ2UiLCJzZW50IGEgc3VwZXIgbWVzc2FnZSJdLCJsYW5nX2xpdmVfZG93bmxvYWRfYXBwIjoiRG93bmxvYWQgYXBwIiwibGFuZ19hdXRvcGxheV92b2x1bWVfaGludCI6ItFsaWNrIHRvIHR1cm4gb24gdGhlIHNvdW5kIiwibGFuZ19hdXRvcGxheV9leHBhbmRfaGludCI6IkNsaWNrIHRvIGV4cGFuZCIsImxhbmdfdGltZWRfYnV0dG9uX2dvdG8iOiLP5fDl6fLoIiwibGFuZ190aW1lZF9idXR0b25fb3BlbiI6Ik9wZW4iLCJsYW5nX3RpbWVkX2J1dHRvbl9idXkiOiJCdXkiLCJsYW5nX3RpbWVkX2J1dHRvbl9idXlfdGlja2V0cyI6IkJ1eSB0aWNrZXRzIiwibGFuZ190aW1lZF9idXR0b25fY2hlY2tpbiI6bnVsbCwibGFuZ190aW1lZF9idXR0b25faW5zdGFsbCI6ItPx8uDt7uLo8vwiLCJsYW5nX3RpbWVkX2J1dHRvbl9jb250YWN0Ijoi0eL/5+Dy/PH/IiwibGFuZ190aW1lZF9idXR0b25fZmlsbCI6Isfg7+7r7ejy/CIsImxhbmdfdGltZWRfYnV0dG9uX2xlYXJuX21vcmUiOiJNb3JlIiwibGFuZ19jbWVudV9jb3B5X3ZpZGVvX2xpbmsiOiJDb3B5IHZpZGVvIGxpbmsiLCJsYW5nX2NtZW51X2NvcHlfdGltZWNvZGVfbGluayI6IkNvcHkgbGluayB3aXRoIHRpbWVjb2RlIiwibGFuZ19jbWVudV9jb3B5X2VtYmVkX2NvZGUiOiJDb3B5IGVtYmVkIGNvZGUiLCJsYW5nX2NtZW51X2VuYWJsZV9sb29wIjoiRW5hYmxlIGxvb3AiLCJsYW5nX2NtZW51X2Rpc2FibGVfbG9vcCI6IkRpc2FibGUgbG9vcCIsImxhbmdfY21lbnVfcGxheWJhY2tfc3BlZWQiOiJQbGF5YmFjayBzcGVlZCIsImxhbmdfY21lbnVfcmVwb3J0X2Vycm9yIjoiUmVwb3J0IGEgcHJvYmxlbS4uIiwibGFuZ19jbWVudV9jb3B5X2RlYnVnIjoiQ29weSBkZWJ1ZyBpbmZvIiwibGFuZ19hcmlhX3ZpZGVvcGxheWVyIjoiVksgVmlkZW8gUGxheWVyIiwibGFuZ19hcmlhX3ZvbHVtZV9zbGlkZXIiOiJWb2x1bWUgc2xpZGVyIiwibGFuZ19hcmlhX3ZvbHVtZV9tdXRlZCI6IlZvbHVtZSBpcyBtdXRlZCIsImxhbmdfYXJpYV90aW1lbGluZV9zbGlkZXIiOiJUaW1lIHNsaWRlciIsImxhbmdfYXJpYV90aW1lbGluZV92YWx1ZSI6Int0aW1lfSAodG90YWwgZHVyYXRpb24ge2R1cmF0aW9ufSkiLCJsYW5nX2FyaWFfZW50ZXJfZnVsbHNjcmVlbiI6IkVudGVyIGZ1bGwgc2NyZWVuIG1vZGUiLCJsYW5nX2FyaWFfZXhpdF9mdWxsc2NyZWVuIjoiRXhpdCBmdWxsIHNjcmVlbiBtb2RlIiwibGFuZ19hcmlhX3F1YWxpdHlfY3VycmVudCI6IkN1cnJlbnQgcXVhbGl0eSBpcyB7cXVhbGl0eX0iLCJ2aWRlb19wbGF5X2hkIjoiV2F0Y2ggaW4gSEQiLCJ2aWRlb19zdG9wX2xvYWRpbmciOiJTdG9wIERvd25sb2FkIiwidmlkZW9fcGxheWVyX3ZlcnNpb24iOiJWSyBWaWRlbyBQbGF5ZXIiLCJ2aWRlb19nZXRfdmlkZW9fY29kZSI6IkNvcHkgZW1iZWQgY29kZSIsInZpZGVvX2dldF9jdXJyZW50X3VybCI6IkNvcHkgbGluayB3aXRoIHRpbWVjb2RlIiwidmlkZW9fbG9hZF9lcnJvciI6IkFuIGVycm9yIG9jY3VycmVkIGR1cmluZyBsb2FkaW5nLiBQbGVhc2UgdHJ5IGFnYWluIGxhdGVyLiIsImdvdG9fb3JpZ192aWRlbyI6IkdvIHRvIFZpZGVvIiwidmlkIjoxNjg1OTE3NDEsIm9pZCI6MjE1MjY5OSwibWRfdGl0bGUiOiJCRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0IiwibWRfYXV0aG9yIjoiS2lyaWxsIEx5YW5veSIsImF1dGhvcl9pZCI6MjE1MjY5OSwiYXV0aG9yX2hyZWYiOiJcL2x5YW5vaS5raXJpbGwiLCJhdXRob3JfcGhvdG8iOiJodHRwczpcL1wvcHAudXNlcmFwaS5jb21cL2M2MjM4MjRcL3Y2MjM4MjQ2OTlcLzU1NTc1XC9DQ1FaMjlsMEI5ay5qcGciLCJoYXNoIjoiNzI5NWIzOTc4NDk3ZjA4Njk4YjhjY2I3ZDMwYTBjNjYiLCJoYXNoMiI6ImVhMWQzZGI5ODgxODEyNWQiLCJpc19leHQiOjAsImR1cmF0aW9uIjoyOTksInQiOiIiLCJ2aWdvX2NpZCI6ImNmY2QyMDg0OTVkNTY1ZWY2NmU3ZGZmOWY5ODc2NGRhIiwidmlld2VyX2lkIjowLCJwb3N0X2lkIjpudWxsLCJtb2R1bGUiOiJwcm9maWxlIiwiZyI6MCwiYSI6MCwiY2lzIjowLCJyZWNvbW1lbmRfc2lnIjoiNDYxMTY4NzZhMmYxMGFhYmY0MmE4NzYyYzUzNDAzOGUiLCJlcnJvcl9zdGF0X2hhc2giOiIxNDkwNjQ4NTA0XzM4NmU1YmZmMzU1OTg5OTFmOSIsIm5vX2FkcyI6MSwibm9saWtlcyI6MSwiZXh0cmEiOiIyMSIsImV4dHJhX2RhdGEiOiI0VGh3czV3cTVHSSIsInRodW1iIjoiaHR0cHM6XC9cL3BwLnVzZXJhcGkuY29tXC9jNjE3ODMxXC91OTYxMjMzMDNcL3ZpZGVvXC9sXzI3ZTRmZjVjLmpwZyIsImpwZyI6Imh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzYxNzgzMVwvdTk2MTIzMzAzXC92aWRlb1wveF81YmIwNTc4Zi5qcGciLCJoZCI6MCwibm9sb2dvIjoxLCJzaG93X25leHQiOjAsImxpa2VkIjowLCJhZGRfaGFzaCI6ImZmYjg0MmQwY2U2ZmMxNjhhNyIsImFkZGVkIjowLCJjYW5fYWRkIjowLCJub190aXRsZSI6MCwidnNlZ3Nfc2l6ZSI6MjkuMDAwMDAwLCJ2c2Vnc19oYXNoIjoiMzkxNDQxZWIwMzg5YTI0MTQ2IiwicmVwb3J0X2Vycm9yX2hhc2giOiIzODM3MTllMGM4ZjU0NjY1OWEifV19fTwhPjwhcGFnZXZpZXdfY2FuZGlkYXRlPg==
46
- http_version:
47
- recorded_at: Mon, 27 Mar 2017 21:01:44 GMT
48
- recorded_with: VCR 3.0.3
@@ -1,48 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://vk.com/al_video.php
6
- body:
7
- encoding: US-ASCII
8
- string: User-Agent=VideoInfo%2F2.7&act=show&al=1&autoplay=0&module=profile&video=2152699_168591741
9
- headers:
10
- Accept-Encoding:
11
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Mozilla/5.0 (Linux; VideoInfo)
16
- - Ruby
17
- response:
18
- status:
19
- code: 200
20
- message: OK
21
- headers:
22
- Server:
23
- - Apache
24
- Date:
25
- - Mon, 27 Mar 2017 21:01:44 GMT
26
- Content-Type:
27
- - text/html; charset=windows-1251
28
- Content-Length:
29
- - '10296'
30
- Connection:
31
- - keep-alive
32
- X-Powered-By:
33
- - PHP/3.12334
34
- Set-Cookie:
35
- - remixlang=3; expires=Wed, 21 Mar 2018 18:59:29 GMT; path=/; domain=.vk.com
36
- Pragma:
37
- - no-cache
38
- Cache-Control:
39
- - no-store
40
- Strict-Transport-Security:
41
- - max-age=0
42
- body:
43
- encoding: ASCII-8BIT
44
- string: !binary |-
45
- PCEtLTMzMjY4NDA3MjMyMjg8IT51aV9tZWRpYV9zZWxlY3Rvci5qcyx1aV9tZWRpYV9zZWxlY3Rvci5jc3MsZW1vamkuanMsbm90aWZpZXIuY3NzLHZpZGVvdmlldy5qcyx2aWRlb3ZpZXcuY3NzLHBhZ2UuanMscGFnZS5jc3MscG9zdC5jc3MsdWlfY29udHJvbHMuanMsdWlfY29udHJvbHMuY3NzPCE+MzwhPjM3MDQ8IT4wPCE+QkVBVCBTT1VMIFNURVAglyBSREMxNCBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwLCBNYXkgMS0yLCBNb3Njb3cgMjAxNDwhPjxkaXYgY2xhc3M9InZpZGVvX2JveF93cmFwIj4KICA8ZGl2IGlkPSJ2aWRlb19wbGF5ZXIiPgogICAgPGRpdiBpZD0idmlkZW9feXQiIHRhYmluZGV4PSIwIiBzdHlsZT0id2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvdXRsaW5lOjA7Ij4KICAgICAgPGlmcmFtZSBjbGFzcz0idmlkZW9feXRfcGxheWVyIiB0eXBlPSJ0ZXh0L2h0bWwiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHNyYz0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvNFRod3M1d3E1R0k/ZW5hYmxlanNhcGk9MSZhdXRvcGxheT0wJnN0YXJ0PTAmYXV0b2hpZGU9MSZ3bW9kZT1vcGFxdWUmc2hvd2luZm89MCZvcmlnaW49aHR0cHM6Ly92ay5jb20mZnM9MSZyZWw9MCZjY19sb2FkX3BvbGljeT0wJml2X2xvYWRfcG9saWN5PTMiIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PCE+CmFkZFRlbXBsYXRlcyh7Il8iOiJfIiwiYXVkaW9fcm93IjoiPGRpdiBjbGFzcz1cImF1ZGlvX3JvdyBfYXVkaW9fcm93IF9hdWRpb19yb3dfJTElXyUwJSAlY2xzJSBjbGVhcl9maXhcIiBvbmNsaWNrPVwicmV0dXJuIGdldEF1ZGlvUGxheWVyKCkudG9nZ2xlQXVkaW8odGhpcywgZXZlbnQpXCIgZGF0YS1hdWRpbz1cIiVzZXJpYWxpemVkJVwiIGRhdGEtZnVsbC1pZD1cIiUxJV8lMCVcIiBpZD1cImF1ZGlvXyUxJV8lMCVcIj5cbiAgPGRpdiBjbGFzcz1cImF1ZGlvX3BsYXlfd3JhcFwiIGRhdGEtbm9kcmFnPVwiMVwiPjxidXR0b24gY2xhc3M9XCJhdWRpb19wbGF5IF9hdWRpb19wbGF5XCIgaWQ9XCJwbGF5XyUxJV8lMCVcIiBhcmlhLWxhYmVsPVwiXCI+PFwvYnV0dG9uPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cImF1ZGlvX2luZm9cIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fZHVyYXRpb25fd3JhcCBfYXVkaW9fZHVyYXRpb25fd3JhcFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2hxX2xhYmVsXCI+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2R1cmF0aW9uIF9hdWRpb19kdXJhdGlvblwiPiVkdXJhdGlvbiU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0c1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0XCIgaWQ9XCJyZWNvbVwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cIkF1ZGlvUGFnZSh0aGlzKS5zaG93UmVjb21zKHRoaXMsICclMSVfJTAlJywgZXZlbnQpXCI+PGRpdj48XC9kaXY+PFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0XCIgaWQ9XCJuZXh0XCIgb25tb3VzZW92ZXI9XCJhdWRpb1Nob3dBY3Rpb25Ub29sdGlwKHRoaXMsICclMSVfJTAlJylcIiBvbmNsaWNrPVwiZ2V0QXVkaW9QbGF5ZXIoKS5zZXROZXh0KHRoaXMsIGV2ZW50KVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwiZWRpdFwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cIkF1ZGlvUGFnZSh0aGlzKS5lZGl0QXVkaW8odGhpcywgJyUxJV8lMCUnLCBldmVudClcIj48ZGl2PjxcL2Rpdj48XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdWRpb19hY3QgX2F1ZGlvX2FjdF9kZWxldGVcIiBpZD1cImRlbGV0ZVwiIG9uY2xpY2s9XCJBdWRpb1BhZ2UodGhpcykuZGVsZXRlQXVkaW8odGhpcywgJyUxJV8lMCUnLCBldmVudClcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwiYWRkXCIgb25jbGljaz1cInJldHVybiBhZGRBdWRpbyh0aGlzLCBldmVudClcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgXG4gICAgICAgIFxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fdGl0bGVfd3JhcFwiXG4gICAgID48YSBocmVmPVwiJXNlYXJjaF9ocmVmJVwiIG9ubW91c2VvdmVyPVwic2V0VGl0bGUodGhpcylcIiBub2RyYWc9XCIxXCIgb25jbGljaz1cInJldHVybiBhdWRpb1NlYXJjaFBlcmZvcm1lcih0aGlzLCBldmVudClcIiBjbGFzcz1cImF1ZGlvX3BlcmZvcm1lclwiPiU0JTxcL2FcbiAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9faW5mb19kaXZpZGVyXCI+Jm5kYXNoOzxcL3NwYW5cbiAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9fdGl0bGUgX2F1ZGlvX3RpdGxlXCIgb25tb3VzZW92ZXI9XCJzZXRUaXRsZSh0aGlzLCBkb21QTih0aGlzKSlcIlxuICAgICAgICA+PHNwYW4gY2xhc3M9XCJhdWRpb190aXRsZV9pbm5lclwiIHRhYmluZGV4PVwiMFwiIG5vZHJhZz1cIjFcIiBhcmlhLWxhYmVsPVwiJTMlXCIgb25jbGljaz1cInJldHVybiB0b2dnbGVBdWRpb0x5cmljcyhldmVudCwgdGhpcywgJyUxJV8lMCUnLCAnJTklJylcIj4lMyU8XC9zcGFuPlxuICAgICAgICBcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJhdWRpb19hdXRob3JcIiBvbmNsaWNrPVwiY3VyLmNhbmNlbENsaWNrPXRydWVcIj4lOCU8XC9zcGFuPlxuICAgICAgPFwvc3BhblxuICAgID48XC9kaXY+XG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIl9hdWRpb19wbGF5ZXJfd3JhcFwiPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIl9hdWRpb19seXJpY3Nfd3JhcCBhdWRpb19seXJpY3NcIiBkYXRhLW5vZHJhZz1cIjFcIj48XC9kaXY+XG48XC9kaXY+IiwiYXVkaW9fYml0c190b19jbHMiOiJ7XCIxXCI6XCJpbmxpbmVkXCIsXCIyXCI6XCJseXJpY3NcIixcIjRcIjpcImNhbmVkaXRcIixcIjhcIjpcImNhbmFkZFwiLFwiNjRcIjpcInJlY29tc1wiLFwiMTZcIjpcImNsYWltZWRcIixcIjMyXCI6XCJjbGFpbWVkX3RpdGxlXCIsXCIyNTZcIjpcImZyb21fcXVldWVcIixcIjUxMlwiOlwiaHFcIixcIjMyNzY4XCI6XCJsdGJcIixcIjE2Mzg0XCI6XCJscGJcIixcIjQwOTZcIjpcImNsYWltX2hpZGRlblwiLFwiMjA0OFwiOlwiY2xhaW1fbW9kZVwiLFwiODE5MlwiOlwiY2xhaW1fdW1hXCJ9In0pO2N1ci5pbmNWaWV3cyA9IGZ1bmN0aW9uKCkgewogIHZhciBvaWR2aWQgPSAnMjE1MjY5OV8xNjg1OTE3NDEnOwogIGlmIChjdXIudmlkZW9JbmMgJiYgY3VyLnZpZGVvSW5jW29pZHZpZF0pIHsKICAgIHJldHVybjsKICB9CiAgaWYgKCFjdXIudmlkZW9JbmMpIHsKICAgIGN1ci52aWRlb0luYyA9IHt9OwogICAgY3VyLnZpZGVvU3RhcnRlZCA9IHt9OwogIH0KICBjdXIudmlkZW9JbmNbb2lkdmlkXSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICBjdXIudmlkZW9JbmNbb2lkdmlkXSA9ICdmaW5pc2hlZCc7CiAgICB2YXIgbSA9IHdpbmRvdy5WaWRlbyA/IFZpZGVvdmlldy5nZXRWaWRlb01vZHVsZShvaWR2aWQpIDogY3VyLm1vZHVsZTsKICAgIHZhciBvaWQgPSAyMTUyNjk5OwogICAgaWYgKG9pZCkgewogICAgICBhamF4LnBvc3QoImFsX3ZpZGVvLnBocCIsIHthY3Q6J2luY192aWV3X2NvdW50ZXInLCBvaWQ6b2lkLCB2aWQ6MTY4NTkxNzQxLCBoYXNoOic3Mjk1YjM5Nzg0OTdmMDg2OThiOGNjYjdkMzBhMGM2NicsIG1vZHVsZTogbX0pOwogICAgfQogIH0sIDUwMDApOwogIGN1ci52aWRlb1N0YXJ0ZWRbb2lkdmlkXSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICBjdXIudmlkZW9TdGFydGVkW29pZHZpZF0gPSAnZmluaXNoZWQnOwogICAgdmFyIG0gPSB3aW5kb3cuVmlkZW8gPyBWaWRlb3ZpZXcuZ2V0VmlkZW9Nb2R1bGUob2lkdmlkKSA6IGN1ci5tb2R1bGU7CgogICAgdmFyIHZpZGVvY2F0ID0gJyc7CiAgICBpZiAod2luZG93LlZpZGVvY2F0ICYmIHdpbmRvdy5WaWRlbyAmJiBWaWRlby5pc0luQ2F0YWxvZygpKSB7CiAgICAgIHZhciBwbElkID0gVmlkZW9QbGF5bGlzdC5nZXRDdXJMaXN0SWQoKTsKICAgICAgaWYgKFZpZGVvY2F0LmlzVG9wM1BsYXlsaXN0KHBsSWQpKSB7CiAgICAgICAgdmlkZW9jYXQgPSAnZmVhdHVyZWQnOwogICAgICB9IGVsc2UgewogICAgICAgIHZpZGVvY2F0ID0gcGxJZDsKICAgICAgfQogICAgfQoKICAgIHZhciBvaWQgPSAyMTUyNjk5OwogICAgaWYgKG9pZCkgewogICAgICB3aW5kb3cubXZjdXIgPSB3aW5kb3cubXZjdXIgfHwge307CiAgICAgIG12Y3VyLnZpZXdTdGFydGVkVGltZXN0YW1wID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CiAgICAgIGFqYXgucG9zdCgiYWxfdmlkZW8ucGhwIiwge2FjdDondmlkZW9fdmlld19zdGFydGVkJywgb2lkOm9pZCwgdmlkOjE2ODU5MTc0MSwgaGFzaDonNzI5NWIzOTc4NDk3ZjA4Njk4YjhjY2I3ZDMwYTBjNjYnLCBtb2R1bGU6IG0sIHZpZGVvY2F0OiB2aWRlb2NhdH0pOwogICAgfQogIH0sIDApOwogIGN1ci5kZXN0cm95LnB1c2goZnVuY3Rpb24gKCkgewogICAgaWYgKGN1ci52aWRlb0luY1tvaWR2aWRdICYmIGN1ci52aWRlb0luY1tvaWR2aWRdICE9ICdmaW5pc2hlZCcpIHsKICAgICAgY2xlYXJUaW1lb3V0KGN1ci52aWRlb0luY1tvaWR2aWRdKTsKICAgIH0KICAgIGlmIChjdXIudmlkZW9TdGFydGVkW29pZHZpZF0gJiYgY3VyLnZpZGVvU3RhcnRlZFtvaWR2aWRdICE9ICdmaW5pc2hlZCcpIHsKICAgICAgY2xlYXJUaW1lb3V0KGN1ci52aWRlb1N0YXJ0ZWRbb2lkdmlkXSk7CiAgICB9CiAgfSk7Cn07Cm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvID0gJzIxNTI2OTlfMTY4NTkxNzQxJzsgCm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvSGFzaCA9ICdkNGVhNDY4N2YwMWNjMWVlOWQnOyAKbXZjdXIubXZEYXRhLmFkZGVkVmlkZW9TaGFyZUhhc2ggPSAnOGJhOGZkYWZjZjQ2ZTFiYzY4JzsKbXZjdXIubXZEYXRhLm5lZWRzTmV3ID0gMTs8IT4KCjxkaXYgY2xhc3M9Im12X2luZm9fd2lkZV9jb2x1bW4gZmxfbCI+CiAgCiAgPGRpdiBjbGFzcz0ibXZfdGl0bGVfYmxvY2siPgogICAgPGRpdiBpZD0ibXZfdmlld3MiIGNsYXNzPSJtdl92aWV3c19jb3VudCAiIG9ubW91c2VvdmVyPSIiPjM3IHZpZXdzPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl90aXRsZSIgaWQ9Im12X3RpdGxlIj5CRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0PC9kaXY+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfYWN0aW9uc19ibG9jayIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImZsYXRfYnV0dG9uIHNlY29uZGFyeSBidXR0b25fbGlnaHQgbXZfc2hhcmVfYnV0dG9uIiBzdHlsZT0iZGlzcGxheTpub25lOyIgb25jbGljaz0idmlkZW92aWV3LnNlbmRWaWRlbygpOyI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X3NoYXJlX2ljb24iPjwvc3Bhbj5TaGFyZQogICAgICA8L2Rpdj4KICAgICAgPGRpdiBpZD0ibXZfYWRkX3dyYXAiPjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJmbGF0X2J1dHRvbiBzZWNvbmRhcnkgYnV0dG9uX2xpZ2h0IG12X2VkaXRfYnV0dG9uIiBvbmNsaWNrPSJyZXR1cm4gdmlkZW92aWV3LnNob3dFZGl0Qm94KDE2ODU5MTc0MSwgMjE1MjY5OSkiIGlkPSJtdl9lZGl0X2J1dHRvbiI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X2VkaXRfaWNvbiI+PC9zcGFuPkVkaXQgdmlkZW8KICAgICAgPC9kaXY+CiAgICAgIAogICAgICA8ZGl2IGNsYXNzPSJtdl9tb3JlIGZsX2wiIGlkPSJtdl9tb3JlIj5Nb3JlPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KICAKICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfYmxvY2siPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgPGEgaHJlZj0iL2x5YW5vaS5raXJpbGwiIGNsYXNzPSJtdl9hdXRob3JfcGhvdG9fd3JhcCBmbF9sIj4KICAgICAgICA8aW1nIGlkPSJtdl9hdXRob3JfcGhvdG8iIGNsYXNzPSJtdl9hdXRob3JfcGhvdG8iIHNyYz0iaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjIzODI0L3Y2MjM4MjQ2OTkvNTU1NzUvQ0NRWjI5bDBCOWsuanBnIj4KICAgICAgPC9hPgogICAgICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfaW5mbyBmbF9sIj4KICAgICAgICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfbmFtZSI+CiAgICAgICAgICA8YSBjbGFzcz0ibWVtX2xpbmsiIGhyZWY9Ii9seWFub2kua2lyaWxsIj5LaXJpbGwgTHlhbm95PC9hPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im12X2luZm9fZGF0ZSI+TWF5IDEyLCAyMDE0IGF0IDk6MjMgYW0gZnJvbSA8YSBocmVmPSIvYXdheS5waHA/dG89aHR0cCUzQSUyRiUyRnd3dy55b3V0dWJlLmNvbSUyRndhdGNoJTNGdiUzRDRUaHdzNXdxNUdJIiB0YXJnZXQ9Il9ibGFuayI+WW91VHViZTwvYT4gPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgCiAgICA8L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJtdl9kZXNjcmlwdGlvbl9ibG9jayI+CiAgPGRpdiBjbGFzcz0ic2VsZWN0X2ZpeCBjbGVhcl9maXgiPgogICAgPGRpdiBpZD0ibXZfZGVzY3JpcHRpb24iIGNsYXNzPSJtdl9kZXNjIj4KICA8ZGl2IGNsYXNzPSJqc19tdl9kZXNjcl9maWVsZCBjYW50X2VkaXQiIGlkPSJtdl9kZXNjcl9maWVsZCI+QkVBVCBTT1VMIFNURVAgJiM5NzMzOyBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwICYjOTczMzsgMS0yIOzg/ywgzO7x6uLgIDIwMTQ8YnI+Q2hvcmVvZ3JhcGh5OiBLYXRpZTxicj48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZwcm9qZWN0ODE4LmNvbSIgdGFyZ2V0PSJfYmxhbmsiIHRhcmdldD0iX2JsYW5rIj5wcm9qZWN0ODE4LmNvbTwvYT4gfCA8YSBocmVmPSJodHRwOi8vdmsuY29tL3Byb2plY3Q4MThydXNzaWEiIG1lbnRpb25faWQ9InByb2plY3Q4MThydXNzaWEiIG9uY2xpY2s9InJldHVybiBtZW50aW9uQ2xpY2sodGhpcywgZXZlbnQpIiBvbm1vdXNlb3Zlcj0ibWVudGlvbk92ZXIodGhpcykiPnZrLmNvbS9wcm9qZWN0ODE4cnVzc2lhPC9hPiB8IDxhIGhyZWY9Imh0dHA6Ly92ay5jb20vcHJvamVjdDgxOCIgbWVudGlvbl9pZD0icHJvamVjdDgxOCIgb25jbGljaz0icmV0dXJuIG1lbnRpb25DbGljayh0aGlzLCBldmVudCkiIG9ubW91c2VvdmVyPSJtZW50aW9uT3Zlcih0aGlzKSI+dmsuY29tL3Byb2plY3Q4MTg8L2E+PGJyPi4uPC9kaXY+CiAgPGEgaWQ9Im12X2Rlc2NyX2V4cGFuZF90b2dnbGUiIGNsYXNzPSJ3YWxsX3Bvc3RfbW9yZSIgc3R5bGU9IiIgb25jbGljaz0iVmlkZW92aWV3LmV4cGFuZERlc2NyKHRoaXMpIj5FeHBhbmQgdGV4dIU8L2E+CiAgPGRpdiBpZD0ibXZfZGVzY19mdWxsX3RleHQiPkJFQVQgU09VTCBTVEVQICYjOTczMzsgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCAmIzk3MzM7IDEtMiDs4P8sIMzu8eri4CAyMDE0PGJyPkNob3Jlb2dyYXBoeTogS2F0aWU8YnI+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGcHJvamVjdDgxOC5jb20iIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+cHJvamVjdDgxOC5jb208L2E+IHwgPGEgaHJlZj0iaHR0cDovL3ZrLmNvbS9wcm9qZWN0ODE4cnVzc2lhIiBtZW50aW9uX2lkPSJwcm9qZWN0ODE4cnVzc2lhIiBvbmNsaWNrPSJyZXR1cm4gbWVudGlvbkNsaWNrKHRoaXMsIGV2ZW50KSIgb25tb3VzZW92ZXI9Im1lbnRpb25PdmVyKHRoaXMpIj52ay5jb20vcHJvamVjdDgxOHJ1c3NpYTwvYT4gfCA8YSBocmVmPSJodHRwOi8vdmsuY29tL3Byb2plY3Q4MTgiIG1lbnRpb25faWQ9InByb2plY3Q4MTgiIG9uY2xpY2s9InJldHVybiBtZW50aW9uQ2xpY2sodGhpcywgZXZlbnQpIiBvbm1vdXNlb3Zlcj0ibWVudGlvbk92ZXIodGhpcykiPnZrLmNvbS9wcm9qZWN0ODE4PC9hPjxicj48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZmYWNlYm9vay5jb20lMkZQcm9qZWN0ODE4UnVzc2lhIiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPmZhY2Vib29rLmNvbS9Qcm9qZWN0ODE4UnVzc2lhPC9hPjxicj48YSBocmVmPSIvYXdheS5waHA/dG89aHR0cCUzQSUyRiUyRmluc3RhZ3JhbS5jb20lMkZwcm9qZWN0ODE4IiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPmluc3RhZ3JhbS5jb20vcHJvamVjdDgxODwvYT48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZ0d2l0dGVyLmNvbSUyRnByb2plY3Q4MTgiIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+dHdpdHRlci5jb20vcHJvamVjdDgxODwvYT48YnI+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGeW91dHViZS5jb20lMkZQcm9qZWN0ODE4UnVzc2lhIiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPnlvdXR1YmUuY29tL1Byb2plY3Q4MThSdXNzaWE8L2E+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGeW91dHViZS5jb20lMkZQcm9qZWN0ODE4Y2hhbXAiIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+eW91dHViZS5jb20vUHJvamVjdDgxOGNoYW1wPC9hPjwvZGl2PgogIDxkaXYgY2xhc3M9InByICIgaWQ9Im12X2lubGluZV9lZGl0X3ByIj48ZGl2IGNsYXNzPSJwcl9idCI+PC9kaXY+PGRpdiBjbGFzcz0icHJfYnQiPjwvZGl2PjxkaXYgY2xhc3M9InByX2J0Ij48L2Rpdj48L2Rpdj4KPC9kaXY+CiAgPC9kaXY+CjwvZGl2PgogIDxkaXYgY2xhc3M9Im12X2NvbW1lbnRzX2Jsb2NrIHdhbGxfbW9kdWxlIj4KICAgIDxkaXYgaWQ9InBvc3QyMTUyNjk5X3ZpZGVvMTY4NTkxNzQxbXYiPgogICAgICA8ZGl2IGlkPSJtdl9jb21tZW50c193cmFwIj4KICA8ZGl2IGlkPSJtdl9jb21tZW50c19oZWFkZXIiIG9uY2xpY2s9IlZpZGVvdmlldy5tb3JlQ29tbWVudHMoKTsiIGNsYXNzPSJtdl9jb21tZW50c19leHBhbmRlZCI+PC9kaXY+CiAgPGRpdiBpZD0ibXZfY29tbWVudHNfc3VtbWFyeSIgY2xhc3M9Im12X2NvbW1lbnRzX3N1bW1hcnkgbXZfY29tbWVudHNfZXhwYW5kZWQiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij48L2Rpdj4KICA8ZGl2IGlkPSJtdl9jb21tZW50cyI+PC9kaXY+CjwvZGl2PgogICAgICAKICAgIDwvZGl2PgogIDwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0ibXZfaW5mb19uYXJyb3dfY29sdW1uIGZsX3IiPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2Jsb2NrIj4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9ibG9ja190aXRsZSI+T3RoZXIgdmlkZW9zPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYzMjE5ODczIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2MzIxOTg3MycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjA3NS91MTY2NjY3NzI4L3ZpZGVvL2xfM2U5MTg2MGUuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+NTo0NTwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYzMjE5ODczIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2MzIxOTg3MycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IsrCzSAyMDEyIM/w5ez85fDq4CAxLzggLSDM6PHxIOzo8OAgLSDM8+f76uDr6uAiPsrCzSAyMDEyIM/w5ez85fDq4CAxLzggLSDM6PHxIOzo8OAgLSDM8+f76uDr6uA8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjQ1OSB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjY5NTI1OTUiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY2OTUyNTk1JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M1MjkzMDYvdTE5MTkyMzc3NC92aWRlby9sX2Y4ZmZiYWUyLmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjA6MjM8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2Njk1MjU5NSIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjY5NTI1OTUnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSLD8PPv7+AgyvDg8eroINEg5O3l7CDw7ubk5e3o/ywgzODw6O3gIj7D8PPv7+AgyvDg8eroINEg5O3l7CDw7ubk5e3o/ywgzODw6O3gPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj42OTcgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzExMDI3ODEyXzQ1NjIzOTE3MyIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMTEwMjc4MTJfNDU2MjM5MTczJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M4MzY0MzYvdjgzNjQzNjgxMi9lZmUyL1Z4ZEVxVTh5SkFnLmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjA6MTc8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8xMTAyNzgxMl80NTYyMzkxNzMiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzExMDI3ODEyXzQ1NjIzOTE3MycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IlBhcmFub2lhIDIwMTYgxeLx8uXj7eXl4uAgwO3g8fLg8ej/Ij5QYXJhbm9pYSAyMDE2IMXi8fLl4+3l5eLgIMDt4PHy4PHo/zwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MjgyIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2MzIyMzMwNCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjMyMjMzMDQnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzUxMDMyMy91MTUxNTQ0NzAvdmlkZW8vbF9jMTdmYzA5Ni5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4zOjM0PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjMyMjMzMDQiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTYzMjIzMzA0JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0izuH76u3u4uXt7e7lIPfz5O4iPs7h++rt7uLl7e3u5SD38+TuPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj4zOCB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjc3MTE3MDMiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY3NzExNzAzJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M2MDc0MjAvdTEzOTU0MDEzL3ZpZGVvL2xfYzI3ZmYxMjkuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MjoyOTwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY3NzExNzAzIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2NzcxMTcwMycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IlBBUlRZIDExNCAuWyBTRUNSRVQgUExBQ0VdIj5QQVJUWSAxMTQgLlsgU0VDUkVUIFBMQUNFXTwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+NDUgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY2OTUyNjA2IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2Njk1MjYwNicsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTM0MjIxL3U1NDEzNzAvdmlkZW8vbF83YWI1NDc1Ni5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4wOjA5PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjY5NTI2MDYiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY2OTUyNjA2JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iTm8gbmFtZSI+Tm8gbmFtZTwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MTYzIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2Mzg2Mjk4MCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjM4NjI5ODAnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzUwNTIwNi91MzIwNjcwMi92aWRlby9sXzQ0NTI4NWQ3LmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjI6MzA8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2Mzg2Mjk4MCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjM4NjI5ODAnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSJXaXRob3V0IGEgZmFjZSAgKNLg6+Dt8uvo4uD/ICDM7uvu5OXm/CkgMiI+V2l0aG91dCBhIGZhY2UgICjS4Ovg7fLr6OLg/yAgzO7r7uTl5vwpIDI8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjQxIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2NzcwNTAxOCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjc3MDUwMTgnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzU0MDIwNi91NDQ4ODkyMy92aWRlby9sXzNlNjUzOThmLmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjA6MzA8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2NzcwNTAxOCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjc3MDUwMTgnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSLK4PHy6O3jIC1BcnQuIGRhbmNlIHNob3cgJnF1b3Q7IEJJR29vRGVlLiI+yuDx8ujt4yAtQXJ0LiBkYW5jZSBzaG93ICZxdW90OyBCSUdvb0RlZS48L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjEwNSB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjQ3NTc4MzYiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY0NzU3ODM2JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M1MzM2MDMvdTg2ODcxMjg5L3ZpZGVvL2xfYzdmMzFhY2QuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MjoyNzwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY0NzU3ODM2IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2NDc1NzgzNicsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IkFsaWNlIGJ5IEtpcmlsbCBMeWFub2kuIj5BbGljZSBieSBLaXJpbGwgTHlhbm9pLjwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MTU5IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2Mzk0MjkxNCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjM5NDI5MTQnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzUyNjYxMS91NTU4MDE1NTMvdmlkZW8vbF8yMGU3ZjMwMC5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4zOjU2PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjM5NDI5MTQiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTYzOTQyOTE0JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iz+7k6PPs7fvlIPHy8ODx8uguICI+z+7k6PPs7fvlIPHy8ODx8uguIDwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MzQgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj48IT48IT48IWpzb24+eyJsYW5nIjp7Imdsb2JhbF9zaG9ydF9kYXRlX3RpbWUiOlsiIiwie2RheX0ge21vbnRofSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInllc3RlcmRheSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInRvZGF5IGF0IHtob3VyfTp7bWludXRlfSB7YW1fcG19IiwidG9tb3Jyb3cgYXQge2hvdXJ9OnttaW51dGV9IHthbV9wbX0iXSwicmVwbHlfdG9fcG9zdCI6IllvdXIgY29tbWVudC4uIiwid2FsbF9NX3JlcGxpZXNfb2ZfTiI6WyIiLCIlcyBjb21tZW50IG9mIHtsaW5rfXthbGx9e1wvbGlua30iLCIlcyBjb21tZW50cyBvZiB7bGlua317YWxsfXtcL2xpbmt9Il0sIndhbGxfbW9yZV9yZXBsaWVzIjpbIiIsInNob3cgJXMgbW9yZSBjb21tZW50Iiwic2hvdyAlcyBtb3JlIGNvbW1lbnRzIl0sIndhbGxfYWxsX3JlcGxpZXMiOiJhbGwgY29tbWVudHMiLCJkb250X2F0dGFjaCI6IlJlbW92ZSBhdHRhY2htZW50IiwidmlkZW9fWF9jb21tcyI6WyIiLCIlcyBjb21tZW50IiwiJXMgY29tbWVudHMiXSwidmlkZW9fZWRpdCI6IkVkaXQgdmlkZW8iLCJ2aWRlb19lZGl0X2Rlc2MiOiJFZGl0IGRlc2NyaXB0aW9uIiwidmlkZW9fZWRpdF9kZXNjX2ludHJvIjoiRW50ZXIgZGVzY3JpcHRpb24iLCJ2aWRlb19zaG93X3ByZXZpb3VzX2NvbW1lbnRzIjpbIiIsIlNob3cgJXMgcHJldmlvdXMgY29tbWVudCIsIlNob3cgJXMgcHJldmlvdXMgY29tbWVudHMiXSwidmlkZW9fYXJlX3lvdV9zdXJlX2Nsb3NlIjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGNsb3NlIHRoaXMgdmlkZW8/IiwidmlkZW9fYXJlX3lvdV9zdXJlX2Nsb3NlX3RpdGxlIjoiQ2xvc2UgdmlkZW8iLCJwcm9maWxlX21lbnRpb25fbm90X2ZvdW5kIjoiVXNlciB3YXMgbm90IGZvdW5kIiwicHJvZmlsZV9tZW50aW9uX3N0YXJ0X3R5cGluZyI6IlN0YXJ0IHR5cGluZyBhIG5hbWUuLiIsInZpZGVvX2FsYnVtX2lzX3ByaXZhdGVfdHQiOiJUaGlzIGFsYnVtIGlzIHByaXZhdGUiLCJ2aWRlb19hZGRfdG9fbXlfcGxheWxpc3QiOiJBZGQgdG8gTXkgVmlkZW9zIiwidmlkZW9fYWRkZWRfdG9fbXlfcGxheWxpc3QiOiJBZGRlZCIsInZpZGVvX2NoYW5nZXNfc2F2ZWQiOiJDaGFuZ2VzIHNhdmVkIiwidmlkZW9fYWRkX2FsYnVtIjoiQ3JlYXRlIGFsYnVtIiwidmlkZW9fYWRkX3ByaXZhdGVfYWxidW0iOiJDcmVhdGUgYSBwcml2YXRlIGFsYnVtIiwidmlkZW9fYWRkX3RvX2dyb3VwIjoiQWRkIHRvIGNvbW11bml0eSIsInZpZGVvX2V4cG9ydF9hY3Rpb24iOiJFeHBvcnQiLCJ2aWRlb19zdGF0aXN0aWNzIjoiU3RhdGlzdGljcyIsInZpZGVvX2NvbXBsYWluIjoiUmVwb3J0IiwidmlkZW9fc2VsZWN0X2FsYnVtcyI6IlNlbGVjdCBhbGJ1bXMiLCJ2aWRlb190Y19zdXJlX2RlbGV0ZSI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyB2aWRlbz88YnI+PGJyPllvdSB3aWxsIG5vdCBiZSBhYmxlIHRvIHJlc3RvcmUgdGFncyBhbmQgY29tbWVudHMuIiwidmlkZW9fdGNfZGVsZXRlIjoiRGVsZXRlIiwidmlkZW9fZGVsZXRlX2RpYWxvZ190aXRsZSI6IkRlbGV0ZSB2aWRlbyIsInZpZGVvX2RlbGV0ZV9ib3hfbm9fdGl0bGUiOiJObyIsInZpZGVvX21lbnVfZGVsZXRlIjoiRGVsZXRlIHZpZGVvIiwidmlkZW9fdmlld3NfY291bnRfdHRfdGV4dCI6Ik9yaWdpbmFsIHZpZGVvIHZpZXdzICh0b3RhbCB2aWV3cykiLCJ2aWRlb19vbmx5X3ByaXZhdGVfdmlkZW8iOiJUaGlzIHZpZGVvIGNhbiBvbmx5IGJlIGFkZGVkIHRvIGEgcHJpdmF0ZSBhbGJ1bSIsInZpZGVvX2xlYXZlX2Nsb3NlZF9ncm91cF90aXRsZSI6IkxlYXZlIGNsb3NlZCBjb21tdW5pdHkiLCJ2aWRlb19sZWF2ZV9jbG9zZWRfZ3JvdXBfdGV4dCI6IllvdSBhcmUgYWJvdXQgdG8gbGVhdmUgYSBjbG9zZWQgY29tbXVuaXR5LiBJdCBtYXkgbm90IGJlIHRoYXQgZWFzeSB0byBjb21lIGJhY2suIExlYXZlIHRoZSBjb21tdW5pdHk/IiwidmlkZW9fbGVhdmVfYWRtaW5lZF9ncm91cF90ZXh0IjoiWW91IGFyZSBhbiA8Yj5hZG1pbmlzdHJhdG9yPFwvYj4gaW4gdGhpcyBjb21tdW5pdHkuIFlvdSB3aWxsIGxvc2UgdGhpcyBwb3NpdGlvbiBpZiB5b3UgbGVhdmUgbm93LiBMZWF2ZSB0aGUgY29tbXVuaXR5PyIsInZpZGVvX3ZpZXdfc3Vic2NyaWJlX3RvX2F1dGhvciI6IlN1YnNjcmliZSIsInZpZGVvX3ZpZXdfc3Vic2NyaWJlZF9tc2ciOiJGb2xsb3dpbmciLCJ2aWRlb19wbGF5ZXJfbmV4dF90aXRsZSI6Ik5leHQgdmlkZW8iLCJ2aWRlb19pX2xpa2UiOiJMaWtlIiwidmlkZW9fc2hhcmVfd2l0aF9mcmllbmRzIjoiU2hhcmUiLCJ2aWRlb19hZGRfZmxhc2giOiJBZGQgdG8gTXkgVmlkZW9zIiwidmlkZW9fYWRkZWRfZmxhc2giOiJWaWRlbyBhZGRlZCB0byBNeSBWaWRlb3MiLCJ2aWRlb19jb21tZW50c19zdW1tYXJ5IjpbIiIsIiVzIGNvbW1lbnQiLCIlcyBjb21tZW50cyJdLCJ2aWRlb19OX3ZpZXdzX2xpc3QiOlsiIiwiJXMgdmlldyIsIiVzIHZpZXdzIl0sInZpZGVvX3BsYXlsaXN0X3JldmVyc2VfdHQiOiJSZXZlcnNlIG9yZGVyIiwidmlkZW9fcGxheWxpc3RfYXV0b3BsYXlfZGlzYWJsZV90dCI6IkRpc2FibGUgYXV0b3BsYXkiLCJ2aWRlb19wbGF5bGlzdF9hdXRvcGxheV9lbmFibGVfdHQiOiJFbmFibGUgYXV0b3BsYXkiLCJ2aWRlb19saXZlX05fd2F0Y2hpbmciOlsiIiwiJXMgaXMgd2F0Y2hpbmcgbm93IiwiJXMgYXJlIHdhdGNoaW5nIG5vdyJdLCJ2aWRlb19saXZlX2NoYXRfbXNnX3Rvb19sb25nIjoiVGhlIG1lc3NhZ2UgaXMgdG9vIGxvbmciLCJ2aWRlb19saXZlX2NoYXRfdG9vX2Zhc3QiOiJUb28gZmFzdIUiLCJ2aWRlb19hcmlhX21pbmltaXplX3BsYXlsaXN0IjoiSGlkZSBwbGF5bGlzdCIsInZpZGVvX2FyaWFfZXhwYW5kX3BsYXlsaXN0IjoiU2hvdyBwbGF5bGlzdCIsInZpZGVvX2FyaWFfbWluaW1pemVfY2hhdCI6IkhpZGUgY2hhdCIsInZpZGVvX2FyaWFfZXhwYW5kX2NoYXQiOiJFeHBhbmQgY2hhdCIsInZpZGVvX2xpdmVfbm90aWZ5X3N1YnNjcmliZWQiOiJTdHJlYW0gbm90aWZpY2F0aW9ucyBlbmFibGVkIiwidmlkZW9fbGl2ZV9ub3RpZnlfdW5zdWJzY3JpYmVkIjoiU3RyZWFtIG5vdGlmaWNhdGlvbnMgZGlzYWJsZWQiLCJ2aWRlb19saXZlX3lvdV9oYXZlX1hfbW9uZXkiOiJZb3UgaGF2ZSB7bW9uZXl9IiwidmlkZW9fdW5mb2xsb3dfZnJpZW5kX3RpdGxlIjoiUmVtb3ZlIGZyb20gZnJpZW5kcyIsInZpZGVvX3VuZm9sbG93X2ZyaWVuZF90ZXh0IjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlbW92ZSBLaXJpbGwgZnJvbSB5b3VyIGZyaWVuZCBsaXN0PyJ9LCJtdkRhdGEiOnsidGl0bGUiOiJCRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0IiwiZGVzYyI6IkJFQVQgU09VTCBTVEVQICYjOTczMzsgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCAmIzk3MzM7IDEtMiDs4P8sIMzu8eri4CAyMDE0PGJyPkNob3Jlb2dyYXBoeTogS2F0aWU8YnI+PGJyPnByb2plY3Q4MTguY29tIHwgdmsuY29tXC9wcm9qZWN0ODE4cnVzc2lhIHwgdmsuY29tXC9wcm9qZWN0ODE4PGJyPjxicj5mYWNlYm9vay5jb21cL1Byb2plY3Q4MThSdXNzaWE8YnI+aW5zdGFncmFtLmNvbVwvcHJvamVjdDgxODxicj50d2l0dGVyLmNvbVwvcHJvamVjdDgxODxicj48YnI+eW91dHViZS5jb21cL1Byb2plY3Q4MThSdXNzaWE8YnI+eW91dHViZS5jb21cL1Byb2plY3Q4MThjaGFtcCIsIm9pZCI6MjE1MjY5OSwidmlkIjoxNjg1OTE3NDEsImF1dGhvcklkIjoyMTUyNjk5LCJhdXRob3JQaG90byI6Imh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzYyMzgyNFwvdjYyMzgyNDY5OVwvNTU1NzVcL0NDUVoyOWwwQjlrLmpwZyIsImF1dGhvckhyZWYiOiJcL2x5YW5vaS5raXJpbGwiLCJ2aWRlb1JhdyI6IjIxNTI2OTlfMTY4NTkxNzQxIiwiaGFzaCI6IjAyMzY0NmMwYmM3MTEwYWQ5MSIsImxpa2VIYXNoIjoiMzBjYzE4OTJmODFkZWI2MjM1IiwiZWRpdEhhc2giOiIiLCJlZGl0RnJvbURyb3Bkb3duIjowLCJoaWRlRWRpdCI6bnVsbCwiY29tbXNob3duIjowLCJjb21tY291bnQiOjAsImxpa2VkIjpmYWxzZSwibGlrZXMiOjAsImFkZGVkIjowLCJjYW5fYWRkIjowLCJhZGRfaGFzaCI6ImZmYjg0MmQwY2U2ZmMxNjhhNyIsIm5vbGlrZXMiOjEsImR1cmF0aW9uIjoyOTksInZzZWdzU2l6ZSI6MjkuMDAwMDAwLCJwbGF5bGlzdHMiOltdLCJ1cGxvYWRlZCI6ZmFsc2UsInB1Ymxpc2hlZCI6dHJ1ZSwibm9Db250cm9scyI6ZmFsc2UsInBsYXlsaXN0QWRkSGFzaCI6ImZmYjg0MmQwY2U2ZmMxNjhhNyIsImRlbGV0ZUhhc2giOiIiLCJyZXBvcnRSZWFzb25zIjpbXSwicmVwb3J0SGFzaCI6IjFkY2MzZjJkNDE2OWY1NTBjMCIsImluZm8iOlsyMTUyNjk5LDE2ODU5MTc0MSwiaHR0cHM6XC9cL3BwLnVzZXJhcGkuY29tXC9jNjE3ODMxXC91OTYxMjMzMDNcL3ZpZGVvXC9sXzI3ZTRmZjVjLmpwZyIsIkJFQVQgU09VTCBTVEVQIJcgUkRDMTQgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCwgTWF5IDEtMiwgTW9zY293IDIwMTQiLDMsIjQ6NTkiLCIiLCIiLCI8YSBocmVmPVwiXC9seWFub2kua2lyaWxsXCIgY2xhc3M9XCJtZW1fbGlua1wiPktpcmlsbCBMeWFub3k8XC9hPiIsMTM5OTg3NTc4MywzN10sImNhbkV4cG9ydCI6MSwiaXNWaWRlb0FkcyI6ZmFsc2UsImRlbGV0ZUZyb21BbGxBbGJ1bXNIYXNoIjoiIiwiaXNfbGl2ZSI6MCwiaXNfYWN0aXZlX2xpdmUiOjAsIlBMQVlMSVNUX0FEREVEX0lEIjotMiwiUExBWUxJU1RfVVBMT0FERURfSUQiOi0xLCJub1B1YmxpY0FkZCI6ZmFsc2UsIlBMQVlFUl9GVUxMX1dJRFRIIjo5NjAsIlBMQVlFUl9GVUxMX0hFSUdIVCI6NTQwLCJQTEFZRVJfUExfV0lEVEgiOjcyMCwiUExBWUVSX1BMX0hFSUdIVCI6NDA1LCJsX3R5cGUiOjIsImt6IjowLCJ0bnNfbW9uZXRpemVkIjp0cnVlfSwid2FsbFRwbCI6eyJyZXBseV9ib3giOiI8ZGl2IGlkPVwicmVwbHlfYm94X3dyYXAlcG9zdF9pZCVcIj48ZGl2IGNsYXNzPVwicmVwbHlfYm94X2lubmVyX3dyYXBcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X2Zha2Vib3hfd3JhcFwiIGlkPVwicmVwbHlfZmFrZWJveCVwb3N0X2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5zaG93RWRpdFJlcGx5KCclcG9zdF9pZCUnLCBldmVudClcIiBkYXRhLW93bmVyLXBob3RvPVwiJW93bmVyX3Bob3RvJVwiIGRhdGEtb3duZXItaHJlZj1cIiVvd25lcl9ocmVmJVwiPlxuICAgIDxkaXYgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJcIj5cbiAgPGEgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfbGlua1wiIGhyZWY9XCJcL2lkXCIgb25jbGljaz1cInJldHVybiBuYXYuZ28odGhpcywgZXZlbnQpXCI+XG4gICAgPGltZyBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9pbWFnZVwiIHNyYz1cIlwvaW1hZ2VzXC9jYW1lcmFfNTAucG5nXCIgXC8+XG4gIDxcL2E+XG48XC9kaXY+JXVzZXJfaW1hZ2UlXG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2Zha2Vib3hcIj5MZWF2ZSBhIGNvbW1lbnQuLi48XC9kaXY+PFwvZGl2PlxuPFwvZGl2PjxcL2Rpdj48aW5wdXQgdHlwZT1cImhpZGRlblwiIGlkPVwicG9zdF9oYXNoJXBvc3RfaWQlXCIgdmFsdWU9XCIxNDkwNjQ4NTA0XzU5OGZkN2U5MDU3ZjRkNmI3NFwiIGNhbl9yZXBseV9hc19ncm91cD1cIiVjYW5fcmVwbHlfYXNfZ3JvdXAlXCIgXC8+IiwicmVwbHlfZm9ybSI6IjxkaXYgaWQ9XCJyZXBseV9ib3glcG9zdF9pZCVcIiBjbGFzcz1cInN1Ym1pdF9wb3N0X2JveCByZXBseV9ib3ggY2xlYXJfZml4IF9zdWJtaXRfcG9zdF9ib3hcIiBvbmNsaWNrPVwicmV0dXJuIGNhbmNlbEV2ZW50KGV2ZW50KVwiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfZm9ybVwiPlxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJyZXBseV90byVwb3N0X2lkJVwiIHZhbHVlPVwiXCIgXC8+XG4gICAgPGRpdiBjbGFzcz1cInBvc3RfZmllbGRfdXNlclwiPlxuICA8YSBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9saW5rXCIgaHJlZj1cIlwvaWRcIiBvbmNsaWNrPVwicmV0dXJuIG5hdi5nbyh0aGlzLCBldmVudClcIj5cbiAgICA8aW1nIGNsYXNzPVwicG9zdF9maWVsZF91c2VyX2ltYWdlXCIgc3JjPVwiXC9pbWFnZXNcL2NhbWVyYV81MC5wbmdcIiBcLz5cbiAgPFwvYT5cbjxcL2Rpdj4ldXNlcl9pbWFnZSVcbiAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZmllbGRfd3JhcCBfZW1vamlfZmllbGRfd3JhcFwiPlxuICAgICAgPGRpdiBpZD1cInJlcGx5X3NtaWxlJXBvc3RfaWQlXCIgY2xhc3M9XCJlbW9qaV9zbWlsZV93cmFwICBfZW1vamlfd3JhcFwiPlxuICA8ZGl2IGNsYXNzPVwiZW1vamlfc21pbGUgX2Vtb2ppX2J0blwiIHRpdGxlPVwiVXNlIHRoZSBUQUIga2V5IHRvIGluc2VydCBlbW9qaSBmYXN0ZXJcIiBvbm1vdXNlb3Zlcj1cInJldHVybiBFbW9qaS5zaG93KHRoaXMsIGV2ZW50KTtcIiBvbm1vdXNlb3V0PVwicmV0dXJuIEVtb2ppLmhpZGUodGhpcywgZXZlbnQpO1wiIG9uY2xpY2s9XCJyZXR1cm4gY2FuY2VsRXZlbnQoZXZlbnQpO1wiPlxuICAgIDxkaXYgY2xhc3M9XCJlbW9qaV9zbWlsZV9pY29uXCI+PFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+XG4gICAgICA8ZGl2IGlkPVwicmVwbHlfZmllbGQlcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X2ZpZWxkIHN1Ym1pdF9wb3N0X2ZpZWxkXCIgb25mb2N1cz1cInJldHVybiBXYWxsLnNob3dFZGl0UmVwbHkoJyVwb3N0X2lkJScsIGV2ZW50KTtcIiBjb250ZW50ZWRpdGFibGU9XCJ0cnVlXCIgcGxhY2Vob2xkZXI9XCJMZWF2ZSBhIGNvbW1lbnQuLi5cIj48XC9kaXY+XG4gICAgPFwvZGl2PlxuICAgIDxkaXYgaWQ9XCJzdWJtaXRfcmVwbHklcG9zdF9pZCVcIiBjbGFzcz1cInN1Ym1pdF9wb3N0IGNsZWFyX2ZpeFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X3dhcm4gY2xlYXJcIiBpZD1cInJlcGx5X3dhcm4lcG9zdF9pZCVcIj48XC9kaXY+XG4gICAgICA8ZGl2IGlkPVwicmVwbHlfbWVkaWFfcHJldmlldyVwb3N0X2lkJVwiIGNsYXNzPVwicmVwbHlfbWVkaWFfcHJldmlldyBjbGVhcl9maXggbWVkaWFfcHJldmlld1wiPjxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJhZGRwb3N0X2J1dHRvbl93cmFwXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJmbGF0X2J1dHRvbiBhZGRwb3N0X2J1dHRvblwiIGlkPVwicmVwbHlfYnV0dG9uJXBvc3RfaWQlXCIgb25jbGljaz1cIndhbGwuc2VuZFJlcGx5KCclcG9zdF9pZCUnLCBldmVudCwge30pO1wiIG9ubW91c2VvdmVyPVwid2FsbC5yZXBseVN1Ym1pdFRvb2x0aXAoJyVwb3N0X2lkJScsIDEsIHRoaXMpO1wiIG9ubW91c2VvdXQ9XCJ3YWxsLnJlcGx5U3VibWl0VG9vbHRpcCgnJXBvc3RfaWQlJywgMCwgdGhpcyk7XCI+UG9zdDxcL2J1dHRvbj5cbiAgICAgIDxcL2Rpdj5cbiAgICAgICVhZGRfYnV0dG9ucyVcbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlX2FkZF9tZWRpYVwiIGlkPVwicmVwbHlfYWRkX21lZGlhXyVwb3N0X2lkJVwiPjxcL2Rpdj5cbiAgICAgIDxkaXYgaWQ9XCJyZXBseV90b190aXRsZSVwb3N0X2lkJVwiIGNsYXNzPVwicmVwbHlfdG9fdGl0bGUgYWRkcG9zdF9wb3B0XCI+PFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsInJlcGx5X2Zvcm1fb2ZmaWNpYWwiOiI8ZGl2IGNsYXNzPVwiYWRkcG9zdF9vcHQgY2hlY2tib3hfb2ZmaWNpYWxcIiBpZD1cInJlcGx5X2FzX2dyb3VwJXBvc3RfaWQlXCIgb25jbGljaz1cIndhbGwucmVwbHlBc0dyb3VwKHRoaXMpO1wiIG9ubW91c2VvdmVyPVwid2FsbC5yZXBseUFzR3JvdXBPdmVyKHRoaXMsICdvbiBiZWhhbGYgb2YgdGhlIHVzZXInLCAncG9zdCBhcyBjb21tdW5pdHknKTtcIiBvbmZvY3VzPVwid2FsbC5yZXBseUFzR3JvdXBPdmVyKHRoaXMsICdvbiBiZWhhbGYgb2YgdGhlIHVzZXInLCAncG9zdCBhcyBjb21tdW5pdHknKTtcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwiYnV0dG9uXCIgYXJpYS1sYWJlbD1cIm9uIGJlaGFsZiBvZiB0aGUgdXNlclwiPlxuICA8aW1nIGNsYXNzPVwidGh1bWJfb2ZmXCIgc3JjPVwiXC9pbWFnZXNcL2NhbWVyYV81MC5wbmdcIiBcLz5cbiAgPGltZyBjbGFzcz1cInRodW1iX29uXCIgc3JjPVwiJW93bmVyX3Bob3RvJVwiIFwvPlxuPFwvZGl2PiIsInJlcGx5X2Zvcm1fZ3JvdXBfaW1hZ2UiOiI8ZGl2IGNsYXNzPVwicG9zdF9maWVsZF9ncm91cFwiPlxuICA8YSBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9saW5rXCIgaHJlZj1cIiVvd25lcl9ocmVmJVwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KVwiPlxuICAgIDxpbWcgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfaW1hZ2VcIiBzcmM9XCIlb3duZXJfcGhvdG8lXCIgXC8+XG4gIDxcL2E+XG48XC9kaXY+IiwicmVwbHlfbXVsdGlsaW5lIjpmYWxzZSwicmVwbHlfbXVsdGlsaW5lX2ludHJvIjp0cnVlLCJyZXBseV9saW5rX3dyYXAiOiI8ZGl2IGNsYXNzPVwicmVwbHlfbGlua193cmFwXCI+XG4gIDxhIGNsYXNzPVwicmVwbHlfbGluayBfcmVwbHlfbG5rXCI+UmVwbHk8XC9hPlxuPFwvZGl2PiIsInJlcGx5X2xpbmtfdG8iOiIgPGEgY2xhc3M9XCJyZXBseV90b1wiPnJlcGxpZWQgdG8gJXRvX3VzZXIlPFwvYT4iLCJyZXBseV9mYXN0IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAgX3Bvc3RcIiBkYXRhLXBvc3QtaWQ9XCIlcmVwbHlfaWQlXCIgPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfd3JhcCBfcmVwbHlfY29udGVudCBfcG9zdF9jb250ZW50IGNsZWFyX2ZpeFwiPlxuICAgIFxuICAgIDxhIGNsYXNzPVwicmVwbHlfaW1hZ2VcIiBocmVmPVwiXC9pZFwiPlxuICAgICAgPGltZyBzcmM9XCJcL2ltYWdlc1wvY2FtZXJhXzUwLnBuZ1wiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIGNsYXNzPVwicmVwbHlfaW1nXCIgYWx0PVwiREVMRVRFRFwiIFwvPlxuICAgIDxcL2E+XG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2NvbnRlbnRcIiA+XG4gICAgICBcbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9hdXRob3JcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJhdXRob3JcIiBocmVmPVwiXC9pZFwiIGRhdGEtZnJvbS1pZD1cIjBcIj5ERUxFVEVEPFwvYT4ldG9fbGluayVcbiAgICAgIDxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV90ZXh0XCIgPjxkaXYgY2xhc3M9XCJ3YWxsX3JlcGx5X3RleHRcIj4lbWVzc2FnZSU8XC9kaXY+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2Zvb3RlciBjbGVhcl9maXhcIiBpZD1cIndwZV9ib3R0b20lcmVwbHlfaWQlXCI+XG4gICAgICAgIFxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZGF0ZVwiPiVkYXRlJTxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPlxuICA8YSBjbGFzcz1cInJlcGx5X2xpbmsgX3JlcGx5X2xua1wiPlJlcGx5PFwvYT5cbjxcL2Rpdj5cbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJyZXBseV9tdWx0aWxpbmVfaGludCI6IjxkaXYgY2xhc3M9XCJyZXBseV9zdWJtaXRfaGludF93cmFwXCIgIG9uY2xpY2s9XCJzdG9wRXZlbnQoZXZlbnQpO1wiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfc3VibWl0X2hpbnRfdGl0bGVcIj5TaG9ydGN1dHM8XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJyZXBseV9zdWJtaXRfaGludF9vcHRzXCIgaWQ9XCJyZXBseV9zdWJtaXRfaGludF9vcHRzXCI+XG4gICAgPGRpdiBjbGFzcz1cInJhZGlvYnRuICVkaXNhYmxlZCUgXCIgZGF0YS12YWw9XCIwXCIgb25jbGljaz1cInJhZGlvYnRuKHRoaXMsIDAsICdyZXBseV9zdWJtaXQnKTsgd2FsbC5vblJlcGx5U3VibWl0Q2hhbmdlZCgwKTtcIj48ZGl2IGNsYXNzPVwicmFkaW9idG5fbGFiZWxcIj48Yj5FbnRlcjxcL2I+IJcgc2VuZCBtZXNzYWdlPGJyPjxiPlNoaWZ0K0VudGVyPFwvYj4glyBuZXcgbGluZTxcL2Rpdj48XC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInJhZGlvYnRuICVlbmFibGVkJSBcIiBkYXRhLXZhbD1cIjFcIiBvbmNsaWNrPVwicmFkaW9idG4odGhpcywgMSwgJ3JlcGx5X3N1Ym1pdCcpOyB3YWxsLm9uUmVwbHlTdWJtaXRDaGFuZ2VkKDEpO1wiPjxkaXYgY2xhc3M9XCJyYWRpb2J0bl9sYWJlbFwiPjxiPkN0cmwrRW50ZXI8XC9iPiCXIHNlbmQgbWVzc2FnZTxicj48Yj5FbnRlcjxcL2I+IJcgbmV3IGxpbmU8XC9kaXY+PFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwicmVwbHlfYnV0dG9uIjoiPGEgaHJlZj1cIiNcIiBjbGFzcz1cInBvc3RfcmVwbHkgX3JlcGx5X3dyYXBcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwuc2hvd0VkaXRSZXBseSgnJXBvc3RfaWQlJywgZXZlbnQpXCI+XG4gIDxpIGNsYXNzPVwicG9zdF9yZXBseV9pY29uIF9pY29uXCI+PFwvaT5cbiAgPHNwYW4gY2xhc3M9XCJwb3N0X3JlcGx5X2xpbmsgX2xpbmtcIj5Db21tZW50PFwvc3Bhbj5cbiAgPHNwYW4gY2xhc3M9XCJwb3N0X3JlcGx5X2NvdW50IF9jb3VudFwiPjxcL3NwYW4+XG48XC9hPiIsInJlcGx5X2xpbmsiOiI8c3BhbiBpZD1cInJlcGx5X2xpbmslcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJyZXBseV9saW5rXCIgb25jbGljaz1cInJldHVybiBXYWxsLnNob3dFZGl0UmVwbHkoJyVwb3N0X2lkJScsIGV2ZW50KVwiPkNvbW1lbnQ8XC9hPjxcL3NwYW4+Iiwib3duX3JlcGx5X2xpbmsiOiI8c3BhbiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPjxhIGNsYXNzPVwicmVwbHlfbGlua1wiIG9uY2xpY2s9XCJXYWxsLmxpa2VTaGFyZUN1c3RvbSgnJXBvc3RfaWQlJylcIj5SZXBseTxcL2E+PFwvc3Bhbj4iLCJlZGl0X2xpbmsiOiI8c3BhbiBjbGFzcz1cImRpdmlkZVwiPnw8XC9zcGFuPjxhIG9uY2xpY2s9XCJ3YWxsLmVkaXRQb3N0KHRoaXMsICclcG9zdF9pZCUnKVwiPkVkaXQgPFwvYT4iLCJwb3N0IjoiPGRpdiBpZD1cInBvc3QlcG9zdF9pZCVcIiBjbGFzcz1cIl9wb3N0IHBvc3QgcGFnZV9ibG9ja1wiIGRhdGEtcG9zdC1pZD1cIiVwb3N0X2lkJVwiIG9uY2xpY2s9XCJ3YWxsLnBvc3RDbGljaygnJXBvc3RfaWQlJywgZXZlbnQpO1wiID5cbiAgPGRpdiBjbGFzcz1cIl9wb3N0X2NvbnRlbnRcIj5cbiAgICBcbiAgICA8ZGl2IGNsYXNzPVwicG9zdF9oZWFkZXJcIj5cbiAgICAgIDxhIGNsYXNzPVwicG9zdF9pbWFnZSVvbmxpbmVfY2xhc3MlXCIgaHJlZj1cIiVsaW5rJVwiPlxuICAgICAgICA8aW1nIHNyYz1cIiVwaG90byVcIiBkYXRhLXBvc3QtaWQ9XCIlcG9zdF9pZCVcIiBkYXRhLXBvc3QtY2xpY2stdHlwZT1cInBvc3Rfb3duZXJfaW1nXCIgd2lkdGg9XCI1MFwiIGhlaWdodD1cIjUwXCIgY2xhc3M9XCJwb3N0X2ltZ1wiIFwvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCI+LjxcL3NwYW4+XG4gICAgICA8XC9hPlxuICAgICAgPGRpdiBjbGFzcz1cInBvc3RfaGVhZGVyX2luZm9cIj5cbiAgICAgICAgPGg1IGNsYXNzPVwicG9zdF9hdXRob3JcIj4lbmFtZSU8XC9oNT5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBvc3RfZGF0ZVwiPjxhIGNsYXNzPVwicG9zdF9saW5rXCIgaHJlZj1cIlwvd2FsbCVwb3N0X2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gc2hvd1dpa2koe3c6ICd3YWxsJXBvc3RfaWQlJ30sIGZhbHNlLCBldmVudCk7XCI+JWRhdGUlPFwvYT48XC9kaXY+XG4gICAgICAgICVhY3Rpb25zJVxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicG9zdF9jb250ZW50XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicG9zdF9pbmZvXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3YWxsX3RleHRcIj4ldGV4dCU8XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwb3N0X2Z1bGxfbGlrZV93cmFwIGNsZWFyX2ZpeFwiPlxuICA8ZGl2IGNsYXNzPVwicG9zdF9mdWxsX2xpa2VcIj5cbiAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwicG9zdF9saWtlIF9saWtlX3dyYXAgbm9fbGlrZXNcIiBvbm1vdXNlb3Zlcj1cIldhbGwubGlrZXNTaG93KHRoaXMsICclcG9zdF9pZCUnKVwiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5saWtlSXQodGhpcywgJyVwb3N0X2lkJScsICcxNDkwNjQ4NTA0X2ZlNjRiM2ZlZjFmYTFiNWYzMicsIGV2ZW50KTtcIj5cbiAgICAgIDxpIGNsYXNzPVwicG9zdF9saWtlX2ljb24gX2ljb25cIj48XC9pPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwb3N0X2xpa2VfbGluayBfbGlua1wiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3RfbGlrZV9jb3VudCBfY291bnRcIj48XC9zcGFuPlxuICAgIDxcL2E+XG4gICAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCIgb25jbGljaz1cIldhbGwubGlrZXNTaG93TGlzdCh0aGlzLCAnJXBvc3RfaWQlJylcIj5TaG93IGxpa2VzPFwvc3Bhbj5cbiAgICAlcmVwbHlfYnV0dG9uJVxuICAgIDxhIGhyZWY9XCIjXCIgY2xhc3M9XCJwb3N0X3NoYXJlIF9zaGFyZV93cmFwIG5vX3NoYXJlc1wiICBvbm1vdXNlb3Zlcj1cIldhbGwuc2hhcmVzU2hvdyh0aGlzLCAnJXBvc3RfaWQlJylcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwuc2hhcmVzT3BlbihldmVudCwgJyVwb3N0X2lkJScpO1wiPlxuICAgICAgPGkgY2xhc3M9XCJwb3N0X3NoYXJlX2ljb24gX2ljb25cIj48XC9pPlxuICAgICAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3Rfc2hhcmVfbGluayBfbGlua1wiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3Rfc2hhcmVfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbiAgICA8XC9hPlxuICAgIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiIG9uY2xpY2s9XCJXYWxsLnNoYXJlc1Nob3dMaXN0KHRoaXMsICclcG9zdF9pZCUnKVwiPlNob3cgc2hhcmVkIGNvcGllczxcL3NwYW4+XG4gICAgXG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInBvc3Rfdmlld3MgX3ZpZXdzX3dyYXAgbm9fdmlld3MgX2F1dG9fdXBkYXRlXCIgb25tb3VzZW92ZXI9XCJXYWxsLnZpZXdzVXBkYXRlKHRoaXMsICclcG9zdF9pZCUnKVwiPlxuICA8aSBjbGFzcz1cInBvc3Rfdmlld3NfaWNvbiBfaWNvblwiPjxcL2k+XG4gIDxzcGFuIGNsYXNzPVwicG9zdF92aWV3c19jb3VudCBfY291bnRcIj48XC9zcGFuPlxuPFwvZGl2PlxuPFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbGllc1wiPjxkaXYgY2xhc3M9XCJyZXBsaWVzX3dyYXBcIiBpZD1cInJlcGxpZXNfd3JhcCVwb3N0X2lkJVwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGxpZXNfbGlzdCBfcmVwbGllc19saXN0XCIgaWQ9XCJyZXBsaWVzJXBvc3RfaWQlXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBpZD1cInN0YXJ0X3JlcGx5JXBvc3RfaWQlXCIgdmFsdWU9XCJcIlwvPjxcL2Rpdj5cbiAgJXJlcGx5X2JveCVcbjxcL2Rpdj48XC9kaXY+XG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICAgIFxuICA8XC9kaXY+XG4gIFxuPFwvZGl2PiIsInJlcGx5IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAlY2xhc3NuYW1lJSBfcG9zdFwiIGRhdGEtcG9zdC1pZD1cIiVyZXBseV9pZCVcIiAlYXR0ciU+XG4gIDxkaXYgY2xhc3M9XCJyZXBseV93cmFwIF9yZXBseV9jb250ZW50IF9wb3N0X2NvbnRlbnQgY2xlYXJfZml4XCI+XG4gICAgXG4gICAgPGEgY2xhc3M9XCJyZXBseV9pbWFnZVwiIGhyZWY9XCIlbGluayVcIj5cbiAgICAgIDxpbWcgc3JjPVwiJXBob3RvJVwiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIGNsYXNzPVwicmVwbHlfaW1nXCIgYWx0PVwiJW5hbWUlXCIgXC8+XG4gICAgPFwvYT5cbiAgICA8ZGl2IGNsYXNzPVwicmVwbHlfY29udGVudFwiID5cbiAgICAgICVhY3Rpb25zJVxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2F1dGhvclwiPlxuICAgICAgICA8YSBjbGFzcz1cImF1dGhvclwiIGhyZWY9XCIlbGluayVcIiBkYXRhLWZyb20taWQ9XCIlcmVwbHlfdWlkJVwiPiVuYW1lJTxcL2E+JXRvX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfdGV4dFwiID4ldGV4dCU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZm9vdGVyIGNsZWFyX2ZpeFwiIGlkPVwid3BlX2JvdHRvbSVyZXBseV9pZCVcIj5cbiAgICAgICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cImxpa2Vfd3JhcCBfbGlrZV93cmFwIG5vX2xpa2VzXCIgb25jbGljaz1cInJldHVybiBXYWxsLmxpa2VJdCh0aGlzLCAnJWxpa2VfaWQlJywgJzE0OTA2NDg1MDRfZmU2NGIzZmVmMWZhMWI1ZjMyJywgZXZlbnQpO1wiIG9ubW91c2VvdmVyPVwiV2FsbC5saWtlc1Nob3codGhpcywgJyVsaWtlX2lkJScpXCI+XG4gIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIj5MaWtlPFwvc3Bhbj5cbiAgPGkgY2xhc3M9XCJsaWtlX2ljb24gX2ljb25cIj48XC9pPlxuICA8c3BhbiBjbGFzcz1cImxpa2VfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbjxcL2E+XG48c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIiBvbmNsaWNrPVwiV2FsbC5saWtlc1Nob3dMaXN0KHRoaXMsICclbGlrZV9pZCUnKVwiPlNob3cgbGlrZXM8XC9zcGFuPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZGF0ZVwiPjxhIGNsYXNzPVwid2RfbG5rXCIgaHJlZj1cIlwvd2FsbCVwb3N0X2lkJT9yZXBseT0lcmVwbHlfbXNnX2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KVwiPiVkYXRlJTxcL2E+PFwvZGl2PlxuICAgICAgICAlYW5zd2VyX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwiZGVsIjoiPGEgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfaXRlbVwiIG9uY2xpY2s9XCJ3YWxsLmRlbGV0ZVBvc3QodGhpcywgJyVwb3N0X2lkJScsICcxNDkwNjQ4NTA0X2MzNjRmOWFhMTBhYjdiZDc2ZScpOyByZXR1cm4gZmFsc2U7XCI+RGVsZXRlIHBvc3Q8XC9hPiIsInNwYW0iOiI8YSBjbGFzcz1cInVpX2FjdGlvbnNfbWVudV9pdGVtXCIgb25jbGljaz1cIndhbGwubWFya0FzU3BhbSh0aGlzLCAnJXBvc3RfaWQlJywgJzE0OTA2NDg1MDRfNWZlMTdlNzk5YTdiMmEwNDdiJyk7IHJldHVybiBmYWxzZTtcIj5SZXBvcnQ8XC9hPiIsImVkaXQiOiI8YSBjbGFzcz1cInVpX2FjdGlvbnNfbWVudV9pdGVtXCIgb25jbGljaz1cIndhbGwuZWRpdFBvc3QodGhpcywgJyVwb3N0X2lkJScpOyByZXR1cm4gZmFsc2U7XCI+RWRpdCA8XC9hPiIsInBvc3RfYWN0aW9ucyI6IjxkaXYgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfd3JhcCBfdWlfbWVudV93cmFwIFwiIG9ubW91c2VvdmVyPVwidWlBY3Rpb25zTWVudS5zaG93KHRoaXMpO1wiIG9ubW91c2VvdXQgPVwidWlBY3Rpb25zTWVudS5oaWRlKHRoaXMpO1wiPlxuICA8ZGl2IGNsYXNzPVwidWlfYWN0aW9uc19tZW51X2ljb25zXCIgIHRhYmluZGV4PVwiMFwiIGFyaWEtbGFiZWw9XCJBY3Rpb25zXCIgcm9sZT1cImJ1dHRvblwiIG9uY2xpY2s9XCJ1aUFjdGlvbnNNZW51LmtleVRvZ2dsZSh0aGlzLCBldmVudCk7XCI+PHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPkFjdGlvbnM8XC9zcGFuPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInVpX2FjdGlvbnNfbWVudSBfdWlfbWVudVwiID4lYWN0aW9ucyU8XC9kaXY+XG48XC9kaXY+IiwiZGVsX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRGVsZXRlXCIgb25jbGljaz1cIndhbGwuZGVsZXRlUG9zdCh0aGlzLCAnJXJlcGx5X2lkJScsICcxNDkwNjQ4NTA0X2MzNjRmOWFhMTBhYjdiZDc2ZScpO1wiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJEZWxldGVcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4iLCJzcGFtX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiUmVwb3J0XCIgb25jbGljaz1cIndhbGwubWFya0FzU3BhbSh0aGlzLCAnJXJlcGx5X2lkJScsICcxNDkwNjQ4NTA0XzVmZTE3ZTc5OWE3YjJhMDQ3YicpO1wiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJSZXBvcnRcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4iLCJlZGl0X3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2VkaXQlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9lZGl0X2J1dHRvbiByZXBseV9hY3Rpb24gZmxfclwiIGRhdGEtdGl0bGU9XCJFZGl0IFwiIG9uY2xpY2s9XCJ3YWxsLmVkaXRQb3N0KHRoaXMsICclcmVwbHlfaWQlJyk7XCIgb25tb3VzZW92ZXI9XCJzaG93VGl0bGUodGhpcyk7XCIgYXJpYS1sYWJlbD1cIkVkaXQgXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+IiwicmVwbHlfYWN0aW9ucyI6IjxkaXYgY2xhc3M9XCJmbF9yIHBvc3RfYWN0aW9uc193cmFwXCI+PGRpdiBjbGFzcz1cInBvc3RfYWN0aW9uc1wiPiVhY3Rpb25zJTxcL2Rpdj48XC9kaXY+IiwicG9sbF9zdGF0cyI6IjxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfc3RhdFwiJWhhbmRsZXJzJT5cbiAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF90ZXh0XCI+JW9wdGlvbl90ZXh0JTxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF9yb3dfd3JhcFwiPlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93X3BlcmNlbnRcIj4lcGVyY2VudCUlPFwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93JXJvd19jbGFzcyVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcGVyY2VudFwiIHN0eWxlPVwid2lkdGg6ICVjc3NfcGVyY2VudCUlXCI+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF9yb3dfY291bnRcIj4lY291bnQlPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsInBvbGxfaGFzaCI6IjE0OTA2NDg1MDRfMDdmZWFhZGI5MmRiMTM1OGM4IiwiZGF0ZV9mb3JtYXQiOiJ0b2RheSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInRpbWVfc3lzdGVtIjpbInBtIiwiYW0iXSwiYWJzX3RpbWVzdGFtcCI6MTQ5MDY0ODUwNCwibGFuZyI6eyJ3YWxsX01fcmVwbGllc19vZl9OIjpbIiIsIiVzIGNvbW1lbnQgb2Yge2xpbmt9e2FsbH17XC9saW5rfSIsIiVzIGNvbW1lbnRzIG9mIHtsaW5rfXthbGx9e1wvbGlua30iXSwid2FsbF9oaWRlX3JlcGxpZXMiOiJIaWRlIGNvbW1lbnRzIiwid2FsbF9zaG93X25fb2ZfbV9sYXN0IjpbIiIsIlNob3cgbGF0ZXN0ICVzIGNvbW1lbnQgb3V0IG9mIHtjb3VudH0iLCJTaG93IGxhdGVzdCAlcyBjb21tZW50cyBvdXQgb2Yge2NvdW50fSJdLCJ3YWxsX3Nob3dfYWxsX25fcmVwbGllcyI6WyIiLCJTaG93ICVzIGNvbW1lbnQiLCJTaG93IGFsbCAlcyBjb21tZW50cyJdLCJ3YWxsX05fcmVwbGllcyI6WyIiLCIlcyBjb21tZW50IiwiJXMgY29tbWVudHMiXSwid2FsbF90aHJlZV9sYXN0X3JlcGxpZXMiOiJsYXN0IHRocmVlIHBvc3RzIiwid2FsbF9hbGxfcmVwbGllcyI6ImFsbCBjb21tZW50cyIsIndhbGxfeF9uZXdfcmVwbGllc19tb3JlIjpbIiIsIiVzIG5ldyBjb21tZW50IGFkZGVkIiwiJXMgbmV3IGNvbW1lbnRzIGFkZGVkIl0sIndhbGxfWF9wZW9wbGVfdm90ZWQiOlsiIiwiPGI+JXM8XC9iPiBwZXJzb24gdm90ZWQuIiwiPGI+JXM8XC9iPiBwZW9wbGUgdm90ZWQuIl0sIndhbGxfcmVwbHlfc3VibWl0X2hpbnRfMSI6IlNoaWZ0K0VudGVyIJcgbmV3IGxpbmUiLCJ3YWxsX3JlcGx5X3N1Ym1pdF9oaW50XzIiOiJDdHJsK0VudGVyIJYgc2VuZCBtZXNzYWdlIiwid2FsbF9yZXBseV9zdWJtaXRfaGludF8xX21vcmUiOiJFbnRlciCXIHNlbmQgbWVzc2FnZSwgU2hpZnQrRW50ZXIglyBuZXcgbGluZSIsIndhbGxfcmVwbHlfc3VibWl0X2hpbnRfMl9tb3JlIjoiRW50ZXIglyBuZXcgbGluZSwgQ3RybCtFbnRlciCXIHNlbmQgbWVzc2FnZSIsIndhbGxfcmVwbHlfcG9zdCI6IlJlcGx5Iiwid2FsbF9yZXBsaWVkX3RvX2dyb3VwIjoidGhlIGFkbWluIiwid2FsbF9yZXBseV9hc191c2VyIjoib24gYmVoYWxmIG9mIHRoZSB1c2VyIiwid2FsbF9yZXBseV9hc19ncm91cCI6InBvc3QgYXMgY29tbXVuaXR5Iiwid2FsbF9hZGRfcGhvdG9fZXJyb3IiOiJVbmFibGUgdG8gdXBsb2FkIHRoZSBpbWFnZSIsIndhbGxfanVzdF9ub3ciOlsiIiwiT25lIHNlY29uZCBhZ28iLCJUd28gc2Vjb25kcyBhZ28iLCJUaHJlZSBzZWNvbmRzIGFnbyIsIkZvdXIgc2Vjb25kcyBhZ28iLCJGaXZlIHNlY29uZHMgYWdvIl0sIndhbGxfWF9zZWNvbmRzX2Fnb193b3JkcyI6WyIiLCJPbmUgc2Vjb25kIGFnbyIsIlR3byBzZWNvbmRzIGFnbyIsIlRocmVlIHNlY29uZHMgYWdvIiwiRm91ciBzZWNvbmRzIGFnbyIsIkZpdmUgc2Vjb25kcyBhZ28iXSwid2FsbF9YX3NlY29uZHNfYWdvIjpbIiIsIiVzIHNlY29uZCBhZ28iLCIlcyBzZWNvbmRzIGFnbyJdLCJ3YWxsX1hfbWludXRlc19hZ29fd29yZHMiOlsiIiwib25lIG1pbnV0ZSBhZ28iLCJ0d28gbWludXRlcyBhZ28iLCJ0aHJlZSBtaW51dGVzIGFnbyIsIjQgbWludXRlcyBhZ28iLCI1IG1pbnV0ZXMgYWdvIl0sIndhbGxfWF9taW51dGVzX2FnbyI6WyIiLCIlcyBtaW51dGUgYWdvIiwiJXMgbWludXRlcyBhZ28iXSwid2FsbF9YX2hvdXJzX2Fnb193b3JkcyI6WyIiLCJvbmUgaG91ciBhZ28iLCJ0d28gaG91cnMgYWdvIiwidGhyZWUgaG91cnMgYWdvIiwiZm91ciBob3VycyBhZ28iLCJmaXZlIGhvdXJzIGFnbyJdLCJ3YWxsX1hfaG91cnNfYWdvIjpbIiIsIiVzIGhvdXIgYWdvIiwiJXMgaG91cnMgYWdvIl19fSwic2hhcmVfdGltZWhhc2giOiIxNDkwNjQ4NTA0XzFiMmFiMTNhZjU2ZDU5NTQ2ZSIsImNvbW1lbnRzVHBsIjp7InJlcGx5IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAgX3Bvc3RcIiBkYXRhLXBvc3QtaWQ9XCIlcmVwbHlfaWQlXCIgIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbWVudENsaWNrKHRoaXMsIGV2ZW50LCAlZnJvbV9pZCUsICVyZXBseV9tc2dfaWQlKVwiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfd3JhcCBfcmVwbHlfY29udGVudCBfcG9zdF9jb250ZW50IGNsZWFyX2ZpeFwiPlxuICAgIFxuICAgIDxhIGNsYXNzPVwicmVwbHlfaW1hZ2VcIiBocmVmPVwiJWhyZWYlXCI+XG4gICAgICA8aW1nIHNyYz1cIiVwaG90byVcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiBjbGFzcz1cInJlcGx5X2ltZ1wiIGFsdD1cIiVuYW1lJVwiIFwvPlxuICAgIDxcL2E+XG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2NvbnRlbnRcIiA+XG4gICAgICAlYWN0aW9ucyVcbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9hdXRob3JcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJhdXRob3JcIiBocmVmPVwiJWhyZWYlXCIgZGF0YS1mcm9tLWlkPVwiJWZyb21faWQlXCI+JW5hbWUlPFwvYT4ldG9fbGluayVcbiAgICAgIDxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV90ZXh0XCIgPiVtZXNzYWdlJTxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9mb290ZXIgY2xlYXJfZml4XCIgaWQ9XCJ3cGVfYm90dG9tJXJlcGx5X2lkJVwiPlxuICAgICAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwibGlrZV93cmFwIF9saWtlX3dyYXAgbm9fbGlrZXNcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwubGlrZUl0KHRoaXMsICclcG9zdF9vaWQldmlkZW9fY29tbWVudCVyZXBseV9tc2dfaWQlbXYnLCAnMTQ5MDY0ODUwNF9mZTY0YjNmZWYxZmExYjVmMzInLCBldmVudCk7XCIgb25tb3VzZW92ZXI9XCJXYWxsLmxpa2VzU2hvdyh0aGlzLCAnJXBvc3Rfb2lkJXZpZGVvX2NvbW1lbnQlcmVwbHlfbXNnX2lkJW12JylcIj5cbiAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPkxpa2U8XC9zcGFuPlxuICA8aSBjbGFzcz1cImxpa2VfaWNvbiBfaWNvblwiPjxcL2k+XG4gIDxzcGFuIGNsYXNzPVwibGlrZV9jb3VudCBfY291bnRcIj48XC9zcGFuPlxuPFwvYT5cbjxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiIG9uY2xpY2s9XCJXYWxsLmxpa2VzU2hvd0xpc3QodGhpcywgJyVwb3N0X29pZCV2aWRlb19jb21tZW50JXJlcGx5X21zZ19pZCVtdicpXCI+U2hvdyBsaWtlczxcL3NwYW4+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9kYXRlXCI+JWRhdGUlPFwvZGl2PlxuICAgICAgICBcbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJhY3Rpb25zIjoiPGRpdiBjbGFzcz1cImZsX3IgcG9zdF9hY3Rpb25zX3dyYXBcIj48ZGl2IGNsYXNzPVwicG9zdF9hY3Rpb25zXCI+JWFjdGlvbnMlPFwvZGl2PjxcL2Rpdj4iLCJlZGl0X3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2VkaXQlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9lZGl0X2J1dHRvbiByZXBseV9hY3Rpb24gZmxfclwiIGRhdGEtdGl0bGU9XCJFZGl0XCIgb25jbGljaz1cIldhbGwuZWRpdFBvc3QodGhpcywgJyVyZXBseV9pZCUnKVwiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJFZGl0XCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+IiwiZGVsX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRGVsZXRlXCIgb25jbGljaz1cIlZpZGVvdmlldy5jb21tQWN0aW9uKCdkZWxldGUnLCAlcG9zdF9vaWQlLCAlcmVwbHlfbXNnX2lkJSwgJzE0OTA2NDg1MDRfYjYyMTM5OTc0MGUxZWE3MjYxJywgJ212JylcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiRGVsZXRlXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+Iiwic3BhbV9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9kZWxldGUlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9kZWxldGVfYnV0dG9uIHJlcGx5X2FjdGlvbiBmbF9yXCIgZGF0YS10aXRsZT1cIlJlcG9ydFwiIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbUFjdGlvbignc3BhbScsICVwb3N0X29pZCUsICVyZXBseV9tc2dfaWQlLCAnMTQ5MDY0ODUwNF9iNjIxMzk5NzQwZTFlYTcyNjEnLCAnbXYnKVwiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJSZXBvcnRcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4ifSwicG9zdCI6IjIxNTI2OTlfdmlkZW8xNjg1OTE3NDFtdiIsIm1heFJlcGx5TGVuZ3RoIjoxNjM4NCwibWF4Q2hhdFJlcGx5TGVuZ3RoIjo2MDAsIm1heERlc2NyaXB0aW9uTGVuZ3RoIjoxMDI0LCJwdWJsaXNoQWN0aW9uIjoiIiwicGxfbGlzdCI6MCwiaXNfdmtfcGxheWVyIjowLCJpc19mbHYiOmZhbHNlLCJjYW50UGxheSI6MCwicGxheWVyIjp7InR5cGUiOiJ5b3V0dWJlIiwicGFyYW1zIjpbeyJsYW5nX2FkZCI6IkFkZCB0byBNeSBWaWRlb3MiLCJsYW5nX2FkZGVkIjoiVmlkZW8gYWRkZWQgdG8gTXkgVmlkZW9zIiwibGFuZ19zaGFyZSI6IlNoYXJlIiwibGFuZ19saWtlIjoiTGlrZSIsImxhbmdfZG9uYXRlIjoiRG9uYXRlIiwibGFuZ19zdWJzY3JpYmUiOiJTdWJzY3JpYmUiLCJsYW5nX3N1YnNjcmliZWQiOiJGb2xsb3dpbmciLCJsYW5nX3ZvbHVtZV9vbiI6IlVubXV0ZSIsImxhbmdfdm9sdW1lX29mZiI6Ik11dGUiLCJsYW5nX3ZvbHVtZSI6IlZvbHVtZSIsImxhbmdfaGRzZCI6IkNoYW5nZSBWaWRlbyBRdWFsaXR5IiwibGFuZ19xdWFsaXR5X2F1dG8iOiJBdXRvIiwibGFuZ19vcGVuX3BvcHVwIjoiRXhwYW5kIiwibGFuZ19mdWxsc2NyZWVuIjoiRnVsbCBTY3JlZW4iLCJsYW5nX3dpbmRvdyI6Ik1pbmltaXplIiwibGFuZ19yb3RhdGUiOiJSb3RhdGUiLCJsYW5nX2Fkc19saW5rIjoiQWR2ZXJ0aXNlciYjMzk7cyBTaXRlIiwibGFuZ19hZHMiOiJBZHMiLCJsYW5nX2Fkc19za2lwIjoiU2tpcCBhZCIsImxhbmdfYWRzX3NraXBfdGltZSI6IlNraXAgYWRzIGluIHt0aW1lfSBzIiwibGFuZ19yZXBvcnRfcHJvYmxlbSI6IlJlcG9ydCBhIHByb2JsZW0uLiIsImxhbmdfcGxheSI6IlBsYXkiLCJsYW5nX3BhdXNlIjoiUGF1c2UiLCJsYW5nX3JlcGxheSI6IlJlcGxheSIsImxhbmdfbmV4dCI6Ik5leHQgdmlkZW8iLCJsYW5nX25leHRfY2FuY2VsIjoiQ2FuY2VsIiwibGFuZ19nb3RvX29yaWdfdmlkZW8iOiJHbyB0byBWaWRlbyIsImxhbmdfZ290b19hZHZlcnRpc2Vyc19zaXRlIjoiR28gdG8gdGhlIHdlYnNpdGUiLCJsYW5nX2J1eV90aWNrZXRzIjpudWxsLCJsYW5nX2xvYWRfZXJyb3IiOiJBbiBlcnJvciBvY2N1cnJlZCBkdXJpbmcgbG9hZGluZy4gUGxlYXNlIHRyeSBhZ2FpbiBsYXRlci4iLCJsYW5nX2Vycl9jb2RlIjoiRXJyb3IgY29kZToge2NvZGV9IiwibGFuZ19iYWRfYnJvd3NlciI6IlNvcnJ5LCB5b3VyIGJyb3dzZXIgaXNuJiMzOTt0IHN1cHBvcnRlZCBhdCB0aGUgbW9tZW50IiwibGFuZ19saXZlIjoiTGl2ZSIsImxhbmdfbGl2ZV9zdGFydGluZ19zb29uIjoiVGhlIGxpdmUgd2lsbCBzdGFydCBzb29uIiwibGFuZ19saXZlX2ZhaWxlZCI6IkFuIGVycm9yIG9jY3VycmVkIHdoaWxlIHN0cmVhbWluZyIsImxhbmdfbGl2ZV93YWl0X3JlY29yZCI6IlRoZSBsaXZlIGhhcyBmaW5pc2hlZCBhbmQgd2lsbCBzb29uIGJlY29tZSBhdmFpbGFibGUgaW4gcmVwbGF5IiwibGFuZ19saXZlX3VzZXJfc2VudF9naWZ0IjpbIiIsInNlbnQgYSBnaWZ0Iiwic2VudCBhIGdpZnQiXSwibGFuZ19saXZlX3VzZXJfc2VudF9zdXBlcmNvbW1lbnQiOlsiIiwic2VudCBhIHN1cGVyIG1lc3NhZ2UiLCJzZW50IGEgc3VwZXIgbWVzc2FnZSJdLCJsYW5nX2xpdmVfZG93bmxvYWRfYXBwIjoiRG93bmxvYWQgYXBwIiwibGFuZ19hdXRvcGxheV92b2x1bWVfaGludCI6ItFsaWNrIHRvIHR1cm4gb24gdGhlIHNvdW5kIiwibGFuZ19hdXRvcGxheV9leHBhbmRfaGludCI6IkNsaWNrIHRvIGV4cGFuZCIsImxhbmdfdGltZWRfYnV0dG9uX2dvdG8iOiLP5fDl6fLoIiwibGFuZ190aW1lZF9idXR0b25fb3BlbiI6Ik9wZW4iLCJsYW5nX3RpbWVkX2J1dHRvbl9idXkiOiJCdXkiLCJsYW5nX3RpbWVkX2J1dHRvbl9idXlfdGlja2V0cyI6IkJ1eSB0aWNrZXRzIiwibGFuZ190aW1lZF9idXR0b25fY2hlY2tpbiI6bnVsbCwibGFuZ190aW1lZF9idXR0b25faW5zdGFsbCI6ItPx8uDt7uLo8vwiLCJsYW5nX3RpbWVkX2J1dHRvbl9jb250YWN0Ijoi0eL/5+Dy/PH/IiwibGFuZ190aW1lZF9idXR0b25fZmlsbCI6Isfg7+7r7ejy/CIsImxhbmdfdGltZWRfYnV0dG9uX2xlYXJuX21vcmUiOiJNb3JlIiwibGFuZ19jbWVudV9jb3B5X3ZpZGVvX2xpbmsiOiJDb3B5IHZpZGVvIGxpbmsiLCJsYW5nX2NtZW51X2NvcHlfdGltZWNvZGVfbGluayI6IkNvcHkgbGluayB3aXRoIHRpbWVjb2RlIiwibGFuZ19jbWVudV9jb3B5X2VtYmVkX2NvZGUiOiJDb3B5IGVtYmVkIGNvZGUiLCJsYW5nX2NtZW51X2VuYWJsZV9sb29wIjoiRW5hYmxlIGxvb3AiLCJsYW5nX2NtZW51X2Rpc2FibGVfbG9vcCI6IkRpc2FibGUgbG9vcCIsImxhbmdfY21lbnVfcGxheWJhY2tfc3BlZWQiOiJQbGF5YmFjayBzcGVlZCIsImxhbmdfY21lbnVfcmVwb3J0X2Vycm9yIjoiUmVwb3J0IGEgcHJvYmxlbS4uIiwibGFuZ19jbWVudV9jb3B5X2RlYnVnIjoiQ29weSBkZWJ1ZyBpbmZvIiwibGFuZ19hcmlhX3ZpZGVvcGxheWVyIjoiVksgVmlkZW8gUGxheWVyIiwibGFuZ19hcmlhX3ZvbHVtZV9zbGlkZXIiOiJWb2x1bWUgc2xpZGVyIiwibGFuZ19hcmlhX3ZvbHVtZV9tdXRlZCI6IlZvbHVtZSBpcyBtdXRlZCIsImxhbmdfYXJpYV90aW1lbGluZV9zbGlkZXIiOiJUaW1lIHNsaWRlciIsImxhbmdfYXJpYV90aW1lbGluZV92YWx1ZSI6Int0aW1lfSAodG90YWwgZHVyYXRpb24ge2R1cmF0aW9ufSkiLCJsYW5nX2FyaWFfZW50ZXJfZnVsbHNjcmVlbiI6IkVudGVyIGZ1bGwgc2NyZWVuIG1vZGUiLCJsYW5nX2FyaWFfZXhpdF9mdWxsc2NyZWVuIjoiRXhpdCBmdWxsIHNjcmVlbiBtb2RlIiwibGFuZ19hcmlhX3F1YWxpdHlfY3VycmVudCI6IkN1cnJlbnQgcXVhbGl0eSBpcyB7cXVhbGl0eX0iLCJ2aWRlb19wbGF5X2hkIjoiV2F0Y2ggaW4gSEQiLCJ2aWRlb19zdG9wX2xvYWRpbmciOiJTdG9wIERvd25sb2FkIiwidmlkZW9fcGxheWVyX3ZlcnNpb24iOiJWSyBWaWRlbyBQbGF5ZXIiLCJ2aWRlb19nZXRfdmlkZW9fY29kZSI6IkNvcHkgZW1iZWQgY29kZSIsInZpZGVvX2dldF9jdXJyZW50X3VybCI6IkNvcHkgbGluayB3aXRoIHRpbWVjb2RlIiwidmlkZW9fbG9hZF9lcnJvciI6IkFuIGVycm9yIG9jY3VycmVkIGR1cmluZyBsb2FkaW5nLiBQbGVhc2UgdHJ5IGFnYWluIGxhdGVyLiIsImdvdG9fb3JpZ192aWRlbyI6IkdvIHRvIFZpZGVvIiwidmlkIjoxNjg1OTE3NDEsIm9pZCI6MjE1MjY5OSwibWRfdGl0bGUiOiJCRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0IiwibWRfYXV0aG9yIjoiS2lyaWxsIEx5YW5veSIsImF1dGhvcl9pZCI6MjE1MjY5OSwiYXV0aG9yX2hyZWYiOiJcL2x5YW5vaS5raXJpbGwiLCJhdXRob3JfcGhvdG8iOiJodHRwczpcL1wvcHAudXNlcmFwaS5jb21cL2M2MjM4MjRcL3Y2MjM4MjQ2OTlcLzU1NTc1XC9DQ1FaMjlsMEI5ay5qcGciLCJoYXNoIjoiNzI5NWIzOTc4NDk3ZjA4Njk4YjhjY2I3ZDMwYTBjNjYiLCJoYXNoMiI6ImVhMWQzZGI5ODgxODEyNWQiLCJpc19leHQiOjAsImR1cmF0aW9uIjoyOTksInQiOiIiLCJ2aWdvX2NpZCI6ImNmY2QyMDg0OTVkNTY1ZWY2NmU3ZGZmOWY5ODc2NGRhIiwidmlld2VyX2lkIjowLCJwb3N0X2lkIjpudWxsLCJtb2R1bGUiOiJwcm9maWxlIiwiZyI6MCwiYSI6MCwiY2lzIjowLCJyZWNvbW1lbmRfc2lnIjoiNDYxMTY4NzZhMmYxMGFhYmY0MmE4NzYyYzUzNDAzOGUiLCJlcnJvcl9zdGF0X2hhc2giOiIxNDkwNjQ4NTA0XzM4NmU1YmZmMzU1OTg5OTFmOSIsIm5vX2FkcyI6MSwibm9saWtlcyI6MSwiZXh0cmEiOiIyMSIsImV4dHJhX2RhdGEiOiI0VGh3czV3cTVHSSIsInRodW1iIjoiaHR0cHM6XC9cL3BwLnVzZXJhcGkuY29tXC9jNjE3ODMxXC91OTYxMjMzMDNcL3ZpZGVvXC9sXzI3ZTRmZjVjLmpwZyIsImpwZyI6Imh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzYxNzgzMVwvdTk2MTIzMzAzXC92aWRlb1wveF81YmIwNTc4Zi5qcGciLCJoZCI6MCwibm9sb2dvIjoxLCJzaG93X25leHQiOjAsImxpa2VkIjowLCJhZGRfaGFzaCI6ImZmYjg0MmQwY2U2ZmMxNjhhNyIsImFkZGVkIjowLCJjYW5fYWRkIjowLCJub190aXRsZSI6MCwidnNlZ3Nfc2l6ZSI6MjkuMDAwMDAwLCJ2c2Vnc19oYXNoIjoiMzkxNDQxZWIwMzg5YTI0MTQ2IiwicmVwb3J0X2Vycm9yX2hhc2giOiIzODM3MTllMGM4ZjU0NjY1OWEifV19fTwhPjwhcGFnZXZpZXdfY2FuZGlkYXRlPg==
46
- http_version:
47
- recorded_at: Mon, 27 Mar 2017 21:01:45 GMT
48
- recorded_with: VCR 3.0.3
@@ -1,48 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://vk.com/al_video.php
6
- body:
7
- encoding: US-ASCII
8
- string: User-Agent=VideoInfo%2F2.7&act=show&al=1&autoplay=0&module=profile&video=2152699_168591741
9
- headers:
10
- Accept-Encoding:
11
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Mozilla/5.0 (Linux; VideoInfo)
16
- - Ruby
17
- response:
18
- status:
19
- code: 200
20
- message: OK
21
- headers:
22
- Server:
23
- - Apache
24
- Date:
25
- - Mon, 27 Mar 2017 21:01:38 GMT
26
- Content-Type:
27
- - text/html; charset=windows-1251
28
- Content-Length:
29
- - '10274'
30
- Connection:
31
- - keep-alive
32
- X-Powered-By:
33
- - PHP/3.12334
34
- Set-Cookie:
35
- - remixlang=3; expires=Thu, 22 Mar 2018 06:18:47 GMT; path=/; domain=.vk.com
36
- Pragma:
37
- - no-cache
38
- Cache-Control:
39
- - no-store
40
- Strict-Transport-Security:
41
- - max-age=0
42
- body:
43
- encoding: ASCII-8BIT
44
- string: !binary |-
45
- PCEtLTMzMjY4NDA3MjMyMjg8IT51aV9tZWRpYV9zZWxlY3Rvci5qcyx1aV9tZWRpYV9zZWxlY3Rvci5jc3MsZW1vamkuanMsbm90aWZpZXIuY3NzLHZpZGVvdmlldy5qcyx2aWRlb3ZpZXcuY3NzLHBhZ2UuanMscGFnZS5jc3MscG9zdC5jc3MsdWlfY29udHJvbHMuanMsdWlfY29udHJvbHMuY3NzPCE+MzwhPjM3MDQ8IT4wPCE+QkVBVCBTT1VMIFNURVAglyBSREMxNCBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwLCBNYXkgMS0yLCBNb3Njb3cgMjAxNDwhPjxkaXYgY2xhc3M9InZpZGVvX2JveF93cmFwIj4KICA8ZGl2IGlkPSJ2aWRlb19wbGF5ZXIiPgogICAgPGRpdiBpZD0idmlkZW9feXQiIHRhYmluZGV4PSIwIiBzdHlsZT0id2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvdXRsaW5lOjA7Ij4KICAgICAgPGlmcmFtZSBjbGFzcz0idmlkZW9feXRfcGxheWVyIiB0eXBlPSJ0ZXh0L2h0bWwiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHNyYz0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvNFRod3M1d3E1R0k/ZW5hYmxlanNhcGk9MSZhdXRvcGxheT0wJnN0YXJ0PTAmYXV0b2hpZGU9MSZ3bW9kZT1vcGFxdWUmc2hvd2luZm89MCZvcmlnaW49aHR0cHM6Ly92ay5jb20mZnM9MSZyZWw9MCZjY19sb2FkX3BvbGljeT0wJml2X2xvYWRfcG9saWN5PTMiIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PCE+CmFkZFRlbXBsYXRlcyh7Il8iOiJfIiwiYXVkaW9fcm93IjoiPGRpdiBjbGFzcz1cImF1ZGlvX3JvdyBfYXVkaW9fcm93IF9hdWRpb19yb3dfJTElXyUwJSAlY2xzJSBjbGVhcl9maXhcIiBvbmNsaWNrPVwicmV0dXJuIGdldEF1ZGlvUGxheWVyKCkudG9nZ2xlQXVkaW8odGhpcywgZXZlbnQpXCIgZGF0YS1hdWRpbz1cIiVzZXJpYWxpemVkJVwiIGRhdGEtZnVsbC1pZD1cIiUxJV8lMCVcIiBpZD1cImF1ZGlvXyUxJV8lMCVcIj5cbiAgPGRpdiBjbGFzcz1cImF1ZGlvX3BsYXlfd3JhcFwiIGRhdGEtbm9kcmFnPVwiMVwiPjxidXR0b24gY2xhc3M9XCJhdWRpb19wbGF5IF9hdWRpb19wbGF5XCIgaWQ9XCJwbGF5XyUxJV8lMCVcIiBhcmlhLWxhYmVsPVwiXCI+PFwvYnV0dG9uPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cImF1ZGlvX2luZm9cIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fZHVyYXRpb25fd3JhcCBfYXVkaW9fZHVyYXRpb25fd3JhcFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2hxX2xhYmVsXCI+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2R1cmF0aW9uIF9hdWRpb19kdXJhdGlvblwiPiVkdXJhdGlvbiU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0c1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0XCIgaWQ9XCJyZWNvbVwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cIkF1ZGlvUGFnZSh0aGlzKS5zaG93UmVjb21zKHRoaXMsICclMSVfJTAlJywgZXZlbnQpXCI+PGRpdj48XC9kaXY+PFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0XCIgaWQ9XCJuZXh0XCIgb25tb3VzZW92ZXI9XCJhdWRpb1Nob3dBY3Rpb25Ub29sdGlwKHRoaXMsICclMSVfJTAlJylcIiBvbmNsaWNrPVwiZ2V0QXVkaW9QbGF5ZXIoKS5zZXROZXh0KHRoaXMsIGV2ZW50KVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwiZWRpdFwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cIkF1ZGlvUGFnZSh0aGlzKS5lZGl0QXVkaW8odGhpcywgJyUxJV8lMCUnLCBldmVudClcIj48ZGl2PjxcL2Rpdj48XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdWRpb19hY3QgX2F1ZGlvX2FjdF9kZWxldGVcIiBpZD1cImRlbGV0ZVwiIG9uY2xpY2s9XCJBdWRpb1BhZ2UodGhpcykuZGVsZXRlQXVkaW8odGhpcywgJyUxJV8lMCUnLCBldmVudClcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwiYWRkXCIgb25jbGljaz1cInJldHVybiBhZGRBdWRpbyh0aGlzLCBldmVudClcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgXG4gICAgICAgIFxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fdGl0bGVfd3JhcFwiXG4gICAgID48YSBocmVmPVwiJXNlYXJjaF9ocmVmJVwiIG9ubW91c2VvdmVyPVwic2V0VGl0bGUodGhpcylcIiBub2RyYWc9XCIxXCIgb25jbGljaz1cInJldHVybiBhdWRpb1NlYXJjaFBlcmZvcm1lcih0aGlzLCBldmVudClcIiBjbGFzcz1cImF1ZGlvX3BlcmZvcm1lclwiPiU0JTxcL2FcbiAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9faW5mb19kaXZpZGVyXCI+Jm5kYXNoOzxcL3NwYW5cbiAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9fdGl0bGUgX2F1ZGlvX3RpdGxlXCIgb25tb3VzZW92ZXI9XCJzZXRUaXRsZSh0aGlzLCBkb21QTih0aGlzKSlcIlxuICAgICAgICA+PHNwYW4gY2xhc3M9XCJhdWRpb190aXRsZV9pbm5lclwiIHRhYmluZGV4PVwiMFwiIG5vZHJhZz1cIjFcIiBhcmlhLWxhYmVsPVwiJTMlXCIgb25jbGljaz1cInJldHVybiB0b2dnbGVBdWRpb0x5cmljcyhldmVudCwgdGhpcywgJyUxJV8lMCUnLCAnJTklJylcIj4lMyU8XC9zcGFuPlxuICAgICAgICBcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJhdWRpb19hdXRob3JcIiBvbmNsaWNrPVwiY3VyLmNhbmNlbENsaWNrPXRydWVcIj4lOCU8XC9zcGFuPlxuICAgICAgPFwvc3BhblxuICAgID48XC9kaXY+XG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIl9hdWRpb19wbGF5ZXJfd3JhcFwiPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIl9hdWRpb19seXJpY3Nfd3JhcCBhdWRpb19seXJpY3NcIiBkYXRhLW5vZHJhZz1cIjFcIj48XC9kaXY+XG48XC9kaXY+IiwiYXVkaW9fYml0c190b19jbHMiOiJ7XCIxXCI6XCJpbmxpbmVkXCIsXCIyXCI6XCJseXJpY3NcIixcIjRcIjpcImNhbmVkaXRcIixcIjhcIjpcImNhbmFkZFwiLFwiNjRcIjpcInJlY29tc1wiLFwiMTZcIjpcImNsYWltZWRcIixcIjMyXCI6XCJjbGFpbWVkX3RpdGxlXCIsXCIyNTZcIjpcImZyb21fcXVldWVcIixcIjUxMlwiOlwiaHFcIixcIjMyNzY4XCI6XCJsdGJcIixcIjE2Mzg0XCI6XCJscGJcIixcIjQwOTZcIjpcImNsYWltX2hpZGRlblwiLFwiMjA0OFwiOlwiY2xhaW1fbW9kZVwiLFwiODE5MlwiOlwiY2xhaW1fdW1hXCJ9In0pO2N1ci5pbmNWaWV3cyA9IGZ1bmN0aW9uKCkgewogIHZhciBvaWR2aWQgPSAnMjE1MjY5OV8xNjg1OTE3NDEnOwogIGlmIChjdXIudmlkZW9JbmMgJiYgY3VyLnZpZGVvSW5jW29pZHZpZF0pIHsKICAgIHJldHVybjsKICB9CiAgaWYgKCFjdXIudmlkZW9JbmMpIHsKICAgIGN1ci52aWRlb0luYyA9IHt9OwogICAgY3VyLnZpZGVvU3RhcnRlZCA9IHt9OwogIH0KICBjdXIudmlkZW9JbmNbb2lkdmlkXSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICBjdXIudmlkZW9JbmNbb2lkdmlkXSA9ICdmaW5pc2hlZCc7CiAgICB2YXIgbSA9IHdpbmRvdy5WaWRlbyA/IFZpZGVvdmlldy5nZXRWaWRlb01vZHVsZShvaWR2aWQpIDogY3VyLm1vZHVsZTsKICAgIHZhciBvaWQgPSAyMTUyNjk5OwogICAgaWYgKG9pZCkgewogICAgICBhamF4LnBvc3QoImFsX3ZpZGVvLnBocCIsIHthY3Q6J2luY192aWV3X2NvdW50ZXInLCBvaWQ6b2lkLCB2aWQ6MTY4NTkxNzQxLCBoYXNoOic3Mjk1YjM5Nzg0OTdmMDg2OThiOGNjYjdkMzBhMGM2NicsIG1vZHVsZTogbX0pOwogICAgfQogIH0sIDUwMDApOwogIGN1ci52aWRlb1N0YXJ0ZWRbb2lkdmlkXSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICBjdXIudmlkZW9TdGFydGVkW29pZHZpZF0gPSAnZmluaXNoZWQnOwogICAgdmFyIG0gPSB3aW5kb3cuVmlkZW8gPyBWaWRlb3ZpZXcuZ2V0VmlkZW9Nb2R1bGUob2lkdmlkKSA6IGN1ci5tb2R1bGU7CgogICAgdmFyIHZpZGVvY2F0ID0gJyc7CiAgICBpZiAod2luZG93LlZpZGVvY2F0ICYmIHdpbmRvdy5WaWRlbyAmJiBWaWRlby5pc0luQ2F0YWxvZygpKSB7CiAgICAgIHZhciBwbElkID0gVmlkZW9QbGF5bGlzdC5nZXRDdXJMaXN0SWQoKTsKICAgICAgaWYgKFZpZGVvY2F0LmlzVG9wM1BsYXlsaXN0KHBsSWQpKSB7CiAgICAgICAgdmlkZW9jYXQgPSAnZmVhdHVyZWQnOwogICAgICB9IGVsc2UgewogICAgICAgIHZpZGVvY2F0ID0gcGxJZDsKICAgICAgfQogICAgfQoKICAgIHZhciBvaWQgPSAyMTUyNjk5OwogICAgaWYgKG9pZCkgewogICAgICB3aW5kb3cubXZjdXIgPSB3aW5kb3cubXZjdXIgfHwge307CiAgICAgIG12Y3VyLnZpZXdTdGFydGVkVGltZXN0YW1wID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CiAgICAgIGFqYXgucG9zdCgiYWxfdmlkZW8ucGhwIiwge2FjdDondmlkZW9fdmlld19zdGFydGVkJywgb2lkOm9pZCwgdmlkOjE2ODU5MTc0MSwgaGFzaDonNzI5NWIzOTc4NDk3ZjA4Njk4YjhjY2I3ZDMwYTBjNjYnLCBtb2R1bGU6IG0sIHZpZGVvY2F0OiB2aWRlb2NhdH0pOwogICAgfQogIH0sIDApOwogIGN1ci5kZXN0cm95LnB1c2goZnVuY3Rpb24gKCkgewogICAgaWYgKGN1ci52aWRlb0luY1tvaWR2aWRdICYmIGN1ci52aWRlb0luY1tvaWR2aWRdICE9ICdmaW5pc2hlZCcpIHsKICAgICAgY2xlYXJUaW1lb3V0KGN1ci52aWRlb0luY1tvaWR2aWRdKTsKICAgIH0KICAgIGlmIChjdXIudmlkZW9TdGFydGVkW29pZHZpZF0gJiYgY3VyLnZpZGVvU3RhcnRlZFtvaWR2aWRdICE9ICdmaW5pc2hlZCcpIHsKICAgICAgY2xlYXJUaW1lb3V0KGN1ci52aWRlb1N0YXJ0ZWRbb2lkdmlkXSk7CiAgICB9CiAgfSk7Cn07Cm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvID0gJzIxNTI2OTlfMTY4NTkxNzQxJzsgCm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvSGFzaCA9ICdkNGVhNDY4N2YwMWNjMWVlOWQnOyAKbXZjdXIubXZEYXRhLmFkZGVkVmlkZW9TaGFyZUhhc2ggPSAnOGJhOGZkYWZjZjQ2ZTFiYzY4JzsKbXZjdXIubXZEYXRhLm5lZWRzTmV3ID0gMTs8IT4KCjxkaXYgY2xhc3M9Im12X2luZm9fd2lkZV9jb2x1bW4gZmxfbCI+CiAgCiAgPGRpdiBjbGFzcz0ibXZfdGl0bGVfYmxvY2siPgogICAgPGRpdiBpZD0ibXZfdmlld3MiIGNsYXNzPSJtdl92aWV3c19jb3VudCAiIG9ubW91c2VvdmVyPSIiPjM3IHZpZXdzPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl90aXRsZSIgaWQ9Im12X3RpdGxlIj5CRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0PC9kaXY+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfYWN0aW9uc19ibG9jayIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImZsYXRfYnV0dG9uIHNlY29uZGFyeSBidXR0b25fbGlnaHQgbXZfc2hhcmVfYnV0dG9uIiBzdHlsZT0iZGlzcGxheTpub25lOyIgb25jbGljaz0idmlkZW92aWV3LnNlbmRWaWRlbygpOyI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X3NoYXJlX2ljb24iPjwvc3Bhbj5TaGFyZQogICAgICA8L2Rpdj4KICAgICAgPGRpdiBpZD0ibXZfYWRkX3dyYXAiPjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJmbGF0X2J1dHRvbiBzZWNvbmRhcnkgYnV0dG9uX2xpZ2h0IG12X2VkaXRfYnV0dG9uIiBvbmNsaWNrPSJyZXR1cm4gdmlkZW92aWV3LnNob3dFZGl0Qm94KDE2ODU5MTc0MSwgMjE1MjY5OSkiIGlkPSJtdl9lZGl0X2J1dHRvbiI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X2VkaXRfaWNvbiI+PC9zcGFuPkVkaXQgdmlkZW8KICAgICAgPC9kaXY+CiAgICAgIAogICAgICA8ZGl2IGNsYXNzPSJtdl9tb3JlIGZsX2wiIGlkPSJtdl9tb3JlIj5Nb3JlPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KICAKICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfYmxvY2siPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgPGEgaHJlZj0iL2x5YW5vaS5raXJpbGwiIGNsYXNzPSJtdl9hdXRob3JfcGhvdG9fd3JhcCBmbF9sIj4KICAgICAgICA8aW1nIGlkPSJtdl9hdXRob3JfcGhvdG8iIGNsYXNzPSJtdl9hdXRob3JfcGhvdG8iIHNyYz0iaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjIzODI0L3Y2MjM4MjQ2OTkvNTU1NzUvQ0NRWjI5bDBCOWsuanBnIj4KICAgICAgPC9hPgogICAgICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfaW5mbyBmbF9sIj4KICAgICAgICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfbmFtZSI+CiAgICAgICAgICA8YSBjbGFzcz0ibWVtX2xpbmsiIGhyZWY9Ii9seWFub2kua2lyaWxsIj5LaXJpbGwgTHlhbm95PC9hPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im12X2luZm9fZGF0ZSI+TWF5IDEyLCAyMDE0IGF0IDk6MjMgYW0gZnJvbSA8YSBocmVmPSIvYXdheS5waHA/dG89aHR0cCUzQSUyRiUyRnd3dy55b3V0dWJlLmNvbSUyRndhdGNoJTNGdiUzRDRUaHdzNXdxNUdJIiB0YXJnZXQ9Il9ibGFuayI+WW91VHViZTwvYT4gPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgCiAgICA8L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJtdl9kZXNjcmlwdGlvbl9ibG9jayI+CiAgPGRpdiBjbGFzcz0ic2VsZWN0X2ZpeCBjbGVhcl9maXgiPgogICAgPGRpdiBpZD0ibXZfZGVzY3JpcHRpb24iIGNsYXNzPSJtdl9kZXNjIj4KICA8ZGl2IGNsYXNzPSJqc19tdl9kZXNjcl9maWVsZCBjYW50X2VkaXQiIGlkPSJtdl9kZXNjcl9maWVsZCI+QkVBVCBTT1VMIFNURVAgJiM5NzMzOyBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwICYjOTczMzsgMS0yIOzg/ywgzO7x6uLgIDIwMTQ8YnI+Q2hvcmVvZ3JhcGh5OiBLYXRpZTxicj48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZwcm9qZWN0ODE4LmNvbSIgdGFyZ2V0PSJfYmxhbmsiIHRhcmdldD0iX2JsYW5rIj5wcm9qZWN0ODE4LmNvbTwvYT4gfCA8YSBocmVmPSJodHRwOi8vdmsuY29tL3Byb2plY3Q4MThydXNzaWEiIG1lbnRpb25faWQ9InByb2plY3Q4MThydXNzaWEiIG9uY2xpY2s9InJldHVybiBtZW50aW9uQ2xpY2sodGhpcywgZXZlbnQpIiBvbm1vdXNlb3Zlcj0ibWVudGlvbk92ZXIodGhpcykiPnZrLmNvbS9wcm9qZWN0ODE4cnVzc2lhPC9hPiB8IDxhIGhyZWY9Imh0dHA6Ly92ay5jb20vcHJvamVjdDgxOCIgbWVudGlvbl9pZD0icHJvamVjdDgxOCIgb25jbGljaz0icmV0dXJuIG1lbnRpb25DbGljayh0aGlzLCBldmVudCkiIG9ubW91c2VvdmVyPSJtZW50aW9uT3Zlcih0aGlzKSI+dmsuY29tL3Byb2plY3Q4MTg8L2E+PGJyPi4uPC9kaXY+CiAgPGEgaWQ9Im12X2Rlc2NyX2V4cGFuZF90b2dnbGUiIGNsYXNzPSJ3YWxsX3Bvc3RfbW9yZSIgc3R5bGU9IiIgb25jbGljaz0iVmlkZW92aWV3LmV4cGFuZERlc2NyKHRoaXMpIj5FeHBhbmQgdGV4dIU8L2E+CiAgPGRpdiBpZD0ibXZfZGVzY19mdWxsX3RleHQiPkJFQVQgU09VTCBTVEVQICYjOTczMzsgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCAmIzk3MzM7IDEtMiDs4P8sIMzu8eri4CAyMDE0PGJyPkNob3Jlb2dyYXBoeTogS2F0aWU8YnI+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGcHJvamVjdDgxOC5jb20iIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+cHJvamVjdDgxOC5jb208L2E+IHwgPGEgaHJlZj0iaHR0cDovL3ZrLmNvbS9wcm9qZWN0ODE4cnVzc2lhIiBtZW50aW9uX2lkPSJwcm9qZWN0ODE4cnVzc2lhIiBvbmNsaWNrPSJyZXR1cm4gbWVudGlvbkNsaWNrKHRoaXMsIGV2ZW50KSIgb25tb3VzZW92ZXI9Im1lbnRpb25PdmVyKHRoaXMpIj52ay5jb20vcHJvamVjdDgxOHJ1c3NpYTwvYT4gfCA8YSBocmVmPSJodHRwOi8vdmsuY29tL3Byb2plY3Q4MTgiIG1lbnRpb25faWQ9InByb2plY3Q4MTgiIG9uY2xpY2s9InJldHVybiBtZW50aW9uQ2xpY2sodGhpcywgZXZlbnQpIiBvbm1vdXNlb3Zlcj0ibWVudGlvbk92ZXIodGhpcykiPnZrLmNvbS9wcm9qZWN0ODE4PC9hPjxicj48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZmYWNlYm9vay5jb20lMkZQcm9qZWN0ODE4UnVzc2lhIiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPmZhY2Vib29rLmNvbS9Qcm9qZWN0ODE4UnVzc2lhPC9hPjxicj48YSBocmVmPSIvYXdheS5waHA/dG89aHR0cCUzQSUyRiUyRmluc3RhZ3JhbS5jb20lMkZwcm9qZWN0ODE4IiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPmluc3RhZ3JhbS5jb20vcHJvamVjdDgxODwvYT48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZ0d2l0dGVyLmNvbSUyRnByb2plY3Q4MTgiIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+dHdpdHRlci5jb20vcHJvamVjdDgxODwvYT48YnI+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGeW91dHViZS5jb20lMkZQcm9qZWN0ODE4UnVzc2lhIiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPnlvdXR1YmUuY29tL1Byb2plY3Q4MThSdXNzaWE8L2E+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGeW91dHViZS5jb20lMkZQcm9qZWN0ODE4Y2hhbXAiIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+eW91dHViZS5jb20vUHJvamVjdDgxOGNoYW1wPC9hPjwvZGl2PgogIDxkaXYgY2xhc3M9InByICIgaWQ9Im12X2lubGluZV9lZGl0X3ByIj48ZGl2IGNsYXNzPSJwcl9idCI+PC9kaXY+PGRpdiBjbGFzcz0icHJfYnQiPjwvZGl2PjxkaXYgY2xhc3M9InByX2J0Ij48L2Rpdj48L2Rpdj4KPC9kaXY+CiAgPC9kaXY+CjwvZGl2PgogIDxkaXYgY2xhc3M9Im12X2NvbW1lbnRzX2Jsb2NrIHdhbGxfbW9kdWxlIj4KICAgIDxkaXYgaWQ9InBvc3QyMTUyNjk5X3ZpZGVvMTY4NTkxNzQxbXYiPgogICAgICA8ZGl2IGlkPSJtdl9jb21tZW50c193cmFwIj4KICA8ZGl2IGlkPSJtdl9jb21tZW50c19oZWFkZXIiIG9uY2xpY2s9IlZpZGVvdmlldy5tb3JlQ29tbWVudHMoKTsiIGNsYXNzPSJtdl9jb21tZW50c19leHBhbmRlZCI+PC9kaXY+CiAgPGRpdiBpZD0ibXZfY29tbWVudHNfc3VtbWFyeSIgY2xhc3M9Im12X2NvbW1lbnRzX3N1bW1hcnkgbXZfY29tbWVudHNfZXhwYW5kZWQiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij48L2Rpdj4KICA8ZGl2IGlkPSJtdl9jb21tZW50cyI+PC9kaXY+CjwvZGl2PgogICAgICAKICAgIDwvZGl2PgogIDwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0ibXZfaW5mb19uYXJyb3dfY29sdW1uIGZsX3IiPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2Jsb2NrIj4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9ibG9ja190aXRsZSI+T3RoZXIgdmlkZW9zPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYzMjE5ODczIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2MzIxOTg3MycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjA3NS91MTY2NjY3NzI4L3ZpZGVvL2xfM2U5MTg2MGUuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+NTo0NTwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYzMjE5ODczIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2MzIxOTg3MycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IsrCzSAyMDEyIM/w5ez85fDq4CAxLzggLSDM6PHxIOzo8OAgLSDM8+f76uDr6uAiPsrCzSAyMDEyIM/w5ez85fDq4CAxLzggLSDM6PHxIOzo8OAgLSDM8+f76uDr6uA8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjQ1OSB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvLTQ1MjgwMDU1XzQ1NjIzOTgxNCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnLTQ1MjgwMDU1XzQ1NjIzOTgxNCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjM5MjI0L3Y2MzkyMjQwNTUvMTRmNWUva0hhaUdRTXZOYmsuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MzoyNDwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlby00NTI4MDA1NV80NTYyMzk4MTQiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJy00NTI4MDA1NV80NTYyMzk4MTQnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSLK4OLl8CDt4CDv5fHt/iBJdCBBaW4gdCBNZSAtIEt5Z28gJmFtcDsgU2VsZW5hIEdvbWV6IO7yIO/w5erw4PHt+/UgQm95Y2UgQXZlbnVlIj7K4OLl8CDt4CDv5fHt/iBJdCBBaW4gdCBNZSAtIEt5Z28gJmFtcDsgU2VsZW5hIEdvbWV6IO7yIO/w5erw4PHt+/UgQm95Y2UgQXZlbnVlPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj42OCw5NjIgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4OTg4OTY0IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODk4ODk2NCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTA3NDEwL3UzNjM1NTE1L3ZpZGVvL2xfMjc3M2VmYWIuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MzoyNDwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4OTg4OTY0IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODk4ODk2NCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IkZSRUFLIEdPLUdPIE1JWNLF0MjfIj5GUkVBSyBHTy1HTyBNSVjSxdDI3zwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+NyB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjQ3NTc4MzYiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY0NzU3ODM2JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M1MzM2MDMvdTg2ODcxMjg5L3ZpZGVvL2xfYzdmMzFhY2QuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MjoyNzwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY0NzU3ODM2IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2NDc1NzgzNicsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IkFsaWNlIGJ5IEtpcmlsbCBMeWFub2kuIj5BbGljZSBieSBLaXJpbGwgTHlhbm9pLjwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MTU5IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2ODI4MjQ0MyIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjgyODI0NDMnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzU0MDMwNC91NTgxMDU3MjgvdmlkZW8vbF84ZmQ1ODVmZS5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4yOjU2PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjgyODI0NDMiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY4MjgyNDQzJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iTm8gbmFtZSI+Tm8gbmFtZTwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MTcgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYzODYyOTc4IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2Mzg2Mjk3OCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTIzMzE3L3UzMjA2NzAyL3ZpZGVvL2xfYWE0YWZmYmIuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MzoyMjwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYzODYyOTc4IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2Mzg2Mjk3OCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IldpdGhvdXQgYSBmYWNlICAo0uDr4O3y6+ji4P8gIMzu6+7k5eb8KSAxIj5XaXRob3V0IGEgZmFjZSAgKNLg6+Dt8uvo4uD/ICDM7uvu5OXm/CkgMTwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+OTggdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY2OTUyNTk5IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2Njk1MjU5OScsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTEzMjE5L3UyMTQ5NzQ4NzMvdmlkZW8vbF9iZTZlMzY5ZC5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj40OjA2PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjY5NTI1OTkiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY2OTUyNTk5JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iweXnIO3g5+Lg7ej/Ij7B5ecg7eDn4uDt6P88L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjQwIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2Njk1MjYwNiIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjY5NTI2MDYnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzUzNDIyMS91NTQxMzcwL3ZpZGVvL2xfN2FiNTQ3NTYuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MDowOTwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY2OTUyNjA2IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2Njk1MjYwNicsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9Ik5vIG5hbWUiPk5vIG5hbWU8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjE2MyB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjg5ODg5NDkiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY4OTg4OTQ5JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M1NDAzMDUvdTI0NjEwNTA4OS92aWRlby9sX2MwYWQyMWU1LmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjA6NDM8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2ODk4ODk0OSIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjg5ODg5NDknLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSJNaXgt8uXw6P8iPk1peC3y5fDo/zwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+NCB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjE1MzMwNDIiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTYxNTMzMDQyJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M1MTA0MTUvdTE0MzQ4MjcxL3ZpZGVvL2xfN2UwNWEwZmQuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+Mzo1MjwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYxNTMzMDQyIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2MTUzMzA0MicsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IsDt8u7tIMrg7ODr6PLk6O3u4iAtIMPu6+7x8+ny5SDn4CDs5e3/Ij7A7fLu7SDK4Ozg6+jy5Ojt7uIgLSDD7uvu8fPp8uUg5+Ag7OXt/zwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MjE0IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+PCE+PCE+PCFqc29uPnsibGFuZyI6eyJnbG9iYWxfc2hvcnRfZGF0ZV90aW1lIjpbIiIsIntkYXl9IHttb250aH0gYXQge2hvdXJ9OnttaW51dGV9IHthbV9wbX0iLCJ5ZXN0ZXJkYXkgYXQge2hvdXJ9OnttaW51dGV9IHthbV9wbX0iLCJ0b2RheSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInRvbW9ycm93IGF0IHtob3VyfTp7bWludXRlfSB7YW1fcG19Il0sInJlcGx5X3RvX3Bvc3QiOiJZb3VyIGNvbW1lbnQuLiIsIndhbGxfTV9yZXBsaWVzX29mX04iOlsiIiwiJXMgY29tbWVudCBvZiB7bGlua317YWxsfXtcL2xpbmt9IiwiJXMgY29tbWVudHMgb2Yge2xpbmt9e2FsbH17XC9saW5rfSJdLCJ3YWxsX21vcmVfcmVwbGllcyI6WyIiLCJzaG93ICVzIG1vcmUgY29tbWVudCIsInNob3cgJXMgbW9yZSBjb21tZW50cyJdLCJ3YWxsX2FsbF9yZXBsaWVzIjoiYWxsIGNvbW1lbnRzIiwiZG9udF9hdHRhY2giOiJSZW1vdmUgYXR0YWNobWVudCIsInZpZGVvX1hfY29tbXMiOlsiIiwiJXMgY29tbWVudCIsIiVzIGNvbW1lbnRzIl0sInZpZGVvX2VkaXQiOiJFZGl0IHZpZGVvIiwidmlkZW9fZWRpdF9kZXNjIjoiRWRpdCBkZXNjcmlwdGlvbiIsInZpZGVvX2VkaXRfZGVzY19pbnRybyI6IkVudGVyIGRlc2NyaXB0aW9uIiwidmlkZW9fc2hvd19wcmV2aW91c19jb21tZW50cyI6WyIiLCJTaG93ICVzIHByZXZpb3VzIGNvbW1lbnQiLCJTaG93ICVzIHByZXZpb3VzIGNvbW1lbnRzIl0sInZpZGVvX2FyZV95b3Vfc3VyZV9jbG9zZSI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjbG9zZSB0aGlzIHZpZGVvPyIsInZpZGVvX2FyZV95b3Vfc3VyZV9jbG9zZV90aXRsZSI6IkNsb3NlIHZpZGVvIiwicHJvZmlsZV9tZW50aW9uX25vdF9mb3VuZCI6IlVzZXIgd2FzIG5vdCBmb3VuZCIsInByb2ZpbGVfbWVudGlvbl9zdGFydF90eXBpbmciOiJTdGFydCB0eXBpbmcgYSBuYW1lLi4iLCJ2aWRlb19hbGJ1bV9pc19wcml2YXRlX3R0IjoiVGhpcyBhbGJ1bSBpcyBwcml2YXRlIiwidmlkZW9fYWRkX3RvX215X3BsYXlsaXN0IjoiQWRkIHRvIE15IFZpZGVvcyIsInZpZGVvX2FkZGVkX3RvX215X3BsYXlsaXN0IjoiQWRkZWQiLCJ2aWRlb19jaGFuZ2VzX3NhdmVkIjoiQ2hhbmdlcyBzYXZlZCIsInZpZGVvX2FkZF9hbGJ1bSI6IkNyZWF0ZSBhbGJ1bSIsInZpZGVvX2FkZF9wcml2YXRlX2FsYnVtIjoiQ3JlYXRlIGEgcHJpdmF0ZSBhbGJ1bSIsInZpZGVvX2FkZF90b19ncm91cCI6IkFkZCB0byBjb21tdW5pdHkiLCJ2aWRlb19leHBvcnRfYWN0aW9uIjoiRXhwb3J0IiwidmlkZW9fc3RhdGlzdGljcyI6IlN0YXRpc3RpY3MiLCJ2aWRlb19jb21wbGFpbiI6IlJlcG9ydCIsInZpZGVvX3NlbGVjdF9hbGJ1bXMiOiJTZWxlY3QgYWxidW1zIiwidmlkZW9fdGNfc3VyZV9kZWxldGUiOiJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgdmlkZW8/PGJyPjxicj5Zb3Ugd2lsbCBub3QgYmUgYWJsZSB0byByZXN0b3JlIHRhZ3MgYW5kIGNvbW1lbnRzLiIsInZpZGVvX3RjX2RlbGV0ZSI6IkRlbGV0ZSIsInZpZGVvX2RlbGV0ZV9kaWFsb2dfdGl0bGUiOiJEZWxldGUgdmlkZW8iLCJ2aWRlb19kZWxldGVfYm94X25vX3RpdGxlIjoiTm8iLCJ2aWRlb19tZW51X2RlbGV0ZSI6IkRlbGV0ZSB2aWRlbyIsInZpZGVvX3ZpZXdzX2NvdW50X3R0X3RleHQiOiJPcmlnaW5hbCB2aWRlbyB2aWV3cyAodG90YWwgdmlld3MpIiwidmlkZW9fb25seV9wcml2YXRlX3ZpZGVvIjoiVGhpcyB2aWRlbyBjYW4gb25seSBiZSBhZGRlZCB0byBhIHByaXZhdGUgYWxidW0iLCJ2aWRlb19sZWF2ZV9jbG9zZWRfZ3JvdXBfdGl0bGUiOiJMZWF2ZSBjbG9zZWQgY29tbXVuaXR5IiwidmlkZW9fbGVhdmVfY2xvc2VkX2dyb3VwX3RleHQiOiJZb3UgYXJlIGFib3V0IHRvIGxlYXZlIGEgY2xvc2VkIGNvbW11bml0eS4gSXQgbWF5IG5vdCBiZSB0aGF0IGVhc3kgdG8gY29tZSBiYWNrLiBMZWF2ZSB0aGUgY29tbXVuaXR5PyIsInZpZGVvX2xlYXZlX2FkbWluZWRfZ3JvdXBfdGV4dCI6IllvdSBhcmUgYW4gPGI+YWRtaW5pc3RyYXRvcjxcL2I+IGluIHRoaXMgY29tbXVuaXR5LiBZb3Ugd2lsbCBsb3NlIHRoaXMgcG9zaXRpb24gaWYgeW91IGxlYXZlIG5vdy4gTGVhdmUgdGhlIGNvbW11bml0eT8iLCJ2aWRlb192aWV3X3N1YnNjcmliZV90b19hdXRob3IiOiJTdWJzY3JpYmUiLCJ2aWRlb192aWV3X3N1YnNjcmliZWRfbXNnIjoiRm9sbG93aW5nIiwidmlkZW9fcGxheWVyX25leHRfdGl0bGUiOiJOZXh0IHZpZGVvIiwidmlkZW9faV9saWtlIjoiTGlrZSIsInZpZGVvX3NoYXJlX3dpdGhfZnJpZW5kcyI6IlNoYXJlIiwidmlkZW9fYWRkX2ZsYXNoIjoiQWRkIHRvIE15IFZpZGVvcyIsInZpZGVvX2FkZGVkX2ZsYXNoIjoiVmlkZW8gYWRkZWQgdG8gTXkgVmlkZW9zIiwidmlkZW9fY29tbWVudHNfc3VtbWFyeSI6WyIiLCIlcyBjb21tZW50IiwiJXMgY29tbWVudHMiXSwidmlkZW9fTl92aWV3c19saXN0IjpbIiIsIiVzIHZpZXciLCIlcyB2aWV3cyJdLCJ2aWRlb19wbGF5bGlzdF9yZXZlcnNlX3R0IjoiUmV2ZXJzZSBvcmRlciIsInZpZGVvX3BsYXlsaXN0X2F1dG9wbGF5X2Rpc2FibGVfdHQiOiJEaXNhYmxlIGF1dG9wbGF5IiwidmlkZW9fcGxheWxpc3RfYXV0b3BsYXlfZW5hYmxlX3R0IjoiRW5hYmxlIGF1dG9wbGF5IiwidmlkZW9fbGl2ZV9OX3dhdGNoaW5nIjpbIiIsIiVzIGlzIHdhdGNoaW5nIG5vdyIsIiVzIGFyZSB3YXRjaGluZyBub3ciXSwidmlkZW9fbGl2ZV9jaGF0X21zZ190b29fbG9uZyI6IlRoZSBtZXNzYWdlIGlzIHRvbyBsb25nIiwidmlkZW9fbGl2ZV9jaGF0X3Rvb19mYXN0IjoiVG9vIGZhc3SFIiwidmlkZW9fYXJpYV9taW5pbWl6ZV9wbGF5bGlzdCI6IkhpZGUgcGxheWxpc3QiLCJ2aWRlb19hcmlhX2V4cGFuZF9wbGF5bGlzdCI6IlNob3cgcGxheWxpc3QiLCJ2aWRlb19hcmlhX21pbmltaXplX2NoYXQiOiJIaWRlIGNoYXQiLCJ2aWRlb19hcmlhX2V4cGFuZF9jaGF0IjoiRXhwYW5kIGNoYXQiLCJ2aWRlb19saXZlX25vdGlmeV9zdWJzY3JpYmVkIjoiU3RyZWFtIG5vdGlmaWNhdGlvbnMgZW5hYmxlZCIsInZpZGVvX2xpdmVfbm90aWZ5X3Vuc3Vic2NyaWJlZCI6IlN0cmVhbSBub3RpZmljYXRpb25zIGRpc2FibGVkIiwidmlkZW9fbGl2ZV95b3VfaGF2ZV9YX21vbmV5IjoiWW91IGhhdmUge21vbmV5fSIsInZpZGVvX3VuZm9sbG93X2ZyaWVuZF90aXRsZSI6IlJlbW92ZSBmcm9tIGZyaWVuZHMiLCJ2aWRlb191bmZvbGxvd19mcmllbmRfdGV4dCI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZW1vdmUgS2lyaWxsIGZyb20geW91ciBmcmllbmQgbGlzdD8ifSwibXZEYXRhIjp7InRpdGxlIjoiQkVBVCBTT1VMIFNURVAglyBSREMxNCBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwLCBNYXkgMS0yLCBNb3Njb3cgMjAxNCIsImRlc2MiOiJCRUFUIFNPVUwgU1RFUCAmIzk3MzM7IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAgJiM5NzMzOyAxLTIg7OD/LCDM7vHq4uAgMjAxNDxicj5DaG9yZW9ncmFwaHk6IEthdGllPGJyPjxicj5wcm9qZWN0ODE4LmNvbSB8IHZrLmNvbVwvcHJvamVjdDgxOHJ1c3NpYSB8IHZrLmNvbVwvcHJvamVjdDgxODxicj48YnI+ZmFjZWJvb2suY29tXC9Qcm9qZWN0ODE4UnVzc2lhPGJyPmluc3RhZ3JhbS5jb21cL3Byb2plY3Q4MTg8YnI+dHdpdHRlci5jb21cL3Byb2plY3Q4MTg8YnI+PGJyPnlvdXR1YmUuY29tXC9Qcm9qZWN0ODE4UnVzc2lhPGJyPnlvdXR1YmUuY29tXC9Qcm9qZWN0ODE4Y2hhbXAiLCJvaWQiOjIxNTI2OTksInZpZCI6MTY4NTkxNzQxLCJhdXRob3JJZCI6MjE1MjY5OSwiYXV0aG9yUGhvdG8iOiJodHRwczpcL1wvcHAudXNlcmFwaS5jb21cL2M2MjM4MjRcL3Y2MjM4MjQ2OTlcLzU1NTc1XC9DQ1FaMjlsMEI5ay5qcGciLCJhdXRob3JIcmVmIjoiXC9seWFub2kua2lyaWxsIiwidmlkZW9SYXciOiIyMTUyNjk5XzE2ODU5MTc0MSIsImhhc2giOiIwMjM2NDZjMGJjNzExMGFkOTEiLCJsaWtlSGFzaCI6IjMwY2MxODkyZjgxZGViNjIzNSIsImVkaXRIYXNoIjoiIiwiZWRpdEZyb21Ecm9wZG93biI6MCwiaGlkZUVkaXQiOm51bGwsImNvbW1zaG93biI6MCwiY29tbWNvdW50IjowLCJsaWtlZCI6ZmFsc2UsImxpa2VzIjowLCJhZGRlZCI6MCwiY2FuX2FkZCI6MCwiYWRkX2hhc2giOiJmZmI4NDJkMGNlNmZjMTY4YTciLCJub2xpa2VzIjoxLCJkdXJhdGlvbiI6Mjk5LCJ2c2Vnc1NpemUiOjI5LjAwMDAwMCwicGxheWxpc3RzIjpbXSwidXBsb2FkZWQiOmZhbHNlLCJwdWJsaXNoZWQiOnRydWUsIm5vQ29udHJvbHMiOmZhbHNlLCJwbGF5bGlzdEFkZEhhc2giOiJmZmI4NDJkMGNlNmZjMTY4YTciLCJkZWxldGVIYXNoIjoiIiwicmVwb3J0UmVhc29ucyI6W10sInJlcG9ydEhhc2giOiIxZGNjM2YyZDQxNjlmNTUwYzAiLCJpbmZvIjpbMjE1MjY5OSwxNjg1OTE3NDEsImh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzYxNzgzMVwvdTk2MTIzMzAzXC92aWRlb1wvbF8yN2U0ZmY1Yy5qcGciLCJCRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0IiwzLCI0OjU5IiwiIiwiIiwiPGEgaHJlZj1cIlwvbHlhbm9pLmtpcmlsbFwiIGNsYXNzPVwibWVtX2xpbmtcIj5LaXJpbGwgTHlhbm95PFwvYT4iLDEzOTk4NzU3ODMsMzddLCJjYW5FeHBvcnQiOjEsImlzVmlkZW9BZHMiOmZhbHNlLCJkZWxldGVGcm9tQWxsQWxidW1zSGFzaCI6IiIsImlzX2xpdmUiOjAsImlzX2FjdGl2ZV9saXZlIjowLCJQTEFZTElTVF9BRERFRF9JRCI6LTIsIlBMQVlMSVNUX1VQTE9BREVEX0lEIjotMSwibm9QdWJsaWNBZGQiOmZhbHNlLCJQTEFZRVJfRlVMTF9XSURUSCI6OTYwLCJQTEFZRVJfRlVMTF9IRUlHSFQiOjU0MCwiUExBWUVSX1BMX1dJRFRIIjo3MjAsIlBMQVlFUl9QTF9IRUlHSFQiOjQwNSwibF90eXBlIjoyLCJreiI6MCwidG5zX21vbmV0aXplZCI6dHJ1ZX0sIndhbGxUcGwiOnsicmVwbHlfYm94IjoiPGRpdiBpZD1cInJlcGx5X2JveF93cmFwJXBvc3RfaWQlXCI+PGRpdiBjbGFzcz1cInJlcGx5X2JveF9pbm5lcl93cmFwXCI+XG4gIDxkaXYgY2xhc3M9XCJyZXBseV9mYWtlYm94X3dyYXBcIiBpZD1cInJlcGx5X2Zha2Vib3glcG9zdF9pZCVcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwuc2hvd0VkaXRSZXBseSgnJXBvc3RfaWQlJywgZXZlbnQpXCIgZGF0YS1vd25lci1waG90bz1cIiVvd25lcl9waG90byVcIiBkYXRhLW93bmVyLWhyZWY9XCIlb3duZXJfaHJlZiVcIj5cbiAgICA8ZGl2IGNsYXNzPVwicG9zdF9maWVsZF91c2VyXCI+XG4gIDxhIGNsYXNzPVwicG9zdF9maWVsZF91c2VyX2xpbmtcIiBocmVmPVwiXC9pZFwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KVwiPlxuICAgIDxpbWcgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfaW1hZ2VcIiBzcmM9XCJcL2ltYWdlc1wvY2FtZXJhXzUwLnBuZ1wiIFwvPlxuICA8XC9hPlxuPFwvZGl2PiV1c2VyX2ltYWdlJVxuICAgIDxkaXYgY2xhc3M9XCJyZXBseV9mYWtlYm94XCI+TGVhdmUgYSBjb21tZW50Li4uPFwvZGl2PjxcL2Rpdj5cbjxcL2Rpdj48XC9kaXY+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBpZD1cInBvc3RfaGFzaCVwb3N0X2lkJVwiIHZhbHVlPVwiMTQ5MDY0ODQ5OF9hODVhZmZjNWE1YjFhNWVhOGJcIiBjYW5fcmVwbHlfYXNfZ3JvdXA9XCIlY2FuX3JlcGx5X2FzX2dyb3VwJVwiIFwvPiIsInJlcGx5X2Zvcm0iOiI8ZGl2IGlkPVwicmVwbHlfYm94JXBvc3RfaWQlXCIgY2xhc3M9XCJzdWJtaXRfcG9zdF9ib3ggcmVwbHlfYm94IGNsZWFyX2ZpeCBfc3VibWl0X3Bvc3RfYm94XCIgb25jbGljaz1cInJldHVybiBjYW5jZWxFdmVudChldmVudClcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X2Zvcm1cIj5cbiAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIGlkPVwicmVwbHlfdG8lcG9zdF9pZCVcIiB2YWx1ZT1cIlwiIFwvPlxuICAgIDxkaXYgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJcIj5cbiAgPGEgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfbGlua1wiIGhyZWY9XCJcL2lkXCIgb25jbGljaz1cInJldHVybiBuYXYuZ28odGhpcywgZXZlbnQpXCI+XG4gICAgPGltZyBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9pbWFnZVwiIHNyYz1cIlwvaW1hZ2VzXC9jYW1lcmFfNTAucG5nXCIgXC8+XG4gIDxcL2E+XG48XC9kaXY+JXVzZXJfaW1hZ2UlXG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2ZpZWxkX3dyYXAgX2Vtb2ppX2ZpZWxkX3dyYXBcIj5cbiAgICAgIDxkaXYgaWQ9XCJyZXBseV9zbWlsZSVwb3N0X2lkJVwiIGNsYXNzPVwiZW1vamlfc21pbGVfd3JhcCAgX2Vtb2ppX3dyYXBcIj5cbiAgPGRpdiBjbGFzcz1cImVtb2ppX3NtaWxlIF9lbW9qaV9idG5cIiB0aXRsZT1cIlVzZSB0aGUgVEFCIGtleSB0byBpbnNlcnQgZW1vamkgZmFzdGVyXCIgb25tb3VzZW92ZXI9XCJyZXR1cm4gRW1vamkuc2hvdyh0aGlzLCBldmVudCk7XCIgb25tb3VzZW91dD1cInJldHVybiBFbW9qaS5oaWRlKHRoaXMsIGV2ZW50KTtcIiBvbmNsaWNrPVwicmV0dXJuIGNhbmNlbEV2ZW50KGV2ZW50KTtcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZW1vamlfc21pbGVfaWNvblwiPjxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PlxuICAgICAgPGRpdiBpZD1cInJlcGx5X2ZpZWxkJXBvc3RfaWQlXCIgY2xhc3M9XCJyZXBseV9maWVsZCBzdWJtaXRfcG9zdF9maWVsZFwiIG9uZm9jdXM9XCJyZXR1cm4gV2FsbC5zaG93RWRpdFJlcGx5KCclcG9zdF9pZCUnLCBldmVudCk7XCIgY29udGVudGVkaXRhYmxlPVwidHJ1ZVwiIHBsYWNlaG9sZGVyPVwiTGVhdmUgYSBjb21tZW50Li4uXCI+PFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGlkPVwic3VibWl0X3JlcGx5JXBvc3RfaWQlXCIgY2xhc3M9XCJzdWJtaXRfcG9zdCBjbGVhcl9maXhcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV93YXJuIGNsZWFyXCIgaWQ9XCJyZXBseV93YXJuJXBvc3RfaWQlXCI+PFwvZGl2PlxuICAgICAgPGRpdiBpZD1cInJlcGx5X21lZGlhX3ByZXZpZXclcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X21lZGlhX3ByZXZpZXcgY2xlYXJfZml4IG1lZGlhX3ByZXZpZXdcIj48XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYWRkcG9zdF9idXR0b25fd3JhcFwiPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZmxhdF9idXR0b24gYWRkcG9zdF9idXR0b25cIiBpZD1cInJlcGx5X2J1dHRvbiVwb3N0X2lkJVwiIG9uY2xpY2s9XCJ3YWxsLnNlbmRSZXBseSgnJXBvc3RfaWQlJywgZXZlbnQsIHt9KTtcIiBvbm1vdXNlb3Zlcj1cIndhbGwucmVwbHlTdWJtaXRUb29sdGlwKCclcG9zdF9pZCUnLCAxLCB0aGlzKTtcIiBvbm1vdXNlb3V0PVwid2FsbC5yZXBseVN1Ym1pdFRvb2x0aXAoJyVwb3N0X2lkJScsIDAsIHRoaXMpO1wiPlBvc3Q8XC9idXR0b24+XG4gICAgICA8XC9kaXY+XG4gICAgICAlYWRkX2J1dHRvbnMlXG4gICAgICA8ZGl2IGNsYXNzPVwicGFnZV9hZGRfbWVkaWFcIiBpZD1cInJlcGx5X2FkZF9tZWRpYV8lcG9zdF9pZCVcIj48XC9kaXY+XG4gICAgICA8ZGl2IGlkPVwicmVwbHlfdG9fdGl0bGUlcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X3RvX3RpdGxlIGFkZHBvc3RfcG9wdFwiPjxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJyZXBseV9mb3JtX29mZmljaWFsIjoiPGRpdiBjbGFzcz1cImFkZHBvc3Rfb3B0IGNoZWNrYm94X29mZmljaWFsXCIgaWQ9XCJyZXBseV9hc19ncm91cCVwb3N0X2lkJVwiIG9uY2xpY2s9XCJ3YWxsLnJlcGx5QXNHcm91cCh0aGlzKTtcIiBvbm1vdXNlb3Zlcj1cIndhbGwucmVwbHlBc0dyb3VwT3Zlcih0aGlzLCAnb24gYmVoYWxmIG9mIHRoZSB1c2VyJywgJ3Bvc3QgYXMgY29tbXVuaXR5Jyk7XCIgb25mb2N1cz1cIndhbGwucmVwbHlBc0dyb3VwT3Zlcih0aGlzLCAnb24gYmVoYWxmIG9mIHRoZSB1c2VyJywgJ3Bvc3QgYXMgY29tbXVuaXR5Jyk7XCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImJ1dHRvblwiIGFyaWEtbGFiZWw9XCJvbiBiZWhhbGYgb2YgdGhlIHVzZXJcIj5cbiAgPGltZyBjbGFzcz1cInRodW1iX29mZlwiIHNyYz1cIlwvaW1hZ2VzXC9jYW1lcmFfNTAucG5nXCIgXC8+XG4gIDxpbWcgY2xhc3M9XCJ0aHVtYl9vblwiIHNyYz1cIiVvd25lcl9waG90byVcIiBcLz5cbjxcL2Rpdj4iLCJyZXBseV9mb3JtX2dyb3VwX2ltYWdlIjoiPGRpdiBjbGFzcz1cInBvc3RfZmllbGRfZ3JvdXBcIj5cbiAgPGEgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfbGlua1wiIGhyZWY9XCIlb3duZXJfaHJlZiVcIiBvbmNsaWNrPVwicmV0dXJuIG5hdi5nbyh0aGlzLCBldmVudClcIj5cbiAgICA8aW1nIGNsYXNzPVwicG9zdF9maWVsZF91c2VyX2ltYWdlXCIgc3JjPVwiJW93bmVyX3Bob3RvJVwiIFwvPlxuICA8XC9hPlxuPFwvZGl2PiIsInJlcGx5X211bHRpbGluZSI6ZmFsc2UsInJlcGx5X211bHRpbGluZV9pbnRybyI6dHJ1ZSwicmVwbHlfbGlua193cmFwIjoiPGRpdiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPlxuICA8YSBjbGFzcz1cInJlcGx5X2xpbmsgX3JlcGx5X2xua1wiPlJlcGx5PFwvYT5cbjxcL2Rpdj4iLCJyZXBseV9saW5rX3RvIjoiIDxhIGNsYXNzPVwicmVwbHlfdG9cIj5yZXBsaWVkIHRvICV0b191c2VyJTxcL2E+IiwicmVwbHlfZmFzdCI6IjxkaXYgaWQ9XCJwb3N0JXJlcGx5X2lkJVwiIGNsYXNzPVwicmVwbHkgcmVwbHlfZGl2ZWQgY2xlYXIgIF9wb3N0XCIgZGF0YS1wb3N0LWlkPVwiJXJlcGx5X2lkJVwiID5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X3dyYXAgX3JlcGx5X2NvbnRlbnQgX3Bvc3RfY29udGVudCBjbGVhcl9maXhcIj5cbiAgICBcbiAgICA8YSBjbGFzcz1cInJlcGx5X2ltYWdlXCIgaHJlZj1cIlwvaWRcIj5cbiAgICAgIDxpbWcgc3JjPVwiXC9pbWFnZXNcL2NhbWVyYV81MC5wbmdcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiBjbGFzcz1cInJlcGx5X2ltZ1wiIGFsdD1cIkRFTEVURURcIiBcLz5cbiAgICA8XC9hPlxuICAgIDxkaXYgY2xhc3M9XCJyZXBseV9jb250ZW50XCIgPlxuICAgICAgXG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfYXV0aG9yXCI+XG4gICAgICAgIDxhIGNsYXNzPVwiYXV0aG9yXCIgaHJlZj1cIlwvaWRcIiBkYXRhLWZyb20taWQ9XCIwXCI+REVMRVRFRDxcL2E+JXRvX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfdGV4dFwiID48ZGl2IGNsYXNzPVwid2FsbF9yZXBseV90ZXh0XCI+JW1lc3NhZ2UlPFwvZGl2PjxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9mb290ZXIgY2xlYXJfZml4XCIgaWQ9XCJ3cGVfYm90dG9tJXJlcGx5X2lkJVwiPlxuICAgICAgICBcbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2RhdGVcIj4lZGF0ZSU8XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9saW5rX3dyYXBcIj5cbiAgPGEgY2xhc3M9XCJyZXBseV9saW5rIF9yZXBseV9sbmtcIj5SZXBseTxcL2E+XG48XC9kaXY+XG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwicmVwbHlfbXVsdGlsaW5lX2hpbnQiOiI8ZGl2IGNsYXNzPVwicmVwbHlfc3VibWl0X2hpbnRfd3JhcFwiICBvbmNsaWNrPVwic3RvcEV2ZW50KGV2ZW50KTtcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X3N1Ym1pdF9oaW50X3RpdGxlXCI+U2hvcnRjdXRzPFwvZGl2PlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfc3VibWl0X2hpbnRfb3B0c1wiIGlkPVwicmVwbHlfc3VibWl0X2hpbnRfb3B0c1wiPlxuICAgIDxkaXYgY2xhc3M9XCJyYWRpb2J0biAlZGlzYWJsZWQlIFwiIGRhdGEtdmFsPVwiMFwiIG9uY2xpY2s9XCJyYWRpb2J0bih0aGlzLCAwLCAncmVwbHlfc3VibWl0Jyk7IHdhbGwub25SZXBseVN1Ym1pdENoYW5nZWQoMCk7XCI+PGRpdiBjbGFzcz1cInJhZGlvYnRuX2xhYmVsXCI+PGI+RW50ZXI8XC9iPiCXIHNlbmQgbWVzc2FnZTxicj48Yj5TaGlmdCtFbnRlcjxcL2I+IJcgbmV3IGxpbmU8XC9kaXY+PFwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJyYWRpb2J0biAlZW5hYmxlZCUgXCIgZGF0YS12YWw9XCIxXCIgb25jbGljaz1cInJhZGlvYnRuKHRoaXMsIDEsICdyZXBseV9zdWJtaXQnKTsgd2FsbC5vblJlcGx5U3VibWl0Q2hhbmdlZCgxKTtcIj48ZGl2IGNsYXNzPVwicmFkaW9idG5fbGFiZWxcIj48Yj5DdHJsK0VudGVyPFwvYj4glyBzZW5kIG1lc3NhZ2U8YnI+PGI+RW50ZXI8XC9iPiCXIG5ldyBsaW5lPFwvZGl2PjxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsInJlcGx5X2J1dHRvbiI6IjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJwb3N0X3JlcGx5IF9yZXBseV93cmFwXCIgb25jbGljaz1cInJldHVybiBXYWxsLnNob3dFZGl0UmVwbHkoJyVwb3N0X2lkJScsIGV2ZW50KVwiPlxuICA8aSBjbGFzcz1cInBvc3RfcmVwbHlfaWNvbiBfaWNvblwiPjxcL2k+XG4gIDxzcGFuIGNsYXNzPVwicG9zdF9yZXBseV9saW5rIF9saW5rXCI+Q29tbWVudDxcL3NwYW4+XG4gIDxzcGFuIGNsYXNzPVwicG9zdF9yZXBseV9jb3VudCBfY291bnRcIj48XC9zcGFuPlxuPFwvYT4iLCJyZXBseV9saW5rIjoiPHNwYW4gaWQ9XCJyZXBseV9saW5rJXBvc3RfaWQlXCIgY2xhc3M9XCJyZXBseV9saW5rX3dyYXBcIj48YSBocmVmPVwiI1wiIGNsYXNzPVwicmVwbHlfbGlua1wiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5zaG93RWRpdFJlcGx5KCclcG9zdF9pZCUnLCBldmVudClcIj5Db21tZW50PFwvYT48XC9zcGFuPiIsIm93bl9yZXBseV9saW5rIjoiPHNwYW4gY2xhc3M9XCJyZXBseV9saW5rX3dyYXBcIj48YSBjbGFzcz1cInJlcGx5X2xpbmtcIiBvbmNsaWNrPVwiV2FsbC5saWtlU2hhcmVDdXN0b20oJyVwb3N0X2lkJScpXCI+UmVwbHk8XC9hPjxcL3NwYW4+IiwiZWRpdF9saW5rIjoiPHNwYW4gY2xhc3M9XCJkaXZpZGVcIj58PFwvc3Bhbj48YSBvbmNsaWNrPVwid2FsbC5lZGl0UG9zdCh0aGlzLCAnJXBvc3RfaWQlJylcIj5FZGl0IDxcL2E+IiwicG9zdCI6IjxkaXYgaWQ9XCJwb3N0JXBvc3RfaWQlXCIgY2xhc3M9XCJfcG9zdCBwb3N0IHBhZ2VfYmxvY2tcIiBkYXRhLXBvc3QtaWQ9XCIlcG9zdF9pZCVcIiBvbmNsaWNrPVwid2FsbC5wb3N0Q2xpY2soJyVwb3N0X2lkJScsIGV2ZW50KTtcIiA+XG4gIDxkaXYgY2xhc3M9XCJfcG9zdF9jb250ZW50XCI+XG4gICAgXG4gICAgPGRpdiBjbGFzcz1cInBvc3RfaGVhZGVyXCI+XG4gICAgICA8YSBjbGFzcz1cInBvc3RfaW1hZ2Ulb25saW5lX2NsYXNzJVwiIGhyZWY9XCIlbGluayVcIj5cbiAgICAgICAgPGltZyBzcmM9XCIlcGhvdG8lXCIgZGF0YS1wb3N0LWlkPVwiJXBvc3RfaWQlXCIgZGF0YS1wb3N0LWNsaWNrLXR5cGU9XCJwb3N0X293bmVyX2ltZ1wiIHdpZHRoPVwiNTBcIiBoZWlnaHQ9XCI1MFwiIGNsYXNzPVwicG9zdF9pbWdcIiBcLz5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPi48XC9zcGFuPlxuICAgICAgPFwvYT5cbiAgICAgIDxkaXYgY2xhc3M9XCJwb3N0X2hlYWRlcl9pbmZvXCI+XG4gICAgICAgIDxoNSBjbGFzcz1cInBvc3RfYXV0aG9yXCI+JW5hbWUlPFwvaDU+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwb3N0X2RhdGVcIj48YSBjbGFzcz1cInBvc3RfbGlua1wiIGhyZWY9XCJcL3dhbGwlcG9zdF9pZCVcIiBvbmNsaWNrPVwicmV0dXJuIHNob3dXaWtpKHt3OiAnd2FsbCVwb3N0X2lkJSd9LCBmYWxzZSwgZXZlbnQpO1wiPiVkYXRlJTxcL2E+PFwvZGl2PlxuICAgICAgICAlYWN0aW9ucyVcbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInBvc3RfY29udGVudFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInBvc3RfaW5mb1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwid2FsbF90ZXh0XCI+JXRleHQlPFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwicG9zdF9mdWxsX2xpa2Vfd3JhcCBjbGVhcl9maXhcIj5cbiAgPGRpdiBjbGFzcz1cInBvc3RfZnVsbF9saWtlXCI+XG4gICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cInBvc3RfbGlrZSBfbGlrZV93cmFwIG5vX2xpa2VzXCIgb25tb3VzZW92ZXI9XCJXYWxsLmxpa2VzU2hvdyh0aGlzLCAnJXBvc3RfaWQlJylcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwubGlrZUl0KHRoaXMsICclcG9zdF9pZCUnLCAnMTQ5MDY0ODQ5OF8zODMzZDE3NWQ2OTRhOTI2MTknLCBldmVudCk7XCI+XG4gICAgICA8aSBjbGFzcz1cInBvc3RfbGlrZV9pY29uIF9pY29uXCI+PFwvaT5cbiAgICAgIDxzcGFuIGNsYXNzPVwicG9zdF9saWtlX2xpbmsgX2xpbmtcIj48XC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwb3N0X2xpa2VfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbiAgICA8XC9hPlxuICAgIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiIG9uY2xpY2s9XCJXYWxsLmxpa2VzU2hvd0xpc3QodGhpcywgJyVwb3N0X2lkJScpXCI+U2hvdyBsaWtlczxcL3NwYW4+XG4gICAgJXJlcGx5X2J1dHRvbiVcbiAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwicG9zdF9zaGFyZSBfc2hhcmVfd3JhcCBub19zaGFyZXNcIiAgb25tb3VzZW92ZXI9XCJXYWxsLnNoYXJlc1Nob3codGhpcywgJyVwb3N0X2lkJScpXCIgb25jbGljaz1cInJldHVybiBXYWxsLnNoYXJlc09wZW4oZXZlbnQsICclcG9zdF9pZCUnKTtcIj5cbiAgICAgIDxpIGNsYXNzPVwicG9zdF9zaGFyZV9pY29uIF9pY29uXCI+PFwvaT5cbiAgICAgIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIj48XC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwb3N0X3NoYXJlX2xpbmsgX2xpbmtcIj48XC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwb3N0X3NoYXJlX2NvdW50IF9jb3VudFwiPjxcL3NwYW4+XG4gICAgPFwvYT5cbiAgICA8c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIiBvbmNsaWNrPVwiV2FsbC5zaGFyZXNTaG93TGlzdCh0aGlzLCAnJXBvc3RfaWQlJylcIj5TaG93IHNoYXJlZCBjb3BpZXM8XC9zcGFuPlxuICAgIFxuICA8XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJwb3N0X3ZpZXdzIF92aWV3c193cmFwIG5vX3ZpZXdzIF9hdXRvX3VwZGF0ZVwiIG9ubW91c2VvdmVyPVwiV2FsbC52aWV3c1VwZGF0ZSh0aGlzLCAnJXBvc3RfaWQlJylcIj5cbiAgPGkgY2xhc3M9XCJwb3N0X3ZpZXdzX2ljb24gX2ljb25cIj48XC9pPlxuICA8c3BhbiBjbGFzcz1cInBvc3Rfdmlld3NfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbjxcL2Rpdj5cbjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcGxpZXNcIj48ZGl2IGNsYXNzPVwicmVwbGllc193cmFwXCIgaWQ9XCJyZXBsaWVzX3dyYXAlcG9zdF9pZCVcIiBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCI+XG4gIDxkaXYgY2xhc3M9XCJyZXBsaWVzX2xpc3QgX3JlcGxpZXNfbGlzdFwiIGlkPVwicmVwbGllcyVwb3N0X2lkJVwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJzdGFydF9yZXBseSVwb3N0X2lkJVwiIHZhbHVlPVwiXCJcLz48XC9kaXY+XG4gICVyZXBseV9ib3glXG48XC9kaXY+PFwvZGl2PlxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICBcbiAgPFwvZGl2PlxuICBcbjxcL2Rpdj4iLCJyZXBseSI6IjxkaXYgaWQ9XCJwb3N0JXJlcGx5X2lkJVwiIGNsYXNzPVwicmVwbHkgcmVwbHlfZGl2ZWQgY2xlYXIgJWNsYXNzbmFtZSUgX3Bvc3RcIiBkYXRhLXBvc3QtaWQ9XCIlcmVwbHlfaWQlXCIgJWF0dHIlPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfd3JhcCBfcmVwbHlfY29udGVudCBfcG9zdF9jb250ZW50IGNsZWFyX2ZpeFwiPlxuICAgIFxuICAgIDxhIGNsYXNzPVwicmVwbHlfaW1hZ2VcIiBocmVmPVwiJWxpbmslXCI+XG4gICAgICA8aW1nIHNyYz1cIiVwaG90byVcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiBjbGFzcz1cInJlcGx5X2ltZ1wiIGFsdD1cIiVuYW1lJVwiIFwvPlxuICAgIDxcL2E+XG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2NvbnRlbnRcIiA+XG4gICAgICAlYWN0aW9ucyVcbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9hdXRob3JcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJhdXRob3JcIiBocmVmPVwiJWxpbmslXCIgZGF0YS1mcm9tLWlkPVwiJXJlcGx5X3VpZCVcIj4lbmFtZSU8XC9hPiV0b19saW5rJVxuICAgICAgPFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X3RleHRcIiA+JXRleHQlPFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2Zvb3RlciBjbGVhcl9maXhcIiBpZD1cIndwZV9ib3R0b20lcmVwbHlfaWQlXCI+XG4gICAgICAgIDxhIGhyZWY9XCIjXCIgY2xhc3M9XCJsaWtlX3dyYXAgX2xpa2Vfd3JhcCBub19saWtlc1wiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5saWtlSXQodGhpcywgJyVsaWtlX2lkJScsICcxNDkwNjQ4NDk4XzM4MzNkMTc1ZDY5NGE5MjYxOScsIGV2ZW50KTtcIiBvbm1vdXNlb3Zlcj1cIldhbGwubGlrZXNTaG93KHRoaXMsICclbGlrZV9pZCUnKVwiPlxuICA8c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCI+TGlrZTxcL3NwYW4+XG4gIDxpIGNsYXNzPVwibGlrZV9pY29uIF9pY29uXCI+PFwvaT5cbiAgPHNwYW4gY2xhc3M9XCJsaWtlX2NvdW50IF9jb3VudFwiPjxcL3NwYW4+XG48XC9hPlxuPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCIgb25jbGljaz1cIldhbGwubGlrZXNTaG93TGlzdCh0aGlzLCAnJWxpa2VfaWQlJylcIj5TaG93IGxpa2VzPFwvc3Bhbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2RhdGVcIj48YSBjbGFzcz1cIndkX2xua1wiIGhyZWY9XCJcL3dhbGwlcG9zdF9pZCU/cmVwbHk9JXJlcGx5X21zZ19pZCVcIiBvbmNsaWNrPVwicmV0dXJuIG5hdi5nbyh0aGlzLCBldmVudClcIj4lZGF0ZSU8XC9hPjxcL2Rpdj5cbiAgICAgICAgJWFuc3dlcl9saW5rJVxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsImRlbCI6IjxhIGNsYXNzPVwidWlfYWN0aW9uc19tZW51X2l0ZW1cIiBvbmNsaWNrPVwid2FsbC5kZWxldGVQb3N0KHRoaXMsICclcG9zdF9pZCUnLCAnMTQ5MDY0ODQ5OF85MTJiZDhhYzU3Mzg5YTg1YWQnKTsgcmV0dXJuIGZhbHNlO1wiPkRlbGV0ZSBwb3N0PFwvYT4iLCJzcGFtIjoiPGEgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfaXRlbVwiIG9uY2xpY2s9XCJ3YWxsLm1hcmtBc1NwYW0odGhpcywgJyVwb3N0X2lkJScsICcxNDkwNjQ4NDk4X2NjZTYwOTkyNTVjODRjYjBmOScpOyByZXR1cm4gZmFsc2U7XCI+UmVwb3J0PFwvYT4iLCJlZGl0IjoiPGEgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfaXRlbVwiIG9uY2xpY2s9XCJ3YWxsLmVkaXRQb3N0KHRoaXMsICclcG9zdF9pZCUnKTsgcmV0dXJuIGZhbHNlO1wiPkVkaXQgPFwvYT4iLCJwb3N0X2FjdGlvbnMiOiI8ZGl2IGNsYXNzPVwidWlfYWN0aW9uc19tZW51X3dyYXAgX3VpX21lbnVfd3JhcCBcIiBvbm1vdXNlb3Zlcj1cInVpQWN0aW9uc01lbnUuc2hvdyh0aGlzKTtcIiBvbm1vdXNlb3V0ID1cInVpQWN0aW9uc01lbnUuaGlkZSh0aGlzKTtcIj5cbiAgPGRpdiBjbGFzcz1cInVpX2FjdGlvbnNfbWVudV9pY29uc1wiICB0YWJpbmRleD1cIjBcIiBhcmlhLWxhYmVsPVwiQWN0aW9uc1wiIHJvbGU9XCJidXR0b25cIiBvbmNsaWNrPVwidWlBY3Rpb25zTWVudS5rZXlUb2dnbGUodGhpcywgZXZlbnQpO1wiPjxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIj5BY3Rpb25zPFwvc3Bhbj48XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnUgX3VpX21lbnVcIiA+JWFjdGlvbnMlPFwvZGl2PlxuPFwvZGl2PiIsImRlbF9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9kZWxldGUlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9kZWxldGVfYnV0dG9uIHJlcGx5X2FjdGlvbiBmbF9yXCIgZGF0YS10aXRsZT1cIkRlbGV0ZVwiIG9uY2xpY2s9XCJ3YWxsLmRlbGV0ZVBvc3QodGhpcywgJyVyZXBseV9pZCUnLCAnMTQ5MDY0ODQ5OF85MTJiZDhhYzU3Mzg5YTg1YWQnKTtcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiRGVsZXRlXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+Iiwic3BhbV9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9kZWxldGUlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9kZWxldGVfYnV0dG9uIHJlcGx5X2FjdGlvbiBmbF9yXCIgZGF0YS10aXRsZT1cIlJlcG9ydFwiIG9uY2xpY2s9XCJ3YWxsLm1hcmtBc1NwYW0odGhpcywgJyVyZXBseV9pZCUnLCAnMTQ5MDY0ODQ5OF9jY2U2MDk5MjU1Yzg0Y2IwZjknKTtcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiUmVwb3J0XCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+IiwiZWRpdF9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9lZGl0JXJlcGx5X2lkJVwiIGNsYXNzPVwicmVwbHlfZWRpdF9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRWRpdCBcIiBvbmNsaWNrPVwid2FsbC5lZGl0UG9zdCh0aGlzLCAnJXJlcGx5X2lkJScpO1wiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJFZGl0IFwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCI+PFwvZGl2PiIsInJlcGx5X2FjdGlvbnMiOiI8ZGl2IGNsYXNzPVwiZmxfciBwb3N0X2FjdGlvbnNfd3JhcFwiPjxkaXYgY2xhc3M9XCJwb3N0X2FjdGlvbnNcIj4lYWN0aW9ucyU8XC9kaXY+PFwvZGl2PiIsInBvbGxfc3RhdHMiOiI8ZGl2IGNsYXNzPVwicGFnZV9wb2xsX3N0YXRcIiVoYW5kbGVycyU+XG4gIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfdGV4dFwiPiVvcHRpb25fdGV4dCU8XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93X3dyYXBcIj5cbiAgICA8ZGl2IGNsYXNzPVwicGFnZV9wb2xsX3Jvd19wZXJjZW50XCI+JXBlcmNlbnQlJTxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicGFnZV9wb2xsX3JvdyVyb3dfY2xhc3MlXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicGFnZV9wb2xsX3BlcmNlbnRcIiBzdHlsZT1cIndpZHRoOiAlY3NzX3BlcmNlbnQlJVwiPjxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93X2NvdW50XCI+JWNvdW50JTxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJwb2xsX2hhc2giOiIxNDkwNjQ4NDk4X2YwYWFiYzNhNTRiZWFhMDBjNCIsImRhdGVfZm9ybWF0IjoidG9kYXkgYXQge2hvdXJ9OnttaW51dGV9IHthbV9wbX0iLCJ0aW1lX3N5c3RlbSI6WyJwbSIsImFtIl0sImFic190aW1lc3RhbXAiOjE0OTA2NDg0OTgsImxhbmciOnsid2FsbF9NX3JlcGxpZXNfb2ZfTiI6WyIiLCIlcyBjb21tZW50IG9mIHtsaW5rfXthbGx9e1wvbGlua30iLCIlcyBjb21tZW50cyBvZiB7bGlua317YWxsfXtcL2xpbmt9Il0sIndhbGxfaGlkZV9yZXBsaWVzIjoiSGlkZSBjb21tZW50cyIsIndhbGxfc2hvd19uX29mX21fbGFzdCI6WyIiLCJTaG93IGxhdGVzdCAlcyBjb21tZW50IG91dCBvZiB7Y291bnR9IiwiU2hvdyBsYXRlc3QgJXMgY29tbWVudHMgb3V0IG9mIHtjb3VudH0iXSwid2FsbF9zaG93X2FsbF9uX3JlcGxpZXMiOlsiIiwiU2hvdyAlcyBjb21tZW50IiwiU2hvdyBhbGwgJXMgY29tbWVudHMiXSwid2FsbF9OX3JlcGxpZXMiOlsiIiwiJXMgY29tbWVudCIsIiVzIGNvbW1lbnRzIl0sIndhbGxfdGhyZWVfbGFzdF9yZXBsaWVzIjoibGFzdCB0aHJlZSBwb3N0cyIsIndhbGxfYWxsX3JlcGxpZXMiOiJhbGwgY29tbWVudHMiLCJ3YWxsX3hfbmV3X3JlcGxpZXNfbW9yZSI6WyIiLCIlcyBuZXcgY29tbWVudCBhZGRlZCIsIiVzIG5ldyBjb21tZW50cyBhZGRlZCJdLCJ3YWxsX1hfcGVvcGxlX3ZvdGVkIjpbIiIsIjxiPiVzPFwvYj4gcGVyc29uIHZvdGVkLiIsIjxiPiVzPFwvYj4gcGVvcGxlIHZvdGVkLiJdLCJ3YWxsX3JlcGx5X3N1Ym1pdF9oaW50XzEiOiJTaGlmdCtFbnRlciCXIG5ldyBsaW5lIiwid2FsbF9yZXBseV9zdWJtaXRfaGludF8yIjoiQ3RybCtFbnRlciCWIHNlbmQgbWVzc2FnZSIsIndhbGxfcmVwbHlfc3VibWl0X2hpbnRfMV9tb3JlIjoiRW50ZXIglyBzZW5kIG1lc3NhZ2UsIFNoaWZ0K0VudGVyIJcgbmV3IGxpbmUiLCJ3YWxsX3JlcGx5X3N1Ym1pdF9oaW50XzJfbW9yZSI6IkVudGVyIJcgbmV3IGxpbmUsIEN0cmwrRW50ZXIglyBzZW5kIG1lc3NhZ2UiLCJ3YWxsX3JlcGx5X3Bvc3QiOiJSZXBseSIsIndhbGxfcmVwbGllZF90b19ncm91cCI6InRoZSBhZG1pbiIsIndhbGxfcmVwbHlfYXNfdXNlciI6Im9uIGJlaGFsZiBvZiB0aGUgdXNlciIsIndhbGxfcmVwbHlfYXNfZ3JvdXAiOiJwb3N0IGFzIGNvbW11bml0eSIsIndhbGxfYWRkX3Bob3RvX2Vycm9yIjoiVW5hYmxlIHRvIHVwbG9hZCB0aGUgaW1hZ2UiLCJ3YWxsX2p1c3Rfbm93IjpbIiIsIk9uZSBzZWNvbmQgYWdvIiwiVHdvIHNlY29uZHMgYWdvIiwiVGhyZWUgc2Vjb25kcyBhZ28iLCJGb3VyIHNlY29uZHMgYWdvIiwiRml2ZSBzZWNvbmRzIGFnbyJdLCJ3YWxsX1hfc2Vjb25kc19hZ29fd29yZHMiOlsiIiwiT25lIHNlY29uZCBhZ28iLCJUd28gc2Vjb25kcyBhZ28iLCJUaHJlZSBzZWNvbmRzIGFnbyIsIkZvdXIgc2Vjb25kcyBhZ28iLCJGaXZlIHNlY29uZHMgYWdvIl0sIndhbGxfWF9zZWNvbmRzX2FnbyI6WyIiLCIlcyBzZWNvbmQgYWdvIiwiJXMgc2Vjb25kcyBhZ28iXSwid2FsbF9YX21pbnV0ZXNfYWdvX3dvcmRzIjpbIiIsIm9uZSBtaW51dGUgYWdvIiwidHdvIG1pbnV0ZXMgYWdvIiwidGhyZWUgbWludXRlcyBhZ28iLCI0IG1pbnV0ZXMgYWdvIiwiNSBtaW51dGVzIGFnbyJdLCJ3YWxsX1hfbWludXRlc19hZ28iOlsiIiwiJXMgbWludXRlIGFnbyIsIiVzIG1pbnV0ZXMgYWdvIl0sIndhbGxfWF9ob3Vyc19hZ29fd29yZHMiOlsiIiwib25lIGhvdXIgYWdvIiwidHdvIGhvdXJzIGFnbyIsInRocmVlIGhvdXJzIGFnbyIsImZvdXIgaG91cnMgYWdvIiwiZml2ZSBob3VycyBhZ28iXSwid2FsbF9YX2hvdXJzX2FnbyI6WyIiLCIlcyBob3VyIGFnbyIsIiVzIGhvdXJzIGFnbyJdfX0sInNoYXJlX3RpbWVoYXNoIjoiMTQ5MDY0ODQ5OF84ZDg4NTdmNzg0NWVkODlmNmQiLCJjb21tZW50c1RwbCI6eyJyZXBseSI6IjxkaXYgaWQ9XCJwb3N0JXJlcGx5X2lkJVwiIGNsYXNzPVwicmVwbHkgcmVwbHlfZGl2ZWQgY2xlYXIgIF9wb3N0XCIgZGF0YS1wb3N0LWlkPVwiJXJlcGx5X2lkJVwiICBvbmNsaWNrPVwiVmlkZW92aWV3LmNvbW1lbnRDbGljayh0aGlzLCBldmVudCwgJWZyb21faWQlLCAlcmVwbHlfbXNnX2lkJSlcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X3dyYXAgX3JlcGx5X2NvbnRlbnQgX3Bvc3RfY29udGVudCBjbGVhcl9maXhcIj5cbiAgICBcbiAgICA8YSBjbGFzcz1cInJlcGx5X2ltYWdlXCIgaHJlZj1cIiVocmVmJVwiPlxuICAgICAgPGltZyBzcmM9XCIlcGhvdG8lXCIgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQwXCIgY2xhc3M9XCJyZXBseV9pbWdcIiBhbHQ9XCIlbmFtZSVcIiBcLz5cbiAgICA8XC9hPlxuICAgIDxkaXYgY2xhc3M9XCJyZXBseV9jb250ZW50XCIgPlxuICAgICAgJWFjdGlvbnMlXG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfYXV0aG9yXCI+XG4gICAgICAgIDxhIGNsYXNzPVwiYXV0aG9yXCIgaHJlZj1cIiVocmVmJVwiIGRhdGEtZnJvbS1pZD1cIiVmcm9tX2lkJVwiPiVuYW1lJTxcL2E+JXRvX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfdGV4dFwiID4lbWVzc2FnZSU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZm9vdGVyIGNsZWFyX2ZpeFwiIGlkPVwid3BlX2JvdHRvbSVyZXBseV9pZCVcIj5cbiAgICAgICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cImxpa2Vfd3JhcCBfbGlrZV93cmFwIG5vX2xpa2VzXCIgb25jbGljaz1cInJldHVybiBXYWxsLmxpa2VJdCh0aGlzLCAnJXBvc3Rfb2lkJXZpZGVvX2NvbW1lbnQlcmVwbHlfbXNnX2lkJW12JywgJzE0OTA2NDg0OThfMzgzM2QxNzVkNjk0YTkyNjE5JywgZXZlbnQpO1wiIG9ubW91c2VvdmVyPVwiV2FsbC5saWtlc1Nob3codGhpcywgJyVwb3N0X29pZCV2aWRlb19jb21tZW50JXJlcGx5X21zZ19pZCVtdicpXCI+XG4gIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIj5MaWtlPFwvc3Bhbj5cbiAgPGkgY2xhc3M9XCJsaWtlX2ljb24gX2ljb25cIj48XC9pPlxuICA8c3BhbiBjbGFzcz1cImxpa2VfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbjxcL2E+XG48c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIiBvbmNsaWNrPVwiV2FsbC5saWtlc1Nob3dMaXN0KHRoaXMsICclcG9zdF9vaWQldmlkZW9fY29tbWVudCVyZXBseV9tc2dfaWQlbXYnKVwiPlNob3cgbGlrZXM8XC9zcGFuPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZGF0ZVwiPiVkYXRlJTxcL2Rpdj5cbiAgICAgICAgXG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwiYWN0aW9ucyI6IjxkaXYgY2xhc3M9XCJmbF9yIHBvc3RfYWN0aW9uc193cmFwXCI+PGRpdiBjbGFzcz1cInBvc3RfYWN0aW9uc1wiPiVhY3Rpb25zJTxcL2Rpdj48XC9kaXY+IiwiZWRpdF9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9lZGl0JXJlcGx5X2lkJVwiIGNsYXNzPVwicmVwbHlfZWRpdF9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRWRpdFwiIG9uY2xpY2s9XCJXYWxsLmVkaXRQb3N0KHRoaXMsICclcmVwbHlfaWQlJylcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiRWRpdFwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCI+PFwvZGl2PiIsImRlbF9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9kZWxldGUlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9kZWxldGVfYnV0dG9uIHJlcGx5X2FjdGlvbiBmbF9yXCIgZGF0YS10aXRsZT1cIkRlbGV0ZVwiIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbUFjdGlvbignZGVsZXRlJywgJXBvc3Rfb2lkJSwgJXJlcGx5X21zZ19pZCUsICcxNDkwNjQ4NDk4XzQxMTAxN2I3ZDFhN2Y1ODIwYScsICdtdicpXCIgb25tb3VzZW92ZXI9XCJzaG93VGl0bGUodGhpcyk7XCIgYXJpYS1sYWJlbD1cIkRlbGV0ZVwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCI+PFwvZGl2PiIsInNwYW1fcmVwbHkiOiI8ZGl2IGlkPVwicmVwbHlfZGVsZXRlJXJlcGx5X2lkJVwiIGNsYXNzPVwicmVwbHlfZGVsZXRlX2J1dHRvbiByZXBseV9hY3Rpb24gZmxfclwiIGRhdGEtdGl0bGU9XCJSZXBvcnRcIiBvbmNsaWNrPVwiVmlkZW92aWV3LmNvbW1BY3Rpb24oJ3NwYW0nLCAlcG9zdF9vaWQlLCAlcmVwbHlfbXNnX2lkJSwgJzE0OTA2NDg0OThfNDExMDE3YjdkMWE3ZjU4MjBhJywgJ212JylcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiUmVwb3J0XCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+In0sInBvc3QiOiIyMTUyNjk5X3ZpZGVvMTY4NTkxNzQxbXYiLCJtYXhSZXBseUxlbmd0aCI6MTYzODQsIm1heENoYXRSZXBseUxlbmd0aCI6NjAwLCJtYXhEZXNjcmlwdGlvbkxlbmd0aCI6MTAyNCwicHVibGlzaEFjdGlvbiI6IiIsInBsX2xpc3QiOjAsImlzX3ZrX3BsYXllciI6MCwiaXNfZmx2IjpmYWxzZSwiY2FudFBsYXkiOjAsInBsYXllciI6eyJ0eXBlIjoieW91dHViZSIsInBhcmFtcyI6W3sibGFuZ19hZGQiOiJBZGQgdG8gTXkgVmlkZW9zIiwibGFuZ19hZGRlZCI6IlZpZGVvIGFkZGVkIHRvIE15IFZpZGVvcyIsImxhbmdfc2hhcmUiOiJTaGFyZSIsImxhbmdfbGlrZSI6Ikxpa2UiLCJsYW5nX2RvbmF0ZSI6IkRvbmF0ZSIsImxhbmdfc3Vic2NyaWJlIjoiU3Vic2NyaWJlIiwibGFuZ19zdWJzY3JpYmVkIjoiRm9sbG93aW5nIiwibGFuZ192b2x1bWVfb24iOiJVbm11dGUiLCJsYW5nX3ZvbHVtZV9vZmYiOiJNdXRlIiwibGFuZ192b2x1bWUiOiJWb2x1bWUiLCJsYW5nX2hkc2QiOiJDaGFuZ2UgVmlkZW8gUXVhbGl0eSIsImxhbmdfcXVhbGl0eV9hdXRvIjoiQXV0byIsImxhbmdfb3Blbl9wb3B1cCI6IkV4cGFuZCIsImxhbmdfZnVsbHNjcmVlbiI6IkZ1bGwgU2NyZWVuIiwibGFuZ193aW5kb3ciOiJNaW5pbWl6ZSIsImxhbmdfcm90YXRlIjoiUm90YXRlIiwibGFuZ19hZHNfbGluayI6IkFkdmVydGlzZXImIzM5O3MgU2l0ZSIsImxhbmdfYWRzIjoiQWRzIiwibGFuZ19hZHNfc2tpcCI6IlNraXAgYWQiLCJsYW5nX2Fkc19za2lwX3RpbWUiOiJTa2lwIGFkcyBpbiB7dGltZX0gcyIsImxhbmdfcmVwb3J0X3Byb2JsZW0iOiJSZXBvcnQgYSBwcm9ibGVtLi4iLCJsYW5nX3BsYXkiOiJQbGF5IiwibGFuZ19wYXVzZSI6IlBhdXNlIiwibGFuZ19yZXBsYXkiOiJSZXBsYXkiLCJsYW5nX25leHQiOiJOZXh0IHZpZGVvIiwibGFuZ19uZXh0X2NhbmNlbCI6IkNhbmNlbCIsImxhbmdfZ290b19vcmlnX3ZpZGVvIjoiR28gdG8gVmlkZW8iLCJsYW5nX2dvdG9fYWR2ZXJ0aXNlcnNfc2l0ZSI6IkdvIHRvIHRoZSB3ZWJzaXRlIiwibGFuZ19idXlfdGlja2V0cyI6bnVsbCwibGFuZ19sb2FkX2Vycm9yIjoiQW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIGxvYWRpbmcuIFBsZWFzZSB0cnkgYWdhaW4gbGF0ZXIuIiwibGFuZ19lcnJfY29kZSI6IkVycm9yIGNvZGU6IHtjb2RlfSIsImxhbmdfYmFkX2Jyb3dzZXIiOiJTb3JyeSwgeW91ciBicm93c2VyIGlzbiYjMzk7dCBzdXBwb3J0ZWQgYXQgdGhlIG1vbWVudCIsImxhbmdfbGl2ZSI6IkxpdmUiLCJsYW5nX2xpdmVfc3RhcnRpbmdfc29vbiI6IlRoZSBsaXZlIHdpbGwgc3RhcnQgc29vbiIsImxhbmdfbGl2ZV9mYWlsZWQiOiJBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBzdHJlYW1pbmciLCJsYW5nX2xpdmVfd2FpdF9yZWNvcmQiOiJUaGUgbGl2ZSBoYXMgZmluaXNoZWQgYW5kIHdpbGwgc29vbiBiZWNvbWUgYXZhaWxhYmxlIGluIHJlcGxheSIsImxhbmdfbGl2ZV91c2VyX3NlbnRfZ2lmdCI6WyIiLCJzZW50IGEgZ2lmdCIsInNlbnQgYSBnaWZ0Il0sImxhbmdfbGl2ZV91c2VyX3NlbnRfc3VwZXJjb21tZW50IjpbIiIsInNlbnQgYSBzdXBlciBtZXNzYWdlIiwic2VudCBhIHN1cGVyIG1lc3NhZ2UiXSwibGFuZ19saXZlX2Rvd25sb2FkX2FwcCI6IkRvd25sb2FkIGFwcCIsImxhbmdfYXV0b3BsYXlfdm9sdW1lX2hpbnQiOiLRbGljayB0byB0dXJuIG9uIHRoZSBzb3VuZCIsImxhbmdfYXV0b3BsYXlfZXhwYW5kX2hpbnQiOiJDbGljayB0byBleHBhbmQiLCJsYW5nX3RpbWVkX2J1dHRvbl9nb3RvIjoiz+Xw5eny6CIsImxhbmdfdGltZWRfYnV0dG9uX29wZW4iOiJPcGVuIiwibGFuZ190aW1lZF9idXR0b25fYnV5IjoiQnV5IiwibGFuZ190aW1lZF9idXR0b25fYnV5X3RpY2tldHMiOiJCdXkgdGlja2V0cyIsImxhbmdfdGltZWRfYnV0dG9uX2NoZWNraW4iOm51bGwsImxhbmdfdGltZWRfYnV0dG9uX2luc3RhbGwiOiLT8fLg7e7i6PL8IiwibGFuZ190aW1lZF9idXR0b25fY29udGFjdCI6ItHi/+fg8vzx/yIsImxhbmdfdGltZWRfYnV0dG9uX2ZpbGwiOiLH4O/u6+3o8vwiLCJsYW5nX3RpbWVkX2J1dHRvbl9sZWFybl9tb3JlIjoiTW9yZSIsImxhbmdfY21lbnVfY29weV92aWRlb19saW5rIjoiQ29weSB2aWRlbyBsaW5rIiwibGFuZ19jbWVudV9jb3B5X3RpbWVjb2RlX2xpbmsiOiJDb3B5IGxpbmsgd2l0aCB0aW1lY29kZSIsImxhbmdfY21lbnVfY29weV9lbWJlZF9jb2RlIjoiQ29weSBlbWJlZCBjb2RlIiwibGFuZ19jbWVudV9lbmFibGVfbG9vcCI6IkVuYWJsZSBsb29wIiwibGFuZ19jbWVudV9kaXNhYmxlX2xvb3AiOiJEaXNhYmxlIGxvb3AiLCJsYW5nX2NtZW51X3BsYXliYWNrX3NwZWVkIjoiUGxheWJhY2sgc3BlZWQiLCJsYW5nX2NtZW51X3JlcG9ydF9lcnJvciI6IlJlcG9ydCBhIHByb2JsZW0uLiIsImxhbmdfY21lbnVfY29weV9kZWJ1ZyI6IkNvcHkgZGVidWcgaW5mbyIsImxhbmdfYXJpYV92aWRlb3BsYXllciI6IlZLIFZpZGVvIFBsYXllciIsImxhbmdfYXJpYV92b2x1bWVfc2xpZGVyIjoiVm9sdW1lIHNsaWRlciIsImxhbmdfYXJpYV92b2x1bWVfbXV0ZWQiOiJWb2x1bWUgaXMgbXV0ZWQiLCJsYW5nX2FyaWFfdGltZWxpbmVfc2xpZGVyIjoiVGltZSBzbGlkZXIiLCJsYW5nX2FyaWFfdGltZWxpbmVfdmFsdWUiOiJ7dGltZX0gKHRvdGFsIGR1cmF0aW9uIHtkdXJhdGlvbn0pIiwibGFuZ19hcmlhX2VudGVyX2Z1bGxzY3JlZW4iOiJFbnRlciBmdWxsIHNjcmVlbiBtb2RlIiwibGFuZ19hcmlhX2V4aXRfZnVsbHNjcmVlbiI6IkV4aXQgZnVsbCBzY3JlZW4gbW9kZSIsImxhbmdfYXJpYV9xdWFsaXR5X2N1cnJlbnQiOiJDdXJyZW50IHF1YWxpdHkgaXMge3F1YWxpdHl9IiwidmlkZW9fcGxheV9oZCI6IldhdGNoIGluIEhEIiwidmlkZW9fc3RvcF9sb2FkaW5nIjoiU3RvcCBEb3dubG9hZCIsInZpZGVvX3BsYXllcl92ZXJzaW9uIjoiVksgVmlkZW8gUGxheWVyIiwidmlkZW9fZ2V0X3ZpZGVvX2NvZGUiOiJDb3B5IGVtYmVkIGNvZGUiLCJ2aWRlb19nZXRfY3VycmVudF91cmwiOiJDb3B5IGxpbmsgd2l0aCB0aW1lY29kZSIsInZpZGVvX2xvYWRfZXJyb3IiOiJBbiBlcnJvciBvY2N1cnJlZCBkdXJpbmcgbG9hZGluZy4gUGxlYXNlIHRyeSBhZ2FpbiBsYXRlci4iLCJnb3RvX29yaWdfdmlkZW8iOiJHbyB0byBWaWRlbyIsInZpZCI6MTY4NTkxNzQxLCJvaWQiOjIxNTI2OTksIm1kX3RpdGxlIjoiQkVBVCBTT1VMIFNURVAglyBSREMxNCBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwLCBNYXkgMS0yLCBNb3Njb3cgMjAxNCIsIm1kX2F1dGhvciI6IktpcmlsbCBMeWFub3kiLCJhdXRob3JfaWQiOjIxNTI2OTksImF1dGhvcl9ocmVmIjoiXC9seWFub2kua2lyaWxsIiwiYXV0aG9yX3Bob3RvIjoiaHR0cHM6XC9cL3BwLnVzZXJhcGkuY29tXC9jNjIzODI0XC92NjIzODI0Njk5XC81NTU3NVwvQ0NRWjI5bDBCOWsuanBnIiwiaGFzaCI6IjcyOTViMzk3ODQ5N2YwODY5OGI4Y2NiN2QzMGEwYzY2IiwiaGFzaDIiOiJlYTFkM2RiOTg4MTgxMjVkIiwiaXNfZXh0IjowLCJkdXJhdGlvbiI6Mjk5LCJ0IjoiIiwidmlnb19jaWQiOiJjZmNkMjA4NDk1ZDU2NWVmNjZlN2RmZjlmOTg3NjRkYSIsInZpZXdlcl9pZCI6MCwicG9zdF9pZCI6bnVsbCwibW9kdWxlIjoicHJvZmlsZSIsImciOjAsImEiOjAsImNpcyI6MCwicmVjb21tZW5kX3NpZyI6IjQ2MTE2ODc2YTJmMTBhYWJmNDJhODc2MmM1MzQwMzhlIiwiZXJyb3Jfc3RhdF9oYXNoIjoiMTQ5MDY0ODQ5OF80YmRmZDExOWQyZTU2YTBhMmIiLCJub19hZHMiOjEsIm5vbGlrZXMiOjEsImV4dHJhIjoiMjEiLCJleHRyYV9kYXRhIjoiNFRod3M1d3E1R0kiLCJ0aHVtYiI6Imh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzYxNzgzMVwvdTk2MTIzMzAzXC92aWRlb1wvbF8yN2U0ZmY1Yy5qcGciLCJqcGciOiJodHRwczpcL1wvcHAudXNlcmFwaS5jb21cL2M2MTc4MzFcL3U5NjEyMzMwM1wvdmlkZW9cL3hfNWJiMDU3OGYuanBnIiwiaGQiOjAsIm5vbG9nbyI6MSwic2hvd19uZXh0IjowLCJsaWtlZCI6MCwiYWRkX2hhc2giOiJmZmI4NDJkMGNlNmZjMTY4YTciLCJhZGRlZCI6MCwiY2FuX2FkZCI6MCwibm9fdGl0bGUiOjAsInZzZWdzX3NpemUiOjI5LjAwMDAwMCwidnNlZ3NfaGFzaCI6IjM5MTQ0MWViMDM4OWEyNDE0NiIsInJlcG9ydF9lcnJvcl9oYXNoIjoiMzgzNzE5ZTBjOGY1NDY2NTlhIn1dfX08IT48IXBhZ2V2aWV3X2NhbmRpZGF0ZT4=
46
- http_version:
47
- recorded_at: Mon, 27 Mar 2017 21:01:38 GMT
48
- recorded_with: VCR 3.0.3
@@ -1,48 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://vk.com/al_video.php
6
- body:
7
- encoding: US-ASCII
8
- string: User-Agent=VideoInfo%2F2.7&act=show&al=1&autoplay=0&module=profile&video=2152699_168591741
9
- headers:
10
- Accept-Encoding:
11
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Mozilla/5.0 (Linux; VideoInfo)
16
- - Ruby
17
- response:
18
- status:
19
- code: 200
20
- message: OK
21
- headers:
22
- Server:
23
- - Apache
24
- Date:
25
- - Mon, 27 Mar 2017 21:01:39 GMT
26
- Content-Type:
27
- - text/html; charset=windows-1251
28
- Content-Length:
29
- - '10365'
30
- Connection:
31
- - keep-alive
32
- X-Powered-By:
33
- - PHP/3.12334
34
- Set-Cookie:
35
- - remixlang=3; expires=Thu, 29 Mar 2018 22:43:17 GMT; path=/; domain=.vk.com
36
- Pragma:
37
- - no-cache
38
- Cache-Control:
39
- - no-store
40
- Strict-Transport-Security:
41
- - max-age=0
42
- body:
43
- encoding: ASCII-8BIT
44
- string: !binary |-
45
- PCEtLTMzMjY4NDA3MjMyMjg8IT51aV9tZWRpYV9zZWxlY3Rvci5qcyx1aV9tZWRpYV9zZWxlY3Rvci5jc3MsZW1vamkuanMsbm90aWZpZXIuY3NzLHZpZGVvdmlldy5qcyx2aWRlb3ZpZXcuY3NzLHBhZ2UuanMscGFnZS5jc3MscG9zdC5jc3MsdWlfY29udHJvbHMuanMsdWlfY29udHJvbHMuY3NzPCE+MzwhPjM3MDQ8IT4wPCE+QkVBVCBTT1VMIFNURVAglyBSREMxNCBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwLCBNYXkgMS0yLCBNb3Njb3cgMjAxNDwhPjxkaXYgY2xhc3M9InZpZGVvX2JveF93cmFwIj4KICA8ZGl2IGlkPSJ2aWRlb19wbGF5ZXIiPgogICAgPGRpdiBpZD0idmlkZW9feXQiIHRhYmluZGV4PSIwIiBzdHlsZT0id2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvdXRsaW5lOjA7Ij4KICAgICAgPGlmcmFtZSBjbGFzcz0idmlkZW9feXRfcGxheWVyIiB0eXBlPSJ0ZXh0L2h0bWwiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHNyYz0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvNFRod3M1d3E1R0k/ZW5hYmxlanNhcGk9MSZhdXRvcGxheT0wJnN0YXJ0PTAmYXV0b2hpZGU9MSZ3bW9kZT1vcGFxdWUmc2hvd2luZm89MCZvcmlnaW49aHR0cHM6Ly92ay5jb20mZnM9MSZyZWw9MCZjY19sb2FkX3BvbGljeT0wJml2X2xvYWRfcG9saWN5PTMiIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PCE+CmFkZFRlbXBsYXRlcyh7Il8iOiJfIiwiYXVkaW9fcm93IjoiPGRpdiBjbGFzcz1cImF1ZGlvX3JvdyBfYXVkaW9fcm93IF9hdWRpb19yb3dfJTElXyUwJSAlY2xzJSBjbGVhcl9maXhcIiBvbmNsaWNrPVwicmV0dXJuIGdldEF1ZGlvUGxheWVyKCkudG9nZ2xlQXVkaW8odGhpcywgZXZlbnQpXCIgZGF0YS1hdWRpbz1cIiVzZXJpYWxpemVkJVwiIGRhdGEtZnVsbC1pZD1cIiUxJV8lMCVcIiBpZD1cImF1ZGlvXyUxJV8lMCVcIj5cbiAgPGRpdiBjbGFzcz1cImF1ZGlvX3BsYXlfd3JhcFwiIGRhdGEtbm9kcmFnPVwiMVwiPjxidXR0b24gY2xhc3M9XCJhdWRpb19wbGF5IF9hdWRpb19wbGF5XCIgaWQ9XCJwbGF5XyUxJV8lMCVcIiBhcmlhLWxhYmVsPVwiXCI+PFwvYnV0dG9uPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cImF1ZGlvX2luZm9cIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fZHVyYXRpb25fd3JhcCBfYXVkaW9fZHVyYXRpb25fd3JhcFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2hxX2xhYmVsXCI+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2R1cmF0aW9uIF9hdWRpb19kdXJhdGlvblwiPiVkdXJhdGlvbiU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0c1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0XCIgaWQ9XCJyZWNvbVwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cIkF1ZGlvUGFnZSh0aGlzKS5zaG93UmVjb21zKHRoaXMsICclMSVfJTAlJywgZXZlbnQpXCI+PGRpdj48XC9kaXY+PFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0XCIgaWQ9XCJuZXh0XCIgb25tb3VzZW92ZXI9XCJhdWRpb1Nob3dBY3Rpb25Ub29sdGlwKHRoaXMsICclMSVfJTAlJylcIiBvbmNsaWNrPVwiZ2V0QXVkaW9QbGF5ZXIoKS5zZXROZXh0KHRoaXMsIGV2ZW50KVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwiZWRpdFwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cIkF1ZGlvUGFnZSh0aGlzKS5lZGl0QXVkaW8odGhpcywgJyUxJV8lMCUnLCBldmVudClcIj48ZGl2PjxcL2Rpdj48XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdWRpb19hY3QgX2F1ZGlvX2FjdF9kZWxldGVcIiBpZD1cImRlbGV0ZVwiIG9uY2xpY2s9XCJBdWRpb1BhZ2UodGhpcykuZGVsZXRlQXVkaW8odGhpcywgJyUxJV8lMCUnLCBldmVudClcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwiYWRkXCIgb25jbGljaz1cInJldHVybiBhZGRBdWRpbyh0aGlzLCBldmVudClcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgXG4gICAgICAgIFxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fdGl0bGVfd3JhcFwiXG4gICAgID48YSBocmVmPVwiJXNlYXJjaF9ocmVmJVwiIG9ubW91c2VvdmVyPVwic2V0VGl0bGUodGhpcylcIiBub2RyYWc9XCIxXCIgb25jbGljaz1cInJldHVybiBhdWRpb1NlYXJjaFBlcmZvcm1lcih0aGlzLCBldmVudClcIiBjbGFzcz1cImF1ZGlvX3BlcmZvcm1lclwiPiU0JTxcL2FcbiAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9faW5mb19kaXZpZGVyXCI+Jm5kYXNoOzxcL3NwYW5cbiAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9fdGl0bGUgX2F1ZGlvX3RpdGxlXCIgb25tb3VzZW92ZXI9XCJzZXRUaXRsZSh0aGlzLCBkb21QTih0aGlzKSlcIlxuICAgICAgICA+PHNwYW4gY2xhc3M9XCJhdWRpb190aXRsZV9pbm5lclwiIHRhYmluZGV4PVwiMFwiIG5vZHJhZz1cIjFcIiBhcmlhLWxhYmVsPVwiJTMlXCIgb25jbGljaz1cInJldHVybiB0b2dnbGVBdWRpb0x5cmljcyhldmVudCwgdGhpcywgJyUxJV8lMCUnLCAnJTklJylcIj4lMyU8XC9zcGFuPlxuICAgICAgICBcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJhdWRpb19hdXRob3JcIiBvbmNsaWNrPVwiY3VyLmNhbmNlbENsaWNrPXRydWVcIj4lOCU8XC9zcGFuPlxuICAgICAgPFwvc3BhblxuICAgID48XC9kaXY+XG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIl9hdWRpb19wbGF5ZXJfd3JhcFwiPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIl9hdWRpb19seXJpY3Nfd3JhcCBhdWRpb19seXJpY3NcIiBkYXRhLW5vZHJhZz1cIjFcIj48XC9kaXY+XG48XC9kaXY+IiwiYXVkaW9fYml0c190b19jbHMiOiJ7XCIxXCI6XCJpbmxpbmVkXCIsXCIyXCI6XCJseXJpY3NcIixcIjRcIjpcImNhbmVkaXRcIixcIjhcIjpcImNhbmFkZFwiLFwiNjRcIjpcInJlY29tc1wiLFwiMTZcIjpcImNsYWltZWRcIixcIjMyXCI6XCJjbGFpbWVkX3RpdGxlXCIsXCIyNTZcIjpcImZyb21fcXVldWVcIixcIjUxMlwiOlwiaHFcIixcIjMyNzY4XCI6XCJsdGJcIixcIjE2Mzg0XCI6XCJscGJcIixcIjQwOTZcIjpcImNsYWltX2hpZGRlblwiLFwiMjA0OFwiOlwiY2xhaW1fbW9kZVwiLFwiODE5MlwiOlwiY2xhaW1fdW1hXCJ9In0pO2N1ci5pbmNWaWV3cyA9IGZ1bmN0aW9uKCkgewogIHZhciBvaWR2aWQgPSAnMjE1MjY5OV8xNjg1OTE3NDEnOwogIGlmIChjdXIudmlkZW9JbmMgJiYgY3VyLnZpZGVvSW5jW29pZHZpZF0pIHsKICAgIHJldHVybjsKICB9CiAgaWYgKCFjdXIudmlkZW9JbmMpIHsKICAgIGN1ci52aWRlb0luYyA9IHt9OwogICAgY3VyLnZpZGVvU3RhcnRlZCA9IHt9OwogIH0KICBjdXIudmlkZW9JbmNbb2lkdmlkXSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICBjdXIudmlkZW9JbmNbb2lkdmlkXSA9ICdmaW5pc2hlZCc7CiAgICB2YXIgbSA9IHdpbmRvdy5WaWRlbyA/IFZpZGVvdmlldy5nZXRWaWRlb01vZHVsZShvaWR2aWQpIDogY3VyLm1vZHVsZTsKICAgIHZhciBvaWQgPSAyMTUyNjk5OwogICAgaWYgKG9pZCkgewogICAgICBhamF4LnBvc3QoImFsX3ZpZGVvLnBocCIsIHthY3Q6J2luY192aWV3X2NvdW50ZXInLCBvaWQ6b2lkLCB2aWQ6MTY4NTkxNzQxLCBoYXNoOic3Mjk1YjM5Nzg0OTdmMDg2OThiOGNjYjdkMzBhMGM2NicsIG1vZHVsZTogbX0pOwogICAgfQogIH0sIDUwMDApOwogIGN1ci52aWRlb1N0YXJ0ZWRbb2lkdmlkXSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICBjdXIudmlkZW9TdGFydGVkW29pZHZpZF0gPSAnZmluaXNoZWQnOwogICAgdmFyIG0gPSB3aW5kb3cuVmlkZW8gPyBWaWRlb3ZpZXcuZ2V0VmlkZW9Nb2R1bGUob2lkdmlkKSA6IGN1ci5tb2R1bGU7CgogICAgdmFyIHZpZGVvY2F0ID0gJyc7CiAgICBpZiAod2luZG93LlZpZGVvY2F0ICYmIHdpbmRvdy5WaWRlbyAmJiBWaWRlby5pc0luQ2F0YWxvZygpKSB7CiAgICAgIHZhciBwbElkID0gVmlkZW9QbGF5bGlzdC5nZXRDdXJMaXN0SWQoKTsKICAgICAgaWYgKFZpZGVvY2F0LmlzVG9wM1BsYXlsaXN0KHBsSWQpKSB7CiAgICAgICAgdmlkZW9jYXQgPSAnZmVhdHVyZWQnOwogICAgICB9IGVsc2UgewogICAgICAgIHZpZGVvY2F0ID0gcGxJZDsKICAgICAgfQogICAgfQoKICAgIHZhciBvaWQgPSAyMTUyNjk5OwogICAgaWYgKG9pZCkgewogICAgICB3aW5kb3cubXZjdXIgPSB3aW5kb3cubXZjdXIgfHwge307CiAgICAgIG12Y3VyLnZpZXdTdGFydGVkVGltZXN0YW1wID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CiAgICAgIGFqYXgucG9zdCgiYWxfdmlkZW8ucGhwIiwge2FjdDondmlkZW9fdmlld19zdGFydGVkJywgb2lkOm9pZCwgdmlkOjE2ODU5MTc0MSwgaGFzaDonNzI5NWIzOTc4NDk3ZjA4Njk4YjhjY2I3ZDMwYTBjNjYnLCBtb2R1bGU6IG0sIHZpZGVvY2F0OiB2aWRlb2NhdH0pOwogICAgfQogIH0sIDApOwogIGN1ci5kZXN0cm95LnB1c2goZnVuY3Rpb24gKCkgewogICAgaWYgKGN1ci52aWRlb0luY1tvaWR2aWRdICYmIGN1ci52aWRlb0luY1tvaWR2aWRdICE9ICdmaW5pc2hlZCcpIHsKICAgICAgY2xlYXJUaW1lb3V0KGN1ci52aWRlb0luY1tvaWR2aWRdKTsKICAgIH0KICAgIGlmIChjdXIudmlkZW9TdGFydGVkW29pZHZpZF0gJiYgY3VyLnZpZGVvU3RhcnRlZFtvaWR2aWRdICE9ICdmaW5pc2hlZCcpIHsKICAgICAgY2xlYXJUaW1lb3V0KGN1ci52aWRlb1N0YXJ0ZWRbb2lkdmlkXSk7CiAgICB9CiAgfSk7Cn07Cm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvID0gJzIxNTI2OTlfMTY4NTkxNzQxJzsgCm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvSGFzaCA9ICdkNGVhNDY4N2YwMWNjMWVlOWQnOyAKbXZjdXIubXZEYXRhLmFkZGVkVmlkZW9TaGFyZUhhc2ggPSAnOGJhOGZkYWZjZjQ2ZTFiYzY4JzsKbXZjdXIubXZEYXRhLm5lZWRzTmV3ID0gMTs8IT4KCjxkaXYgY2xhc3M9Im12X2luZm9fd2lkZV9jb2x1bW4gZmxfbCI+CiAgCiAgPGRpdiBjbGFzcz0ibXZfdGl0bGVfYmxvY2siPgogICAgPGRpdiBpZD0ibXZfdmlld3MiIGNsYXNzPSJtdl92aWV3c19jb3VudCAiIG9ubW91c2VvdmVyPSIiPjM3IHZpZXdzPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl90aXRsZSIgaWQ9Im12X3RpdGxlIj5CRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0PC9kaXY+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfYWN0aW9uc19ibG9jayIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImZsYXRfYnV0dG9uIHNlY29uZGFyeSBidXR0b25fbGlnaHQgbXZfc2hhcmVfYnV0dG9uIiBzdHlsZT0iZGlzcGxheTpub25lOyIgb25jbGljaz0idmlkZW92aWV3LnNlbmRWaWRlbygpOyI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X3NoYXJlX2ljb24iPjwvc3Bhbj5TaGFyZQogICAgICA8L2Rpdj4KICAgICAgPGRpdiBpZD0ibXZfYWRkX3dyYXAiPjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJmbGF0X2J1dHRvbiBzZWNvbmRhcnkgYnV0dG9uX2xpZ2h0IG12X2VkaXRfYnV0dG9uIiBvbmNsaWNrPSJyZXR1cm4gdmlkZW92aWV3LnNob3dFZGl0Qm94KDE2ODU5MTc0MSwgMjE1MjY5OSkiIGlkPSJtdl9lZGl0X2J1dHRvbiI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X2VkaXRfaWNvbiI+PC9zcGFuPkVkaXQgdmlkZW8KICAgICAgPC9kaXY+CiAgICAgIAogICAgICA8ZGl2IGNsYXNzPSJtdl9tb3JlIGZsX2wiIGlkPSJtdl9tb3JlIj5Nb3JlPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KICAKICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfYmxvY2siPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgPGEgaHJlZj0iL2x5YW5vaS5raXJpbGwiIGNsYXNzPSJtdl9hdXRob3JfcGhvdG9fd3JhcCBmbF9sIj4KICAgICAgICA8aW1nIGlkPSJtdl9hdXRob3JfcGhvdG8iIGNsYXNzPSJtdl9hdXRob3JfcGhvdG8iIHNyYz0iaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjIzODI0L3Y2MjM4MjQ2OTkvNTU1NzUvQ0NRWjI5bDBCOWsuanBnIj4KICAgICAgPC9hPgogICAgICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfaW5mbyBmbF9sIj4KICAgICAgICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfbmFtZSI+CiAgICAgICAgICA8YSBjbGFzcz0ibWVtX2xpbmsiIGhyZWY9Ii9seWFub2kua2lyaWxsIj5LaXJpbGwgTHlhbm95PC9hPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im12X2luZm9fZGF0ZSI+TWF5IDEyLCAyMDE0IGF0IDk6MjMgYW0gZnJvbSA8YSBocmVmPSIvYXdheS5waHA/dG89aHR0cCUzQSUyRiUyRnd3dy55b3V0dWJlLmNvbSUyRndhdGNoJTNGdiUzRDRUaHdzNXdxNUdJIiB0YXJnZXQ9Il9ibGFuayI+WW91VHViZTwvYT4gPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgCiAgICA8L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJtdl9kZXNjcmlwdGlvbl9ibG9jayI+CiAgPGRpdiBjbGFzcz0ic2VsZWN0X2ZpeCBjbGVhcl9maXgiPgogICAgPGRpdiBpZD0ibXZfZGVzY3JpcHRpb24iIGNsYXNzPSJtdl9kZXNjIj4KICA8ZGl2IGNsYXNzPSJqc19tdl9kZXNjcl9maWVsZCBjYW50X2VkaXQiIGlkPSJtdl9kZXNjcl9maWVsZCI+QkVBVCBTT1VMIFNURVAgJiM5NzMzOyBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwICYjOTczMzsgMS0yIOzg/ywgzO7x6uLgIDIwMTQ8YnI+Q2hvcmVvZ3JhcGh5OiBLYXRpZTxicj48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZwcm9qZWN0ODE4LmNvbSIgdGFyZ2V0PSJfYmxhbmsiIHRhcmdldD0iX2JsYW5rIj5wcm9qZWN0ODE4LmNvbTwvYT4gfCA8YSBocmVmPSJodHRwOi8vdmsuY29tL3Byb2plY3Q4MThydXNzaWEiIG1lbnRpb25faWQ9InByb2plY3Q4MThydXNzaWEiIG9uY2xpY2s9InJldHVybiBtZW50aW9uQ2xpY2sodGhpcywgZXZlbnQpIiBvbm1vdXNlb3Zlcj0ibWVudGlvbk92ZXIodGhpcykiPnZrLmNvbS9wcm9qZWN0ODE4cnVzc2lhPC9hPiB8IDxhIGhyZWY9Imh0dHA6Ly92ay5jb20vcHJvamVjdDgxOCIgbWVudGlvbl9pZD0icHJvamVjdDgxOCIgb25jbGljaz0icmV0dXJuIG1lbnRpb25DbGljayh0aGlzLCBldmVudCkiIG9ubW91c2VvdmVyPSJtZW50aW9uT3Zlcih0aGlzKSI+dmsuY29tL3Byb2plY3Q4MTg8L2E+PGJyPi4uPC9kaXY+CiAgPGEgaWQ9Im12X2Rlc2NyX2V4cGFuZF90b2dnbGUiIGNsYXNzPSJ3YWxsX3Bvc3RfbW9yZSIgc3R5bGU9IiIgb25jbGljaz0iVmlkZW92aWV3LmV4cGFuZERlc2NyKHRoaXMpIj5FeHBhbmQgdGV4dIU8L2E+CiAgPGRpdiBpZD0ibXZfZGVzY19mdWxsX3RleHQiPkJFQVQgU09VTCBTVEVQICYjOTczMzsgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCAmIzk3MzM7IDEtMiDs4P8sIMzu8eri4CAyMDE0PGJyPkNob3Jlb2dyYXBoeTogS2F0aWU8YnI+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGcHJvamVjdDgxOC5jb20iIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+cHJvamVjdDgxOC5jb208L2E+IHwgPGEgaHJlZj0iaHR0cDovL3ZrLmNvbS9wcm9qZWN0ODE4cnVzc2lhIiBtZW50aW9uX2lkPSJwcm9qZWN0ODE4cnVzc2lhIiBvbmNsaWNrPSJyZXR1cm4gbWVudGlvbkNsaWNrKHRoaXMsIGV2ZW50KSIgb25tb3VzZW92ZXI9Im1lbnRpb25PdmVyKHRoaXMpIj52ay5jb20vcHJvamVjdDgxOHJ1c3NpYTwvYT4gfCA8YSBocmVmPSJodHRwOi8vdmsuY29tL3Byb2plY3Q4MTgiIG1lbnRpb25faWQ9InByb2plY3Q4MTgiIG9uY2xpY2s9InJldHVybiBtZW50aW9uQ2xpY2sodGhpcywgZXZlbnQpIiBvbm1vdXNlb3Zlcj0ibWVudGlvbk92ZXIodGhpcykiPnZrLmNvbS9wcm9qZWN0ODE4PC9hPjxicj48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZmYWNlYm9vay5jb20lMkZQcm9qZWN0ODE4UnVzc2lhIiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPmZhY2Vib29rLmNvbS9Qcm9qZWN0ODE4UnVzc2lhPC9hPjxicj48YSBocmVmPSIvYXdheS5waHA/dG89aHR0cCUzQSUyRiUyRmluc3RhZ3JhbS5jb20lMkZwcm9qZWN0ODE4IiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPmluc3RhZ3JhbS5jb20vcHJvamVjdDgxODwvYT48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZ0d2l0dGVyLmNvbSUyRnByb2plY3Q4MTgiIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+dHdpdHRlci5jb20vcHJvamVjdDgxODwvYT48YnI+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGeW91dHViZS5jb20lMkZQcm9qZWN0ODE4UnVzc2lhIiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPnlvdXR1YmUuY29tL1Byb2plY3Q4MThSdXNzaWE8L2E+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGeW91dHViZS5jb20lMkZQcm9qZWN0ODE4Y2hhbXAiIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+eW91dHViZS5jb20vUHJvamVjdDgxOGNoYW1wPC9hPjwvZGl2PgogIDxkaXYgY2xhc3M9InByICIgaWQ9Im12X2lubGluZV9lZGl0X3ByIj48ZGl2IGNsYXNzPSJwcl9idCI+PC9kaXY+PGRpdiBjbGFzcz0icHJfYnQiPjwvZGl2PjxkaXYgY2xhc3M9InByX2J0Ij48L2Rpdj48L2Rpdj4KPC9kaXY+CiAgPC9kaXY+CjwvZGl2PgogIDxkaXYgY2xhc3M9Im12X2NvbW1lbnRzX2Jsb2NrIHdhbGxfbW9kdWxlIj4KICAgIDxkaXYgaWQ9InBvc3QyMTUyNjk5X3ZpZGVvMTY4NTkxNzQxbXYiPgogICAgICA8ZGl2IGlkPSJtdl9jb21tZW50c193cmFwIj4KICA8ZGl2IGlkPSJtdl9jb21tZW50c19oZWFkZXIiIG9uY2xpY2s9IlZpZGVvdmlldy5tb3JlQ29tbWVudHMoKTsiIGNsYXNzPSJtdl9jb21tZW50c19leHBhbmRlZCI+PC9kaXY+CiAgPGRpdiBpZD0ibXZfY29tbWVudHNfc3VtbWFyeSIgY2xhc3M9Im12X2NvbW1lbnRzX3N1bW1hcnkgbXZfY29tbWVudHNfZXhwYW5kZWQiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij48L2Rpdj4KICA8ZGl2IGlkPSJtdl9jb21tZW50cyI+PC9kaXY+CjwvZGl2PgogICAgICAKICAgIDwvZGl2PgogIDwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0ibXZfaW5mb19uYXJyb3dfY29sdW1uIGZsX3IiPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2Jsb2NrIj4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9ibG9ja190aXRsZSI+T3RoZXIgdmlkZW9zPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4ODE2MjA0IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODgxNjIwNCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjE5OTI3L3UyMTUyNjk5L3ZpZGVvL2xfZWZkMWM3MDkuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MDo1NjwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4ODE2MjA0IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODgxNjIwNCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IlR3b01hbiBwcm9qZWN0LiBQcm9tbzIiPlR3b01hbiBwcm9qZWN0LiBQcm9tbzI8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjU0IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2MjQ1NTc5OCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjI0NTU3OTgnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzYwNzgvdTMyMDY3MDIvdmlkZW8vbF9hMzM1MTQ4Zi5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4yOjQxPC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjI0NTU3OTgiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTYyNDU1Nzk4JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iTGlwdG9uIERhbmNlIC0gz/Do8e7l5Ojt/+nx/yDqIPLg7fbzJiMzMzsgKPTr5fjs7uEg7eAgwsTN1SkiPkxpcHRvbiBEYW5jZSAtIM/w6PHu5eTo7f/p8f8g6iDy4O328yYjMzM7ICj06+X47O7hIO3gIMLEzdUpPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj4zMiB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjY5NTI2MDYiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY2OTUyNjA2JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M1MzQyMjEvdTU0MTM3MC92aWRlby9sXzdhYjU0NzU2LmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjA6MDk8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2Njk1MjYwNiIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjY5NTI2MDYnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSJObyBuYW1lIj5ObyBuYW1lPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj4xNjMgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY0NzU3ODM2IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2NDc1NzgzNicsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTMzNjAzL3U4Njg3MTI4OS92aWRlby9sX2M3ZjMxYWNkLmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjI6Mjc8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2NDc1NzgzNiIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjQ3NTc4MzYnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSJBbGljZSBieSBLaXJpbGwgTHlhbm9pLiI+QWxpY2UgYnkgS2lyaWxsIEx5YW5vaS48L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjE1OSB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjc3MTE3MDMiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY3NzExNzAzJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M2MDc0MjAvdTEzOTU0MDEzL3ZpZGVvL2xfYzI3ZmYxMjkuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MjoyOTwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY3NzExNzAzIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2NzcxMTcwMycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IlBBUlRZIDExNCAuWyBTRUNSRVQgUExBQ0VdIj5QQVJUWSAxMTQgLlsgU0VDUkVUIFBMQUNFXTwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+NDUgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYzMjE5ODczIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2MzIxOTg3MycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjA3NS91MTY2NjY3NzI4L3ZpZGVvL2xfM2U5MTg2MGUuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+NTo0NTwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYzMjE5ODczIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2MzIxOTg3MycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IsrCzSAyMDEyIM/w5ez85fDq4CAxLzggLSDM6PHxIOzo8OAgLSDM8+f76uDr6uAiPsrCzSAyMDEyIM/w5ez85fDq4CAxLzggLSDM6PHxIOzo8OAgLSDM8+f76uDr6uA8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjQ1OSB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjY2NzY5ODMiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY2Njc2OTgzJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M1MzI0MjIvdTIxNTI2OTkvdmlkZW8vbF9lOTEwNjhmNy5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4xOjM2PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjY2NzY5ODMiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY2Njc2OTgzJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iVHdvTWFuIFByb2plY3QgcHJvbW90aW9uLi4uICggaGlwLWhvcCwgZHVic3RlcCwgYnJlYWsgZGFuY2UsIGZyZWVzdHlsZSwgb2xkICZhbXA7IG5ldyBkYW5jZSBzY2hvb2wpIj5Ud29NYW4gUHJvamVjdCBwcm9tb3Rpb24uLi4gKCBoaXAtaG9wLCBkdWJzdGVwLCBicmVhayBkYW5jZSwgZnJlZXN0eWxlLCBvbGQgJmFtcDsgbmV3IGRhbmNlIHNjaG9vbCk8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjEsMTEyIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8xMTAyNzgxMl80NTYyMzkxNzMiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzExMDI3ODEyXzQ1NjIzOTE3MycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jODM2NDM2L3Y4MzY0MzY4MTIvZWZlMi9WeGRFcVU4eUpBZy5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4wOjE3PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMTEwMjc4MTJfNDU2MjM5MTczIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcxMTAyNzgxMl80NTYyMzkxNzMnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSJQYXJhbm9pYSAyMDE2IMXi8fLl4+3l5eLgIMDt4PHy4PHo/yI+UGFyYW5vaWEgMjAxNiDF4vHy5ePt5eXi4CDA7eDx8uDx6P88L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjI4MiB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjg5ODg5NzciICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY4OTg4OTc3JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M1NDAzMDEvdTI0NjEwNTA4OS92aWRlby9sX2RiNzFiNjY2LmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjA6MzA8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2ODk4ODk3NyIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjg5ODg5NzcnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSJNaXgt8uXw6P8g+O7zINTw6Oog2O7zIj5NaXgt8uXw6P8g+O7zINTw6Oog2O7zPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj4yMiB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvLTk4ODkxNjI1XzQ1NjIzOTAyOSIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnLTk4ODkxNjI1XzQ1NjIzOTAyOScsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jODM2NTI4L3UyNzExMzA0MzcvdmlkZW8vbF8zNjJhODJkZi5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj40OjAyPC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvLTk4ODkxNjI1XzQ1NjIzOTAyOSIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnLTk4ODkxNjI1XzQ1NjIzOTAyOScsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9IkFOQVNUQVNJQSBFVlNURUdORUVWQSAtIFdpbm5lciBvZiB0aGUgUHJvZmVzc2lvbmFsIENhdGVnb3J5IChXb21lbikiPkFOQVNUQVNJQSBFVlNURUdORUVWQSAtIFdpbm5lciBvZiB0aGUgUHJvZmVzc2lvbmFsIENhdGVnb3J5IChXb21lbik8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjIsNDg2IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+PCE+PCE+PCFqc29uPnsibGFuZyI6eyJnbG9iYWxfc2hvcnRfZGF0ZV90aW1lIjpbIiIsIntkYXl9IHttb250aH0gYXQge2hvdXJ9OnttaW51dGV9IHthbV9wbX0iLCJ5ZXN0ZXJkYXkgYXQge2hvdXJ9OnttaW51dGV9IHthbV9wbX0iLCJ0b2RheSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInRvbW9ycm93IGF0IHtob3VyfTp7bWludXRlfSB7YW1fcG19Il0sInJlcGx5X3RvX3Bvc3QiOiJZb3VyIGNvbW1lbnQuLiIsIndhbGxfTV9yZXBsaWVzX29mX04iOlsiIiwiJXMgY29tbWVudCBvZiB7bGlua317YWxsfXtcL2xpbmt9IiwiJXMgY29tbWVudHMgb2Yge2xpbmt9e2FsbH17XC9saW5rfSJdLCJ3YWxsX21vcmVfcmVwbGllcyI6WyIiLCJzaG93ICVzIG1vcmUgY29tbWVudCIsInNob3cgJXMgbW9yZSBjb21tZW50cyJdLCJ3YWxsX2FsbF9yZXBsaWVzIjoiYWxsIGNvbW1lbnRzIiwiZG9udF9hdHRhY2giOiJSZW1vdmUgYXR0YWNobWVudCIsInZpZGVvX1hfY29tbXMiOlsiIiwiJXMgY29tbWVudCIsIiVzIGNvbW1lbnRzIl0sInZpZGVvX2VkaXQiOiJFZGl0IHZpZGVvIiwidmlkZW9fZWRpdF9kZXNjIjoiRWRpdCBkZXNjcmlwdGlvbiIsInZpZGVvX2VkaXRfZGVzY19pbnRybyI6IkVudGVyIGRlc2NyaXB0aW9uIiwidmlkZW9fc2hvd19wcmV2aW91c19jb21tZW50cyI6WyIiLCJTaG93ICVzIHByZXZpb3VzIGNvbW1lbnQiLCJTaG93ICVzIHByZXZpb3VzIGNvbW1lbnRzIl0sInZpZGVvX2FyZV95b3Vfc3VyZV9jbG9zZSI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjbG9zZSB0aGlzIHZpZGVvPyIsInZpZGVvX2FyZV95b3Vfc3VyZV9jbG9zZV90aXRsZSI6IkNsb3NlIHZpZGVvIiwicHJvZmlsZV9tZW50aW9uX25vdF9mb3VuZCI6IlVzZXIgd2FzIG5vdCBmb3VuZCIsInByb2ZpbGVfbWVudGlvbl9zdGFydF90eXBpbmciOiJTdGFydCB0eXBpbmcgYSBuYW1lLi4iLCJ2aWRlb19hbGJ1bV9pc19wcml2YXRlX3R0IjoiVGhpcyBhbGJ1bSBpcyBwcml2YXRlIiwidmlkZW9fYWRkX3RvX215X3BsYXlsaXN0IjoiQWRkIHRvIE15IFZpZGVvcyIsInZpZGVvX2FkZGVkX3RvX215X3BsYXlsaXN0IjoiQWRkZWQiLCJ2aWRlb19jaGFuZ2VzX3NhdmVkIjoiQ2hhbmdlcyBzYXZlZCIsInZpZGVvX2FkZF9hbGJ1bSI6IkNyZWF0ZSBhbGJ1bSIsInZpZGVvX2FkZF9wcml2YXRlX2FsYnVtIjoiQ3JlYXRlIGEgcHJpdmF0ZSBhbGJ1bSIsInZpZGVvX2FkZF90b19ncm91cCI6IkFkZCB0byBjb21tdW5pdHkiLCJ2aWRlb19leHBvcnRfYWN0aW9uIjoiRXhwb3J0IiwidmlkZW9fc3RhdGlzdGljcyI6IlN0YXRpc3RpY3MiLCJ2aWRlb19jb21wbGFpbiI6IlJlcG9ydCIsInZpZGVvX3NlbGVjdF9hbGJ1bXMiOiJTZWxlY3QgYWxidW1zIiwidmlkZW9fdGNfc3VyZV9kZWxldGUiOiJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgdmlkZW8/PGJyPjxicj5Zb3Ugd2lsbCBub3QgYmUgYWJsZSB0byByZXN0b3JlIHRhZ3MgYW5kIGNvbW1lbnRzLiIsInZpZGVvX3RjX2RlbGV0ZSI6IkRlbGV0ZSIsInZpZGVvX2RlbGV0ZV9kaWFsb2dfdGl0bGUiOiJEZWxldGUgdmlkZW8iLCJ2aWRlb19kZWxldGVfYm94X25vX3RpdGxlIjoiTm8iLCJ2aWRlb19tZW51X2RlbGV0ZSI6IkRlbGV0ZSB2aWRlbyIsInZpZGVvX3ZpZXdzX2NvdW50X3R0X3RleHQiOiJPcmlnaW5hbCB2aWRlbyB2aWV3cyAodG90YWwgdmlld3MpIiwidmlkZW9fb25seV9wcml2YXRlX3ZpZGVvIjoiVGhpcyB2aWRlbyBjYW4gb25seSBiZSBhZGRlZCB0byBhIHByaXZhdGUgYWxidW0iLCJ2aWRlb19sZWF2ZV9jbG9zZWRfZ3JvdXBfdGl0bGUiOiJMZWF2ZSBjbG9zZWQgY29tbXVuaXR5IiwidmlkZW9fbGVhdmVfY2xvc2VkX2dyb3VwX3RleHQiOiJZb3UgYXJlIGFib3V0IHRvIGxlYXZlIGEgY2xvc2VkIGNvbW11bml0eS4gSXQgbWF5IG5vdCBiZSB0aGF0IGVhc3kgdG8gY29tZSBiYWNrLiBMZWF2ZSB0aGUgY29tbXVuaXR5PyIsInZpZGVvX2xlYXZlX2FkbWluZWRfZ3JvdXBfdGV4dCI6IllvdSBhcmUgYW4gPGI+YWRtaW5pc3RyYXRvcjxcL2I+IGluIHRoaXMgY29tbXVuaXR5LiBZb3Ugd2lsbCBsb3NlIHRoaXMgcG9zaXRpb24gaWYgeW91IGxlYXZlIG5vdy4gTGVhdmUgdGhlIGNvbW11bml0eT8iLCJ2aWRlb192aWV3X3N1YnNjcmliZV90b19hdXRob3IiOiJTdWJzY3JpYmUiLCJ2aWRlb192aWV3X3N1YnNjcmliZWRfbXNnIjoiRm9sbG93aW5nIiwidmlkZW9fcGxheWVyX25leHRfdGl0bGUiOiJOZXh0IHZpZGVvIiwidmlkZW9faV9saWtlIjoiTGlrZSIsInZpZGVvX3NoYXJlX3dpdGhfZnJpZW5kcyI6IlNoYXJlIiwidmlkZW9fYWRkX2ZsYXNoIjoiQWRkIHRvIE15IFZpZGVvcyIsInZpZGVvX2FkZGVkX2ZsYXNoIjoiVmlkZW8gYWRkZWQgdG8gTXkgVmlkZW9zIiwidmlkZW9fY29tbWVudHNfc3VtbWFyeSI6WyIiLCIlcyBjb21tZW50IiwiJXMgY29tbWVudHMiXSwidmlkZW9fTl92aWV3c19saXN0IjpbIiIsIiVzIHZpZXciLCIlcyB2aWV3cyJdLCJ2aWRlb19wbGF5bGlzdF9yZXZlcnNlX3R0IjoiUmV2ZXJzZSBvcmRlciIsInZpZGVvX3BsYXlsaXN0X2F1dG9wbGF5X2Rpc2FibGVfdHQiOiJEaXNhYmxlIGF1dG9wbGF5IiwidmlkZW9fcGxheWxpc3RfYXV0b3BsYXlfZW5hYmxlX3R0IjoiRW5hYmxlIGF1dG9wbGF5IiwidmlkZW9fbGl2ZV9OX3dhdGNoaW5nIjpbIiIsIiVzIGlzIHdhdGNoaW5nIG5vdyIsIiVzIGFyZSB3YXRjaGluZyBub3ciXSwidmlkZW9fbGl2ZV9jaGF0X21zZ190b29fbG9uZyI6IlRoZSBtZXNzYWdlIGlzIHRvbyBsb25nIiwidmlkZW9fbGl2ZV9jaGF0X3Rvb19mYXN0IjoiVG9vIGZhc3SFIiwidmlkZW9fYXJpYV9taW5pbWl6ZV9wbGF5bGlzdCI6IkhpZGUgcGxheWxpc3QiLCJ2aWRlb19hcmlhX2V4cGFuZF9wbGF5bGlzdCI6IlNob3cgcGxheWxpc3QiLCJ2aWRlb19hcmlhX21pbmltaXplX2NoYXQiOiJIaWRlIGNoYXQiLCJ2aWRlb19hcmlhX2V4cGFuZF9jaGF0IjoiRXhwYW5kIGNoYXQiLCJ2aWRlb19saXZlX25vdGlmeV9zdWJzY3JpYmVkIjoiU3RyZWFtIG5vdGlmaWNhdGlvbnMgZW5hYmxlZCIsInZpZGVvX2xpdmVfbm90aWZ5X3Vuc3Vic2NyaWJlZCI6IlN0cmVhbSBub3RpZmljYXRpb25zIGRpc2FibGVkIiwidmlkZW9fbGl2ZV95b3VfaGF2ZV9YX21vbmV5IjoiWW91IGhhdmUge21vbmV5fSIsInZpZGVvX3VuZm9sbG93X2ZyaWVuZF90aXRsZSI6IlJlbW92ZSBmcm9tIGZyaWVuZHMiLCJ2aWRlb191bmZvbGxvd19mcmllbmRfdGV4dCI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZW1vdmUgS2lyaWxsIGZyb20geW91ciBmcmllbmQgbGlzdD8ifSwibXZEYXRhIjp7InRpdGxlIjoiQkVBVCBTT1VMIFNURVAglyBSREMxNCBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwLCBNYXkgMS0yLCBNb3Njb3cgMjAxNCIsImRlc2MiOiJCRUFUIFNPVUwgU1RFUCAmIzk3MzM7IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAgJiM5NzMzOyAxLTIg7OD/LCDM7vHq4uAgMjAxNDxicj5DaG9yZW9ncmFwaHk6IEthdGllPGJyPjxicj5wcm9qZWN0ODE4LmNvbSB8IHZrLmNvbVwvcHJvamVjdDgxOHJ1c3NpYSB8IHZrLmNvbVwvcHJvamVjdDgxODxicj48YnI+ZmFjZWJvb2suY29tXC9Qcm9qZWN0ODE4UnVzc2lhPGJyPmluc3RhZ3JhbS5jb21cL3Byb2plY3Q4MTg8YnI+dHdpdHRlci5jb21cL3Byb2plY3Q4MTg8YnI+PGJyPnlvdXR1YmUuY29tXC9Qcm9qZWN0ODE4UnVzc2lhPGJyPnlvdXR1YmUuY29tXC9Qcm9qZWN0ODE4Y2hhbXAiLCJvaWQiOjIxNTI2OTksInZpZCI6MTY4NTkxNzQxLCJhdXRob3JJZCI6MjE1MjY5OSwiYXV0aG9yUGhvdG8iOiJodHRwczpcL1wvcHAudXNlcmFwaS5jb21cL2M2MjM4MjRcL3Y2MjM4MjQ2OTlcLzU1NTc1XC9DQ1FaMjlsMEI5ay5qcGciLCJhdXRob3JIcmVmIjoiXC9seWFub2kua2lyaWxsIiwidmlkZW9SYXciOiIyMTUyNjk5XzE2ODU5MTc0MSIsImhhc2giOiIwMjM2NDZjMGJjNzExMGFkOTEiLCJsaWtlSGFzaCI6IjMwY2MxODkyZjgxZGViNjIzNSIsImVkaXRIYXNoIjoiIiwiZWRpdEZyb21Ecm9wZG93biI6MCwiaGlkZUVkaXQiOm51bGwsImNvbW1zaG93biI6MCwiY29tbWNvdW50IjowLCJsaWtlZCI6ZmFsc2UsImxpa2VzIjowLCJhZGRlZCI6MCwiY2FuX2FkZCI6MCwiYWRkX2hhc2giOiJmZmI4NDJkMGNlNmZjMTY4YTciLCJub2xpa2VzIjoxLCJkdXJhdGlvbiI6Mjk5LCJ2c2Vnc1NpemUiOjI5LjAwMDAwMCwicGxheWxpc3RzIjpbXSwidXBsb2FkZWQiOmZhbHNlLCJwdWJsaXNoZWQiOnRydWUsIm5vQ29udHJvbHMiOmZhbHNlLCJwbGF5bGlzdEFkZEhhc2giOiJmZmI4NDJkMGNlNmZjMTY4YTciLCJkZWxldGVIYXNoIjoiIiwicmVwb3J0UmVhc29ucyI6W10sInJlcG9ydEhhc2giOiIxZGNjM2YyZDQxNjlmNTUwYzAiLCJpbmZvIjpbMjE1MjY5OSwxNjg1OTE3NDEsImh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzYxNzgzMVwvdTk2MTIzMzAzXC92aWRlb1wvbF8yN2U0ZmY1Yy5qcGciLCJCRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0IiwzLCI0OjU5IiwiIiwiIiwiPGEgaHJlZj1cIlwvbHlhbm9pLmtpcmlsbFwiIGNsYXNzPVwibWVtX2xpbmtcIj5LaXJpbGwgTHlhbm95PFwvYT4iLDEzOTk4NzU3ODMsMzddLCJjYW5FeHBvcnQiOjEsImlzVmlkZW9BZHMiOmZhbHNlLCJkZWxldGVGcm9tQWxsQWxidW1zSGFzaCI6IiIsImlzX2xpdmUiOjAsImlzX2FjdGl2ZV9saXZlIjowLCJQTEFZTElTVF9BRERFRF9JRCI6LTIsIlBMQVlMSVNUX1VQTE9BREVEX0lEIjotMSwibm9QdWJsaWNBZGQiOmZhbHNlLCJQTEFZRVJfRlVMTF9XSURUSCI6OTYwLCJQTEFZRVJfRlVMTF9IRUlHSFQiOjU0MCwiUExBWUVSX1BMX1dJRFRIIjo3MjAsIlBMQVlFUl9QTF9IRUlHSFQiOjQwNSwibF90eXBlIjoyLCJreiI6MCwidG5zX21vbmV0aXplZCI6dHJ1ZX0sIndhbGxUcGwiOnsicmVwbHlfYm94IjoiPGRpdiBpZD1cInJlcGx5X2JveF93cmFwJXBvc3RfaWQlXCI+PGRpdiBjbGFzcz1cInJlcGx5X2JveF9pbm5lcl93cmFwXCI+XG4gIDxkaXYgY2xhc3M9XCJyZXBseV9mYWtlYm94X3dyYXBcIiBpZD1cInJlcGx5X2Zha2Vib3glcG9zdF9pZCVcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwuc2hvd0VkaXRSZXBseSgnJXBvc3RfaWQlJywgZXZlbnQpXCIgZGF0YS1vd25lci1waG90bz1cIiVvd25lcl9waG90byVcIiBkYXRhLW93bmVyLWhyZWY9XCIlb3duZXJfaHJlZiVcIj5cbiAgICA8ZGl2IGNsYXNzPVwicG9zdF9maWVsZF91c2VyXCI+XG4gIDxhIGNsYXNzPVwicG9zdF9maWVsZF91c2VyX2xpbmtcIiBocmVmPVwiXC9pZFwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KVwiPlxuICAgIDxpbWcgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfaW1hZ2VcIiBzcmM9XCJcL2ltYWdlc1wvY2FtZXJhXzUwLnBuZ1wiIFwvPlxuICA8XC9hPlxuPFwvZGl2PiV1c2VyX2ltYWdlJVxuICAgIDxkaXYgY2xhc3M9XCJyZXBseV9mYWtlYm94XCI+TGVhdmUgYSBjb21tZW50Li4uPFwvZGl2PjxcL2Rpdj5cbjxcL2Rpdj48XC9kaXY+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBpZD1cInBvc3RfaGFzaCVwb3N0X2lkJVwiIHZhbHVlPVwiMTQ5MDY0ODQ5OV8wMTYzNWZkZDFmNTFlMzkwNzJcIiBjYW5fcmVwbHlfYXNfZ3JvdXA9XCIlY2FuX3JlcGx5X2FzX2dyb3VwJVwiIFwvPiIsInJlcGx5X2Zvcm0iOiI8ZGl2IGlkPVwicmVwbHlfYm94JXBvc3RfaWQlXCIgY2xhc3M9XCJzdWJtaXRfcG9zdF9ib3ggcmVwbHlfYm94IGNsZWFyX2ZpeCBfc3VibWl0X3Bvc3RfYm94XCIgb25jbGljaz1cInJldHVybiBjYW5jZWxFdmVudChldmVudClcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X2Zvcm1cIj5cbiAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIGlkPVwicmVwbHlfdG8lcG9zdF9pZCVcIiB2YWx1ZT1cIlwiIFwvPlxuICAgIDxkaXYgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJcIj5cbiAgPGEgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfbGlua1wiIGhyZWY9XCJcL2lkXCIgb25jbGljaz1cInJldHVybiBuYXYuZ28odGhpcywgZXZlbnQpXCI+XG4gICAgPGltZyBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9pbWFnZVwiIHNyYz1cIlwvaW1hZ2VzXC9jYW1lcmFfNTAucG5nXCIgXC8+XG4gIDxcL2E+XG48XC9kaXY+JXVzZXJfaW1hZ2UlXG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2ZpZWxkX3dyYXAgX2Vtb2ppX2ZpZWxkX3dyYXBcIj5cbiAgICAgIDxkaXYgaWQ9XCJyZXBseV9zbWlsZSVwb3N0X2lkJVwiIGNsYXNzPVwiZW1vamlfc21pbGVfd3JhcCAgX2Vtb2ppX3dyYXBcIj5cbiAgPGRpdiBjbGFzcz1cImVtb2ppX3NtaWxlIF9lbW9qaV9idG5cIiB0aXRsZT1cIlVzZSB0aGUgVEFCIGtleSB0byBpbnNlcnQgZW1vamkgZmFzdGVyXCIgb25tb3VzZW92ZXI9XCJyZXR1cm4gRW1vamkuc2hvdyh0aGlzLCBldmVudCk7XCIgb25tb3VzZW91dD1cInJldHVybiBFbW9qaS5oaWRlKHRoaXMsIGV2ZW50KTtcIiBvbmNsaWNrPVwicmV0dXJuIGNhbmNlbEV2ZW50KGV2ZW50KTtcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZW1vamlfc21pbGVfaWNvblwiPjxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PlxuICAgICAgPGRpdiBpZD1cInJlcGx5X2ZpZWxkJXBvc3RfaWQlXCIgY2xhc3M9XCJyZXBseV9maWVsZCBzdWJtaXRfcG9zdF9maWVsZFwiIG9uZm9jdXM9XCJyZXR1cm4gV2FsbC5zaG93RWRpdFJlcGx5KCclcG9zdF9pZCUnLCBldmVudCk7XCIgY29udGVudGVkaXRhYmxlPVwidHJ1ZVwiIHBsYWNlaG9sZGVyPVwiTGVhdmUgYSBjb21tZW50Li4uXCI+PFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGlkPVwic3VibWl0X3JlcGx5JXBvc3RfaWQlXCIgY2xhc3M9XCJzdWJtaXRfcG9zdCBjbGVhcl9maXhcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV93YXJuIGNsZWFyXCIgaWQ9XCJyZXBseV93YXJuJXBvc3RfaWQlXCI+PFwvZGl2PlxuICAgICAgPGRpdiBpZD1cInJlcGx5X21lZGlhX3ByZXZpZXclcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X21lZGlhX3ByZXZpZXcgY2xlYXJfZml4IG1lZGlhX3ByZXZpZXdcIj48XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYWRkcG9zdF9idXR0b25fd3JhcFwiPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZmxhdF9idXR0b24gYWRkcG9zdF9idXR0b25cIiBpZD1cInJlcGx5X2J1dHRvbiVwb3N0X2lkJVwiIG9uY2xpY2s9XCJ3YWxsLnNlbmRSZXBseSgnJXBvc3RfaWQlJywgZXZlbnQsIHt9KTtcIiBvbm1vdXNlb3Zlcj1cIndhbGwucmVwbHlTdWJtaXRUb29sdGlwKCclcG9zdF9pZCUnLCAxLCB0aGlzKTtcIiBvbm1vdXNlb3V0PVwid2FsbC5yZXBseVN1Ym1pdFRvb2x0aXAoJyVwb3N0X2lkJScsIDAsIHRoaXMpO1wiPlBvc3Q8XC9idXR0b24+XG4gICAgICA8XC9kaXY+XG4gICAgICAlYWRkX2J1dHRvbnMlXG4gICAgICA8ZGl2IGNsYXNzPVwicGFnZV9hZGRfbWVkaWFcIiBpZD1cInJlcGx5X2FkZF9tZWRpYV8lcG9zdF9pZCVcIj48XC9kaXY+XG4gICAgICA8ZGl2IGlkPVwicmVwbHlfdG9fdGl0bGUlcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X3RvX3RpdGxlIGFkZHBvc3RfcG9wdFwiPjxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJyZXBseV9mb3JtX29mZmljaWFsIjoiPGRpdiBjbGFzcz1cImFkZHBvc3Rfb3B0IGNoZWNrYm94X29mZmljaWFsXCIgaWQ9XCJyZXBseV9hc19ncm91cCVwb3N0X2lkJVwiIG9uY2xpY2s9XCJ3YWxsLnJlcGx5QXNHcm91cCh0aGlzKTtcIiBvbm1vdXNlb3Zlcj1cIndhbGwucmVwbHlBc0dyb3VwT3Zlcih0aGlzLCAnb24gYmVoYWxmIG9mIHRoZSB1c2VyJywgJ3Bvc3QgYXMgY29tbXVuaXR5Jyk7XCIgb25mb2N1cz1cIndhbGwucmVwbHlBc0dyb3VwT3Zlcih0aGlzLCAnb24gYmVoYWxmIG9mIHRoZSB1c2VyJywgJ3Bvc3QgYXMgY29tbXVuaXR5Jyk7XCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImJ1dHRvblwiIGFyaWEtbGFiZWw9XCJvbiBiZWhhbGYgb2YgdGhlIHVzZXJcIj5cbiAgPGltZyBjbGFzcz1cInRodW1iX29mZlwiIHNyYz1cIlwvaW1hZ2VzXC9jYW1lcmFfNTAucG5nXCIgXC8+XG4gIDxpbWcgY2xhc3M9XCJ0aHVtYl9vblwiIHNyYz1cIiVvd25lcl9waG90byVcIiBcLz5cbjxcL2Rpdj4iLCJyZXBseV9mb3JtX2dyb3VwX2ltYWdlIjoiPGRpdiBjbGFzcz1cInBvc3RfZmllbGRfZ3JvdXBcIj5cbiAgPGEgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfbGlua1wiIGhyZWY9XCIlb3duZXJfaHJlZiVcIiBvbmNsaWNrPVwicmV0dXJuIG5hdi5nbyh0aGlzLCBldmVudClcIj5cbiAgICA8aW1nIGNsYXNzPVwicG9zdF9maWVsZF91c2VyX2ltYWdlXCIgc3JjPVwiJW93bmVyX3Bob3RvJVwiIFwvPlxuICA8XC9hPlxuPFwvZGl2PiIsInJlcGx5X211bHRpbGluZSI6ZmFsc2UsInJlcGx5X211bHRpbGluZV9pbnRybyI6dHJ1ZSwicmVwbHlfbGlua193cmFwIjoiPGRpdiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPlxuICA8YSBjbGFzcz1cInJlcGx5X2xpbmsgX3JlcGx5X2xua1wiPlJlcGx5PFwvYT5cbjxcL2Rpdj4iLCJyZXBseV9saW5rX3RvIjoiIDxhIGNsYXNzPVwicmVwbHlfdG9cIj5yZXBsaWVkIHRvICV0b191c2VyJTxcL2E+IiwicmVwbHlfZmFzdCI6IjxkaXYgaWQ9XCJwb3N0JXJlcGx5X2lkJVwiIGNsYXNzPVwicmVwbHkgcmVwbHlfZGl2ZWQgY2xlYXIgIF9wb3N0XCIgZGF0YS1wb3N0LWlkPVwiJXJlcGx5X2lkJVwiID5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X3dyYXAgX3JlcGx5X2NvbnRlbnQgX3Bvc3RfY29udGVudCBjbGVhcl9maXhcIj5cbiAgICBcbiAgICA8YSBjbGFzcz1cInJlcGx5X2ltYWdlXCIgaHJlZj1cIlwvaWRcIj5cbiAgICAgIDxpbWcgc3JjPVwiXC9pbWFnZXNcL2NhbWVyYV81MC5wbmdcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiBjbGFzcz1cInJlcGx5X2ltZ1wiIGFsdD1cIkRFTEVURURcIiBcLz5cbiAgICA8XC9hPlxuICAgIDxkaXYgY2xhc3M9XCJyZXBseV9jb250ZW50XCIgPlxuICAgICAgXG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfYXV0aG9yXCI+XG4gICAgICAgIDxhIGNsYXNzPVwiYXV0aG9yXCIgaHJlZj1cIlwvaWRcIiBkYXRhLWZyb20taWQ9XCIwXCI+REVMRVRFRDxcL2E+JXRvX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfdGV4dFwiID48ZGl2IGNsYXNzPVwid2FsbF9yZXBseV90ZXh0XCI+JW1lc3NhZ2UlPFwvZGl2PjxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9mb290ZXIgY2xlYXJfZml4XCIgaWQ9XCJ3cGVfYm90dG9tJXJlcGx5X2lkJVwiPlxuICAgICAgICBcbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2RhdGVcIj4lZGF0ZSU8XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9saW5rX3dyYXBcIj5cbiAgPGEgY2xhc3M9XCJyZXBseV9saW5rIF9yZXBseV9sbmtcIj5SZXBseTxcL2E+XG48XC9kaXY+XG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwicmVwbHlfbXVsdGlsaW5lX2hpbnQiOiI8ZGl2IGNsYXNzPVwicmVwbHlfc3VibWl0X2hpbnRfd3JhcFwiICBvbmNsaWNrPVwic3RvcEV2ZW50KGV2ZW50KTtcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X3N1Ym1pdF9oaW50X3RpdGxlXCI+U2hvcnRjdXRzPFwvZGl2PlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfc3VibWl0X2hpbnRfb3B0c1wiIGlkPVwicmVwbHlfc3VibWl0X2hpbnRfb3B0c1wiPlxuICAgIDxkaXYgY2xhc3M9XCJyYWRpb2J0biAlZGlzYWJsZWQlIFwiIGRhdGEtdmFsPVwiMFwiIG9uY2xpY2s9XCJyYWRpb2J0bih0aGlzLCAwLCAncmVwbHlfc3VibWl0Jyk7IHdhbGwub25SZXBseVN1Ym1pdENoYW5nZWQoMCk7XCI+PGRpdiBjbGFzcz1cInJhZGlvYnRuX2xhYmVsXCI+PGI+RW50ZXI8XC9iPiCXIHNlbmQgbWVzc2FnZTxicj48Yj5TaGlmdCtFbnRlcjxcL2I+IJcgbmV3IGxpbmU8XC9kaXY+PFwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJyYWRpb2J0biAlZW5hYmxlZCUgXCIgZGF0YS12YWw9XCIxXCIgb25jbGljaz1cInJhZGlvYnRuKHRoaXMsIDEsICdyZXBseV9zdWJtaXQnKTsgd2FsbC5vblJlcGx5U3VibWl0Q2hhbmdlZCgxKTtcIj48ZGl2IGNsYXNzPVwicmFkaW9idG5fbGFiZWxcIj48Yj5DdHJsK0VudGVyPFwvYj4glyBzZW5kIG1lc3NhZ2U8YnI+PGI+RW50ZXI8XC9iPiCXIG5ldyBsaW5lPFwvZGl2PjxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsInJlcGx5X2J1dHRvbiI6IjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJwb3N0X3JlcGx5IF9yZXBseV93cmFwXCIgb25jbGljaz1cInJldHVybiBXYWxsLnNob3dFZGl0UmVwbHkoJyVwb3N0X2lkJScsIGV2ZW50KVwiPlxuICA8aSBjbGFzcz1cInBvc3RfcmVwbHlfaWNvbiBfaWNvblwiPjxcL2k+XG4gIDxzcGFuIGNsYXNzPVwicG9zdF9yZXBseV9saW5rIF9saW5rXCI+Q29tbWVudDxcL3NwYW4+XG4gIDxzcGFuIGNsYXNzPVwicG9zdF9yZXBseV9jb3VudCBfY291bnRcIj48XC9zcGFuPlxuPFwvYT4iLCJyZXBseV9saW5rIjoiPHNwYW4gaWQ9XCJyZXBseV9saW5rJXBvc3RfaWQlXCIgY2xhc3M9XCJyZXBseV9saW5rX3dyYXBcIj48YSBocmVmPVwiI1wiIGNsYXNzPVwicmVwbHlfbGlua1wiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5zaG93RWRpdFJlcGx5KCclcG9zdF9pZCUnLCBldmVudClcIj5Db21tZW50PFwvYT48XC9zcGFuPiIsIm93bl9yZXBseV9saW5rIjoiPHNwYW4gY2xhc3M9XCJyZXBseV9saW5rX3dyYXBcIj48YSBjbGFzcz1cInJlcGx5X2xpbmtcIiBvbmNsaWNrPVwiV2FsbC5saWtlU2hhcmVDdXN0b20oJyVwb3N0X2lkJScpXCI+UmVwbHk8XC9hPjxcL3NwYW4+IiwiZWRpdF9saW5rIjoiPHNwYW4gY2xhc3M9XCJkaXZpZGVcIj58PFwvc3Bhbj48YSBvbmNsaWNrPVwid2FsbC5lZGl0UG9zdCh0aGlzLCAnJXBvc3RfaWQlJylcIj5FZGl0IDxcL2E+IiwicG9zdCI6IjxkaXYgaWQ9XCJwb3N0JXBvc3RfaWQlXCIgY2xhc3M9XCJfcG9zdCBwb3N0IHBhZ2VfYmxvY2tcIiBkYXRhLXBvc3QtaWQ9XCIlcG9zdF9pZCVcIiBvbmNsaWNrPVwid2FsbC5wb3N0Q2xpY2soJyVwb3N0X2lkJScsIGV2ZW50KTtcIiA+XG4gIDxkaXYgY2xhc3M9XCJfcG9zdF9jb250ZW50XCI+XG4gICAgXG4gICAgPGRpdiBjbGFzcz1cInBvc3RfaGVhZGVyXCI+XG4gICAgICA8YSBjbGFzcz1cInBvc3RfaW1hZ2Ulb25saW5lX2NsYXNzJVwiIGhyZWY9XCIlbGluayVcIj5cbiAgICAgICAgPGltZyBzcmM9XCIlcGhvdG8lXCIgZGF0YS1wb3N0LWlkPVwiJXBvc3RfaWQlXCIgZGF0YS1wb3N0LWNsaWNrLXR5cGU9XCJwb3N0X293bmVyX2ltZ1wiIHdpZHRoPVwiNTBcIiBoZWlnaHQ9XCI1MFwiIGNsYXNzPVwicG9zdF9pbWdcIiBcLz5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPi48XC9zcGFuPlxuICAgICAgPFwvYT5cbiAgICAgIDxkaXYgY2xhc3M9XCJwb3N0X2hlYWRlcl9pbmZvXCI+XG4gICAgICAgIDxoNSBjbGFzcz1cInBvc3RfYXV0aG9yXCI+JW5hbWUlPFwvaDU+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwb3N0X2RhdGVcIj48YSBjbGFzcz1cInBvc3RfbGlua1wiIGhyZWY9XCJcL3dhbGwlcG9zdF9pZCVcIiBvbmNsaWNrPVwicmV0dXJuIHNob3dXaWtpKHt3OiAnd2FsbCVwb3N0X2lkJSd9LCBmYWxzZSwgZXZlbnQpO1wiPiVkYXRlJTxcL2E+PFwvZGl2PlxuICAgICAgICAlYWN0aW9ucyVcbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInBvc3RfY29udGVudFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInBvc3RfaW5mb1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwid2FsbF90ZXh0XCI+JXRleHQlPFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwicG9zdF9mdWxsX2xpa2Vfd3JhcCBjbGVhcl9maXhcIj5cbiAgPGRpdiBjbGFzcz1cInBvc3RfZnVsbF9saWtlXCI+XG4gICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cInBvc3RfbGlrZSBfbGlrZV93cmFwIG5vX2xpa2VzXCIgb25tb3VzZW92ZXI9XCJXYWxsLmxpa2VzU2hvdyh0aGlzLCAnJXBvc3RfaWQlJylcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwubGlrZUl0KHRoaXMsICclcG9zdF9pZCUnLCAnMTQ5MDY0ODQ5OV9mMTA1OGI3ODBlOWQ2MjU1MmEnLCBldmVudCk7XCI+XG4gICAgICA8aSBjbGFzcz1cInBvc3RfbGlrZV9pY29uIF9pY29uXCI+PFwvaT5cbiAgICAgIDxzcGFuIGNsYXNzPVwicG9zdF9saWtlX2xpbmsgX2xpbmtcIj48XC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwb3N0X2xpa2VfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbiAgICA8XC9hPlxuICAgIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiIG9uY2xpY2s9XCJXYWxsLmxpa2VzU2hvd0xpc3QodGhpcywgJyVwb3N0X2lkJScpXCI+U2hvdyBsaWtlczxcL3NwYW4+XG4gICAgJXJlcGx5X2J1dHRvbiVcbiAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwicG9zdF9zaGFyZSBfc2hhcmVfd3JhcCBub19zaGFyZXNcIiAgb25tb3VzZW92ZXI9XCJXYWxsLnNoYXJlc1Nob3codGhpcywgJyVwb3N0X2lkJScpXCIgb25jbGljaz1cInJldHVybiBXYWxsLnNoYXJlc09wZW4oZXZlbnQsICclcG9zdF9pZCUnKTtcIj5cbiAgICAgIDxpIGNsYXNzPVwicG9zdF9zaGFyZV9pY29uIF9pY29uXCI+PFwvaT5cbiAgICAgIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIj48XC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwb3N0X3NoYXJlX2xpbmsgX2xpbmtcIj48XC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwb3N0X3NoYXJlX2NvdW50IF9jb3VudFwiPjxcL3NwYW4+XG4gICAgPFwvYT5cbiAgICA8c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIiBvbmNsaWNrPVwiV2FsbC5zaGFyZXNTaG93TGlzdCh0aGlzLCAnJXBvc3RfaWQlJylcIj5TaG93IHNoYXJlZCBjb3BpZXM8XC9zcGFuPlxuICAgIFxuICA8XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJwb3N0X3ZpZXdzIF92aWV3c193cmFwIG5vX3ZpZXdzIF9hdXRvX3VwZGF0ZVwiIG9ubW91c2VvdmVyPVwiV2FsbC52aWV3c1VwZGF0ZSh0aGlzLCAnJXBvc3RfaWQlJylcIj5cbiAgPGkgY2xhc3M9XCJwb3N0X3ZpZXdzX2ljb24gX2ljb25cIj48XC9pPlxuICA8c3BhbiBjbGFzcz1cInBvc3Rfdmlld3NfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbjxcL2Rpdj5cbjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcGxpZXNcIj48ZGl2IGNsYXNzPVwicmVwbGllc193cmFwXCIgaWQ9XCJyZXBsaWVzX3dyYXAlcG9zdF9pZCVcIiBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCI+XG4gIDxkaXYgY2xhc3M9XCJyZXBsaWVzX2xpc3QgX3JlcGxpZXNfbGlzdFwiIGlkPVwicmVwbGllcyVwb3N0X2lkJVwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJzdGFydF9yZXBseSVwb3N0X2lkJVwiIHZhbHVlPVwiXCJcLz48XC9kaXY+XG4gICVyZXBseV9ib3glXG48XC9kaXY+PFwvZGl2PlxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICBcbiAgPFwvZGl2PlxuICBcbjxcL2Rpdj4iLCJyZXBseSI6IjxkaXYgaWQ9XCJwb3N0JXJlcGx5X2lkJVwiIGNsYXNzPVwicmVwbHkgcmVwbHlfZGl2ZWQgY2xlYXIgJWNsYXNzbmFtZSUgX3Bvc3RcIiBkYXRhLXBvc3QtaWQ9XCIlcmVwbHlfaWQlXCIgJWF0dHIlPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfd3JhcCBfcmVwbHlfY29udGVudCBfcG9zdF9jb250ZW50IGNsZWFyX2ZpeFwiPlxuICAgIFxuICAgIDxhIGNsYXNzPVwicmVwbHlfaW1hZ2VcIiBocmVmPVwiJWxpbmslXCI+XG4gICAgICA8aW1nIHNyYz1cIiVwaG90byVcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiBjbGFzcz1cInJlcGx5X2ltZ1wiIGFsdD1cIiVuYW1lJVwiIFwvPlxuICAgIDxcL2E+XG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2NvbnRlbnRcIiA+XG4gICAgICAlYWN0aW9ucyVcbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9hdXRob3JcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJhdXRob3JcIiBocmVmPVwiJWxpbmslXCIgZGF0YS1mcm9tLWlkPVwiJXJlcGx5X3VpZCVcIj4lbmFtZSU8XC9hPiV0b19saW5rJVxuICAgICAgPFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X3RleHRcIiA+JXRleHQlPFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2Zvb3RlciBjbGVhcl9maXhcIiBpZD1cIndwZV9ib3R0b20lcmVwbHlfaWQlXCI+XG4gICAgICAgIDxhIGhyZWY9XCIjXCIgY2xhc3M9XCJsaWtlX3dyYXAgX2xpa2Vfd3JhcCBub19saWtlc1wiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5saWtlSXQodGhpcywgJyVsaWtlX2lkJScsICcxNDkwNjQ4NDk5X2YxMDU4Yjc4MGU5ZDYyNTUyYScsIGV2ZW50KTtcIiBvbm1vdXNlb3Zlcj1cIldhbGwubGlrZXNTaG93KHRoaXMsICclbGlrZV9pZCUnKVwiPlxuICA8c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCI+TGlrZTxcL3NwYW4+XG4gIDxpIGNsYXNzPVwibGlrZV9pY29uIF9pY29uXCI+PFwvaT5cbiAgPHNwYW4gY2xhc3M9XCJsaWtlX2NvdW50IF9jb3VudFwiPjxcL3NwYW4+XG48XC9hPlxuPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCIgb25jbGljaz1cIldhbGwubGlrZXNTaG93TGlzdCh0aGlzLCAnJWxpa2VfaWQlJylcIj5TaG93IGxpa2VzPFwvc3Bhbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2RhdGVcIj48YSBjbGFzcz1cIndkX2xua1wiIGhyZWY9XCJcL3dhbGwlcG9zdF9pZCU/cmVwbHk9JXJlcGx5X21zZ19pZCVcIiBvbmNsaWNrPVwicmV0dXJuIG5hdi5nbyh0aGlzLCBldmVudClcIj4lZGF0ZSU8XC9hPjxcL2Rpdj5cbiAgICAgICAgJWFuc3dlcl9saW5rJVxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsImRlbCI6IjxhIGNsYXNzPVwidWlfYWN0aW9uc19tZW51X2l0ZW1cIiBvbmNsaWNrPVwid2FsbC5kZWxldGVQb3N0KHRoaXMsICclcG9zdF9pZCUnLCAnMTQ5MDY0ODQ5OV80OWY0MDQyN2JiMGYxMjU0MTUnKTsgcmV0dXJuIGZhbHNlO1wiPkRlbGV0ZSBwb3N0PFwvYT4iLCJzcGFtIjoiPGEgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfaXRlbVwiIG9uY2xpY2s9XCJ3YWxsLm1hcmtBc1NwYW0odGhpcywgJyVwb3N0X2lkJScsICcxNDkwNjQ4NDk5X2MxZTcwM2VhZjZkNjhlOGZkMycpOyByZXR1cm4gZmFsc2U7XCI+UmVwb3J0PFwvYT4iLCJlZGl0IjoiPGEgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfaXRlbVwiIG9uY2xpY2s9XCJ3YWxsLmVkaXRQb3N0KHRoaXMsICclcG9zdF9pZCUnKTsgcmV0dXJuIGZhbHNlO1wiPkVkaXQgPFwvYT4iLCJwb3N0X2FjdGlvbnMiOiI8ZGl2IGNsYXNzPVwidWlfYWN0aW9uc19tZW51X3dyYXAgX3VpX21lbnVfd3JhcCBcIiBvbm1vdXNlb3Zlcj1cInVpQWN0aW9uc01lbnUuc2hvdyh0aGlzKTtcIiBvbm1vdXNlb3V0ID1cInVpQWN0aW9uc01lbnUuaGlkZSh0aGlzKTtcIj5cbiAgPGRpdiBjbGFzcz1cInVpX2FjdGlvbnNfbWVudV9pY29uc1wiICB0YWJpbmRleD1cIjBcIiBhcmlhLWxhYmVsPVwiQWN0aW9uc1wiIHJvbGU9XCJidXR0b25cIiBvbmNsaWNrPVwidWlBY3Rpb25zTWVudS5rZXlUb2dnbGUodGhpcywgZXZlbnQpO1wiPjxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIj5BY3Rpb25zPFwvc3Bhbj48XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnUgX3VpX21lbnVcIiA+JWFjdGlvbnMlPFwvZGl2PlxuPFwvZGl2PiIsImRlbF9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9kZWxldGUlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9kZWxldGVfYnV0dG9uIHJlcGx5X2FjdGlvbiBmbF9yXCIgZGF0YS10aXRsZT1cIkRlbGV0ZVwiIG9uY2xpY2s9XCJ3YWxsLmRlbGV0ZVBvc3QodGhpcywgJyVyZXBseV9pZCUnLCAnMTQ5MDY0ODQ5OV80OWY0MDQyN2JiMGYxMjU0MTUnKTtcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiRGVsZXRlXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+Iiwic3BhbV9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9kZWxldGUlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9kZWxldGVfYnV0dG9uIHJlcGx5X2FjdGlvbiBmbF9yXCIgZGF0YS10aXRsZT1cIlJlcG9ydFwiIG9uY2xpY2s9XCJ3YWxsLm1hcmtBc1NwYW0odGhpcywgJyVyZXBseV9pZCUnLCAnMTQ5MDY0ODQ5OV9jMWU3MDNlYWY2ZDY4ZThmZDMnKTtcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiUmVwb3J0XCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+IiwiZWRpdF9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9lZGl0JXJlcGx5X2lkJVwiIGNsYXNzPVwicmVwbHlfZWRpdF9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRWRpdCBcIiBvbmNsaWNrPVwid2FsbC5lZGl0UG9zdCh0aGlzLCAnJXJlcGx5X2lkJScpO1wiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJFZGl0IFwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCI+PFwvZGl2PiIsInJlcGx5X2FjdGlvbnMiOiI8ZGl2IGNsYXNzPVwiZmxfciBwb3N0X2FjdGlvbnNfd3JhcFwiPjxkaXYgY2xhc3M9XCJwb3N0X2FjdGlvbnNcIj4lYWN0aW9ucyU8XC9kaXY+PFwvZGl2PiIsInBvbGxfc3RhdHMiOiI8ZGl2IGNsYXNzPVwicGFnZV9wb2xsX3N0YXRcIiVoYW5kbGVycyU+XG4gIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfdGV4dFwiPiVvcHRpb25fdGV4dCU8XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93X3dyYXBcIj5cbiAgICA8ZGl2IGNsYXNzPVwicGFnZV9wb2xsX3Jvd19wZXJjZW50XCI+JXBlcmNlbnQlJTxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicGFnZV9wb2xsX3JvdyVyb3dfY2xhc3MlXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicGFnZV9wb2xsX3BlcmNlbnRcIiBzdHlsZT1cIndpZHRoOiAlY3NzX3BlcmNlbnQlJVwiPjxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93X2NvdW50XCI+JWNvdW50JTxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJwb2xsX2hhc2giOiIxNDkwNjQ4NDk5XzUyODhlZTliODNmYjkxMWQxZSIsImRhdGVfZm9ybWF0IjoidG9kYXkgYXQge2hvdXJ9OnttaW51dGV9IHthbV9wbX0iLCJ0aW1lX3N5c3RlbSI6WyJwbSIsImFtIl0sImFic190aW1lc3RhbXAiOjE0OTA2NDg0OTksImxhbmciOnsid2FsbF9NX3JlcGxpZXNfb2ZfTiI6WyIiLCIlcyBjb21tZW50IG9mIHtsaW5rfXthbGx9e1wvbGlua30iLCIlcyBjb21tZW50cyBvZiB7bGlua317YWxsfXtcL2xpbmt9Il0sIndhbGxfaGlkZV9yZXBsaWVzIjoiSGlkZSBjb21tZW50cyIsIndhbGxfc2hvd19uX29mX21fbGFzdCI6WyIiLCJTaG93IGxhdGVzdCAlcyBjb21tZW50IG91dCBvZiB7Y291bnR9IiwiU2hvdyBsYXRlc3QgJXMgY29tbWVudHMgb3V0IG9mIHtjb3VudH0iXSwid2FsbF9zaG93X2FsbF9uX3JlcGxpZXMiOlsiIiwiU2hvdyAlcyBjb21tZW50IiwiU2hvdyBhbGwgJXMgY29tbWVudHMiXSwid2FsbF9OX3JlcGxpZXMiOlsiIiwiJXMgY29tbWVudCIsIiVzIGNvbW1lbnRzIl0sIndhbGxfdGhyZWVfbGFzdF9yZXBsaWVzIjoibGFzdCB0aHJlZSBwb3N0cyIsIndhbGxfYWxsX3JlcGxpZXMiOiJhbGwgY29tbWVudHMiLCJ3YWxsX3hfbmV3X3JlcGxpZXNfbW9yZSI6WyIiLCIlcyBuZXcgY29tbWVudCBhZGRlZCIsIiVzIG5ldyBjb21tZW50cyBhZGRlZCJdLCJ3YWxsX1hfcGVvcGxlX3ZvdGVkIjpbIiIsIjxiPiVzPFwvYj4gcGVyc29uIHZvdGVkLiIsIjxiPiVzPFwvYj4gcGVvcGxlIHZvdGVkLiJdLCJ3YWxsX3JlcGx5X3N1Ym1pdF9oaW50XzEiOiJTaGlmdCtFbnRlciCXIG5ldyBsaW5lIiwid2FsbF9yZXBseV9zdWJtaXRfaGludF8yIjoiQ3RybCtFbnRlciCWIHNlbmQgbWVzc2FnZSIsIndhbGxfcmVwbHlfc3VibWl0X2hpbnRfMV9tb3JlIjoiRW50ZXIglyBzZW5kIG1lc3NhZ2UsIFNoaWZ0K0VudGVyIJcgbmV3IGxpbmUiLCJ3YWxsX3JlcGx5X3N1Ym1pdF9oaW50XzJfbW9yZSI6IkVudGVyIJcgbmV3IGxpbmUsIEN0cmwrRW50ZXIglyBzZW5kIG1lc3NhZ2UiLCJ3YWxsX3JlcGx5X3Bvc3QiOiJSZXBseSIsIndhbGxfcmVwbGllZF90b19ncm91cCI6InRoZSBhZG1pbiIsIndhbGxfcmVwbHlfYXNfdXNlciI6Im9uIGJlaGFsZiBvZiB0aGUgdXNlciIsIndhbGxfcmVwbHlfYXNfZ3JvdXAiOiJwb3N0IGFzIGNvbW11bml0eSIsIndhbGxfYWRkX3Bob3RvX2Vycm9yIjoiVW5hYmxlIHRvIHVwbG9hZCB0aGUgaW1hZ2UiLCJ3YWxsX2p1c3Rfbm93IjpbIiIsIk9uZSBzZWNvbmQgYWdvIiwiVHdvIHNlY29uZHMgYWdvIiwiVGhyZWUgc2Vjb25kcyBhZ28iLCJGb3VyIHNlY29uZHMgYWdvIiwiRml2ZSBzZWNvbmRzIGFnbyJdLCJ3YWxsX1hfc2Vjb25kc19hZ29fd29yZHMiOlsiIiwiT25lIHNlY29uZCBhZ28iLCJUd28gc2Vjb25kcyBhZ28iLCJUaHJlZSBzZWNvbmRzIGFnbyIsIkZvdXIgc2Vjb25kcyBhZ28iLCJGaXZlIHNlY29uZHMgYWdvIl0sIndhbGxfWF9zZWNvbmRzX2FnbyI6WyIiLCIlcyBzZWNvbmQgYWdvIiwiJXMgc2Vjb25kcyBhZ28iXSwid2FsbF9YX21pbnV0ZXNfYWdvX3dvcmRzIjpbIiIsIm9uZSBtaW51dGUgYWdvIiwidHdvIG1pbnV0ZXMgYWdvIiwidGhyZWUgbWludXRlcyBhZ28iLCI0IG1pbnV0ZXMgYWdvIiwiNSBtaW51dGVzIGFnbyJdLCJ3YWxsX1hfbWludXRlc19hZ28iOlsiIiwiJXMgbWludXRlIGFnbyIsIiVzIG1pbnV0ZXMgYWdvIl0sIndhbGxfWF9ob3Vyc19hZ29fd29yZHMiOlsiIiwib25lIGhvdXIgYWdvIiwidHdvIGhvdXJzIGFnbyIsInRocmVlIGhvdXJzIGFnbyIsImZvdXIgaG91cnMgYWdvIiwiZml2ZSBob3VycyBhZ28iXSwid2FsbF9YX2hvdXJzX2FnbyI6WyIiLCIlcyBob3VyIGFnbyIsIiVzIGhvdXJzIGFnbyJdfX0sInNoYXJlX3RpbWVoYXNoIjoiMTQ5MDY0ODQ5OV8xYzliNmYwZjI2NTEwNWExNmQiLCJjb21tZW50c1RwbCI6eyJyZXBseSI6IjxkaXYgaWQ9XCJwb3N0JXJlcGx5X2lkJVwiIGNsYXNzPVwicmVwbHkgcmVwbHlfZGl2ZWQgY2xlYXIgIF9wb3N0XCIgZGF0YS1wb3N0LWlkPVwiJXJlcGx5X2lkJVwiICBvbmNsaWNrPVwiVmlkZW92aWV3LmNvbW1lbnRDbGljayh0aGlzLCBldmVudCwgJWZyb21faWQlLCAlcmVwbHlfbXNnX2lkJSlcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X3dyYXAgX3JlcGx5X2NvbnRlbnQgX3Bvc3RfY29udGVudCBjbGVhcl9maXhcIj5cbiAgICBcbiAgICA8YSBjbGFzcz1cInJlcGx5X2ltYWdlXCIgaHJlZj1cIiVocmVmJVwiPlxuICAgICAgPGltZyBzcmM9XCIlcGhvdG8lXCIgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQwXCIgY2xhc3M9XCJyZXBseV9pbWdcIiBhbHQ9XCIlbmFtZSVcIiBcLz5cbiAgICA8XC9hPlxuICAgIDxkaXYgY2xhc3M9XCJyZXBseV9jb250ZW50XCIgPlxuICAgICAgJWFjdGlvbnMlXG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfYXV0aG9yXCI+XG4gICAgICAgIDxhIGNsYXNzPVwiYXV0aG9yXCIgaHJlZj1cIiVocmVmJVwiIGRhdGEtZnJvbS1pZD1cIiVmcm9tX2lkJVwiPiVuYW1lJTxcL2E+JXRvX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfdGV4dFwiID4lbWVzc2FnZSU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZm9vdGVyIGNsZWFyX2ZpeFwiIGlkPVwid3BlX2JvdHRvbSVyZXBseV9pZCVcIj5cbiAgICAgICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cImxpa2Vfd3JhcCBfbGlrZV93cmFwIG5vX2xpa2VzXCIgb25jbGljaz1cInJldHVybiBXYWxsLmxpa2VJdCh0aGlzLCAnJXBvc3Rfb2lkJXZpZGVvX2NvbW1lbnQlcmVwbHlfbXNnX2lkJW12JywgJzE0OTA2NDg0OTlfZjEwNThiNzgwZTlkNjI1NTJhJywgZXZlbnQpO1wiIG9ubW91c2VvdmVyPVwiV2FsbC5saWtlc1Nob3codGhpcywgJyVwb3N0X29pZCV2aWRlb19jb21tZW50JXJlcGx5X21zZ19pZCVtdicpXCI+XG4gIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIj5MaWtlPFwvc3Bhbj5cbiAgPGkgY2xhc3M9XCJsaWtlX2ljb24gX2ljb25cIj48XC9pPlxuICA8c3BhbiBjbGFzcz1cImxpa2VfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbjxcL2E+XG48c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIiBvbmNsaWNrPVwiV2FsbC5saWtlc1Nob3dMaXN0KHRoaXMsICclcG9zdF9vaWQldmlkZW9fY29tbWVudCVyZXBseV9tc2dfaWQlbXYnKVwiPlNob3cgbGlrZXM8XC9zcGFuPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZGF0ZVwiPiVkYXRlJTxcL2Rpdj5cbiAgICAgICAgXG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwiYWN0aW9ucyI6IjxkaXYgY2xhc3M9XCJmbF9yIHBvc3RfYWN0aW9uc193cmFwXCI+PGRpdiBjbGFzcz1cInBvc3RfYWN0aW9uc1wiPiVhY3Rpb25zJTxcL2Rpdj48XC9kaXY+IiwiZWRpdF9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9lZGl0JXJlcGx5X2lkJVwiIGNsYXNzPVwicmVwbHlfZWRpdF9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRWRpdFwiIG9uY2xpY2s9XCJXYWxsLmVkaXRQb3N0KHRoaXMsICclcmVwbHlfaWQlJylcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiRWRpdFwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCI+PFwvZGl2PiIsImRlbF9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9kZWxldGUlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9kZWxldGVfYnV0dG9uIHJlcGx5X2FjdGlvbiBmbF9yXCIgZGF0YS10aXRsZT1cIkRlbGV0ZVwiIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbUFjdGlvbignZGVsZXRlJywgJXBvc3Rfb2lkJSwgJXJlcGx5X21zZ19pZCUsICcxNDkwNjQ4NDk5XzI2ODI2NTE2YTA3MzAzZGI2OScsICdtdicpXCIgb25tb3VzZW92ZXI9XCJzaG93VGl0bGUodGhpcyk7XCIgYXJpYS1sYWJlbD1cIkRlbGV0ZVwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCI+PFwvZGl2PiIsInNwYW1fcmVwbHkiOiI8ZGl2IGlkPVwicmVwbHlfZGVsZXRlJXJlcGx5X2lkJVwiIGNsYXNzPVwicmVwbHlfZGVsZXRlX2J1dHRvbiByZXBseV9hY3Rpb24gZmxfclwiIGRhdGEtdGl0bGU9XCJSZXBvcnRcIiBvbmNsaWNrPVwiVmlkZW92aWV3LmNvbW1BY3Rpb24oJ3NwYW0nLCAlcG9zdF9vaWQlLCAlcmVwbHlfbXNnX2lkJSwgJzE0OTA2NDg0OTlfMjY4MjY1MTZhMDczMDNkYjY5JywgJ212JylcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiUmVwb3J0XCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+In0sInBvc3QiOiIyMTUyNjk5X3ZpZGVvMTY4NTkxNzQxbXYiLCJtYXhSZXBseUxlbmd0aCI6MTYzODQsIm1heENoYXRSZXBseUxlbmd0aCI6NjAwLCJtYXhEZXNjcmlwdGlvbkxlbmd0aCI6MTAyNCwicHVibGlzaEFjdGlvbiI6IiIsInBsX2xpc3QiOjAsImlzX3ZrX3BsYXllciI6MCwiaXNfZmx2IjpmYWxzZSwiY2FudFBsYXkiOjAsInBsYXllciI6eyJ0eXBlIjoieW91dHViZSIsInBhcmFtcyI6W3sibGFuZ19hZGQiOiJBZGQgdG8gTXkgVmlkZW9zIiwibGFuZ19hZGRlZCI6IlZpZGVvIGFkZGVkIHRvIE15IFZpZGVvcyIsImxhbmdfc2hhcmUiOiJTaGFyZSIsImxhbmdfbGlrZSI6Ikxpa2UiLCJsYW5nX2RvbmF0ZSI6IkRvbmF0ZSIsImxhbmdfc3Vic2NyaWJlIjoiU3Vic2NyaWJlIiwibGFuZ19zdWJzY3JpYmVkIjoiRm9sbG93aW5nIiwibGFuZ192b2x1bWVfb24iOiJVbm11dGUiLCJsYW5nX3ZvbHVtZV9vZmYiOiJNdXRlIiwibGFuZ192b2x1bWUiOiJWb2x1bWUiLCJsYW5nX2hkc2QiOiJDaGFuZ2UgVmlkZW8gUXVhbGl0eSIsImxhbmdfcXVhbGl0eV9hdXRvIjoiQXV0byIsImxhbmdfb3Blbl9wb3B1cCI6IkV4cGFuZCIsImxhbmdfZnVsbHNjcmVlbiI6IkZ1bGwgU2NyZWVuIiwibGFuZ193aW5kb3ciOiJNaW5pbWl6ZSIsImxhbmdfcm90YXRlIjoiUm90YXRlIiwibGFuZ19hZHNfbGluayI6IkFkdmVydGlzZXImIzM5O3MgU2l0ZSIsImxhbmdfYWRzIjoiQWRzIiwibGFuZ19hZHNfc2tpcCI6IlNraXAgYWQiLCJsYW5nX2Fkc19za2lwX3RpbWUiOiJTa2lwIGFkcyBpbiB7dGltZX0gcyIsImxhbmdfcmVwb3J0X3Byb2JsZW0iOiJSZXBvcnQgYSBwcm9ibGVtLi4iLCJsYW5nX3BsYXkiOiJQbGF5IiwibGFuZ19wYXVzZSI6IlBhdXNlIiwibGFuZ19yZXBsYXkiOiJSZXBsYXkiLCJsYW5nX25leHQiOiJOZXh0IHZpZGVvIiwibGFuZ19uZXh0X2NhbmNlbCI6IkNhbmNlbCIsImxhbmdfZ290b19vcmlnX3ZpZGVvIjoiR28gdG8gVmlkZW8iLCJsYW5nX2dvdG9fYWR2ZXJ0aXNlcnNfc2l0ZSI6IkdvIHRvIHRoZSB3ZWJzaXRlIiwibGFuZ19idXlfdGlja2V0cyI6bnVsbCwibGFuZ19sb2FkX2Vycm9yIjoiQW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIGxvYWRpbmcuIFBsZWFzZSB0cnkgYWdhaW4gbGF0ZXIuIiwibGFuZ19lcnJfY29kZSI6IkVycm9yIGNvZGU6IHtjb2RlfSIsImxhbmdfYmFkX2Jyb3dzZXIiOiJTb3JyeSwgeW91ciBicm93c2VyIGlzbiYjMzk7dCBzdXBwb3J0ZWQgYXQgdGhlIG1vbWVudCIsImxhbmdfbGl2ZSI6IkxpdmUiLCJsYW5nX2xpdmVfc3RhcnRpbmdfc29vbiI6IlRoZSBsaXZlIHdpbGwgc3RhcnQgc29vbiIsImxhbmdfbGl2ZV9mYWlsZWQiOiJBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBzdHJlYW1pbmciLCJsYW5nX2xpdmVfd2FpdF9yZWNvcmQiOiJUaGUgbGl2ZSBoYXMgZmluaXNoZWQgYW5kIHdpbGwgc29vbiBiZWNvbWUgYXZhaWxhYmxlIGluIHJlcGxheSIsImxhbmdfbGl2ZV91c2VyX3NlbnRfZ2lmdCI6WyIiLCJzZW50IGEgZ2lmdCIsInNlbnQgYSBnaWZ0Il0sImxhbmdfbGl2ZV91c2VyX3NlbnRfc3VwZXJjb21tZW50IjpbIiIsInNlbnQgYSBzdXBlciBtZXNzYWdlIiwic2VudCBhIHN1cGVyIG1lc3NhZ2UiXSwibGFuZ19saXZlX2Rvd25sb2FkX2FwcCI6IkRvd25sb2FkIGFwcCIsImxhbmdfYXV0b3BsYXlfdm9sdW1lX2hpbnQiOiLRbGljayB0byB0dXJuIG9uIHRoZSBzb3VuZCIsImxhbmdfYXV0b3BsYXlfZXhwYW5kX2hpbnQiOiJDbGljayB0byBleHBhbmQiLCJsYW5nX3RpbWVkX2J1dHRvbl9nb3RvIjoiz+Xw5eny6CIsImxhbmdfdGltZWRfYnV0dG9uX29wZW4iOiJPcGVuIiwibGFuZ190aW1lZF9idXR0b25fYnV5IjoiQnV5IiwibGFuZ190aW1lZF9idXR0b25fYnV5X3RpY2tldHMiOiJCdXkgdGlja2V0cyIsImxhbmdfdGltZWRfYnV0dG9uX2NoZWNraW4iOm51bGwsImxhbmdfdGltZWRfYnV0dG9uX2luc3RhbGwiOiLT8fLg7e7i6PL8IiwibGFuZ190aW1lZF9idXR0b25fY29udGFjdCI6ItHi/+fg8vzx/yIsImxhbmdfdGltZWRfYnV0dG9uX2ZpbGwiOiLH4O/u6+3o8vwiLCJsYW5nX3RpbWVkX2J1dHRvbl9sZWFybl9tb3JlIjoiTW9yZSIsImxhbmdfY21lbnVfY29weV92aWRlb19saW5rIjoiQ29weSB2aWRlbyBsaW5rIiwibGFuZ19jbWVudV9jb3B5X3RpbWVjb2RlX2xpbmsiOiJDb3B5IGxpbmsgd2l0aCB0aW1lY29kZSIsImxhbmdfY21lbnVfY29weV9lbWJlZF9jb2RlIjoiQ29weSBlbWJlZCBjb2RlIiwibGFuZ19jbWVudV9lbmFibGVfbG9vcCI6IkVuYWJsZSBsb29wIiwibGFuZ19jbWVudV9kaXNhYmxlX2xvb3AiOiJEaXNhYmxlIGxvb3AiLCJsYW5nX2NtZW51X3BsYXliYWNrX3NwZWVkIjoiUGxheWJhY2sgc3BlZWQiLCJsYW5nX2NtZW51X3JlcG9ydF9lcnJvciI6IlJlcG9ydCBhIHByb2JsZW0uLiIsImxhbmdfY21lbnVfY29weV9kZWJ1ZyI6IkNvcHkgZGVidWcgaW5mbyIsImxhbmdfYXJpYV92aWRlb3BsYXllciI6IlZLIFZpZGVvIFBsYXllciIsImxhbmdfYXJpYV92b2x1bWVfc2xpZGVyIjoiVm9sdW1lIHNsaWRlciIsImxhbmdfYXJpYV92b2x1bWVfbXV0ZWQiOiJWb2x1bWUgaXMgbXV0ZWQiLCJsYW5nX2FyaWFfdGltZWxpbmVfc2xpZGVyIjoiVGltZSBzbGlkZXIiLCJsYW5nX2FyaWFfdGltZWxpbmVfdmFsdWUiOiJ7dGltZX0gKHRvdGFsIGR1cmF0aW9uIHtkdXJhdGlvbn0pIiwibGFuZ19hcmlhX2VudGVyX2Z1bGxzY3JlZW4iOiJFbnRlciBmdWxsIHNjcmVlbiBtb2RlIiwibGFuZ19hcmlhX2V4aXRfZnVsbHNjcmVlbiI6IkV4aXQgZnVsbCBzY3JlZW4gbW9kZSIsImxhbmdfYXJpYV9xdWFsaXR5X2N1cnJlbnQiOiJDdXJyZW50IHF1YWxpdHkgaXMge3F1YWxpdHl9IiwidmlkZW9fcGxheV9oZCI6IldhdGNoIGluIEhEIiwidmlkZW9fc3RvcF9sb2FkaW5nIjoiU3RvcCBEb3dubG9hZCIsInZpZGVvX3BsYXllcl92ZXJzaW9uIjoiVksgVmlkZW8gUGxheWVyIiwidmlkZW9fZ2V0X3ZpZGVvX2NvZGUiOiJDb3B5IGVtYmVkIGNvZGUiLCJ2aWRlb19nZXRfY3VycmVudF91cmwiOiJDb3B5IGxpbmsgd2l0aCB0aW1lY29kZSIsInZpZGVvX2xvYWRfZXJyb3IiOiJBbiBlcnJvciBvY2N1cnJlZCBkdXJpbmcgbG9hZGluZy4gUGxlYXNlIHRyeSBhZ2FpbiBsYXRlci4iLCJnb3RvX29yaWdfdmlkZW8iOiJHbyB0byBWaWRlbyIsInZpZCI6MTY4NTkxNzQxLCJvaWQiOjIxNTI2OTksIm1kX3RpdGxlIjoiQkVBVCBTT1VMIFNURVAglyBSREMxNCBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwLCBNYXkgMS0yLCBNb3Njb3cgMjAxNCIsIm1kX2F1dGhvciI6IktpcmlsbCBMeWFub3kiLCJhdXRob3JfaWQiOjIxNTI2OTksImF1dGhvcl9ocmVmIjoiXC9seWFub2kua2lyaWxsIiwiYXV0aG9yX3Bob3RvIjoiaHR0cHM6XC9cL3BwLnVzZXJhcGkuY29tXC9jNjIzODI0XC92NjIzODI0Njk5XC81NTU3NVwvQ0NRWjI5bDBCOWsuanBnIiwiaGFzaCI6IjcyOTViMzk3ODQ5N2YwODY5OGI4Y2NiN2QzMGEwYzY2IiwiaGFzaDIiOiJlYTFkM2RiOTg4MTgxMjVkIiwiaXNfZXh0IjowLCJkdXJhdGlvbiI6Mjk5LCJ0IjoiIiwidmlnb19jaWQiOiJjZmNkMjA4NDk1ZDU2NWVmNjZlN2RmZjlmOTg3NjRkYSIsInZpZXdlcl9pZCI6MCwicG9zdF9pZCI6bnVsbCwibW9kdWxlIjoicHJvZmlsZSIsImciOjAsImEiOjAsImNpcyI6MCwicmVjb21tZW5kX3NpZyI6IjQ2MTE2ODc2YTJmMTBhYWJmNDJhODc2MmM1MzQwMzhlIiwiZXJyb3Jfc3RhdF9oYXNoIjoiMTQ5MDY0ODQ5OV85NTUxODA0NWJlNmQxMTYxODciLCJub19hZHMiOjEsIm5vbGlrZXMiOjEsImV4dHJhIjoiMjEiLCJleHRyYV9kYXRhIjoiNFRod3M1d3E1R0kiLCJ0aHVtYiI6Imh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzYxNzgzMVwvdTk2MTIzMzAzXC92aWRlb1wvbF8yN2U0ZmY1Yy5qcGciLCJqcGciOiJodHRwczpcL1wvcHAudXNlcmFwaS5jb21cL2M2MTc4MzFcL3U5NjEyMzMwM1wvdmlkZW9cL3hfNWJiMDU3OGYuanBnIiwiaGQiOjAsIm5vbG9nbyI6MSwic2hvd19uZXh0IjowLCJsaWtlZCI6MCwiYWRkX2hhc2giOiJmZmI4NDJkMGNlNmZjMTY4YTciLCJhZGRlZCI6MCwiY2FuX2FkZCI6MCwibm9fdGl0bGUiOjAsInZzZWdzX3NpemUiOjI5LjAwMDAwMCwidnNlZ3NfaGFzaCI6IjM5MTQ0MWViMDM4OWEyNDE0NiIsInJlcG9ydF9lcnJvcl9oYXNoIjoiMzgzNzE5ZTBjOGY1NDY2NTlhIn1dfX08IT48IXBhZ2V2aWV3X2NhbmRpZGF0ZT4=
46
- http_version:
47
- recorded_at: Mon, 27 Mar 2017 21:01:39 GMT
48
- recorded_with: VCR 3.0.3
@@ -1,48 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://vk.com/al_video.php
6
- body:
7
- encoding: US-ASCII
8
- string: User-Agent=VideoInfo%2F2.7&act=show&al=1&autoplay=0&module=profile&video=2152699_168591741
9
- headers:
10
- Accept-Encoding:
11
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Mozilla/5.0 (Linux; VideoInfo)
16
- - Ruby
17
- response:
18
- status:
19
- code: 200
20
- message: OK
21
- headers:
22
- Server:
23
- - Apache
24
- Date:
25
- - Mon, 27 Mar 2017 21:01:36 GMT
26
- Content-Type:
27
- - text/html; charset=windows-1251
28
- Content-Length:
29
- - '10352'
30
- Connection:
31
- - keep-alive
32
- X-Powered-By:
33
- - PHP/3.12334
34
- Set-Cookie:
35
- - remixlang=3; expires=Thu, 05 Apr 2018 06:33:23 GMT; path=/; domain=.vk.com
36
- Pragma:
37
- - no-cache
38
- Cache-Control:
39
- - no-store
40
- Strict-Transport-Security:
41
- - max-age=0
42
- body:
43
- encoding: ASCII-8BIT
44
- string: !binary |-
45
- PCEtLTMzMjY4NDA3MjMyMjg8IT51aV9tZWRpYV9zZWxlY3Rvci5qcyx1aV9tZWRpYV9zZWxlY3Rvci5jc3MsZW1vamkuanMsbm90aWZpZXIuY3NzLHZpZGVvdmlldy5qcyx2aWRlb3ZpZXcuY3NzLHBhZ2UuanMscGFnZS5jc3MscG9zdC5jc3MsdWlfY29udHJvbHMuanMsdWlfY29udHJvbHMuY3NzPCE+MzwhPjM3MDQ8IT4wPCE+QkVBVCBTT1VMIFNURVAglyBSREMxNCBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwLCBNYXkgMS0yLCBNb3Njb3cgMjAxNDwhPjxkaXYgY2xhc3M9InZpZGVvX2JveF93cmFwIj4KICA8ZGl2IGlkPSJ2aWRlb19wbGF5ZXIiPgogICAgPGRpdiBpZD0idmlkZW9feXQiIHRhYmluZGV4PSIwIiBzdHlsZT0id2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvdXRsaW5lOjA7Ij4KICAgICAgPGlmcmFtZSBjbGFzcz0idmlkZW9feXRfcGxheWVyIiB0eXBlPSJ0ZXh0L2h0bWwiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHNyYz0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvNFRod3M1d3E1R0k/ZW5hYmxlanNhcGk9MSZhdXRvcGxheT0wJnN0YXJ0PTAmYXV0b2hpZGU9MSZ3bW9kZT1vcGFxdWUmc2hvd2luZm89MCZvcmlnaW49aHR0cHM6Ly92ay5jb20mZnM9MSZyZWw9MCZjY19sb2FkX3BvbGljeT0wJml2X2xvYWRfcG9saWN5PTMiIGZyYW1lYm9yZGVyPSIwIiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PCE+CmFkZFRlbXBsYXRlcyh7Il8iOiJfIiwiYXVkaW9fcm93IjoiPGRpdiBjbGFzcz1cImF1ZGlvX3JvdyBfYXVkaW9fcm93IF9hdWRpb19yb3dfJTElXyUwJSAlY2xzJSBjbGVhcl9maXhcIiBvbmNsaWNrPVwicmV0dXJuIGdldEF1ZGlvUGxheWVyKCkudG9nZ2xlQXVkaW8odGhpcywgZXZlbnQpXCIgZGF0YS1hdWRpbz1cIiVzZXJpYWxpemVkJVwiIGRhdGEtZnVsbC1pZD1cIiUxJV8lMCVcIiBpZD1cImF1ZGlvXyUxJV8lMCVcIj5cbiAgPGRpdiBjbGFzcz1cImF1ZGlvX3BsYXlfd3JhcFwiIGRhdGEtbm9kcmFnPVwiMVwiPjxidXR0b24gY2xhc3M9XCJhdWRpb19wbGF5IF9hdWRpb19wbGF5XCIgaWQ9XCJwbGF5XyUxJV8lMCVcIiBhcmlhLWxhYmVsPVwiXCI+PFwvYnV0dG9uPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cImF1ZGlvX2luZm9cIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fZHVyYXRpb25fd3JhcCBfYXVkaW9fZHVyYXRpb25fd3JhcFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2hxX2xhYmVsXCI+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2R1cmF0aW9uIF9hdWRpb19kdXJhdGlvblwiPiVkdXJhdGlvbiU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0c1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0XCIgaWQ9XCJyZWNvbVwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cIkF1ZGlvUGFnZSh0aGlzKS5zaG93UmVjb21zKHRoaXMsICclMSVfJTAlJywgZXZlbnQpXCI+PGRpdj48XC9kaXY+PFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fYWN0XCIgaWQ9XCJuZXh0XCIgb25tb3VzZW92ZXI9XCJhdWRpb1Nob3dBY3Rpb25Ub29sdGlwKHRoaXMsICclMSVfJTAlJylcIiBvbmNsaWNrPVwiZ2V0QXVkaW9QbGF5ZXIoKS5zZXROZXh0KHRoaXMsIGV2ZW50KVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwiZWRpdFwiIG9ubW91c2VvdmVyPVwiYXVkaW9TaG93QWN0aW9uVG9vbHRpcCh0aGlzLCAnJTElXyUwJScpXCIgb25jbGljaz1cIkF1ZGlvUGFnZSh0aGlzKS5lZGl0QXVkaW8odGhpcywgJyUxJV8lMCUnLCBldmVudClcIj48ZGl2PjxcL2Rpdj48XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhdWRpb19hY3QgX2F1ZGlvX2FjdF9kZWxldGVcIiBpZD1cImRlbGV0ZVwiIG9uY2xpY2s9XCJBdWRpb1BhZ2UodGhpcykuZGVsZXRlQXVkaW8odGhpcywgJyUxJV8lMCUnLCBldmVudClcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF1ZGlvX2FjdFwiIGlkPVwiYWRkXCIgb25jbGljaz1cInJldHVybiBhZGRBdWRpbyh0aGlzLCBldmVudClcIiBvbm1vdXNlb3Zlcj1cImF1ZGlvU2hvd0FjdGlvblRvb2x0aXAodGhpcywgJyUxJV8lMCUnKVwiPjxkaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICAgICAgXG4gICAgICAgIFxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXVkaW9fdGl0bGVfd3JhcFwiXG4gICAgID48YSBocmVmPVwiJXNlYXJjaF9ocmVmJVwiIG9ubW91c2VvdmVyPVwic2V0VGl0bGUodGhpcylcIiBub2RyYWc9XCIxXCIgb25jbGljaz1cInJldHVybiBhdWRpb1NlYXJjaFBlcmZvcm1lcih0aGlzLCBldmVudClcIiBjbGFzcz1cImF1ZGlvX3BlcmZvcm1lclwiPiU0JTxcL2FcbiAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9faW5mb19kaXZpZGVyXCI+Jm5kYXNoOzxcL3NwYW5cbiAgICAgPjxzcGFuIGNsYXNzPVwiYXVkaW9fdGl0bGUgX2F1ZGlvX3RpdGxlXCIgb25tb3VzZW92ZXI9XCJzZXRUaXRsZSh0aGlzLCBkb21QTih0aGlzKSlcIlxuICAgICAgICA+PHNwYW4gY2xhc3M9XCJhdWRpb190aXRsZV9pbm5lclwiIHRhYmluZGV4PVwiMFwiIG5vZHJhZz1cIjFcIiBhcmlhLWxhYmVsPVwiJTMlXCIgb25jbGljaz1cInJldHVybiB0b2dnbGVBdWRpb0x5cmljcyhldmVudCwgdGhpcywgJyUxJV8lMCUnLCAnJTklJylcIj4lMyU8XC9zcGFuPlxuICAgICAgICBcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJhdWRpb19hdXRob3JcIiBvbmNsaWNrPVwiY3VyLmNhbmNlbENsaWNrPXRydWVcIj4lOCU8XC9zcGFuPlxuICAgICAgPFwvc3BhblxuICAgID48XC9kaXY+XG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIl9hdWRpb19wbGF5ZXJfd3JhcFwiPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIl9hdWRpb19seXJpY3Nfd3JhcCBhdWRpb19seXJpY3NcIiBkYXRhLW5vZHJhZz1cIjFcIj48XC9kaXY+XG48XC9kaXY+IiwiYXVkaW9fYml0c190b19jbHMiOiJ7XCIxXCI6XCJpbmxpbmVkXCIsXCIyXCI6XCJseXJpY3NcIixcIjRcIjpcImNhbmVkaXRcIixcIjhcIjpcImNhbmFkZFwiLFwiNjRcIjpcInJlY29tc1wiLFwiMTZcIjpcImNsYWltZWRcIixcIjMyXCI6XCJjbGFpbWVkX3RpdGxlXCIsXCIyNTZcIjpcImZyb21fcXVldWVcIixcIjUxMlwiOlwiaHFcIixcIjMyNzY4XCI6XCJsdGJcIixcIjE2Mzg0XCI6XCJscGJcIixcIjQwOTZcIjpcImNsYWltX2hpZGRlblwiLFwiMjA0OFwiOlwiY2xhaW1fbW9kZVwiLFwiODE5MlwiOlwiY2xhaW1fdW1hXCJ9In0pO2N1ci5pbmNWaWV3cyA9IGZ1bmN0aW9uKCkgewogIHZhciBvaWR2aWQgPSAnMjE1MjY5OV8xNjg1OTE3NDEnOwogIGlmIChjdXIudmlkZW9JbmMgJiYgY3VyLnZpZGVvSW5jW29pZHZpZF0pIHsKICAgIHJldHVybjsKICB9CiAgaWYgKCFjdXIudmlkZW9JbmMpIHsKICAgIGN1ci52aWRlb0luYyA9IHt9OwogICAgY3VyLnZpZGVvU3RhcnRlZCA9IHt9OwogIH0KICBjdXIudmlkZW9JbmNbb2lkdmlkXSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICBjdXIudmlkZW9JbmNbb2lkdmlkXSA9ICdmaW5pc2hlZCc7CiAgICB2YXIgbSA9IHdpbmRvdy5WaWRlbyA/IFZpZGVvdmlldy5nZXRWaWRlb01vZHVsZShvaWR2aWQpIDogY3VyLm1vZHVsZTsKICAgIHZhciBvaWQgPSAyMTUyNjk5OwogICAgaWYgKG9pZCkgewogICAgICBhamF4LnBvc3QoImFsX3ZpZGVvLnBocCIsIHthY3Q6J2luY192aWV3X2NvdW50ZXInLCBvaWQ6b2lkLCB2aWQ6MTY4NTkxNzQxLCBoYXNoOic3Mjk1YjM5Nzg0OTdmMDg2OThiOGNjYjdkMzBhMGM2NicsIG1vZHVsZTogbX0pOwogICAgfQogIH0sIDUwMDApOwogIGN1ci52aWRlb1N0YXJ0ZWRbb2lkdmlkXSA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICBjdXIudmlkZW9TdGFydGVkW29pZHZpZF0gPSAnZmluaXNoZWQnOwogICAgdmFyIG0gPSB3aW5kb3cuVmlkZW8gPyBWaWRlb3ZpZXcuZ2V0VmlkZW9Nb2R1bGUob2lkdmlkKSA6IGN1ci5tb2R1bGU7CgogICAgdmFyIHZpZGVvY2F0ID0gJyc7CiAgICBpZiAod2luZG93LlZpZGVvY2F0ICYmIHdpbmRvdy5WaWRlbyAmJiBWaWRlby5pc0luQ2F0YWxvZygpKSB7CiAgICAgIHZhciBwbElkID0gVmlkZW9QbGF5bGlzdC5nZXRDdXJMaXN0SWQoKTsKICAgICAgaWYgKFZpZGVvY2F0LmlzVG9wM1BsYXlsaXN0KHBsSWQpKSB7CiAgICAgICAgdmlkZW9jYXQgPSAnZmVhdHVyZWQnOwogICAgICB9IGVsc2UgewogICAgICAgIHZpZGVvY2F0ID0gcGxJZDsKICAgICAgfQogICAgfQoKICAgIHZhciBvaWQgPSAyMTUyNjk5OwogICAgaWYgKG9pZCkgewogICAgICB3aW5kb3cubXZjdXIgPSB3aW5kb3cubXZjdXIgfHwge307CiAgICAgIG12Y3VyLnZpZXdTdGFydGVkVGltZXN0YW1wID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CiAgICAgIGFqYXgucG9zdCgiYWxfdmlkZW8ucGhwIiwge2FjdDondmlkZW9fdmlld19zdGFydGVkJywgb2lkOm9pZCwgdmlkOjE2ODU5MTc0MSwgaGFzaDonNzI5NWIzOTc4NDk3ZjA4Njk4YjhjY2I3ZDMwYTBjNjYnLCBtb2R1bGU6IG0sIHZpZGVvY2F0OiB2aWRlb2NhdH0pOwogICAgfQogIH0sIDApOwogIGN1ci5kZXN0cm95LnB1c2goZnVuY3Rpb24gKCkgewogICAgaWYgKGN1ci52aWRlb0luY1tvaWR2aWRdICYmIGN1ci52aWRlb0luY1tvaWR2aWRdICE9ICdmaW5pc2hlZCcpIHsKICAgICAgY2xlYXJUaW1lb3V0KGN1ci52aWRlb0luY1tvaWR2aWRdKTsKICAgIH0KICAgIGlmIChjdXIudmlkZW9TdGFydGVkW29pZHZpZF0gJiYgY3VyLnZpZGVvU3RhcnRlZFtvaWR2aWRdICE9ICdmaW5pc2hlZCcpIHsKICAgICAgY2xlYXJUaW1lb3V0KGN1ci52aWRlb1N0YXJ0ZWRbb2lkdmlkXSk7CiAgICB9CiAgfSk7Cn07Cm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvID0gJzIxNTI2OTlfMTY4NTkxNzQxJzsgCm12Y3VyLm12RGF0YS5hZGRlZFZpZGVvSGFzaCA9ICdkNGVhNDY4N2YwMWNjMWVlOWQnOyAKbXZjdXIubXZEYXRhLmFkZGVkVmlkZW9TaGFyZUhhc2ggPSAnOGJhOGZkYWZjZjQ2ZTFiYzY4JzsKbXZjdXIubXZEYXRhLm5lZWRzTmV3ID0gMTs8IT4KCjxkaXYgY2xhc3M9Im12X2luZm9fd2lkZV9jb2x1bW4gZmxfbCI+CiAgCiAgPGRpdiBjbGFzcz0ibXZfdGl0bGVfYmxvY2siPgogICAgPGRpdiBpZD0ibXZfdmlld3MiIGNsYXNzPSJtdl92aWV3c19jb3VudCAiIG9ubW91c2VvdmVyPSIiPjM3IHZpZXdzPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl90aXRsZSIgaWQ9Im12X3RpdGxlIj5CRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0PC9kaXY+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfYWN0aW9uc19ibG9jayIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImZsYXRfYnV0dG9uIHNlY29uZGFyeSBidXR0b25fbGlnaHQgbXZfc2hhcmVfYnV0dG9uIiBzdHlsZT0iZGlzcGxheTpub25lOyIgb25jbGljaz0idmlkZW92aWV3LnNlbmRWaWRlbygpOyI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X3NoYXJlX2ljb24iPjwvc3Bhbj5TaGFyZQogICAgICA8L2Rpdj4KICAgICAgPGRpdiBpZD0ibXZfYWRkX3dyYXAiPjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJmbGF0X2J1dHRvbiBzZWNvbmRhcnkgYnV0dG9uX2xpZ2h0IG12X2VkaXRfYnV0dG9uIiBvbmNsaWNrPSJyZXR1cm4gdmlkZW92aWV3LnNob3dFZGl0Qm94KDE2ODU5MTc0MSwgMjE1MjY5OSkiIGlkPSJtdl9lZGl0X2J1dHRvbiI+CiAgICAgICAgPHNwYW4gY2xhc3M9Im12X2VkaXRfaWNvbiI+PC9zcGFuPkVkaXQgdmlkZW8KICAgICAgPC9kaXY+CiAgICAgIAogICAgICA8ZGl2IGNsYXNzPSJtdl9tb3JlIGZsX2wiIGlkPSJtdl9tb3JlIj5Nb3JlPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KICAKICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfYmxvY2siPgogICAgPGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgPGEgaHJlZj0iL2x5YW5vaS5raXJpbGwiIGNsYXNzPSJtdl9hdXRob3JfcGhvdG9fd3JhcCBmbF9sIj4KICAgICAgICA8aW1nIGlkPSJtdl9hdXRob3JfcGhvdG8iIGNsYXNzPSJtdl9hdXRob3JfcGhvdG8iIHNyYz0iaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNjIzODI0L3Y2MjM4MjQ2OTkvNTU1NzUvQ0NRWjI5bDBCOWsuanBnIj4KICAgICAgPC9hPgogICAgICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfaW5mbyBmbF9sIj4KICAgICAgICA8ZGl2IGNsYXNzPSJtdl9hdXRob3JfbmFtZSI+CiAgICAgICAgICA8YSBjbGFzcz0ibWVtX2xpbmsiIGhyZWY9Ii9seWFub2kua2lyaWxsIj5LaXJpbGwgTHlhbm95PC9hPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im12X2luZm9fZGF0ZSI+TWF5IDEyLCAyMDE0IGF0IDk6MjMgYW0gZnJvbSA8YSBocmVmPSIvYXdheS5waHA/dG89aHR0cCUzQSUyRiUyRnd3dy55b3V0dWJlLmNvbSUyRndhdGNoJTNGdiUzRDRUaHdzNXdxNUdJIiB0YXJnZXQ9Il9ibGFuayI+WW91VHViZTwvYT4gPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgCiAgICA8L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJtdl9kZXNjcmlwdGlvbl9ibG9jayI+CiAgPGRpdiBjbGFzcz0ic2VsZWN0X2ZpeCBjbGVhcl9maXgiPgogICAgPGRpdiBpZD0ibXZfZGVzY3JpcHRpb24iIGNsYXNzPSJtdl9kZXNjIj4KICA8ZGl2IGNsYXNzPSJqc19tdl9kZXNjcl9maWVsZCBjYW50X2VkaXQiIGlkPSJtdl9kZXNjcl9maWVsZCI+QkVBVCBTT1VMIFNURVAgJiM5NzMzOyBQcm9qZWN0ODE4IFJ1c3NpYW4gRGFuY2UgQ2hhbXBpb25zaGlwICYjOTczMzsgMS0yIOzg/ywgzO7x6uLgIDIwMTQ8YnI+Q2hvcmVvZ3JhcGh5OiBLYXRpZTxicj48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZwcm9qZWN0ODE4LmNvbSIgdGFyZ2V0PSJfYmxhbmsiIHRhcmdldD0iX2JsYW5rIj5wcm9qZWN0ODE4LmNvbTwvYT4gfCA8YSBocmVmPSJodHRwOi8vdmsuY29tL3Byb2plY3Q4MThydXNzaWEiIG1lbnRpb25faWQ9InByb2plY3Q4MThydXNzaWEiIG9uY2xpY2s9InJldHVybiBtZW50aW9uQ2xpY2sodGhpcywgZXZlbnQpIiBvbm1vdXNlb3Zlcj0ibWVudGlvbk92ZXIodGhpcykiPnZrLmNvbS9wcm9qZWN0ODE4cnVzc2lhPC9hPiB8IDxhIGhyZWY9Imh0dHA6Ly92ay5jb20vcHJvamVjdDgxOCIgbWVudGlvbl9pZD0icHJvamVjdDgxOCIgb25jbGljaz0icmV0dXJuIG1lbnRpb25DbGljayh0aGlzLCBldmVudCkiIG9ubW91c2VvdmVyPSJtZW50aW9uT3Zlcih0aGlzKSI+dmsuY29tL3Byb2plY3Q4MTg8L2E+PGJyPi4uPC9kaXY+CiAgPGEgaWQ9Im12X2Rlc2NyX2V4cGFuZF90b2dnbGUiIGNsYXNzPSJ3YWxsX3Bvc3RfbW9yZSIgc3R5bGU9IiIgb25jbGljaz0iVmlkZW92aWV3LmV4cGFuZERlc2NyKHRoaXMpIj5FeHBhbmQgdGV4dIU8L2E+CiAgPGRpdiBpZD0ibXZfZGVzY19mdWxsX3RleHQiPkJFQVQgU09VTCBTVEVQICYjOTczMzsgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCAmIzk3MzM7IDEtMiDs4P8sIMzu8eri4CAyMDE0PGJyPkNob3Jlb2dyYXBoeTogS2F0aWU8YnI+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGcHJvamVjdDgxOC5jb20iIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+cHJvamVjdDgxOC5jb208L2E+IHwgPGEgaHJlZj0iaHR0cDovL3ZrLmNvbS9wcm9qZWN0ODE4cnVzc2lhIiBtZW50aW9uX2lkPSJwcm9qZWN0ODE4cnVzc2lhIiBvbmNsaWNrPSJyZXR1cm4gbWVudGlvbkNsaWNrKHRoaXMsIGV2ZW50KSIgb25tb3VzZW92ZXI9Im1lbnRpb25PdmVyKHRoaXMpIj52ay5jb20vcHJvamVjdDgxOHJ1c3NpYTwvYT4gfCA8YSBocmVmPSJodHRwOi8vdmsuY29tL3Byb2plY3Q4MTgiIG1lbnRpb25faWQ9InByb2plY3Q4MTgiIG9uY2xpY2s9InJldHVybiBtZW50aW9uQ2xpY2sodGhpcywgZXZlbnQpIiBvbm1vdXNlb3Zlcj0ibWVudGlvbk92ZXIodGhpcykiPnZrLmNvbS9wcm9qZWN0ODE4PC9hPjxicj48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZmYWNlYm9vay5jb20lMkZQcm9qZWN0ODE4UnVzc2lhIiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPmZhY2Vib29rLmNvbS9Qcm9qZWN0ODE4UnVzc2lhPC9hPjxicj48YSBocmVmPSIvYXdheS5waHA/dG89aHR0cCUzQSUyRiUyRmluc3RhZ3JhbS5jb20lMkZwcm9qZWN0ODE4IiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPmluc3RhZ3JhbS5jb20vcHJvamVjdDgxODwvYT48YnI+PGEgaHJlZj0iL2F3YXkucGhwP3RvPWh0dHAlM0ElMkYlMkZ0d2l0dGVyLmNvbSUyRnByb2plY3Q4MTgiIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+dHdpdHRlci5jb20vcHJvamVjdDgxODwvYT48YnI+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGeW91dHViZS5jb20lMkZQcm9qZWN0ODE4UnVzc2lhIiB0YXJnZXQ9Il9ibGFuayIgdGFyZ2V0PSJfYmxhbmsiPnlvdXR1YmUuY29tL1Byb2plY3Q4MThSdXNzaWE8L2E+PGJyPjxhIGhyZWY9Ii9hd2F5LnBocD90bz1odHRwJTNBJTJGJTJGeW91dHViZS5jb20lMkZQcm9qZWN0ODE4Y2hhbXAiIHRhcmdldD0iX2JsYW5rIiB0YXJnZXQ9Il9ibGFuayI+eW91dHViZS5jb20vUHJvamVjdDgxOGNoYW1wPC9hPjwvZGl2PgogIDxkaXYgY2xhc3M9InByICIgaWQ9Im12X2lubGluZV9lZGl0X3ByIj48ZGl2IGNsYXNzPSJwcl9idCI+PC9kaXY+PGRpdiBjbGFzcz0icHJfYnQiPjwvZGl2PjxkaXYgY2xhc3M9InByX2J0Ij48L2Rpdj48L2Rpdj4KPC9kaXY+CiAgPC9kaXY+CjwvZGl2PgogIDxkaXYgY2xhc3M9Im12X2NvbW1lbnRzX2Jsb2NrIHdhbGxfbW9kdWxlIj4KICAgIDxkaXYgaWQ9InBvc3QyMTUyNjk5X3ZpZGVvMTY4NTkxNzQxbXYiPgogICAgICA8ZGl2IGlkPSJtdl9jb21tZW50c193cmFwIj4KICA8ZGl2IGlkPSJtdl9jb21tZW50c19oZWFkZXIiIG9uY2xpY2s9IlZpZGVvdmlldy5tb3JlQ29tbWVudHMoKTsiIGNsYXNzPSJtdl9jb21tZW50c19leHBhbmRlZCI+PC9kaXY+CiAgPGRpdiBpZD0ibXZfY29tbWVudHNfc3VtbWFyeSIgY2xhc3M9Im12X2NvbW1lbnRzX3N1bW1hcnkgbXZfY29tbWVudHNfZXhwYW5kZWQiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij48L2Rpdj4KICA8ZGl2IGlkPSJtdl9jb21tZW50cyI+PC9kaXY+CjwvZGl2PgogICAgICAKICAgIDwvZGl2PgogIDwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0ibXZfaW5mb19uYXJyb3dfY29sdW1uIGZsX3IiPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2Jsb2NrIj4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9ibG9ja190aXRsZSI+T3RoZXIgdmlkZW9zPC9kaXY+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY2OTUyNTk5IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2Njk1MjU5OScsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTEzMjE5L3UyMTQ5NzQ4NzMvdmlkZW8vbF9iZTZlMzY5ZC5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj40OjA2PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjY5NTI1OTkiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY2OTUyNTk5JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iweXnIO3g5+Lg7ej/Ij7B5ecg7eDn4uDt6P88L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjQwIHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8tOTg4OTE2MjVfNDU2MjM5MDI5IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCctOTg4OTE2MjVfNDU2MjM5MDI5JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M4MzY1MjgvdTI3MTEzMDQzNy92aWRlby9sXzM2MmE4MmRmLmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjQ6MDI8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8tOTg4OTE2MjVfNDU2MjM5MDI5IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCctOTg4OTE2MjVfNDU2MjM5MDI5JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iQU5BU1RBU0lBIEVWU1RFR05FRVZBIC0gV2lubmVyIG9mIHRoZSBQcm9mZXNzaW9uYWwgQ2F0ZWdvcnkgKFdvbWVuKSI+QU5BU1RBU0lBIEVWU1RFR05FRVZBIC0gV2lubmVyIG9mIHRoZSBQcm9mZXNzaW9uYWwgQ2F0ZWdvcnkgKFdvbWVuKTwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+Miw0ODYgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4OTg4OTQ5IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODk4ODk0OScsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTQwMzA1L3UyNDYxMDUwODkvdmlkZW8vbF9jMGFkMjFlNS5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4wOjQzPC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjg5ODg5NDkiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY4OTg4OTQ5JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iTWl4LfLl8Oj/Ij5NaXgt8uXw6P88L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjQgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY3NzA1MDE4IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2NzcwNTAxOCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTQwMjA2L3U0NDg4OTIzL3ZpZGVvL2xfM2U2NTM5OGYuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MDozMDwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY3NzA1MDE4IiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2NzcwNTAxOCcsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9Isrg8fLo7eMgLUFydC4gZGFuY2Ugc2hvdyAmcXVvdDsgQklHb29EZWUuIj7K4PHy6O3jIC1BcnQuIGRhbmNlIHNob3cgJnF1b3Q7IEJJR29vRGVlLjwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV92aWV3cyI+MTA1IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2ODMzMTM1NCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjgzMzEzNTQnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzYwNzYyMC91NDM4OTg2Ni92aWRlby9sX2FiMTE2NmNiLmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjM6MjU8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2ODMzMTM1NCIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjgzMzEzNTQnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSLS5eDy8ODr6Ofu4uDt7e7lIO7y6vD78ujlIOru7erz8PHgICZxdW90O8zu8eru4vHq6OUg7ODx8uXw4C0yMDE0JnF1b3Q7Ly8gysDRILk3Ij7S5eDy8ODr6Ofu4uDt7e7lIO7y6vD78ujlIOru7erz8PHgICZxdW90O8zu8eru4vHq6OUg7ODx8uXw4C0yMDE0JnF1b3Q7Ly8gysDRILk3PC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj40MiB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjM4NjI5ODAiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTYzODYyOTgwJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M1MDUyMDYvdTMyMDY3MDIvdmlkZW8vbF80NDUyODVkNy5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4yOjMwPC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjM4NjI5ODAiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTYzODYyOTgwJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iV2l0aG91dCBhIGZhY2UgICjS4Ovg7fLr6OLg/yAgzO7r7uTl5vwpIDIiPldpdGhvdXQgYSBmYWNlICAo0uDr4O3y6+ji4P8gIMzu6+7k5eb8KSAyPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj40MSB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjgyODI0NDMiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY4MjgyNDQzJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJ30sIGV2ZW50KTsiIGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RodW1iIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3BwLnVzZXJhcGkuY29tL2M1NDAzMDQvdTU4MTA1NzI4L3ZpZGVvL2xfOGZkNTg1ZmUuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+Mjo1NjwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTY4MjgyNDQzIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2ODI4MjQ0MycsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCcsIGFkZFBhcmFtczogeyBhYl9ncm91cDogJ3ByZXZuZXh0JyB9fSwgZXZlbnQpOyIgdGl0bGU9Ik5vIG5hbWUiPk5vIG5hbWU8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjE3IHZpZXdzPC9kaXY+CiAgPC9kaXY+CjwvZGl2PjxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW0gY2xlYXJfZml4Ij4KICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2NDc1NzgzNiIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjQ3NTc4MzYnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzUzMzYwMy91ODY4NzEyODkvdmlkZW8vbF9jN2YzMWFjZC5qcGcnKSI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2R1cmF0aW9uIj4yOjI3PC9kaXY+CiAgPC9hPgogIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1faW5mbyI+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3RpdGxlIj4KICAgICAgPGEgaHJlZj0iL3ZpZGVvMjE1MjY5OV8xNjQ3NTc4MzYiICBvbm1vdXNldXA9ImFqYXgucG9zdCgnL2FsX2luZGV4LnBocCcsIHthY3Q6J2Ffb3RoZXJfdmlkZW9zX25hdmlnYXRpb24nLCBibG9ja19pZDogMSwgZnJvbTogJ290aGVyX3ZpZGVvcyd9KTsgcmV0dXJuIGNoZWNrRXZlbnQoZXZlbnQpOyIgIG9uY2xpY2s9InJldHVybiBzaG93VmlkZW8oJzIxNTI2OTlfMTY0NzU3ODM2JywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iQWxpY2UgYnkgS2lyaWxsIEx5YW5vaS4iPkFsaWNlIGJ5IEtpcmlsbCBMeWFub2kuPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj4xNTkgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbSBjbGVhcl9maXgiPgogIDxhIGhyZWY9Ii92aWRlbzIxNTI2OTlfMTYxNTMzMDQyIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcyMTUyNjk5XzE2MTUzMzA0MicsICcnLCB7YXV0b3BsYXk6IDEsIG1vZHVsZTogJ3JlY29tbWVuZCd9LCBldmVudCk7IiBjbGFzcz0ibXZfcmVjb21faXRlbV90aHVtYiIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9wcC51c2VyYXBpLmNvbS9jNTEwNDE1L3UxNDM0ODI3MS92aWRlby9sXzdlMDVhMGZkLmpwZycpIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fZHVyYXRpb24iPjM6NTI8L2Rpdj4KICA8L2E+CiAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9pbmZvIj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGl0bGUiPgogICAgICA8YSBocmVmPSIvdmlkZW8yMTUyNjk5XzE2MTUzMzA0MiIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMjE1MjY5OV8xNjE1MzMwNDInLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnLCBhZGRQYXJhbXM6IHsgYWJfZ3JvdXA6ICdwcmV2bmV4dCcgfX0sIGV2ZW50KTsiIHRpdGxlPSLA7fLu7SDK4Ozg6+jy5Ojt7uIgLSDD7uvu8fPp8uUg5+Ag7OXt/yI+wO3y7u0gyuDs4Ovo8uTo7e7iIC0gw+7r7vHz6fLlIOfgIOzl7f88L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im12X3JlY29tX2l0ZW1fdmlld3MiPjIxNCB2aWV3czwvZGl2PgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtIGNsZWFyX2ZpeCI+CiAgPGEgaHJlZj0iL3ZpZGVvMTEwMjc4MTJfNDU2MjM5MTczIiAgb25tb3VzZXVwPSJhamF4LnBvc3QoJy9hbF9pbmRleC5waHAnLCB7YWN0OidhX290aGVyX3ZpZGVvc19uYXZpZ2F0aW9uJywgYmxvY2tfaWQ6IDEsIGZyb206ICdvdGhlcl92aWRlb3MnfSk7IHJldHVybiBjaGVja0V2ZW50KGV2ZW50KTsiICBvbmNsaWNrPSJyZXR1cm4gc2hvd1ZpZGVvKCcxMTAyNzgxMl80NTYyMzkxNzMnLCAnJywge2F1dG9wbGF5OiAxLCBtb2R1bGU6ICdyZWNvbW1lbmQnfSwgZXZlbnQpOyIgY2xhc3M9Im12X3JlY29tX2l0ZW1fdGh1bWIiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vcHAudXNlcmFwaS5jb20vYzgzNjQzNi92ODM2NDM2ODEyL2VmZTIvVnhkRXFVOHlKQWcuanBnJykiPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV9kdXJhdGlvbiI+MDoxNzwvZGl2PgogIDwvYT4KICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX2luZm8iPgogICAgPGRpdiBjbGFzcz0ibXZfcmVjb21faXRlbV90aXRsZSI+CiAgICAgIDxhIGhyZWY9Ii92aWRlbzExMDI3ODEyXzQ1NjIzOTE3MyIgIG9ubW91c2V1cD0iYWpheC5wb3N0KCcvYWxfaW5kZXgucGhwJywge2FjdDonYV9vdGhlcl92aWRlb3NfbmF2aWdhdGlvbicsIGJsb2NrX2lkOiAxLCBmcm9tOiAnb3RoZXJfdmlkZW9zJ30pOyByZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiAgb25jbGljaz0icmV0dXJuIHNob3dWaWRlbygnMTEwMjc4MTJfNDU2MjM5MTczJywgJycsIHthdXRvcGxheTogMSwgbW9kdWxlOiAncmVjb21tZW5kJywgYWRkUGFyYW1zOiB7IGFiX2dyb3VwOiAncHJldm5leHQnIH19LCBldmVudCk7IiB0aXRsZT0iUGFyYW5vaWEgMjAxNiDF4vHy5ePt5eXi4CDA7eDx8uDx6P8iPlBhcmFub2lhIDIwMTYgxeLx8uXj7eXl4uAgwO3g8fLg8ej/PC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJtdl9yZWNvbV9pdGVtX3ZpZXdzIj4yODIgdmlld3M8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj48IT48IT48IWpzb24+eyJsYW5nIjp7Imdsb2JhbF9zaG9ydF9kYXRlX3RpbWUiOlsiIiwie2RheX0ge21vbnRofSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInllc3RlcmRheSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInRvZGF5IGF0IHtob3VyfTp7bWludXRlfSB7YW1fcG19IiwidG9tb3Jyb3cgYXQge2hvdXJ9OnttaW51dGV9IHthbV9wbX0iXSwicmVwbHlfdG9fcG9zdCI6IllvdXIgY29tbWVudC4uIiwid2FsbF9NX3JlcGxpZXNfb2ZfTiI6WyIiLCIlcyBjb21tZW50IG9mIHtsaW5rfXthbGx9e1wvbGlua30iLCIlcyBjb21tZW50cyBvZiB7bGlua317YWxsfXtcL2xpbmt9Il0sIndhbGxfbW9yZV9yZXBsaWVzIjpbIiIsInNob3cgJXMgbW9yZSBjb21tZW50Iiwic2hvdyAlcyBtb3JlIGNvbW1lbnRzIl0sIndhbGxfYWxsX3JlcGxpZXMiOiJhbGwgY29tbWVudHMiLCJkb250X2F0dGFjaCI6IlJlbW92ZSBhdHRhY2htZW50IiwidmlkZW9fWF9jb21tcyI6WyIiLCIlcyBjb21tZW50IiwiJXMgY29tbWVudHMiXSwidmlkZW9fZWRpdCI6IkVkaXQgdmlkZW8iLCJ2aWRlb19lZGl0X2Rlc2MiOiJFZGl0IGRlc2NyaXB0aW9uIiwidmlkZW9fZWRpdF9kZXNjX2ludHJvIjoiRW50ZXIgZGVzY3JpcHRpb24iLCJ2aWRlb19zaG93X3ByZXZpb3VzX2NvbW1lbnRzIjpbIiIsIlNob3cgJXMgcHJldmlvdXMgY29tbWVudCIsIlNob3cgJXMgcHJldmlvdXMgY29tbWVudHMiXSwidmlkZW9fYXJlX3lvdV9zdXJlX2Nsb3NlIjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGNsb3NlIHRoaXMgdmlkZW8/IiwidmlkZW9fYXJlX3lvdV9zdXJlX2Nsb3NlX3RpdGxlIjoiQ2xvc2UgdmlkZW8iLCJwcm9maWxlX21lbnRpb25fbm90X2ZvdW5kIjoiVXNlciB3YXMgbm90IGZvdW5kIiwicHJvZmlsZV9tZW50aW9uX3N0YXJ0X3R5cGluZyI6IlN0YXJ0IHR5cGluZyBhIG5hbWUuLiIsInZpZGVvX2FsYnVtX2lzX3ByaXZhdGVfdHQiOiJUaGlzIGFsYnVtIGlzIHByaXZhdGUiLCJ2aWRlb19hZGRfdG9fbXlfcGxheWxpc3QiOiJBZGQgdG8gTXkgVmlkZW9zIiwidmlkZW9fYWRkZWRfdG9fbXlfcGxheWxpc3QiOiJBZGRlZCIsInZpZGVvX2NoYW5nZXNfc2F2ZWQiOiJDaGFuZ2VzIHNhdmVkIiwidmlkZW9fYWRkX2FsYnVtIjoiQ3JlYXRlIGFsYnVtIiwidmlkZW9fYWRkX3ByaXZhdGVfYWxidW0iOiJDcmVhdGUgYSBwcml2YXRlIGFsYnVtIiwidmlkZW9fYWRkX3RvX2dyb3VwIjoiQWRkIHRvIGNvbW11bml0eSIsInZpZGVvX2V4cG9ydF9hY3Rpb24iOiJFeHBvcnQiLCJ2aWRlb19zdGF0aXN0aWNzIjoiU3RhdGlzdGljcyIsInZpZGVvX2NvbXBsYWluIjoiUmVwb3J0IiwidmlkZW9fc2VsZWN0X2FsYnVtcyI6IlNlbGVjdCBhbGJ1bXMiLCJ2aWRlb190Y19zdXJlX2RlbGV0ZSI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyB2aWRlbz88YnI+PGJyPllvdSB3aWxsIG5vdCBiZSBhYmxlIHRvIHJlc3RvcmUgdGFncyBhbmQgY29tbWVudHMuIiwidmlkZW9fdGNfZGVsZXRlIjoiRGVsZXRlIiwidmlkZW9fZGVsZXRlX2RpYWxvZ190aXRsZSI6IkRlbGV0ZSB2aWRlbyIsInZpZGVvX2RlbGV0ZV9ib3hfbm9fdGl0bGUiOiJObyIsInZpZGVvX21lbnVfZGVsZXRlIjoiRGVsZXRlIHZpZGVvIiwidmlkZW9fdmlld3NfY291bnRfdHRfdGV4dCI6Ik9yaWdpbmFsIHZpZGVvIHZpZXdzICh0b3RhbCB2aWV3cykiLCJ2aWRlb19vbmx5X3ByaXZhdGVfdmlkZW8iOiJUaGlzIHZpZGVvIGNhbiBvbmx5IGJlIGFkZGVkIHRvIGEgcHJpdmF0ZSBhbGJ1bSIsInZpZGVvX2xlYXZlX2Nsb3NlZF9ncm91cF90aXRsZSI6IkxlYXZlIGNsb3NlZCBjb21tdW5pdHkiLCJ2aWRlb19sZWF2ZV9jbG9zZWRfZ3JvdXBfdGV4dCI6IllvdSBhcmUgYWJvdXQgdG8gbGVhdmUgYSBjbG9zZWQgY29tbXVuaXR5LiBJdCBtYXkgbm90IGJlIHRoYXQgZWFzeSB0byBjb21lIGJhY2suIExlYXZlIHRoZSBjb21tdW5pdHk/IiwidmlkZW9fbGVhdmVfYWRtaW5lZF9ncm91cF90ZXh0IjoiWW91IGFyZSBhbiA8Yj5hZG1pbmlzdHJhdG9yPFwvYj4gaW4gdGhpcyBjb21tdW5pdHkuIFlvdSB3aWxsIGxvc2UgdGhpcyBwb3NpdGlvbiBpZiB5b3UgbGVhdmUgbm93LiBMZWF2ZSB0aGUgY29tbXVuaXR5PyIsInZpZGVvX3ZpZXdfc3Vic2NyaWJlX3RvX2F1dGhvciI6IlN1YnNjcmliZSIsInZpZGVvX3ZpZXdfc3Vic2NyaWJlZF9tc2ciOiJGb2xsb3dpbmciLCJ2aWRlb19wbGF5ZXJfbmV4dF90aXRsZSI6Ik5leHQgdmlkZW8iLCJ2aWRlb19pX2xpa2UiOiJMaWtlIiwidmlkZW9fc2hhcmVfd2l0aF9mcmllbmRzIjoiU2hhcmUiLCJ2aWRlb19hZGRfZmxhc2giOiJBZGQgdG8gTXkgVmlkZW9zIiwidmlkZW9fYWRkZWRfZmxhc2giOiJWaWRlbyBhZGRlZCB0byBNeSBWaWRlb3MiLCJ2aWRlb19jb21tZW50c19zdW1tYXJ5IjpbIiIsIiVzIGNvbW1lbnQiLCIlcyBjb21tZW50cyJdLCJ2aWRlb19OX3ZpZXdzX2xpc3QiOlsiIiwiJXMgdmlldyIsIiVzIHZpZXdzIl0sInZpZGVvX3BsYXlsaXN0X3JldmVyc2VfdHQiOiJSZXZlcnNlIG9yZGVyIiwidmlkZW9fcGxheWxpc3RfYXV0b3BsYXlfZGlzYWJsZV90dCI6IkRpc2FibGUgYXV0b3BsYXkiLCJ2aWRlb19wbGF5bGlzdF9hdXRvcGxheV9lbmFibGVfdHQiOiJFbmFibGUgYXV0b3BsYXkiLCJ2aWRlb19saXZlX05fd2F0Y2hpbmciOlsiIiwiJXMgaXMgd2F0Y2hpbmcgbm93IiwiJXMgYXJlIHdhdGNoaW5nIG5vdyJdLCJ2aWRlb19saXZlX2NoYXRfbXNnX3Rvb19sb25nIjoiVGhlIG1lc3NhZ2UgaXMgdG9vIGxvbmciLCJ2aWRlb19saXZlX2NoYXRfdG9vX2Zhc3QiOiJUb28gZmFzdIUiLCJ2aWRlb19hcmlhX21pbmltaXplX3BsYXlsaXN0IjoiSGlkZSBwbGF5bGlzdCIsInZpZGVvX2FyaWFfZXhwYW5kX3BsYXlsaXN0IjoiU2hvdyBwbGF5bGlzdCIsInZpZGVvX2FyaWFfbWluaW1pemVfY2hhdCI6IkhpZGUgY2hhdCIsInZpZGVvX2FyaWFfZXhwYW5kX2NoYXQiOiJFeHBhbmQgY2hhdCIsInZpZGVvX2xpdmVfbm90aWZ5X3N1YnNjcmliZWQiOiJTdHJlYW0gbm90aWZpY2F0aW9ucyBlbmFibGVkIiwidmlkZW9fbGl2ZV9ub3RpZnlfdW5zdWJzY3JpYmVkIjoiU3RyZWFtIG5vdGlmaWNhdGlvbnMgZGlzYWJsZWQiLCJ2aWRlb19saXZlX3lvdV9oYXZlX1hfbW9uZXkiOiJZb3UgaGF2ZSB7bW9uZXl9IiwidmlkZW9fdW5mb2xsb3dfZnJpZW5kX3RpdGxlIjoiUmVtb3ZlIGZyb20gZnJpZW5kcyIsInZpZGVvX3VuZm9sbG93X2ZyaWVuZF90ZXh0IjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlbW92ZSBLaXJpbGwgZnJvbSB5b3VyIGZyaWVuZCBsaXN0PyJ9LCJtdkRhdGEiOnsidGl0bGUiOiJCRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0IiwiZGVzYyI6IkJFQVQgU09VTCBTVEVQICYjOTczMzsgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCAmIzk3MzM7IDEtMiDs4P8sIMzu8eri4CAyMDE0PGJyPkNob3Jlb2dyYXBoeTogS2F0aWU8YnI+PGJyPnByb2plY3Q4MTguY29tIHwgdmsuY29tXC9wcm9qZWN0ODE4cnVzc2lhIHwgdmsuY29tXC9wcm9qZWN0ODE4PGJyPjxicj5mYWNlYm9vay5jb21cL1Byb2plY3Q4MThSdXNzaWE8YnI+aW5zdGFncmFtLmNvbVwvcHJvamVjdDgxODxicj50d2l0dGVyLmNvbVwvcHJvamVjdDgxODxicj48YnI+eW91dHViZS5jb21cL1Byb2plY3Q4MThSdXNzaWE8YnI+eW91dHViZS5jb21cL1Byb2plY3Q4MThjaGFtcCIsIm9pZCI6MjE1MjY5OSwidmlkIjoxNjg1OTE3NDEsImF1dGhvcklkIjoyMTUyNjk5LCJhdXRob3JQaG90byI6Imh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzYyMzgyNFwvdjYyMzgyNDY5OVwvNTU1NzVcL0NDUVoyOWwwQjlrLmpwZyIsImF1dGhvckhyZWYiOiJcL2x5YW5vaS5raXJpbGwiLCJ2aWRlb1JhdyI6IjIxNTI2OTlfMTY4NTkxNzQxIiwiaGFzaCI6IjAyMzY0NmMwYmM3MTEwYWQ5MSIsImxpa2VIYXNoIjoiMzBjYzE4OTJmODFkZWI2MjM1IiwiZWRpdEhhc2giOiIiLCJlZGl0RnJvbURyb3Bkb3duIjowLCJoaWRlRWRpdCI6bnVsbCwiY29tbXNob3duIjowLCJjb21tY291bnQiOjAsImxpa2VkIjpmYWxzZSwibGlrZXMiOjAsImFkZGVkIjowLCJjYW5fYWRkIjowLCJhZGRfaGFzaCI6ImZmYjg0MmQwY2U2ZmMxNjhhNyIsIm5vbGlrZXMiOjEsImR1cmF0aW9uIjoyOTksInZzZWdzU2l6ZSI6MjkuMDAwMDAwLCJwbGF5bGlzdHMiOltdLCJ1cGxvYWRlZCI6ZmFsc2UsInB1Ymxpc2hlZCI6dHJ1ZSwibm9Db250cm9scyI6ZmFsc2UsInBsYXlsaXN0QWRkSGFzaCI6ImZmYjg0MmQwY2U2ZmMxNjhhNyIsImRlbGV0ZUhhc2giOiIiLCJyZXBvcnRSZWFzb25zIjpbXSwicmVwb3J0SGFzaCI6IjFkY2MzZjJkNDE2OWY1NTBjMCIsImluZm8iOlsyMTUyNjk5LDE2ODU5MTc0MSwiaHR0cHM6XC9cL3BwLnVzZXJhcGkuY29tXC9jNjE3ODMxXC91OTYxMjMzMDNcL3ZpZGVvXC9sXzI3ZTRmZjVjLmpwZyIsIkJFQVQgU09VTCBTVEVQIJcgUkRDMTQgUHJvamVjdDgxOCBSdXNzaWFuIERhbmNlIENoYW1waW9uc2hpcCwgTWF5IDEtMiwgTW9zY293IDIwMTQiLDMsIjQ6NTkiLCIiLCIiLCI8YSBocmVmPVwiXC9seWFub2kua2lyaWxsXCIgY2xhc3M9XCJtZW1fbGlua1wiPktpcmlsbCBMeWFub3k8XC9hPiIsMTM5OTg3NTc4MywzN10sImNhbkV4cG9ydCI6MSwiaXNWaWRlb0FkcyI6ZmFsc2UsImRlbGV0ZUZyb21BbGxBbGJ1bXNIYXNoIjoiIiwiaXNfbGl2ZSI6MCwiaXNfYWN0aXZlX2xpdmUiOjAsIlBMQVlMSVNUX0FEREVEX0lEIjotMiwiUExBWUxJU1RfVVBMT0FERURfSUQiOi0xLCJub1B1YmxpY0FkZCI6ZmFsc2UsIlBMQVlFUl9GVUxMX1dJRFRIIjo5NjAsIlBMQVlFUl9GVUxMX0hFSUdIVCI6NTQwLCJQTEFZRVJfUExfV0lEVEgiOjcyMCwiUExBWUVSX1BMX0hFSUdIVCI6NDA1LCJsX3R5cGUiOjIsImt6IjowLCJ0bnNfbW9uZXRpemVkIjp0cnVlfSwid2FsbFRwbCI6eyJyZXBseV9ib3giOiI8ZGl2IGlkPVwicmVwbHlfYm94X3dyYXAlcG9zdF9pZCVcIj48ZGl2IGNsYXNzPVwicmVwbHlfYm94X2lubmVyX3dyYXBcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGx5X2Zha2Vib3hfd3JhcFwiIGlkPVwicmVwbHlfZmFrZWJveCVwb3N0X2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5zaG93RWRpdFJlcGx5KCclcG9zdF9pZCUnLCBldmVudClcIiBkYXRhLW93bmVyLXBob3RvPVwiJW93bmVyX3Bob3RvJVwiIGRhdGEtb3duZXItaHJlZj1cIiVvd25lcl9ocmVmJVwiPlxuICAgIDxkaXYgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJcIj5cbiAgPGEgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfbGlua1wiIGhyZWY9XCJcL2lkXCIgb25jbGljaz1cInJldHVybiBuYXYuZ28odGhpcywgZXZlbnQpXCI+XG4gICAgPGltZyBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9pbWFnZVwiIHNyYz1cIlwvaW1hZ2VzXC9jYW1lcmFfNTAucG5nXCIgXC8+XG4gIDxcL2E+XG48XC9kaXY+JXVzZXJfaW1hZ2UlXG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2Zha2Vib3hcIj5MZWF2ZSBhIGNvbW1lbnQuLi48XC9kaXY+PFwvZGl2PlxuPFwvZGl2PjxcL2Rpdj48aW5wdXQgdHlwZT1cImhpZGRlblwiIGlkPVwicG9zdF9oYXNoJXBvc3RfaWQlXCIgdmFsdWU9XCIxNDkwNjQ4NDk2XzJmMDg1Nzk1ODBlYjZhYTA0M1wiIGNhbl9yZXBseV9hc19ncm91cD1cIiVjYW5fcmVwbHlfYXNfZ3JvdXAlXCIgXC8+IiwicmVwbHlfZm9ybSI6IjxkaXYgaWQ9XCJyZXBseV9ib3glcG9zdF9pZCVcIiBjbGFzcz1cInN1Ym1pdF9wb3N0X2JveCByZXBseV9ib3ggY2xlYXJfZml4IF9zdWJtaXRfcG9zdF9ib3hcIiBvbmNsaWNrPVwicmV0dXJuIGNhbmNlbEV2ZW50KGV2ZW50KVwiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfZm9ybVwiPlxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJyZXBseV90byVwb3N0X2lkJVwiIHZhbHVlPVwiXCIgXC8+XG4gICAgPGRpdiBjbGFzcz1cInBvc3RfZmllbGRfdXNlclwiPlxuICA8YSBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9saW5rXCIgaHJlZj1cIlwvaWRcIiBvbmNsaWNrPVwicmV0dXJuIG5hdi5nbyh0aGlzLCBldmVudClcIj5cbiAgICA8aW1nIGNsYXNzPVwicG9zdF9maWVsZF91c2VyX2ltYWdlXCIgc3JjPVwiXC9pbWFnZXNcL2NhbWVyYV81MC5wbmdcIiBcLz5cbiAgPFwvYT5cbjxcL2Rpdj4ldXNlcl9pbWFnZSVcbiAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZmllbGRfd3JhcCBfZW1vamlfZmllbGRfd3JhcFwiPlxuICAgICAgPGRpdiBpZD1cInJlcGx5X3NtaWxlJXBvc3RfaWQlXCIgY2xhc3M9XCJlbW9qaV9zbWlsZV93cmFwICBfZW1vamlfd3JhcFwiPlxuICA8ZGl2IGNsYXNzPVwiZW1vamlfc21pbGUgX2Vtb2ppX2J0blwiIHRpdGxlPVwiVXNlIHRoZSBUQUIga2V5IHRvIGluc2VydCBlbW9qaSBmYXN0ZXJcIiBvbm1vdXNlb3Zlcj1cInJldHVybiBFbW9qaS5zaG93KHRoaXMsIGV2ZW50KTtcIiBvbm1vdXNlb3V0PVwicmV0dXJuIEVtb2ppLmhpZGUodGhpcywgZXZlbnQpO1wiIG9uY2xpY2s9XCJyZXR1cm4gY2FuY2VsRXZlbnQoZXZlbnQpO1wiPlxuICAgIDxkaXYgY2xhc3M9XCJlbW9qaV9zbWlsZV9pY29uXCI+PFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+XG4gICAgICA8ZGl2IGlkPVwicmVwbHlfZmllbGQlcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X2ZpZWxkIHN1Ym1pdF9wb3N0X2ZpZWxkXCIgb25mb2N1cz1cInJldHVybiBXYWxsLnNob3dFZGl0UmVwbHkoJyVwb3N0X2lkJScsIGV2ZW50KTtcIiBjb250ZW50ZWRpdGFibGU9XCJ0cnVlXCIgcGxhY2Vob2xkZXI9XCJMZWF2ZSBhIGNvbW1lbnQuLi5cIj48XC9kaXY+XG4gICAgPFwvZGl2PlxuICAgIDxkaXYgaWQ9XCJzdWJtaXRfcmVwbHklcG9zdF9pZCVcIiBjbGFzcz1cInN1Ym1pdF9wb3N0IGNsZWFyX2ZpeFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X3dhcm4gY2xlYXJcIiBpZD1cInJlcGx5X3dhcm4lcG9zdF9pZCVcIj48XC9kaXY+XG4gICAgICA8ZGl2IGlkPVwicmVwbHlfbWVkaWFfcHJldmlldyVwb3N0X2lkJVwiIGNsYXNzPVwicmVwbHlfbWVkaWFfcHJldmlldyBjbGVhcl9maXggbWVkaWFfcHJldmlld1wiPjxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJhZGRwb3N0X2J1dHRvbl93cmFwXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJmbGF0X2J1dHRvbiBhZGRwb3N0X2J1dHRvblwiIGlkPVwicmVwbHlfYnV0dG9uJXBvc3RfaWQlXCIgb25jbGljaz1cIndhbGwuc2VuZFJlcGx5KCclcG9zdF9pZCUnLCBldmVudCwge30pO1wiIG9ubW91c2VvdmVyPVwid2FsbC5yZXBseVN1Ym1pdFRvb2x0aXAoJyVwb3N0X2lkJScsIDEsIHRoaXMpO1wiIG9ubW91c2VvdXQ9XCJ3YWxsLnJlcGx5U3VibWl0VG9vbHRpcCgnJXBvc3RfaWQlJywgMCwgdGhpcyk7XCI+UG9zdDxcL2J1dHRvbj5cbiAgICAgIDxcL2Rpdj5cbiAgICAgICVhZGRfYnV0dG9ucyVcbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlX2FkZF9tZWRpYVwiIGlkPVwicmVwbHlfYWRkX21lZGlhXyVwb3N0X2lkJVwiPjxcL2Rpdj5cbiAgICAgIDxkaXYgaWQ9XCJyZXBseV90b190aXRsZSVwb3N0X2lkJVwiIGNsYXNzPVwicmVwbHlfdG9fdGl0bGUgYWRkcG9zdF9wb3B0XCI+PFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsInJlcGx5X2Zvcm1fb2ZmaWNpYWwiOiI8ZGl2IGNsYXNzPVwiYWRkcG9zdF9vcHQgY2hlY2tib3hfb2ZmaWNpYWxcIiBpZD1cInJlcGx5X2FzX2dyb3VwJXBvc3RfaWQlXCIgb25jbGljaz1cIndhbGwucmVwbHlBc0dyb3VwKHRoaXMpO1wiIG9ubW91c2VvdmVyPVwid2FsbC5yZXBseUFzR3JvdXBPdmVyKHRoaXMsICdvbiBiZWhhbGYgb2YgdGhlIHVzZXInLCAncG9zdCBhcyBjb21tdW5pdHknKTtcIiBvbmZvY3VzPVwid2FsbC5yZXBseUFzR3JvdXBPdmVyKHRoaXMsICdvbiBiZWhhbGYgb2YgdGhlIHVzZXInLCAncG9zdCBhcyBjb21tdW5pdHknKTtcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwiYnV0dG9uXCIgYXJpYS1sYWJlbD1cIm9uIGJlaGFsZiBvZiB0aGUgdXNlclwiPlxuICA8aW1nIGNsYXNzPVwidGh1bWJfb2ZmXCIgc3JjPVwiXC9pbWFnZXNcL2NhbWVyYV81MC5wbmdcIiBcLz5cbiAgPGltZyBjbGFzcz1cInRodW1iX29uXCIgc3JjPVwiJW93bmVyX3Bob3RvJVwiIFwvPlxuPFwvZGl2PiIsInJlcGx5X2Zvcm1fZ3JvdXBfaW1hZ2UiOiI8ZGl2IGNsYXNzPVwicG9zdF9maWVsZF9ncm91cFwiPlxuICA8YSBjbGFzcz1cInBvc3RfZmllbGRfdXNlcl9saW5rXCIgaHJlZj1cIiVvd25lcl9ocmVmJVwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KVwiPlxuICAgIDxpbWcgY2xhc3M9XCJwb3N0X2ZpZWxkX3VzZXJfaW1hZ2VcIiBzcmM9XCIlb3duZXJfcGhvdG8lXCIgXC8+XG4gIDxcL2E+XG48XC9kaXY+IiwicmVwbHlfbXVsdGlsaW5lIjpmYWxzZSwicmVwbHlfbXVsdGlsaW5lX2ludHJvIjp0cnVlLCJyZXBseV9saW5rX3dyYXAiOiI8ZGl2IGNsYXNzPVwicmVwbHlfbGlua193cmFwXCI+XG4gIDxhIGNsYXNzPVwicmVwbHlfbGluayBfcmVwbHlfbG5rXCI+UmVwbHk8XC9hPlxuPFwvZGl2PiIsInJlcGx5X2xpbmtfdG8iOiIgPGEgY2xhc3M9XCJyZXBseV90b1wiPnJlcGxpZWQgdG8gJXRvX3VzZXIlPFwvYT4iLCJyZXBseV9mYXN0IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAgX3Bvc3RcIiBkYXRhLXBvc3QtaWQ9XCIlcmVwbHlfaWQlXCIgPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfd3JhcCBfcmVwbHlfY29udGVudCBfcG9zdF9jb250ZW50IGNsZWFyX2ZpeFwiPlxuICAgIFxuICAgIDxhIGNsYXNzPVwicmVwbHlfaW1hZ2VcIiBocmVmPVwiXC9pZFwiPlxuICAgICAgPGltZyBzcmM9XCJcL2ltYWdlc1wvY2FtZXJhXzUwLnBuZ1wiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIGNsYXNzPVwicmVwbHlfaW1nXCIgYWx0PVwiREVMRVRFRFwiIFwvPlxuICAgIDxcL2E+XG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2NvbnRlbnRcIiA+XG4gICAgICBcbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9hdXRob3JcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJhdXRob3JcIiBocmVmPVwiXC9pZFwiIGRhdGEtZnJvbS1pZD1cIjBcIj5ERUxFVEVEPFwvYT4ldG9fbGluayVcbiAgICAgIDxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV90ZXh0XCIgPjxkaXYgY2xhc3M9XCJ3YWxsX3JlcGx5X3RleHRcIj4lbWVzc2FnZSU8XC9kaXY+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2Zvb3RlciBjbGVhcl9maXhcIiBpZD1cIndwZV9ib3R0b20lcmVwbHlfaWQlXCI+XG4gICAgICAgIFxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZGF0ZVwiPiVkYXRlJTxcL2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPlxuICA8YSBjbGFzcz1cInJlcGx5X2xpbmsgX3JlcGx5X2xua1wiPlJlcGx5PFwvYT5cbjxcL2Rpdj5cbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJyZXBseV9tdWx0aWxpbmVfaGludCI6IjxkaXYgY2xhc3M9XCJyZXBseV9zdWJtaXRfaGludF93cmFwXCIgIG9uY2xpY2s9XCJzdG9wRXZlbnQoZXZlbnQpO1wiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfc3VibWl0X2hpbnRfdGl0bGVcIj5TaG9ydGN1dHM8XC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJyZXBseV9zdWJtaXRfaGludF9vcHRzXCIgaWQ9XCJyZXBseV9zdWJtaXRfaGludF9vcHRzXCI+XG4gICAgPGRpdiBjbGFzcz1cInJhZGlvYnRuICVkaXNhYmxlZCUgXCIgZGF0YS12YWw9XCIwXCIgb25jbGljaz1cInJhZGlvYnRuKHRoaXMsIDAsICdyZXBseV9zdWJtaXQnKTsgd2FsbC5vblJlcGx5U3VibWl0Q2hhbmdlZCgwKTtcIj48ZGl2IGNsYXNzPVwicmFkaW9idG5fbGFiZWxcIj48Yj5FbnRlcjxcL2I+IJcgc2VuZCBtZXNzYWdlPGJyPjxiPlNoaWZ0K0VudGVyPFwvYj4glyBuZXcgbGluZTxcL2Rpdj48XC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInJhZGlvYnRuICVlbmFibGVkJSBcIiBkYXRhLXZhbD1cIjFcIiBvbmNsaWNrPVwicmFkaW9idG4odGhpcywgMSwgJ3JlcGx5X3N1Ym1pdCcpOyB3YWxsLm9uUmVwbHlTdWJtaXRDaGFuZ2VkKDEpO1wiPjxkaXYgY2xhc3M9XCJyYWRpb2J0bl9sYWJlbFwiPjxiPkN0cmwrRW50ZXI8XC9iPiCXIHNlbmQgbWVzc2FnZTxicj48Yj5FbnRlcjxcL2I+IJcgbmV3IGxpbmU8XC9kaXY+PFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwicmVwbHlfYnV0dG9uIjoiPGEgaHJlZj1cIiNcIiBjbGFzcz1cInBvc3RfcmVwbHkgX3JlcGx5X3dyYXBcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwuc2hvd0VkaXRSZXBseSgnJXBvc3RfaWQlJywgZXZlbnQpXCI+XG4gIDxpIGNsYXNzPVwicG9zdF9yZXBseV9pY29uIF9pY29uXCI+PFwvaT5cbiAgPHNwYW4gY2xhc3M9XCJwb3N0X3JlcGx5X2xpbmsgX2xpbmtcIj5Db21tZW50PFwvc3Bhbj5cbiAgPHNwYW4gY2xhc3M9XCJwb3N0X3JlcGx5X2NvdW50IF9jb3VudFwiPjxcL3NwYW4+XG48XC9hPiIsInJlcGx5X2xpbmsiOiI8c3BhbiBpZD1cInJlcGx5X2xpbmslcG9zdF9pZCVcIiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJyZXBseV9saW5rXCIgb25jbGljaz1cInJldHVybiBXYWxsLnNob3dFZGl0UmVwbHkoJyVwb3N0X2lkJScsIGV2ZW50KVwiPkNvbW1lbnQ8XC9hPjxcL3NwYW4+Iiwib3duX3JlcGx5X2xpbmsiOiI8c3BhbiBjbGFzcz1cInJlcGx5X2xpbmtfd3JhcFwiPjxhIGNsYXNzPVwicmVwbHlfbGlua1wiIG9uY2xpY2s9XCJXYWxsLmxpa2VTaGFyZUN1c3RvbSgnJXBvc3RfaWQlJylcIj5SZXBseTxcL2E+PFwvc3Bhbj4iLCJlZGl0X2xpbmsiOiI8c3BhbiBjbGFzcz1cImRpdmlkZVwiPnw8XC9zcGFuPjxhIG9uY2xpY2s9XCJ3YWxsLmVkaXRQb3N0KHRoaXMsICclcG9zdF9pZCUnKVwiPkVkaXQgPFwvYT4iLCJwb3N0IjoiPGRpdiBpZD1cInBvc3QlcG9zdF9pZCVcIiBjbGFzcz1cIl9wb3N0IHBvc3QgcGFnZV9ibG9ja1wiIGRhdGEtcG9zdC1pZD1cIiVwb3N0X2lkJVwiIG9uY2xpY2s9XCJ3YWxsLnBvc3RDbGljaygnJXBvc3RfaWQlJywgZXZlbnQpO1wiID5cbiAgPGRpdiBjbGFzcz1cIl9wb3N0X2NvbnRlbnRcIj5cbiAgICBcbiAgICA8ZGl2IGNsYXNzPVwicG9zdF9oZWFkZXJcIj5cbiAgICAgIDxhIGNsYXNzPVwicG9zdF9pbWFnZSVvbmxpbmVfY2xhc3MlXCIgaHJlZj1cIiVsaW5rJVwiPlxuICAgICAgICA8aW1nIHNyYz1cIiVwaG90byVcIiBkYXRhLXBvc3QtaWQ9XCIlcG9zdF9pZCVcIiBkYXRhLXBvc3QtY2xpY2stdHlwZT1cInBvc3Rfb3duZXJfaW1nXCIgd2lkdGg9XCI1MFwiIGhlaWdodD1cIjUwXCIgY2xhc3M9XCJwb3N0X2ltZ1wiIFwvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCI+LjxcL3NwYW4+XG4gICAgICA8XC9hPlxuICAgICAgPGRpdiBjbGFzcz1cInBvc3RfaGVhZGVyX2luZm9cIj5cbiAgICAgICAgPGg1IGNsYXNzPVwicG9zdF9hdXRob3JcIj4lbmFtZSU8XC9oNT5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBvc3RfZGF0ZVwiPjxhIGNsYXNzPVwicG9zdF9saW5rXCIgaHJlZj1cIlwvd2FsbCVwb3N0X2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gc2hvd1dpa2koe3c6ICd3YWxsJXBvc3RfaWQlJ30sIGZhbHNlLCBldmVudCk7XCI+JWRhdGUlPFwvYT48XC9kaXY+XG4gICAgICAgICVhY3Rpb25zJVxuICAgICAgPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicG9zdF9jb250ZW50XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicG9zdF9pbmZvXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3YWxsX3RleHRcIj4ldGV4dCU8XC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwb3N0X2Z1bGxfbGlrZV93cmFwIGNsZWFyX2ZpeFwiPlxuICA8ZGl2IGNsYXNzPVwicG9zdF9mdWxsX2xpa2VcIj5cbiAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwicG9zdF9saWtlIF9saWtlX3dyYXAgbm9fbGlrZXNcIiBvbm1vdXNlb3Zlcj1cIldhbGwubGlrZXNTaG93KHRoaXMsICclcG9zdF9pZCUnKVwiIG9uY2xpY2s9XCJyZXR1cm4gV2FsbC5saWtlSXQodGhpcywgJyVwb3N0X2lkJScsICcxNDkwNjQ4NDk2XzQxNjU2YTBmNjRkZGQ2ZmFjNycsIGV2ZW50KTtcIj5cbiAgICAgIDxpIGNsYXNzPVwicG9zdF9saWtlX2ljb24gX2ljb25cIj48XC9pPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwb3N0X2xpa2VfbGluayBfbGlua1wiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3RfbGlrZV9jb3VudCBfY291bnRcIj48XC9zcGFuPlxuICAgIDxcL2E+XG4gICAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJsaW5rXCIgb25jbGljaz1cIldhbGwubGlrZXNTaG93TGlzdCh0aGlzLCAnJXBvc3RfaWQlJylcIj5TaG93IGxpa2VzPFwvc3Bhbj5cbiAgICAlcmVwbHlfYnV0dG9uJVxuICAgIDxhIGhyZWY9XCIjXCIgY2xhc3M9XCJwb3N0X3NoYXJlIF9zaGFyZV93cmFwIG5vX3NoYXJlc1wiICBvbm1vdXNlb3Zlcj1cIldhbGwuc2hhcmVzU2hvdyh0aGlzLCAnJXBvc3RfaWQlJylcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwuc2hhcmVzT3BlbihldmVudCwgJyVwb3N0X2lkJScpO1wiPlxuICAgICAgPGkgY2xhc3M9XCJwb3N0X3NoYXJlX2ljb24gX2ljb25cIj48XC9pPlxuICAgICAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3Rfc2hhcmVfbGluayBfbGlua1wiPjxcL3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInBvc3Rfc2hhcmVfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbiAgICA8XC9hPlxuICAgIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiIG9uY2xpY2s9XCJXYWxsLnNoYXJlc1Nob3dMaXN0KHRoaXMsICclcG9zdF9pZCUnKVwiPlNob3cgc2hhcmVkIGNvcGllczxcL3NwYW4+XG4gICAgXG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInBvc3Rfdmlld3MgX3ZpZXdzX3dyYXAgbm9fdmlld3MgX2F1dG9fdXBkYXRlXCIgb25tb3VzZW92ZXI9XCJXYWxsLnZpZXdzVXBkYXRlKHRoaXMsICclcG9zdF9pZCUnKVwiPlxuICA8aSBjbGFzcz1cInBvc3Rfdmlld3NfaWNvbiBfaWNvblwiPjxcL2k+XG4gIDxzcGFuIGNsYXNzPVwicG9zdF92aWV3c19jb3VudCBfY291bnRcIj48XC9zcGFuPlxuPFwvZGl2PlxuPFwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbGllc1wiPjxkaXYgY2xhc3M9XCJyZXBsaWVzX3dyYXBcIiBpZD1cInJlcGxpZXNfd3JhcCVwb3N0X2lkJVwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIj5cbiAgPGRpdiBjbGFzcz1cInJlcGxpZXNfbGlzdCBfcmVwbGllc19saXN0XCIgaWQ9XCJyZXBsaWVzJXBvc3RfaWQlXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBpZD1cInN0YXJ0X3JlcGx5JXBvc3RfaWQlXCIgdmFsdWU9XCJcIlwvPjxcL2Rpdj5cbiAgJXJlcGx5X2JveCVcbjxcL2Rpdj48XC9kaXY+XG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICAgIFxuICA8XC9kaXY+XG4gIFxuPFwvZGl2PiIsInJlcGx5IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAlY2xhc3NuYW1lJSBfcG9zdFwiIGRhdGEtcG9zdC1pZD1cIiVyZXBseV9pZCVcIiAlYXR0ciU+XG4gIDxkaXYgY2xhc3M9XCJyZXBseV93cmFwIF9yZXBseV9jb250ZW50IF9wb3N0X2NvbnRlbnQgY2xlYXJfZml4XCI+XG4gICAgXG4gICAgPGEgY2xhc3M9XCJyZXBseV9pbWFnZVwiIGhyZWY9XCIlbGluayVcIj5cbiAgICAgIDxpbWcgc3JjPVwiJXBob3RvJVwiIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIGNsYXNzPVwicmVwbHlfaW1nXCIgYWx0PVwiJW5hbWUlXCIgXC8+XG4gICAgPFwvYT5cbiAgICA8ZGl2IGNsYXNzPVwicmVwbHlfY29udGVudFwiID5cbiAgICAgICVhY3Rpb25zJVxuICAgICAgPGRpdiBjbGFzcz1cInJlcGx5X2F1dGhvclwiPlxuICAgICAgICA8YSBjbGFzcz1cImF1dGhvclwiIGhyZWY9XCIlbGluayVcIiBkYXRhLWZyb20taWQ9XCIlcmVwbHlfdWlkJVwiPiVuYW1lJTxcL2E+JXRvX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfdGV4dFwiID4ldGV4dCU8XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZm9vdGVyIGNsZWFyX2ZpeFwiIGlkPVwid3BlX2JvdHRvbSVyZXBseV9pZCVcIj5cbiAgICAgICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cImxpa2Vfd3JhcCBfbGlrZV93cmFwIG5vX2xpa2VzXCIgb25jbGljaz1cInJldHVybiBXYWxsLmxpa2VJdCh0aGlzLCAnJWxpa2VfaWQlJywgJzE0OTA2NDg0OTZfNDE2NTZhMGY2NGRkZDZmYWM3JywgZXZlbnQpO1wiIG9ubW91c2VvdmVyPVwiV2FsbC5saWtlc1Nob3codGhpcywgJyVsaWtlX2lkJScpXCI+XG4gIDxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIj5MaWtlPFwvc3Bhbj5cbiAgPGkgY2xhc3M9XCJsaWtlX2ljb24gX2ljb25cIj48XC9pPlxuICA8c3BhbiBjbGFzcz1cImxpa2VfY291bnQgX2NvdW50XCI+PFwvc3Bhbj5cbjxcL2E+XG48c3BhbiBjbGFzcz1cImJsaW5kX2xhYmVsXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIiBvbmNsaWNrPVwiV2FsbC5saWtlc1Nob3dMaXN0KHRoaXMsICclbGlrZV9pZCUnKVwiPlNob3cgbGlrZXM8XC9zcGFuPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVwbHlfZGF0ZVwiPjxhIGNsYXNzPVwid2RfbG5rXCIgaHJlZj1cIlwvd2FsbCVwb3N0X2lkJT9yZXBseT0lcmVwbHlfbXNnX2lkJVwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KVwiPiVkYXRlJTxcL2E+PFwvZGl2PlxuICAgICAgICAlYW5zd2VyX2xpbmslXG4gICAgICA8XC9kaXY+XG4gICAgPFwvZGl2PlxuICA8XC9kaXY+XG48XC9kaXY+IiwiZGVsIjoiPGEgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfaXRlbVwiIG9uY2xpY2s9XCJ3YWxsLmRlbGV0ZVBvc3QodGhpcywgJyVwb3N0X2lkJScsICcxNDkwNjQ4NDk2XzY5ZjlmOTcwYjdkOWUyNjM2MicpOyByZXR1cm4gZmFsc2U7XCI+RGVsZXRlIHBvc3Q8XC9hPiIsInNwYW0iOiI8YSBjbGFzcz1cInVpX2FjdGlvbnNfbWVudV9pdGVtXCIgb25jbGljaz1cIndhbGwubWFya0FzU3BhbSh0aGlzLCAnJXBvc3RfaWQlJywgJzE0OTA2NDg0OTZfNGJmYzhmMDY5NWNjMDA0ZWYxJyk7IHJldHVybiBmYWxzZTtcIj5SZXBvcnQ8XC9hPiIsImVkaXQiOiI8YSBjbGFzcz1cInVpX2FjdGlvbnNfbWVudV9pdGVtXCIgb25jbGljaz1cIndhbGwuZWRpdFBvc3QodGhpcywgJyVwb3N0X2lkJScpOyByZXR1cm4gZmFsc2U7XCI+RWRpdCA8XC9hPiIsInBvc3RfYWN0aW9ucyI6IjxkaXYgY2xhc3M9XCJ1aV9hY3Rpb25zX21lbnVfd3JhcCBfdWlfbWVudV93cmFwIFwiIG9ubW91c2VvdmVyPVwidWlBY3Rpb25zTWVudS5zaG93KHRoaXMpO1wiIG9ubW91c2VvdXQgPVwidWlBY3Rpb25zTWVudS5oaWRlKHRoaXMpO1wiPlxuICA8ZGl2IGNsYXNzPVwidWlfYWN0aW9uc19tZW51X2ljb25zXCIgIHRhYmluZGV4PVwiMFwiIGFyaWEtbGFiZWw9XCJBY3Rpb25zXCIgcm9sZT1cImJ1dHRvblwiIG9uY2xpY2s9XCJ1aUFjdGlvbnNNZW51LmtleVRvZ2dsZSh0aGlzLCBldmVudCk7XCI+PHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPkFjdGlvbnM8XC9zcGFuPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInVpX2FjdGlvbnNfbWVudSBfdWlfbWVudVwiID4lYWN0aW9ucyU8XC9kaXY+XG48XC9kaXY+IiwiZGVsX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRGVsZXRlXCIgb25jbGljaz1cIndhbGwuZGVsZXRlUG9zdCh0aGlzLCAnJXJlcGx5X2lkJScsICcxNDkwNjQ4NDk2XzY5ZjlmOTcwYjdkOWUyNjM2MicpO1wiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJEZWxldGVcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4iLCJzcGFtX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiUmVwb3J0XCIgb25jbGljaz1cIndhbGwubWFya0FzU3BhbSh0aGlzLCAnJXJlcGx5X2lkJScsICcxNDkwNjQ4NDk2XzRiZmM4ZjA2OTVjYzAwNGVmMScpO1wiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJSZXBvcnRcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4iLCJlZGl0X3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2VkaXQlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9lZGl0X2J1dHRvbiByZXBseV9hY3Rpb24gZmxfclwiIGRhdGEtdGl0bGU9XCJFZGl0IFwiIG9uY2xpY2s9XCJ3YWxsLmVkaXRQb3N0KHRoaXMsICclcmVwbHlfaWQlJyk7XCIgb25tb3VzZW92ZXI9XCJzaG93VGl0bGUodGhpcyk7XCIgYXJpYS1sYWJlbD1cIkVkaXQgXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+IiwicmVwbHlfYWN0aW9ucyI6IjxkaXYgY2xhc3M9XCJmbF9yIHBvc3RfYWN0aW9uc193cmFwXCI+PGRpdiBjbGFzcz1cInBvc3RfYWN0aW9uc1wiPiVhY3Rpb25zJTxcL2Rpdj48XC9kaXY+IiwicG9sbF9zdGF0cyI6IjxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfc3RhdFwiJWhhbmRsZXJzJT5cbiAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF90ZXh0XCI+JW9wdGlvbl90ZXh0JTxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF9yb3dfd3JhcFwiPlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93X3BlcmNlbnRcIj4lcGVyY2VudCUlPFwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcm93JXJvd19jbGFzcyVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlX3BvbGxfcGVyY2VudFwiIHN0eWxlPVwid2lkdGg6ICVjc3NfcGVyY2VudCUlXCI+PFwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInBhZ2VfcG9sbF9yb3dfY291bnRcIj4lY291bnQlPFwvZGl2PlxuICAgIDxcL2Rpdj5cbiAgPFwvZGl2PlxuPFwvZGl2PiIsInBvbGxfaGFzaCI6IjE0OTA2NDg0OTZfOTgyMDFiMTYzZDdkNGJkNzJmIiwiZGF0ZV9mb3JtYXQiOiJ0b2RheSBhdCB7aG91cn06e21pbnV0ZX0ge2FtX3BtfSIsInRpbWVfc3lzdGVtIjpbInBtIiwiYW0iXSwiYWJzX3RpbWVzdGFtcCI6MTQ5MDY0ODQ5NiwibGFuZyI6eyJ3YWxsX01fcmVwbGllc19vZl9OIjpbIiIsIiVzIGNvbW1lbnQgb2Yge2xpbmt9e2FsbH17XC9saW5rfSIsIiVzIGNvbW1lbnRzIG9mIHtsaW5rfXthbGx9e1wvbGlua30iXSwid2FsbF9oaWRlX3JlcGxpZXMiOiJIaWRlIGNvbW1lbnRzIiwid2FsbF9zaG93X25fb2ZfbV9sYXN0IjpbIiIsIlNob3cgbGF0ZXN0ICVzIGNvbW1lbnQgb3V0IG9mIHtjb3VudH0iLCJTaG93IGxhdGVzdCAlcyBjb21tZW50cyBvdXQgb2Yge2NvdW50fSJdLCJ3YWxsX3Nob3dfYWxsX25fcmVwbGllcyI6WyIiLCJTaG93ICVzIGNvbW1lbnQiLCJTaG93IGFsbCAlcyBjb21tZW50cyJdLCJ3YWxsX05fcmVwbGllcyI6WyIiLCIlcyBjb21tZW50IiwiJXMgY29tbWVudHMiXSwid2FsbF90aHJlZV9sYXN0X3JlcGxpZXMiOiJsYXN0IHRocmVlIHBvc3RzIiwid2FsbF9hbGxfcmVwbGllcyI6ImFsbCBjb21tZW50cyIsIndhbGxfeF9uZXdfcmVwbGllc19tb3JlIjpbIiIsIiVzIG5ldyBjb21tZW50IGFkZGVkIiwiJXMgbmV3IGNvbW1lbnRzIGFkZGVkIl0sIndhbGxfWF9wZW9wbGVfdm90ZWQiOlsiIiwiPGI+JXM8XC9iPiBwZXJzb24gdm90ZWQuIiwiPGI+JXM8XC9iPiBwZW9wbGUgdm90ZWQuIl0sIndhbGxfcmVwbHlfc3VibWl0X2hpbnRfMSI6IlNoaWZ0K0VudGVyIJcgbmV3IGxpbmUiLCJ3YWxsX3JlcGx5X3N1Ym1pdF9oaW50XzIiOiJDdHJsK0VudGVyIJYgc2VuZCBtZXNzYWdlIiwid2FsbF9yZXBseV9zdWJtaXRfaGludF8xX21vcmUiOiJFbnRlciCXIHNlbmQgbWVzc2FnZSwgU2hpZnQrRW50ZXIglyBuZXcgbGluZSIsIndhbGxfcmVwbHlfc3VibWl0X2hpbnRfMl9tb3JlIjoiRW50ZXIglyBuZXcgbGluZSwgQ3RybCtFbnRlciCXIHNlbmQgbWVzc2FnZSIsIndhbGxfcmVwbHlfcG9zdCI6IlJlcGx5Iiwid2FsbF9yZXBsaWVkX3RvX2dyb3VwIjoidGhlIGFkbWluIiwid2FsbF9yZXBseV9hc191c2VyIjoib24gYmVoYWxmIG9mIHRoZSB1c2VyIiwid2FsbF9yZXBseV9hc19ncm91cCI6InBvc3QgYXMgY29tbXVuaXR5Iiwid2FsbF9hZGRfcGhvdG9fZXJyb3IiOiJVbmFibGUgdG8gdXBsb2FkIHRoZSBpbWFnZSIsIndhbGxfanVzdF9ub3ciOlsiIiwiT25lIHNlY29uZCBhZ28iLCJUd28gc2Vjb25kcyBhZ28iLCJUaHJlZSBzZWNvbmRzIGFnbyIsIkZvdXIgc2Vjb25kcyBhZ28iLCJGaXZlIHNlY29uZHMgYWdvIl0sIndhbGxfWF9zZWNvbmRzX2Fnb193b3JkcyI6WyIiLCJPbmUgc2Vjb25kIGFnbyIsIlR3byBzZWNvbmRzIGFnbyIsIlRocmVlIHNlY29uZHMgYWdvIiwiRm91ciBzZWNvbmRzIGFnbyIsIkZpdmUgc2Vjb25kcyBhZ28iXSwid2FsbF9YX3NlY29uZHNfYWdvIjpbIiIsIiVzIHNlY29uZCBhZ28iLCIlcyBzZWNvbmRzIGFnbyJdLCJ3YWxsX1hfbWludXRlc19hZ29fd29yZHMiOlsiIiwib25lIG1pbnV0ZSBhZ28iLCJ0d28gbWludXRlcyBhZ28iLCJ0aHJlZSBtaW51dGVzIGFnbyIsIjQgbWludXRlcyBhZ28iLCI1IG1pbnV0ZXMgYWdvIl0sIndhbGxfWF9taW51dGVzX2FnbyI6WyIiLCIlcyBtaW51dGUgYWdvIiwiJXMgbWludXRlcyBhZ28iXSwid2FsbF9YX2hvdXJzX2Fnb193b3JkcyI6WyIiLCJvbmUgaG91ciBhZ28iLCJ0d28gaG91cnMgYWdvIiwidGhyZWUgaG91cnMgYWdvIiwiZm91ciBob3VycyBhZ28iLCJmaXZlIGhvdXJzIGFnbyJdLCJ3YWxsX1hfaG91cnNfYWdvIjpbIiIsIiVzIGhvdXIgYWdvIiwiJXMgaG91cnMgYWdvIl19fSwic2hhcmVfdGltZWhhc2giOiIxNDkwNjQ4NDk2X2Q3NzQwZTdmZWIyNThhYzVlZSIsImNvbW1lbnRzVHBsIjp7InJlcGx5IjoiPGRpdiBpZD1cInBvc3QlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseSByZXBseV9kaXZlZCBjbGVhciAgX3Bvc3RcIiBkYXRhLXBvc3QtaWQ9XCIlcmVwbHlfaWQlXCIgIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbWVudENsaWNrKHRoaXMsIGV2ZW50LCAlZnJvbV9pZCUsICVyZXBseV9tc2dfaWQlKVwiPlxuICA8ZGl2IGNsYXNzPVwicmVwbHlfd3JhcCBfcmVwbHlfY29udGVudCBfcG9zdF9jb250ZW50IGNsZWFyX2ZpeFwiPlxuICAgIFxuICAgIDxhIGNsYXNzPVwicmVwbHlfaW1hZ2VcIiBocmVmPVwiJWhyZWYlXCI+XG4gICAgICA8aW1nIHNyYz1cIiVwaG90byVcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiBjbGFzcz1cInJlcGx5X2ltZ1wiIGFsdD1cIiVuYW1lJVwiIFwvPlxuICAgIDxcL2E+XG4gICAgPGRpdiBjbGFzcz1cInJlcGx5X2NvbnRlbnRcIiA+XG4gICAgICAlYWN0aW9ucyVcbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9hdXRob3JcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJhdXRob3JcIiBocmVmPVwiJWhyZWYlXCIgZGF0YS1mcm9tLWlkPVwiJWZyb21faWQlXCI+JW5hbWUlPFwvYT4ldG9fbGluayVcbiAgICAgIDxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV90ZXh0XCIgPiVtZXNzYWdlJTxcL2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9mb290ZXIgY2xlYXJfZml4XCIgaWQ9XCJ3cGVfYm90dG9tJXJlcGx5X2lkJVwiPlxuICAgICAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwibGlrZV93cmFwIF9saWtlX3dyYXAgbm9fbGlrZXNcIiBvbmNsaWNrPVwicmV0dXJuIFdhbGwubGlrZUl0KHRoaXMsICclcG9zdF9vaWQldmlkZW9fY29tbWVudCVyZXBseV9tc2dfaWQlbXYnLCAnMTQ5MDY0ODQ5Nl80MTY1NmEwZjY0ZGRkNmZhYzcnLCBldmVudCk7XCIgb25tb3VzZW92ZXI9XCJXYWxsLmxpa2VzU2hvdyh0aGlzLCAnJXBvc3Rfb2lkJXZpZGVvX2NvbW1lbnQlcmVwbHlfbXNnX2lkJW12JylcIj5cbiAgPHNwYW4gY2xhc3M9XCJibGluZF9sYWJlbFwiPkxpa2U8XC9zcGFuPlxuICA8aSBjbGFzcz1cImxpa2VfaWNvbiBfaWNvblwiPjxcL2k+XG4gIDxzcGFuIGNsYXNzPVwibGlrZV9jb3VudCBfY291bnRcIj48XC9zcGFuPlxuPFwvYT5cbjxzcGFuIGNsYXNzPVwiYmxpbmRfbGFiZWxcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiIG9uY2xpY2s9XCJXYWxsLmxpa2VzU2hvd0xpc3QodGhpcywgJyVwb3N0X29pZCV2aWRlb19jb21tZW50JXJlcGx5X21zZ19pZCVtdicpXCI+U2hvdyBsaWtlczxcL3NwYW4+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyZXBseV9kYXRlXCI+JWRhdGUlPFwvZGl2PlxuICAgICAgICBcbiAgICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4iLCJhY3Rpb25zIjoiPGRpdiBjbGFzcz1cImZsX3IgcG9zdF9hY3Rpb25zX3dyYXBcIj48ZGl2IGNsYXNzPVwicG9zdF9hY3Rpb25zXCI+JWFjdGlvbnMlPFwvZGl2PjxcL2Rpdj4iLCJlZGl0X3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2VkaXQlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9lZGl0X2J1dHRvbiByZXBseV9hY3Rpb24gZmxfclwiIGRhdGEtdGl0bGU9XCJFZGl0XCIgb25jbGljaz1cIldhbGwuZWRpdFBvc3QodGhpcywgJyVyZXBseV9pZCUnKVwiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJFZGl0XCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+IiwiZGVsX3JlcGx5IjoiPGRpdiBpZD1cInJlcGx5X2RlbGV0ZSVyZXBseV9pZCVcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9idXR0b24gcmVwbHlfYWN0aW9uIGZsX3JcIiBkYXRhLXRpdGxlPVwiRGVsZXRlXCIgb25jbGljaz1cIlZpZGVvdmlldy5jb21tQWN0aW9uKCdkZWxldGUnLCAlcG9zdF9vaWQlLCAlcmVwbHlfbXNnX2lkJSwgJzE0OTA2NDg0OTZfODY0OTFkMmQ5MzgzZmY2YTBjJywgJ212JylcIiBvbm1vdXNlb3Zlcj1cInNob3dUaXRsZSh0aGlzKTtcIiBhcmlhLWxhYmVsPVwiRGVsZXRlXCIgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImxpbmtcIj48XC9kaXY+Iiwic3BhbV9yZXBseSI6IjxkaXYgaWQ9XCJyZXBseV9kZWxldGUlcmVwbHlfaWQlXCIgY2xhc3M9XCJyZXBseV9kZWxldGVfYnV0dG9uIHJlcGx5X2FjdGlvbiBmbF9yXCIgZGF0YS10aXRsZT1cIlJlcG9ydFwiIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbUFjdGlvbignc3BhbScsICVwb3N0X29pZCUsICVyZXBseV9tc2dfaWQlLCAnMTQ5MDY0ODQ5Nl84NjQ5MWQyZDkzODNmZjZhMGMnLCAnbXYnKVwiIG9ubW91c2VvdmVyPVwic2hvd1RpdGxlKHRoaXMpO1wiIGFyaWEtbGFiZWw9XCJSZXBvcnRcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwibGlua1wiPjxcL2Rpdj4ifSwicG9zdCI6IjIxNTI2OTlfdmlkZW8xNjg1OTE3NDFtdiIsIm1heFJlcGx5TGVuZ3RoIjoxNjM4NCwibWF4Q2hhdFJlcGx5TGVuZ3RoIjo2MDAsIm1heERlc2NyaXB0aW9uTGVuZ3RoIjoxMDI0LCJwdWJsaXNoQWN0aW9uIjoiIiwicGxfbGlzdCI6MCwiaXNfdmtfcGxheWVyIjowLCJpc19mbHYiOmZhbHNlLCJjYW50UGxheSI6MCwicGxheWVyIjp7InR5cGUiOiJ5b3V0dWJlIiwicGFyYW1zIjpbeyJsYW5nX2FkZCI6IkFkZCB0byBNeSBWaWRlb3MiLCJsYW5nX2FkZGVkIjoiVmlkZW8gYWRkZWQgdG8gTXkgVmlkZW9zIiwibGFuZ19zaGFyZSI6IlNoYXJlIiwibGFuZ19saWtlIjoiTGlrZSIsImxhbmdfZG9uYXRlIjoiRG9uYXRlIiwibGFuZ19zdWJzY3JpYmUiOiJTdWJzY3JpYmUiLCJsYW5nX3N1YnNjcmliZWQiOiJGb2xsb3dpbmciLCJsYW5nX3ZvbHVtZV9vbiI6IlVubXV0ZSIsImxhbmdfdm9sdW1lX29mZiI6Ik11dGUiLCJsYW5nX3ZvbHVtZSI6IlZvbHVtZSIsImxhbmdfaGRzZCI6IkNoYW5nZSBWaWRlbyBRdWFsaXR5IiwibGFuZ19xdWFsaXR5X2F1dG8iOiJBdXRvIiwibGFuZ19vcGVuX3BvcHVwIjoiRXhwYW5kIiwibGFuZ19mdWxsc2NyZWVuIjoiRnVsbCBTY3JlZW4iLCJsYW5nX3dpbmRvdyI6Ik1pbmltaXplIiwibGFuZ19yb3RhdGUiOiJSb3RhdGUiLCJsYW5nX2Fkc19saW5rIjoiQWR2ZXJ0aXNlciYjMzk7cyBTaXRlIiwibGFuZ19hZHMiOiJBZHMiLCJsYW5nX2Fkc19za2lwIjoiU2tpcCBhZCIsImxhbmdfYWRzX3NraXBfdGltZSI6IlNraXAgYWRzIGluIHt0aW1lfSBzIiwibGFuZ19yZXBvcnRfcHJvYmxlbSI6IlJlcG9ydCBhIHByb2JsZW0uLiIsImxhbmdfcGxheSI6IlBsYXkiLCJsYW5nX3BhdXNlIjoiUGF1c2UiLCJsYW5nX3JlcGxheSI6IlJlcGxheSIsImxhbmdfbmV4dCI6Ik5leHQgdmlkZW8iLCJsYW5nX25leHRfY2FuY2VsIjoiQ2FuY2VsIiwibGFuZ19nb3RvX29yaWdfdmlkZW8iOiJHbyB0byBWaWRlbyIsImxhbmdfZ290b19hZHZlcnRpc2Vyc19zaXRlIjoiR28gdG8gdGhlIHdlYnNpdGUiLCJsYW5nX2J1eV90aWNrZXRzIjpudWxsLCJsYW5nX2xvYWRfZXJyb3IiOiJBbiBlcnJvciBvY2N1cnJlZCBkdXJpbmcgbG9hZGluZy4gUGxlYXNlIHRyeSBhZ2FpbiBsYXRlci4iLCJsYW5nX2Vycl9jb2RlIjoiRXJyb3IgY29kZToge2NvZGV9IiwibGFuZ19iYWRfYnJvd3NlciI6IlNvcnJ5LCB5b3VyIGJyb3dzZXIgaXNuJiMzOTt0IHN1cHBvcnRlZCBhdCB0aGUgbW9tZW50IiwibGFuZ19saXZlIjoiTGl2ZSIsImxhbmdfbGl2ZV9zdGFydGluZ19zb29uIjoiVGhlIGxpdmUgd2lsbCBzdGFydCBzb29uIiwibGFuZ19saXZlX2ZhaWxlZCI6IkFuIGVycm9yIG9jY3VycmVkIHdoaWxlIHN0cmVhbWluZyIsImxhbmdfbGl2ZV93YWl0X3JlY29yZCI6IlRoZSBsaXZlIGhhcyBmaW5pc2hlZCBhbmQgd2lsbCBzb29uIGJlY29tZSBhdmFpbGFibGUgaW4gcmVwbGF5IiwibGFuZ19saXZlX3VzZXJfc2VudF9naWZ0IjpbIiIsInNlbnQgYSBnaWZ0Iiwic2VudCBhIGdpZnQiXSwibGFuZ19saXZlX3VzZXJfc2VudF9zdXBlcmNvbW1lbnQiOlsiIiwic2VudCBhIHN1cGVyIG1lc3NhZ2UiLCJzZW50IGEgc3VwZXIgbWVzc2FnZSJdLCJsYW5nX2xpdmVfZG93bmxvYWRfYXBwIjoiRG93bmxvYWQgYXBwIiwibGFuZ19hdXRvcGxheV92b2x1bWVfaGludCI6ItFsaWNrIHRvIHR1cm4gb24gdGhlIHNvdW5kIiwibGFuZ19hdXRvcGxheV9leHBhbmRfaGludCI6IkNsaWNrIHRvIGV4cGFuZCIsImxhbmdfdGltZWRfYnV0dG9uX2dvdG8iOiLP5fDl6fLoIiwibGFuZ190aW1lZF9idXR0b25fb3BlbiI6Ik9wZW4iLCJsYW5nX3RpbWVkX2J1dHRvbl9idXkiOiJCdXkiLCJsYW5nX3RpbWVkX2J1dHRvbl9idXlfdGlja2V0cyI6IkJ1eSB0aWNrZXRzIiwibGFuZ190aW1lZF9idXR0b25fY2hlY2tpbiI6bnVsbCwibGFuZ190aW1lZF9idXR0b25faW5zdGFsbCI6ItPx8uDt7uLo8vwiLCJsYW5nX3RpbWVkX2J1dHRvbl9jb250YWN0Ijoi0eL/5+Dy/PH/IiwibGFuZ190aW1lZF9idXR0b25fZmlsbCI6Isfg7+7r7ejy/CIsImxhbmdfdGltZWRfYnV0dG9uX2xlYXJuX21vcmUiOiJNb3JlIiwibGFuZ19jbWVudV9jb3B5X3ZpZGVvX2xpbmsiOiJDb3B5IHZpZGVvIGxpbmsiLCJsYW5nX2NtZW51X2NvcHlfdGltZWNvZGVfbGluayI6IkNvcHkgbGluayB3aXRoIHRpbWVjb2RlIiwibGFuZ19jbWVudV9jb3B5X2VtYmVkX2NvZGUiOiJDb3B5IGVtYmVkIGNvZGUiLCJsYW5nX2NtZW51X2VuYWJsZV9sb29wIjoiRW5hYmxlIGxvb3AiLCJsYW5nX2NtZW51X2Rpc2FibGVfbG9vcCI6IkRpc2FibGUgbG9vcCIsImxhbmdfY21lbnVfcGxheWJhY2tfc3BlZWQiOiJQbGF5YmFjayBzcGVlZCIsImxhbmdfY21lbnVfcmVwb3J0X2Vycm9yIjoiUmVwb3J0IGEgcHJvYmxlbS4uIiwibGFuZ19jbWVudV9jb3B5X2RlYnVnIjoiQ29weSBkZWJ1ZyBpbmZvIiwibGFuZ19hcmlhX3ZpZGVvcGxheWVyIjoiVksgVmlkZW8gUGxheWVyIiwibGFuZ19hcmlhX3ZvbHVtZV9zbGlkZXIiOiJWb2x1bWUgc2xpZGVyIiwibGFuZ19hcmlhX3ZvbHVtZV9tdXRlZCI6IlZvbHVtZSBpcyBtdXRlZCIsImxhbmdfYXJpYV90aW1lbGluZV9zbGlkZXIiOiJUaW1lIHNsaWRlciIsImxhbmdfYXJpYV90aW1lbGluZV92YWx1ZSI6Int0aW1lfSAodG90YWwgZHVyYXRpb24ge2R1cmF0aW9ufSkiLCJsYW5nX2FyaWFfZW50ZXJfZnVsbHNjcmVlbiI6IkVudGVyIGZ1bGwgc2NyZWVuIG1vZGUiLCJsYW5nX2FyaWFfZXhpdF9mdWxsc2NyZWVuIjoiRXhpdCBmdWxsIHNjcmVlbiBtb2RlIiwibGFuZ19hcmlhX3F1YWxpdHlfY3VycmVudCI6IkN1cnJlbnQgcXVhbGl0eSBpcyB7cXVhbGl0eX0iLCJ2aWRlb19wbGF5X2hkIjoiV2F0Y2ggaW4gSEQiLCJ2aWRlb19zdG9wX2xvYWRpbmciOiJTdG9wIERvd25sb2FkIiwidmlkZW9fcGxheWVyX3ZlcnNpb24iOiJWSyBWaWRlbyBQbGF5ZXIiLCJ2aWRlb19nZXRfdmlkZW9fY29kZSI6IkNvcHkgZW1iZWQgY29kZSIsInZpZGVvX2dldF9jdXJyZW50X3VybCI6IkNvcHkgbGluayB3aXRoIHRpbWVjb2RlIiwidmlkZW9fbG9hZF9lcnJvciI6IkFuIGVycm9yIG9jY3VycmVkIGR1cmluZyBsb2FkaW5nLiBQbGVhc2UgdHJ5IGFnYWluIGxhdGVyLiIsImdvdG9fb3JpZ192aWRlbyI6IkdvIHRvIFZpZGVvIiwidmlkIjoxNjg1OTE3NDEsIm9pZCI6MjE1MjY5OSwibWRfdGl0bGUiOiJCRUFUIFNPVUwgU1RFUCCXIFJEQzE0IFByb2plY3Q4MTggUnVzc2lhbiBEYW5jZSBDaGFtcGlvbnNoaXAsIE1heSAxLTIsIE1vc2NvdyAyMDE0IiwibWRfYXV0aG9yIjoiS2lyaWxsIEx5YW5veSIsImF1dGhvcl9pZCI6MjE1MjY5OSwiYXV0aG9yX2hyZWYiOiJcL2x5YW5vaS5raXJpbGwiLCJhdXRob3JfcGhvdG8iOiJodHRwczpcL1wvcHAudXNlcmFwaS5jb21cL2M2MjM4MjRcL3Y2MjM4MjQ2OTlcLzU1NTc1XC9DQ1FaMjlsMEI5ay5qcGciLCJoYXNoIjoiNzI5NWIzOTc4NDk3ZjA4Njk4YjhjY2I3ZDMwYTBjNjYiLCJoYXNoMiI6ImVhMWQzZGI5ODgxODEyNWQiLCJpc19leHQiOjAsImR1cmF0aW9uIjoyOTksInQiOiIiLCJ2aWdvX2NpZCI6ImNmY2QyMDg0OTVkNTY1ZWY2NmU3ZGZmOWY5ODc2NGRhIiwidmlld2VyX2lkIjowLCJwb3N0X2lkIjpudWxsLCJtb2R1bGUiOiJwcm9maWxlIiwiZyI6MCwiYSI6MCwiY2lzIjowLCJyZWNvbW1lbmRfc2lnIjoiNDYxMTY4NzZhMmYxMGFhYmY0MmE4NzYyYzUzNDAzOGUiLCJlcnJvcl9zdGF0X2hhc2giOiIxNDkwNjQ4NDk2XzA5N2IzYjQxZjE2NGU1ZTZhOCIsIm5vX2FkcyI6MSwibm9saWtlcyI6MSwiZXh0cmEiOiIyMSIsImV4dHJhX2RhdGEiOiI0VGh3czV3cTVHSSIsInRodW1iIjoiaHR0cHM6XC9cL3BwLnVzZXJhcGkuY29tXC9jNjE3ODMxXC91OTYxMjMzMDNcL3ZpZGVvXC9sXzI3ZTRmZjVjLmpwZyIsImpwZyI6Imh0dHBzOlwvXC9wcC51c2VyYXBpLmNvbVwvYzYxNzgzMVwvdTk2MTIzMzAzXC92aWRlb1wveF81YmIwNTc4Zi5qcGciLCJoZCI6MCwibm9sb2dvIjoxLCJzaG93X25leHQiOjAsImxpa2VkIjowLCJhZGRfaGFzaCI6ImZmYjg0MmQwY2U2ZmMxNjhhNyIsImFkZGVkIjowLCJjYW5fYWRkIjowLCJub190aXRsZSI6MCwidnNlZ3Nfc2l6ZSI6MjkuMDAwMDAwLCJ2c2Vnc19oYXNoIjoiMzkxNDQxZWIwMzg5YTI0MTQ2IiwicmVwb3J0X2Vycm9yX2hhc2giOiIzODM3MTllMGM4ZjU0NjY1OWEifV19fTwhPjwhcGFnZXZpZXdfY2FuZGlkYXRlPg==
46
- http_version:
47
- recorded_at: Mon, 27 Mar 2017 21:01:36 GMT
48
- recorded_with: VCR 3.0.3