Skip to contentLy8gPGJsb2NrOnNldHVwOjE+CmZ1bmN0aW9uIGNhcGl0YWxpemVGaXJzdExldHRlcihzdHJpbmcpIHsKICByZXR1cm4gc3RyaW5nLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgc3RyaW5nLnNsaWNlKDEpOwp9Ci8vIDwvYmxvY2s6c2V0dXA+CgovLyA8YmxvY2s6Y29uZmlnOjA+CmNvbnN0IGNvbmZpZyA9IHsKICB0eXBlOiAndHJlZW1hcCcsCiAgZGF0YTogewogICAgZGF0YXNldHM6IFt7CiAgICAgIHRyZWU6IERhdGEuc3RhdHNCeVN0YXRlLAogICAgICBrZXk6ICdhcmVhJywKICAgICAgZ3JvdXBzOiBbJ3N0YXRlJ10sCiAgICAgIHNwYWNpbmc6IC0wLjUsCiAgICAgIGJvcmRlcldpZHRoOiAwLjUsCiAgICAgIGJvcmRlckNvbG9yOiAncmdiYSgyMDAsMjAwLDIwMCwxKScsCiAgICAgIGhvdmVyQmFja2dyb3VuZENvbG9yOiAncmdiYSgyMjAsMjMwLDIyMCwwLjUpJywKICAgICAgcnRsOiBmYWxzZQogICAgfV0KICB9LAogIG9wdGlvbnM6IHsKICAgIHBsdWdpbnM6IHsKICAgICAgdGl0bGU6IHsKICAgICAgICBkaXNwbGF5OiB0cnVlLAogICAgICAgIHRleHQ6IChjdHgpID0+ICdSVEw6ICcgKyAhIWN0eC5jaGFydC5kYXRhLmRhdGFzZXRzWzBdLnJ0bAogICAgICB9LAogICAgICBsZWdlbmQ6IHsKICAgICAgICBkaXNwbGF5OiBmYWxzZQogICAgICB9LAogICAgICB0b29sdGlwOiB7CiAgICAgICAgY2FsbGJhY2tzOiB7CiAgICAgICAgICB0aXRsZShpdGVtcykgewogICAgICAgICAgICByZXR1cm4gY2FwaXRhbGl6ZUZpcnN0TGV0dGVyKGl0ZW1zWzBdLmRhdGFzZXQua2V5KTsKICAgICAgICAgIH0sCiAgICAgICAgICBsYWJlbChpdGVtKSB7CiAgICAgICAgICAgIGNvbnN0IGRhdGFJdGVtID0gaXRlbS5yYXc7CiAgICAgICAgICAgIGNvbnN0IG9iaiA9IGRhdGFJdGVtLl9kYXRhOwogICAgICAgICAgICBjb25zdCBsYWJlbCA9IG9iai5zdGF0ZSB8fCBvYmouZGl2aXNpb24gfHwgb2JqLnJlZ2lvbjsKICAgICAgICAgICAgcmV0dXJuIGxhYmVsICsgJzogJyArIGRhdGFJdGVtLnY7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgfQp9OwovLyA8L2Jsb2NrOmNvbmZpZz4KCm1vZHVsZS5leHBvcnRzID0gewogIGNvbmZpZywKICBjaG9pY2VzOiBbCiAgICB7CiAgICAgIHBhdGg6ICdkYXRhLmRhdGFzZXRzLjAucnRsJywKICAgICAgdmFsdWVzOiBbZmFsc2UsIHRydWVdLAogICAgICBjb250cm9sOiAnY2hlY2tib3gnLAogICAgICBsYWJlbDogJ1JUTCcKICAgIH0KICBdCn07