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
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.
Twist on the basic gyroid, using the formula on spherical coordinates instead of cartesian. This should conform nicer to spherical shapes. This is also an example on how to warp the gyroid shape and get more custom formations.
Nov 09, 2025 | 20.5.584 | vex
Cooked By: snay
ewogICAgIl9fY29va2Jvb2tNZXRhIjogewogICAgICAgICJjb250ZXh0IjogInNvcCIsCiAgICAgICAgInZlcnNpb24iOiAiMjAuNS41ODQiCiAgICB9LAogICAgImF0dHJpYmJsdXIxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImNvbnZlcnR2ZGIxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiaXRlcmF0aW9ucyI6IDE5CiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIC0xLjk4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJibHVyIgogICAgfSwKICAgICJjb252ZXJ0dmRiMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJneXJvaWQiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJjb252ZXJzaW9uIjogInBvbHkiLAogICAgICAgICAgICAiaXNvdmFsdWUiOiAwLjAxCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIC0wLjk4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJjb252ZXJ0dmRiIgogICAgfSwKICAgICJneXJvaWQiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAidmRiZnJvbXBvbHlnb25zMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImZyZXEiOiA5LjMsCiAgICAgICAgICAgICJoZWlnaHRNdWwiOiAyMDAsCiAgICAgICAgICAgICJzbmlwcGV0IjogImZsb2F0IGZyZXEgPSBjaGYoXCJmcmVxXCIpO1xuXG5mbG9hdCByID0gbGVuZ3RoKHZAUCk7XG5mbG9hdCB0aGV0YSA9IGFjb3MoQFAuei9yKTtcbmZsb2F0IHBoaSA9IGF0YW4yKEBQLnksQFAueCk7XG5cbmZsb2F0IHggPSBmcmVxICogcjtcbmZsb2F0IHkgPSBmcmVxICogdGhldGE7XG5mbG9hdCB6ID0gZnJlcSAqIHBoaTtcblxuZmxvYXQgZnggPSBzaW4oeCkgKiBjb3MoeSkgKyBzaW4oeSkgKiBjb3MoeikgKyBzaW4oeikgKiBjb3MoeCk7XG5cbmlmKGZ4IFx1MDAzYyAwLjAxKXtcbiAgICBAZGVuc2l0eSA9IDAuMDtcbn0gIiwKICAgICAgICAgICAgInRvdGFsQ29scyI6IHsKICAgICAgICAgICAgICAgICJleHByZXNzaW9uIjogImNoKFwiLi4vY2lyY2xlMS9kaXZzXCIpIgogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAicGFybXRlbXBsYXRlcyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImluc2VydF9hZnRlciI6ICJiaW5kZWFjaCIsCiAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAiZm9sZGVyX2dlbmVyYXRlZHBhcm1zX3NuaXBwZXQiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJHZW5lcmF0ZWQgQ2hhbm5lbCBQYXJhbWV0ZXJzIiwKICAgICAgICAgICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJlcSI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiRnJlcSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ3JvdXBfdHlwZSI6ICJzaW1wbGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJibGFuayIKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZm9sZGVyX3NpbXBsZSIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJpbnNlcnRfYWZ0ZXIiOiAiZm9sZGVyMF8xIiwKICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogewogICAgICAgICAgICAgICAgICAgICJoZWlnaHRNdWwiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJIZWlnaHRtdWwiLAogICAgICAgICAgICAgICAgICAgICAgICAibWF4X3ZhbHVlIjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidG90YWxDb2xzIjogewogICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiVG90YWxjb2xzIiwKICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAwCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ2b2x1bWV3cmFuZ2xlIgogICAgfSwKICAgICJzcGhlcmUxIjogewogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMi4xCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzcGhlcmUiCiAgICB9LAogICAgInZkYmZyb21wb2x5Z29uczEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic3BoZXJlMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImJ1aWxkZGlzdGFuY2UiOiBmYWxzZSwKICAgICAgICAgICAgImJ1aWxkZm9nIjogdHJ1ZSwKICAgICAgICAgICAgInZveGVsc2l6ZSI6IDAuMDIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMS4xCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ2ZGJmcm9tcG9seWdvbnMiCiAgICB9Cn0=
Converts a surface geometry into a moving, breathing, chainmail fabric. Apply this modifier to any clothing element that needs extra BLING. This pattern was inspired by 3D printable fabric prototypes.
Nov 03, 2025 | 20.5.584 | geometry
Cooked By: snay
ewogICAgIl9fY29va2Jvb2tNZXRhIjogewogICAgICAgICJjb250ZXh0IjogInNvcCIsCiAgICAgICAgInZlcnNpb24iOiAiMjAuNS41ODQiCiAgICB9LAogICAgImF0dHJpYnByb21vdGUxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm1lYXN1cmUyIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZGVsZXRlaW4iOiBmYWxzZSwKICAgICAgICAgICAgImlubmFtZSI6ICJjdXJ2YXR1cmUiLAogICAgICAgICAgICAib3V0Y2xhc3MiOiAicHJpbWl0aXZlIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAzLjE4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJwcm9tb3RlIgogICAgfSwKICAgICJib29sZWFuMiI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJ0dWJlMiIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInR1YmUzIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYm9vbGVhbm9wIjogInN1YnRyYWN0IgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA1LjY4LAogICAgICAgICAgICAtMS40OQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYm9vbGVhbjo6Mi4wIgogICAgfSwKICAgICJicmVhdGhlX21vdmVtZW50IjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImNyZWF0ZV9wcmltcyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm1lYXN1cmUyIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYnJlYXRoZUFtdCI6IDAuMDEsCiAgICAgICAgICAgICJjdXJ2ZXJlbWFwIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAibGluZWFyIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMCwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAxCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAibGluZWFyIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMSwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAwLjIwMDAwMDAwMjk4MDIzMjI0CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJncm91cCI6ICJlZGdlcyIsCiAgICAgICAgICAgICJtb3ZlQW10IjogMC4wNTQsCiAgICAgICAgICAgICJzbmlwcGV0IjogIi8vYWRkIG5vaXNlIG9mZnNldCB0byBhbGwgcG9pbnRzIFxuaW50IG5lYXJwdCA9IG5lYXJwb2ludCgxLCBAUCk7XG5cbmZsb2F0IHJhd0N1cnZlID0gY2xhbXAocG9pbnQoMSwgXCJjdXJ2YXR1cmVcIiwgbmVhcnB0KSwgMC4wLCAxLjApO1xuZmxvYXQgbW92ZUFtdCA9IGNocmFtcChcImN1cnZlcmVtYXBcIiwgcmF3Q3VydmUpO1xuXG5tb3ZlQW10ICo9IDEuMCArIHNpbigtMyAqdkBQLnkgKyAzICogcmF3Q3VydmUgKyAwLjEgKiBARnJhbWUpO1xuXG5pbnQgbltdID0gbmVpZ2hib3VycygwLCBAcHRudW0pO1xudmVjdG9yIG4xID0gcG9pbnQoMCxcIlBcIiwgblswXSk7XG52ZWN0b3IgbjIgPSBwb2ludCgwLFwiUFwiLCBuWzFdKTtcblxudmVjdG9yIGRpciA9IChuMSArIG4yKS8yLjAgLSBAUDtcblxudkBQTmV4dCA9IHZAUCsgMS4zICogY2hmKFwiYnJlYXRoZUFtdFwiKSAqIG1vdmVBbXQgKiBATjtcbnZAUE5leHQgKz0gY2hmKFwibW92ZUFtdFwiKSAqIG1vdmVBbXQgKiBjdXJsbm9pc2UoQFAgKyAwLjAxICogQEZyYW1lKTtcblxuIgogICAgICAgIH0sCiAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJpbnNlcnRfYWZ0ZXIiOiAidmV4X3RocmVhZGpvYnNpemUiLAogICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiB7CiAgICAgICAgICAgICAgICAgICAgImZvbGRlcl9nZW5lcmF0ZWRwYXJtc19zbmlwcGV0IjogewogICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiR2VuZXJhdGVkIENoYW5uZWwgUGFyYW1ldGVycyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImJyZWF0aGVBbXQiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkJyZWF0aGVhbXQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgImN1cnZlcmVtYXAiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIkN1cnZlcmVtYXAiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNob3dfY29udHJvbHMiOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogInJhbXBfZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1vdmVBbXQiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIk1vdmVhbXQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0YWdzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImdyb3VwX3R5cGUiOiAic2ltcGxlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaWRlZng6Omxvb2siOiAiYmxhbmsiCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZvbGRlcl9zaW1wbGUiCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDAKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImF0dHJpYndyYW5nbGUiCiAgICB9LAogICAgImNvcHl0b3BvaW50czEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiZGl2aWRlMiIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImRlbGV0ZTMiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMQogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJpZGF0dHJpYiI6ICJ2YXJpYW50IiwKICAgICAgICAgICAgInRhcmdldGF0dHJpYnMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImFwcGx5YXR0cmlicyMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICIqLF52LF5BbHBoYSxeTixedXAsXnBzY2FsZSxec2NhbGUsXm9yaWVudCxecm90LF5waXZvdCxedHJhbnMsXnRyYW5zZm9ybSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJhcHBseW1ldGhvZCMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJhcHBseXRvIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInVzZWFwcGx5IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImFwcGx5YXR0cmlicyMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICJBbHBoYSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJhcHBseW1ldGhvZCMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICJtdWx0IiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImFwcGx5dG8jIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidXNlYXBwbHkjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiYXBwbHlhdHRyaWJzIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogInYiLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiYXBwbHltZXRob2QjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiYWRkIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImFwcGx5dG8jIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidXNlYXBwbHkjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAidGFyZ2V0Z3JvdXAiOiAiZWRnZXMiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDUuMzYsCiAgICAgICAgICAgIC00LjU5CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJjb3B5dG9wb2ludHM6OjIuMCIKICAgIH0sCiAgICAiY3JlYXRlX3ByaW1zIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImRpdmlkZTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJjbGFzcyI6ICJwcmltaXRpdmUiLAogICAgICAgICAgICAic25pcHBldCI6ICIvL2l0ZXJhdGUgb3ZlciBldmVyeSBwcmltaXRpdmUgaW4gb3VyIGhleGFnb25hbCBtZXNoXG52ZWN0b3IgY2VudGVyUG9zID0gQFA7XG5hZGRwb2ludCgwLCBAUCk7XG5cbmludCBwcmltcHRzW10gPSBwcmltcG9pbnRzKDAsIEBwcmltbnVtKTtcblxuZm9yKGludCBpID0gMDsgaSBcdTAwM2MgbGVuKHByaW1wdHMpOyBpKyspe1xuICAgIC8vZHJhdyBhIGxpbmUgZnJvbSBwdCB0byBjZW50ZXIgYW5kIFxuICAgIC8vbWFrZSBpdCBhIHByaW0gXG4gICAgaW50IG5ldyA9IGFkZHByaW0oMCwgXCJwb2x5XCIpO1xuICAgIGludCBjZW50ZXIgPSBhZGRwb2ludCgwLCBAUCk7XG4gICAgYWRkdmVydGV4KDAsIG5ldywgcHJpbXB0c1tpLTFdKTtcbiAgICBhZGR2ZXJ0ZXgoMCwgbmV3LCBwcmltcHRzW2ldKTtcbiAgICBhZGR2ZXJ0ZXgoMCwgbmV3LCBjZW50ZXIpO1xuICAgIHNldHByaW1ncm91cCgwLCBcImRpdmlkZWRcIiwgbmV3LCAxKTtcbiAgICBzZXRwb2ludGF0dHJpYigwLCBcImNlbnRlclwiLCBjZW50ZXIgLCAxLCBcInNldFwiKTtcbiAgICBzZXRwcmltYXR0cmliKDAsIFwiY3VydmF0dXJlXCIsICBuZXcsIEBjdXJ2YXR1cmUsIFwic2V0XCIpO1xuICAgIHNldHBvaW50Z3JvdXAoMCwgXCJkaXZpZGVkXCIsIGNlbnRlciwgMSk7XG4gICAgc2V0cG9pbnRncm91cCgwLCBcImVkZ2VzXCIsIHByaW1wdHNbaS0xXSwxKTtcbiAgICBzZXRwb2ludGdyb3VwKDAsIFwiZWRnZXNcIiwgcHJpbXB0c1tpXSwxKTtcbn1cblxuXG5cblxuXG5cbiIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMS4wOAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmlid3JhbmdsZSIKICAgIH0sCiAgICAiZGVsZXRlMyI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJzZXRfZWRnZV9wb3MiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJncm91cCI6ICJkaXZpZGVkIGVkZ2VzIiwKICAgICAgICAgICAgIm5lZ2F0ZSI6ICJrZWVwIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAxLjQsCiAgICAgICAgICAgIC0zLjUKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImRlbGV0ZSIKICAgIH0sCiAgICAiZGVsZXRlX3NtYWxsX3BhcnRzMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJyZW1lc2gxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYktlZXBsYXJnZXN0IjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICA1LjE5CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJsYWJzOjpkZWxldGVfc21hbGxfcGFydHMiCiAgICB9LAogICAgImRpdmlkZTEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYXR0cmlicHJvbW90ZTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJkdWFsIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAyLjEyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJkaXZpZGUiCiAgICB9LAogICAgImRpdmlkZTIiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYm9vbGVhbjIiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDUuNjgsCiAgICAgICAgICAgIC0yLjQ4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJkaXZpZGUiCiAgICB9LAogICAgIm1haW5fbW92ZW1lbnQiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYnJlYXRoZV9tb3ZlbWVudCIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm1lYXN1cmUyIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiY2xhc3MiOiAicHJpbWl0aXZlIiwKICAgICAgICAgICAgImN1cnZlcmVtYXAiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJsaW5lYXIiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJsaW5lYXIiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLjA4Nzk4ODgyMzY1MjI2NzQ2LAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDAuMDMzMzMzMzM1MDcxODAyMTQKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJsaW5lYXIiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLjk3NDYyOTk5ODIwNzA5MjMsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAiZ3JvdXAiOiAiIWRpdmlkZWQiLAogICAgICAgICAgICAibW92ZUFtdCI6IDAuMDE1LAogICAgICAgICAgICAic25pcHBldCI6ICIvL2ZpbmQgYWxsIGNlbnRlciBwb2ludHNcbnZlY3RvciBjZW50ZXJQb3MgPSBAUDtcbmludCBjZW50ZXJwb2ludHNbXSA9IG5lYXJwb2ludHMoMCwgXCJkaXZpZGVkXCIsIGNlbnRlclBvcywgMC4wMSk7XG5cbnZlY3RvciBjb21iaW5lZE1vdmVBbXQ7IFxudmVjdG9yIGF2Z3Bvcztcbi8vcHJpbnRmKFwiJXNcIiwgbGVuKGNlbnRlcnBvaW50cykpO1xuZm9yKGludCBpID0gMDsgaSBcdTAwM2MgbGVuKGNlbnRlcnBvaW50cyk7IGkrKyl7XG4gICAgaW50IG51bSA9IGNlbnRlcnBvaW50c1tpXTtcbiAgICBpbnQgbltdID0gbmVpZ2hib3VycygwLCBudW0pO1xuICAgIHZlY3RvciBuMSA9IHBvaW50KDAsXCJQTmV4dFwiLCBuWzBdKTtcbiAgICB2ZWN0b3IgbjIgPSBwb2ludCgwLFwiUE5leHRcIiwgblsxXSk7XG4gICAgZmxvYXQgbGVuMiA9IChAUCAtIG4yKTtcbiAgICBmbG9hdCBsZW4xID0gKEBQIC0gbjEpO1xuICAgIGZsb2F0IG1vdmVBbXQxID0gMC41MiAqIG1heCgwLjAsbGVuMSAtIDAuMDcpO1xuICAgIGZsb2F0IG1vdmVBbXQyID0gMC41MiAqIG1heCgwLjAsbGVuMiAtIDAuMDcpO1xuXG4gICAgXG4gICAgY29tYmluZWRNb3ZlQW10ICs9IG1vdmVBbXQxICogbm9ybWFsaXplKG4xIC0gQFApO1xuICAgIGNvbWJpbmVkTW92ZUFtdCArPSBtb3ZlQW10MiAqIG5vcm1hbGl6ZShuMiAtIEBQKTtcbiAgICBhdmdwb3MgKz0gbjE7XG4gICAgXG4gICAgXG59XG5cbmZsb2F0IGNvdW50ID0gbGVuKGNlbnRlcnBvaW50cyk7XG5jb21iaW5lZE1vdmVBbXQgLz0gY291bnQ7XG5hdmdwb3MgLz0gY291bnQ7XG5cbmZsb2F0IG1vdmVBbXQgPSBsZW5ndGgoYXZncG9zIC0gQFApO1xuZm9yKGludCBpID0gMDsgaSBcdTAwM2MgbGVuKGNlbnRlcnBvaW50cyk7IGkrKyl7XG4gICAgaW50IG51bSA9IGNlbnRlcnBvaW50c1tpXTtcbiAgICBpbnQgbltdID0gbmVpZ2hib3VycygwLCBudW0pO1xuICAgIHZlY3RvciBuMyA9IHBvaW50KDAsXCJQTmV4dFwiLCBuWzBdKTtcbiAgICB2ZWN0b3IgbjIgPSBwb2ludCgwLFwiUE5leHRcIiwgblsxXSk7XG4gICAgXG4gICAgXG4gICAgXG4gICAgdmVjdG9yIG4xID0gcG9pbnQoMCxcIlBcIiwgbnVtKTtcbiAgICB2ZWN0b3Igbm9ybXogPSBwb2ludCgwLFwiTlwiLCBuWzFdKTtcbiAgICBuMSA9IGF2Z3BvcyArIGNvbWJpbmVkTW92ZUFtdDtcbiAgICBuMSArPSBtb3ZlQW10ICogbm9ybXo7XG4gICAgbjEgKz0gOCAqIG1vdmVBbXQgKiAoKG4yICsgbjMpLzIuMCAtIG4xKTtcbiAgICBzZXRwb2ludGF0dHJpYigwLCBcIlBcIiwgbnVtLCBuMSk7XG5cbn1cblxuXG4iCiAgICAgICAgfSwKICAgICAgICAicGFybXRlbXBsYXRlcyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImluc2VydF9hZnRlciI6ICJmb2xkZXIwXzEiLAogICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiB7CiAgICAgICAgICAgICAgICAgICAgImN1cnZlcmVtYXAiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJDdXJ2ZXJlbWFwIiwKICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgInNob3dfY29udHJvbHMiOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJyYW1wX2Zsb2F0IgogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgIm1vdmVBbXQiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJNb3ZlYW10IiwKICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIjogImZsb2F0IgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAxLjM5LAogICAgICAgICAgICAtMS4zOAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmlid3JhbmdsZSIKICAgIH0sCiAgICAibWVhc3VyZTIiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiZGVsZXRlX3NtYWxsX3BhcnRzMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImF0dHJpYm5hbWUiOiAiY3VydmF0dXJlIiwKICAgICAgICAgICAgImNvbG9ycmFtcCI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImxpbmVhciIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogWwogICAgICAgICAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgICAgICAgICAxCiAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImxpbmVhciIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAuNSwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgIDEKICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAibGluZWFyIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMSwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJncm91cHR5cGUiOiAicG9pbnRzIiwKICAgICAgICAgICAgIm1lYXN1cmUiOiAiY3VydmF0dXJlIiwKICAgICAgICAgICAgInRvdGFsYXR0cmlibmFtZSI6ICJ0b3RhbGN1cnZhdHVyZSIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgNC4xOQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibWVhc3VyZTo6Mi4wIgogICAgfSwKICAgICJtZXJnZTMiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAidW5kZXJzaWRlX2NvbG9yIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiY29weXRvcG9pbnRzMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMS40LAogICAgICAgICAgICAtNy41MgogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibWVyZ2UiCiAgICB9LAogICAgIm5vcm1hbDEiOiB7CiAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAiZGlzcGxheSI6IHRydWUsCiAgICAgICAgICAgICJyZW5kZXIiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJtZXJnZTMiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJjdXNwYW5nbGUiOiAwCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDEuNCwKICAgICAgICAgICAgLTguNDgKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogIm5vcm1hbCIKICAgIH0sCiAgICAicGVhazIiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiZGVsZXRlMyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImRpc3QiOiAtMC4wMDUKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMS40LAogICAgICAgICAgICAtNC41CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJwZWFrIgogICAgfSwKICAgICJwb2x5ZXh0cnVkZTEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAicGVhazIiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJkaXN0IjogMC4wMDUsCiAgICAgICAgICAgICJleHRydXNpb25tb2RlIjogInBvaW50bm9ybWFsIiwKICAgICAgICAgICAgIm91dHB1dGJhY2siOiB0cnVlLAogICAgICAgICAgICAib3V0cHV0YmFja2dycCI6IHRydWUsCiAgICAgICAgICAgICJvdXRwdXRzaWRlZ3JwIjogdHJ1ZSwKICAgICAgICAgICAgInNjYWxlIjogWwogICAgICAgICAgICAgICAgMS4xLAogICAgICAgICAgICAgICAgMS4xLAogICAgICAgICAgICAgICAgMS4xCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ0aGlja25lc3NyYW1wIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAiY2F0bXVsbC1yb20iLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJjYXRtdWxsLXJvbSIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDEsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMC45CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0KICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMS40LAogICAgICAgICAgICAtNS41CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJwb2x5ZXh0cnVkZTo6Mi4wIgogICAgfSwKICAgICJyZW1lc2gxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInNwaGVyZTQiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJ0YXJnZXRzaXplIjogMC4xMDYKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgNi4xOQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAicmVtZXNoOjoyLjAiCiAgICB9LAogICAgInNldF9lZGdlX3BvcyI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJtYWluX21vdmVtZW50IiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZ3JvdXAiOiAiZWRnZXMiLAogICAgICAgICAgICAic25pcHBldCI6ICJ2QFAgPSB2QFBOZXh0OyIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMS4zOSwKICAgICAgICAgICAgLTIuNDYKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImF0dHJpYndyYW5nbGUiCiAgICB9LAogICAgInNwaGVyZTQiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicmFkIjogWwogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ0eXBlIjogInBvbHltZXNoIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICA3LjE5CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzcGhlcmUiCiAgICB9LAogICAgInR1YmUyIjogewogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImNhcCI6IHRydWUsCiAgICAgICAgICAgICJjb2xzIjogNiwKICAgICAgICAgICAgImhlaWdodCI6IDAuMDA1LAogICAgICAgICAgICAib3JpZW50IjogInoiLAogICAgICAgICAgICAicmFkIjogWwogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJyYWRzY2FsZSI6IDAuMDE3LAogICAgICAgICAgICAic3VyZnR5cGUiOiAidHJpYW5nbGVzIiwKICAgICAgICAgICAgInR5cGUiOiAibWVzaCIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNC44MywKICAgICAgICAgICAgMC4wNwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAidHViZSIKICAgIH0sCiAgICAidHViZTMiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiY2FwIjogdHJ1ZSwKICAgICAgICAgICAgImNvbHMiOiA2LAogICAgICAgICAgICAiaGVpZ2h0IjogMC4wMDM2OTQ0MTgyMzEwMjUzMzksCiAgICAgICAgICAgICJvcmllbnQiOiAieiIsCiAgICAgICAgICAgICJyYWQiOiBbCiAgICAgICAgICAgICAgICAwLjUsCiAgICAgICAgICAgICAgICAwLjEzOTIzNzg5OTE4MTA5MDg2CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJyYWRzY2FsZSI6IDAuMDE0LAogICAgICAgICAgICAic3VyZnR5cGUiOiAidHJpYW5nbGVzIiwKICAgICAgICAgICAgInQiOiBbCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgMC4wMDAwNTU1Mzg0OTA0MTQ2MTk0NDYsCiAgICAgICAgICAgICAgICAwLjAwMgogICAgICAgICAgICBdLAogICAgICAgICAgICAidHlwZSI6ICJwb2x5IgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA2LjQ3LAogICAgICAgICAgICAwLjA3CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ0dWJlIgogICAgfSwKICAgICJ1bmRlcnNpZGVfY29sb3IiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAicG9seWV4dHJ1ZGUxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiY2xhc3MiOiAxLAogICAgICAgICAgICAiY29sb3IiOiBbCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgIDAKICAgICAgICAgICAgXSwKICAgICAgICAgICAgImdyb3VwIjogIiFleHRydWRlQmFjayBeZXh0cnVkZVNpZGUiLAogICAgICAgICAgICAiZ3JvdXB0eXBlIjogInByaW1zIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAxLjQsCiAgICAgICAgICAgIC02LjUKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImNvbG9yIgogICAgfQp9
Various particle shapes scattered in volume. Useful for adding details in macro scenes bio scenes. This recipe also show an example on how to randomly copy different geometry to points base on name attribute.
Nov 03, 2025 | 20.5.584 | geometry
Cooked By: kif
ewogICAgIk9VVCI6IHsKICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICJkaXNwbGF5IjogdHJ1ZSwKICAgICAgICAgICAgInJlbmRlciI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImNvcHl0b3BvaW50czEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDYuNDksCiAgICAgICAgICAgIC0xMC4zNAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibnVsbCIKICAgIH0sCiAgICAiX19jb29rYm9va01ldGEiOiB7CiAgICAgICAgImNvbnRleHQiOiAic29wIiwKICAgICAgICAidmVyc2lvbiI6ICIyMC41LjU4NCIKICAgIH0sCiAgICAiYXR0cmliYWRqdXN0aW50ZWdlcjEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAicHNjYWxlIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYXR0cmliIjogIm5hbWUiLAogICAgICAgICAgICAibWF4dmFsdWUiOiAzLAogICAgICAgICAgICAibnZhbHVlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZm9sZGVyM18jIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidmFsdWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidmFsdWVzIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInZhbHVldHlwZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ3ZWlnaHQjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZm9sZGVyM18jIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidmFsdWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidmFsdWVzIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInZhbHVldHlwZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ3ZWlnaHQjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZm9sZGVyM18jIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidmFsdWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAyLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidmFsdWVzIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInZhbHVldHlwZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ3ZWlnaHQjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiZm9sZGVyM18jIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidmFsdWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAzLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidmFsdWVzIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInZhbHVldHlwZSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ3ZWlnaHQjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAwLjI5LAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAib3V0bGllcnNlZWQiOiA5MCwKICAgICAgICAgICAgInJhbmRvbXNlZWQiOiA1MiwKICAgICAgICAgICAgInJhbmdlbWV0aG9kIjogInNwZWNpZmljIiwKICAgICAgICAgICAgInJlbWFwcmFtcCI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImNvbnN0YW50IiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMCwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAwLjE2NjY2NjY3MTYzMzcyMDQKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJjb25zdGFudCIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAuMTM0OTA5NjAwMDE5NDU0OTYsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMC4zNzUKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJjb25zdGFudCIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAuNzkxMzc2ODg4NzUxOTgzNiwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAxCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAiY29uc3RhbnQiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAxLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDEKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgInZhbHVldHlwZSI6ICJyYW5kIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAxMi4wNSwKICAgICAgICAgICAgLTcuMDIKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImF0dHJpYmFkanVzdGludGVnZXIiCiAgICB9LAogICAgImNvcHl0b3BvaW50czEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAibWVyZ2VwYWNrZWQxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAidXYiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMQogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJ0YXJnZXRhdHRyaWJzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJhcHBseWF0dHJpYnMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiKixedixeQWxwaGEsXk4sXnVwLF5wc2NhbGUsXnNjYWxlLF5vcmllbnQsXnJvdCxecGl2b3QsXnRyYW5zLF50cmFuc2Zvcm0iLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiYXBwbHltZXRob2QjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiYXBwbHl0byMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ1c2VhcHBseSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJhcHBseWF0dHJpYnMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiQWxwaGEiLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiYXBwbHltZXRob2QjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAibXVsdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJhcHBseXRvIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInVzZWFwcGx5IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImFwcGx5YXR0cmlicyMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICJ2IiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImFwcGx5bWV0aG9kIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogImFkZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJhcHBseXRvIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInVzZWFwcGx5IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgInVzZWlkYXR0cmliIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA2LjQ5LAogICAgICAgICAgICAtOS4yNAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiY29weXRvcG9pbnRzOjoyLjAiCiAgICB9LAogICAgImRpdmlkZTEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAidHJhbnNmb3JtMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiZGl2aWRlIgogICAgfSwKICAgICJkaXZpZGUyIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm1vdW50YWluMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMy41MiwKICAgICAgICAgICAgMS4yNQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiZGl2aWRlIgogICAgfSwKICAgICJkaXZpZGUzIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm1vdW50YWluMyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNi42NiwKICAgICAgICAgICAgMC41MwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiZGl2aWRlIgogICAgfSwKICAgICJkaXZpZGU0IjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInRyYW5zZm9ybTIiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDkuNDYsCiAgICAgICAgICAgIDAuNzgKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImRpdmlkZSIKICAgIH0sCiAgICAiaXNvb2Zmc2V0MSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJzcGhlcmUxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAic2FtcGxlZGl2IjogNTAKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMTIuMDUsCiAgICAgICAgICAgIC0zLjAyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJpc29vZmZzZXQiCiAgICB9LAogICAgIm1lcmdlcGFja2VkMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJub3JtYWwzIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAibm9ybWFsMiIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImRpdmlkZTMiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJub3JtYWw0IiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDMKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAibmFtZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgIm5hbWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiaGFpciIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ0cmVhdGFzZm9sZGVyIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInVzZWlucHV0IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgIm5hbWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiY2VsbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ0cmVhdGFzZm9sZGVyIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInVzZWlucHV0IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgIm5hbWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAic3BlYyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ0cmVhdGFzZm9sZGVyIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInVzZWlucHV0IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgIm5hbWUjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiZG5hIiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInRyZWF0YXNmb2xkZXIjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAidXNlaW5wdXQjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDYuMjksCiAgICAgICAgICAgIC0zLjUKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogIm1lcmdlcGFja2VkIgogICAgfSwKICAgICJtb3VudGFpbjEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic3BoZXJlMiIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImFtcGxpdHVkZSI6IDAuMjUsCiAgICAgICAgICAgICJhdHRyaWJzIjogIlAiLAogICAgICAgICAgICAiZGlzcGxhY2UiOiB0cnVlLAogICAgICAgICAgICAiZWxlbWVudHNpemUiOiAwLjQ1LAogICAgICAgICAgICAiZnJhY3RhbCI6ICJobWZUIiwKICAgICAgICAgICAgIm5vaXNlcmFuZ2UiOiAiemNlbnRlcmVkIiwKICAgICAgICAgICAgIm9jdCI6IDgsCiAgICAgICAgICAgICJyb3VnaCI6IDAuNAogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAzLjUyLAogICAgICAgICAgICAyLjI1CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJub2lzZTo6Mi4wIgogICAgfSwKICAgICJtb3VudGFpbjIiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic3BpcmFsMiIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImFtcGxpdHVkZSI6IDAuMSwKICAgICAgICAgICAgImF0dHJpYnMiOiAiUCIsCiAgICAgICAgICAgICJkaXNwbGFjZSI6IHRydWUsCiAgICAgICAgICAgICJlbGVtZW50c2l6ZSI6IDAuNzMsCiAgICAgICAgICAgICJmcmFjdGFsIjogImhtZlQiLAogICAgICAgICAgICAibGFjIjogMS4yMzcsCiAgICAgICAgICAgICJub2lzZXJhbmdlIjogInpjZW50ZXJlZCIsCiAgICAgICAgICAgICJvY3QiOiAxLAogICAgICAgICAgICAicm91Z2giOiAwLjEzNwogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA5LjQ2LAogICAgICAgICAgICAzLjc4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJhdHRyaWJub2lzZTo6Mi4wIgogICAgfSwKICAgICJtb3VudGFpbjMiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic3BlYyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImFtcGxpdHVkZSI6IDAuMSwKICAgICAgICAgICAgImF0dHJpYnMiOiAiUCIsCiAgICAgICAgICAgICJkaXNwbGFjZSI6IHRydWUsCiAgICAgICAgICAgICJlbGVtZW50c2l6ZSI6IDAuMDksCiAgICAgICAgICAgICJmcmFjdGFsIjogImhtZlQiLAogICAgICAgICAgICAibm9pc2VyYW5nZSI6ICJ6Y2VudGVyZWQiLAogICAgICAgICAgICAib2N0IjogOCwKICAgICAgICAgICAgIm9mZnNldCI6IDYsCiAgICAgICAgICAgICJvdXRwdXRyYXciOiBmYWxzZSwKICAgICAgICAgICAgInJvdWdoIjogMC40CiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDYuNjYsCiAgICAgICAgICAgIDEuNTMKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImF0dHJpYm5vaXNlOjoyLjAiCiAgICB9LAogICAgIm5vcm1hbDIiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiZGl2aWRlMiIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImN1c3BhbmdsZSI6IDEzMC43CiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDMuNTIsCiAgICAgICAgICAgIDAuMjUKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogIm5vcm1hbCIKICAgIH0sCiAgICAibm9ybWFsMyI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJkaXZpZGUxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiY3VzcGFuZ2xlIjogMTE2LjUKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibm9ybWFsIgogICAgfSwKICAgICJub3JtYWw0IjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImRpdmlkZTQiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJjdXNwYW5nbGUiOiAxMTYuNQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA5LjQ2LAogICAgICAgICAgICAtMC4yMgogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibm9ybWFsIgogICAgfSwKICAgICJvcmllbnQiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic2NhdHRlcjEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJkaW1lbnNpb25zIjogNCwKICAgICAgICAgICAgIm5hbWUiOiAib3JpZW50IiwKICAgICAgICAgICAgInNlZWQiOiA1NTA4CiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDEyLjA0LAogICAgICAgICAgICAtNS4wMgogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmlicmFuZG9taXplIgogICAgfSwKICAgICJwc2NhbGUiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAib3JpZW50IiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZGltZW5zaW9ucyI6IDEsCiAgICAgICAgICAgICJkaXN0cmlidXRpb24iOiAicmFtcCIsCiAgICAgICAgICAgICJuYW1lIjogInBzY2FsZSIsCiAgICAgICAgICAgICJyYW1wIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAiY29uc3RhbnQiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDAuMjUKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJjb25zdGFudCIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAuMDg2MjMwODc0MDYxNTg0NDcsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMC40Mzc1CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAiY29uc3RhbnQiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLjkyMjExNDA3NDIzMDE5NDEsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImNvbnN0YW50IiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMSwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAxCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJzY2FsZSI6IDAuNiwKICAgICAgICAgICAgInNlZWQiOiA1NjI2CiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDEyLjA0LAogICAgICAgICAgICAtNi4wMgogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmlicmFuZG9taXplIgogICAgfSwKICAgICJzY2F0dGVyMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJpc29vZmZzZXQxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAibnB0cyI6IDUwLAogICAgICAgICAgICAicmVsYXhpdGVyYXRpb25zIjogMiwKICAgICAgICAgICAgInNjYWxlcmFkaWlieSI6IDAuNjIyCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDEyLjA1LAogICAgICAgICAgICAtNC4wMgogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAic2NhdHRlcjo6Mi4wIgogICAgfSwKICAgICJzcGVjIjogewogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImRpdnMiOiA5LAogICAgICAgICAgICAicmFkIjogWwogICAgICAgICAgICAgICAgMC4wMSwKICAgICAgICAgICAgICAgIDAuMDEKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInJldmVyc2UiOiBmYWxzZSwKICAgICAgICAgICAgInR5cGUiOiAicG9seSIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNi42NiwKICAgICAgICAgICAgMi41MwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiY2lyY2xlIgogICAgfSwKICAgICJzcGhlcmUxIjogewogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInJhZCI6IFsKICAgICAgICAgICAgICAgIDIsCiAgICAgICAgICAgICAgICAyLAogICAgICAgICAgICAgICAgMgogICAgICAgICAgICBdLAogICAgICAgICAgICAidHlwZSI6ICJwb2x5bWVzaCIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMTIuMDUsCiAgICAgICAgICAgIC0yLjAyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzcGhlcmUiCiAgICB9LAogICAgInNwaGVyZTIiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicmFkIjogWwogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJzY2FsZSI6IDAuMDUsCiAgICAgICAgICAgICJ0eXBlIjogInBvbHkiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDMuNTIsCiAgICAgICAgICAgIDMuMjUKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInNwaGVyZSIKICAgIH0sCiAgICAic3BpcmFsMSI6IHsKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJkaXZzcGVydHVybiI6IDE2LAogICAgICAgICAgICAiaGVpZ2h0IjogMS41NiwKICAgICAgICAgICAgInJhZGl1c2luY3JlYXNlcGVydHVybiI6IDAuMjkxNjY2NjY2NjY2NjY2NywKICAgICAgICAgICAgInR1cm5zIjogMC43NQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICA0CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzcGlyYWwiCiAgICB9LAogICAgInNwaXJhbDIiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZGl2c3BlcnR1cm4iOiAxNiwKICAgICAgICAgICAgImhlaWdodCI6IDIuMTIsCiAgICAgICAgICAgICJyYWRpdXNpbmNyZWFzZXBlcnR1cm4iOiAwLjA4LAogICAgICAgICAgICAic3RhcnRyYWRpdXMiOiAwLjI5LAogICAgICAgICAgICAidHVybnMiOiAyLjA3CiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDkuNDYsCiAgICAgICAgICAgIDQuNzgKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInNwaXJhbCIKICAgIH0sCiAgICAic3dlZXAxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInNwaXJhbDEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJhcHBseXNjYWxlIjogdHJ1ZSwKICAgICAgICAgICAgImNhcGRpdnMiOiAxLAogICAgICAgICAgICAiY2Fwc2NhbGUiOiAwLAogICAgICAgICAgICAiY29scyI6IDUsCiAgICAgICAgICAgICJjb21wdXRldXZzIjogdHJ1ZSwKICAgICAgICAgICAgImVuZGNhcHR5cGUiOiAiZ3JpZCIsCiAgICAgICAgICAgICJyYWRpdXMiOiAwLjAxNSwKICAgICAgICAgICAgInNjYWxlcmFtcCI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImJlemllciIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMC4yMDgzMzMzMjgzNjYyNzk2CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAiYmV6aWVyIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMC41MTQ2MDM2MTQ4MDcxMjg5LAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJiZXppZXIiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAxLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDAuMTI1MDAwMDE0OTAxMTYxMgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAic3VyZmFjZXNoYXBlIjogInR1YmUiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDMKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInN3ZWVwOjoyLjAiCiAgICB9LAogICAgInN3ZWVwMiI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJtb3VudGFpbjIiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJhcHBseXNjYWxlIjogdHJ1ZSwKICAgICAgICAgICAgImNhcGRpdnMiOiAxLAogICAgICAgICAgICAiY2Fwc2NhbGUiOiAwLAogICAgICAgICAgICAiY29scyI6IDUsCiAgICAgICAgICAgICJjb21wdXRldXZzIjogdHJ1ZSwKICAgICAgICAgICAgImVuZGNhcHR5cGUiOiAiZ3JpZCIsCiAgICAgICAgICAgICJyYWRpdXMiOiAwLjAxNSwKICAgICAgICAgICAgInNjYWxlcmFtcCI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogImJlemllciIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMC4yMDgzMzMzMjgzNjYyNzk2CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAiYmV6aWVyIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMC41MTQ2MDM2MTQ4MDcxMjg5LAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJiZXppZXIiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAxLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDAuMTI1MDAwMDE0OTAxMTYxMgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAic3VyZmFjZXNoYXBlIjogInR1YmUiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDkuNDYsCiAgICAgICAgICAgIDIuNzgKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInN3ZWVwOjoyLjAiCiAgICB9LAogICAgInRyYW5zZm9ybTEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic3dlZXAxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAic2NhbGUiOiAwLjM1CiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDIKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInhmb3JtIgogICAgfSwKICAgICJ0cmFuc2Zvcm0yIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInN3ZWVwMiIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInNjYWxlIjogMC4zNQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA5LjQ2LAogICAgICAgICAgICAxLjc4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ4Zm9ybSIKICAgIH0sCiAgICAidXYiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYXR0cmliYWRqdXN0aW50ZWdlcjEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJzbmlwcGV0IjogInZAdXYgPSBzZXQoQHB0bnVtIC8gZmxvYXQoQG51bXB0KSwgMCk7IgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAxMi4wNCwKICAgICAgICAgICAgLTguMDYKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImF0dHJpYndyYW5nbGUiCiAgICB9Cn0=
Embellishes the simple sweeped curve with ridges inspired by the underbelly of some reptiles or worms.
Nov 03, 2025 | 20.5.584 | geometry
Cooked By: snay
ewogICAgIl9fY29va2Jvb2tNZXRhIjogewogICAgICAgICJjb250ZXh0IjogInNvcCIsCiAgICAgICAgInZlcnNpb24iOiAiMjAuNS41ODQiCiAgICB9LAogICAgImF0dHJpYmJsdXIxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm1lYXN1cmUxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYXR0cmlidXRlcyI6ICJjdXJ2YXR1cmUiLAogICAgICAgICAgICAiaXRlcmF0aW9ucyI6IDkKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNC45MSwKICAgICAgICAgICAgLTYuNjQKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImF0dHJpYmJsdXIiCiAgICB9LAogICAgImNvbnZlcnR2ZGIxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInZkYmZyb21wb2x5Z29uczEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJjb252ZXJzaW9uIjogInBvbHkiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDQuOTEsCiAgICAgICAgICAgIC00LjYzCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJjb252ZXJ0dmRiIgogICAgfSwKICAgICJjb3B5dG9wb2ludHM0IjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInRyYW5zZm9ybTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJyZXNhbXBsZTIiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMQogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJ0YXJnZXRhdHRyaWJzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJhcHBseWF0dHJpYnMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiKixedixeQWxwaGEsXk4sXnVwLF5wc2NhbGUsXnNjYWxlLF5vcmllbnQsXnJvdCxecGl2b3QsXnRyYW5zLF50cmFuc2Zvcm0iLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiYXBwbHltZXRob2QjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiYXBwbHl0byMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ1c2VhcHBseSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJhcHBseWF0dHJpYnMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiQWxwaGEiLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiYXBwbHltZXRob2QjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAibXVsdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJhcHBseXRvIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInVzZWFwcGx5IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImFwcGx5YXR0cmlicyMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICJ2IiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImFwcGx5bWV0aG9kIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogImFkZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJhcHBseXRvIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInVzZWFwcGx5IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAyLjY1LAogICAgICAgICAgICAtMS4wNAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiY29weXRvcG9pbnRzOjoyLjAiCiAgICB9LAogICAgIm1lYXN1cmUxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImNvbnZlcnR2ZGIxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYXR0cmlibmFtZSI6ICJjdXJ2YXR1cmUiLAogICAgICAgICAgICAiYmFrZWludG9vdXRwdXQiOiB0cnVlLAogICAgICAgICAgICAiY29sb3JyYW1wIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAibGluZWFyIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMCwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgIDEKICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAibGluZWFyIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMC41LAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgMSwKICAgICAgICAgICAgICAgICAgICAgICAgMSwKICAgICAgICAgICAgICAgICAgICAgICAgMQogICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJsaW5lYXIiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAxLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgMSwKICAgICAgICAgICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgICAgICAgICAgMAogICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgImN1cnZhdHVyZXR5cGUiOiAicHJpbmNpcGFsIiwKICAgICAgICAgICAgImdyb3VwdHlwZSI6ICJwb2ludHMiLAogICAgICAgICAgICAibWVhc3VyZSI6ICJjdXJ2YXR1cmUiLAogICAgICAgICAgICAidG90YWxhdHRyaWJuYW1lIjogInRvdGFsY3VydmF0dXJlIiwKICAgICAgICAgICAgInVtYmlsaWNjdXRvZmYiOiAwLjA3Mjc0MjU2NjE4ODIxNSwKICAgICAgICAgICAgInVzZXJlbWFwcmFuZ2UiOiB0cnVlLAogICAgICAgICAgICAid2lkdGgiOiAxNC4zCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDQuOTEsCiAgICAgICAgICAgIC01LjY0CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJtZWFzdXJlOjoyLjAiCiAgICB9LAogICAgIm1lcmdlMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJjb3B5dG9wb2ludHM0IiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic3dlZXAxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA0LjkxLAogICAgICAgICAgICAtMi42NAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibWVyZ2UiCiAgICB9LAogICAgInJlc2FtcGxlMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJzcGlyYWwxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZG9jdXJ2ZXVhdHRyIjogdHJ1ZSwKICAgICAgICAgICAgImxlbmd0aCI6IDAuMDMxCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDUuMDQsCiAgICAgICAgICAgIDIuMTgKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInJlc2FtcGxlIgogICAgfSwKICAgICJyZXNhbXBsZTIiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic2V0X3BzY2FsZSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImRvdGFuZ2VudGF0dHIiOiB0cnVlLAogICAgICAgICAgICAibGVuZ3RoIjogMC4wNjk4LAogICAgICAgICAgICAidGFuZ2VudGF0dHIiOiAiTiIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMi42NSwKICAgICAgICAgICAgLTAuMDQKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInJlc2FtcGxlIgogICAgfSwKICAgICJzZXRfY29sb3JfdG9fY3VydmF0dXJlIjogewogICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgImRpc3BsYXkiOiB0cnVlLAogICAgICAgICAgICAicmVuZGVyIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYXR0cmliYmx1cjEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJzbmlwcGV0IjogInZAQ2QgPSA1LjAqcG93KGZAY3VydmF0dXJlLDMuMCk7IgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA0LjkxLAogICAgICAgICAgICAtNy42OAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmlid3JhbmdsZSIKICAgIH0sCiAgICAic2V0X3BzY2FsZSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJyZXNhbXBsZTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJzY2FsZSI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogIm1vbm90b25lY3ViaWMiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDAKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJtb25vdG9uZWN1YmljIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMC4wODgwNTAzMTMyOTM5MzM4NywKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAwLjcxMDY2Mzg1NTA3NTgzNjIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJtb25vdG9uZWN1YmljIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMC41LAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDEKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJtb25vdG9uZWN1YmljIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMC45NTI4MzAxOTU0MjY5NDA5LAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDAuNzcwNDUzMjE0NjQ1Mzg1NwogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogIm1vbm90b25lY3ViaWMiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAxLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IDAKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgInNuaXBwZXQiOiAiZkBwc2NhbGUgPSBjaHJhbXAoXCJzY2FsZVwiLCBmQGN1cnZldSk7IgogICAgICAgIH0sCiAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJpbnNlcnRfYWZ0ZXIiOiAidmV4X3RocmVhZGpvYnNpemUiLAogICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiB7CiAgICAgICAgICAgICAgICAgICAgImZvbGRlcl9nZW5lcmF0ZWRwYXJtc19zbmlwcGV0IjogewogICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiR2VuZXJhdGVkIENoYW5uZWwgUGFyYW1ldGVycyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJwYXJtdGVtcGxhdGVzIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjYWxlIjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJTY2FsZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2hvd19jb250cm9scyI6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAicmFtcF9mbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ3JvdXBfdHlwZSI6ICJzaW1wbGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJibGFuayIKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZm9sZGVyX3NpbXBsZSIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMi42NSwKICAgICAgICAgICAgMQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmlid3JhbmdsZSIKICAgIH0sCiAgICAic3BoZXJlMSI6IHsKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJyYWQiOiBbCiAgICAgICAgICAgICAgICAwLjUsCiAgICAgICAgICAgICAgICAwLjUsCiAgICAgICAgICAgICAgICAwLjUKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInNjYWxlIjogMC4yMTcsCiAgICAgICAgICAgICJ0eXBlIjogInBvbHltZXNoIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLAogICAgICAgICAgICAxCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzcGhlcmUiCiAgICB9LAogICAgInNwaXJhbDEiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicmFkaXVzaW5jcmVhc2VwZXJ0dXJuIjogMC4yOTE2NjY2NjY2NjY2NjY3LAogICAgICAgICAgICAidHVybnMiOiAyLjMKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNS4wNCwKICAgICAgICAgICAgMy4zMgogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAic3BpcmFsIgogICAgfSwKICAgICJzd2VlcDEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAicmVzYW1wbGUxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYWRkZW5kY2Fwc2dyb3VwIjogdHJ1ZSwKICAgICAgICAgICAgImFwcGx5c2NhbGUiOiB0cnVlLAogICAgICAgICAgICAiY29scyI6IDI0LAogICAgICAgICAgICAiZW5kY2FwdHlwZSI6ICJncmlkIiwKICAgICAgICAgICAgInJhZGl1cyI6IDAuMDk4LAogICAgICAgICAgICAic2NhbGVyYW1wIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAibW9ub3RvbmVjdWJpYyIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMC4zMzMzMzMzNDMyNjc0NDA4CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAibW9ub3RvbmVjdWJpYyIsCiAgICAgICAgICAgICAgICAgICAgInBvcyI6IDAuMDQ0NDQ0NDQxNzk1MzQ5MTIsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogIm1vbm90b25lY3ViaWMiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLjg5MjA2MzQ5ODQ5NzAwOTMsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAiaW50ZXJwIjogIm1vbm90b25lY3ViaWMiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAwLjk5OTk5ODk4NjcyMTAzODgsCiAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogMC4yMzMzMzMzMzQzMjY3NDQwOAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAic3VyZmFjZXNoYXBlIjogInR1YmUiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDUuMDQsCiAgICAgICAgICAgIDEuMDMKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInN3ZWVwOjoyLjAiCiAgICB9LAogICAgInRyYW5zZm9ybTEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic3BoZXJlMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInQiOiBbCiAgICAgICAgICAgICAgICAtMC4wNjMsCiAgICAgICAgICAgICAgICAwLAogICAgICAgICAgICAgICAgMAogICAgICAgICAgICBdCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDAKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInhmb3JtIgogICAgfSwKICAgICJ2ZGJmcm9tcG9seWdvbnMxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIm1lcmdlMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInZveGVsc2l6ZSI6IDAuMDEKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNC45MSwKICAgICAgICAgICAgLTMuNjMKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInZkYmZyb21wb2x5Z29ucyIKICAgIH0KfQ==
Adds a raised edge to an embedded object, mimicking swelling of the skin.
Nov 03, 2025 | 20.5.584 | geometry
Cooked By: snay
ewogICAgIkJBU0VfR0VPIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInNwaGVyZTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAsCiAgICAgICAgICAgIDAKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogIm51bGwiCiAgICB9LAogICAgIkVNQkVEREVEX0dFTyI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJjb3B5dG9wb2ludHMxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA0LjgxLAogICAgICAgICAgICAtNS40MQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibnVsbCIKICAgIH0sCiAgICAiX19jb29rYm9va01ldGEiOiB7CiAgICAgICAgImNvbnRleHQiOiAic29wIiwKICAgICAgICAidmVyc2lvbiI6ICIyMC41LjU4NCIKICAgIH0sCiAgICAiYXR0cmliYmx1cjEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiY29udmVydHZkYjEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJpbmZsdWVuY2V0eXBlIjogInByb3hpbWl0eSIsCiAgICAgICAgICAgICJpdGVyYXRpb25zIjogMgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLjE5LAogICAgICAgICAgICAtMjAKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImF0dHJpYmJsdXIiCiAgICB9LAogICAgImJvb2xlYW4xIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIkVNQkVEREVEX0dFTyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIkJBU0VfR0VPIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYm9vbGVhbm9wIjogInN1YnRyYWN0IiwKICAgICAgICAgICAgInVzZWFic2VhbWVkZ2VzIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA0LjU0LAogICAgICAgICAgICAtOC44OQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYm9vbGVhbjo6Mi4wIgogICAgfSwKICAgICJjb252ZXJ0dmRiMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJ2ZGJzZGZzdWJ0cmFjdDEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJjb252ZXJzaW9uIjogInBvbHkiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDAuMTksCiAgICAgICAgICAgIC0xOQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiY29udmVydHZkYiIKICAgIH0sCiAgICAiY29weXRvcG9pbnRzMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJzcGhlcmUyIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic2NhdHRlcjEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMQogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJ0YXJnZXRhdHRyaWJzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJhcHBseWF0dHJpYnMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiKixedixeQWxwaGEsXk4sXnVwLF5wc2NhbGUsXnNjYWxlLF5vcmllbnQsXnJvdCxecGl2b3QsXnRyYW5zLF50cmFuc2Zvcm0iLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiYXBwbHltZXRob2QjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiYXBwbHl0byMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJ1c2VhcHBseSMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJhcHBseWF0dHJpYnMjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAiQWxwaGEiLAogICAgICAgICAgICAgICAgICAgICAgICAidmlzaWJsZSI6IGZhbHNlCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAiYXBwbHltZXRob2QjIjogewogICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiAibXVsdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJhcHBseXRvIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInVzZWFwcGx5IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImFwcGx5YXR0cmlicyMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6ICJ2IiwKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgImFwcGx5bWV0aG9kIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlIjogImFkZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJ2aXNpYmxlIjogZmFsc2UKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICJhcHBseXRvIyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgInVzZWFwcGx5IyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgInZpc2libGUiOiBmYWxzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA0LjgxLAogICAgICAgICAgICAtNC4yMQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiY29weXRvcG9pbnRzOjoyLjAiCiAgICB9LAogICAgImVkZ2Vncm91cF90b19jdXJ2ZTEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAicGVhazEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJncm91cCI6ICJhYnNlYW1zIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA0LjU0LAogICAgICAgICAgICAtMTAuODkKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImxhYnM6OmVkZ2Vncm91cF90b19jdXJ2ZTo6MS4wIgogICAgfSwKICAgICJtZXJnZTEiOiB7CiAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAiZGlzcGxheSI6IHRydWUsCiAgICAgICAgICAgICJyZW5kZXIiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJhdHRyaWJibHVyMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIkVNQkVEREVEX0dFTyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMC4xOSwKICAgICAgICAgICAgLTIxLjQzCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJtZXJnZSIKICAgIH0sCiAgICAibm9ybWFsMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJCQVNFX0dFTyIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInR5cGUiOiAidHlwZXBvaW50IgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA2LjU5LAogICAgICAgICAgICAtMS45NQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibm9ybWFsIgogICAgfSwKICAgICJwZWFrMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJib29sZWFuMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImRpc3QiOiAwLjAxCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDQuNTQsCiAgICAgICAgICAgIC05Ljg5CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJwZWFrIgogICAgfSwKICAgICJzY2F0dGVyMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJub3JtYWwxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAibnB0cyI6IDIxCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDYuNTksCiAgICAgICAgICAgIC0yLjcKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInNjYXR0ZXI6OjIuMCIKICAgIH0sCiAgICAic3BoZXJlMSI6IHsKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJyYWQiOiBbCiAgICAgICAgICAgICAgICAwLjUsCiAgICAgICAgICAgICAgICAwLjUsCiAgICAgICAgICAgICAgICAwLjUKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInNjYWxlIjogMC42LAogICAgICAgICAgICAidHlwZSI6ICJwb2x5bWVzaCIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMS4zMQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAic3BoZXJlIgogICAgfSwKICAgICJzcGhlcmUyIjogewogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInJhZCI6IFsKICAgICAgICAgICAgICAgIDAuNSwKICAgICAgICAgICAgICAgIDAuNSwKICAgICAgICAgICAgICAgIDAuNQogICAgICAgICAgICBdLAogICAgICAgICAgICAic2NhbGUiOiAwLjEzLAogICAgICAgICAgICAidHlwZSI6ICJwb2x5bWVzaCIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNC41NCwKICAgICAgICAgICAgLTIuNwogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAic3BoZXJlIgogICAgfSwKICAgICJzd2VlcDEiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiZWRnZWdyb3VwX3RvX2N1cnZlMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInJhZGl1cyI6IDAuMDI0LAogICAgICAgICAgICAic3RyZXRjaGFyb3VuZHR1cm5zIjogZmFsc2UsCiAgICAgICAgICAgICJzdXJmYWNlc2hhcGUiOiAidHViZSIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNC41NCwKICAgICAgICAgICAgLTExLjcyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzd2VlcDo6Mi4wIgogICAgfSwKICAgICJ2ZGJmcm9tcG9seWdvbnMxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogIkJBU0VfR0VPIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAidm94ZWxzaXplIjogMC4wMDgKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMC4xOSwKICAgICAgICAgICAgLTQuNjIKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInZkYmZyb21wb2x5Z29ucyIKICAgIH0sCiAgICAidmRiZnJvbXBvbHlnb25zMiI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJFTUJFRERFRF9HRU8iLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJ2b3hlbHNpemUiOiAwLjAxCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDEuMTksCiAgICAgICAgICAgIC0xMi43MgogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAidmRiZnJvbXBvbHlnb25zIgogICAgfSwKICAgICJ2ZGJmcm9tcG9seWdvbnMzIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInN3ZWVwMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInZveGVsc2l6ZSI6IDAuMDEKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNC41NCwKICAgICAgICAgICAgLTEyLjcyCiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ2ZGJmcm9tcG9seWdvbnMiCiAgICB9LAogICAgInZkYnNkZmNvbWJpbmUxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInZkYmZyb21wb2x5Z29uczEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJ2ZGJmcm9tcG9seWdvbnMzIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAib3BlcmF0aW9uIjogInNkZnVuaW9uIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAwLjE5LAogICAgICAgICAgICAtMTcKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogInZkYmNvbWJpbmUiCiAgICB9LAogICAgInZkYnNkZnN1YnRyYWN0MSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJ2ZGJzZGZjb21iaW5lMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInZkYmZyb21wb2x5Z29uczIiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMQogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJvcGVyYXRpb24iOiAic2RmZGlmZmVyZW5jZSIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMC4xOSwKICAgICAgICAgICAgLTE4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJ2ZGJjb21iaW5lIgogICAgfQp9