Codercat Studio | Cookbook

This cookbook contains a collection of useful HoudiniFX node setups. All examples are stored using the new Houdini recipe API and can be copied from this website directly into Houdini using our simple shelf tools. We also periodically make a backup of the recipes here.

Copy a snippet of interest from this page, then use Paste on the "Cookbook" shelf to paste it in.

If you would like to share a recipe, click the Create button and paste in the output of the "Copy" shelf tool. Note that you must be logged in to do so. If you have any questions or comments, feel free to reach out at codercatclub@gmail.com.

Get new recipes updates over RSS feed.

⚠️ Changelog

11.20.2025 - We updated the copy shelf tool to include the Houdini version, which is also visible on the recipes listing. Please update your shelf tools using the Python one-liner from the Recommended Install section.

📦 Recommended Install

To install Cookbook shelf tools copy this code to Houdini Python Shell and press Enter. You will see Cookbook shelf apper on the top panel.

To open Python Shell press Alt-Shift-P or go to main menu Window > Python Shell.

📂 Alternative Manual Install
⬇️ Download shelf tool file and place it to your Houdini toolbar folder:
  • Windows:
  • macOS:
  • Linux:

Replace USERNAME and X.Y with your account name and Houdini version.

Restart Houdini.

? About this project

Motivation and Goals

We created this Houdini Cookbook because:

  • We needed a way to quickly share and store small Houdini node setups. Previously, we attempted to create HDA libraries, but it was too cumbersome for our small team.
  • We believe there is a better way to share Houdini examples than by sharing entire Houdini files.
  • We enjoy sharing our small setups with the Houdini community.
  • We strongly believe in the idea of "Own Your Data," therefore we do not hold any published recipes hostage. All recipes are backed up once a day to a public Git repository here. Even if this service goes down, anyone can still download the full collection and use it directly with the Cookbook shelf tool or by using the two Python functions described below.
  • We also embrace the idea of decentralization, and we are considering open sourcing the Cookbook web service so that anyone can run it locally with their own collection or as their own public webpage. Let us know if this is something that interests you.

How Does It Work

In Houdini 20.5, SideFX introduced a new Recipe system that allows users to save collections of nodes into human-readable structured text files (JSON). Within this, they added a new collection of Python utilities (hou.data) that allows for creating and loading recipes programmatically.

In particular, the Cookbook shelf tools use hou.data.selectedItemsAsData(...) for copying nodes and hou.createItemsFromData(...) for pasting.

For this web service, we use the Go programming language and store all submitted recipes in plain text JSON files.

Worm Rig
sop
Simple cartoon rig if you ever need a cute worm sliding across the screen.
Jan 02, 2026 | 21.0.440 | animation Cooked By: hugomorais
ewogICAgIk9VVF9jZW50ZXJfb2Zmc2V0IjogewogICAgICAgICJjb2xvciI6IFsKICAgICAgICAgICAgMSwKICAgICAgICAgICAgMC42OCwKICAgICAgICAgICAgMC42OAogICAgICAgIF0sCiAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAiY29sb3JkZWZhdWx0IjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInNldF9jZW50ZXJfb2Zmc2V0IiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAtMy4xOAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibnVsbCIKICAgIH0sCiAgICAiT1VUX3NwbGluZV9yaWdnZWQiOiB7CiAgICAgICAgImNvbG9yIjogWwogICAgICAgICAgICAxLAogICAgICAgICAgICAwLAogICAgICAgICAgICAwCiAgICAgICAgXSwKICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICJjb2xvcmRlZmF1bHQiOiBmYWxzZSwKICAgICAgICAgICAgImRpc3BsYXkiOiB0cnVlLAogICAgICAgICAgICAicmVuZGVyIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic3dlZXAzIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA2LjYsCiAgICAgICAgICAgIC0xMy4xOQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibnVsbCIKICAgIH0sCiAgICAiX19jb29rYm9va01ldGEiOiB7CiAgICAgICAgImNvbnRleHQiOiAic29wIiwKICAgICAgICAidmVyc2lvbiI6ICIyMS4wLjQ0MCIKICAgIH0sCiAgICAiX19zdGlja3lub3RlMSI6IHsKICAgICAgICAiY29sb3IiOiBbCiAgICAgICAgICAgIDEsCiAgICAgICAgICAgIDAuOTcsCiAgICAgICAgICAgIDAuNTIKICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMTMuMjEsCiAgICAgICAgICAgIC0wLjg1CiAgICAgICAgXSwKICAgICAgICAic2l6ZSI6IFsKICAgICAgICAgICAgMi41LAogICAgICAgICAgICAyLjUKICAgICAgICBdLAogICAgICAgICJ0ZXh0IjogIlllbGxvdyBjb2RlZCBub2RlcyBhcmUgdGhlIGNvbnRyb2xsZXJzIG9mIHRoZSByaWciLAogICAgICAgICJ0ZXh0X2NvbG9yIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAwLAogICAgICAgICAgICAwCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJTdGlja3lOb3RlIgogICAgfSwKICAgICJhZGQxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImF0dHJpYmRlbGV0ZTMiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJrZWVwIjogdHJ1ZSwKICAgICAgICAgICAgInN3aXRjaGVyIjogMQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA2LjYsCiAgICAgICAgICAgIC05LjczCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhZGQiCiAgICB9LAogICAgImF0dGFjaGpvaW50Z2VvMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJjb2xvcl9lbmQiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJuYW1lMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInNoYXBlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAic2hhcGVuYW1lIyI6ICJjdHJsIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAidXNlcmVzdHBvc2VhdHRyaWIiOiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA2LjYsCiAgICAgICAgICAgIDQuMjIKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImtpbmVmeDo6YXR0YWNoam9pbnRnZW8iLAogICAgICAgICJ1c2VyX2RhdGEiOiB7CiAgICAgICAgICAgICJkaXNwbGF5X29wdGlvbnMiOiAie1wic2hvd19qb2ludHNcIjogdHJ1ZSwgXCJzaG93X2xpbmtzXCI6IGZhbHNlLCBcInNvbGlkX2xpbmtzXCI6IHRydWUsIFwic2hvd19heGVzXCI6IGZhbHNlLCBcInNob3dfc2NlbmVfZ2VvXCI6IHRydWUsIFwic2hvd19qb2ludF9kYXRhXCI6IGZhbHNlfSIsCiAgICAgICAgICAgICJ3aXJlc3R5bGUiOiAicm91bmRlZCIKICAgICAgICB9CiAgICB9LAogICAgImF0dHJpYmRlbGV0ZTMiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAibWVyZ2UxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicHRkZWwiOiAiKiIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNi42LAogICAgICAgICAgICAtOC4zMwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmliZGVsZXRlIgogICAgfSwKICAgICJiYWNrIjogewogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImRpciI6IFsKICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgMAogICAgICAgICAgICBdLAogICAgICAgICAgICAib3JpZ2luIjogWwogICAgICAgICAgICAgICAgMC4yNSwKICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJwb2ludHMiOiAzCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDEwLjY5LAogICAgICAgICAgICAxOC43MwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibGluZSIKICAgIH0sCiAgICAiYmxhc3QxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImF0dGFjaGpvaW50Z2VvMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImdyb3VwIjogIkBuYW1lPT1taWQqIiwKICAgICAgICAgICAgImdyb3VwdHlwZSI6ICJwb2ludHMiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDUuMzYsCiAgICAgICAgICAgIDIuNjgKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImJsYXN0IgogICAgfSwKICAgICJibGFzdDMiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAicmlncG9zZTMiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJncm91cCI6ICJAbmFtZT1mcm9udF9wYXJlbnQgQG5hbWU9YmFja19wYXJlbnQiLAogICAgICAgICAgICAiZ3JvdXB0eXBlIjogInBvaW50cyIsCiAgICAgICAgICAgICJuZWdhdGUiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDAKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImJsYXN0IgogICAgfSwKICAgICJibGFzdDQiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYXR0YWNoam9pbnRnZW8xIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZ3JvdXAiOiAiQG5hbWU9PW1pZCoiLAogICAgICAgICAgICAiZ3JvdXB0eXBlIjogInBvaW50cyIsCiAgICAgICAgICAgICJuZWdhdGUiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDguMTgsCiAgICAgICAgICAgIDIuNjgKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImJsYXN0IgogICAgfSwKICAgICJibGFzdDUiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAicmlncG9zZTMiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJncm91cCI6ICJAbmFtZT1mcm9udF8qIiwKICAgICAgICAgICAgImdyb3VwdHlwZSI6ICJwb2ludHMiLAogICAgICAgICAgICAibmVnYXRlIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAzLjcsCiAgICAgICAgICAgIC00Ljg1CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJibGFzdCIKICAgIH0sCiAgICAiYmxhc3Q2IjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm9mZnNldF9odW1wIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZ3JvdXAiOiAiQG5hbWU9bWlkXyoiLAogICAgICAgICAgICAiZ3JvdXB0eXBlIjogInBvaW50cyIsCiAgICAgICAgICAgICJuZWdhdGUiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDYuNzQsCiAgICAgICAgICAgIC00Ljg1CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJibGFzdCIKICAgIH0sCiAgICAiYmxhc3Q3IjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInJpZ3Bvc2UzIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZ3JvdXAiOiAiQG5hbWU9YmFja18qIiwKICAgICAgICAgICAgImdyb3VwdHlwZSI6ICJwb2ludHMiLAogICAgICAgICAgICAibmVnYXRlIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAxMC4wNiwKICAgICAgICAgICAgLTQuODUKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImJsYXN0IgogICAgfSwKICAgICJjbGVhbjEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYmxhc3QzIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZG9kZWxhdHRyaWJzIjogdHJ1ZSwKICAgICAgICAgICAgImRvZGVsZ3JvdXBzIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAtMQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiY2xlYW4iCiAgICB9LAogICAgImNvbG9yX2VuZCI6IHsKICAgICAgICAiY29sb3IiOiBbCiAgICAgICAgICAgIDAuMjksCiAgICAgICAgICAgIDAuNTYsCiAgICAgICAgICAgIDAuODkKICAgICAgICBdLAogICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgImNvbG9yZGVmYXVsdCI6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJjb2xvcl9taWQiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJjb2xvciI6IFsKICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgMQogICAgICAgICAgICBdLAogICAgICAgICAgICAiZ3JvdXAiOiAiQG5hbWU9KmVuZCIsCiAgICAgICAgICAgICJncm91cHR5cGUiOiAicG9pbnRzIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA4LjE4LAogICAgICAgICAgICA5LjEKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImNvbG9yIgogICAgfSwKICAgICJjb2xvcl9taWQiOiB7CiAgICAgICAgImNvbG9yIjogWwogICAgICAgICAgICAwLjI5LAogICAgICAgICAgICAwLjU2LAogICAgICAgICAgICAwLjg5CiAgICAgICAgXSwKICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICJjb2xvcmRlZmF1bHQiOiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiY29sb3JfcGFyZW50cyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImNvbG9yIjogWwogICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJncm91cCI6ICJAbmFtZT0qX21pZCBAbmFtZT1taWRfc2lkZV8qIiwKICAgICAgICAgICAgImdyb3VwdHlwZSI6ICJwb2ludHMiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDguMTgsCiAgICAgICAgICAgIDEwLjEKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImNvbG9yIgogICAgfSwKICAgICJjb2xvcl9wYXJlbnRzIjogewogICAgICAgICJjb2xvciI6IFsKICAgICAgICAgICAgMC4yOSwKICAgICAgICAgICAgMC41NiwKICAgICAgICAgICAgMC44OQogICAgICAgIF0sCiAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAiY29sb3JkZWZhdWx0IjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm5hbWUyIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiY29sb3IiOiBbCiAgICAgICAgICAgICAgICAxLAogICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgXSwKICAgICAgICAgICAgImdyb3VwIjogIkBuYW1lPSpwYXJlbnQiLAogICAgICAgICAgICAiZ3JvdXB0eXBlIjogInBvaW50cyIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgOC4xOCwKICAgICAgICAgICAgMTEuMQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiY29sb3IiCiAgICB9LAogICAgImNvbnRyb2wxIjogewogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImNvbnRyb2x0eXBlIjogImNpcmNsZXMiLAogICAgICAgICAgICAib3JpZW50YXRpb24iOiAieCIsCiAgICAgICAgICAgICJzY2FsZSI6IDAuNDEKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgOS44OSwKICAgICAgICAgICAgNy4zNwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiY29udHJvbCIKICAgIH0sCiAgICAiZnJvbnQiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZGlyIjogWwogICAgICAgICAgICAgICAgLTEsCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgMAogICAgICAgICAgICBdLAogICAgICAgICAgICAib3JpZ2luIjogWwogICAgICAgICAgICAgICAgLTAuMjUsCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgMAogICAgICAgICAgICBdLAogICAgICAgICAgICAicG9pbnRzIjogMwogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAxLjI2LAogICAgICAgICAgICAxOC43MwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibGluZSIKICAgIH0sCiAgICAibWVyZ2UxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImJsYXN0NSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImJsYXN0NiIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImJsYXN0NyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAyCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNi42LAogICAgICAgICAgICAtNi44NAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibWVyZ2UiCiAgICB9LAogICAgIm1lcmdlNiI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJmcm9udCIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm1pZCIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImJhY2siLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMgogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDUuODEsCiAgICAgICAgICAgIDE2LjcxCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJtZXJnZSIKICAgIH0sCiAgICAibWlkIjogewogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImRpciI6IFsKICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgMAogICAgICAgICAgICBdLAogICAgICAgICAgICAiZGlzdCI6IDAuMiwKICAgICAgICAgICAgIm9yaWdpbiI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcImRpc3RcIikgKiAtMC41IgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJwb2ludHMiOiAzCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDUuODEsCiAgICAgICAgICAgIDE5LjUyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJsaW5lIiwKICAgICAgICAidXNlcl9kYXRhIjogewogICAgICAgICAgICAiZGlzcGxheV9vcHRpb25zIjogIntcInNob3dfam9pbnRzXCI6IHRydWUsIFwic2hvd19saW5rc1wiOiB0cnVlLCBcInNvbGlkX2xpbmtzXCI6IGZhbHNlLCBcInNob3dfYXhlc1wiOiB0cnVlLCBcInNob3dfc2NlbmVfZ2VvXCI6IHRydWV9IgogICAgICAgIH0KICAgIH0sCiAgICAibmFtZTEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiY29udHJvbDEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJudW1uYW1lcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAibmFtZSMiOiAiY3RybCIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA5Ljg5LAogICAgICAgICAgICA2LjU4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJuYW1lIgogICAgfSwKICAgICJuYW1lMiI6IHsKICAgICAgICAiY29sb3IiOiBbCiAgICAgICAgICAgIDAuNTgsCiAgICAgICAgICAgIDAuNzgsCiAgICAgICAgICAgIDEKICAgICAgICBdLAogICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgImNvbG9yZGVmYXVsdCI6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJwYXJlbnRqb2ludHMxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiY2xhc3MiOiAicG9pbnQiLAogICAgICAgICAgICAibnVtbmFtZXMiOiAwLAogICAgICAgICAgICAibnVtcmVuYW1lcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZnJvbSMiOiAicG9pbnRfMiIsCiAgICAgICAgICAgICAgICAgICAgInRvIyI6ICJmcm9udF9wYXJlbnQiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJmcm9tIyI6ICJwb2ludF8xIiwKICAgICAgICAgICAgICAgICAgICAidG8jIjogImZyb250X21pZCIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImZyb20jIjogInBvaW50XzAiLAogICAgICAgICAgICAgICAgICAgICJ0byMiOiAiZnJvbnRfZW5kIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZnJvbSMiOiAicG9pbnRfNCIsCiAgICAgICAgICAgICAgICAgICAgInRvIyI6ICJtaWRfcGFyZW50IgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZnJvbSMiOiAicG9pbnRfMyIsCiAgICAgICAgICAgICAgICAgICAgInRvIyI6ICJtaWRfc2lkZV9MIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZnJvbSMiOiAicG9pbnRfNSIsCiAgICAgICAgICAgICAgICAgICAgInRvIyI6ICJtaWRfc2lkZV9SIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZnJvbSMiOiAicG9pbnRfNiIsCiAgICAgICAgICAgICAgICAgICAgInRvIyI6ICJiYWNrX3BhcmVudCIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImZyb20jIjogInBvaW50XzciLAogICAgICAgICAgICAgICAgICAgICJ0byMiOiAiYmFja19taWQiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJmcm9tIyI6ICJwb2ludF84IiwKICAgICAgICAgICAgICAgICAgICAidG8jIjogImJhY2tfZW5kIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDUuODEsCiAgICAgICAgICAgIDEyLjY4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJuYW1lIgogICAgfSwKICAgICJvZmZzZXRfaHVtcCI6IHsKICAgICAgICAiY29sb3IiOiBbCiAgICAgICAgICAgIDEsCiAgICAgICAgICAgIDAuOTMsCiAgICAgICAgICAgIDAKICAgICAgICBdLAogICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgImNvbG9yZGVmYXVsdCI6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJyaWdwb3NlNiIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInAiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiZGV0YWlsKFwiLi4vT1VUX2NlbnRlcl9vZmZzZXRcIiwgXCJjZW50ZXJcIiwgMCkiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImRldGFpbChcIi4uL09VVF9jZW50ZXJfb2Zmc2V0XCIsIFwiaGVpZ2h0XCIsIDApIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA4LjE4LAogICAgICAgICAgICAwLjM2CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ4Zm9ybSIKICAgIH0sCiAgICAicGFyZW50am9pbnRzMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJyaWdkb2N0b3IyIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicmVwYXJlbnQiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImpvaW50IyI6ICJAbmFtZT1wb2ludF80IgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiam9pbnQjIjogIkBuYW1lPXBvaW50XzMiLAogICAgICAgICAgICAgICAgICAgICJwYXJlbnQjIjogIkBuYW1lPXBvaW50XzQiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0KICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNS44MSwKICAgICAgICAgICAgMTMuNjgKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImtpbmVmeDo6cGFyZW50am9pbnRzIiwKICAgICAgICAidXNlcl9kYXRhIjogewogICAgICAgICAgICAiZGlzcGxheV9vcHRpb25zIjogIntcInNob3dfam9pbnRzXCI6IDEsIFwic2hvd19saW5rc1wiOiAxLCBcInNvbGlkX2xpbmtzXCI6IDEsIFwic2hvd19heGVzXCI6IDAsIFwic2hvd19zY2VuZV9nZW9cIjogMH0iLAogICAgICAgICAgICAid2lyZXN0eWxlIjogInJvdW5kZWQiCiAgICAgICAgfQogICAgfSwKICAgICJyZXNhbXBsZTMiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYWRkMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImxlbmd0aCI6IDAuMDAxLAogICAgICAgICAgICAidHJlYXRwb2x5c2FzIjogInN1YmQiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDYuNiwKICAgICAgICAgICAgLTEwLjkzCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJyZXNhbXBsZSIKICAgIH0sCiAgICAicmlnZG9jdG9yMiI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJzb3J0NCIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImluaXR0cmFuc2Zvcm1zIjogdHJ1ZSwKICAgICAgICAgICAgInNob3dkaXJlY3Rpb24iOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDUuODEsCiAgICAgICAgICAgIDE0LjY4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJraW5lZng6OnJpZ2RvY3RvciIsCiAgICAgICAgInVzZXJfZGF0YSI6IHsKICAgICAgICAgICAgImRpc3BsYXlfb3B0aW9ucyI6ICJ7XCJzaG93X2pvaW50c1wiOiAxLCBcInNob3dfbGlua3NcIjogZmFsc2UsIFwic29saWRfbGlua3NcIjogMSwgXCJzaG93X2F4ZXNcIjogZmFsc2UsIFwic2hvd19zY2VuZV9nZW9cIjogMX0iCiAgICAgICAgfQogICAgfSwKICAgICJyaWdwb3NlMyI6IHsKICAgICAgICAiY29sb3IiOiBbCiAgICAgICAgICAgIDEsCiAgICAgICAgICAgIDAuOTMsCiAgICAgICAgICAgIDAKICAgICAgICBdLAogICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgImNvbG9yZGVmYXVsdCI6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJibGFzdDEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJ0cmFuc2Zvcm1hdGlvbnMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImdyb3VwIyI6ICJAbmFtZT1mcm9udF9lbmQiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJncm91cCMiOiAiQG5hbWU9ZnJvbnRfcGFyZW50IiwKICAgICAgICAgICAgICAgICAgICAidCMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIDAuNDAxODEwMzQ4MDMzOTA1MDMsCiAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJncm91cCMiOiAiQG5hbWU9ZnJvbnRfbWlkIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZ3JvdXAjIjogIkBuYW1lPWJhY2tfcGFyZW50IiwKICAgICAgICAgICAgICAgICAgICAiciMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgIDAuMTE3MzIxOTM3ODUyMzYwMTEsCiAgICAgICAgICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICJ0IyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgMC40NDcyOTA1Mzk3NDE1MTYxLAogICAgICAgICAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgICAgICAgICAtMC4wMDE5Mzc4NTUzMjYxMDQ5MDkyCiAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZ3JvdXAjIjogIkBuYW1lPWJhY2tfbWlkIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDUuMzcsCiAgICAgICAgICAgIDEuNTQKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImtpbmVmeDo6cmlncG9zZSIsCiAgICAgICAgInVzZXJfZGF0YSI6IHsKICAgICAgICAgICAgImRpc3BsYXlfb3B0aW9ucyI6ICJ7XCJzaG93X2pvaW50c1wiOiAxLCBcInNob3dfbGlua3NcIjogMCwgXCJzb2xpZF9saW5rc1wiOiAxLCBcInNob3dfYXhlc1wiOiAxLCBcInNob3dfc2NlbmVfZ2VvXCI6IDF9IgogICAgICAgIH0KICAgIH0sCiAgICAicmlncG9zZTYiOiB7CiAgICAgICAgImNvbG9yIjogWwogICAgICAgICAgICAxLAogICAgICAgICAgICAwLjkzLAogICAgICAgICAgICAwCiAgICAgICAgXSwKICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICJjb2xvcmRlZmF1bHQiOiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYmxhc3Q0IiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAidHJhbnNmb3JtYXRpb25zIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJncm91cCMiOiAiQG5hbWU9bWlkX3BhcmVudCIsCiAgICAgICAgICAgICAgICAgICAgInQjIjogWwogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXh0cmFwb2xhdGlvbl9hZnRlciI6ICJleHRlbmQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4dHJhcG9sYXRpb25fYmVmb3JlIjogImV4dGVuZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAia2V5ZnJhbWVzIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiZGV0YWlsKFwiLi4vT1VUX2NlbnRlcl9vZmZzZXRcIiwgXCJjZW50ZXJcIiwgMCkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJhbWUiOiAxCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImRldGFpbChcIi4uL09VVF9jZW50ZXJfb2Zmc2V0XCIsIFwiY2VudGVyXCIsIDApIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyYW1lIjogMTY1CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXh0cmFwb2xhdGlvbl9hZnRlciI6ICJleHRlbmQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4dHJhcG9sYXRpb25fYmVmb3JlIjogImV4dGVuZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAia2V5ZnJhbWVzIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiZGV0YWlsKFwiLi4vT1VUX2NlbnRlcl9vZmZzZXRcIiwgXCJoZWlnaHRcIiwgMCkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJhbWUiOiAxCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImRldGFpbChcIi4uL09VVF9jZW50ZXJfb2Zmc2V0XCIsIFwiaGVpZ2h0XCIsIDApIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyYW1lIjogMTY1CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZ3JvdXAjIjogIkBuYW1lPW1pZF9zaWRlX1IiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJncm91cCMiOiAiQG5hbWU9bWlkX3NpZGVfTCIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA4LjE4LAogICAgICAgICAgICAxLjU0CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJraW5lZng6OnJpZ3Bvc2UiLAogICAgICAgICJ1c2VyX2RhdGEiOiB7CiAgICAgICAgICAgICJkaXNwbGF5X29wdGlvbnMiOiAie1wic2hvd19qb2ludHNcIjogMSwgXCJzaG93X2xpbmtzXCI6IDAsIFwic29saWRfbGlua3NcIjogMSwgXCJzaG93X2F4ZXNcIjogMSwgXCJzaG93X3NjZW5lX2dlb1wiOiAxfSIKICAgICAgICB9CiAgICB9LAogICAgInNldF9jZW50ZXJfb2Zmc2V0IjogewogICAgICAgICJjb2xvciI6IFsKICAgICAgICAgICAgMSwKICAgICAgICAgICAgMC45MywKICAgICAgICAgICAgMAogICAgICAgIF0sCiAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAiY29sb3JkZWZhdWx0IjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImNsZWFuMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImRpc3RUaHJlc2hvbGQiOiAxLAogICAgICAgICAgICAiZmFsbG9mZlJhdGUiOiAxLAogICAgICAgICAgICAibWF4SGVpZ2h0IjogMSwKICAgICAgICAgICAgInNuaXBwZXQiOiAiLy8gR2V0IGluZGljZXMgb2Ygb3VyIHR3byBjb250cm9sIHBvaW50c1xuaW50IGggPSAwO1xuaW50IHQgPSAxO1xuXG4vLyBHZXQgcG9zaXRpb25zIG9mIGJvdGggcG9pbnRzXG52ZWN0b3IgUGggPSBwb2ludCgwLCBcIlBcIiwgaCk7XG52ZWN0b3IgUHQgPSBwb2ludCgwLCBcIlBcIiwgdCk7XG5cbi8vIENhbGN1bGF0ZSB0aGUgZGlzdGFuY2UgYmV0d2VlbiBwb2ludHNcbmZsb2F0IGRpc3QgPSBkaXN0YW5jZShQaCwgUHQpO1xuXG4vLyBDYWxjdWxhdGUgY2VudGVyIHBvaW50IChtaWRkbGUgb2YgdGhlIHR3byBwb2ludHMpXG5mbG9hdCBjZW50ZXIgPSAoUGgueCArIFB0LngpICogMC41O1xuXG4vLyBVc2VyIHBhcmFtZXRlcnNcbmZsb2F0IG1heEhlaWdodCA9IGNoZihcIm1heEhlaWdodFwiKTtcbmZsb2F0IGZhbGxvZmZSYXRlID0gY2hmKFwiZmFsbG9mZlJhdGVcIik7XG5mbG9hdCBkaXN0VGhyZXNob2xkID0gY2hmKFwiZGlzdFRocmVzaG9sZFwiKTtcblxuLy8gQ2FsY3VsYXRlIGhlaWdodCB3aXRoIHRocmVzaG9sZCBhbmQgZmFsbG9mZiByYXRlXG4vLyBPbmx5IHN0YXJ0IGNhbGN1bGF0aW5nIGhlaWdodCB3aGVuIGRpc3RhbmNlIGlzIGxlc3MgdGhhbiB0aHJlc2hvbGRcbmZsb2F0IGhlaWdodDtcbmlmIChkaXN0IFx1MDAzZT0gZGlzdFRocmVzaG9sZCkge1xuICAgIGhlaWdodCA9IDA7XG59IGVsc2Uge1xuICAgIC8vIFJlbWFwIHRoZSBkaXN0YW5jZSB0byBjcmVhdGUgYSBzbW9vdGggdHJhbnNpdGlvblxuICAgIC8vIFdoZW4gZGlzdCA9IGRpc3RUaHJlc2hvbGQsIGhlaWdodCA9IDBcbiAgICAvLyBXaGVuIGRpc3QgPSAwLCBoZWlnaHQgYXBwcm9hY2hlcyBtYXhIZWlnaHRcbiAgICBmbG9hdCBhZGp1c3RlZERpc3QgPSBmaXQoZGlzdCwgMCwgZGlzdFRocmVzaG9sZCwgMCwgMSk7XG4gICAgLy8gVXNlIGZhbGxvZmZSYXRlIGFzIGFuIGV4cG9uZW50IHRvIGNvbnRyb2wgdGhlIGN1cnZlIHNoYXBlXG4gICAgaGVpZ2h0ID0gbWF4SGVpZ2h0ICogcG93KDEgLSBhZGp1c3RlZERpc3QsIGZhbGxvZmZSYXRlKTtcbn1cblxuLy8gRW5zdXJlIGhlaWdodCBuZXZlciBnb2VzIGJlbG93IHplcm9cbmhlaWdodCA9IG1heChoZWlnaHQsIDApO1xuXG4vLyBTdG9yZSB2YWx1ZXMgYXMgZGV0YWlsIGF0dHJpYnV0ZXNcbnNldGRldGFpbGF0dHJpYigwLCBcImNlbnRlclwiLCBjZW50ZXIsIFwic2V0XCIpO1xuc2V0ZGV0YWlsYXR0cmliKDAsIFwiaGVpZ2h0XCIsIGhlaWdodCwgXCJzZXRcIik7IgogICAgICAgIH0sCiAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJpbnNlcnRfYWZ0ZXIiOiAidmV4X3RocmVhZGpvYnNpemUiLAogICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiB7CiAgICAgICAgICAgICAgICAgICAgImZvbGRlcl9nZW5lcmF0ZWRwYXJtc19zbmlwcGV0IjogewogICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiR2VuZXJhdGVkIENoYW5uZWwgUGFyYW1ldGVycyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3RUaHJlc2hvbGQiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkRpc3R0aHJlc2hvbGQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgImZhbGxvZmZSYXRlIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJGYWxsb2ZmcmF0ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWF4SGVpZ2h0IjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJNYXhoZWlnaHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImdyb3VwX3R5cGUiOiAic2ltcGxlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiYmxhbmsiCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZvbGRlcl9zaW1wbGUiCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIC0yLjA0CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJ3cmFuZ2xlIgogICAgfSwKICAgICJzb3J0NCI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJtZXJnZTYiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJwdHNvcnQiOiAiYnl4IgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA1LjgxLAogICAgICAgICAgICAxNS42OAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAic29ydCIKICAgIH0sCiAgICAic3dlZXAzIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInJlc2FtcGxlMyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImNhcGRpdnMiOiA4LAogICAgICAgICAgICAiY29scyI6IDE2LAogICAgICAgICAgICAiZW5kY2FwdHlwZSI6ICJncmlkIiwKICAgICAgICAgICAgInN1cmZhY2VzaGFwZSI6ICJ0dWJlIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA2LjYsCiAgICAgICAgICAgIC0xMS45OQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAic3dlZXA6OjIuMCIKICAgIH0KfQ==
Starter Crowd Setup
This setup is a quick start to a crowd simulation. It supports custom characters as agents, layers for clothing, and motion path avoidance, and terrain adaptation. This snippet was stripped down from our crowd simulation work for the Cant Wait music video.
Nov 30, 2025 | 20.5.584 | animation Cooked By: snay
ewogICAgIkFHRU5UMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJoYXRfcHJldmlldyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMS4xMiwKICAgICAgICAgICAgLTguNzQKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogIm51bGwiCiAgICB9LAogICAgIkFHRU5UMiI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJuYW1lMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMy44MywKICAgICAgICAgICAgLTguNjEKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogIm51bGwiCiAgICB9LAogICAgIkNST1dEIjogewogICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgImRpc3BsYXkiOiB0cnVlLAogICAgICAgICAgICAicmVuZGVyIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYWdlbnR0ZXJyYWluYWRhcHRhdGlvbjEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDMuNywKICAgICAgICAgICAgLTE4Ljc4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJudWxsIgogICAgfSwKICAgICJURVJSQUlOIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImFzc2lnbl9kZW5zaXR5X3RvX3BvaW50cyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgOS44NiwKICAgICAgICAgICAgLTguOTcKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogIm51bGwiCiAgICB9LAogICAgIl9fY29va2Jvb2tNZXRhIjogewogICAgICAgICJjb250ZXh0IjogInNvcCIsCiAgICAgICAgInZlcnNpb24iOiAiMjAuNS41ODQiCiAgICB9LAogICAgIl9fc3RpY2t5bm90ZTEiOiB7CiAgICAgICAgImNvbG9yIjogWwogICAgICAgICAgICAxLAogICAgICAgICAgICAwLjk3LAogICAgICAgICAgICAwLjUyCiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIC0zLjIyLAogICAgICAgICAgICAtMC41NQogICAgICAgIF0sCiAgICAgICAgInNpemUiOiBbCiAgICAgICAgICAgIDIuNSwKICAgICAgICAgICAgMi41CiAgICAgICAgXSwKICAgICAgICAidGV4dCI6ICJ0ZXN0IGdlb21ldHJ5IGNhbiBiZSByZXBsYWNlZCB3aXRoIGFuIGZieCBjaGFyYWNlciB3aXRoIHdhbGsgY3ljbGUgYW5pbWF0aW9uLiBKdXN0IGJlIHN1cmUgdG8gcmVwbGFjZSB0aGUgd2FsayBjeWNsZSBuYW1lIGluIHRoZSBhZ2VudGNsaXAgbm9kZS4iLAogICAgICAgICJ0ZXh0X2NvbG9yIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAwLAogICAgICAgICAgICAwCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJTdGlja3lOb3RlIgogICAgfSwKICAgICJfX3N0aWNreW5vdGUyIjogewogICAgICAgICJjb2xvciI6IFsKICAgICAgICAgICAgMSwKICAgICAgICAgICAgMC45NywKICAgICAgICAgICAgMC41MgogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA1LjY3LAogICAgICAgICAgICAtNy41NgogICAgICAgIF0sCiAgICAgICAgInNpemUiOiBbCiAgICAgICAgICAgIDIuMTQsCiAgICAgICAgICAgIDEKICAgICAgICBdLAogICAgICAgICJ0ZXh0IjogIlRoaXMgY2FuIGJlIGEgY29tcGxldGVseSBkaWZmZXJlbnQgYWdlbnQgIiwKICAgICAgICAidGV4dF9jb2xvciI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiU3RpY2t5Tm90ZSIKICAgIH0sCiAgICAiYWdlbnRfaGF0X2xheWVyIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImFnZW50Y2xpcDIiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJtZXJnZXBhY2tlZDEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMQogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJjdXJyZW50bGF5ZXJzIjogIm5hbWUxIGRlZmF1bHQiLAogICAgICAgICAgICAibGF5ZXJuYW1lYXR0cmliIjogIm5hbWUiLAogICAgICAgICAgICAibnVtbGF5ZXJzIjogMCwKICAgICAgICAgICAgInNldGN1cnJlbnRsYXllcnMiOiBmYWxzZSwKICAgICAgICAgICAgInRyYW5zZm9ybW5hbWUiOiAiQ19IZWFkIiwKICAgICAgICAgICAgInVzZWxheWVybmFtZWF0dHJpYiI6IHRydWUKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMS4xMiwKICAgICAgICAgICAgLTMuOQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYWdlbnRsYXllcjo6Mi4wIgogICAgfSwKICAgICJhZ2VudF9tYWluX2xheWVyIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImFnZW50ZnJvbXJpZzEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJ0ZXN0Z2VvbWV0cnlfY2FweWJhcmExIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAidGVzdGdlb21ldHJ5X2NhcHliYXJhMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDEsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAyCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgIm51bWxheWVycyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiY29weXNvdXJjZWxheWVyIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImVuYWJsZWxheWVyIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImV4aXN0aW5nc2hhcGVzIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImxheWVybmFtZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICJkZWZhdWx0IiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInNoYXBlcyMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICIqIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInNvbG9sYXllciMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJzb3VyY2VsYXllciMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJzb3VyY2VsYXllcnNoYXBlcyMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJzb3VyY2VsYXllcnRyYW5zZm9ybXMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAuODcsCiAgICAgICAgICAgIC0xLjQ3CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhZ2VudGxheWVyOjoyLjAiCiAgICB9LAogICAgImFnZW50Y2xpcDIiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYWdlbnRfbWFpbl9sYXllciIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm1vdGlvbmNsaXAxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYXBwbHlsb2NvbW90aW9uIjogdHJ1ZSwKICAgICAgICAgICAgImNsaXBzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJjaG9wIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImNvbnZlcnR0b2lucGxhY2UjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiY29udmVydHVuaXRzIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImRlbGF5bG9hZCMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJlbmFibGUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiZmJ4b3ZlcnJpZGVzYW1wbGVyYXRlIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImZieHNhbXBsZXJhdGUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiZmJ4dGFrZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJmaWxlIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImZyYW1lcmFuZ2UjXyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImtlZXBkZWZvcm1pbmdzaGFwZXhmb3JtcyMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJrZWVwcmVmIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImxvcHBhdGgjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAibWluaW1hbG5vZGVzIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgIm5hbWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAib2JqcGF0dGVybiMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJvYmpzdWJuZXQjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAib2JqdHlwZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJwYWNrZWRpbnB1dHMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAicHJpbXBhdHRlcm4jIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAicHJvamVjdGF4aXMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAic291cmNlIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogInNvcCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ0cmF2ZXJzZW91dHB1dHMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidXNkZmlsZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ1c2Rzb3VyY2UjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAiY3VycmVudGNsaXAiOiAid2FsayIsCiAgICAgICAgICAgICJsb2NvbW90aW9ubm9kZSI6ICJDX1BlbHZpcyIsCiAgICAgICAgICAgICJzZXRjdXJyZW50Y2xpcCI6IHRydWUKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMS4xMiwKICAgICAgICAgICAgLTIuNzgKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImFnZW50Y2xpcDo6Mi4wIgogICAgfSwKICAgICJhZ2VudGZyb21yaWcxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInRlc3RnZW9tZXRyeV9jYXB5YmFyYTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAxLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJhZ2VudG5hbWUiOiAiY2FweWJhcmEiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDAKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImtpbmVmeDo6YWdlbnRmcm9tcmlnIgogICAgfSwKICAgICJhZ2VudHRlcnJhaW5hZGFwdGF0aW9uMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJjcm93ZG1vdGlvbnBhdGhldmFsdWF0ZTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJURVJSQUlOIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZW5hYmxlc2ltdWxhdGlvbiI6IGZhbHNlLAogICAgICAgICAgICAiZ3VpZGVjb2xvciI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImxpbmVhciIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogWwogICAgICAgICAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgICAgICAgICAwLjksCiAgICAgICAgICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAibGluZWFyIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMSwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIDAuOSwKICAgICAgICAgICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgICAgICAgICAgMAogICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAzLjcsCiAgICAgICAgICAgIC0xNy4yCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhZ2VudHRlcnJhaW5hZGFwdGF0aW9uIgogICAgfSwKICAgICJhc3NpZ25fYWdlbnRfdG9fcG9pbnRzIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm1vdW50YWluMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInNuaXBwZXQiOiAiLy8gYXNzaWduIHRoZSBhZ2VudCB0aGF0IHlvdSB3YW50IHRvIGFwcGVhciBvbiBlYWNoIHBvaW50IHBvc2l0aW9uXG5mbG9hdCByID0gcmFuZChAcHRudW0pO1xuXG5pZiAociBcdTAwM2MgMC41KSB7XG4gICAgc0BhZ2VudG5hbWUgPSBcImNhcHliYXJhXCI7XG59IGVsc2Uge1xuICAgIHNAYWdlbnRuYW1lID0gXCJjYXB5YmFyYVJlZFwiO1xufVxuXG4iCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDkuODYsCiAgICAgICAgICAgIC02LjE2CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJ3cmFuZ2xlIgogICAgfSwKICAgICJhc3NpZ25fZGVuc2l0eV90b19wb2ludHMiOiB7CiAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAidGVtcGxhdGUiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJhc3NpZ25fYWdlbnRfdG9fcG9pbnRzIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAic25pcHBldCI6ICJpZihhYnModkBQLnopIFx1MDAzYyAxMC4wKXtcbiAgICBmQGRlbnNpdHkgPSAxLjA7XG59XG4iCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDkuODYsCiAgICAgICAgICAgIC03LjIxCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJ3cmFuZ2xlIgogICAgfSwKICAgICJjb2xvcjEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiaGF0X3ByZXZpZXciLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJjb2xvciI6IFsKICAgICAgICAgICAgICAgIDAuNSwKICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgIF0KICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMy44MywKICAgICAgICAgICAgLTYuNjMKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImNvbG9yIgogICAgfSwKICAgICJjcm93ZF9jb2xsaWRlciI6IHsKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJkaXZyYXRlIjogWwogICAgICAgICAgICAgICAgMiwKICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAyCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJzY2FsZSI6IDEwLAogICAgICAgICAgICAidCI6IFsKICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgMjEuOQogICAgICAgICAgICBdLAogICAgICAgICAgICAidHlwZSI6ICJwb2x5bWVzaCIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNy44NSwKICAgICAgICAgICAgLTEzLjI3CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJib3giCiAgICB9LAogICAgImNyb3dkYXNzaWdubGF5ZXJzMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJjcm93ZHNvdXJjZTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJudW1sYXllcnMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImVuYWJsZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJlbmFibGVwZXJjZW50YWdlIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImZvbGRlcl9sYXllcnMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiZm9sZGVyX3NlbGVjdCMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJncm91cCMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICJAbmFtZT0qIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgIm51bWxheWVycGF0dGVybnMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAibXVsdGlwYXJtcyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGF5ZXJwYXR0ZXJuI18jIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiaGF0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxheWVyd2VpZ2h0I18jIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAxLjUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJwZXJjZW50YWdlIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJwZXJjZW50YWdlc2VlZCMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJzZWVkIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInNlbGVjdGJ5IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInNlbGVjdGxheWVycGF0dGVybiMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0KICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMy41NywKICAgICAgICAgICAgLTEyLjM5CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJjcm93ZGFzc2lnbmxheWVycyIKICAgIH0sCiAgICAiY3Jvd2Rtb3Rpb25wYXRoMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJjcm93ZGFzc2lnbmxheWVyczEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJmcmFtZXJhbmdlIjogWwogICAgICAgICAgICAgICAgMSwKICAgICAgICAgICAgICAgIDIyNywKICAgICAgICAgICAgICAgIDEKICAgICAgICAgICAgXSwKICAgICAgICAgICAgIm51bWFzc2lnbm1lbnRzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJjbGlwbmFtZXNlZWQjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiY2xpcG9mZnNldHNlZWQjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiY2xpcHNwZWVkIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMi42NTEsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJjbGlwc3BlZWRhdHRyaWIjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiY2xpcHNwZWVkbW9kZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICJ2YXJ5aW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImNsaXBzcGVlZHNlZWQjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiY2xpcHNwZWVkdmFyaWFuY2UjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAzMCwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImNsaXB0aW1ldW5pdHMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiZ3JvdXAjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiQG5hbWU9Y2FweWJhcmEqIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImdyb3VwdHlwZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJpbml0aWFsY2xpcHRpbWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAibnVtY2xpcHBhdHRlcm5zIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgIm11bHRpcGFybXMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImNsaXBwYXR0ZXJuI18jIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAid2FsayIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjbGlwd2VpZ2h0I18jIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAicmFuZG9tY2xpcG9mZnNldCMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJyYW5kb21pemVjbGlwdGltZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJzZXRpbml0aWFsY2xpcHRpbWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDMuNTcsCiAgICAgICAgICAgIC0xMy40MQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiY3Jvd2Rtb3Rpb25wYXRoIgogICAgfSwKICAgICJjcm93ZG1vdGlvbnBhdGhhdm9pZDEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiY3Jvd2Rtb3Rpb25wYXRoMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImNyb3dkbW90aW9ucGF0aDEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAxLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJjcm93ZF9jb2xsaWRlciIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAyCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgIm1heHR1cm5yYXRlIjogMjcsCiAgICAgICAgICAgICJ0dXJuZGFtcGluZyI6IDIuNAogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAzLjU3LAogICAgICAgICAgICAtMTQuNzkKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImNyb3dkbW90aW9ucGF0aGF2b2lkIgogICAgfSwKICAgICJjcm93ZG1vdGlvbnBhdGhldmFsdWF0ZTEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiY3Jvd2Rtb3Rpb25wYXRoYXZvaWQxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiY3Jvd2Rtb3Rpb25wYXRoYXZvaWQxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMSwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAzLjU3LAogICAgICAgICAgICAtMTYuMDUKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImNyb3dkbW90aW9ucGF0aGV2YWx1YXRlIgogICAgfSwKICAgICJjcm93ZHNvdXJjZTEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAibWVyZ2UxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiVEVSUkFJTiIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImRlZmF1bHRzdGF0ZXNlZWQiOiAwLAogICAgICAgICAgICAiZm9yY2V0b3RhbCI6IHRydWUsCiAgICAgICAgICAgICJudW1hZ2VudHBhdHRlcm5zIjogMCwKICAgICAgICAgICAgIm51bWxheWVycGF0dGVybnMiOiAwLAogICAgICAgICAgICAibnVtc3RhdGVwYXR0ZXJucyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAic3RhdGVwYXR0ZXJuXyMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICJXYWxrIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInN0YXRld2VpZ2h0XyMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDAuNSwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgInJhbmRvbWl6ZWFnZW50IjogdHJ1ZSwKICAgICAgICAgICAgInJhbmRvbWl6ZWFnZW50c2VlZCI6IDIuOTksCiAgICAgICAgICAgICJyYW5kb21pemVjbGlwdGltZSI6IHRydWUsCiAgICAgICAgICAgICJyYW5kb21pemVkZWZhdWx0c3RhdGUiOiB0cnVlLAogICAgICAgICAgICAic2NhdHRlcmFnZW50IjogMTM1LAogICAgICAgICAgICAic2l6ZSI6IFsKICAgICAgICAgICAgICAgIDYwLAogICAgICAgICAgICAgICAgMTAKICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAzLjU3LAogICAgICAgICAgICAtMTEuMzkKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImNyb3dkc291cmNlOjozLjAiCiAgICB9LAogICAgImdyaWQxIjogewogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInNpemUiOiBbCiAgICAgICAgICAgICAgICAxNiwKICAgICAgICAgICAgICAgIDI0CiAgICAgICAgICAgIF0KICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgOS44NiwKICAgICAgICAgICAgLTIuNjEKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImdyaWQiCiAgICB9LAogICAgImhhdF9wcmV2aWV3IjogewogICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgImJ5cGFzcyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImFnZW50X2hhdF9sYXllciIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImN1cnJlbnRsYXllciI6ICJoYXQgZGVmYXVsdCIsCiAgICAgICAgICAgICJlbmFibGVjdXJyZW50bGF5ZXIiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDEuMTIsCiAgICAgICAgICAgIC01LjQ5CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhZ2VudGVkaXQiCiAgICB9LAogICAgIm1lcmdlMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJBR0VOVDEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJBR0VOVDIiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMQogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDIuMDMsCiAgICAgICAgICAgIC05Ljg5CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJtZXJnZSIKICAgIH0sCiAgICAibWVyZ2VwYWNrZWQxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInBsYXRvbmljMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgIm5hbWVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJuYW1lIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogImhhdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ0cmVhdGFzZm9sZGVyIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInVzZWlucHV0IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA0LjgsCiAgICAgICAgICAgIC0xLjI1CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJtZXJnZXBhY2tlZCIKICAgIH0sCiAgICAibW90aW9uY2xpcDEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAidGVzdGdlb21ldHJ5X2NhcHliYXJhMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDIsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImZyYW1lcmFuZ2UiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiJEZTVEFSVCIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAyMQogICAgICAgICAgICBdLAogICAgICAgICAgICAibGVmdGVuZGJlaGF2aW9yIjogImxvb3AiLAogICAgICAgICAgICAicmlnaHRlbmRiZWhhdmlvciI6ICJsb29wIiwKICAgICAgICAgICAgInVzZWZyYW1lcmFuZ2UiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDIuMjEsCiAgICAgICAgICAgIC0wLjEzCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJraW5lZng6Om1vdGlvbmNsaXAiCiAgICB9LAogICAgIm1vdW50YWluMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJzdWJkaXZpZGUxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYW1wbGl0dWRlIjogMy4wMywKICAgICAgICAgICAgImF0dHJpYnMiOiAiUCIsCiAgICAgICAgICAgICJkaXNwbGFjZSI6IHRydWUsCiAgICAgICAgICAgICJlbGVtZW50c2l6ZSI6IDE2LjksCiAgICAgICAgICAgICJmcmFjdGFsIjogImhtZlQiLAogICAgICAgICAgICAibm9pc2VyYW5nZSI6ICJ6Y2VudGVyZWQiLAogICAgICAgICAgICAib2N0IjogOCwKICAgICAgICAgICAgInJvdWdoIjogMC40CiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDkuODYsCiAgICAgICAgICAgIC01LjI2CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJub2lzZTo6Mi4wIgogICAgfSwKICAgICJuYW1lMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJjb2xvcjEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJhdHRyaWJuYW1lIjogImFnZW50bmFtZSIsCiAgICAgICAgICAgICJjbGFzcyI6ICJwb2ludCIsCiAgICAgICAgICAgICJudW1uYW1lcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZ3JvdXAjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAibmFtZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICJjYXB5YmFyYVJlZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0KICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMy44MywKICAgICAgICAgICAgLTcuNzEKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogIm5hbWUiCiAgICB9LAogICAgInBsYXRvbmljMSI6IHsKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJyIjogWwogICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgIDMyLAogICAgICAgICAgICAgICAgMAogICAgICAgICAgICBdLAogICAgICAgICAgICAicmFkaXVzIjogMC4yLAogICAgICAgICAgICAidCI6IFsKICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAwLjEyLAogICAgICAgICAgICAgICAgMAogICAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDQuOCwKICAgICAgICAgICAgMC4xCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJwbGF0b25pYyIKICAgIH0sCiAgICAic3ViZGl2aWRlMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJ0cmFuc2Zvcm0iLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJpdGVyYXRpb25zIjogNAogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA5Ljg2LAogICAgICAgICAgICAtNC4yOAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAic3ViZGl2aWRlIgogICAgfSwKICAgICJ0ZXN0Z2VvbWV0cnlfY2FweWJhcmExIjogewogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMS4xMiwKICAgICAgICAgICAgMS44NwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAidGVzdGdlb21ldHJ5X2NhcHliYXJhIgogICAgfSwKICAgICJ0cmFuc2Zvcm0iOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiZ3JpZDEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJzIjogWwogICAgICAgICAgICAgICAgMC4yMSwKICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAxCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJzY2FsZSI6IDEwLAogICAgICAgICAgICAidCI6IFsKICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgMzQuMjAwNTYzOTA3NjIzMjkKICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA5Ljg2LAogICAgICAgICAgICAtMy4zNwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAieGZvcm0iCiAgICB9Cn0=
Camera Focus Point
Dynamic camera focus point that can be animated or attached to an object so that it stays in focus when camera of object is moving. Based on Houdini Solaris | Focus Camera Recipe tutorial.
Nov 30, 2025 | 20.5.584 | solaris Cooked By: kif
ewogICAgIl9fY29va2Jvb2tNZXRhIjogewogICAgICAgICJjb250ZXh0IjogImxvcCIsCiAgICAgICAgInZlcnNpb24iOiAiMjAuNS41ODQiCiAgICB9LAogICAgImF0dGFjaF9mb2N1c190b19waWciOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiZm9jdXNfb2Zmc2V0IiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicm90YXRpb24iOiBmYWxzZSwKICAgICAgICAgICAgInNjYWxlIjogZmFsc2UsCiAgICAgICAgICAgICJzaGVhciI6IGZhbHNlLAogICAgICAgICAgICAic291cmNlIjogIi9jYW1lcmFzL21haW5fZm9jdXNfcG9pbnQiLAogICAgICAgICAgICAidGFyZ2V0IjogIi9waWciCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAuMTEsCiAgICAgICAgICAgIC02LjE2CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJwYXJlbnRjb25zdHJhaW50IgogICAgfSwKICAgICJmb2N1c19vZmZzZXQiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAibWVyZ2UzIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicHJpbXBhdHRlcm4iOiAiL2NhbWVyYXMvbWFpbl9mb2N1c19wb2ludCIsCiAgICAgICAgICAgICJ0IjogWwogICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAxLjMwNDgxNTM1MTk2MzA0MzIKICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLjEsCiAgICAgICAgICAgIC00Ljg4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ4Zm9ybSIKICAgIH0sCiAgICAiZm9jdXNfcG9pbnQiOiB7CiAgICAgICAgImVkaXRhYmxlcyI6IHsKICAgICAgICAgICAgInNvcG5ldC9jcmVhdGUiOiB7CiAgICAgICAgICAgICAgICAiY2hpbGRyZW4iOiB7CiAgICAgICAgICAgICAgICAgICAgImNvbG9yMSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbSI6ICJtZXJnZTEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb2xvciI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjI1LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuNSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIuNzgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMC45MwogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJjb2xvciIKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJsaW5lMSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9yaWdpbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0wLjUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjc0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMi43MwogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJsaW5lIgogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImxpbmUyIjogewogICAgICAgICAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlyIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9yaWdpbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMC41LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAzLjg0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMi43MgogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJsaW5lIgogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImxpbmUzIjogewogICAgICAgICAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlyIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9yaWdpbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTAuNQogICAgICAgICAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA1LjcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyLjIyCiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImxpbmUiCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAibWVyZ2UxIjogewogICAgICAgICAgICAgICAgICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogImxpbmUxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbSI6ICJsaW5lMiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAibGluZTMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIuNzgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjI5CiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogIm1lcmdlIgogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgIm91dHB1dDAiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5IjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZW5kZXIiOiB0cnVlCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAiY29sb3IxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3V0cHV0aWR4IjogMAogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyLjc5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgLTIuMTUKICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAib3V0cHV0IgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAidHlwZSI6ICJzdWJuZXQiCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm1haW4iLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJwYXRocHJlZml4IjogIi9jYW1lcmFzL21haW5fZm9jdXNfcG9pbnQiLAogICAgICAgICAgICAic2hvd2xvcHN0YWdlIjogIiIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgLTEuMDUKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInNvcGNyZWF0ZSIKICAgIH0sCiAgICAiaGlkZV9mb2N1c19naXptbyI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJmb2N1c19wb2ludCIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInByaW1wYXR0ZXJuIjogIi9jYW1lcmFzL21haW5fZm9jdXNfcG9pbnQiLAogICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RyZW5kZXJ2aXNpYmlsaXR5XzR4YmZnIjogIiIsCiAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHJlbmRlcnZpc2liaWxpdHlfY29udHJvbF81YmNmZyI6ICJzZXQiCiAgICAgICAgfSwKICAgICAgICAicGFybXRlbXBsYXRlcyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImluc2VydF9hZnRlciI6ICJjcmVhdGVwcmltc2dyb3VwMiIsCiAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAiS2FybWEiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJLYXJtYSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgIkRpY2luZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiRGljaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0ZGljaW5nZGVwdGhtYXhfY29udHJvbF93N2JmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJEaWNpbmcgTWF4aW11bSBEZXB0aCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGRpY2luZ2RlcHRobWF4X3Z1YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAtMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGRpY2luZ2RlcHRobWF4X2NvbnRyb2xfdzdiZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0ZGljaW5nZGVwdGhtYXhfY29udHJvbF93N2JmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkRpY2luZyBNYXhpbXVtIERlcHRoIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtaW5fdmFsdWUiOiAtMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0X21pbiI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiRGljaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImludCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RkaWNpbmdkZXB0aG1pbl9jb250cm9sX3c3YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnaW50JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkRpY2luZyBNaW5pbXVtIERlcHRoIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0ZGljaW5nZGVwdGhtaW5fdnViZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IC0xLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0ZGljaW5nZGVwdGhtaW5fY29udHJvbF93N2JmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RkaWNpbmdkZXB0aG1pbl9jb250cm9sX3c3YmZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiRGljaW5nIE1pbmltdW0gRGVwdGgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1pbl92YWx1ZSI6IC0xLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpY3RfbWluIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJEaWNpbmciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiaW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImludGVnZXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGRpY2luZ3F1YWxpdHlfOHNiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDAuNSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGRpY2luZ3F1YWxpdHlfY29udHJvbF85NWJmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RkaWNpbmdxdWFsaXR5X2NvbnRyb2xfOTViZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJEaWNpbmcgUXVhbGl0eSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWF4X3ZhbHVlIjogMTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN0cmljdF9taW4iOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIkRpY2luZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0ZGljaW5ncXVhbGl0eV9jb250cm9sXzk1YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnZmxvYXQnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiRGljaW5nIFF1YWxpdHkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R0cnVlZGlzcGxhY2VfY29udHJvbF9uNGJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJUcnVlIERpc3BsYWNlbWVudHMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R0cnVlZGlzcGxhY2VfbXJiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJUcnVlIERpc3BsYWNlbWVudCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3R0cnVlZGlzcGxhY2VfY29udHJvbF9uNGJmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3R0cnVlZGlzcGxhY2VfY29udHJvbF9uNGJmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlRydWUgRGlzcGxhY2VtZW50cyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV9pdGVtcyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJCdW1wIE1hcHBlZCBEaXNwbGFjZW1lbnQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiQnVtcCBNYXBwZWQgRGlzcGxhY2VtZW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVHJ1ZSBEaXNwbGFjZW1lbnQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiVHJ1ZSBEaXNwbGFjZW1lbnQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJEaXNhYmxlIERpc3BsYWNlbWVudCBTaGFkZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiRGlzYWJsZSBEaXNwbGFjZW1lbnQgU2hhZGVyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIkRpY2luZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJpbnQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAib3JkZXJlZF9tZW51IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ3JvdXBfZGVmYXVsdCI6ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdyb3VwX3R5cGUiOiAiY29sbGFwc2libGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmb2xkZXJfY29sbGFwc2libGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIkdlb21ldHJ5IjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJHZW9tZXRyeSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGN1bGxfYmFja2ZhY2VfOHNiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJPZmYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0Y3VsbF9iYWNrZmFjZV9jb250cm9sXzk1YmZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGN1bGxfYmFja2ZhY2VfY29udHJvbF85NWJmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkN1bGwgQmFja2ZhY2UiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfaXRlbXMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiT2ZmIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIk9mZiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkN1bGwgQmFja2ZhY2UiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiQ3VsbCBCYWNrZmFjZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkN1bGwgRnJvbnRmYWNlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIkN1bGwgRnJvbnRmYWNlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIkdlb21ldHJ5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImludCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJvcmRlcmVkX21lbnUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGN1bGxfYmFja2ZhY2VfY29udHJvbF85NWJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJDdWxsIEJhY2tmYWNlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0Y3VydmVfYmFzaXNfY29udHJvbF8wMmJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJPdmVycmlkZSBDdXJ2ZXMgQmFzaXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RjdXJ2ZV9iYXNpc196cGJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIkdlb21ldHJ5IERlZmF1bHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0Y3VydmVfYmFzaXNfY29udHJvbF8wMmJmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RjdXJ2ZV9iYXNpc19jb250cm9sXzAyYmZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiT3ZlcnJpZGUgQ3VydmVzIEJhc2lzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X2l0ZW1zIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkdlb21ldHJ5IERlZmF1bHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiR2VvbWV0cnkgRGVmYXVsdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkZvcmNlIExpbmVhciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJGb3JjZSBMaW5lYXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJGb3JjZSBCZXppZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiRm9yY2UgQmV6aWVyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiRm9yY2UgQi1TcGxpbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiRm9yY2UgQi1TcGxpbmUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJGb3JjZSBDYXRtdWxsLVJvbSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJGb3JjZSBDYXRtdWxsLVJvbSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJHZW9tZXRyeSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJpbnQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAib3JkZXJlZF9tZW51IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RjdXJ2ZV9zdHlsZV9jb250cm9sXzAyYmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnaW50JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlJlbmRlciBDdXJ2ZXMgQXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RjdXJ2ZV9zdHlsZV96cGJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIlJvdW5kZWQgQ3VydmVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGN1cnZlX3N0eWxlX2NvbnRyb2xfMDJiZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0Y3VydmVfc3R5bGVfY29udHJvbF8wMmJmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlJlbmRlciBDdXJ2ZXMgQXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfaXRlbXMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiRmxhdCBSaWJib25zIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIkZsYXQgUmliYm9ucyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlJvdW5kZWQgQ3VydmVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIlJvdW5kZWQgQ3VydmVzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiT3JpZW50ZWQgUmliYm9ucyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJPcmllbnRlZCBSaWJib25zIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIkdlb21ldHJ5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImludCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJvcmRlcmVkX21lbnUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHBvaW50X3N0eWxlX2NvbnRyb2xfMDJiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdpbnQnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiUmVuZGVyIFBvaW50cyBBcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHBvaW50X3N0eWxlX3pwYmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAiU3BoZXJlcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3Rwb2ludF9zdHlsZV9jb250cm9sXzAyYmZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHBvaW50X3N0eWxlX2NvbnRyb2xfMDJiZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJSZW5kZXIgUG9pbnRzIEFzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X2l0ZW1zIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkRpc2NzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIkRpc2NzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiU3BoZXJlcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJTcGhlcmVzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiT3JpZW50ZWQgRGlzY3MiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiT3JpZW50ZWQgRGlzY3MiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiR2VvbWV0cnkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiaW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogIm9yZGVyZWRfbWVudSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdyb3VwX2RlZmF1bHQiOiAiMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJncm91cF90eXBlIjogImNvbGxhcHNpYmxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZm9sZGVyX2NvbGxhcHNpYmxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJMaWdodCI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTGlnaHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3Rpc3BvcnRhbF8za2JmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGlzcG9ydGFsX2NvbnRyb2xfNHhiZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0aXNwb3J0YWxfY29udHJvbF80eGJmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIklzIFBvcnRhbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIkxpZ2h0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImJvb2wiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAidG9nZ2xlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3Rpc3BvcnRhbF9jb250cm9sXzR4YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnYm9vbCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJJcyBQb3J0YWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RsaWdodHNvdXJjZV9kaWZmdXNlc2NhbGVfNWJjZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3RsaWdodHNvdXJjZV9kaWZmdXNlc2NhbGVfY29udHJvbF82b2NmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RsaWdodHNvdXJjZV9kaWZmdXNlc2NhbGVfY29udHJvbF82b2NmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkxpZ2h0IFNvdXJjZSBEaWZmdXNlIE11bHRpcGxpZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJMaWdodCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0bGlnaHRzb3VyY2VfZGlmZnVzZXNjYWxlX2NvbnRyb2xfNm9jZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdmbG9hdCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJMaWdodCBTb3VyY2UgRGlmZnVzZSBNdWx0aXBsaWVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0bGlnaHRzb3VyY2Vfc3BlY3VsYXJzY2FsZV9jb250cm9sX3RxY2ZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnZmxvYXQnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTGlnaHQgU291cmNlIFNwZWN1bGFyIE11bHRpcGxpZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RsaWdodHNvdXJjZV9zcGVjdWxhcnNjYWxlX3NkY2ZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0bGlnaHRzb3VyY2Vfc3BlY3VsYXJzY2FsZV9jb250cm9sX3RxY2ZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGxpZ2h0c291cmNlX3NwZWN1bGFyc2NhbGVfY29udHJvbF90cWNmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkxpZ2h0IFNvdXJjZSBTcGVjdWxhciBNdWx0aXBsaWVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiTGlnaHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHBvcnRhbGRvbWVsaWdodHNfNHhiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICIqIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHBvcnRhbGRvbWVsaWdodHNfY29udHJvbF81YmNmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3Rwb3J0YWxkb21lbGlnaHRzX2NvbnRyb2xfNWJjZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJQb3J0YWwgRG9tZSBMaWdodHMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJMaWdodCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3Rwb3J0YWxkb21lbGlnaHRzX2NvbnRyb2xfNWJjZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdzdHJpbmcnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiUG9ydGFsIERvbWUgTGlnaHRzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dHJlYXRfYXNfbGlnaHRzb3VyY2VfY29udHJvbF9vaWNmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJUcmVhdCBBcyBMaWdodCBTb3VyY2UiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R0cmVhdF9hc19saWdodHNvdXJjZV9uNGJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIk5vIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHRyZWF0X2FzX2xpZ2h0c291cmNlX2NvbnRyb2xfb2ljZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dHJlYXRfYXNfbGlnaHRzb3VyY2VfY29udHJvbF9vaWNmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlRyZWF0IEFzIExpZ2h0IFNvdXJjZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV9pdGVtcyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJObyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJObyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlllcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJZZXMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJBdXRvIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIkF1dG8iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiTGlnaHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiaW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogIm9yZGVyZWRfbWVudSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdyb3VwX2RlZmF1bHQiOiAiMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJncm91cF90eXBlIjogImNvbGxhcHNpYmxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZm9sZGVyX2NvbGxhcHNpYmxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJMaW1pdHMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkxpbWl0cyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGRpZmZ1c2VsaW1pdF9jb250cm9sX240YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaGlkZV93aGVuIjogInsgeG5fX2thcm1haHlkcmFkaXNhYmxlbGlnaHRpbmdfcmhiZiA9PSAxIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2Zsb2F0JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkRpZmZ1c2UgTGltaXQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RkaWZmdXNlbGltaXRfbXJiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3RkaWZmdXNlbGltaXRfY29udHJvbF9uNGJmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RkaWZmdXNlbGltaXRfY29udHJvbF9uNGJmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImhpZGVfd2hlbiI6ICJ7IHhuX19rYXJtYWh5ZHJhZGlzYWJsZWxpZ2h0aW5nX3JoYmYgPT0gMSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJEaWZmdXNlIExpbWl0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiAzMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0X21pbiI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4OjpzbGlkZXIiOiAic25hcF90b19pbnQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJMaW1pdHMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogInZpZXdwb3J0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RyZWZsZWN0bGltaXRfY29udHJvbF9uNGJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImhpZGVfd2hlbiI6ICJ7IHhuX19rYXJtYWh5ZHJhZGlzYWJsZWxpZ2h0aW5nX3JoYmYgPT0gMSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdmbG9hdCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJSZWZsZWN0aW9uIExpbWl0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0cmVmbGVjdGxpbWl0X21yYmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiA0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0cmVmbGVjdGxpbWl0X2NvbnRyb2xfbjRiZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0cmVmbGVjdGxpbWl0X2NvbnRyb2xfbjRiZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJoaWRlX3doZW4iOiAieyB4bl9fa2FybWFoeWRyYWRpc2FibGVsaWdodGluZ19yaGJmID09IDEgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiUmVmbGVjdGlvbiBMaW1pdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWF4X3ZhbHVlIjogMzIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN0cmljdF9taW4iOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6c2xpZGVyIjogInNuYXBfdG9faW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiTGltaXRzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJ2aWV3cG9ydCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0cmVmcmFjdGxpbWl0X2NvbnRyb2xfbjRiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJoaWRlX3doZW4iOiAieyB4bl9fa2FybWFoeWRyYWRpc2FibGVsaWdodGluZ19yaGJmID09IDEgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnZmxvYXQnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiUmVmcmFjdGlvbiBMaW1pdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHJlZnJhY3RsaW1pdF9tcmJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogNCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHJlZnJhY3RsaW1pdF9jb250cm9sX240YmZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHJlZnJhY3RsaW1pdF9jb250cm9sX240YmZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaGlkZV93aGVuIjogInsgeG5fX2thcm1haHlkcmFkaXNhYmxlbGlnaHRpbmdfcmhiZiA9PSAxIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlJlZnJhY3Rpb24gTGltaXQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDMyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpY3RfbWluIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6OnNsaWRlciI6ICJzbmFwX3RvX2ludCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIkxpbWl0cyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAidmlld3BvcnQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHNzc2xpbWl0XzNrYmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0c3NzbGltaXRfY29udHJvbF80eGJmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3Rzc3NsaW1pdF9jb250cm9sXzR4YmZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiU1NTIExpbWl0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiAzMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0X21pbiI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiTGltaXRzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3Rzc3NsaW1pdF9jb250cm9sXzR4YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnZmxvYXQnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiU1NTIExpbWl0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1lbGltaXRfY29udHJvbF8wMmJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2Zsb2F0JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlZvbHVtZSBMaW1pdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZvbHVtZWxpbWl0X3pwYmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1lbGltaXRfY29udHJvbF8wMmJmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWVsaW1pdF9jb250cm9sXzAyYmZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVm9sdW1lIExpbWl0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiAzMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0X21pbiI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiTGltaXRzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ3JvdXBfZGVmYXVsdCI6ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdyb3VwX3R5cGUiOiAiY29sbGFwc2libGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmb2xkZXJfY29sbGFwc2libGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIlNhbXBsaW5nIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJTYW1wbGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGRpZmZ1c2VxdWFsaXR5X2NvbnRyb2xfdzdiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdmbG9hdCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJEaWZmdXNlIFF1YWxpdHkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RkaWZmdXNlcXVhbGl0eV92dWJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGRpZmZ1c2VxdWFsaXR5X2NvbnRyb2xfdzdiZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0ZGlmZnVzZXF1YWxpdHlfY29udHJvbF93N2JmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkRpZmZ1c2UgUXVhbGl0eSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN0cmljdF9taW4iOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlNhbXBsaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RsaWdodHNvdXJjZV9zYW1wbGluZ3F1YWxpdHlfMWdjZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3RsaWdodHNvdXJjZV9zYW1wbGluZ3F1YWxpdHlfY29udHJvbF8ydGNmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RsaWdodHNvdXJjZV9zYW1wbGluZ3F1YWxpdHlfY29udHJvbF8ydGNmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkxpZ2h0IFNhbXBsaW5nIFF1YWxpdHkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTYW1wbGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0bGlnaHRzb3VyY2Vfc2FtcGxpbmdxdWFsaXR5X2NvbnRyb2xfMnRjZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdmbG9hdCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJMaWdodCBTYW1wbGluZyBRdWFsaXR5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0cmVmbGVjdHF1YWxpdHlfY29udHJvbF93N2JmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2Zsb2F0JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlJlZmxlY3Rpb24gUXVhbGl0eSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHJlZmxlY3RxdWFsaXR5X3Z1YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0cmVmbGVjdHF1YWxpdHlfY29udHJvbF93N2JmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RyZWZsZWN0cXVhbGl0eV9jb250cm9sX3c3YmZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiUmVmbGVjdGlvbiBRdWFsaXR5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0X21pbiI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2FtcGxpbmciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHJlZnJhY3RxdWFsaXR5X2NvbnRyb2xfdzdiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdmbG9hdCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJSZWZyYWN0aW9uIFF1YWxpdHkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RyZWZyYWN0cXVhbGl0eV92dWJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHJlZnJhY3RxdWFsaXR5X2NvbnRyb2xfdzdiZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0cmVmcmFjdHF1YWxpdHlfY29udHJvbF93N2JmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlJlZnJhY3Rpb24gUXVhbGl0eSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN0cmljdF9taW4iOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlNhbXBsaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3Rzc3NxdWFsaXR5X2NvbnRyb2xfZTFiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdmbG9hdCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJTU1MgUXVhbGl0eSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHNzc3F1YWxpdHlfZG9iZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3Rzc3NxdWFsaXR5X2NvbnRyb2xfZTFiZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0c3NzcXVhbGl0eV9jb250cm9sX2UxYmZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiU1NTIFF1YWxpdHkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpY3RfbWluIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTYW1wbGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dmFyaWFuY2VhYV9tYXhzYW1wbGVzXzk1YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiA5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dmFyaWFuY2VhYV9tYXhzYW1wbGVzX2NvbnRyb2xfYmtjZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dmFyaWFuY2VhYV9tYXhzYW1wbGVzX2NvbnRyb2xfYmtjZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICIgTWF4IFNlY29uZGFyeSBTYW1wbGVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiA5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1pbl92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN0cmljdF9taW4iOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlNhbXBsaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImludCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R2YXJpYW5jZWFhX21heHNhbXBsZXNfY29udHJvbF9ia2NmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICIgTWF4IFNlY29uZGFyeSBTYW1wbGVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dmFyaWFuY2VhYV9taW5zYW1wbGVzXzk1YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dmFyaWFuY2VhYV9taW5zYW1wbGVzX2NvbnRyb2xfYmtjZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dmFyaWFuY2VhYV9taW5zYW1wbGVzX2NvbnRyb2xfYmtjZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICIgTWluIFNlY29uZGFyeSBTYW1wbGVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiA5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1pbl92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN0cmljdF9taW4iOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlNhbXBsaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImludCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R2YXJpYW5jZWFhX21pbnNhbXBsZXNfY29udHJvbF9ia2NmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICIgTWluIFNlY29uZGFyeSBTYW1wbGVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dmFyaWFuY2VhYV90aHJlc2hfY29udHJvbF9zZGNmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2Zsb2F0JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIiBTZWNvbmRhcnkgTm9pc2UgTGV2ZWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R2YXJpYW5jZWFhX3RocmVzaF9yemJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogMC4wMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZhcmlhbmNlYWFfdGhyZXNoX2NvbnRyb2xfc2RjZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dmFyaWFuY2VhYV90aHJlc2hfY29udHJvbF9zZGNmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIiBTZWNvbmRhcnkgTm9pc2UgTGV2ZWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDAuMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0X21pbiI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2FtcGxpbmciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZvbHVtZWZpbHRlcl9jb250cm9sX240YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnc3RyaW5nJykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlZvbHVtZSBGaWx0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWVmaWx0ZXJfbXJiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJib3giLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1lZmlsdGVyX2NvbnRyb2xfbjRiZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1lZmlsdGVyX2NvbnRyb2xfbjRiZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJWb2x1bWUgRmlsdGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X2l0ZW1zIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlBvaW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogInBvaW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiQm94IEZpbHRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJib3giCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJHYXVzc2lhbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJnYXVzc2lhbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkJhcnRsZXR0ICh0cmlhbmdsZSkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiYmFydGxldHQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJDYXRtdWxsLVJvbSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJjYXRyb20iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJIYW5uaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogImhhbm5pbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJCbGFja21hbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJibGFja21hbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlNpbmMgKHNoYXJwZW5pbmcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogInNpbmMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAic3RyaW5nX3JlcGxhY2UiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTYW1wbGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWVmaWx0ZXJ3aWR0aF9jb250cm9sX3NkY2ZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnZmxvYXQnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVm9sdW1lIEZpbHRlciBXaWR0aCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZvbHVtZWZpbHRlcndpZHRoX3J6YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1lZmlsdGVyd2lkdGhfY29udHJvbF9zZGNmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWVmaWx0ZXJ3aWR0aF9jb250cm9sX3NkY2ZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVm9sdW1lIEZpbHRlciBXaWR0aCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWF4X3ZhbHVlIjogNSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0X21pbiI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2FtcGxpbmciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZvbHVtZXF1YWxpdHlfOHNiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWVxdWFsaXR5X2NvbnRyb2xfOTViZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1lcXVhbGl0eV9jb250cm9sXzk1YmZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVm9sdW1lIFF1YWxpdHkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpY3RfbWluIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTYW1wbGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1lcXVhbGl0eV9jb250cm9sXzk1YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnZmxvYXQnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVm9sdW1lIFF1YWxpdHkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWVzYW1wbGluZ2NoYW5uZWxfOTViZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJkZW5zaXR5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZvbHVtZXNhbXBsaW5nY2hhbm5lbF9jb250cm9sX2JrY2ZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZvbHVtZXNhbXBsaW5nY2hhbm5lbF9jb250cm9sX2JrY2ZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVm9sdW1lIFNhbXBsaW5nIEZpZWxkIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2FtcGxpbmciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1lc2FtcGxpbmdjaGFubmVsX2NvbnRyb2xfYmtjZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdzdHJpbmcnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVm9sdW1lIFNhbXBsaW5nIEZpZWxkIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1lc2hhZG93c3RlcHJhdGVfY29udHJvbF9vaWNmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2Zsb2F0JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlZvbHVtZSBTaGFkb3cgU3RlcCBSYXRlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1lc2hhZG93c3RlcHJhdGVfbjRiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWVzaGFkb3dzdGVwcmF0ZV9jb250cm9sX29pY2ZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZvbHVtZXNoYWRvd3N0ZXByYXRlX2NvbnRyb2xfb2ljZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJWb2x1bWUgU2hhZG93IFN0ZXAgUmF0ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWF4X3ZhbHVlIjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0X21pbiI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2FtcGxpbmciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZvbHVtZXN0ZXByYXRlX2NvbnRyb2xfdzdiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdmbG9hdCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJWb2x1bWUgU3RlcCBSYXRlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1lc3RlcHJhdGVfdnViZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDAuMjUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWVzdGVwcmF0ZV9jb250cm9sX3c3YmZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZvbHVtZXN0ZXByYXRlX2NvbnRyb2xfdzdiZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJWb2x1bWUgU3RlcCBSYXRlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpY3RfbWluIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTYW1wbGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAidmlld3BvcnQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJncm91cF9kZWZhdWx0IjogIjEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ3JvdXBfdHlwZSI6ICJjb2xsYXBzaWJsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZvbGRlcl9jb2xsYXBzaWJsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiU2hhZGluZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiU2hhZGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGJ1bXBzaGFkb3d0ZXJtaW5hdG9yX2NvbnRyb2xfb2ljZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdmbG9hdCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJCdW1wIFNoYWRvdyBUZXJtaW5hdG9yIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0YnVtcHNoYWRvd3Rlcm1pbmF0b3JfbjRiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3RidW1wc2hhZG93dGVybWluYXRvcl9jb250cm9sX29pY2ZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGJ1bXBzaGFkb3d0ZXJtaW5hdG9yX2NvbnRyb2xfb2ljZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJCdW1wIFNoYWRvdyBUZXJtaW5hdG9yIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpY3RfbWF4IjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpY3RfbWluIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTaGFkaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RjYXVzdGljc2VuYWJsZV9jb250cm9sX3c3YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnYm9vbCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICIgRW5hYmxlIENhdXN0aWNzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0Y2F1c3RpY3NlbmFibGVfdnViZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3RjYXVzdGljc2VuYWJsZV9jb250cm9sX3c3YmZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGNhdXN0aWNzZW5hYmxlX2NvbnRyb2xfdzdiZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICIgRW5hYmxlIENhdXN0aWNzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2hhZGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJib29sIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInRvZ2dsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0Y2F1c3RpY3Nyb3VnaG5lc3NjbGFtcF9jb250cm9sX3hsY2ZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnZmxvYXQnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiIENhdXN0aWNzIFJvdWdobmVzcyBDbGFtcCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGNhdXN0aWNzcm91Z2huZXNzY2xhbXBfdzdiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDAuMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGNhdXN0aWNzcm91Z2huZXNzY2xhbXBfY29udHJvbF94bGNmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RjYXVzdGljc3JvdWdobmVzc2NsYW1wX2NvbnRyb2xfeGxjZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICIgQ2F1c3RpY3MgUm91Z2huZXNzIENsYW1wIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpY3RfbWF4IjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpY3RfbWluIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTaGFkaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RjdXNwYW5nbGVfY29udHJvbF9yemJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2Zsb2F0JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkN1c3AgQW5nbGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RjdXNwYW5nbGVfcW1iZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDYwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0Y3VzcGFuZ2xlX2NvbnRyb2xfcnpiZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0Y3VzcGFuZ2xlX2NvbnRyb2xfcnpiZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJDdXNwIEFuZ2xlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiA5MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0X21pbiI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2hhZGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0Y3VzdG9tX3RyYWNlc2V0c180eGJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGN1c3RvbV90cmFjZXNldHNfY29udHJvbF81YmNmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RjdXN0b21fdHJhY2VzZXRzX2NvbnRyb2xfNWJjZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJDdXN0b20gVHJhY2VzZXRzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2hhZGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RjdXN0b21fdHJhY2VzZXRzX2NvbnRyb2xfNWJjZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdzdHJpbmcnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiQ3VzdG9tIFRyYWNlc2V0cyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGRpZWxlY3RyaWNwcmlvcml0eV9jb250cm9sX2ZmY2ZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnaW50JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkRpZWxlY3RyaWMgUHJpb3JpdHkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RkaWVsZWN0cmljcHJpb3JpdHlfZTFiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3RkaWVsZWN0cmljcHJpb3JpdHlfY29udHJvbF9mZmNmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RkaWVsZWN0cmljcHJpb3JpdHlfY29udHJvbF9mZmNmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkRpZWxlY3RyaWMgUHJpb3JpdHkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDE2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpY3RfbWluIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTaGFkaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImludCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RmYWtlY2F1c3RpY3Nic2RmZW5hYmxlX2NvbnRyb2xfeGxjZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdib29sJykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIiBFdmFsdWF0ZSBCU0RGIE9uIEZha2UgQ2F1c3RpY3MiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RmYWtlY2F1c3RpY3Nic2RmZW5hYmxlX3c3YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0ZmFrZWNhdXN0aWNzYnNkZmVuYWJsZV9jb250cm9sX3hsY2ZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGZha2VjYXVzdGljc2JzZGZlbmFibGVfY29udHJvbF94bGNmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIiBFdmFsdWF0ZSBCU0RGIE9uIEZha2UgQ2F1c3RpY3MiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTaGFkaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImJvb2wiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAidG9nZ2xlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RmYWtlY2F1c3RpY3Njb2xvcl9jb250cm9sX3NkY2ZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnZmxvYXQzJykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIiBGYWtlIENhdXN0aWNzIENvbG9yIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0ZmFrZWNhdXN0aWNzY29sb3JfcnpiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGZha2VjYXVzdGljc2NvbG9yX2NvbnRyb2xfc2RjZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0ZmFrZWNhdXN0aWNzY29sb3JfY29udHJvbF9zZGNmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIiBGYWtlIENhdXN0aWNzIENvbG9yIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2hhZGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJmbG9hdDMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiY29sb3IiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGZha2VjYXVzdGljc29wYWNpdHlfMDJiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGZha2VjYXVzdGljc29wYWNpdHlfY29udHJvbF8xZ2NmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RmYWtlY2F1c3RpY3NvcGFjaXR5X2NvbnRyb2xfMWdjZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICIgRmFrZSBDYXVzdGljcyBPcGFjaXR5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2hhZGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJmbG9hdDMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiY29sb3IiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGZha2VjYXVzdGljc29wYWNpdHlfY29udHJvbF8xZ2NmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2Zsb2F0MycpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICIgRmFrZSBDYXVzdGljcyBPcGFjaXR5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0aG9sZG91dG1vZGVfY29udHJvbF8wMmJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJIb2xkb3V0IE1vZGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3Rob2xkb3V0bW9kZV96cGJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0aG9sZG91dG1vZGVfY29udHJvbF8wMmJmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3Rob2xkb3V0bW9kZV9jb250cm9sXzAyYmZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiSG9sZG91dCBNb2RlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X2l0ZW1zIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiTm9uZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIk1hdHRlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIk1hdHRlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiQmFja2dyb3VuZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJCYWNrZ3JvdW5kIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlNoYWRpbmciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiaW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogIm9yZGVyZWRfbWVudSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0aW50ZXJuYWxyZWZsZWN0ZW5hYmxlXzk1YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0aW50ZXJuYWxyZWZsZWN0ZW5hYmxlX2NvbnRyb2xfYmtjZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0aW50ZXJuYWxyZWZsZWN0ZW5hYmxlX2NvbnRyb2xfYmtjZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICIgRW5hYmxlIEludGVybmFsIFJlZmxlY3Rpb24iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTaGFkaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImJvb2wiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAidG9nZ2xlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RpbnRlcm5hbHJlZmxlY3RlbmFibGVfY29udHJvbF9ia2NmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2Jvb2wnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiIEVuYWJsZSBJbnRlcm5hbCBSZWZsZWN0aW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0bGlnaHRzdWJzZXRfY29udHJvbF8wMmJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJEaXJlY3QgUmVmcmFjdGlvbiBTdWJzZXQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RsaWdodHN1YnNldF96cGJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIk91dHNpZGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0bGlnaHRzdWJzZXRfY29udHJvbF8wMmJmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RsaWdodHN1YnNldF9jb250cm9sXzAyYmZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiRGlyZWN0IFJlZnJhY3Rpb24gU3Vic2V0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X2l0ZW1zIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIk91dHNpZGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiT3V0c2lkZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkluc2lkZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJJbnNpZGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJCb3RoIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIkJvdGgiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIk5vbmUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2hhZGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJpbnQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAib3JkZXJlZF9tZW51IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RscGV0YWdfY29udHJvbF92dWJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ3N0cmluZycpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJMUEUgVGFnIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0bHBldGFnX3VoYmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0bHBldGFnX2NvbnRyb2xfdnViZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0bHBldGFnX2NvbnRyb2xfdnViZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJMUEUgVGFnIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2hhZGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RyZW5kZXJ2aXNpYmlsaXR5XzR4YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAiKiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3RyZW5kZXJ2aXNpYmlsaXR5X2NvbnRyb2xfNWJjZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0cmVuZGVydmlzaWJpbGl0eV9jb250cm9sXzViY2ZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiUmVuZGVyIFZpc2liaWxpdHkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfaXRlbXMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVmlzaWJsZSB0byBhbGwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiKiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlZpc2libGUgb25seSB0byBwcmltYXJ5IHJheXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAicHJpbWFyeSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlZpc2libGUgb25seSB0byBwcmltYXJ5IGFuZCBzaGFkb3cgcmF5cyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJwcmltYXJ5fHNoYWRvdyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkludmlzaWJsZSB0byBwcmltYXJ5IHJheXMgKFBoYW50b20pIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIi1wcmltYXJ5IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiSW52aXNpYmxlIHRvIGRpZmZ1c2UgcmF5cyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICItZGlmZnVzZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkludmlzaWJsZSB0byBzZWNvbmRhcnkgcmF5cyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICItZGlmZnVzZVx1MDAyNi1yZWZsZWN0XHUwMDI2LXJlZnJhY3QiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJJbnZpc2libGUgdG8gc2hhZG93IHJheXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiLXNoYWRvdyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkludmlzaWJsZSAoVW5yZW5kZXJhYmxlKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAic3RyaW5nX3JlcGxhY2UiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTaGFkaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHJlbmRlcnZpc2liaWxpdHlfY29udHJvbF81YmNmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ3N0cmluZycpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJSZW5kZXIgVmlzaWJpbGl0eSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHNtb290aHBfY29udHJvbF9pd2JmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2Jvb2wnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiRml4IFNoYWRvdyBUZXJtaW5hdG9yIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0c21vb3RocF9oamJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHNtb290aHBfY29udHJvbF9pd2JmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RzbW9vdGhwX2NvbnRyb2xfaXdiZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJGaXggU2hhZG93IFRlcm1pbmF0b3IiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTaGFkaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImJvb2wiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAidG9nZ2xlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ3JvdXBfZGVmYXVsdCI6ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdyb3VwX3R5cGUiOiAiY29sbGFwc2libGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmb2xkZXJfY29sbGFwc2libGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19Nb3Rpb25CbHVyXzZqYSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTW90aW9uIEJsdXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RibHVyc3R5bGVfY29udHJvbF9yemJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJNb3Rpb24gQmx1ciBTdHlsZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGJsdXJzdHlsZV9xbWJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIlJvdGF0aW9uIEJsdXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0Ymx1cnN0eWxlX2NvbnRyb2xfcnpiZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0Ymx1cnN0eWxlX2NvbnRyb2xfcnpiZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJNb3Rpb24gQmx1ciBTdHlsZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV9pdGVtcyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJMaW5lYXIgQmx1ciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJMaW5lYXIgQmx1ciIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlJvdGF0aW9uIEJsdXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiUm90YXRpb24gQmx1ciIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJNb3Rpb24gQmx1ciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJpbnQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAib3JkZXJlZF9tZW51IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RnZW9zYW1wbGVzX2NvbnRyb2xfZTFiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdpbnQnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiR2VvbWV0cnkgVGltZSBTYW1wbGVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0Z2Vvc2FtcGxlc19kb2JmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGdlb3NhbXBsZXNfY29udHJvbF9lMWJmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RnZW9zYW1wbGVzX2NvbnRyb2xfZTFiZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJHZW9tZXRyeSBUaW1lIFNhbXBsZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWluX3ZhbHVlIjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0X21pbiI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiTW90aW9uIEJsdXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiaW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImludGVnZXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGluc3RhbmNlX3NhbXBsZXNfNHhiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3RpbnN0YW5jZV9zYW1wbGVzX2NvbnRyb2xfNWJjZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0aW5zdGFuY2Vfc2FtcGxlc19jb250cm9sXzViY2ZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiSW5zdGFuY2UgTW90aW9uIFNhbXBsZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWluX3ZhbHVlIjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0X21pbiI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiTW90aW9uIEJsdXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiaW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImludGVnZXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGluc3RhbmNlX3NhbXBsZXNfY29udHJvbF81YmNmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJJbnN0YW5jZSBNb3Rpb24gU2FtcGxlcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGluc3RhbmNlX3ZibHVyX2NvbnRyb2xfdzdiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdpbnQnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiSW5zdGFuY2UgVmVsb2NpdHkgQmx1ciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGluc3RhbmNlX3ZibHVyX3Z1YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAiTm8gVmVsb2NpdHkgQmx1ciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3RpbnN0YW5jZV92Ymx1cl9jb250cm9sX3c3YmZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdGluc3RhbmNlX3ZibHVyX2NvbnRyb2xfdzdiZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJJbnN0YW5jZSBWZWxvY2l0eSBCbHVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X2l0ZW1zIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIk5vIFZlbG9jaXR5IEJsdXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiTm8gVmVsb2NpdHkgQmx1ciIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlZlbG9jaXR5IEJsdXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiVmVsb2NpdHkgQmx1ciIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkFjY2VsZXJhdGlvbiBCbHVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIkFjY2VsZXJhdGlvbiBCbHVyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIk1vdGlvbiBCbHVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImludCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJvcmRlcmVkX21lbnUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdG1ibHVyXzdmYmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0bWJsdXJfY29udHJvbF84c2JmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3RtYmx1cl9jb250cm9sXzhzYmZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiRW5hYmxlIE1vdGlvbiBCbHVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiTW90aW9uIEJsdXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiYm9vbCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJ0b2dnbGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdG1ibHVyX2NvbnRyb2xfOHNiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdib29sJykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkVuYWJsZSBNb3Rpb24gQmx1ciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHNhbXBsZXNmcm9tc3RhZ2VfNHhiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3RzYW1wbGVzZnJvbXN0YWdlX2NvbnRyb2xfNWJjZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0c2FtcGxlc2Zyb21zdGFnZV9jb250cm9sXzViY2ZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTW90aW9uIFNhbXBsZXMgZnJvbSBTdGFnZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIk1vdGlvbiBCbHVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImJvb2wiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAidG9nZ2xlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3RzYW1wbGVzZnJvbXN0YWdlX2NvbnRyb2xfNWJjZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdib29sJykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIk1vdGlvbiBTYW1wbGVzIGZyb20gU3RhZ2UiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R2Ymx1cl83ZmJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIk5vIFZlbG9jaXR5IEJsdXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dmJsdXJfY29udHJvbF84c2JmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3R2Ymx1cl9jb250cm9sXzhzYmZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVmVsb2NpdHkgQmx1ciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV9pdGVtcyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJObyBWZWxvY2l0eSBCbHVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIk5vIFZlbG9jaXR5IEJsdXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJWZWxvY2l0eSBCbHVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIlZlbG9jaXR5IEJsdXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJBY2NlbGVyYXRpb24gQmx1ciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJBY2NlbGVyYXRpb24gQmx1ciIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJNb3Rpb24gQmx1ciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZHZhbHVldHlwZSI6ICJpbnQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAib3JkZXJlZF9tZW51IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R2Ymx1cl9jb250cm9sXzhzYmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnaW50JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlZlbG9jaXR5IEJsdXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWV2Ymx1cm1vZGVfY29udHJvbF9qOWJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJWb2x1bWUgVmVsb2NpdHkgQmx1ciBNb2RlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1ldmJsdXJtb2RlX2l3YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAiTGF0dGljZSBEZWZvcm1hdGlvbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWV2Ymx1cm1vZGVfY29udHJvbF9qOWJmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWV2Ymx1cm1vZGVfY29udHJvbF9qOWJmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlZvbHVtZSBWZWxvY2l0eSBCbHVyIE1vZGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfaXRlbXMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTGF0dGljZSBEZWZvcm1hdGlvbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJMYXR0aWNlIERlZm9ybWF0aW9uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTG9va3VwIE9mZnNldCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJMb29rdXAgT2Zmc2V0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIk1vdGlvbiBCbHVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImludCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJvcmRlcmVkX21lbnUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZvbHVtZXZibHVyc2NhbGVfNHhiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWV2Ymx1cnNjYWxlX2NvbnRyb2xfNWJjZmcgPT0gYmxvY2sgfSB7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1ldmJsdXJzY2FsZV9jb250cm9sXzViY2ZnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVm9sdW1lIFZlbG9jaXR5IEJsdXIgU2NhbGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN0cmljdF9taW4iOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIk1vdGlvbiBCbHVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWV2Ymx1cnNjYWxlX2NvbnRyb2xfNWJjZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdmbG9hdCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJWb2x1bWUgVmVsb2NpdHkgQmx1ciBTY2FsZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHhmb3Jtc2FtcGxlc19jb250cm9sX240YmZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnaW50JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlRyYW5zZm9ybSBUaW1lIFNhbXBsZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R4Zm9ybXNhbXBsZXNfbXJiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3R4Zm9ybXNhbXBsZXNfY29udHJvbF9uNGJmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3R4Zm9ybXNhbXBsZXNfY29udHJvbF9uNGJmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlRyYW5zZm9ybSBUaW1lIFNhbXBsZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWluX3ZhbHVlIjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0X21pbiI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiTW90aW9uIEJsdXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiaW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImludGVnZXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJncm91cF9kZWZhdWx0IjogIjEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ3JvdXBfdHlwZSI6ICJjb2xsYXBzaWJsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZvbGRlcl9jb2xsYXBzaWJsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX1RleHR1cmVCYWtpbmdfdm1hIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJUZXh0dXJlIEJha2luZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHV2dW53cmFwX2NhZ2Vfb2JqX2NvbnRyb2xfc2RjZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdpbnQnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiQ2FnZSBPYmplY3QgSUQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R1dnVud3JhcF9jYWdlX29ial9yemJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogLTEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3R1dnVud3JhcF9jYWdlX29ial9jb250cm9sX3NkY2ZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHV2dW53cmFwX2NhZ2Vfb2JqX2NvbnRyb2xfc2RjZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJDYWdlIE9iamVjdCBJRCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlRleHR1cmUgQmFraW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImludCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R1dnVud3JhcF9oaWdocmVzX29ial9jb250cm9sX29pY2ZnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnaW50JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkhpZ2ggUmVzb2x1dGlvbiBPYmplY3QgSUQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R1dnVud3JhcF9oaWdocmVzX29ial9uNGJmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogLTEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3R1dnVud3JhcF9oaWdocmVzX29ial9jb250cm9sX29pY2ZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHV2dW53cmFwX2hpZ2hyZXNfb2JqX2NvbnRyb2xfb2ljZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJIaWdoIFJlc29sdXRpb24gT2JqZWN0IElEIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiVGV4dHVyZSBCYWtpbmciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1aXNjb3BlIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiaW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImludGVnZXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHV2dW53cmFwX2xvd3Jlc19vYmpfMDJiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IC0xLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19wcmltdmFyc2thcm1hb2JqZWN0dXZ1bndyYXBfbG93cmVzX29ial9jb250cm9sXzFnY2ZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHV2dW53cmFwX2xvd3Jlc19vYmpfY29udHJvbF8xZ2NmZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkxvdyBSZXNvbHV0aW9uIE9iamVjdCBJRCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlRleHR1cmUgQmFraW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImludCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R1dnVud3JhcF9sb3dyZXNfb2JqX2NvbnRyb2xfMWdjZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdpbnQnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTG93IFJlc29sdXRpb24gT2JqZWN0IElEIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdyb3VwX2RlZmF1bHQiOiAiMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJncm91cF90eXBlIjogImNvbGxhcHNpYmxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZm9sZGVyX2NvbGxhcHNpYmxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fVW5pZm9ybVZvbHVtZV92bWEiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlVuaWZvcm0gVm9sdW1lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1ldW5pZm9ybV84c2JmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZvbHVtZXVuaWZvcm1fY29udHJvbF85NWJmZyA9PSBibG9jayB9IHsgeG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWV1bmlmb3JtX2NvbnRyb2xfOTViZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJVbmlmb3JtIFZvbHVtZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlVuaWZvcm0gVm9sdW1lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImJvb2wiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAidG9nZ2xlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWV1bmlmb3JtX2NvbnRyb2xfOTViZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtX2dlbmVyYXRvcl9zY3JpcHQiOiAiaW1wb3J0IGxvcHV0aWxzXG5yZXR1cm4gbG9wdXRpbHMuY3JlYXRlRWRpdFByb3BlcnRpZXNDb250cm9sTWVudShrd2FyZ3MsICdib29sJykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlVuaWZvcm0gVm9sdW1lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1ldW5pZm9ybXNhbXBsZXNfY29udHJvbF9vaWNmZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2ludCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJVbmlmb3JtIFZvbHVtZSBTYW1wbGVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAiY29udHJvbF9uZXh0X3BhcmFtZXRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJpY29uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19wcmltdmFyc2thcm1hb2JqZWN0dm9sdW1ldW5pZm9ybXNhbXBsZXNfbjRiZmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX3ByaW12YXJza2FybWFvYmplY3R2b2x1bWV1bmlmb3Jtc2FtcGxlc19jb250cm9sX29pY2ZnID09IGJsb2NrIH0geyB4bl9fcHJpbXZhcnNrYXJtYW9iamVjdHZvbHVtZXVuaWZvcm1zYW1wbGVzX2NvbnRyb2xfb2ljZmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJVbmlmb3JtIFZvbHVtZSBTYW1wbGVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiA4LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1pbl92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN0cmljdF9taW4iOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlVuaWZvcm0gVm9sdW1lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImludCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ3JvdXBfZGVmYXVsdCI6ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdyb3VwX3R5cGUiOiAiY29sbGFwc2libGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmb2xkZXJfY29sbGFwc2libGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZvbGRlcl90YWJzIgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLjAyLAogICAgICAgICAgICAtMi4yOQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAicmVuZGVyZ2VvbWV0cnlzZXR0aW5ncyIKICAgIH0sCiAgICAibWFpbiI6IHsKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJhcGVydHVyZSI6ICJzZXRyYXRpbyIsCiAgICAgICAgICAgICJmU3RvcCI6IDEuMiwKICAgICAgICAgICAgImZvY2FsTGVuZ3RoIjogMTgsCiAgICAgICAgICAgICJmb2N1c0Rpc3RhbmNlIjogNS40ODcwODE0MzQ3ODYwNzksCiAgICAgICAgICAgICJob3Jpem9udGFsQXBlcnR1cmUiOiAzNiwKICAgICAgICAgICAgInByaW1wYXRoIjogIi9jYW1lcmFzL21haW4iLAogICAgICAgICAgICAiciI6IFsKICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAxMi40MTQ4MjIyNDEzMzE5NDYsCiAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ0IjogWwogICAgICAgICAgICAgICAgLTAuODIxMDgzNjY0ODk0MTA0LAogICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInhuX19ob3VkaW5pZ3VpZGVzY2FsZV9zM2EiOiAxLAogICAgICAgICAgICAieG5fX3NodXR0ZXJjbG9zZV9udmEiOiAwLjMsCiAgICAgICAgICAgICJ4bl9fc2h1dHRlcm9wZW5fMHRhIjogewogICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiLWNoKFwieG5fX3NodXR0ZXJjbG9zZV9udmFcIikiCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJwYXJtdGVtcGxhdGVzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiaW5zZXJ0X2FmdGVyIjogImZvbGRlcjFfMiIsCiAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAiZm9sZGVyMl8zIjogewogICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiS2FybWEiLAogICAgICAgICAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fa2FybWFjYW1lcmFsZW5zc2hhZGVyXzg5YWciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImhvdS5ub2RlKGNoKCd4bl9fa2FybWFjYW1lcmFsZW5zc2hhZGVydm9wXzRmYmcnKSkuc2hhZGVyU3RyaW5nKCkgaWYgaG91Lm5vZGUoY2goJ3huX19rYXJtYWNhbWVyYWxlbnNzaGFkZXJ2b3BfNGZiZycpKSAhPSBOb25lIGVsc2UgJyciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFuZ3VhZ2UiOiAicHl0aG9uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19rYXJtYWNhbWVyYWxlbnNzaGFkZXJfY29udHJvbF85bmJnID09IGJsb2NrIH0geyB4bl9fa2FybWFjYW1lcmFsZW5zc2hhZGVyX2NvbnRyb2xfOW5iZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJoaWRkZW4iOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJMZW5zIFNoYWRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJWaWV3IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2RhcGlzY2hlbWEiOiAiS2FybWFDYW1lcmFBUEkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX2thcm1hY2FtZXJhbGVuc3NoYWRlcnZvcF80ZmJnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhYmxlX3doZW4iOiAieyB4bl9fa2FybWFjYW1lcmFsZW5zc2hhZGVydm9wX2NvbnRyb2xfNXNiZyA9PSBibG9jayB9IHsgeG5fX2thcm1hY2FtZXJhbGVuc3NoYWRlcnZvcF9jb250cm9sXzVzYmcgPT0gbm9uZSB9IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTGVucyBTaGFkZXIgVk9QIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9wZmlsdGVyIjogIiEhQ1VTVE9NL01BVEVSSUFMISEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3ByZWxhdGl2ZSI6ICIuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlZpZXciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZGFwaXNjaGVtYSI6ICJLYXJtYUNhbWVyYUFQSSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAib3BlcmF0b3JfcGF0aCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX2thcm1hY2FtZXJhbGVuc3NoYWRlcnZvcF9jb250cm9sXzVzYmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ3N0cmluZycpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTGVucyBTaGFkZXIgVk9QIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX2thcm1hY2FtZXJhbWF0ZXJpYWxiaW5kaW5nX2NvbnRyb2xfZndiZ2kiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ3JlbGF0aW9uc2hpcCcpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTGVucyBNYXRlcmlhbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19rYXJtYWNhbWVyYW1hdGVyaWFsYmluZGluZ19lamJnaSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX2thcm1hY2FtZXJhbWF0ZXJpYWxiaW5kaW5nX2NvbnRyb2xfZndiZ2kgPT0gYmxvY2sgfSB7IHhuX19rYXJtYWNhbWVyYW1hdGVyaWFsYmluZGluZ19jb250cm9sX2Z3YmdpID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkxlbnMgTWF0ZXJpYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2FjdGlvbiI6ICJcbmltcG9ydCBsb3B0b29sdXRpbHNcbmxvcHRvb2x1dGlscy5zZXR1cEthcm1hQ2FtZXJhTGVuc01hdGVyaWFsKGt3YXJncylcbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfYWN0aW9uX2hlbHAiOiAiQ3JlYXRlIGEgbGVucyBzaGFkZXIgTE9QLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfYWN0aW9uX2ljb24iOiAiVk9QX2ttYV9waHlzaWNhbGxlbnMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2FjdGlvbl9sYW5ndWFnZSI6ICJweXRob24iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojp1c2RwYXRodHlwZSI6ICJwcmltIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlZpZXciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZGFwaXNjaGVtYSI6ICJLYXJtYUNhbWVyYUFQSSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZW5hbWUiOiAibWF0ZXJpYWw6YmluZGluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAicmVsYXRpb25zaGlwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fa2FybWFjYW1lcmF0aW50X2NvbnRyb2xfaWViZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnZmxvYXQzJykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJUaW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX2thcm1hY2FtZXJhdGludF9oMGFnIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX2thcm1hY2FtZXJhdGludF9jb250cm9sX2llYmcgPT0gYmxvY2sgfSB7IHhuX19rYXJtYWNhbWVyYXRpbnRfY29udHJvbF9pZWJnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlRpbnQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJWaWV3IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2RhcGlzY2hlbWEiOiAiS2FybWFDYW1lcmFBUEkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImZsb2F0MyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImNvbG9yIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ4bl9fa2FybWFjYW1lcmF1c2VfbGVuc3NoYWRlcl9jb250cm9sX3N1YmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZW1fZ2VuZXJhdG9yX3NjcmlwdCI6ICJpbXBvcnQgbG9wdXRpbHNcbnJldHVybiBsb3B1dGlscy5jcmVhdGVFZGl0UHJvcGVydGllc0NvbnRyb2xNZW51KGt3YXJncywgJ2Jvb2wnKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlVzZSBMZW5zIFNoYWRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJjb250cm9sX25leHRfcGFyYW1ldGVyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImljb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInhuX19rYXJtYWNhbWVyYXVzZV9sZW5zc2hhZGVyX3JoYmciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVfd2hlbiI6ICJ7IHhuX19rYXJtYWNhbWVyYXVzZV9sZW5zc2hhZGVyX2NvbnRyb2xfc3ViZyA9PSBibG9jayB9IHsgeG5fX2thcm1hY2FtZXJhdXNlX2xlbnNzaGFkZXJfY29udHJvbF9zdWJnID09IG5vbmUgfSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlVzZSBMZW5zIFNoYWRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlZpZXciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidWlzY29wZSI6ICJOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZGFwaXNjaGVtYSI6ICJLYXJtYUNhbWVyYUFQSSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2R2YWx1ZXR5cGUiOiAiYm9vbCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInRvZ2dsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX2thcm1hY2FtZXJhd2luZG93X2NvbnRyb2xfcmhiZyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJub25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbV9nZW5lcmF0b3Jfc2NyaXB0IjogImltcG9ydCBsb3B1dGlsc1xucmV0dXJuIGxvcHV0aWxzLmNyZWF0ZUVkaXRQcm9wZXJ0aWVzQ29udHJvbE1lbnUoa3dhcmdzLCAnZmxvYXQ0JykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJTY3JlZW4gV2luZG93IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogImNvbnRyb2xfbmV4dF9wYXJhbWV0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiaWNvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAieG5fX2thcm1hY2FtZXJhd2luZG93X3EzYWciOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzYWJsZV93aGVuIjogInsgeG5fX2thcm1hY2FtZXJhd2luZG93X2NvbnRyb2xfcmhiZyA9PSBibG9jayB9IHsgeG5fX2thcm1hY2FtZXJhd2luZG93X2NvbnRyb2xfcmhiZyA9PSBub25lIH0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJTY3JlZW4gV2luZG93IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibnVtX2NvbXBvbmVudHMiOiA0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJWaWV3IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVpc2NvcGUiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2RhcGlzY2hlbWEiOiAiS2FybWFDYW1lcmFBUEkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNkdmFsdWV0eXBlIjogImZsb2F0NCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmb2xkZXJfdGFicyIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiY2FtZXJhIiwKICAgICAgICAidXNlcl9kYXRhIjogewogICAgICAgICAgICAic2V0X2xvb2thdCI6ICJUcnVlIgogICAgICAgIH0KICAgIH0sCiAgICAibWVyZ2UzIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImhpZGVfZm9jdXNfZ2l6bW8iLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJtb3ZlX2ZvY3VzX3BvaW50IiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLjEsCiAgICAgICAgICAgIC0zLjc2CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJtZXJnZSIKICAgIH0sCiAgICAibW92ZV9mb2N1c19wb2ludCI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJwaWciLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJwcmltcGF0dGVybiI6ICIvcGlnIiwKICAgICAgICAgICAgInQiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY29zKEBGcmFtZSoyKSoxLjUiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJzaW4oQEZyYW1lKjIpKjEuNSIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAyLjk3LAogICAgICAgICAgICAtMi42NwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAieGZvcm0iCiAgICB9LAogICAgInBpZyI6IHsKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJmaWxlcGF0aCI6ICIkSEgvdXNkL2Fzc2V0cy9waWcvcGlnLnVzZCIsCiAgICAgICAgICAgICJudW1fdmFyaWFudHMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgInByaW1wYXR0ZXJuIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInZhcmlhbnRuYW1lIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInZhcmlhbnRzZXQjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiZ2VvIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgInByaW1wYXR0ZXJuIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInZhcmlhbnRuYW1lIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInZhcmlhbnRzZXQjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAibXRsIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgInByaW1wYXRoIjogIi9waWciLAogICAgICAgICAgICAidCI6IFsKICAgICAgICAgICAgICAgIC0xLjQ3MzgxODA2NDcyMjg0NDUsCiAgICAgICAgICAgICAgICAwLjkyMzg0MjM3MDUxMDEwMTMsCiAgICAgICAgICAgICAgICAtMy45NTE5NTQxODg5MTI4ODk1CiAgICAgICAgICAgIF0KICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMi45OCwKICAgICAgICAgICAgLTEuNjcKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImFzc2V0cmVmZXJlbmNlIgogICAgfSwKICAgICJ1cGRhdGVfY2FtX2ZvY3VzX2Rpc3RhbmNlIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImF0dGFjaF9mb2N1c190b19waWciLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJleHBvcnRsaXN0IjogIioiLAogICAgICAgICAgICAicHJpbXBhdHRlcm4iOiAiL2NhbWVyYXMvbWFpbiIsCiAgICAgICAgICAgICJzbmlwcGV0IjogInN0cmluZyBwcmltTmFtZSA9IGNocyhcInByaW1wYXR0ZXJuXCIpO1xubWF0cml4IGNhbU1hdCA9IHVzZF9sb2NhbHRyYW5zZm9ybSgwLCBwcmltTmFtZSk7XG52ZWN0b3IgY2FtUCA9IGNyYWNrdHJhbnNmb3JtKDAsIDAsIDAsIDAsIGNhbU1hdCk7XG5cbm1hdHJpeCBmb2NNYXQgPSB1c2RfbG9jYWx0cmFuc2Zvcm0oMCwgcHJpbU5hbWUrXCJfZm9jdXNfcG9pbnRcIik7XG52ZWN0b3IgZm9jUCA9IGNyYWNrdHJhbnNmb3JtKDAsIDAsIDAsIDAsIGZvY01hdCk7XG5cbnVzZF9zZXRhdHRyaWIoMCwgcHJpbU5hbWUsIFwiZm9jdXNEaXN0YW5jZVwiLCBkaXN0YW5jZShjYW1QLCBmb2NQKSk7IgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLjExLAogICAgICAgICAgICAtNy41OQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmlid3JhbmdsZSIsCiAgICAgICAgInVzZXJfZGF0YSI6IHsKICAgICAgICAgICAgIndpcmVzdHlsZSI6ICJyb3VuZGVkIgogICAgICAgIH0KICAgIH0KfQ==
Ship Fire Simulation
Quick setup for a pyro smoke simulation ready for VDB export. Includes nodes to control initial shape, density, velocity, wind force, colliders, openCL compute and VDB output settings.
Nov 09, 2025 | 20.5.584 | pyro Cooked By: snay
ewogICAgIl9fY29va2Jvb2tNZXRhIjogewogICAgICAgICJjb250ZXh0IjogInNvcCIsCiAgICAgICAgInZlcnNpb24iOiAiMjAuNS41ODQiCiAgICB9LAogICAgImNvbGxpZGVyIjogewogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInJhZCI6IFsKICAgICAgICAgICAgICAgIDAuNSwKICAgICAgICAgICAgICAgIDAuNSwKICAgICAgICAgICAgICAgIDAuNQogICAgICAgICAgICBdLAogICAgICAgICAgICAic2NhbGUiOiAxLjg1LAogICAgICAgICAgICAidCI6IFsKICAgICAgICAgICAgICAgIC0yLjI4MzU5LAogICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInR5cGUiOiAicG9seW1lc2giCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDMuMTcsCiAgICAgICAgICAgIDEuMDQKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInNwaGVyZSIKICAgIH0sCiAgICAiY29udmVydHZkYjEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAidm9sdW1ldmlzdWFsaXphdGlvbjEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJjb252ZXJzaW9uIjogInZkYiIsCiAgICAgICAgICAgICJncm91cCI6ICJAbmFtZT1kZW5zaXR5IgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAtMy4wMgogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiY29udmVydHZkYiIKICAgIH0sCiAgICAiZGVuc2l0eV9ub2lzZSI6IHsKICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICJkaXNwbGF5IjogdHJ1ZSwKICAgICAgICAgICAgInJlbmRlciI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInZkYmZyb21wb2x5Z29uczEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJyIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlIjogImxpbmVhciIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZSI6ICJsaW5lYXIiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAxLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDEKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgInNuaXBwZXQiOiAiQGRlbnNpdHkgPSBjaHJhbXAoXCJyXCIsIDAuNSpsZW5ndGgodkBQKSk7XG5AZGVuc2l0eSArPSAwLjMqbm9pc2UoQFAqMSArIDAuMSpARnJhbWUpOyIKICAgICAgICB9LAogICAgICAgICJwYXJtdGVtcGxhdGVzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiaW5zZXJ0X2FmdGVyIjogImJpbmRlYWNoIiwKICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogewogICAgICAgICAgICAgICAgICAgICJmb2xkZXJfZ2VuZXJhdGVkcGFybXNfc25pcHBldCI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkdlbmVyYXRlZCBDaGFubmVsIFBhcmFtZXRlcnMiLAogICAgICAgICAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJSIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaG93X2NvbnRyb2xzIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJyYW1wX2Zsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJncm91cF90eXBlIjogInNpbXBsZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImJsYW5rIgogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmb2xkZXJfc2ltcGxlIgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAwCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ2b2x1bWV3cmFuZ2xlIgogICAgfSwKICAgICJkb3BuZXQxIjogewogICAgICAgICJjaGlsZHJlbiI6IHsKICAgICAgICAgICAgIm1lcmdlMSI6IHsKICAgICAgICAgICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAiY29sb3JkZWZhdWx0IjogZmFsc2UKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAic291cmNlX3ZvbHVtZV9kZW5zaXR5IiwKICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogInNvdXJjZV92b2x1bWVfY29sbGlzaW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICA4LjA4LAogICAgICAgICAgICAgICAgICAgIDMuMDYKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAidHlwZSI6ICJtZXJnZSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgIm91dHB1dDEiOiB7CiAgICAgICAgICAgICAgICAiY29sb3IiOiBbCiAgICAgICAgICAgICAgICAgICAgMC40LAogICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgMC40CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAgICAgICAgICJjb2xvcmRlZmF1bHQiOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgICAiY29tcHJlc3MiOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgICAiZGlzcGxheSI6IHRydWUKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAicHlyb3NvbHZlcjEiLAogICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgIDYuMzUsCiAgICAgICAgICAgICAgICAgICAgLTEuNDcKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAidHlwZSI6ICJvdXRwdXQiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJweXJvc29sdmVyMSI6IHsKICAgICAgICAgICAgICAgICJjb2xvciI6IFsKICAgICAgICAgICAgICAgICAgICAwLjQsCiAgICAgICAgICAgICAgICAgICAgMSwKICAgICAgICAgICAgICAgICAgICAwLjQKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgImNvbG9yZGVmYXVsdCI6IGZhbHNlLAogICAgICAgICAgICAgICAgICAgICJjb21wcmVzcyI6IGZhbHNlCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogIndpbmRmb3JjZTEiLAogICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAibWVyZ2UxIiwKICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiA0CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgICAgICAgICAiZW5hYmxlX2Rpc3R1cmJhbmNlIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAiZW5hYmxlX3R1cmJ1bGVuY2UiOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICJldmFwIjogMC4wODUsCiAgICAgICAgICAgICAgICAgICAgIm9wZW5jbCI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgInJlbWFwX2Rpc3NpcGF0aW9uX2ZpZWxkIjogWwogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImNhdG11bGwtcm9tIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImNhdG11bGwtcm9tIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLjE3ODg5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMC44NzUKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJjYXRtdWxsLXJvbSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAicG9zIjogMC4zNjgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAwLjI3CiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAiY2F0bXVsbC1yb20iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInBvcyI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAwCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICJ0dXJiX3N3aXJsX3NpemUiOiAyLAogICAgICAgICAgICAgICAgICAgICJ0dXJidWxlbmNlX3NjYWxlIjogMC4zMDYKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgNi4zNSwKICAgICAgICAgICAgICAgICAgICAwLjgzCiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInR5cGUiOiAicHlyb3NvbHZlcjo6Mi4wIgogICAgICAgICAgICB9LAogICAgICAgICAgICAic21va2VvYmplY3QyIjogewogICAgICAgICAgICAgICAgImNvbG9yIjogWwogICAgICAgICAgICAgICAgICAgIDAuNCwKICAgICAgICAgICAgICAgICAgICAxLAogICAgICAgICAgICAgICAgICAgIDAuNAogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAiY29sb3JkZWZhdWx0IjogZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgImNvbXByZXNzIjogZmFsc2UKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgImRlbnNpdHlfZ3VpZGVzbW9rZWRlbnNpdHkiOiAwLjA4LAogICAgICAgICAgICAgICAgICAgICJkaXZzaXplIjogMC4xLAogICAgICAgICAgICAgICAgICAgICJtdWx0aWZpZWxkX2NkZmllbGQiOiAidmVsIiwKICAgICAgICAgICAgICAgICAgICAibXVsdGlmaWVsZF9jb2xvciI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgMSwKICAgICAgICAgICAgICAgICAgICAgICAgMSwKICAgICAgICAgICAgICAgICAgICAgICAgMQogICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgIm11bHRpZmllbGRfZGVuc2l0eWZpZWxkIjogImRlbnNpdHkiLAogICAgICAgICAgICAgICAgICAgICJtdWx0aWZpZWxkX2RlbnNpdHlzY2FsZSI6IDAuMjksCiAgICAgICAgICAgICAgICAgICAgIm11bHRpZmllbGRfZW1pdGNkcmFtcCI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJsaW5lYXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJjYXRtdWxsLXJvbSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAicG9zIjogMC41NDAwMDAwMjE0NTc2NzIxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC40MzIwMDAwMTEyMDU2NzMyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJjYXRtdWxsLXJvbSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAicG9zIjogMC44OTMwMDAwMDY2NzU3MjAyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC44ODMzMDAwMDYzODk2MTc5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJjYXRtdWxsLXJvbSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAicG9zIjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMQogICAgICAgICAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAibXVsdGlmaWVsZF9zaGFkb3dzY2FsZSI6IDAuNDksCiAgICAgICAgICAgICAgICAgICAgInNpemUiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIDI4Ljc2NzQ0NjUxNzk0NDMzNiwKICAgICAgICAgICAgICAgICAgICAgICAgNi40MDY5NTgxMDMxNzk5MzIsCiAgICAgICAgICAgICAgICAgICAgICAgIDMuNzk2Njg0MjY1MTM2NzE4OAogICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgInNvbHZlZmlyc3RmcmFtZSI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgInQiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIC0xMy4xMDg4MTcxMDA1MjQ5MDIsCiAgICAgICAgICAgICAgICAgICAgICAgIDEuMTYwMTQxNzA2NDY2Njc0OCwKICAgICAgICAgICAgICAgICAgICAgICAgMC40NzE3ODI0NDU5MDc1OTI4CiAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAidmVsb2NpdHlfZ3VpZGVkaXYiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIDI4LAogICAgICAgICAgICAgICAgICAgICAgICAyOCwKICAgICAgICAgICAgICAgICAgICAgICAgMjgKICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICJ2ZWxvY2l0eV9ndWlkZW92ZXJyaWRlZGl2IjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAidmVsb2NpdHlfZ3VpZGVwbGFuZSI6ICJ6eCIsCiAgICAgICAgICAgICAgICAgICAgInZlbG9jaXR5X2d1aWRlcGxhbmV2YWwiOiAtMC43NDEsCiAgICAgICAgICAgICAgICAgICAgInZlbG9jaXR5X2d1aWRlc2NhbGUiOiAwLjI4LAogICAgICAgICAgICAgICAgICAgICJ2ZWxvY2l0eV9ndWlkZXN0cmVhbWVybGVuIjogMC45NiwKICAgICAgICAgICAgICAgICAgICAidmVsb2NpdHlfZ3VpZGV2aXNzY2FsZSI6IDAuMTUKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgNC43NiwKICAgICAgICAgICAgICAgICAgICAzLjU2CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInR5cGUiOiAic21va2VvYmplY3QiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJzb3VyY2Vfdm9sdW1lX2NvbGxpc2lvbiI6IHsKICAgICAgICAgICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAiY29sb3JkZWZhdWx0IjogZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgImNvbXByZXNzIjogZmFsc2UKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgImluaXRpYWxpemUiOiAiY29sbGlzaW9uIiwKICAgICAgICAgICAgICAgICAgICAibm9ybWFsaXplc291cmNlIjogZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgIm5vcm1hbGl6ZXZlbCI6IGZhbHNlLAogICAgICAgICAgICAgICAgICAgICJzb3VyY2VfbmFtZSI6ICJjb2xsaXNpb24iLAogICAgICAgICAgICAgICAgICAgICJzb3VyY2VfcGF0aCI6ICJgb3BpbnB1dHBhdGgoJy4uJywxKWAiLAogICAgICAgICAgICAgICAgICAgICJ0ZW1wX25hbWUiOiAiIiwKICAgICAgICAgICAgICAgICAgICAidGVtcGVyYXR1cmVfbWVyZ2UiOiAibm9uZSIsCiAgICAgICAgICAgICAgICAgICAgInZlbF9uYW1lIjogImNvbGxpc2lvbnZlbCIsCiAgICAgICAgICAgICAgICAgICAgInZlbG9jaXR5X21lcmdlIjogIm5vbmUiLAogICAgICAgICAgICAgICAgICAgICJ2b2xfc291cmNlZGVzdCI6ICJjb2xsaXNpb24iLAogICAgICAgICAgICAgICAgICAgICJ2b2xfdGVtcGRlc3QiOiAiIiwKICAgICAgICAgICAgICAgICAgICAidm9sX3ZlbGRlc3QiOiAiY29sbGlzaW9udmVsIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAxMS4xMywKICAgICAgICAgICAgICAgICAgICA0Ljg3CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInR5cGUiOiAic291cmNldm9sdW1lIgogICAgICAgICAgICB9LAogICAgICAgICAgICAic291cmNlX3ZvbHVtZV9kZW5zaXR5IjogewogICAgICAgICAgICAgICAgImNvbG9yIjogWwogICAgICAgICAgICAgICAgICAgIDAuNCwKICAgICAgICAgICAgICAgICAgICAxLAogICAgICAgICAgICAgICAgICAgIDAuNAogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAiY29sb3JkZWZhdWx0IjogZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgImNvbXByZXNzIjogZmFsc2UKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgInNjYWxlX3ZlbG9jaXR5IjogMC4wMSwKICAgICAgICAgICAgICAgICAgICAic291cmNlX3BhdGgiOiAiYG9waW5wdXRwYXRoKCcuLicsMClgIiwKICAgICAgICAgICAgICAgICAgICAidGVtcF9uYW1lIjogImRlbnNpdHkiLAogICAgICAgICAgICAgICAgICAgICJ2ZWxvY2l0eV9tZXJnZSI6ICJhZGQiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgIDguMDgsCiAgICAgICAgICAgICAgICAgICAgNC44NwogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJ0eXBlIjogInNvdXJjZXZvbHVtZSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgIndpbmRmb3JjZTEiOiB7CiAgICAgICAgICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAic21va2VvYmplY3QyIiwKICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgICAgICAgICAiYW1wbGl0dWRlIjogWwogICAgICAgICAgICAgICAgICAgICAgICAxNS40LAogICAgICAgICAgICAgICAgICAgICAgICAxNS40LAogICAgICAgICAgICAgICAgICAgICAgICAxNS40CiAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAic2FtcGxlbW9kZSI6ICJwb2ludCIsCiAgICAgICAgICAgICAgICAgICAgInNjYWxlZm9yY2UiOiAxLAogICAgICAgICAgICAgICAgICAgICJ2ZWwiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIC0xNTYsCiAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgIDQuNzYsCiAgICAgICAgICAgICAgICAgICAgMi41MwogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJ0eXBlIjogIndpbmRmb3JjZSIKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAiY29sb3JkZWZhdWx0IjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImRlbnNpdHlfbm9pc2UiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJ2ZGJmcm9tcG9seWdvbnMyIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYXV0b3Jlc2ltIjogZmFsc2UsCiAgICAgICAgICAgICJleHBsaWNpdGNhY2hlbmFtZSI6ICIkSElQL2NhY2hlLiRPUy4kU0Yuc2ltIiwKICAgICAgICAgICAgIm51bW9iaiI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZGF0YW5hbWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiZGVuc2l0eSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJlbmFibGUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAib2JqbmFtZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICIqIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImRhdGFuYW1lIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogInZlbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJlbmFibGUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgIm9iam5hbWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiKiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0KICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgLTEuMDQKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImRvcG5ldCIKICAgIH0sCiAgICAiZmlsZWNhY2hlMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJjb252ZXJ0dmRiMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImJhc2VuYW1lIjogImdhaV90aHJ1c3RlclNtb2tlXyRGLnZkYiIsCiAgICAgICAgICAgICJmIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogIiRGU1RBUlQiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgMjUwLAogICAgICAgICAgICAgICAgMQogICAgICAgICAgICBdLAogICAgICAgICAgICAiZmlsZSI6ICIkSElQL2dlby94eHhfc2hpcEZpcmVfMDAxL3h4eF9zaGlwRmlyZV8kRjMudmRiIiwKICAgICAgICAgICAgImZpbGVtZXRob2QiOiAiZXhwbGljaXQiLAogICAgICAgICAgICAibG9hZGZyb21kaXNrIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAtMy45NwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibGFiczo6ZmlsZWNhY2hlOjoyLjAiCiAgICB9LAogICAgInNwaGVyZTEiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicmFkIjogWwogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ0eXBlIjogInBvbHltZXNoIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAyLjkzCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzcGhlcmUiCiAgICB9LAogICAgInZkYmZyb21wb2x5Z29uczEiOiB7CiAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAiY29sb3JkZWZhdWx0IjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInZlbG9jaXR5X25vaXNlIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYnVpbGRkaXN0YW5jZSI6IGZhbHNlLAogICAgICAgICAgICAiYnVpbGRmb2ciOiB0cnVlLAogICAgICAgICAgICAibnVtYXR0cmliIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJhdHRyaWJ1dGUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAicG9pbnQudiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJhdHRyaWJ1dGV2ZGJuYW1lIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogInZlbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ2ZWN0eXBlIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogImNvbnRyYXZhcmlhbnQgcmVsYXRpdmUiLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAidm94ZWxzaXplIjogMC4wNQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAxLjA0CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ2ZGJmcm9tcG9seWdvbnMiCiAgICB9LAogICAgInZkYmZyb21wb2x5Z29uczIiOiB7CiAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAiY29sb3JkZWZhdWx0IjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImNvbGxpZGVyIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYnVpbGRkaXN0YW5jZSI6IGZhbHNlLAogICAgICAgICAgICAiYnVpbGRmb2ciOiB0cnVlLAogICAgICAgICAgICAiZm9nbmFtZSI6ICJjb2xsaXNpb24iLAogICAgICAgICAgICAibnVtYXR0cmliIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJhdHRyaWJ1dGUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAicG9pbnQudiIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJhdHRyaWJ1dGV2ZGJuYW1lIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogImNvbGxpc2lvbnZlbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ2ZWN0eXBlIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogImNvbnRyYXZhcmlhbnQgcmVsYXRpdmUiLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAidm94ZWxzaXplIjogMC4wNQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAzLjE3LAogICAgICAgICAgICAwLjMzCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ2ZGJmcm9tcG9seWdvbnMiCiAgICB9LAogICAgInZlbG9jaXR5X25vaXNlIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInNwaGVyZTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJzbmlwcGV0IjogIkB2ICs9IDIwKnZlY3Rvcihub2lzZShAUCkpOyIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMS45MQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmlid3JhbmdsZSIKICAgIH0sCiAgICAidm9sdW1ldmlzdWFsaXphdGlvbjEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiZG9wbmV0MSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImNkZmllbGQiOiAiZGVuc2l0eSIsCiAgICAgICAgICAgICJjZHJhbXAiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJsaW5lYXIiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgICAgICAgICAwLjUsCiAgICAgICAgICAgICAgICAgICAgICAgIDAuNQogICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJsaW5lYXIiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLjkyMDExODMzMTkwOTE3OTcsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogWwogICAgICAgICAgICAgICAgICAgICAgICAxLAogICAgICAgICAgICAgICAgICAgICAgICAwLjUsCiAgICAgICAgICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAibGluZWFyIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMSwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJkZW5zaXR5cmFtcCI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImxpbmVhciIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImxpbmVhciIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAuMDg4NzU3Mzk1NzQ0MzIzNzMsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMC4yMjkxNjY2NzE2MzM3MjA0CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAibGluZWFyIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMSwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAxCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJlbWl0cmFtcCI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImxpbmVhciIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImxpbmVhciIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDEsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIC0yLjA5CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ2b2x1bWV2aXN1YWxpemF0aW9uIgogICAgfQp9
Vellum Leash
Vellum wire setup that supports animated soft pinning on the tip and tail of the wire. Useful setup for art directing a wire simulation.
Nov 09, 2025 | 20.5.584 | vellum Cooked By: snay
ewogICAgIkFOSU1BVEVEIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImZpcnN0X3Bpbl9zdGlmZm5lc3MiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDQuMTEsCiAgICAgICAgICAgIC0wLjIyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJudWxsIgogICAgfSwKICAgICJfX2Nvb2tib29rTWV0YSI6IHsKICAgICAgICAiY29udGV4dCI6ICJzb3AiLAogICAgICAgICJ2ZXJzaW9uIjogIjIwLjUuNTg0IgogICAgfSwKICAgICJhdHRhY2hfdG9fbWFnbmV0IjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInRyYW5zb2ZybV9hbmltIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAibWFnbmV0IiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZ3JvdXAiOiAiZmlyc3QiLAogICAgICAgICAgICAic25pcHBldCI6ICJpZihARnJhbWUgXHUwMDNlIDQwKXtcbiAgICB2QFAgPSBwb2ludCgxLFwiUFwiLDApO1xufSIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMy4wNAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmlid3JhbmdsZSIKICAgIH0sCiAgICAiYXR0cmliZGVsZXRlMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJ2ZWxsdW1zb2x2ZXIxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAibmVnYXRlIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAwCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJkZWxldGUiCiAgICB9LAogICAgImZpcnN0X3Bpbl9zdGlmZm5lc3MiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAibGFzdF9waW5fc3RpZmZuZXNzIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZmFkZSI6IHsKICAgICAgICAgICAgICAgICJleHRyYXBvbGF0aW9uX2FmdGVyIjogImV4dGVuZCIsCiAgICAgICAgICAgICAgICAiZXh0cmFwb2xhdGlvbl9iZWZvcmUiOiAiZXh0ZW5kIiwKICAgICAgICAgICAgICAgICJrZXlmcmFtZXMiOiBbCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAiYWNjZWwiOiAwLjU5NzIyMjIyMjIyMjIyMTksCiAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImJlemllcigpIiwKICAgICAgICAgICAgICAgICAgICAgICAgImZyYW1lIjogMzQsCiAgICAgICAgICAgICAgICAgICAgICAgICJpbmFjY2VsIjogMC4zMzMzMzMzMzMzMzMzMzMzLAogICAgICAgICAgICAgICAgICAgICAgICAic2xvcGUiOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAwCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICJhY2NlbCI6IDAuMTUyNzc3ODMzMzIxNjM5MDUsCiAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImJlemllcigpIiwKICAgICAgICAgICAgICAgICAgICAgICAgImZyYW1lIjogNzcsCiAgICAgICAgICAgICAgICAgICAgICAgICJpbmFjY2VsIjogMC41OTcyMjI0MzkzNDgyMjMyLAogICAgICAgICAgICAgICAgICAgICAgICAic2xvcGUiOiAwLjAwMDg1MjcxMzE3ODI5NDU3NjksCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDAuMDA1CiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICJhY2NlbCI6IDIuODM2OTUzMjc5OTkzNTE3LAogICAgICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJiZXppZXIoKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJmcmFtZSI6IDg4LAogICAgICAgICAgICAgICAgICAgICAgICAiaW5hY2NlbCI6IDEuMDA2NjYwODQxMjg4MDI1OCwKICAgICAgICAgICAgICAgICAgICAgICAgInNsb3BlIjogNi41MTI3MjcyNzI3MjcyNTEsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDEKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgImFjY2VsIjogMC4zMzMzMzMzMzMzMzMzMzMzLAogICAgICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJiZXppZXIoKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJmcmFtZSI6IDExOSwKICAgICAgICAgICAgICAgICAgICAgICAgImluYWNjZWwiOiAwLjQzMDU1NTU1NTU1NTU1NTM2LAogICAgICAgICAgICAgICAgICAgICAgICAic2xvcGUiOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAxMDAKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJncm91cCI6ICJmaXJzdCIsCiAgICAgICAgICAgICJzbmlwcGV0IjogImZAc3RpZmZuZXNzPSBjaGYoXCJmYWRlXCIpO1xuXG5cbiIKICAgICAgICB9LAogICAgICAgICJwYXJtdGVtcGxhdGVzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiaW5zZXJ0X2FmdGVyIjogInZleF90aHJlYWRqb2JzaXplIiwKICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogewogICAgICAgICAgICAgICAgICAgICJmb2xkZXJfZ2VuZXJhdGVkcGFybXNfc25pcHBldCI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkdlbmVyYXRlZCBDaGFubmVsIFBhcmFtZXRlcnMiLAogICAgICAgICAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmYWRlIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJGYWRlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWF4X3ZhbHVlIjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJncm91cF90eXBlIjogInNpbXBsZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4Ojpsb29rIjogImJsYW5rIgogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmb2xkZXJfc2ltcGxlIgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA0LjExLAogICAgICAgICAgICAwLjkyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJ3cmFuZ2xlIgogICAgfSwKICAgICJsYXN0X3Bpbl9zdGlmZm5lc3MiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYXR0YWNoX3RvX21hZ25ldCIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImdyb3VwIjogImxhc3QiLAogICAgICAgICAgICAic25pcHBldCI6ICJmQHN0aWZmbmVzcyA9IDEwMDAwMDAwMDAuMDtcblxuIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA0LjExLAogICAgICAgICAgICAyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJ3cmFuZ2xlIgogICAgfSwKICAgICJtYWduZXQiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicmFkIjogWwogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJzY2FsZSI6IDAuMTA3LAogICAgICAgICAgICAidCI6IFsKICAgICAgICAgICAgICAgIC0wLjM0OSwKICAgICAgICAgICAgICAgIDAuMzE2NTkxOTE0MTc2OTQwOSwKICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA0LjExLAogICAgICAgICAgICA2LjE5CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzcGhlcmUiCiAgICB9LAogICAgInJlc2FtcGxlMiI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJzcGlyYWwxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZG9jdXJ2ZXVhdHRyIjogdHJ1ZSwKICAgICAgICAgICAgImxlbmd0aCI6IDAuMDEsCiAgICAgICAgICAgICJ0cmVhdHBvbHlzYXMiOiAic3ViZCIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgNi41MQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAicmVzYW1wbGUiCiAgICB9LAogICAgInNldF9maXJzdF9hbmRfbGFzdF9ncm91cDEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAicmVzYW1wbGUyIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiY2xhc3MiOiAicHJpbWl0aXZlIiwKICAgICAgICAgICAgInNuaXBwZXQiOiAiaW50IHByaW1zW10gPSBwcmltcG9pbnRzKDAsIEBwcmltbnVtKTtcblxuc2V0cG9pbnRncm91cCgwLCBcImZpcnN0XCIsIDAsIDEpO1xuc2V0cG9pbnRncm91cCgwLCBcImxhc3RcIiwgbGVuKHByaW1zKS0xLCAxKTtcblxuXG4iCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDUuNDcKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImF0dHJpYndyYW5nbGUiCiAgICB9LAogICAgInNwaXJhbDEiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZGlyZWN0aW9uIjogImN3IiwKICAgICAgICAgICAgImhlaWdodCI6IDAuMDg4MiwKICAgICAgICAgICAgInJhZGl1c2luY3JlYXNlcGVydHVybiI6IC0wLjE4NywKICAgICAgICAgICAgInJhZGl1c3NjYWxlIjogMC4xNTQsCiAgICAgICAgICAgICJzdGFydHJhZGl1cyI6IDAuOTE4LAogICAgICAgICAgICAidHVybnMiOiAzLjMwOAogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICA3LjUxCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzcGlyYWwiCiAgICB9LAogICAgInN3ZWVwMSI6IHsKICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICJkaXNwbGF5IjogdHJ1ZSwKICAgICAgICAgICAgInJlbmRlciI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImF0dHJpYmRlbGV0ZTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJhcHBseXNjYWxlIjogdHJ1ZSwKICAgICAgICAgICAgImVuZGNhcHR5cGUiOiAiZ3JpZCIsCiAgICAgICAgICAgICJyYWRpdXMiOiAwLjAwNzUsCiAgICAgICAgICAgICJzY2FsZXJhbXAiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJsaW5lYXIiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDAuNjAwMDAwMDIzODQxODU3OQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImxpbmVhciIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAuMDE3NTg3OTM5Mjc3MjkxMjk4LAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJsaW5lYXIiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAxLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDEKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgInN1cmZhY2VzaGFwZSI6ICJ0dWJlIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAtMQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAic3dlZXA6OjIuMCIKICAgIH0sCiAgICAidHJhbnNvZnJtX2FuaW0iOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic2V0X2ZpcnN0X2FuZF9sYXN0X2dyb3VwMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInQiOiBbCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHRyYXBvbGF0aW9uX2FmdGVyIjogImV4dGVuZCIsCiAgICAgICAgICAgICAgICAgICAgImV4dHJhcG9sYXRpb25fYmVmb3JlIjogImV4dGVuZCIsCiAgICAgICAgICAgICAgICAgICAgImtleWZyYW1lcyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImFjY2VsIjogMS4wNjk0NDQ0NDQ0NDQ0NDQyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiYmV6aWVyKCkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyYW1lIjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbmFjY2VsIjogMC4zMzMzMzMzMzMzMzMzMzMzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNsb3BlIjogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDAKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImFjY2VsIjogMC4wNDQwMTk2MDM1MjM4MjgyNiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImJlemllcigpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcmFtZSI6IDc4LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgImluYWNjZWwiOiAzLjM4OTUwOTQ3MTMzNDc1MTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2xvcGUiOiAzLjAwNzUxODczODU4NTYzMjMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAzLjIxNjM3NDIwNjU0Mjk2ODYKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImFjY2VsIjogMC4zMzMzMzMzMzMzMzMzMzMzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiYmV6aWVyKCkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyYW1lIjogNzksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW5hY2NlbCI6IDAuMDEzODg4ODg4ODg4ODg4OTg3LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNsb3BlIjogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDMuNzk1NjMxOTMzMjEyMjgKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgIF0KICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgNC40MwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAieGZvcm0iCiAgICB9LAogICAgInZlbGx1bV9oYWlyMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJhdHRhY2hfdG9fbWFnbmV0IiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYmVuZHJlc3RzY2FsZSI6IDAuMDQ4LAogICAgICAgICAgICAiYmVuZHN0aWZmbmVzc2V4cCI6ICItMiIsCiAgICAgICAgICAgICJjb25zdHJhaW50dHlwZSI6ICJoYWlyIiwKICAgICAgICAgICAgImRvYmVuZGdycCI6IHRydWUsCiAgICAgICAgICAgICJkb21hc3MiOiAiY2FsY3VuaWZvcm0iLAogICAgICAgICAgICAiZG9zdHJldGNoZ3JwIjogdHJ1ZSwKICAgICAgICAgICAgImRvdGhpY2tuZXNzIjogImNhbGN1bmlmb3JtIiwKICAgICAgICAgICAgIm1hc3MiOiAxLAogICAgICAgICAgICAibWF0Y2hhbmltYXRpb24iOiB0cnVlLAogICAgICAgICAgICAicGluZ3JvdXAiOiAibGFzdCBmaXJzdCIsCiAgICAgICAgICAgICJwaW50eXBlIjogInNvZnQiLAogICAgICAgICAgICAic3RyZXRjaGRhbXBpbmdyYXRpbyI6IDAuMDEsCiAgICAgICAgICAgICJ0aGlja25lc3NzY2FsZSI6IDIsCiAgICAgICAgICAgICJ2aXp0aGlja25lc3MiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDIKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInZlbGx1bWNvbnN0cmFpbnRzIgogICAgfSwKICAgICJ2ZWxsdW1zb2x2ZXIxIjogewogICAgICAgICJlZGl0YWJsZXMiOiB7CiAgICAgICAgICAgICJkb3BuZXQxL2ZvcmNlcyI6IHsKICAgICAgICAgICAgICAgICJjaGlsZHJlbiI6IHsKICAgICAgICAgICAgICAgICAgICAiRk9SQ0UiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAicG9wd2luZDEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMjUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjI4CiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN1Ym5ldG91dHB1dCIKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJTT1VSQ0UiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5IjogdHJ1ZQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3V0cHV0aWR4IjogMQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAzLjcxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMS4yOQogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdWJuZXRvdXRwdXQiCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiX19zdGlja3lub3RlMSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgImNvbG9yIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuOTcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjUyCiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDUuOSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIuNTYKICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInNpemUiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjI0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMy4wMgogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAidGV4dCI6ICJXaXJlIFBPUCBGb3JjZXMgaW50byBGT1JDRSB0byBhcHBseSBwZXItcG9pbnQgZm9yY2VzLlxuXG5XaXJlIFZlbGx1bSBDb25zdHJhaW50IFByb3BlcnRpZXMgYW5kIFZlbGx1bSBSZXN0IEJsZW5kIHRvIHVwZGF0ZSBjb25zdHJhaW50cyBkeW5hbWljYWxseS5cblxuV2lyZSBWZWxsdW0gQ29uc3RyYWludHMgdG8gYnVpbGQgbmV3IGNvbnN0cmFpbnRzLlxuXG5XaXJlIFZlbGx1bSBTb3VyY2UgRE9QcyB0byBTT1VSQ0UgdG8gYWRkIG5ldyB2ZWxsdW0gZ2VvbWV0cnkuIiwKICAgICAgICAgICAgICAgICAgICAgICAgInRleHRfY29sb3IiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiU3RpY2t5Tm90ZSIKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJwb3B3aW5kMSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImJ5cGFzcyI6IHRydWUKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbSI6ICJ2ZWxsdW1jb25zdHJhaW50cHJvcGVydHkxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW1wIjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzd2lybHNjYWxlIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInN3aXJsc2l6ZSI6IDIKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4yNSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIuNzQKICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAicG9wd2luZCIKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ2ZWxsdW1jb25zdHJhaW50cHJvcGVydHkxIjogewogICAgICAgICAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYmluZGdlb2lucHV0MiI6ICIuLi8uLi8uLi8uLi9BTklNQVRFRCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYmluZGdyb3VwIjogIkB0eXBlPXBpbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYmluZGlucHV0bWVudTIiOiAic29wIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkb3N0aWZmbmVzcyI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxleHByZXNzaW9uIjogInN0aWZmbmVzcyA9IHBvaW50KDEsIFwic3RpZmZuZXNzXCIsIEBwdG51bSk7XG4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZWdyb3VwIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2Vsb2NhbCI6IHRydWUKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4yNSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQuMTQKICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAidmVsbHVtY29uc3RyYWludHByb3BlcnR5IgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAidHlwZSI6ICJzdWJuZXQiCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInZlbGx1bV9oYWlyMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInZlbGx1bV9oYWlyMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDEsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInZlbGx1bV9oYWlyMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDIsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAyCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImdyYXZpdHkiOiBbCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgLTksCiAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJzdGF0aWNfc2Rmc2NhbGUiOiAyLAogICAgICAgICAgICAidXNlZ3JvdW5kIjogdHJ1ZSwKICAgICAgICAgICAgInZlbGRhbXBpbmciOiAwLjEsCiAgICAgICAgICAgICJ3aW5kIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogIi0zKnNpbig1KiRGKSptYXgoMC4wLDEuMC1tYXgoMC4wLCAwLjAxKigkRi0yOTEpKSkqbWF4KDAuMCxtaW4oMS4wLCAwLjAyKigkRi03MSkpKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgMAogICAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDEKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInZlbGx1bXNvbHZlciIKICAgIH0KfQ==
First And Last Point Group
Common vex snippet used for assigning point groups to the first and last points on a curve. Useful when needing a group to pin on a vellum hair sim.
Nov 09, 2025 | 20.5.584 | vex Cooked By: snay
ewogICAgIl9fY29va2Jvb2tNZXRhIjogewogICAgICAgICJjb250ZXh0IjogInNvcCIsCiAgICAgICAgInZlcnNpb24iOiAiMjAuNS41ODQiCiAgICB9LAogICAgImxpbmUxIjogewogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInBvaW50cyI6IDMwCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDEuMjcKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImxpbmUiCiAgICB9LAogICAgInNldF9maXJzdF9hbmRfbGFzdF9ncm91cCI6IHsKICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICJkaXNwbGF5IjogdHJ1ZSwKICAgICAgICAgICAgInJlbmRlciI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImxpbmUxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiY2xhc3MiOiAicHJpbWl0aXZlIiwKICAgICAgICAgICAgImhlYWRfbGVuZ3RoIjogMSwKICAgICAgICAgICAgInNuaXBwZXQiOiAiaW50IHB0c1tdID0gcHJpbXBvaW50cygwLCBAcHJpbW51bSk7XG5cbmZvciAoaW50IGkgPSAwOyBpIFx1MDAzYyBjaGkoXCJoZWFkX2xlbmd0aFwiKTsgaSsrKSB7XG4gICAgc2V0cG9pbnRncm91cCgwLCBcImZpcnN0XCIsIGksIDEpO1xufVxuXG5mb3IgKGludCBpID0gMDsgaSBcdTAwM2MgY2hpKFwidGFpbF9sZW5ndGhcIik7IGkrKykge1xuICAgIHNldHBvaW50Z3JvdXAoMCwgXCJsYXN0XCIsIGxlbihwdHMpLTEtaSwgMSk7XG59XG5cblxuXG5cbiIsCiAgICAgICAgICAgICJ0YWlsX2xlbmd0aCI6IDEKICAgICAgICB9LAogICAgICAgICJwYXJtdGVtcGxhdGVzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiaW5zZXJ0X2FmdGVyIjogInZleF90aHJlYWRqb2JzaXplIiwKICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogewogICAgICAgICAgICAgICAgICAgICJmb2xkZXJfZ2VuZXJhdGVkcGFybXNfc25pcHBldCI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkdlbmVyYXRlZCBDaGFubmVsIFBhcmFtZXRlcnMiLAogICAgICAgICAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJoZWFkX2xlbmd0aCI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiSGVhZCBMZW5ndGgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImludGVnZXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhaWxfbGVuZ3RoIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJUYWlsIExlbmd0aCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiaW50ZWdlciIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ3JvdXBfdHlwZSI6ICJzaW1wbGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJibGFuayIKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZm9sZGVyX3NpbXBsZSIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmlid3JhbmdsZSIKICAgIH0KfQ==
Lop Time Offset Instances
This example shows how to time offset animated point instances in LOPs using point attribute.
Nov 04, 2025 | 20.5.584 | solaris Cooked By: kif
ewogICAgIl9fY29va2Jvb2tNZXRhIjogewogICAgICAgICJjb250ZXh0IjogImxvcCIsCiAgICAgICAgInZlcnNpb24iOiAiMjAuNS41ODQiCiAgICB9LAogICAgIl9fc3RpY2t5bm90ZTEiOiB7CiAgICAgICAgImNvbG9yIjogWwogICAgICAgICAgICAxLAogICAgICAgICAgICAwLjk3LAogICAgICAgICAgICAwLjUyCiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDMuODMsCiAgICAgICAgICAgIC00Ljc5CiAgICAgICAgXSwKICAgICAgICAic2l6ZSI6IFsKICAgICAgICAgICAgMy43OSwKICAgICAgICAgICAgMi44MgogICAgICAgIF0sCiAgICAgICAgInRleHQiOiAiTm90ZSB0aGF0IGZvciByZXRpbWUgdG8gd29yayBpY29taW5nIGFuaW1hdGlvbiBuZWVkcyB0byBiZSBjYWNoZWQgKHByZWZlcmFibHkgdG8gZGlzYyBhcyB1c2QpLlxuQWxzbyBub3RlIHRoYXQgc2luY2Ugd2UgYXJlIG9mZnNldGluZyBiZXR3ZWVuIDAgYW5kIDYwIGZyYW1lcyB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0byBoYXZlICRFTkRGUkFNICsgNjAgZm9yIG91ciBhc3NldHMgYW5pbWF0aW9uLiIsCiAgICAgICAgInRleHRfY29sb3IiOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDAKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogIlN0aWNreU5vdGUiCiAgICB9LAogICAgImNhY2hlMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJtZXJnZTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJiZWhhdmlvciI6ICJhbGwiLAogICAgICAgICAgICAic2FtcGxlX2YiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiQGZzdGFydCIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiQGZlbmQrNjAiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogIkBmaW5jIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDEuMDUsCiAgICAgICAgICAgIC0yLjcyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJjYWNoZTo6Mi4wIgogICAgfSwKICAgICJpbnN0YW5jZXIxIjogewogICAgICAgICJjaGlsZHJlbiI6IHsKICAgICAgICAgICAgImZyYW1lX29mZnNldHMiOiB7CiAgICAgICAgICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAibWFrZV9uYW1lcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgImRpbWVuc2lvbnMiOiAxLAogICAgICAgICAgICAgICAgICAgICJtYXgiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIDYwLAogICAgICAgICAgICAgICAgICAgICAgICAxLAogICAgICAgICAgICAgICAgICAgICAgICAxLAogICAgICAgICAgICAgICAgICAgICAgICAxCiAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJmcmFtZW9mZnNldCIsCiAgICAgICAgICAgICAgICAgICAgInNlZWQiOiAxCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgIDQuNTUsCiAgICAgICAgICAgICAgICAgICAgLTI1LjcKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAidHlwZSI6ICJhdHRyaWJyYW5kb21pemUiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJncmlkMSI6IHsKICAgICAgICAgICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgICAgICAgICAiY29scyI6IDIsCiAgICAgICAgICAgICAgICAgICAgInJvd3MiOiAyLAogICAgICAgICAgICAgICAgICAgICJzaXplIjogWwogICAgICAgICAgICAgICAgICAgICAgICA3LAogICAgICAgICAgICAgICAgICAgICAgICA3CiAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICA0LjYzLAogICAgICAgICAgICAgICAgICAgIC0yMS40NwogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJ0eXBlIjogImdyaWQiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJtYWtlX25hbWVzIjogewogICAgICAgICAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogInNjYXR0ZXIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgICAgICAgICAiZGlzdHJpYnV0aW9uIjogImRpc2NyZXRlIiwKICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAgICAgICAgICAgICAic2VlZCI6IDEuMDQsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlcyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgInN0cnZhbHVlIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAicGlnIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIndlaWdodCMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RydmFsdWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICJ0b3kiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAid2VpZ2h0IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZXR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICA0LjU5LAogICAgICAgICAgICAgICAgICAgIC0yNC41OAogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJ0eXBlIjogImF0dHJpYnJhbmRvbWl6ZSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgIm91dHB1dDAiOiB7CiAgICAgICAgICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgImRpc3BsYXkiOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICJyZW5kZXIiOiB0cnVlCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogImZyYW1lX29mZnNldHMiLAogICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAgICAgICAgICJvdXRwdXRpZHgiOiAwCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgIDQuNTMsCiAgICAgICAgICAgICAgICAgICAgLTI3LjE1CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInR5cGUiOiAib3V0cHV0IgogICAgICAgICAgICB9LAogICAgICAgICAgICAic2NhdHRlcjEiOiB7CiAgICAgICAgICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAiZ3JpZDEiLAogICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAgICAgICAgICJucHRzIjogNQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICA0LjU4LAogICAgICAgICAgICAgICAgICAgIC0yMy4xNQogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJ0eXBlIjogInNjYXR0ZXI6OjIuMCIKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiY2FjaGUxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicHJpbXBhdGgiOiAiL2luc3RhbmNlcyIsCiAgICAgICAgICAgICJwcm90b2luZGV4c3JjIjogIm5hbWVhdHRyIiwKICAgICAgICAgICAgInByb3RvcGF0dGVybiI6ICIvZ2VvLyoiLAogICAgICAgICAgICAicHJvdG9zb3VyY2Vtb2RlIjogImZpcnN0IgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAxLjA1LAogICAgICAgICAgICAtMy43MgogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiaW5zdGFuY2VyIgogICAgfSwKICAgICJtZXJnZTEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAicGlnMiIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInRveSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMS4wNCwKICAgICAgICAgICAgLTEuNjkKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogIm1lcmdlIgogICAgfSwKICAgICJwaWcyIjogewogICAgICAgICJlZGl0YWJsZXMiOiB7CiAgICAgICAgICAgICJzb3BuZXQvY3JlYXRlIjogewogICAgICAgICAgICAgICAgImNoaWxkcmVuIjogewogICAgICAgICAgICAgICAgICAgICJvdXRwdXQwIjogewogICAgICAgICAgICAgICAgICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheSI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmVuZGVyIjogdHJ1ZQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogInRyYW5zZm9ybTEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvdXRwdXRpZHgiOiAwCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMzYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMi4xNQogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJvdXRwdXQiCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidGVzdGdlb21ldHJ5X3BpZ2hlYWQxIjogewogICAgICAgICAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjQ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMC43NAogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJ0ZXN0Z2VvbWV0cnlfcGlnaGVhZCIKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ0cmFuc2Zvcm0xIjogewogICAgICAgICAgICAgICAgICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogInRlc3RnZW9tZXRyeV9waWdoZWFkMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgInQiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogInNpbihARnJhbWUqMykqMiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgMC40MywKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0wLjUzCiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInhmb3JtIgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAidHlwZSI6ICJzdWJuZXQiCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInBhdGhwcmVmaXgiOiAiL2dlby9waWciLAogICAgICAgICAgICAic2hlYXIiOiBbCiAgICAgICAgICAgICAgICAwLjIsCiAgICAgICAgICAgICAgICAwLjIsCiAgICAgICAgICAgICAgICAwLjIKICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAwCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzb3BjcmVhdGUiCiAgICB9LAogICAgInJldGltZWluc3RhbmNlczEiOiB7CiAgICAgICAgImVkaXRhYmxlcyI6IHsKICAgICAgICAgICAgInNvcG5ldC9tb2RpZnkiOiB7CiAgICAgICAgICAgICAgICAiY2hpbGRyZW4iOiB7CiAgICAgICAgICAgICAgICAgICAgIjEiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA2CiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogIlN1Ym5ldEluZGlyZWN0SW5wdXQiCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiZnJvbV9sb3BzIjogewogICAgICAgICAgICAgICAgICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheSI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmVuZGVyIjogdHJ1ZQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogIjEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA0LjMKICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAibnVsbCIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgInR5cGUiOiAic3VibmV0IgogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJpbnN0YW5jZXIxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiaW5zdGFuY2VzIjogIi9pbnN0YW5jZXNbKl0iCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDEuMDUsCiAgICAgICAgICAgIC00LjcyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJyZXRpbWVpbnN0YW5jZXMiLAogICAgICAgICJ1c2VyX2RhdGEiOiB7CiAgICAgICAgICAgICJfX3JldGltZV9kYXRhIjogIntcIi9pbnN0YW5jZXNcIjoge1wiaXNBbmltXCI6IDAsIFwibWF0Y2hpbmdcIjogWy0xLCAtMSwgLTEsIC0xLCAtMV0sIFwib2Zmc2V0c1wiOiBbMzUuNjExNTAzNjAxMDc0MjIsIDMzLjQzMjk5ODY1NzIyNjU2LCAzMS42MzU2MzE1NjEyNzkyOTcsIDQxLjY3MDYxMjMzNTIwNTA4LCA1OC41ODMwMjMwNzEyODkwNl0sIFwiYW5pbW9mZnNldHNcIjogWzM1LjYxMTUwMzYwMTA3NDIyLCAzMy40MzI5OTg2NTcyMjY1NiwgMzEuNjM1NjMxNTYxMjc5Mjk3LCA0MS42NzA2MTIzMzUyMDUwOCwgNTguNTgzMDIzMDcxMjg5MDZdLCBcInRpbWVzY2FsZXNcIjogWzEsIDEsIDEsIDEsIDFdLCBcImFuaW10aW1lc2NhbGVzXCI6IFsxLCAxLCAxLCAxLCAxXX19IgogICAgICAgIH0KICAgIH0sCiAgICAidG95IjogewogICAgICAgICJlZGl0YWJsZXMiOiB7CiAgICAgICAgICAgICJzb3BuZXQvY3JlYXRlIjogewogICAgICAgICAgICAgICAgImNoaWxkcmVuIjogewogICAgICAgICAgICAgICAgICAgICJvdXRwdXQwIjogewogICAgICAgICAgICAgICAgICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheSI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmVuZGVyIjogdHJ1ZQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogInRyYW5zZm9ybTEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvdXRwdXRpZHgiOiAwCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMzYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMi4xNQogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJvdXRwdXQiCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidGVzdGdlb21ldHJ5X3J1YmJlcnRveTEiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuNSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuODUKICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAidGVzdGdlb21ldHJ5X3J1YmJlcnRveSIKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ0cmFuc2Zvcm0xIjogewogICAgICAgICAgICAgICAgICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogInRlc3RnZW9tZXRyeV9ydWJiZXJ0b3kxIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidCI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAic2luKEBGcmFtZSozKSoyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjQzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgLTAuNTMKICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAieGZvcm0iCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJ0eXBlIjogInN1Ym5ldCIKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicGF0aHByZWZpeCI6ICIvZ2VvL3RveSIsCiAgICAgICAgICAgICJzaGVhciI6IFsKICAgICAgICAgICAgICAgIDAuMiwKICAgICAgICAgICAgICAgIDAuMiwKICAgICAgICAgICAgICAgIDAuMgogICAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDIuMDUsCiAgICAgICAgICAgIC0wLjAzCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzb3BjcmVhdGUiCiAgICB9Cn0=
Geometry Parent
Parent one object motion to another in SOPs. Useful for attaching things to animated geometry that comes from Alembic cache.
Nov 04, 2025 | 20.5.584 | animation Cooked By: kif
ewogICAgIkFOSU1BVEVEX0dFTyI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJ0cmFuc2Zvcm0yIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA1LjYyLAogICAgICAgICAgICAtMi4yMQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibnVsbCIKICAgIH0sCiAgICAiT1VUIjogewogICAgICAgICJjb2xvciI6IFsKICAgICAgICAgICAgMSwKICAgICAgICAgICAgMC43MywKICAgICAgICAgICAgMAogICAgICAgIF0sCiAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAiY29sb3JkZWZhdWx0IjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm1lcmdlMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNS41LAogICAgICAgICAgICAtMTAuNDYKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogIm51bGwiCiAgICB9LAogICAgIlBPSU5UUyI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJ0cmFuc2Zvcm0xIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLjAxLAogICAgICAgICAgICAtMi4yNwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibnVsbCIKICAgIH0sCiAgICAiUkVTVCI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJjYXB0dXJlX2ZyYW1lIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAyLjM1LAogICAgICAgICAgICAtNC43OQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibnVsbCIKICAgIH0sCiAgICAiX19jb29rYm9va01ldGEiOiB7CiAgICAgICAgImNvbnRleHQiOiAic29wIiwKICAgICAgICAidmVyc2lvbiI6ICIyMC41LjU4NCIKICAgIH0sCiAgICAiYm94MSI6IHsKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJkaXZyYXRlIjogWwogICAgICAgICAgICAgICAgMiwKICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAyCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ0eXBlIjogInBvbHltZXNoIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAwCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJib3giCiAgICB9LAogICAgImNhcHR1cmVfZnJhbWUiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiQU5JTUFURURfR0VPIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZnJhbWUiOiAwCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDIuMzcsCiAgICAgICAgICAgIC0zLjMzCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ0aW1lc2hpZnQiCiAgICB9LAogICAgImV4dHJhY3R0cmFuc2Zvcm0xIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIlJFU1QiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJBTklNQVRFRF9HRU8iLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMQogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJvdXRwdXRhdHRyaWJzIjogIm1hdHJpeDQiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDMuNDEsCiAgICAgICAgICAgIC02LjMyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJleHRyYWN0dHJhbnNmb3JtIgogICAgfSwKICAgICJtZXJnZTEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic3RpY2tfdG9fc3VyZmFjZSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIkFOSU1BVEVEX0dFTyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNS40NiwKICAgICAgICAgICAgLTguOTYKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogIm1lcmdlIgogICAgfSwKICAgICJwbGF0b25pYzEiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAidHlwZSI6IDYKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNS42NCwKICAgICAgICAgICAgLTAuMDgKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInBsYXRvbmljIgogICAgfSwKICAgICJzdGlja190b19zdXJmYWNlIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIlBPSU5UUyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIkFOSU1BVEVEX0dFTyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImV4dHJhY3R0cmFuc2Zvcm0xIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDIKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAic25pcHBldCI6ICJ2ZWN0b3IgcG9zID0gIHBvaW50KDIsIFwiUFwiLCAwKTtcbm1hdHJpeCB0ID0gIHBvaW50KDIsIFwidHJhbnNmb3JtXCIsIDApO1xuXG52QFAgPSB2QFAgKiB0O1xuXG4zQHRyYW5zZm9ybSA9IDNAdHJhbnNmb3JtICogbWF0cml4Myh0KTtcblxuXG4iCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAuMjgsCiAgICAgICAgICAgIC03LjgzCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJ3cmFuZ2xlIgogICAgfSwKICAgICJ0cmFuc2Zvcm0xIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImJveDEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJyIjogWwogICAgICAgICAgICAgICAgMjkuMzgxMDA1NzEyODY2OTczLAogICAgICAgICAgICAgICAgMC43NDkzMTQxNDQzODM0NjE0LAogICAgICAgICAgICAgICAgLTguNTc2OTg3MTgwMDk5OTU3CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJzIjogWwogICAgICAgICAgICAgICAgMC4yNjYyMDM2ODIyNzY2NTMxNCwKICAgICAgICAgICAgICAgIDAuMjY2MjAzNjgyMjc2NjUzMSwKICAgICAgICAgICAgICAgIDAuMjY2MjAzNjgyMjc2NjUzMQogICAgICAgICAgICBdLAogICAgICAgICAgICAidCI6IFsKICAgICAgICAgICAgICAgIC0wLjAyOTU3OTYzOTQzNDgxNDQ1MywKICAgICAgICAgICAgICAgIDAuMzEyNDQ4MTU3NDI0ODQ2MzMsCiAgICAgICAgICAgICAgICAwLjQ4NzgzNjUwNDMzNjI5NjkKICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAtMS4xCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ4Zm9ybSIKICAgIH0sCiAgICAidHJhbnNmb3JtMiI6IHsKICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICJkaXNwbGF5IjogdHJ1ZSwKICAgICAgICAgICAgInJlbmRlciI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInBsYXRvbmljMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInIiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiQEZyYW1lIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJARnJhbWUiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgMAogICAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDUuNjUsCiAgICAgICAgICAgIC0xLjA5CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ4Zm9ybSIKICAgIH0KfQ==