IyEgL2Jpbi9zaAouICIke3NyY2Rpcj0ufS9pbml0LnNoIjsgcGF0aF9wcmVwZW5kXyAuIC4uL3NyYwoKIyBUZXN0IG9mIC0tdGNsIG9wdGlvbi4KCiMgVGhpcyB0ZXN0IGZhaWxzIG9uIG1pbmd3LCBpbiB0aGUgQ3lnd2luIGVudmlyb25tZW50OiB0Y2xzaCBleGlzdHMgYXMKIyB0Y2xzaC5leGUgZnJvbSBDeWd3aW4uIFdoZW4gbXNndW5mbXQgaW52b2tlcyBpdCwgaXQgY3Jhc2hlcywgcHJlc2VudGluZwojIGEgZGlhbG9nICIxNiBiaXQgTVMtRE9TIHN1YnN5c3RlbSAtIFRoZSBOVFZETSBDUFUgaGFzIGVuY291bnRlcmVkIGFuCiMgaWxsZWdhbCBpbnN0cnVjdGlvbi4iIFdoZW4gdGhpcyBkaWFsb2cgaXMgY2xvc2VkLCBtc2d1bmZtdCBjb250aW51ZXMsCiMgcmVhZHMgZW1wdHkgb3V0cHV0LCBhbmQgcmVmcmFpbnMgZnJvbSBjcmVhdGluZyBhIFBPIGZpbGUgYmVjYXVzZQojIC0tZm9yY2UtcG8gd2FzIG5vdCBzcGVjaWZpZWQuCgojIFRlc3Qgd2hldGhlciB3ZSBjYW4gZXhlY3V0ZSBUY2wgcHJvZ3JhbXMgYW5kIFRjbCdzIGZjb25maWd1cmUgY29tbWFuZAojIHVuZGVyc3RhbmRzIHRoZSAtZW5jb2Rpbmcgb3B0aW9uIChpdCBkb2VzIHNpbmNlIGFwcHJveGltYXRlbHkgVGNsIDguMSkuCmNhdCA8PFxFT0YgPiBtdS10Y2wtMS12ZXJzaW9uLnRjbApmY29uZmlndXJlIHN0ZG91dCAtZW5jb2RpbmcgdXRmLTgKcHV0cyAkdGNsX3ZlcnNpb24KRU9GCih0Y2xzaCBtdS10Y2wtMS12ZXJzaW9uLnRjbCkgPi9kZXYvbnVsbCAyPi9kZXYvbnVsbCBcCiAgfHwgeyBlY2hvICJTa2lwcGluZyB0ZXN0OiB0Y2xzaCBub3QgZm91bmQgb3IgVGNsIHRvbyBvbGQiCiAgICAgICBFeGl0IDc3CiAgICAgfQoKY2F0IDw8XEVPRiA+IG11LXRjbC0xLWZyLnBvCm1zZ2lkICIiCm1zZ3N0ciAiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PUlTTy04ODU5LTFcbiIKCiM6IHByb2dyYW0udGNsOjUKbXNnaWQgIidZb3VyIGNvbW1hbmQsIHBsZWFzZT8nLCBhc2tlZCB0aGUgd2FpdGVyLiIKbXNnc3RyICKrVm90cmUgY29tbWFuZGUsIHMnaWwgdm91cyBwbGFpdLssIGRpdCBsZSBnYXLnb24uIgoKIyBSZXZlcnNlIHRoZSBhcmd1bWVudHMuCiM6IHByb2dyYW0udGNsOjYKIywgdGNsLWZvcm1hdAptc2dpZCAiJXMgaXMgcmVwbGFjZWQgYnkgJXMuIgptc2dzdHIgIiUyJHMgcmVtcGxhY2UgJTEkcy4iCkVPRgoKdGVzdCAtZCBtdS10Y2wtMS1tc2dzIHx8IG1rZGlyIG11LXRjbC0xLW1zZ3MKCjogJHtNU0dGTVQ9bXNnZm10fQoke01TR0ZNVH0gLS10Y2wgLWQgbXUtdGNsLTEtbXNncyAtbCBmciBtdS10Y2wtMS1mci5wbyB8fCBFeGl0IDEKCjogJHtNU0dVTkZNVD1tc2d1bmZtdH0KR0VUVEVYVFRDTERJUj0iJHdhYnNfdG9wX3NyY2RpciIvc3JjIFwKJHtNU0dVTkZNVH0gLS10Y2wgLWQgbXUtdGNsLTEtbXNncyAtbCBmciAtbyBtdS10Y2wtMS1wcm9nLm91dCB8fCBFeGl0IDEKCmNhdCA8PFxFT0YgPiBtdS10Y2wtMS1wcm9nLm9rCm1zZ2lkICIiCm1zZ3N0ciAiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCgptc2dpZCAiJ1lvdXIgY29tbWFuZCwgcGxlYXNlPycsIGFza2VkIHRoZSB3YWl0ZXIuIgptc2dzdHIgIsKrVm90cmUgY29tbWFuZGUsIHMnaWwgdm91cyBwbGFpdMK7LCBkaXQgbGUgZ2Fyw6dvbi4iCgptc2dpZCAiJXMgaXMgcmVwbGFjZWQgYnkgJXMuIgptc2dzdHIgIiUyJHMgcmVtcGxhY2UgJTEkcy4iCkVPRgo6ICR7RElGRj1kaWZmfQoke0RJRkZ9IG11LXRjbC0xLXByb2cub2sgbXUtdGNsLTEtcHJvZy5vdXQgfHwgRXhpdCAxCgpFeGl0IDAK