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.

Random String And Float Values For Materialx Shaders
n Solaris, you can randomize textures and material parameters per instance using Attribute Randomize. Assign string attributes for texture paths and float attributes for values, then duplicate the node with the same seed so strings align with floats, enabling sub‑materials in one master
Nov 20, 2025 | | shading Cooked By: Faitel
ewogICAgIk9VVCI6IHsKICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICJkaXNwbGF5IjogdHJ1ZSwKICAgICAgICAgICAgInJlbmRlciI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImNvcHl0b3BvaW50czEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDEuNzIsCiAgICAgICAgICAgIC00LjYyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJudWxsIgogICAgfSwKICAgICJfX2Nvb2tib29rTWV0YSI6IHsKICAgICAgICAiY29udGV4dCI6ICJzb3AiLAogICAgICAgICJ2ZXJzaW9uIjogIiIKICAgIH0sCiAgICAiYXR0cmlicmFuZG9taXplMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJncmlkMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImRpc3RyaWJ1dGlvbiI6ICJkaXNjcmV0ZSIsCiAgICAgICAgICAgICJuYW1lIjogInRleHR1cmVwYXRoIiwKICAgICAgICAgICAgInNlZWQiOiAyNjcxLAogICAgICAgICAgICAidmFsdWVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJzdHJ2YWx1ZSMiOiAiJEhGUy9ob3VkaW5pL3BpYy90ZXh0dXJlL2JyaWNrczAwMV9iYXNlY29sb3IucmF0IgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAic3RydmFsdWUjIjogIiRIRlMvaG91ZGluaS9waWMvdGV4dHVyZS9kaXJ0MDAxX2Jhc2Vjb2xvci5yYXQiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ2YWx1ZXR5cGUiOiAic3RyaW5nIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAzLjIzLAogICAgICAgICAgICAtMC4zNwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmlicmFuZG9taXplIgogICAgfSwKICAgICJhdHRyaWJyYW5kb21pemUyIjogewogICAgICAgICJjb21tZW50IjogIlJlZmVyZW5jZWQgZnJvbSBhdHRyaWJyYW5kb21pemUxIiwKICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICJkaXNwbGF5Y29tbWVudCI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImF0dHJpYnJhbmRvbWl6ZTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJhbGxzYW1lIjogewogICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL2FsbHNhbWVcIikiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJjbGFzcyI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9jbGFzc1wiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgImNvbmVhbmdsZSI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9jb25lYW5nbGVcIikiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJjb25zdHZhbHVlIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9jb25zdHZhbHVleFwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL2NvbnN0dmFsdWV5XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvY29uc3R2YWx1ZXpcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9jb25zdHZhbHVld1wiKSIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgImRpbWVuc2lvbnMiOiB7CiAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvZGltZW5zaW9uc1wiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgImRpcmVjdGlvbiI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvZGlyZWN0aW9ueFwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL2RpcmVjdGlvbnlcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9kaXJlY3Rpb256XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvZGlyZWN0aW9ud1wiKSIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgImRpcmVjdGlvbmF0dHJpYiI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNocyhcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvZGlyZWN0aW9uYXR0cmliXCIpIgogICAgICAgICAgICB9LAogICAgICAgICAgICAiZGlzdHJpYnV0aW9uIjogewogICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2hzKFwiLi4vYXR0cmlicmFuZG9taXplMS9kaXN0cmlidXRpb25cIikiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJmaXQwdG8iOiB7CiAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvZml0MHRvXCIpIgogICAgICAgICAgICB9LAogICAgICAgICAgICAiZml0MXRvIjogewogICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL2ZpdDF0b1wiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgImZyYWN0aW9uYXR0cmliIjogewogICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2hzKFwiLi4vYXR0cmlicmFuZG9taXplMS9mcmFjdGlvbmF0dHJpYlwiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgImdyb3VwIjogewogICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2hzKFwiLi4vYXR0cmlicmFuZG9taXplMS9ncm91cFwiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgImdyb3VwdHlwZSI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9ncm91cHR5cGVcIikiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJtYXgiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL21heHhcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9tYXh5XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvbWF4elwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL21heHdcIikiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJtYXhkaXNjcmV0ZSI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvbWF4ZGlzY3JldGV4XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvbWF4ZGlzY3JldGV5XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvbWF4ZGlzY3JldGV6XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvbWF4ZGlzY3JldGV3XCIpIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAibWF4bGltaXQiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL21heGxpbWl0eFwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL21heGxpbWl0eVwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL21heGxpbWl0elwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL21heGxpbWl0d1wiKSIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgIm1lZGlhbiI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvbWVkaWFueFwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL21lZGlhbnlcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9tZWRpYW56XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvbWVkaWFud1wiKSIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgIm1lZGlhbmF0dHJpYiI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNocyhcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvbWVkaWFuYXR0cmliXCIpIgogICAgICAgICAgICB9LAogICAgICAgICAgICAibWluIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9taW54XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvbWlueVwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL21pbnpcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9taW53XCIpIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAibWluZGlzY3JldGUiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL21pbmRpc2NyZXRleFwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL21pbmRpc2NyZXRleVwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL21pbmRpc2NyZXRlelwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL21pbmRpc2NyZXRld1wiKSIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgIm1pbmxpbWl0IjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9taW5saW1pdHhcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9taW5saW1pdHlcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9taW5saW1pdHpcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9taW5saW1pdHdcIikiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJuYW1lIjogInNoYWRlcl9yb3VnaG5lc3MiLAogICAgICAgICAgICAibm9ybWFsaXplIjogewogICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL25vcm1hbGl6ZVwiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgIm52aXN1YWxpemVwdHMiOiB7CiAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvbnZpc3VhbGl6ZXB0c1wiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgIm9uZXNpZGVkbWVkaWFuIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9vbmVzaWRlZG1lZGlhbnhcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9vbmVzaWRlZG1lZGlhbnlcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9vbmVzaWRlZG1lZGlhbnpcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9vbmVzaWRlZG1lZGlhbndcIikiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJvbmVzaWRlZG1pbiI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvb25lc2lkZWRtaW54XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvb25lc2lkZWRtaW55XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvb25lc2lkZWRtaW56XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvb25lc2lkZWRtaW53XCIpIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAib25lc2lkZWRzdGRkZXYiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL29uZXNpZGVkc3RkZGV2eFwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL29uZXNpZGVkc3RkZGV2eVwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL29uZXNpZGVkc3RkZGV2elwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL29uZXNpZGVkc3RkZGV2d1wiKSIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgIm9wZXJhdGlvbiI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNocyhcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvb3BlcmF0aW9uXCIpIgogICAgICAgICAgICB9LAogICAgICAgICAgICAicG93ZXJiaWFzIjogewogICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3Bvd2VyYmlhc1wiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgInByb2J2YWx1ZWIiOiB7CiAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvcHJvYnZhbHVlYlwiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgInJhbXAiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3JhbXAxaW50ZXJwXCIpIgogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3JhbXAxcG9zXCIpIgogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogewogICAgICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvcmFtcDF2YWx1ZVwiKSIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9yYW1wMmludGVycFwiKSIKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJwb3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9yYW1wMnBvc1wiKSIKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3JhbXAydmFsdWVcIikiCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogewogICAgICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvcmFtcDNpbnRlcnBcIikiCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAicG9zIjogewogICAgICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvcmFtcDNwb3NcIikiCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9yYW1wM3ZhbHVlXCIpIgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgInNjYWxlIjogewogICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3NjYWxlXCIpIgogICAgICAgICAgICB9LAogICAgICAgICAgICAic2VlZCI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9zZWVkXCIpIgogICAgICAgICAgICB9LAogICAgICAgICAgICAic2VlZGF0dHJpYiI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNocyhcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvc2VlZGF0dHJpYlwiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgInN0ZGRldiI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvc3RkZGV2eFwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3N0ZGRldnlcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9zdGRkZXZ6XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvc3RkZGV2d1wiKSIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgInN0ZXBzaXplIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9zdGVwc2l6ZXhcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9zdGVwc2l6ZXlcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9zdGVwc2l6ZXpcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS9zdGVwc2l6ZXdcIikiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1c2Vjb25lYW5nbGUiOiB7CiAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvdXNlY29uZWFuZ2xlXCIpIgogICAgICAgICAgICB9LAogICAgICAgICAgICAidXNlZml0MHRvIjogewogICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3VzZWZpdDB0b1wiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgInVzZWZpdDF0byI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS91c2VmaXQxdG9cIikiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJ1c2VmcmFjdGlvbmF0dHJpYiI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS91c2VmcmFjdGlvbmF0dHJpYlwiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgInVzZW1heGxpbWl0IjogewogICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3VzZW1heGxpbWl0XCIpIgogICAgICAgICAgICB9LAogICAgICAgICAgICAidXNlbWlubGltaXQiOiB7CiAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvdXNlbWlubGltaXRcIikiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJ1c2VvbmVzaWRlZG1pbiI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS91c2VvbmVzaWRlZG1pblwiKSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgInVzZXBvd2VyYmlhcyI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS91c2Vwb3dlcmJpYXNcIikiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJ1c2VzZWVkYXR0cmliIjogewogICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3VzZXNlZWRhdHRyaWJcIikiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJ2YWx1ZWEiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3ZhbHVlYXhcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS92YWx1ZWF5XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvdmFsdWVhelwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3ZhbHVlYXdcIikiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ2YWx1ZWIiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3ZhbHVlYnhcIikiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vYXR0cmlicmFuZG9taXplMS92YWx1ZWJ5XCIpIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvdmFsdWVielwiKSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAiY2goXCIuLi9hdHRyaWJyYW5kb21pemUxL3ZhbHVlYndcIikiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ2YWx1ZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgInN0cnZhbHVlIyI6ICJDOi9QUk9HUkF+MS9TSURFRUZ+MS9Ib3VkaW5pIDIxLjAuNTEyL2hvdWRpbmkvcGljL3RleHR1cmUvYnJpY2tzMDAxX2Jhc2Vjb2xvci5yYXQiLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSMiOiAwLjIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgInN0cnZhbHVlIyI6ICJDOi9QUk9HUkF+MS9TSURFRUZ+MS9Ib3VkaW5pIDIxLjAuNTEyL2hvdWRpbmkvcGljL3RleHR1cmUvZGlydDAwMV9iYXNlY29sb3IucmF0IiwKICAgICAgICAgICAgICAgICAgICAidmFsdWUjIjogMC44CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ2aXN1YWxpemUiOiB7CiAgICAgICAgICAgICAgICAiZXhwcmVzc2lvbiI6ICJjaChcIi4uL2F0dHJpYnJhbmRvbWl6ZTEvdmlzdWFsaXplXCIpIgogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDMuMjMsCiAgICAgICAgICAgIC0xLjU3CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJyYW5kb21pemUiLAogICAgICAgICJ1c2VyX2RhdGEiOiB7CiAgICAgICAgICAgICJyZWZlcmVuY2VkX2Zyb20iOiAiLi4vYXR0cmlicmFuZG9taXplMSIKICAgICAgICB9CiAgICB9LAogICAgImNvcHl0b3BvaW50czEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAidXZwcm9qZWN0MSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImF0dHJpYnJhbmRvbWl6ZTIiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMQogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJ0YXJnZXRhdHRyaWJzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJhcHBseWF0dHJpYnMjIjogIiosXnYsXkFscGhhLF5OLF51cCxecHNjYWxlLF5zY2FsZSxeb3JpZW50LF5yb3QsXnBpdm90LF50cmFucyxedHJhbnNmb3JtIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiYXBwbHlhdHRyaWJzIyI6ICJBbHBoYSIsCiAgICAgICAgICAgICAgICAgICAgImFwcGx5bWV0aG9kIyI6ICJtdWx0IgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiYXBwbHlhdHRyaWJzIyI6ICJ2IiwKICAgICAgICAgICAgICAgICAgICAiYXBwbHltZXRob2QjIjogImFkZCIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAxLjcyLAogICAgICAgICAgICAtMy4wNAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiY29weXRvcG9pbnRzOjoyLjAiCiAgICB9LAogICAgImdyaWQxIjogewogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImNvbHMiOiA1LAogICAgICAgICAgICAicm93cyI6IDUKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMy4yMywKICAgICAgICAgICAgMS4xCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJncmlkIgogICAgfSwKICAgICJsb3BuZXQxIjogewogICAgICAgICJjaGlsZHJlbiI6IHsKICAgICAgICAgICAgImFzc2lnbm1hdGVyaWFsIjogewogICAgICAgICAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAgICAgICAgICJkaXNwbGF5IjogdHJ1ZQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAiZnJvbSI6ICJtYXRlcmlhbGxpYnJhcnkxIiwKICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgICAgICAgICAibnVtbWF0ZXJpYWxzIjogWwogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWF0c3BlY3BhdGgjIjogIi9tYXRlcmlhbHMva2FybWFtYXRlcmlhbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAicHJpbXBhdHRlcm4jIjogIi9zb3BpbXBvcnQxIgogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAtMC44MiwKICAgICAgICAgICAgICAgICAgICAtNS41OAogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJ0eXBlIjogImFzc2lnbm1hdGVyaWFsIgogICAgICAgICAgICB9LAogICAgICAgICAgICAibWF0ZXJpYWxsaWJyYXJ5MSI6IHsKICAgICAgICAgICAgICAgICJjaGlsZHJlbiI6IHsKICAgICAgICAgICAgICAgICAgICAia2FybWFtYXRlcmlhbCI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgImNoaWxkcmVuIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgIk1hdGVyaWFsX091dHB1dHNfYW5kX0FPVnMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAibXRseHN0YW5kYXJkX3N1cmZhY2UiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAib3V0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b19pbmRleCI6ICJzdXJmYWNlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbSI6ICJtdGx4ZGlzcGxhY2VtZW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogIm91dCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAiZGlzcGxhY2VtZW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbSI6ICJtYXRlcmlhbF9wcm9wZXJ0aWVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogInByb3BlcnRpZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRvX2luZGV4IjogInByb3BlcnRpZXMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUxIjogInN1cmZhY2UiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZTIiOiAiZGlzcGxhY2VtZW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyLjQ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMy44NwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpemUiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEuNzcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEuMTMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN1Ym91dHB1dCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW5wdXRzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3BsYXkiOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmVuZGVyIjogdHJ1ZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtNC43NSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMS4zNgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpemUiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEuNzcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuNTMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN1YmlucHV0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXRlcmlhbF9wcm9wZXJ0aWVzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTAuMjksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0zLjg3CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2l6ZSI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMS43NywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC42OAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAia21hX21hdGVyaWFsX3Byb3BlcnRpZXMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIm10bHhkaXNwbGFjZW1lbnQiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMC4yOSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTIuNDMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaXplIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjc3LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjgzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJtdGx4ZGlzcGxhY2VtZW50IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtdGx4Z2VvbXByb3B2YWx1ZTEiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2VvbXByb3AiOiAic2hhZGVyX3JvdWdobmVzcyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTQuMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTMuMjYKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaXplIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjc3LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjgzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJtdGx4Z2VvbXByb3B2YWx1ZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAibXRseGdlb21wcm9wdmFsdWV1bmlmb3JtMSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJnZW9tcHJvcCI6ICJ0ZXh0dXJlcGF0aCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYXR1cmUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtNy41NiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTAuNjYKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaXplIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjc3LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjgzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJtdGx4Z2VvbXByb3B2YWx1ZXVuaWZvcm0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIm10bHhpbWFnZTEiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAibXRseGdlb21wcm9wdmFsdWV1bmlmb3JtMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6ICJvdXQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRvX2luZGV4IjogImZpbGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hdHVyZSI6ICJjb2xvcjMiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC00LjIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0wLjQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaXplIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjc3LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyLjAzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJtdGx4aW1hZ2UiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIm10bHhzdGFuZGFyZF9zdXJmYWNlIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogIm10bHhpbWFnZTEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAib3V0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b19pbmRleCI6ICJiYXNlX2NvbG9yIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbSI6ICJtdGx4Z2VvbXByb3B2YWx1ZTEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAib3V0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b19pbmRleCI6ICJzcGVjdWxhcl9yb3VnaG5lc3MiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTAuMjksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuOTgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaXplIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjc3LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyLjg2CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJtdGx4c3RhbmRhcmRfc3VyZmFjZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZXJfZGF0YSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIl9faW5wdXRncm91cF8iOiAiY29sbGFwc2VkIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIl9faW5wdXRncm91cF9CYXNlIjogImNvbGxhcHNlZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJfX2lucHV0Z3JvdXBfQ29hdCI6ICJjb2xsYXBzZWQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiX19pbnB1dGdyb3VwX0VtaXNzaW9uIjogImNvbGxhcHNlZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJfX2lucHV0Z3JvdXBfR2VvbWV0cnkiOiAiY29sbGFwc2VkIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIl9faW5wdXRncm91cF9TaGVlbiI6ICJjb2xsYXBzZWQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiX19pbnB1dGdyb3VwX1N1YnN1cmZhY2UiOiAiY29sbGFwc2VkIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIl9faW5wdXRncm91cF9UaGluIEZpbG0iOiAiY29sbGFwc2VkIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIl9faW5wdXRncm91cF9UcmFuc21pc3Npb24iOiAiY29sbGFwc2VkIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpc3BsYXkiOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1hdGVyaWFsIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZW5kZXIiOiB0cnVlCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbnNlcnRfZmlyc3QiOiAiIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZvbGRlcjEiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiS2FybWEgTWF0ZXJpYWwgQnVpbGRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW5oZXJpdF9jdHJsIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJJbmhlcml0IGZyb20gQ2xhc3MiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV9pdGVtcyI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTmV2ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICIwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiQWx3YXlzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiMSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIk1hdGVyaWFsIEZsYWciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICIyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImludGVnZXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2VwYXJhdG9yMSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInNlcGFyYXRvciIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaGFkZXJfYmFzZXByaW1wYXRoIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICIvX19jbGFzc19tdGxfXy9gJE9TYCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJDbGFzcyBQcmltIFBhdGgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9hY3Rpb24iOiAiaW1wb3J0IGxvcHNoYWRlcnV0aWxzXG5sb3BzaGFkZXJ1dGlscy5zZWxlY3RQcmltRnJvbUlucHV0T3JGaWxlKGt3YXJncykiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9hY3Rpb25faGVscCI6ICJTZWxlY3QgYSBwcmltaXRpdmUgaW4gdGhlIFNjZW5lIFZpZXdlciBvciBTY2VuZSBHcmFwaCBUcmVlIHBhbmUuXG5DdHJsLWNsaWNrIHRvIHNlbGVjdCB1c2luZyB0aGUgcHJpbWl0aXZlIHBpY2tlciBkaWFsb2cuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfYWN0aW9uX2ljb24iOiAiQlVUVE9OU19yZXNlbGVjdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4OjpzaGFkZXJfaXNwYXJtIjogIjAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6dXNkcGF0aHR5cGUiOiAicHJpbSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2hhZGVyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2hhZGVyX2ZvcmNlY2hpbGRyZW4iOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkZvcmNlIFRyYW5zbGF0aW9uIG9mIENoaWxkcmVuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4OjpzaGFkZXJfaXNwYXJtIjogIjAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlNoYWRlciIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAidG9nZ2xlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNoYWRlcl9yZWZlcmVuY2V0eXBlIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogIm4gPSBob3UucHdkKClcbm5faGFzRmxhZyA9IG4uaXNNYXRlcmlhbEZsYWdTZXQoKVxuaSA9IG4uZXZhbFBhcm0oJ2luaGVyaXRfY3RybCcpXG5yID0gJ25vbmUnXG5pZiBpID09IDEgb3IgKG5faGFzRmxhZyBhbmQgaSA9PSAyKTpcbiAgICByID0gJ2luaGVyaXQnXG5yZXR1cm4gciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFuZ3VhZ2UiOiAicHl0aG9uIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiQ2xhc3MgQXJjIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfaXRlbXMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIk5vbmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b2tlbiI6ICJub25lIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiUmVmZXJlbmNlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAicmVmZXJlbmNlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiSW5oZXJpdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogImluaGVyaXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJTcGVjaWFsaXplIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAic3BlY2lhbGl6ZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlJlcHJlc2VudCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogInJlcHJlc2VudCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6OnNoYWRlcl9pc3Bhcm0iOiAiMCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2hhZGVyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2hhZGVyX3JlbmRlcmNvbnRleHRuYW1lIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJrbWEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiUmVuZGVyIENvbnRleHQgTmFtZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4OjpzaGFkZXJfaXNwYXJtIjogIjAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlNoYWRlciIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhYm1lbnVtYXNrIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJrYXJtYSBVU0QgXm10bHhVc2QqIF5tdGx4cmFtcCogXmhtdGx4cmFtcCogXmhtdGx4Y3ViaWNyYW1wKiBNYXRlcmlhbFggcGFyYW1ldGVyIGNvbnN0YW50IGNvbGxlY3QgbnVsbCBnZW5lcmljc2hhZGVyIHN1Ym5ldCBzdWJuZXRjb25uZWN0b3Igc3Vib3V0cHV0IHN1YmlucHV0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlRhYiBNZW51IE1hc2siLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlRhYiBNZW51IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ3JvdXBfdHlwZSI6ICJjb2xsYXBzaWJsZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6c2hhZGVyX2lzcGFybSI6ICIwIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZvbGRlcl9jb2xsYXBzaWJsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgLTAuNDUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtNS45OQogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAic2l6ZSI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEuNzcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjk4CiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN1Ym5ldCIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogInNvcGltcG9ydDEiLAogICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAgICAgICAgICJtYXRlcmlhbHMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhc3NpZ24jIjogZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWF0ZmxhZyMiOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1hdG5vZGUjIjogIioiCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiBbCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAiaW5zZXJ0X2FmdGVyIjogIm1hdHBhdGhwcmVmaXgiLAogICAgICAgICAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWJtZW51Zm9sZGVyIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJUYWIgTWVudSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWJtZW51bWFzayI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0X3ZhbHVlIjogIipidWlsZGVyIHBhcmFtZXRlciBjb25zdGFudCByYW1wcGFybSBjb2xsZWN0IG51bGwgc3VibmV0IHN1Ym5ldGNvbm5lY3RvciBzdWJvdXRwdXQgc3ViaW5wdXQgZ2VuZXJpY3NoYWRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVGFiIE1lbnUgTWFzayIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlRhYiBNZW51IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdyb3VwX3R5cGUiOiAiY29sbGFwc2libGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmb2xkZXJfY29sbGFwc2libGUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgIC0wLjgyLAogICAgICAgICAgICAgICAgICAgIC00LjMKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAidHlwZSI6ICJtYXRlcmlhbGxpYnJhcnkiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJzb3BpbXBvcnQxIjogewogICAgICAgICAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAgICAgICAgICJyZW5kZXIiOiB0cnVlCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAgICAgICAgICJlbmFibGVfaW5kZXhhdHRyaWJzIjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAic29wcGF0aCI6ICIuLi8uLi9PVVQiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgIC0wLjgyLAogICAgICAgICAgICAgICAgICAgIC0zLjE2CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInR5cGUiOiAic29waW1wb3J0IgogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDEuNzIsCiAgICAgICAgICAgIC01Ljg1CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJsb3BuZXQiCiAgICB9LAogICAgInNwaGVyZTEiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicmFkIjogWwogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ0eXBlIjogInBvbHltZXNoIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAxLjEKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInNwaGVyZSIKICAgIH0sCiAgICAidXZwcm9qZWN0MSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJzcGhlcmUxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicHJvanR5cGUiOiAicG9sYXIiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDAKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInV2cHJvamVjdCIKICAgIH0KfQ==
Simple Water Material
Simple and fast water material for Karma. This material use metalness and doesn't use transmission to optimize for faster render.
Nov 05, 2025 | 20.5.584 | shading Cooked By: kif
ewogICAgIl9fY29va2Jvb2tNZXRhIjogewogICAgICAgICJjb250ZXh0IjogInZvcCIsCiAgICAgICAgInZlcnNpb24iOiAiMjAuNS41ODQiCiAgICB9LAogICAgIndhdGVyIjogewogICAgICAgICJjaGlsZHJlbiI6IHsKICAgICAgICAgICAgIk1hdGVyaWFsX091dHB1dHNfYW5kX0FPVnMiOiB7CiAgICAgICAgICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAibXRseHN0YW5kYXJkX3N1cmZhY2UiLAogICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6ICJvdXQiLAogICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAic3VyZmFjZSIKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgImZyb20iOiAibWF0ZXJpYWxfcHJvcGVydGllcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogInByb3BlcnRpZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAicHJvcGVydGllcyIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAgICAgICAgICJuYW1lMSI6ICJzdXJmYWNlIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICA2LjYxLAogICAgICAgICAgICAgICAgICAgIC00LjM5CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInNpemUiOiBbCiAgICAgICAgICAgICAgICAgICAgMS43NywKICAgICAgICAgICAgICAgICAgICAwLjk4CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInR5cGUiOiAic3Vib3V0cHV0IgogICAgICAgICAgICB9LAogICAgICAgICAgICAiaW5wdXRzIjogewogICAgICAgICAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAgICAgICAgICJkaXNwbGF5IjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAicmVuZGVyIjogdHJ1ZQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAtMTYuNjQsCiAgICAgICAgICAgICAgICAgICAgLTAuMDQKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAic2l6ZSI6IFsKICAgICAgICAgICAgICAgICAgICAxLjc3LAogICAgICAgICAgICAgICAgICAgIDAuNTMKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAidHlwZSI6ICJzdWJpbnB1dCIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgImxhcmdlX2ZsYXRfYXJlYXMiOiB7CiAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgImZyZXEiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIDAuNSwKICAgICAgICAgICAgICAgICAgICAgICAgMSwKICAgICAgICAgICAgICAgICAgICAgICAgMC41CiAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAib2N0YXZlcyI6IDgKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgLTEwLjUsCiAgICAgICAgICAgICAgICAgICAgLTUuMzkKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAic2l6ZSI6IFsKICAgICAgICAgICAgICAgICAgICAxLjc3LAogICAgICAgICAgICAgICAgICAgIDIuNzkKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAidHlwZSI6ICJtdGx4dW5pZmllZG5vaXNlM2QiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJtYXRlcmlhbF9wcm9wZXJ0aWVzIjogewogICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgIDMuMDYsCiAgICAgICAgICAgICAgICAgICAgLTUuMTQKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAic2l6ZSI6IFsKICAgICAgICAgICAgICAgICAgICAxLjc3LAogICAgICAgICAgICAgICAgICAgIDAuNjgKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAidHlwZSI6ICJrbWFfbWF0ZXJpYWxfcHJvcGVydGllcyIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgIm10bHhkaXNwbGFjZW1lbnQiOiB7CiAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgMy4xMSwKICAgICAgICAgICAgICAgICAgICAtNi43NAogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJzaXplIjogWwogICAgICAgICAgICAgICAgICAgIDEuNzcsCiAgICAgICAgICAgICAgICAgICAgMC44MwogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJ0eXBlIjogIm10bHhkaXNwbGFjZW1lbnQiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJtdGx4aGVpZ2h0dG9ub3JtYWwxIjogewogICAgICAgICAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogIm10bHhtaXgxIiwKICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAib3V0IiwKICAgICAgICAgICAgICAgICAgICAgICAgInRvX2luZGV4IjogImluIgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgICAgICAgICAgLTMuNTgsCiAgICAgICAgICAgICAgICAgICAgLTMuMwogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJzaXplIjogWwogICAgICAgICAgICAgICAgICAgIDEuNzcsCiAgICAgICAgICAgICAgICAgICAgMC44MwogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJ0eXBlIjogIm10bHhoZWlnaHR0b25vcm1hbCIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgIm10bHhtaXgxIjogewogICAgICAgICAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogInNtYWxsX3JpcHBsZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6ICJvdXQiLAogICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAiYmciCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIjogImxhcmdlX2ZsYXRfYXJlYXMiLAogICAgICAgICAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6ICJvdXQiLAogICAgICAgICAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAibWl4IgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgImZnIjogMQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAtNi43OCwKICAgICAgICAgICAgICAgICAgICAtMy4xNgogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJzaXplIjogWwogICAgICAgICAgICAgICAgICAgIDEuNzcsCiAgICAgICAgICAgICAgICAgICAgMC45OAogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJ0eXBlIjogIm10bHhtaXgiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJtdGx4bm9ybWFsbWFwMSI6IHsKICAgICAgICAgICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAiZnJvbSI6ICJtdGx4aGVpZ2h0dG9ub3JtYWwxIiwKICAgICAgICAgICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAib3V0IiwKICAgICAgICAgICAgICAgICAgICAgICAgInRvX2luZGV4IjogImluIgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICAgICAgICAgInNjYWxlIjogMC4wMDI1CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAgICAgICAgIC0wLjcsCiAgICAgICAgICAgICAgICAgICAgLTMuMwogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJzaXplIjogWwogICAgICAgICAgICAgICAgICAgIDEuNzcsCiAgICAgICAgICAgICAgICAgICAgMS4yOAogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJ0eXBlIjogIm10bHhub3JtYWxtYXAiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICJtdGx4c3RhbmRhcmRfc3VyZmFjZSI6IHsKICAgICAgICAgICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAiZnJvbSI6ICJtdGx4bm9ybWFsbWFwMSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogIm91dCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0b19pbmRleCI6ICJub3JtYWwiCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgICAgICAgICAiYmFzZV9jb2xvciI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgMC4xMjEyNTk5OTQ4MDQ4NTkxNiwKICAgICAgICAgICAgICAgICAgICAgICAgMC4xNDYwOTk4MjA3MzMwNzAzNywKICAgICAgICAgICAgICAgICAgICAgICAgMC4xODc5OTk5OTM1NjI2OTgzNgogICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgIm1ldGFsbmVzcyI6IDAuODcsCiAgICAgICAgICAgICAgICAgICAgInNwZWN1bGFyX0lPUiI6IDEuMzMsCiAgICAgICAgICAgICAgICAgICAgInNwZWN1bGFyX3JvdWdobmVzcyI6IDAuMQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAzLjA3LAogICAgICAgICAgICAgICAgICAgIC0wLjk0CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInNpemUiOiBbCiAgICAgICAgICAgICAgICAgICAgMS43NywKICAgICAgICAgICAgICAgICAgICAzLjE2CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgInR5cGUiOiAibXRseHN0YW5kYXJkX3N1cmZhY2UiLAogICAgICAgICAgICAgICAgInVzZXJfZGF0YSI6IHsKICAgICAgICAgICAgICAgICAgICAiX19pbnB1dGdyb3VwXyI6ICJjb2xsYXBzZWQiLAogICAgICAgICAgICAgICAgICAgICJfX2lucHV0Z3JvdXBfQ29hdCI6ICJjb2xsYXBzZWQiLAogICAgICAgICAgICAgICAgICAgICJfX2lucHV0Z3JvdXBfRW1pc3Npb24iOiAiY29sbGFwc2VkIiwKICAgICAgICAgICAgICAgICAgICAiX19pbnB1dGdyb3VwX1NoZWVuIjogImNvbGxhcHNlZCIsCiAgICAgICAgICAgICAgICAgICAgIl9faW5wdXRncm91cF9TcGVjdWxhciI6ICJjb2xsYXBzZWQiLAogICAgICAgICAgICAgICAgICAgICJfX2lucHV0Z3JvdXBfU3Vic3VyZmFjZSI6ICJjb2xsYXBzZWQiLAogICAgICAgICAgICAgICAgICAgICJfX2lucHV0Z3JvdXBfVGhpbiBGaWxtIjogImNvbGxhcHNlZCIsCiAgICAgICAgICAgICAgICAgICAgIl9faW5wdXRncm91cF9UcmFuc21pc3Npb24iOiAiY29sbGFwc2VkIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICAic21hbGxfcmlwcGxlcyI6IHsKICAgICAgICAgICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgICAgICAgICAiZnJlcSI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgNTAsCiAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgIDkKICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICJvY3RhdmVzIjogOAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgICAgICAgICAtMTAuNDksCiAgICAgICAgICAgICAgICAgICAgLTEuNDkKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAic2l6ZSI6IFsKICAgICAgICAgICAgICAgICAgICAxLjc3LAogICAgICAgICAgICAgICAgICAgIDIuNzkKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAidHlwZSI6ICJtdGx4dW5pZmllZG5vaXNlM2QiCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgImRpc3BsYXkiOiB0cnVlLAogICAgICAgICAgICAibWF0ZXJpYWwiOiB0cnVlLAogICAgICAgICAgICAicmVuZGVyIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJpbnNlcnRfZmlyc3QiOiAiIiwKICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogewogICAgICAgICAgICAgICAgICAgICJmb2xkZXIxIjogewogICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiS2FybWEgTWF0ZXJpYWwgQnVpbGRlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImluaGVyaXRfY3RybCI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IDIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkluaGVyaXQgZnJvbSBDbGFzcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfaXRlbXMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJOZXZlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiMCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkFsd2F5cyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiMSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIk1hdGVyaWFsIEZsYWciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogIjIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImludGVnZXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNlcGFyYXRvcjEiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzZXBhcmF0b3IiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNoYWRlcl9iYXNlcHJpbXBhdGgiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAiL19fY2xhc3NfbXRsX18vYCRPU2AiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJDbGFzcyBQcmltIFBhdGgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2FjdGlvbiI6ICJpbXBvcnQgbG9wc2hhZGVydXRpbHNcbmxvcHNoYWRlcnV0aWxzLnNlbGVjdFByaW1Gcm9tSW5wdXRPckZpbGUoa3dhcmdzKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfYWN0aW9uX2hlbHAiOiAiU2VsZWN0IGEgcHJpbWl0aXZlIGluIHRoZSBTY2VuZSBWaWV3ZXIgb3IgU2NlbmUgR3JhcGggVHJlZSBwYW5lLlxuQ3RybC1jbGljayB0byBzZWxlY3QgdXNpbmcgdGhlIHByaW1pdGl2ZSBwaWNrZXIgZGlhbG9nLiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfYWN0aW9uX2ljb24iOiAiQlVUVE9OU19yZXNlbGVjdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6OnNoYWRlcl9pc3Bhcm0iOiAiMCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6OnVzZHBhdGh0eXBlIjogInByaW0iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2hhZGVyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaGFkZXJfZm9yY2VjaGlsZHJlbiI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkZvcmNlIFRyYW5zbGF0aW9uIG9mIENoaWxkcmVuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2lkZWZ4OjpzaGFkZXJfaXNwYXJtIjogIjAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiU2hhZGVyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAidG9nZ2xlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaGFkZXJfcmVmZXJlbmNldHlwZSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb24iOiAibiA9IGhvdS5wd2QoKVxubl9oYXNGbGFnID0gbi5pc01hdGVyaWFsRmxhZ1NldCgpXG5pID0gbi5ldmFsUGFybSgnaW5oZXJpdF9jdHJsJylcbnIgPSAnbm9uZSdcbmlmIGkgPT0gMSBvciAobl9oYXNGbGFnIGFuZCBpID09IDIpOlxuICAgIHIgPSAnaW5oZXJpdCdcbnJldHVybiByIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhbmd1YWdlIjogInB5dGhvbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJDbGFzcyBBcmMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X2l0ZW1zIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAibm9uZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlJlZmVyZW5jZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAicmVmZXJlbmNlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiSW5oZXJpdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG9rZW4iOiAiaW5oZXJpdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlNwZWNpYWxpemUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogInNwZWNpYWxpemUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJSZXByZXNlbnQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRva2VuIjogInJlcHJlc2VudCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lbnVfdHlwZSI6ICJub3JtYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6OnNoYWRlcl9pc3Bhcm0iOiAiMCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFyZV9jYXRlZ29yeSI6ICJTaGFkZXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNoYWRlcl9yZW5kZXJjb250ZXh0bmFtZSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVmYXVsdF92YWx1ZSI6ICJrbWEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJSZW5kZXIgQ29udGV4dCBOYW1lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFncyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6c2hhZGVyX2lzcGFybSI6ICIwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwYXJlX2NhdGVnb3J5IjogIlNoYWRlciIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFibWVudW1hc2siOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlZmF1bHRfdmFsdWUiOiAia2FybWEgVVNEIF5tdGx4VXNkKiBebXRseHJhbXAqIF5obXRseHJhbXAqIF5obXRseGN1YmljcmFtcCogTWF0ZXJpYWxYIHBhcmFtZXRlciBjb25zdGFudCBjb2xsZWN0IG51bGwgZ2VuZXJpY3NoYWRlciBzdWJuZXQgc3VibmV0Y29ubmVjdG9yIHN1Ym91dHB1dCBzdWJpbnB1dCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlRhYiBNZW51IE1hc2siLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtZW51X3R5cGUiOiAibm9ybWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2NyaXB0X2NhbGxiYWNrX2xhbmd1YWdlIjogImhzY3JpcHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhcmVfY2F0ZWdvcnkiOiAiVGFiIE1lbnUiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImdyb3VwX3R5cGUiOiAiY29sbGFwc2libGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6c2hhZGVyX2lzcGFybSI6ICIwIgogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmb2xkZXJfY29sbGFwc2libGUiCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDAKICAgICAgICBdLAogICAgICAgICJzaXplIjogWwogICAgICAgICAgICAxLjc3LAogICAgICAgICAgICAwLjgzCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzdWJuZXQiCiAgICB9Cn0=